劉天悅,張 碩,史穎剛,劉 利
(西北農(nóng)林科技大學 機械與電子工程學院,陜西 楊凌 712100)
機器人競賽是高校開展大學生創(chuàng)新實踐的優(yōu)良載體,有助于深化高等教育深層次改革,激發(fā)大學生科技創(chuàng)新積極性[1]。
授花粉機器人競賽是中國機器人大賽農(nóng)業(yè)賽項的子項目,競賽場地如圖1所示。A、B、C、D四區(qū),采用白板筆在雌蕊上做標記模擬人工授粉;E區(qū)采用無人機模擬風媒授粉。
授花粉機器人從開始區(qū)出發(fā),經(jīng)過四個區(qū)域,對不同類型的作物對靶授粉,到達終點區(qū);E區(qū)無人機從起點區(qū)出發(fā),依靠機器視覺[2]識別比賽場地標識并校正飛行軌跡,利用產(chǎn)生的氣流模擬風媒授粉,遍歷E區(qū)后,??吭跓o人機終點區(qū),比賽結束。
圖1 授花粉機器人比賽場地
A、B、C、D區(qū)的花分為雄花和雌花,E區(qū)的花為雌雄同體花,花朵樣式如圖2所示。
圖2 花朵樣式
本文設計了授花粉機器人機械結構,搭建機器人控制系統(tǒng),設計手眼協(xié)調(diào)算法,實現(xiàn)機器人授花粉競賽功能,并通過參賽驗證設計的有效性。
設計的授花粉機器人整體結構如圖3所示。機器人車體底板20由鋁合金板材制成,兩個實心橡膠車輪13和18對稱分布在車體前端,后接萬向輪10;底板前端安裝八路循跡傳感器17,左右兩側(cè)對稱安裝光電開關14和19,構成傳感導航模塊引導機器人底盤循航。
執(zhí)行機構為四自由度機械臂,包括旋轉(zhuǎn)云臺9和三自由度連桿機構3,連桿機構可繞旋轉(zhuǎn)云臺轉(zhuǎn)動,由關節(jié)舵機4和5、U型支架6、矩形側(cè)板7以及關節(jié)舵機8組成。舵機控制各轉(zhuǎn)動副,可使機器人針對不同方向和高度的授粉靶標靈活完成授粉動作。旋轉(zhuǎn)云臺基座12與車體底板20連接。
1-OpenMV; 2-白板筆; 3-連桿機構; 4,5,8-關節(jié)舵機;6-U型支架; 7-矩形側(cè)板; 9-旋轉(zhuǎn)云臺; 10-萬向輪;11-云臺舵機;12-云臺基座; 13,18-車輪; 14,19-光電開關; 15,16-步進電機;17-八路循跡傳感器;20-底板
機器人以STM32為主控制核心,控制系統(tǒng)架構如圖4所示。機器人工作時,主控制器向步進電機驅(qū)動器發(fā)送信號,實現(xiàn)機器人底盤基本運動。在引導線區(qū)域,八路循跡傳感器返回信號給主控制器,引導機器人底盤循跡;無引導線時,由電子羅盤MPU9250和步進電機上搭載的霍爾編碼器實時傳輸機器人的姿態(tài)、速度和位移信息,便于車體位置調(diào)整[3]。
機器人采用光電開關檢測前方障礙物。主控制器根據(jù)光電開關返回信號判斷是否到達授粉點,到達授粉點后關閉定時器,停止底盤運動,并向舵機驅(qū)動器發(fā)送信號,執(zhí)行機構根據(jù)手眼協(xié)調(diào)算法對靶授粉。完成授粉任務后,主控制器開啟定時器,驅(qū)動底盤運動,機器人按照競賽要求完成后續(xù)任務。
圖4 授花粉機器人控制系統(tǒng)架構
機器人底盤結構分布如圖5所示,由57步進電機驅(qū)動車輪,采用TB6600電機驅(qū)動器,驅(qū)動器與主控制器的IO口相連。主控制器開啟或關閉內(nèi)部定時器實現(xiàn)底盤啟停;向步進電機驅(qū)動器的PUL端口發(fā)送PWM波,實現(xiàn)電機調(diào)速;向步進電機驅(qū)動器的DIR端口發(fā)送高低電平信號,控制電機正反轉(zhuǎn),實現(xiàn)機器人底盤基本運動。
圖5 機器人底盤結構分布
授花粉機器人底盤前端裝有八路循跡傳感器S308,從左至右依次為L4~L1和R1~R4?;谘E的路徑規(guī)劃流程如圖6所示。
圖6 基于循跡的路徑規(guī)劃流程
主控制器把連接八路循跡的IO口設置成浮空輸入,讀取信號,判斷循跡傳感器工作狀態(tài)。循跡傳感器初始信號為高電平信號,當識別到引導線時,經(jīng)過觸發(fā)器整形,向主控制器發(fā)送低電平信號。當L1和R1分別向主控制器發(fā)送高電平信號和低電平信號時,車體左偏,主控制器控制左輪加速、右輪減速;當L1向主控制器發(fā)送低電平信號時,主控制器控制兩車輪同速正轉(zhuǎn),完成車體位置校正;反之亦然。
授花粉機器人執(zhí)行機構采用LSC-16舵機驅(qū)動器控制,使用舵機轉(zhuǎn)動控制模式和動作組控制模式。舵機轉(zhuǎn)動控制模式用于微調(diào)舵機轉(zhuǎn)動角度和速度,使執(zhí)行機構末端接近最佳授粉位置;動作組控制模式由上位機調(diào)試舵機轉(zhuǎn)動速度和角度,控制舵機按照預先調(diào)試好的固定動作運行。
舵機驅(qū)動器與主控制器串口通信,通信參數(shù)為波特率9600,停止位1位,數(shù)據(jù)位8位,無奇偶校驗位,接收數(shù)據(jù)幀格式如表1所示。舵機轉(zhuǎn)動控制模式和動作組控制模式下,分別采用指令CMD_SERVO_MOVE和指令CMD_ ACTION_GROUP_RUN 。
表1 舵機驅(qū)動器接收數(shù)據(jù)的幀格式
將OpenMV和白板筆安裝在執(zhí)行機構末端可方便機器人對靶授粉,為能準確識別花蕊并對雌蕊授粉,設計手眼協(xié)調(diào)算法,控制流程如圖7所示。
串口初始化后,主控制器向舵機驅(qū)動器發(fā)送信號,執(zhí)行機構末端接近花蕊。OpenMV根據(jù)面積判斷是否雌蕊,如果不是雌蕊,向主控制器發(fā)送信號,執(zhí)行機構末端接近下一個花蕊,直至OpenMV識別到雌蕊,并將面積發(fā)送給主控制器。
通過上位機預先調(diào)試執(zhí)行機構最佳位置,將OpenMV識別到的花蕊理論面積存儲在主控制器中。主控制器根據(jù)雌蕊實際面積與理論面積的差值,微調(diào)末端執(zhí)行機構,直至實際面積大于理論面積,停止微調(diào),對靶授粉。執(zhí)行機構接近花蕊和執(zhí)行授粉動作以動作組控制模式實現(xiàn),執(zhí)行機構微調(diào)以任意舵機轉(zhuǎn)動控制模式實現(xiàn)。
為使OpenMV能穩(wěn)定準確識別花蕊并確定雌蕊面積,使用灰度圖像處理[4],并加入濾波算法和白平衡增益。
圖7 手眼協(xié)調(diào)算法控制流程
根據(jù)機器人競賽要求,設計了授花粉競賽機器人的機械結構和控制系統(tǒng),結合視覺識別模塊、傳感導航模塊和手眼協(xié)調(diào)算法,實現(xiàn)了機器人的競賽功能。搭載競場地進行上百次實地測試,結果表明,該機器人能順利快速完成競賽要求。本文設計的授花粉競賽機器人參加了2019中國機器人大賽并獲得冠軍,驗證了本設計的有效性,對相關競賽機器人設計有一定參考意義。