許聚武,熊遠生,張 敏
(1. 嘉興學院: a.信息科學與工程學院,b.數(shù)據(jù)科學學院;2. 嘉興南湖學院 機電工程學院,浙江嘉興314001)
浙江省大學生機器人競賽是培養(yǎng)和提高大學生多學科專業(yè)知識交叉、知行合一、創(chuàng)新創(chuàng)業(yè)創(chuàng)造和團隊協(xié)作能力的一項綜合性學科競賽活動,[1-4]嘉興學院一直十分重視并鼓勵學生積極參加.從浙江省“中控杯”機器人競賽暨浙江省高校機器人邀請賽開始,學校就專門開辟了相關(guān)實驗室,配備了常用的儀器設(shè)備,學生的學習積極性和參賽熱情持續(xù)高漲,目前已成功完成五屆比賽并取得了較好的成績.
圖1 機器人控制系統(tǒng)通用控制板原理示意圖
浙江省大學生機器人競賽主要包括機械結(jié)構(gòu)設(shè)計、電路設(shè)計和軟件設(shè)計.[5-8]目前,硬件控制板主要是通過網(wǎng)購,因而產(chǎn)生了諸多問題:控制板功能不全、沒有相應(yīng)的外部驅(qū)動電路或保護電路價格較貴、體積過大、安裝困難等等.[9-10]
基于以上原因,課題組自主開發(fā)了一種基于STM32的機器人控制系統(tǒng),不僅滿足了學生參加浙江省大學生機器人競賽的培訓需要,也為教師開展課程設(shè)計、開放性實驗、科研等提供了幫助.
機器人控制系統(tǒng)通用控制板原理如圖1所示,控制板采用單片機STM32 F407為控制芯片,連接了各類驅(qū)動電路,包括H橋驅(qū)動、步進電機驅(qū)動、舵機驅(qū)動、機械臂驅(qū)動等,還增加了DC/DC電路,連接鋰電池,并給整個電路板提供了12 V、5 V和3.3 V三種類型電源供不同的驅(qū)動電路使用.除此之外,控制板還提供了可以外接傳感器、線性CCD、OPENMV等多種接口.
通信電路采用了通用的485通信和232通信,分別如圖2和圖3所示.
圖2 UART4-485電路
圖3 USART1(2)-232電路
圖4中STM32的IO口高電平輸出的電壓是3.3 V,無法直接驅(qū)動機器人需要的多個步進電機,因此需要接入多個步進電機驅(qū)動模塊單獨供電,供電電壓由連接的步進電機繞組電壓決定,步進電機驅(qū)動模塊接口電壓一般是5 V, 而STM32的IO口高電平輸出的電壓為3.3 V,因此,采用TXS0108芯片實現(xiàn)3.3 V到5 V的電平轉(zhuǎn)換.
圖4 步進電機驅(qū)動電路
圖5是機器人控制系統(tǒng)的通用控制板原理圖,其中控制板主控芯片主要采用STM32 F407,控制板供電則由輸入電源通過開關(guān)控制,采用1N5822實現(xiàn)防電源反接,經(jīng)2596降壓模塊輸出5 V電壓,再經(jīng)1117-3.3芯片輸出3.3 V電壓,5 V和3.3 V給相應(yīng)的各部分供電.四個輸入的撥碼開關(guān)用于選擇執(zhí)行某種控制模式,按鍵用于直接輸入,LED通過GPIO 控制,實現(xiàn)狀態(tài)指示,并配置了各種接插件,方便連接步進電機驅(qū)動、電機驅(qū)動、舵機接口、串口通信等.
圖5 機器人控制系統(tǒng)通用控制板原理圖
通過原理圖設(shè)計的PCB如圖6所示.
圖6 機器人系統(tǒng)通用控制板PCB圖
PCB打板后,將自行購買的相關(guān)元器件進行焊接并調(diào)試,得到圖7所示的機器人控制系統(tǒng)通用控制板.
圖7 機器人系統(tǒng)通用控制板實物圖
系統(tǒng)軟件流程如圖8所示.
圖8 系統(tǒng)軟件流程圖
圖9 Maix開發(fā)板及配套顯示屏
為了驗證系統(tǒng)控制板的實用性,將控制板連接機器人底盤及圖像處理單元和機械臂,組建了一套裝配機器人控制系統(tǒng).[11]圖像處理控制板和顯示屏如圖9所示,該圖像處理使用了砂速科技公司開發(fā)的Maix,這是一款搭載了K210 AI芯片的開發(fā)平臺.K210處理器是一款64位雙核帶硬件FPU內(nèi)核、主頻400 MHz、卷積加速器、FFT的AI芯片,可以兼容TensonFlow、Keras、Darknet深度學習框架.配合第三方MicroPython移植項目,可以使用Python在配套的IDE上輕松開發(fā)深度學習相關(guān)程序.
本設(shè)計所使用的視覺模塊相較于OpenMV使用更為簡單,不需要學習圖像識別算法,只需在搭好的深度學習框架下有足夠量的樣本進行訓練,即可使用.使用事先寫好的程序提交模型,即可進行圖像識別;另外,更換識別目標時無需修改程序,只需更換模型就可以快速更換識別目標,且其對物體的識別角度沒有很高的要求,可以很高效地識別三維物體.此外,經(jīng)過實驗比對,Maix系列開發(fā)板的神經(jīng)網(wǎng)絡(luò)計算速度、視覺算法等方面優(yōu)于OpenMV,且價格僅為OpenMV開發(fā)板的1/3,如表1所示.
表1 Maix開發(fā)板與OpenMV比對
經(jīng)過調(diào)試的裝配機器人定位準確,循跡功能正常;視覺模塊識別靈敏,算力較強,能夠識別多種形狀的柱體,準確率高達90%;機械臂活動平順,抓取和裝配零件時都較為靈活,能做到近似線性的垂直運動.該機器人經(jīng)測試,整體效果比較理想,達到了初期的設(shè)定目標.
板子提供十多種標準接口,可以方便地進行各種外設(shè)的實驗和開發(fā).
板上很多資源都可以靈活配置,以滿足不同條件下的需求.
主芯片采用自帶1 M字節(jié)的FLASH,配合機器人控制所需的各種接口,滿足各種應(yīng)用需求.
各個接口都用絲印標注,并用方框框出,使用起來一目了然;部分常用接口采用大絲印標出,方便查找.
教學儀器在高校教學中的重要作用不言而喻,而自制教學設(shè)備則是教學儀器設(shè)備在研制和改進上的生命源,[12-16]本文自主開發(fā)的機器人控制系統(tǒng)對于滿足實驗教學需要、推動實驗教學改革、提高實驗室技術(shù)水平、節(jié)省經(jīng)費開支等方面均大有益處.
在對浙江省大學生機器人競賽參賽學生的培訓過程中,開發(fā)了一種基于STM32的機器人控制系統(tǒng),在硬件設(shè)計和軟件設(shè)計的基礎(chǔ)上,組建了一套裝配機器人控制系統(tǒng),經(jīng)測試,循跡、識別和抓取效果都比較理想.該機器人控制系統(tǒng)與學生競賽、教師教學科研密切結(jié)合,有助于提高學生的創(chuàng)新動手能力,促進和教師科研團隊的協(xié)作.通過儀器設(shè)備的自主研發(fā),實現(xiàn)了理論教學與實驗教學、實踐創(chuàng)新與科研之間的相互融合,極大地提升了教學效果,推動了實驗教學的改革.