陳磊 王昊 吳永鑫 葛雷雨

摘 要: 機器人小車是進行實踐性教學、培養學生實踐創新能力的良好實驗平臺,本文利用微控制器作為控制中心,通過陀螺儀和加速度計監測車身的平衡狀態,根據平衡位置,通過PID控制原理驅動電動機實現兩輪小車自主平衡,并通過智能手機的藍牙通訊功能,達到手機控制小車運動的目的,實現控制—反饋的閉環控制系統。該系統可作為學生自主學習或綜合設計的實驗平臺。
關鍵詞: 實踐教學平臺 自平衡小車 微控制器
1.機器人小車的作用
機器人小車作為實踐性教學載體,既可以考查學生綜合運用各門專業知識的水平,又可以鍛煉動手能力、培養創新能力等。機器人小車的設計涉及傳感器技術、自動控制理論、電機及電機驅動技術、機械控制、電子技術等多方面知識,可以作為單片機、應用系統設計、控制系統等多門課程的實驗平臺。實現機器人小車特定功能,需要完成硬件設計、軟件編程等一系列實踐過程,最后構建出一個控制—反饋—控制的閉環系統。基于機器人小車的應用系統,可以聲、光、運動等方式表現控制效果,一方面可以直接激發學生的學習興趣,營造良好的學習氛圍,另一方面可以加強對各種相關理論的理解和認識。
四輪機器人小車靜止時自身處于平衡狀態,運動容易控制。兩輪自平衡小車是近幾年出現的一種新型機器人小車,相對于四輪機器人小車,因為其自身不穩定性和控制的非線性,需要更多控制、反饋信息,可以用于驗證相關控制理論和控制方法[1],并可作為綜合實驗、畢業設計等多門課程知識綜合運用的實驗平臺。兩輪自平衡車的主要特點是使用兩輪共軸、各自獨立驅動的工作方式。車身重心位于車輪軸的正上方,靜止時不能保持平衡站立,只有通過兩個輪子的前后移動保持車身平衡。加入外部控制后,可以在保持動態平衡的基礎上實現移動、轉彎、旋轉等功能[2][3]。
兩輪機器人小車的硬件設計如圖1所示,其運動可以通過直流電機或步進電機控制。直流電機的驅動電路通常用H橋電路控制其運動方向,通過脈沖寬度調制控制電機的運動速度。直流電機轉動時為連續旋轉,所以直流電機控制的小車運動過程平滑。但直流電機的轉動距離無法通過驅動電路精確控制,要借助測速模塊測量其轉動角度,反饋給主控制器計算出小車的運動距離和運動速度。步進電機的驅動相對于直流電機的優點是驅動力矩大,運動距離控制精確。但步進電機通常使用整步或半步方式轉動,電機轉動不是連續的平滑過程。
兩輪小車的平衡控制需要通過傳感器測出小車車體的角度和運動加速度,通過控制器的計算,反饋給驅動電機控制小車的運動,實現小車的動態平衡。目前有專用的運動姿態傳感器可以實現重力加速度和轉動角速度XYZ三軸分解的測量。
小車的控制端與主控制器的無線通訊可以采用紅外2.4G無線通訊模塊、ZigBee模塊、藍牙模塊等。
此外,為實現小車測距、辨別聲音、具有機器視覺等功能,還可以加上超聲傳感器、聲音采集傳感器、攝像頭等。
圖1 系統硬件設計框圖
兩輪小車平衡的原理是一個倒立擺的物理模型。當產生傾斜時,車身與重心不在同一直線上,小車控制器將控制電機轉動保持小車動態平衡。而當小車需要前進或者后退時,小車自身的動態平衡將成為其前進或者后退的阻力,此時利用加速度產生的慣性力抵消小車的重力分量,從而使小車前進或者后退。
下面以一款手機藍牙控制的兩輪機器人小車為例,說明兩輪機器人基本功能實現方法。
兩輪機器人小車用51單片機可以實現簡單地控制,但小車的自平衡控制需要大量計算,因而實例中采用STM32為小車主控制器,控制傳感器采集兩輪小車的角度、運動加速度和速度,控制電機驅動模塊實現小車自主平衡站立。
目前智能手機和平板電腦中,藍牙模塊已經成為標準配置,因而實例中使用藍牙進行無線通訊,無需另外設計專用控制器。主控制器連接的藍牙模塊的主要功能是接收智能手機端發送的運動控制指令,控制自平衡小車在動態平衡基礎上移動、轉彎等功能。
本例中采用姿態測量傳感器模塊MPU-6050作為平衡測量模塊,主控制器通過I/C通信協議與MPU-6050,即時接收MPU-6050模塊測量的陀螺儀、加速度信息,再反饋到運動控制上。
2.系統軟件設計
軟件流程圖如圖2所示。程序啟動后首先進行系統初始化工作,包括定時器初始化、外部中斷初始化、I/O初始化、PWM波初始化、陀螺儀初始化等。
圖2 系統總體軟件流程圖
初始化結束后進入主程序運行。主程序進行藍牙信號檢測,如果沒有接收到手機藍牙發送的指令,則小車保持前一個狀態,直到產生定時中斷。定時中斷中進行陀螺儀、加速度計數據的采樣讀取,讀取值通過軟件卡爾曼濾波算法進行濾波后,通過計算得到傾斜角度,并通過計算角度和讀取角速度進行PID控制[4],調整兩輪電機驅動電流的PWM值,使小車保持車身平衡。進行多次角度和角速度調整控制后,根據時間段內采集的編碼器脈沖數,計算得到車身的速度和位移,進一步進行PID控制驅動電路的PWM值,讓小車靜止。如果檢測到藍牙運動控制信號,則根據指令進行相應的數據調整,讓小車在自平衡狀態下實現運動。
3.結語
機器人小車是良好的電子設計教學和實驗平臺,通過在小車上加入各種傳感器,以及聲、光效果,可以實現多種功能。兩輪自平衡小車的研究主要涉及模擬電子、數字電路、自動控制、無線電通信、數字信號處理、應用系統設計等多方面知識,是多門課程知識的綜合應用。作為一個良好的綜合實驗平臺,可以考查學生各門課程的知識掌握情況,鍛煉其硬件設計和軟件編程能力。通過這一設計,鍛煉其自主學習能力。學生可在已實現的功能基礎上,加入其他擴展功能,如圖像采集、循跡、測距、避障、舵機控制臂等,使兩輪小車成為一個多功能實驗平臺。
參考文獻:
[1]袁澤睿.兩輪自平衡機器人控制算法的研究[M].哈爾濱:哈爾濱工業大學,2006.06.
[2]賀利樂,鄭建校.以機器人教學和實驗平臺為載體培養大學生實踐創新能力[J].裝備制造技術,2014(9).
[3]黃永志,陳衛東.兩輪移動機器人運動控制系統的設計與實現[J].機器人,2004(26).
[4]孫炳達.自動控制原理(第5版)[M].北京:機械工業出版社,2011.05.