黃用華,楊 煉,何淑通,莊 未
(桂林電子科技大學機電工程學院,廣西 桂林541004)
雙車把兩輪車機器人結合了自行車和Segway的結構特點和運動特性,是一種可滿足不同地形和任務要求的新式平衡車。
目前,對自行車機器人和Segway平衡車的平衡研究取得了諸多成果。韓國學者Lee SI[1]針對自行車機器人,開發了一種平衡駕駛控制系統,利用輪擺的反作用力進而實現自行車在行駛時自動平衡。日本學者Yang C[2]提出了一種新型的無車把自平衡電動摩托車,其實現車體自平衡的措施是調節車輪的速度。泰國學者Suebsomran[3]設計了一款自行車機器人平衡動態補償裝置,主要是利用陀螺效應原理,通過產生的扭矩進行車體平衡調節。Suryanrayanan[4]發現當自行車機器人運動速度過高時,車把的轉角對車體平衡的影響較大,遂提出高速低速分別控制的方法。對于Segway的平衡研究,Kamen立足于倒立擺原理,率先發明了一種名為Segway HT[5]的兩輪車,進而對該平衡車進行了商業化,并取得成功。本文研究的雙車把兩輪車機器人是近幾年的新式平衡車[6-8],前期北京郵電大學郭磊、桂林電子科技大學黃用華從結構設計、模型建立、定位平衡控制方面做了一系列仿真與實驗研究,為雙車把兩輪車機器人的結構設計以及平衡運動控制研究提供了借鑒意義。但進行平衡控制的前提是具有可靠的測控系統,基于此設計一種采用工控機作為主控單元,DSP(TMS320F28-335)芯片作為下層控制單元的分布式測控系統,以雙車把兩輪車機器人作為研究載體,利用慣性測量單元、光電編碼器、電流傳感器等多種傳感器融合進而檢測系統狀態,PC端與控制終端的遠程通訊利用ZigBee無線模塊來實現。基于以上方案,完成機器人測控系統的搭建,并進行試驗驗證該系統的可行性。
綜合自行車和Segway兩輪車結構特點和運動特性,設計一款具有4個可驅動關節的雙車把兩輪車機器人如圖1所示。

圖1 雙車把兩輪車機器人
該機器人由5個部分組成,分別為車架B1、左車把B2、右車把B3、左車輪B4和右車輪B5。在直流電機的驅動下,左右車把可相對車架做周轉運動。
結合雙車把兩輪車機器人的結構特點,搭建如圖2所示的測控系統。

圖2 測控系統結構框圖
圖2 中,IMU為慣性測量傳感器,用來檢測系統的姿態信息,編碼器用來測速以及檢測轉動角度,由于沒有力矩傳感器,因此采用電流傳感器實現力矩與電流的轉換。其中,左右車把、車輪與IMU分別連接TMS320F28335,實現數據的采集與處理,同時5塊下層控制單元分別與主控核心工控機相連。
同時基于以上測控系統設計出上位機(工控機)的控制程序,其中工控機的參數主要包括:1.8GHZ的雙核處理器,2G運行內存;14個RS-232/485接口,其作用是運行動力學模型、控制算法,下發數據請求指令以及接收采集處理好的數據。運行環境為Windows系統,采用VS2010開發上位機程序。其控制流程如圖3。

圖3 測控系統工作流程圖
圖3 中,首先完成程序的初始化,設置一個定時器 SetTimer(0,0,NULL)函數,由于定時時間為 0 s,系統會立即響應到OnTimer()函數,進入另一個計時器 OnTimer() 函數,上個定時器 SetTimer(0,0,NULL)函數由KillTimer()進行終止,緊接著利用QueryPerformanceCounter()函數完成當前CPU振蕩次數的采集,為獲取系統的狀態數據,通過Require-DataFromDSP()函數實現DSP給傳感器發送數據采集指令來實現,為判斷是否完成數據的接收,利用flag標志位進行判別,其中1表示完成接收,0表示未完成數據接收,globalrunning()函數為所建系統的數學模型,通過模型計算出最新的控制量。為避免硬件層出現數據傳輸不及時等問題,因此硬件等待25,以此提高系統的可靠性,完成上述的響應后,將所得最新控制量通過SendCurrenttoDSP()函數發送到對于的驅動關節,完成系統的平衡控制,并對狀態數據進行保存。ElapseTime為進到OnTimer()函數到當前時刻所花費的時間,系統的伺服周期用表示。
DSP芯片作為下位機,其功能是采集各個傳感器的數據并處理,當上位機請求數據時,作為應答,將采集的數據上傳給工控機;對下主要為電機驅動器發送指令,激勵電機進行電流控制。圖4為DSP程序的工作流程。

圖4 DSP程序工作流程
圖4 中對DSP初始化后,將各個傳感器的數據采集并打包上傳至工控機;同時,將獲得的工控機指令的進行解析作出對應的響應。DSP與IMU之間的通信協議為陀螺儀內置協議,IMU的狀態數據包括3個歐拉角、3個歐拉角速度、3個線加速度以及地磁場信息,但本系統主要獲取前三種狀態信息。DSP與電機驅動器之間的通信協議采用驅動器廠商提供的協議。工控機與DSP之間的控制指令主要包括D指令、C指令、V指令、P指令,分別表示數據采集、電流控制、速度控制以及位置控制。
為實現機器人平衡運動控制,實時準確獲取機器人的姿態信息,本測控系統采用荷蘭Xsens公司生產的MTi-G-700來檢測機器人的姿態信息。其三維視圖如圖5所示。在系統工作時,慣性測量單元與控制板通過RS232進行通信。
同時該傳感器可采集系統3個歐拉角、3個線加速度、3個歐拉角速度以及地磁場信息,在本系統中,主要采集除地磁場以外的全部信息。

圖5 MT三維方向視圖
工作模式采用Xsens公司提供的通信協議,通過請求-應答方式獲取機器人的姿態信息。其應答接收指令每幀數據形式如圖6所示。

圖6 每幀數據組成
幀頭用來識別數據頭、數據ID以及判別數據長度。中間36個字節為陀螺儀采集的3個歐拉角、3個線加速度、3個歐拉角速度,每個數據占用4個字節,最后校驗位用來判斷數據是否正確。
對于讀取數據,目前有兩種方式,應答式以及連續發送。所謂應答式,就是上位機發送請求指令,下位機應答響應往回發送數據,但這種效率過低;第二種是持續發送,但會存在接收數據不是完整幀的情況,根據抽屜原理,通過接收82個字節,該方法可以保證任意連續時間段,提取82個字節,一定存在一個完整的有效的數據幀,再通過搜索數據頭進行上傳完整數據。
為了檢測雙車把兩輪車機器人左、右車把和左、右車輪的轉速,分別裝有增量式光電編碼器,其中,為了測量左、右車把轉動角度,分別裝有絕對式光電編碼器。編碼器用OMRON公司的E6CP-AG5C和E6B2-CWZ6C兩種型號的光電編碼器。同時由于DSP采用的是TTL電平,光電編碼器輸出信號要經過電平轉換之后才能連接到DSPI/O輸入端,因此采用高速光耦EL6N137實現編碼器輸出信號快速電平轉換,圖7為單路光耦隔離模塊的工作電路:

圖7 單路光耦隔離模塊電路圖
在兩輪車機器人的左、右車輪和左、右車把4個轉動關節分別安裝有直流電機。電機驅動器型號為BDMC3610。該驅動器與控制板通過RS232通訊口連接,而且具有支持多塊驅動器間基于節點地址編址,實現多驅動器訪問的特點。基于此模塊,4個關節驅動器與TMS320F28335的SCI_A串口通過RS232總線相連,其連接示意圖如圖8所示。

圖8 驅動器總線網絡
針對本文電機需要恒轉矩控制的情形,BDMC-3610驅動器選擇電流模式進行控制。當機器人系統處于自動平衡控制時,不僅需要給驅動器發送驅動指令,同時還需要反饋上一時刻的力矩,以此形成力矩的閉環控制。但事實上,不能直接檢測力矩的大小,因此采用電流傳感器檢測,再進行轉化,電流傳感器的輸出信號是一個模擬電壓,該電壓與輸入電流的大小成正比關系,利用TMS320F28335中的AD轉換模塊,將其轉換為數字量,進而得到電壓值,然后根據線性的換算關系(i=(Vout-2.5)/0.006)即可計算出對應的電流值。經過大量試驗,最終獲得電流與力矩的線性關系,τ=cTi,其中:τ為力矩,cT為力矩系數,通過試驗測試得到,i為電機電流,以此來計算力矩的大小。
結合以上的硬件測控系統,進行系統時間片測試,所設計的伺服周期為40 ms,且其中有12 ms的裕量,用來拓展其他任務以及避免系統不確定的延時。各個模塊時間片如圖9所示。

圖9 時間片占比
圖9中,硬件等待占比62%,請求數據占比2%,運行模型、控制量的計算、發送指令以及保存數據總體約占1%,其他占比35%,因此有足夠的時間裕度來進行擴展復雜的控制算法。
通過以上測試,說明該硬件系統不僅能完成數據采集、運行模型等運算,而且還有足夠的裕量用來進行復雜的控制策略的設計,為后續研究留下了足夠的時間。
固定車把、車把轉動45°的控制實驗及驗證分析:
調整車把轉角,使左、右車輪軸線共線,系統處于Segway狀態。給左、右車輪相同控制力矩τ使左右車輪同步轉動。采用簡單PD控制算法設計Segway態俯仰平衡控制器。具體如下:

式中:q3、q˙3為車架俯仰角和俯仰角速度;q5、q˙5為車輪轉角和轉角速度。kp、kd、k1、k2為控制器參數,進行物理樣機試驗時。
同樣采用上述控制方法進行車把轉動45°時平衡控制實驗,實驗結果如圖10所示。

(續下圖)
(接上圖)

圖10 兩種狀態試驗效果圖
固定車把時的控制試驗數據如圖11所示。

圖11 實驗數據曲線
圖11 所示數據隨時間變化的曲線是由慣性測量單元、光電編碼器、電流傳感器等傳感器實時測量得到。由此可以驗證在該狀態下測控系統的可行性。其試驗效果如圖10所示。
綜上,不僅驗證了測控系統的可靠性,也說明了樣機可以實現俯仰平衡運動控制。
以上實驗結果分析表明:
(1)上文介紹的雙車把兩輪車機器人測控系統硬件平臺,包括數據采集、與上位機的通信、可以正常工作,且工作性能良好。
(2)基于上文設計的測控系統硬件平臺,利用簡單的PD控制器,合理選擇控制器參數,可以快速地實現物理樣機的俯仰定車平衡。
(1)本文提出了一種以工控機為上位機,DSP為下位機,融合多種傳感器的分布式測控系統,利用ZigBee實現PC端與上位機的遠程控制,該測控系統能對機器人系統進行有效地實時閉環控制。
(2)本文完成了雙車把兩輪車機器人物理樣機測控系統的搭建,并且通過其俯仰定車平衡運動控制以及車把轉動時的平衡運動試驗,試驗結果有力地證明了測控系統的有效性。
(3)本文所提出的測控系統,可實現對類似平臺的移植,同時,也為平衡車機器人物理樣機實驗研究提供了一種簡單可靠的測控系統硬件平臺。接下來可以利用該平臺開展一些更高層次的復雜平衡運動控制實驗研究。