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