曹鵬彬,胡泰然,陳緒兵
( 武漢工程大學(xué) 機(jī)電工程學(xué)院,湖北 武漢 430205)
近年來(lái),隨著計(jì)算機(jī)技術(shù)的發(fā)展和成熟,人工智能技術(shù)發(fā)展越來(lái)越快,而機(jī)器人作為人工智能的載體,已經(jīng)滲透到各行各業(yè),被認(rèn)為是服務(wù)人類的工具。機(jī)器人作為一種機(jī)電一體化設(shè)備,具有在人類控制下自動(dòng)執(zhí)行工作的能力,美國(guó)機(jī)器人協(xié)會(huì)給機(jī)器人的定義[1]為:“一種可編程和多功能的操作機(jī);或是為了執(zhí)行不同的任務(wù)而具有可用電腦改變和可編程動(dòng)作的專門系統(tǒng)[2]?!?/p>
進(jìn)入21世紀(jì)以來(lái),隨著人們生活水平的日益提高,機(jī)器人逐漸從工廠走向千家萬(wàn)戶,作為服務(wù)型機(jī)器人,成為家庭中重要的組成部分[3-4]。
在全世界先后踏進(jìn)老齡化社會(huì)過(guò)程中,助老助殘機(jī)器人占有越來(lái)越大的比重。在助老助殘機(jī)器人中,爬樓的實(shí)現(xiàn)是很具有挑戰(zhàn)性的。
針對(duì)老齡化人群爬樓困難的問(wèn)題,開發(fā)了一套軟硬件結(jié)合的產(chǎn)品,幫助老人完成爬樓;研究了智能爬樓機(jī)器人在爬樓過(guò)程中的姿態(tài)控制,為爬樓動(dòng)作的實(shí)現(xiàn)奠定基礎(chǔ)。
智能爬樓機(jī)器人可以分解成硬件電路和軟件程序兩大部分。其中硬件電路部分為電路本身(包含傳感器模塊、驅(qū)動(dòng)器模塊、步進(jìn)電機(jī)、電源模塊等),軟件程序?yàn)橹骺刂破骺刂瞥绦颉J紫扔蓚鞲衅髂K將采集的數(shù)據(jù)傳送給主控制器進(jìn)行運(yùn)算處理,主控制器根據(jù)當(dāng)前的姿態(tài),將數(shù)據(jù)輸出給驅(qū)動(dòng)器模塊來(lái)控制電機(jī)達(dá)到爬樓的效果[5]。爬樓過(guò)程中姿態(tài)如圖1所示。
本文采用STM32F103ZET6作為主控制器,MPU6050為姿態(tài)傳感器,同時(shí)配備超聲波傳感器KS103、電子羅盤HMC5983以及編碼器HKT22等,主控制器的參數(shù)如表1所示。
圖1 爬樓機(jī)器人底盤爬樓姿態(tài)圖
裝置核芯ARM Cortex M3數(shù)據(jù)總線寬度(bit)32程序Flash(kB)128最大IIC通道數(shù)目2RAM (kB)20最大SPI通道數(shù)目2工作頻率 (MHz)72最大USART通道數(shù)目3I/Os100計(jì)時(shí)器(bit)3×16指令集結(jié)構(gòu)RISC計(jì)時(shí)器分辨率(bit)16
(1) 電源部分設(shè)計(jì)。電源部分采用德州儀器LM43603QPWP電源穩(wěn)壓芯片,該芯片是一款同步降壓轉(zhuǎn)換器,此轉(zhuǎn)換器能夠驅(qū)動(dòng)高達(dá)3 A的負(fù)載電流,其輸入電壓范圍為3.5 V~36 V(最大絕對(duì)值42 V)。同時(shí)采用峰值電流模式來(lái)實(shí)現(xiàn)簡(jiǎn)單控制環(huán)路補(bǔ)償和逐周期電流限制。
(2) 主控電路設(shè)計(jì)。主控芯片采用意法半導(dǎo)體STM32F103ZET6。該芯片采用Cortex M3內(nèi)核,支持2路SPI、2路IIC,其工作穩(wěn)定,性能強(qiáng)勁。同時(shí)支持3路USART串口,方便調(diào)試。
(3) 外圍電路設(shè)計(jì)。爬樓過(guò)程中的姿態(tài)數(shù)據(jù)獲取采用MPU6050六軸加速度計(jì)陀螺儀傳感器,距離信息采用超聲波傳感器獲取,同時(shí)使用編碼器采集當(dāng)前電機(jī)轉(zhuǎn)速,為平衡提供條件。調(diào)試電路的設(shè)計(jì)同時(shí)還包括Flash存儲(chǔ)芯片(W25Q64)模塊的電路設(shè)計(jì)、SD卡模塊的電路設(shè)計(jì),為參數(shù)和地圖等信息的存儲(chǔ)創(chuàng)造了條件。
根據(jù)以上分析,設(shè)計(jì)原理圖并繪制PCB,通過(guò)打樣焊接最終得到主控板如圖2所示。
圖2 STM32主控板實(shí)物圖
軟件設(shè)計(jì)整體方案采用閉環(huán)控制,爬樓過(guò)程中首先讀取MPU6050傳感器、超聲波等傳感器信息,通過(guò)電機(jī)來(lái)調(diào)整當(dāng)前的方向和間距。整體的執(zhí)行策略如圖3所示。
姿態(tài)傳感器的數(shù)據(jù)波動(dòng)非常大,所以對(duì)傳感器數(shù)據(jù)的濾波是至關(guān)重要的。本文以卡爾曼濾波為基礎(chǔ),采用改進(jìn)的卡爾曼濾波得到平滑的曲線。濾波效果良好,曲線平滑過(guò)沖小。
將模糊控制的理念與傳統(tǒng)的PID控制算法相結(jié)合,就可以形成模糊PID控制。模糊PID算法結(jié)合了傳統(tǒng)PID控制和現(xiàn)代控制理論中模糊控制的優(yōu)點(diǎn),對(duì)非線性的系統(tǒng)有較好的控制效果。本系統(tǒng)采用模糊PID算法,實(shí)際調(diào)試過(guò)程中取得了較好的控制效果。
圖3 爬樓機(jī)器人軟件設(shè)計(jì)流程圖
本文首先系統(tǒng)分析了爬樓機(jī)器人設(shè)計(jì)的總體方案,設(shè)計(jì)方案包括硬件電路的設(shè)計(jì)和主控制器算法的設(shè)計(jì)。硬件電路的設(shè)計(jì)部分包含主控制器、傳感器模塊、電機(jī)驅(qū)動(dòng)器模塊、步進(jìn)電機(jī)等器件的選型,同時(shí)對(duì)主控制器核心控制電路、傳感器接口、電源模塊、驅(qū)動(dòng)模塊的電路集成設(shè)計(jì)。主控制器算法部分采用卡爾曼濾波,得到較為準(zhǔn)確的傳感器數(shù)據(jù),再通過(guò)模糊PID算法,保證系統(tǒng)安全穩(wěn)定運(yùn)行。
參考文獻(xiàn):
[1] 李磊,葉濤,譚民,等.移動(dòng)機(jī)器人技術(shù)研究現(xiàn)狀與未來(lái)[J].機(jī)器人,2002,24(5):475-480.
[2] 滕赟,姚辰,王挺,等.變形履帶輪椅機(jī)器人的張緊力最優(yōu)估計(jì)和越障能力分析[J].機(jī)器人,2010,32(5):622-629.
[3] Hector M Becerra,Carlos Sagues,Youcef Mezouar,et al.Visual navigation of wheeled mobile robots using direct feedback of a geometric constraint[J].Autonomous Robots,2014,37(2):137-156.
[4] Fabian J,Young T,Jones J C P,et al.Integrating the microsoft kinect with simulink:real-time object tracking example[J].IEEE/ASME Transactions on Mechatronics,2014,19(1):249-257.
[5] 劉浩蓬,龍長(zhǎng)江,萬(wàn)鵬,等.植保四軸飛行器的模糊PID控制[J].農(nóng)業(yè)工程學(xué)報(bào),2015(1):71-77.