宋黎明,管翼森,孟文寶
(1.洛陽理工學(xué)院機(jī)器人學(xué)院,河南洛陽 471023;2.固高科技(深圳)有限公司,廣東深圳 518000)
隨著我國城市化進(jìn)程的加快和人民對美好生活需求的提升,公園、廣場、道路兩旁、社區(qū)周圍的綠籬等,是不可或缺的人文風(fēng)景線。綠籬苗木的修剪及造型作為城市綠化作業(yè)中的一項(xiàng)經(jīng)常性工作,涉及面廣,不僅作業(yè)內(nèi)容、對象及條件差異大,而且季節(jié)性和地域性特點(diǎn)鮮明[1]。目前,在城市園林、道路兩側(cè)隔離綠帶養(yǎng)護(hù)中,工作人員普遍使用修枝剪刀和手持式綠籬機(jī)進(jìn)行修剪[2]。這種作業(yè)方式具有消耗大量體力、工作效率低下和發(fā)生事故率高等缺點(diǎn)[3]。由于養(yǎng)護(hù)工人短缺的原因,綠化工人上崗前的培訓(xùn)常常無法得到有效落實(shí),技術(shù)水平存在著很大的差異,所以修剪后綠籬尺寸的整齊性和美觀性往往得不到保證[4]。同時(shí),用機(jī)器人代替人力工作是未來的趨勢。這就迫切需要研制出一種專門用于綠籬造型的機(jī)器人來提高設(shè)備的自動化、智能化水平,減少人工造型所帶來的各種缺點(diǎn)。
本文采用智能車與修剪機(jī)械手相結(jié)合的設(shè)計(jì)思路,以單片機(jī)為控制核心,采用人體紅外、超聲波模塊實(shí)現(xiàn)移動避障與測距,并且通過Raspberry Pi(樹莓派)控制視覺模塊識別綠籬外觀,并與預(yù)設(shè)造型匹配,并建立信息通訊,最終由Arduino單片機(jī)讀取各個(gè)模塊數(shù)據(jù)進(jìn)行實(shí)時(shí)判斷,并進(jìn)行電機(jī)控制,使得機(jī)器人自動對小型綠籬進(jìn)行平面軌跡和正弦軌跡形狀的修剪造型。該機(jī)器人具有高度的自動化,能夠較好地克服人工的缺點(diǎn),大大減少了人力物力的浪費(fèi),實(shí)現(xiàn)了設(shè)計(jì)要求。
本設(shè)計(jì)以小型綠籬為工作對象,應(yīng)具備的功能有:(1)識別工作環(huán)境中的人和物,保證機(jī)器人能夠安全、準(zhǔn)確地進(jìn)行移動;(2)根據(jù)綠籬高度調(diào)節(jié)機(jī)器人高度,裁剪出符合要求的造型。由于圓柱形機(jī)械手具有結(jié)構(gòu)緊湊、活動空間適中,控制簡單等優(yōu)點(diǎn),因此,本設(shè)計(jì)將具有四自由度的圓柱形機(jī)械手置于具有避障功能的智能車上,共同組成了小型綠籬造型機(jī)器人[5]。其組成示意圖如圖1所示,圖中機(jī)械手由動力系統(tǒng)、修剪機(jī)構(gòu)和視覺系統(tǒng)組成。該機(jī)器人系統(tǒng)以Arduino單片機(jī)為主控芯片,由直流電機(jī)、舵機(jī)和各類傳感器和多種調(diào)壓電路組成。其包括基于ATMEGA系列為核心的主控系統(tǒng)和樹莓派為核心的視覺控制系統(tǒng),控制智能車運(yùn)動,控制機(jī)械臂運(yùn)動。系統(tǒng)總體框圖如圖2所示。
圖1 機(jī)器人組成示意圖
圖2 系統(tǒng)設(shè)計(jì)總體結(jié)構(gòu)圖
智能車主體采用了12 V供電的25-GA370直流減速電機(jī)作為動力源,設(shè)計(jì)并選擇了專用的鋁制底板,前、后輪均采用直流電機(jī)控制,保證車體的穩(wěn)定性。機(jī)械手由直流電機(jī)伸縮桿調(diào)節(jié)修剪高度,舵機(jī)(DG-995 15 kg)用來控制末端執(zhí)行器旋轉(zhuǎn)的自由度,共同完成末端在空間上的位置變換。末端執(zhí)行器選擇齒形刀具,通過直流減速電機(jī)帶動齒條移動完成切割工作。機(jī)器人三維模型如圖3所示。
圖3 機(jī)器人三維模型圖
主控制板是機(jī)器人的核心,承擔(dān)著接收和發(fā)送各個(gè)模塊指令的任務(wù),主控板選用ArduinoUNO R3開發(fā)板。因?yàn)锳rduino是一款便捷靈活、方便上手的開源電子原型平臺,其生態(tài)中包括多種開發(fā)板、模塊、擴(kuò)展板[6]。其中,UNO R3是最適合入門且功能齊全、使用量最多的Arduino開發(fā)板。Arduino Uno是一款基于ATmega328P的微控制器板。它有14個(gè)數(shù)字輸入/輸出引腳(其中6個(gè)可用作PWM輸出),6個(gè)模擬輸入,16 MHz晶振時(shí)鐘,USB連接,電源插孔,ICSP接頭和復(fù)位按鈕。只需要通過USB數(shù)據(jù)線連接電腦就能供電、程序下載和數(shù)據(jù)通訊。
電源模塊由電池和可調(diào)降壓穩(wěn)壓模塊組成,其中電池采用4塊14.8 V/2 200 mA的航模電池分別為主控板、舵機(jī)、直流電機(jī)供電和視覺系統(tǒng)供電??烧{(diào)降壓穩(wěn)壓模塊選用LM2596S芯片,可以將輸入電壓為3.3~40 V的輸出為1.25~35 V。在系統(tǒng)中需要的輸入電壓為5 V和12 V,通過調(diào)節(jié)該模塊電阻的阻值來得到需要的電壓[7]。
機(jī)器人在戶外工作時(shí),需要隨時(shí)獲取人和周圍障礙物的情況,從而實(shí)現(xiàn)對人和障礙物的避障功能。本機(jī)器人中選擇8個(gè)HC-SR04超聲波測距模塊和4個(gè)CT-418型人體熱釋傳感器,均布在智能車前、后、左、右4個(gè)方向,用來避障和測距。
HC-SR04超聲波測距模塊可提供2~400 cm的非接觸式距離感測功能,測距精度達(dá)到3 mm。由VCC(電源正)、trig(控制端)、echo(接收端)和GND(電源負(fù))4個(gè)引腳組成。超聲波測距利用I/O觸發(fā)實(shí)現(xiàn),即主控板發(fā)出至少10 μs的高電平信號,模塊自動發(fā)送8個(gè)40 kHz的方波,并不斷檢測是否有超聲波信號返回,如果檢測到信號返回,I/O端口輸出高電平,且保持的時(shí)間就是超聲波從發(fā)射到接收的時(shí)間。最終根據(jù)公式s=vt/2計(jì)算出距離。
CT-418型人體熱釋傳感器是一種檢測人或動物身體發(fā)射的紅外線而輸出電信號的傳感器,用于檢測人體或動物的活動情況。當(dāng)該傳感器監(jiān)測到周圍溫度有變化時(shí),受熱釋電效應(yīng)影響會在傳感器內(nèi)部的兩個(gè)電極上產(chǎn)生電荷,即在兩電極之間產(chǎn)生微弱的電壓,經(jīng)放大電路放大后輸出信號。
機(jī)器人中選擇常用的H橋電機(jī)驅(qū)動模塊L298N來實(shí)現(xiàn)直流減速電機(jī)的控制。主控板通過I/O對L298的輸入端寫入不同的高或低電平組合,就能夠?qū)崿F(xiàn)對電機(jī)轉(zhuǎn)向的控制,從而實(shí)現(xiàn)智能車運(yùn)動。L298N的邏輯表如表1所示。通過主控板基于PWM脈寬調(diào)頻控制方式的PID控制L298芯片輸入端PWM波的占空比可以調(diào)整電機(jī)轉(zhuǎn)速,以達(dá)到穩(wěn)定控制電機(jī)的方向及運(yùn)動速度,實(shí)現(xiàn)機(jī)器人在復(fù)雜環(huán)境下的穩(wěn)定運(yùn)動[8]。
表1 L298N的邏輯表
舵機(jī)的轉(zhuǎn)動角度是通過調(diào)節(jié)PWM(脈沖寬度調(diào)制)信號的占空比來實(shí)現(xiàn)的。因此,舵機(jī)驅(qū)動模塊選擇以PCA9685為芯片的PWM舵機(jī)驅(qū)動模塊。電壓范圍為3.3 V和5 V,通過地址控制腳來控制設(shè)備的IIC地址。
視覺系統(tǒng)主要由Raspberry Pi(樹莓派)控制板和攝像頭組成。Raspberry Pi是由樹莓派基金會研發(fā)的,基于Linux系統(tǒng)的單板機(jī)電腦,具有優(yōu)秀的擴(kuò)展性和易開發(fā)性,適用于各個(gè)年齡段的人學(xué)習(xí)使用,并且支持多種語言進(jìn)行應(yīng)用開發(fā),包括C語言和Python腳本等,現(xiàn)有大量的開源軟件,也便于實(shí)行開發(fā)擴(kuò)展。本項(xiàng)目中選擇Raspberry Pi 3B+,采用Broadcom BCM2837B0,CPU主頻1.4 GHz,內(nèi)存為1 GB。
攝像頭型號為HBV-1714,采用OV9750(1/3)CMOS傳感器,視場角為30°,焦距為3.85 mm,分辨率為1 280×480、50幀/s,通過攝像頭實(shí)時(shí)拍攝綠籬外觀,結(jié)果反饋至樹莓派控制板中進(jìn)行模板匹配,指導(dǎo)機(jī)器人進(jìn)行外觀造型。
根據(jù)設(shè)計(jì)要求,機(jī)器人在上電后能夠獨(dú)立完成一段小型綠籬修剪,因此,在上電后,機(jī)器人需要能夠滿足自由移動,并修剪綠籬的動作。將機(jī)器人放置在指定位置,各模塊初始化,由視覺系統(tǒng)中攝像頭拍攝待修剪綠籬外觀[9],通過匹配找到合適的修剪方式,并規(guī)劃機(jī)械手運(yùn)動路徑[10],由樹莓派將信號發(fā)送至Arduino的I/O端口,經(jīng)過主控板處理后,驅(qū)動機(jī)械手舵機(jī)和末端執(zhí)行器運(yùn)動,并且主控板對各個(gè)傳感器識別信號進(jìn)行算法邏輯處理后進(jìn)行控制電機(jī),實(shí)現(xiàn)機(jī)器人運(yùn)動。軟件設(shè)計(jì)流程圖如圖4所示。
圖4 系統(tǒng)軟件流程圖
按照設(shè)計(jì)圖將機(jī)器人機(jī)械和電控硬件分別安裝在相應(yīng)區(qū)域,在實(shí)驗(yàn)室中以冬青樹(長×寬×高為50 cm×50 cm×100 cm)為模擬實(shí)驗(yàn)對象,測試其工作效果,實(shí)驗(yàn)結(jié)果如表2所示。
表2 實(shí)驗(yàn)結(jié)果匯總表
本款機(jī)器人完成了設(shè)計(jì)中要求的視覺檢測外觀,匹配綠籬造型,完成機(jī)械手水平、垂直和簡諧運(yùn)動軌跡規(guī)劃,并能夠根據(jù)環(huán)境條件完成機(jī)器人移動作業(yè)。通過測試可得該機(jī)器人從原理上可以完成小型綠籬外觀造型的任務(wù),但是存在一定的誤差,該誤差可以通過人工適當(dāng)修復(fù)完成,誤差產(chǎn)生原因在于機(jī)械結(jié)構(gòu)振動、環(huán)境中光線變化影響攝像頭拍攝等。
經(jīng)過測試結(jié)果可知,本文在小型綠籬造型設(shè)計(jì)機(jī)器人正常移動的前提下,實(shí)現(xiàn)了水平、垂直和簡諧運(yùn)動軌跡,總體上控制效果較好,能夠完成預(yù)期的功能,并且具有自動化較高、操作簡單等特點(diǎn),具有良好的應(yīng)用前景。