近年來(lái),隨著(zhù)MEMS及相關(guān)技術(shù)的發(fā)展,微機器人領(lǐng)域已越來(lái)越來(lái)受人關(guān)注。但由于零件的尺寸很小,微機器人組件的裝配需要很高的精確度,一般的裝配方法無(wú)法滿(mǎn)足要求。本文介紹了一個(gè)可進(jìn)行微零件裝配工作的機器人手臂控制系統的控制方法。 1 系統結構 考慮到多機器人手臂的使用,整個(gè)機器人控 制系統由上位機與多個(gè)下位機組成。下位機即是手臂控制器,每個(gè)下位機控制一個(gè)機械手臂的伸縮運動(dòng)。上位機即為控制終端,通過(guò)不同配件組裝方式生成每個(gè)手臂 的位置數據,并通過(guò)數據線(xiàn)傳輸給各個(gè)下位機,由下位機控制手臂到達目標位置并進(jìn)行目標操作。整個(gè)系統的結構框圖如圖1所示。 ![]() 1.1 機械結構 如圖2所示,手臂控制器的機械結構由直流減速電機、手臂、螺桿、減速齒輪、角度傳感器組成。機器人手臂與機械螺桿相連,螺桿與直流減速電機通過(guò)減速齒輪耦合,各個(gè)手臂控制器通過(guò)控制電機轉動(dòng)來(lái)達到控制手臂位置的目的。同時(shí),手臂控制器具有手動(dòng)調節旋柄與螺桿相連,需要時(shí)可通過(guò)手動(dòng)調節,改變手臂位置。 ![]() 1.2 電路結構 手臂控制器由使用ARM內核的PHLIPS LPC2138系列微處理器控制,電路結構主要分為主控制模塊、測量反饋模塊和通信模塊,如圖3所示。通過(guò)主控制模塊控制電機狀態(tài),通過(guò)測量反饋模塊得到螺桿移動(dòng)距離和位置,在達到規定位置后停止電機。而通信模塊則完成與上位機之間的數據交換。 ![]() 2 電機控制 電機控制由主控制模塊和測量反饋模塊共同完成。 2.1 主控制模塊 LPC2138引腳分配如表1所示。 ![]() 主控制器使用PHLIPS LPC2138微處理器, 其具有64個(gè)引腳,31個(gè)雙向I/O口,2個(gè)8路10們A/D轉換器,能夠進(jìn)行電壓測量的工作,符合設計要求,其引腳分配如表1所示。電機使用RA- 20GM-SD3 型直流減速電機,其減速箱的減速比達到了1/1000,在減速后,電機轉速為4.5+/-0.9 rpm,在與1/2減速齒輪組進(jìn)一步 耦合后,螺桿轉速為2.25 rpm,在所用螺桿齒距為1mm時(shí),手臂移動(dòng)述牢為3.75×10-2mm/s。 由于本設計中電機需要正反轉動(dòng),故選用了橋路驅動(dòng)芯片TA8409,其具有兩個(gè)輸入口,兩個(gè)輸出口。微處理器通過(guò)控制輸入電平組合即可控制電機的不同狀態(tài),包括正轉、反轉、剎車(chē)減速和停止狀態(tài)。 它的輸出電壓與電機工作電壓相符,即可直接驅動(dòng)電機,不用增加放大電路。 電機驅動(dòng)電路圖如圖4所示。 2.2 測量反饋模塊 角度傳感器采用了Midori的CP-2FC,它的機械角度范圍為360度無(wú)限,傳感器把角度變化量轉化為電壓量并通過(guò)電壓測量電路反饋回微處理器A/D轉換口,通過(guò)電壓的變化量可計算得到螺桿的移動(dòng)距離,這樣就可以得知手臂位置,并以這個(gè)為標準對電機驅動(dòng)器發(fā)送命令。 電壓測量電路包含由運算放人器構成的電壓跟隨電路,如圖5所示,它既可隔離電路,又可以完成電壓跟隨。 3 通信模塊 3.1 RS-422通信標準 RS-422標準的數據信號采用差分傳輸方式,也稱(chēng)作平衡傳輸,其全稱(chēng)是“平衡電壓數字接口電路的電氣特性”。 其接收器采用高輸入阻抗,發(fā)送驅動(dòng)器有比RS232更強的驅動(dòng)能力,故允許在相同傳輸線(xiàn)上連接多個(gè)接收節點(diǎn),最多可接10個(gè)節點(diǎn)。即一個(gè)主設備(Master),其余為從設備(Salve),從發(fā)備之間不能通信,所以RS-422支持點(diǎn)對多的雙向通信。 RS-422的最大傳輸距離為4000英尺(約1219m),最大傳輸速率為10Mbit/s。 3.2 數據交換功能實(shí)現 本系統通信模塊采用RS-422標準,線(xiàn)路長(cháng)度約為200m,故通信的可靠性可得到保證。差分線(xiàn)路驅動(dòng)器使用AM26LS31芯片,差分接受器使用 AM26LS32芯片,微處理器的串行輸出口和輸入口分別與驅動(dòng)器輸入和接收器輸出相連,并使用差分開(kāi)路自動(dòng)故障保險終端連接配置。 差分開(kāi)路自動(dòng)故障保險終端連接配置圖如圖6所示。 從而在發(fā)送器輸出端為高阻狀態(tài)時(shí)保證接受器輸入有至少200mV的電壓信號,使輸出不會(huì )出現未知的狀態(tài),提高可靠性,完成與上位機間的數據交換工 作。另外,考慮到多機器人手臂的應用情況,在手臂控制器中設有撥碼開(kāi)關(guān)來(lái)設定編號,與上位機的數據交換必須包含該編號,并由此來(lái)判斷通信時(shí)目標控制器的具 體位置。 4 軟件設計 在設計了手臂控制器硬件的基礎上,我們設計了運行在微處理器上的軟件應用程序。主程序流程圖如圖7所示。 在控制器上電后,首先讀入撥碼開(kāi)關(guān)的控制器編號,然后進(jìn)入等待模式。程序設定了UART中斷,當上位機有數據傳送過(guò)來(lái)時(shí),中斷發(fā)生。此時(shí)核對數據包 中的控制器編號,若傳送編號與小控制器編號相符,則把數據讀入,并計算得到電機運行方向和手臂移動(dòng)距離。在電機運行時(shí),不斷讀取傳感器反饋電壓,并進(jìn)行計 算,判斷手臂是否接近目標位置和是否進(jìn)行剎車(chē)停車(chē)操作。電機停止后,即手臂到達目標位置,此時(shí)控制器對上位機回復工作完成(通信時(shí)始終附帶控制器編號), 并再次進(jìn)入等待狀態(tài)。 本系統中,可使用兩種算法來(lái)決定電機的減速停止命令的發(fā)送時(shí)機。 第一種是剛好是在測量得到手臂到達目標位置之時(shí)發(fā)送減速停止命令,此算法執行較為簡(jiǎn)單,但不可避免會(huì )存在電機停止時(shí)螺桿位置偏離了目標位置的情況。 不過(guò)工作時(shí)手臂移動(dòng)速度很低,已經(jīng)可以保證控制精度。第二種算法,即在接近目標位置時(shí)進(jìn)行預測算法,在手臂到達目標位置前發(fā)送剎車(chē)減速命令,使得螺桿停止 位置與目標位置差距更小,此算法雖較為復雜,但精度較第一種更高,在本設計中,我們使用第二種算法從而保證更高的控制精度。 手臂控制器程序是通過(guò)不斷讀取傳感器反饋值得到手臂位置的,雖然經(jīng)過(guò)預測算法提高算法精度,但由于傳感器本身也有一定的誤差,手臂停止位置不免會(huì )有偏差,但由于高精度的硬件設計,此誤差不會(huì )影響機械手臂大多數的工作。 5 結束語(yǔ) 本章設計了一個(gè)基于ARM核 微處理器的機器人手臂控制系統,對控制器的硬件設計進(jìn)行了詳細的敘述,并給出了系統結構圖和部分電路的原理圖;介紹了控制軟件的設計并給出了程序的流程 圖。由于使用了高減速比的減速箱來(lái)調整電機速度并配合了改良的算法,本手臂控制器的定位精度是比較高的。若在此基礎上加裝可控夾鉗,即可完成簡(jiǎn)單可靠的裝 配工作。 |