于豐華 周傳琦 楊 鑫 郭忠輝 陳春玲
(1.沈陽農(nóng)業(yè)大學(xué)信息與電氣工程學(xué)院, 沈陽 110866; 2.遼寧省農(nóng)業(yè)信息化工程技術(shù)研究中心, 沈陽 110866)
設(shè)施農(nóng)業(yè)是典型的勞動密集型產(chǎn)業(yè),即使在設(shè)施農(nóng)業(yè)領(lǐng)域擁有高度自動化作業(yè)的發(fā)達(dá)國家,其作物采摘環(huán)節(jié)仍依賴大量人工來完成[1-2]。人工采摘費時費力,實現(xiàn)溫室自動化采摘已成為當(dāng)下設(shè)施農(nóng)業(yè)發(fā)展的主要需求。
隨著電子信息技術(shù)、人工智能技術(shù)、圖像識別技術(shù)的逐漸成熟,日本、荷蘭、英國、法國、美國等從20世紀(jì)80年代中期就開展了采摘機器人研究,采摘對象包括蘋果、蘆筍、草莓、葡萄、甘藍(lán)、黃瓜、番茄、蘑菇等。
而我國對于農(nóng)業(yè)采摘機器人的研究較晚,且目前仍處于起步階段[3]。王順溈等[4]設(shè)計了一款通過震動使果梗分離、通過仿雨傘機構(gòu)收集果實的采摘機械臂。但此機械臂會由于果梗柔韌性過大而發(fā)生漏采現(xiàn)象,且在收集過程中無法避免果實間的碰撞,這將嚴(yán)重影響采摘覆蓋率與果實品質(zhì)。馬廷輝[5]設(shè)計了四自由度機械手,采用空間坐標(biāo)轉(zhuǎn)換進(jìn)行運動學(xué)分析,實現(xiàn)了強適應(yīng)能力草莓采摘機器人的研制,但自由度限制了機械臂靈活度[6]。邵堃[7]通過將采摘機器人的機械臂擴展到五自由度,在9個不同高度和不同方向的目標(biāo)點采摘中,最大距離偏差僅為6.71 mm。但其采用的履帶式底盤由于行駛速度慢、需要大量的轉(zhuǎn)向空間等問題,無法在日光溫室內(nèi)運行。此外,湯亞東[8]通過雙目視覺、機械臂運動仿真等構(gòu)建了番茄采摘機器人樣機,并完成了復(fù)雜環(huán)境下的番茄采摘測試,但因其剛性抓手的使用導(dǎo)致無傷采摘成功率僅為76.3%。王曉楠等[9]通過使用真空吸附裝置、柔性氣囊裝置、旋擰電機等,實現(xiàn)了番茄的無傷采摘。但是由于枝干、葉片等會對識別系統(tǒng)產(chǎn)生干擾,從而導(dǎo)致機器人的采摘精準(zhǔn)度下降。劉芳等[10]運用改進(jìn)型多尺度YOLO算法,從不同角度、不同光照強度等環(huán)境下對番茄進(jìn)行訓(xùn)練識別。朱明秀[11]基于K-means聚類算法,配合卷積神經(jīng)網(wǎng)絡(luò)與雙目視覺技術(shù),實現(xiàn)了采摘機器人的水果檢測與定位。胡慧明[12]使用雙目視覺技術(shù),為采摘機器人獲取了果蔬的三維坐標(biāo),為溫室環(huán)境下的果蔬機器人采摘奠定了基礎(chǔ)。
本研究以北方日光溫室中的番茄為采摘對象,設(shè)計并制作一款適用于日光溫室、可以巡檢并識別采摘成熟番茄果實的移動機器人。
采摘機器人系統(tǒng)分為底盤四輪驅(qū)動系統(tǒng)、采摘系統(tǒng)、可升降平臺系統(tǒng)、圖像識別系統(tǒng)和風(fēng)機系統(tǒng)。其中底盤驅(qū)動系統(tǒng)包括4個麥克納姆輪及其驅(qū)動電機、底盤懸掛結(jié)構(gòu)和底部巡線攝像頭等。采摘系統(tǒng)包括柔性手爪和滑軌型機械臂??缮瞪掀脚_系統(tǒng)包括驅(qū)動電機及上平臺鋁板,并附有機械臂滑軌和圖像識別系統(tǒng)、風(fēng)機系統(tǒng)等安裝支架。
目前,日光溫室內(nèi)機器人常用的作業(yè)方式有:地面自由移動式、懸掛導(dǎo)軌移動式、地面導(dǎo)軌移動式等。鑒于日光溫室需要對光能的直接性利用[13],安裝懸掛導(dǎo)軌會占用大量日光溫室內(nèi)的上層空間,這將嚴(yán)重影響日光溫室的透光率,導(dǎo)致對光能利用率下降;地面導(dǎo)軌的安裝占用溫室內(nèi)大量種植面積,影響土地利用率,且不利于后期大棚改造升級。故本研究采用了麥克納姆輪地面導(dǎo)軌移動式機器人作業(yè)方式。麥克納姆輪四驅(qū)移動平臺相對于傳統(tǒng)轉(zhuǎn)向機構(gòu)移動平臺更加靈活,通過控制各個輪系的轉(zhuǎn)速和方向即可組合出任意方向的移動[14],可以在狹窄的溫室內(nèi)不改變自身狀態(tài)完成采摘任務(wù)。
日光溫室內(nèi)的番茄主要采用架棚、作床的培育模式,列式分布、垂直生長種植方式。番茄果實縱向生長于植株上。故底盤的設(shè)計綜合考慮了以上因素,采用擺式懸掛結(jié)構(gòu),此結(jié)構(gòu)可以增加機器人的地形適應(yīng)能力,保證機器人行駛時底盤的貼地性,提升了行駛時底盤的穩(wěn)定性與控制精確度[15]。日光溫室番茄栽培模式如圖1所示。
圖1 番茄栽培模式Fig.1 Patterns of tomato cultivation
采摘機器人工作時,機械爪的作用是抓緊果實以便進(jìn)行果梗分離[16-17],考慮到成熟番茄果實表皮的力學(xué)特性[18],機器人采摘機構(gòu)采用柔性手爪,柔性手爪由注塑工藝的橡膠材質(zhì)制作。該柔性手爪采用三指抓取,由42步進(jìn)電機驅(qū)動,手爪動作部分長95 mm,夾取直徑為10~120 mm,抓取頻率小于40次/min,相鄰兩指(可動)間距H1長8~100 mm,柔性手爪總長H2為152.5 mm,驅(qū)動器安裝部分高度H3為40 mm,其結(jié)構(gòu)圖如圖2所示。
圖2 柔性手爪結(jié)構(gòu)圖Fig.2 Structure diagram of flexible gripper
此外,在抓手的內(nèi)壁還貼有如圖3所示的薄膜壓力傳感器,控制器可以通過與之連接的AD轉(zhuǎn)換電路[19]獲得抓手內(nèi)部的壓力數(shù)據(jù),進(jìn)一步精準(zhǔn)控制番茄的采摘力度,從而防止番茄因發(fā)生機械損傷而導(dǎo)致的皺縮、品質(zhì)降低、快速腐爛[20]等。薄膜壓力傳感器的響應(yīng)時間小于1 ms,形變恢復(fù)時間小于15 ms,可以在-20~60℃的環(huán)境中工作。測試中隨機讀取25次柔性手爪采摘番茄時的壓力傳感器數(shù)據(jù),繪制曲線如圖4所示。
圖3 柔性手爪實物圖Fig.3 Physical picture of flexible gripper1.薄膜壓力傳感器 2.抓手柔性手指 3.抓手驅(qū)動電機
圖4 采摘番茄的手爪壓力變化曲線Fig.4 Claw pressure change curves for picking tomatoes
為了使機械臂摘取番茄更為靈活[21],支撐手爪的機械臂采用6自由度設(shè)計。其中單個關(guān)節(jié)舵機在8.4 V標(biāo)準(zhǔn)工作電壓下的扭力為52 kg/cm,機械臂底座直徑L1為110 mm,底座高L2為81.5 mm,機械臂第1段關(guān)節(jié)長L3為105 mm,第2段關(guān)節(jié)長L4為77.5 mm,第3段關(guān)節(jié)長L5為58 mm,整體活動半徑為513 mm。且經(jīng)過分析與討論黃國偉等[22]關(guān)于番茄果實與莖稈分離力的研究,確定了旋擰摘下的采摘方案,并設(shè)計了可以連續(xù)旋轉(zhuǎn)180°的末端關(guān)節(jié)。由此,在采摘動作方案的設(shè)計時便可使機械手在0°時深入番茄植株中,在抓取穩(wěn)定后的0.8 s內(nèi),末端關(guān)節(jié)快速旋轉(zhuǎn)180°,使番茄梗與莖稈呈遠(yuǎn)離90°角的方向受力,以實現(xiàn)使用最小的力使果實與莖稈分離。手爪采摘示意圖如圖5所示。
圖5 采摘示意圖Fig.5 Picking diagram1.柔性手爪 2.番茄 3.番茄果梗 4.手爪旋轉(zhuǎn)方向
生長過程中,番茄果實位置并不固定,成熟番茄果實容易被四周枝葉所遮擋,導(dǎo)致攝像頭無法準(zhǔn)確判斷甚至無法識別出成熟的番茄。因此,在上平臺添加了帶有二自由度云臺的風(fēng)力補償裝置,其裝置結(jié)構(gòu)簡圖如圖6a所示。機器人在壟道間巡檢過程中,風(fēng)力裝置向機器人的預(yù)識別區(qū)域吹風(fēng),枝葉被吹開后,即可使枝葉后面的成熟果實暴露于攝像頭視角下,實現(xiàn)被遮擋果實的識別。
考慮到番茄并不是處于固定高度,故設(shè)計時采用Z軸(垂直于地平面的方向)升降結(jié)構(gòu),升降結(jié)構(gòu)采用絲桿控制,通過電機轉(zhuǎn)動帶動上平臺的升降,即可實現(xiàn)對不同高度番茄的采摘。且相對于機器人,番茄生長的深度(番茄果實與壟間中線水平距離)不同,故在機器人上平臺上安裝一由絲桿控制的可水平移動的X軸(水平面內(nèi)垂直于機器人行進(jìn)方向)滑軌結(jié)構(gòu)??刂破魍ㄟ^深度相機等傳感器獲取番茄深度數(shù)據(jù)后,將自身坐標(biāo)與機械臂坐標(biāo)通過
AR=RB
式中A——機器人視覺坐標(biāo)系
R——視覺坐標(biāo)系與機械臂坐標(biāo)系轉(zhuǎn)換矩陣
B——機器人機械臂坐標(biāo)系
換算,計算得出相較于絲桿平臺中心位置的番茄深度數(shù)據(jù),通過絲桿驅(qū)動電機與測距傳感器負(fù)反饋調(diào)節(jié)的配合,使機械臂運動到正確的位置后,手爪再深入抓取番茄果實。X、Z軸驅(qū)動結(jié)構(gòu)簡圖如圖6a、6b所示。其中X、Z軸結(jié)構(gòu)設(shè)計參數(shù)如表1所示。
表1 底盤升降平臺結(jié)構(gòu)硬件參數(shù)Tab.1 Hardware parameters of chassis lifting platform structure
圖6 番茄采摘機器人結(jié)構(gòu)圖Fig.6 Pictures of tomato picking robot1.滑塊 2、19.測距傳感器 3.機械臂底座 4、15、26.機械臂 5、23.果籃 6.攝像頭支架 7、28.攝像頭 8、16.絲桿 9、18.步進(jìn)電機 10.風(fēng)扇 11、14、22.機器人底盤上平臺 12.二自由度云臺 13.機器人底盤下平臺 17.車輪 20.麥克納姆輪 21.擺式懸掛底盤 24.水平導(dǎo)軌 25.風(fēng)機 27.柔性手爪 29.升降驅(qū)動軸 30.巡線相機
圖7 上平臺坐標(biāo)系示意圖Fig.7 Schematics of upper platform coordinate system1.機械手爪 2.風(fēng)機 3.二自由度云臺 4.水平導(dǎo)軌 5.可升降上平臺 6.攝像頭
設(shè)偏移矩陣
Δ=[dxdyd]T
則
(1)
且易知
OArm=Ocam-Δ
(2)
式中dx——偏移矩陣中相機坐標(biāo)原點與機械臂坐標(biāo)原點在X軸方向的距離
dy——偏移矩陣中相機坐標(biāo)原點與機械臂坐標(biāo)原點在Y軸方向的距離
d——偏移矩陣中相機坐標(biāo)原點與機械臂坐標(biāo)原點在Z軸方向的距離
Yx——實際測量相機坐標(biāo)原點與機械臂坐標(biāo)原點在X軸方向的距離
Yy——實際測量相機坐標(biāo)原點與小車原點在Y軸方向的距離
Yz——實際測量相機坐標(biāo)原點與機械臂坐標(biāo)原點在Z軸方向的距離
Δz——實際測量小車原點與運動中的機械臂坐標(biāo)原點在Z軸方向的距離
采用圖漾FM810-HD型深度相機,配合Raspberry Pi 4B使用。此外,在相機和機器人上平臺連接處采用減震球連接,這樣可以使相機在底盤遇到震動時保持平穩(wěn),減少番茄位置信息的誤報,提升采摘準(zhǔn)確度。攝像頭擺放位置如圖6a所示。
番茄識別主要由基于RGB圖像的目標(biāo)檢測以及圖像數(shù)據(jù)處理兩部分構(gòu)成。獲取到的RGB圖像經(jīng)過R-FCN目標(biāo)檢測網(wǎng)絡(luò),計算出番茄所在的矩形框,然后將深度信息與目標(biāo)檢測產(chǎn)生的二維信息融合,最終計算出番茄的點云中心位置。整體算法流程圖如圖8所示。
圖8 圖像算法流程圖Fig.8 Flowchart of image algorithm
R-FCN卷積神經(jīng)網(wǎng)絡(luò)主要由網(wǎng)絡(luò)卷積神經(jīng)網(wǎng)絡(luò)ResNet101、RPN網(wǎng)絡(luò)、ROI pooling層以及最后的投票決策層構(gòu)成,其結(jié)構(gòu)如圖9所示。圖像輸入之后,經(jīng)過卷積層ResNet進(jìn)行特征提取后傳給區(qū)域建議網(wǎng)絡(luò)RPN,經(jīng)過計算之后生成候選區(qū),將候選區(qū)加入位置特征,之后進(jìn)入池化層和分類層,從而得到番茄的具體位置。R-FCN算法主要采用ResNet網(wǎng)絡(luò)和RPN區(qū)域建議網(wǎng)絡(luò)來進(jìn)行訓(xùn)練,ResNet的具體結(jié)構(gòu)如表2所示,RPN區(qū)域建議網(wǎng)絡(luò)的結(jié)構(gòu)由512個卷積核為3×3、邊界填充為1、滑動步長為1的卷積核組成的卷積層。R-FCN處理速度在大量試驗中比Faster RCNN更快[26-28]。
表2 ResNet結(jié)構(gòu)參數(shù)Tab.2 ResNet structure parameters
圖9 R-FCN卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.9 Structure diagram of R-FCN convolutional neural network
首先將預(yù)先拍攝好的番茄圖像標(biāo)注后,按4∶1分為訓(xùn)練集與測試集輸入R-FCN目標(biāo)檢測網(wǎng)絡(luò)訓(xùn)練模型,并轉(zhuǎn)換為NCNN(騰訊開源的移動端神經(jīng)網(wǎng)絡(luò)模型)輕量級神經(jīng)網(wǎng)絡(luò)框架,部署在Raspberry Pi 4B中。通過雙目紅外RGB深度相機獲取圖像,以相機為坐標(biāo)系構(gòu)建點云地圖,將三維點云信息經(jīng)過多平面分割、聚類等算法過濾,再將三維點云信息反投影到二維坐標(biāo),并與檢測到的番茄關(guān)鍵幀對應(yīng)的二維信息匹配,從而得到目標(biāo)番茄對應(yīng)的三維包圍框,計算三維包圍框的中心,作為番茄的中心點。圖10為番茄識別結(jié)果。
圖10 番茄識別結(jié)果Fig.10 Tomato identification results
傳統(tǒng)的采摘機器人多自由度機械臂運動采用微分插補法[29]、坐標(biāo)逆運動學(xué)分析[30]等,通過攝像頭等傳感器得到目標(biāo)的坐標(biāo)、朝向角等信息??刂破魍ㄟ^采集到的數(shù)據(jù)解算出各個關(guān)節(jié)的轉(zhuǎn)角,再通過控制器的脈寬調(diào)制技術(shù)產(chǎn)生控制信號驅(qū)動機械臂旋轉(zhuǎn),把末端執(zhí)行器以正確的角度送達(dá)指定位置以完成采摘任務(wù)。但是由于番茄等作物的生長方式較為固定,即由于重力作用,均向地心方向生長。所以如圖11所示的機械臂模型的末端執(zhí)行器所連接的關(guān)節(jié)DE始終保持與地面平行即可,即末端執(zhí)行器傾角α始終為0°。則機械臂進(jìn)行逆運動學(xué)分析的過程中α便可直接作為已知條件代入,大大減輕了控制器的運算強度。此外,由于考慮到機械臂過長,關(guān)節(jié)B所承受力的問題,系統(tǒng)在設(shè)計過程中將BC臂與水平面的夾角β3固定為45°,其他關(guān)節(jié)不做限制。經(jīng)過理論分析滿足
圖11 采摘機械臂關(guān)節(jié)結(jié)構(gòu)簡圖Fig.11 Schematic of joint structure of picking manipulator
(3)
式中δ——上平臺滑軌可移動距離
D——大棚內(nèi)供機器人行駛的壟間距
β4——機械臂第2段關(guān)節(jié)與第1段關(guān)節(jié)夾角
β5——機械臂第3段關(guān)節(jié)與第2段關(guān)節(jié)夾角
在β3與α都已知的情況下,對于執(zhí)行器將運動到的番茄目標(biāo)點坐標(biāo)信息(Xtmo,Ytmo,Ztmo),通過機械臂逆運動學(xué)解算分析與化簡,將番茄相對于機械臂原點OArm的高度信息分為4個階段
y1≤L3sinβ3-L4cosβ3
(4)
L3sinβ3-L4cosβ3 (5) L3sinβ3-L4cosβ3 (6) L3sinβ3+L4≤y4 (7) 式中y1、y2、y3、y4——第1~4階段高度 由此得番茄果實在不同高度段下的深度信息為 (8) 機械臂各關(guān)節(jié)轉(zhuǎn)角為 (9) (10) 且易知,機械手末端坐標(biāo)即為番茄坐標(biāo),故 XArm=Xtmo (11) YArm=Ytmo (12) 最終將機械臂逆運動學(xué)計算過程與式(1)、(2)和式(4)~(12)寫入控制器中,機器人即可根據(jù)攝像頭識別到的番茄坐標(biāo)信息完成采摘動作。 試驗于2021年4月在沈陽農(nóng)業(yè)大學(xué)后山科研基地21—22號日光溫室中進(jìn)行。溫室長60 m,寬10 m,溫室內(nèi)種植28行番茄,行與行壟間距1.2 m,番茄植株平均高度1.9 m,番茄在植株上的分布范圍為0.6~1.5 m,壟道間鋪有防止土壤水分蒸發(fā)的塑料布。 首先將溫室地面鋪設(shè)成如圖12所示效果,將機器人放置于正確位置,將果蔬收集筐置于機器人上平臺后,系統(tǒng)開機運行。 圖12 溫室內(nèi)定位膠帶布線效果圖Fig.12 Effect diagram of positioning tape wiring in greenhouse1.番茄種植區(qū) 2.機器人行駛區(qū) 3.定位線 4.機器人 5.日光溫室 機器人巡檢過程中記錄每次采摘狀態(tài)、采摘效果等;在單次測試完成后導(dǎo)出每次相機識別坐標(biāo)與機械臂關(guān)節(jié)運動角度等;隨機抽取當(dāng)天所采番茄約20顆,在室內(nèi)無光照(約26℃)環(huán)境下觀察其表皮褐變情況與果實腐爛程度,并與人工采摘番茄對比。試驗現(xiàn)場如圖13所示。 圖13 試驗現(xiàn)場Fig.13 Field experiment diagram1.果籃 2.升降平臺 3.滑軌 4.定位線 5.風(fēng)機 6.攝像頭 7.機械臂 8.柔性手爪 番茄采摘機器人試驗數(shù)據(jù)如表3所示??刂破餍酒瑢?dǎo)出數(shù)據(jù)經(jīng)整理得采摘過程部分坐標(biāo)信息如表4所示。經(jīng)1~28 d觀察與統(tǒng)計,番茄的表皮褐變與腐爛情況如表5所示。 表3 機器人采摘效果數(shù)據(jù)Tab.3 Data sheet of robot picking effect 表4 采摘過程信息數(shù)據(jù)Tab.4 Picking process information data mm 表5 番茄狀態(tài)數(shù)據(jù)Tab.5 Tomato state data 綜上所述,通過機器與人工采摘果實質(zhì)量對比可知:采摘機器人在一定程度上不會對果實產(chǎn)生較大損傷,其產(chǎn)生的損傷也在可接受范圍內(nèi)。此外,盡管機械手爪與定位坐標(biāo)僅有2 cm以內(nèi)的誤差,但是在測試過程中如圖14a所示的采摘偏差仍不可忽略,圖14b所示未完全采摘狀況也尚未解決。 圖14 不良采摘狀況Fig.14 Bad picking condition 經(jīng)分析可知系統(tǒng)誤差主要來源于攝像頭所在上平面未與地面保持水平,導(dǎo)致攝像頭與機械臂的坐標(biāo)系與真實環(huán)境坐標(biāo)系具有一定的旋轉(zhuǎn)角度差異,從而導(dǎo)致采摘誤差。此外,由于預(yù)先設(shè)計機械臂時沒有考慮到結(jié)構(gòu)強度與彈性變形,導(dǎo)致機器人工作一段時間后,機械臂第2關(guān)節(jié)發(fā)生了變形,從而導(dǎo)致采摘不精準(zhǔn)。還有部分番茄果梗韌性較大,機械手爪旋轉(zhuǎn)不足以將其摘下,從而導(dǎo)致采摘成功率較低。 (1)設(shè)計并制作了一種可以在日光溫室內(nèi)自動巡檢并采摘成熟番茄果實的移動機器人。機器人采用貼有薄膜壓力傳感器的柔性機械手爪。 (2)在手眼坐標(biāo)系始終相同的前提下進(jìn)行機械臂逆解、定位,控制的實時性得到了有效的提高。風(fēng)力補償裝置對提高被枝葉遮擋番茄的識別有積極作用。3 試驗與結(jié)果分析
3.1 試驗方法
3.2 試驗結(jié)果
3.3 誤差分析
4 結(jié)論