






摘" 要:差速輪式移動機器人在現(xiàn)代自動化和智能化領(lǐng)域中扮演著愈發(fā)關(guān)鍵的角色。為滿足不斷增長的自動化需求,該文設(shè)計一款用于室外環(huán)境的差速輪式移動機器人控制系統(tǒng),該系統(tǒng)綜合考慮電源系統(tǒng)、驅(qū)動系統(tǒng)、傳感器系統(tǒng)、人機交互系統(tǒng)和通信系統(tǒng)的設(shè)計,以支持運動控制、環(huán)境感知、定位、人機交互和遠(yuǎn)程通信等核心功能,通過軟硬件設(shè)計,最終實現(xiàn)可靠穩(wěn)定的差速輪式移動機器人控制系統(tǒng)。經(jīng)過測試,各項功能正常,實現(xiàn)預(yù)期目標(biāo),可為機器人技術(shù)進(jìn)一步發(fā)展和應(yīng)用奠定堅實的基礎(chǔ)。
關(guān)鍵詞:移動機器人;控制系統(tǒng);硬件設(shè)計;軟件設(shè)計;系統(tǒng)實現(xiàn)
中圖分類號:TP242" " " 文獻(xiàn)標(biāo)志碼:A" " " " " 文章編號:2095-2945(2024)11-0041-04
Abstract: Differential wheeled mobile robot plays a more and more important role in the field of modern automation and intelligence. In order to meet the growing demand for automation, a differential wheeled mobile robot control system for outdoor environment is designed in this paper. The system comprehensively considers the design of power system, drive system, sensor system, human-computer interaction system and communication system to support core functions such as motion control, environment perception, positioning, human-computer interaction and remote communication. Finally, a reliable and stable control system of differential wheeled mobile robot is realized. The testing indicated that all the functions are normal and the expected goal is achieved, which lays a solid foundation for the further development and application of robot technology.
Keywords: mobile robot; control system; hardware design; software design; system implementation
近年來,隨著人工智能、工業(yè)自動化、移動通信的不斷發(fā)展,以移動機器人為代表的智能化設(shè)備不斷出現(xiàn)在人們的工作和生活中。移動機器人具有感知、決策、執(zhí)行等能力,能夠輔助甚至替代人類完成危險、繁重、復(fù)雜的工作,提高工作效率與質(zhì)量,服務(wù)人類生活,擴大或延伸人的活動及能力范圍[1]。差速輪式移動機器人作為移動機器人的重要組成部分,已經(jīng)在多個應(yīng)用領(lǐng)域中展現(xiàn)出了廣泛的應(yīng)用潛力,其簡單而高效的設(shè)計,適用于室內(nèi)和室外環(huán)境,并且具有多功能性,可以用于巡邏、運輸、勘測和救援等任務(wù)[2]。
本文設(shè)計了一種用于室外環(huán)境的差速輪式移動機器人控制系統(tǒng),能夠?qū)崿F(xiàn)自主移動、遠(yuǎn)程監(jiān)控、人機交互等功能,為差速輪式移動機器人技術(shù)領(lǐng)域的進(jìn)一步發(fā)展提供有力的支持。
1" 系統(tǒng)總體方案設(shè)計
控制系統(tǒng)主要包括嵌入式主控制器、電源系統(tǒng)、驅(qū)動系統(tǒng)、傳感器系統(tǒng)和人機交互系統(tǒng)。主控制器為控制系統(tǒng)核心,主要用于接收外部傳感器采集到的信息和控制指令,將各種信息處理后,驅(qū)動系統(tǒng)作為執(zhí)行機構(gòu)進(jìn)行相應(yīng)動作。控制系統(tǒng)各模塊之間通過各個通信接口進(jìn)行連接,常用的連接方式有RS485、RS232、UART等,控制系統(tǒng)總體結(jié)構(gòu)圖如圖1所示。
2" 系統(tǒng)硬件設(shè)計
2.1" 移動機器人底盤結(jié)構(gòu)
本設(shè)計的輪式移動機器人選用四輪滑動轉(zhuǎn)向模型作為機器人的底盤結(jié)構(gòu),如圖2所示,該底盤結(jié)構(gòu)左右分別由一個電機所控制,位于同側(cè)的兩輪借助同步帶實現(xiàn)連接,通過對各側(cè)輪速進(jìn)行分別的控制,左右兩側(cè)形成一個速度差來實現(xiàn)滑動轉(zhuǎn)向,無需專門轉(zhuǎn)向部件負(fù)責(zé)轉(zhuǎn)向運動;另外,滑動轉(zhuǎn)向具備高效性,無需耗費相對較高的造價成本。
2.2" 主控制器
嵌入式主控制器是控制系統(tǒng)的核心,采用以STM32F407芯片為處理器的控制器,擁有多種外設(shè)接口,如RS232、RS485、UART、CAN、DI、DO和PWM等,可以滿足應(yīng)用接口需求。
2.3" 電源系統(tǒng)
電源系統(tǒng)是控制系統(tǒng)的動力來源,本設(shè)計的電源系統(tǒng)采用48 V/30 Ah的動力鋰電池,帶有BMS電池保護系統(tǒng),以確保電池的安全充電和放電,防止過充和過放。48 V電壓主要為驅(qū)動系統(tǒng)供電,由于主控制器和其他傳感器并不采用48 V供電,因此還要通過變壓器將48 V轉(zhuǎn)化為其他電壓值如36 V、24 V等。
2.4" 驅(qū)動系統(tǒng)
驅(qū)動系統(tǒng)是移動機器人運行的執(zhí)行機構(gòu),是實現(xiàn)運動控制和自主導(dǎo)航的對象。本設(shè)計選用的是額定電壓為48 V直流無刷電機和1∶25的減速機,在滿足最高速度的情況下能夠?qū)崿F(xiàn)更強的驅(qū)動能力。電機驅(qū)動器采用科亞電子的KYDAS4860-2E,一臺驅(qū)動器可以同時控制2臺電機,電機驅(qū)動器支持多種控制方式,本設(shè)計中采用的是CAN通信實現(xiàn)轉(zhuǎn)速控制。
2.5" 傳感器系統(tǒng)
傳感器系統(tǒng)在移動機器人中扮演著至關(guān)重要的角色,它們用于感知獲取機器人自身運行狀態(tài)以及外部環(huán)境信息,從而使機器人能夠安全運行并進(jìn)行自主導(dǎo)航、避障等任務(wù)[3]。為了實現(xiàn)在室外環(huán)境下的精確定位,選用了GNSS傳感器、IMU傳感器作為位姿傳感器,GNSS傳感器選用北天科技的BT-B9K1 RTK定位模塊,在RTK模式下可以實現(xiàn)遠(yuǎn)距離的厘米級定位;IMU傳感器選用了瑞芬科技的TL740D傳感器,來實時獲取移動機器人的姿態(tài)信息,該傳感器的角度分辨率為0.01,方向角精度小于0.1°/m,加速度精度可達(dá)5 mg,具有RS232和RS485兩種通信方式。避障傳感器選用思嵐科技的RPLIDAR A3激光雷達(dá),在室外模式下具備可靠的抗日光干擾能力。
2.6" 人機交互系統(tǒng)
良好的人機交互系統(tǒng)可大大提高用戶的使用便捷性[4]。本設(shè)計中人機交互設(shè)備包括液晶觸摸屏和無線遙控器。液晶觸摸屏選用淘晶馳電子X3型7英寸電容觸摸屏幕,可以用于顯示車輛實時信息,包括顯示車輛實時位置、速度、電池電量等,也可以對機器人進(jìn)行控制,如啟動、停止、參數(shù)設(shè)置等。遙控器選用富斯I6S遙控器,具有PPM、IBUS、SBUS 等多種通信協(xié)議,最大控制距離可達(dá)1 000 m,可以實現(xiàn)對移動機器人的手動控制,方便調(diào)試。
2.7" 通信系統(tǒng)
為了實現(xiàn)遠(yuǎn)程通信,本設(shè)計選用Wi-Fi和4G兩種通信方式,Wi-Fi通信主要在具有Wi-Fi網(wǎng)絡(luò)的情況下使用,4G通信可在不具備Wi-Fi網(wǎng)絡(luò)的情況下實現(xiàn)遠(yuǎn)距離數(shù)據(jù)傳輸。通過通信模塊可以實現(xiàn)監(jiān)控平臺遠(yuǎn)程獲取移動機器人運行狀態(tài)、下發(fā)控制指令等操作。
3" 系統(tǒng)軟件設(shè)計
本設(shè)計選用STM32單片機作為主控芯片,基于Keil uVision5平臺使用 C語言進(jìn)行編程開發(fā),通過Keil Vision5編譯器編譯后通過ST-LINK下載器下載到主控芯片中。根據(jù)設(shè)計目標(biāo),控制系統(tǒng)軟件需要實現(xiàn)傳感器信息采集與處理、與監(jiān)控平臺通信、人機交互及運動控制等功能,軟件的整體架構(gòu)如圖3所示。
3.1" 主程序結(jié)構(gòu)設(shè)計
軟件設(shè)計采用時間片輪詢法,可周期性執(zhí)行的任務(wù)放在主程序中,按照定時周期執(zhí)行,通過合理設(shè)置時間片大小,可以控制每個任務(wù)的響應(yīng)時間。一些緊急任務(wù)通過中斷觸發(fā)方式進(jìn)行處理[5]。主程序的任務(wù)周期主要包括運動控制周期、屏幕刷新周期、通信周期,當(dāng)?shù)竭_(dá)任務(wù)周期時則運行相應(yīng)的任務(wù)程序。運動控制周期主要負(fù)責(zé)移動機器人運行模式切換和運動狀態(tài)控制,運行模式包括自動運行模式、手動控制模式、停止模式;屏幕刷新周期主要負(fù)責(zé)刷新液晶觸摸屏人機交互界面的信息顯示;通信周期主要負(fù)責(zé)向監(jiān)控平臺上傳移動機器人當(dāng)前狀態(tài)信息。
3.2" 傳感器信息采集程序設(shè)計
傳感器數(shù)據(jù)采集程序負(fù)責(zé)傳感器的數(shù)據(jù)采集與處理,單片機在接收到傳感器發(fā)送的數(shù)據(jù)后會觸發(fā)串口中斷,串口在接收到數(shù)據(jù)后判斷命令數(shù)據(jù)是否正確,如果是,則進(jìn)一步解析,如果不是,則重新接收下一組數(shù)據(jù),直至接收到所需數(shù)據(jù)為止,該幀數(shù)據(jù)接收完成后對接收到的數(shù)據(jù)進(jìn)行解析并存儲至相應(yīng)變量。
3.3" 通信程序設(shè)計
通信程序主要指主控制器與監(jiān)控平臺之間的通信,主程序在到達(dá)通信周期時,主控制器向監(jiān)控平臺傳輸位置、速度、狀態(tài)等信息。由于需要上傳較多數(shù)據(jù),因此將所有數(shù)據(jù)分為三幀進(jìn)行發(fā)送,通信協(xié)議為自定義協(xié)議。發(fā)送過程中,按通信周期輪流發(fā)送數(shù)據(jù),在到達(dá)發(fā)送周期時,首先根據(jù)發(fā)送標(biāo)志判斷本次所要發(fā)送的是哪一幀數(shù)據(jù),然后將所要發(fā)送的數(shù)據(jù)按字節(jié)復(fù)制到發(fā)送緩存區(qū),最后通過串口將緩存區(qū)內(nèi)的數(shù)據(jù)按字節(jié)發(fā)送。
此外,主控制器還需要接收來自監(jiān)控平臺的指令,包括遠(yuǎn)程控制指令和路徑信息。遠(yuǎn)程控制指令用于實現(xiàn)遠(yuǎn)程遙控,而路徑信息則是自動運行時移動機器人的目標(biāo)跟蹤路徑,接收程序流程與傳感器接收程序類似。
3.4" 人機交互程序設(shè)計
人機交互程序包括液晶屏對移動機器人狀態(tài)信息的顯示和通過遙控器對移動機器人進(jìn)行運動控制兩部分。
液晶屏需要實時顯示車輛的狀態(tài)、位置等信息,該屏幕可通過USART HMI軟件進(jìn)行界面設(shè)計與編程,設(shè)計完成后主控制器只需通過串口發(fā)送相應(yīng)指令即可實現(xiàn)對屏幕的驅(qū)動和顯示信息刷新。所設(shè)計的液晶觸摸屏顯示界面如圖4所示。
遙控器接收器傳入主控制器的信號為PPM信號。根據(jù)PPM信號原理,遙控器程序使用定時器輸入捕獲的方法對PPM信號進(jìn)行解析。因為PPM信號最長為2 ms,但是空白數(shù)據(jù)幀會超過2 ms,因此可以將超過2 ms的空白數(shù)據(jù)作為PPM信號起始,新的信號的上升沿會觸發(fā)定時器中斷,進(jìn)入定時器中斷后將計數(shù)值清零并更改中斷觸發(fā)方式為下降沿觸發(fā),等接收到下降沿信號后獲取定時器計數(shù)值即為此幀數(shù)據(jù)高電平期間的計數(shù)值,循環(huán)獲取即可獲取PPM信號所有通道的數(shù)據(jù)。將解析完成后的數(shù)據(jù)存儲至遙控器數(shù)據(jù)相關(guān)結(jié)構(gòu)體,在主程序控制周期內(nèi)按照結(jié)構(gòu)體數(shù)據(jù)調(diào)整運行狀態(tài)即可。
3.5" 運動控制程序設(shè)計
運動控制周期即為主程序中的運動控制周期,運動控制程序包括手動控制程序和自動運行程序2部分。手動控制程序?qū)⑦b控器信號接收機接收到的搖桿前后、左右信號值轉(zhuǎn)化為移動機器人左右輪轉(zhuǎn)速,將速度指令通過CAN通信發(fā)送給電機驅(qū)動器從而實現(xiàn)手動遙控控制。自動運行程序?qū)奈蛔藗鞲衅鞯玫降奈恢眯畔⒑头较蛐畔⑴c目標(biāo)路徑通過路徑跟蹤算法進(jìn)行計算偏差,采用串級PID控制得到左右輪輪速差,通過調(diào)節(jié)左右輪輪速消除偏差實現(xiàn)運動控制,自動運行程序流程圖如圖5所示。
4" 控制系統(tǒng)實現(xiàn)
經(jīng)過硬件設(shè)計和軟件開發(fā),差速輪式移動機器人實物如圖6所示。
經(jīng)過測試,差速輪式移動機器人能夠正常實現(xiàn)人機交互功能,與監(jiān)控平臺通信正常,如圖7所示,監(jiān)控平臺能接收到移動機器人上傳的信息,并且通過下發(fā)路徑,移動機器人能夠完成對目標(biāo)路徑的跟蹤。
5" 結(jié)束語
本文設(shè)計并成功實現(xiàn)了一款面向室外環(huán)境的差速輪式移動機器人控制系統(tǒng),并詳細(xì)介紹了其硬件和軟件設(shè)計。經(jīng)過測試,確保了系統(tǒng)的各項功能正常運行,并實現(xiàn)了預(yù)期的目標(biāo),為移動機器人技術(shù)的進(jìn)一步發(fā)展和實際應(yīng)用提供了堅實的基礎(chǔ)。
參考文獻(xiàn):
[1] 王耀南,江一鳴,姜嬌,等.機器人感知與控制關(guān)鍵技術(shù)及其智能制造應(yīng)用[J].自動化學(xué)報,2023,49(3):494-513.
[2] RAOUF F, TAMER R, SAID G, et al. A vision-based kinematic tracking control system using enhanced-prm for differential wheeled mobile robot[J]. International Journal of Robotics and Automation,2019,34(6):654-667.
[3] 曹英榮,李倩,蘇沛東,等.室外智能移動機器人的發(fā)展及其關(guān)鍵技術(shù)的研究[J].自動化應(yīng)用,2023,64(13):1-3.
[4] 馬超民,趙丹華,辛灝.基于用戶體驗的智能裝備人機交互界面設(shè)計[J].計算機集成制造系統(tǒng),2020,26(10):2650-2660.
[5] 鄭金龍.巡檢無人車車載控制系統(tǒng)設(shè)計[D].濟南:濟南大學(xué),2022.