果采摘機(jī)器人結(jié)構(gòu)設(shè)計(jì)與控制系統(tǒng)解析:從末端執(zhí)行器到視覺(jué)識(shí)別)
簡(jiǎn)介這份資源是一篇關(guān)于蘋(píng)果采摘機(jī)器人結(jié)構(gòu)設(shè)計(jì)與控制系統(tǒng)分析的畢業(yè)論文文檔面向農(nóng)業(yè)機(jī)械化、機(jī)器人工程及智能裝備方向的師生和研究人員可用于課題參考、方案比選或畢業(yè)設(shè)計(jì)構(gòu)思。文中梳理了國(guó)內(nèi)外蘋(píng)果采摘機(jī)器人的實(shí)驗(yàn)化現(xiàn)狀針對(duì)傳統(tǒng)三自由度機(jī)構(gòu)在采摘質(zhì)量、避障能力上的不足提出了六自由度串聯(lián)式采摘機(jī)械臂設(shè)計(jì)方案并論述了視覺(jué)識(shí)別、蘋(píng)果定位與避障控制在作業(yè)流程中的關(guān)鍵作用。資源包為1個(gè)doc文件壓縮包大小約3.46MB內(nèi)容結(jié)構(gòu)完整包含中英文摘要、目錄、緒論及主體章節(jié)便于按章節(jié)迅速把握設(shè)計(jì)思路、機(jī)構(gòu)參數(shù)與控制流程。已有74人學(xué)習(xí)瀏覽適合需要理解蘋(píng)果采摘機(jī)器人總體方案、控制系統(tǒng)框架以及撰寫(xiě)相關(guān)論文的讀者下載參考。 老實(shí)說(shuō)我第一次拿到“蘋(píng)果采摘機(jī)器人結(jié)構(gòu)設(shè)計(jì)及控制系統(tǒng)分析”這個(gè)題目時(shí)心里想的是這不就是機(jī)械臂加個(gè)夾爪嗎工業(yè)抓取早就成熟了把末端換成軟爪、配個(gè)相機(jī)果園里摘個(gè)蘋(píng)果能有多難。后來(lái)真正把樣機(jī)拉進(jìn)果園跑了一圈我才明白這個(gè)題目折磨人的點(diǎn)根本不在“抓得穩(wěn)”而在“碰不得”——蘋(píng)果是以“不受傷”為底線的商品果皮上一道劃痕、一個(gè)壓印身價(jià)立刻跌一個(gè)檔。所以蘋(píng)果采摘機(jī)器人的核心矛盾是用剛性機(jī)械系統(tǒng)完成一項(xiàng)對(duì)柔性和判斷力要求極高的生物體作業(yè)。感知、吸附、剪切、輸送每個(gè)環(huán)節(jié)都可能傷果每個(gè)環(huán)節(jié)又都直接影響成功率和節(jié)拍。這篇文章圍繞結(jié)構(gòu)設(shè)計(jì)和控制系統(tǒng)兩條主線展開(kāi)聊聊機(jī)械臂構(gòu)型怎么選、末端執(zhí)行器為什么是壓倒性關(guān)鍵、控制系統(tǒng)怎么搭、視覺(jué)識(shí)別在真實(shí)果園里會(huì)遇到什么以及實(shí)測(cè)階段真正讓人失眠的是哪些問(wèn)題。如果你是機(jī)械、自動(dòng)化或機(jī)器人方向的學(xué)生或者正準(zhǔn)備開(kāi)一個(gè)類(lèi)似的農(nóng)業(yè)機(jī)器人項(xiàng)目這里面的內(nèi)容應(yīng)該能幫你少走不少?gòu)澛贰?. 一個(gè)“有手就行”的任務(wù)為什么能讓人折騰一整年1.1 果園環(huán)境不是車(chē)間是充滿(mǎn)不確定性的開(kāi)放空間工業(yè)機(jī)械臂能精準(zhǔn)抓取工件前提是工件位置、姿態(tài)、來(lái)料順序全部可控。果園里沒(méi)有任何一個(gè)條件成立樹(shù)形是自然生長(zhǎng)的枝條交錯(cuò)遮擋果實(shí)掛在樹(shù)冠的不同高度和朝向光照隨時(shí)變化一陣風(fēng)吹過(guò)來(lái)整個(gè)樹(shù)冠都在擺動(dòng)。機(jī)械臂要在一個(gè)完全非結(jié)構(gòu)化的環(huán)境里完成作業(yè)這本身就超出了傳統(tǒng)工業(yè)機(jī)器人的設(shè)計(jì)假設(shè)。再看目標(biāo)本身。蘋(píng)果單果重量通常在150到250克之間果皮厚度只有零點(diǎn)幾毫米表面還有一層容易被蹭掉的天然果粉。果梗的抗拉力并不大但要剪斷它你得先讓蘋(píng)果穩(wěn)定在一個(gè)不晃動(dòng)的狀態(tài)。更麻煩的是蘋(píng)果不是標(biāo)準(zhǔn)的球體高樁果、扁圓果、帶果萼凸起的形態(tài)差異很大。如果末端執(zhí)行器在設(shè)計(jì)時(shí)沒(méi)有考慮這種個(gè)體差異拿一個(gè)固定尺寸的剛性?shī)A具去“卡”果實(shí)十個(gè)里有三個(gè)會(huì)在抓取階段就受傷脫落。1.2 果實(shí)不是工件損傷代價(jià)是直接的商業(yè)損失工業(yè)上的次品率可以靠后續(xù)分揀剔除但采摘環(huán)節(jié)造成的損傷是沒(méi)法補(bǔ)救的。蘋(píng)果一旦出現(xiàn)碰壓傷、劃傷、果粉磨損在分選線上就會(huì)被自動(dòng)歸類(lèi)到低等級(jí)果價(jià)格差可以達(dá)到一倍以上。所以蘋(píng)果采摘機(jī)器人設(shè)計(jì)的所有環(huán)節(jié)都必須圍繞一個(gè)核心約束可以摘不下來(lái)但絕對(duì)不能弄傷。這個(gè)約束改變了整個(gè)設(shè)計(jì)思路。比如機(jī)械臂的接近速度不能太快靠近果實(shí)末端時(shí)要降速緩沖末端夾持力不能簡(jiǎn)單按“抓住”來(lái)設(shè)計(jì)要加力覺(jué)反饋輸送環(huán)節(jié)如果采用自由落體的方式果實(shí)碰撞箱壁同樣會(huì)損傷。很多初次做這個(gè)項(xiàng)目的人會(huì)把精力全放在“怎么把蘋(píng)果摘下來(lái)”上結(jié)果做出來(lái)才發(fā)現(xiàn)“怎么把蘋(píng)果毫發(fā)無(wú)損地放進(jìn)收集箱”才是另一個(gè)大坑。1.3 技術(shù)指標(biāo)的錨點(diǎn)成功率、損傷率、節(jié)拍任何設(shè)計(jì)決策都需要標(biāo)尺。行業(yè)內(nèi)衡量采摘機(jī)器人水平基本看三個(gè)指標(biāo)單果采摘成功率、果實(shí)損傷率、平均單果采摘節(jié)拍。我們?cè)谝婚_(kāi)始就把目標(biāo)定在成功率85%以上、損傷率5%以下、單果節(jié)拍10秒以?xún)?nèi)。這三個(gè)數(shù)字是互相牽制的追求成功率可能反復(fù)抓取導(dǎo)致節(jié)拍變慢追求速度又會(huì)因?yàn)閯?dòng)作粗糙提高損傷率。后面所有結(jié)構(gòu)和控制方案的取舍本質(zhì)上都是在三個(gè)指標(biāo)之間找平衡點(diǎn)。2. 結(jié)構(gòu)設(shè)計(jì)三選機(jī)械臂構(gòu)型、末端執(zhí)行器、整機(jī)部署2.1 機(jī)械臂構(gòu)型自由度多不代表好用蘋(píng)果采摘機(jī)械臂的構(gòu)型選擇首先要看果園的種植模式。傳統(tǒng)喬化果園果樹(shù)高大、樹(shù)冠松散要求機(jī)械臂工作半徑大、安裝基座能升降而近些年推廣的矮化密植果園采用墻式栽培果實(shí)集中在冠層中下部行距固定機(jī)械臂的工作空間反而比較規(guī)整。對(duì)比幾種常見(jiàn)構(gòu)型構(gòu)型優(yōu)勢(shì)劣勢(shì)采摘場(chǎng)景適配度六軸關(guān)節(jié)臂靈活、可達(dá)性強(qiáng)姿態(tài)調(diào)整余地大結(jié)構(gòu)復(fù)雜、成本高、控制難度大高適合傳統(tǒng)果園和復(fù)雜樹(shù)形五軸關(guān)節(jié)臂升降臺(tái)成本相對(duì)低覆蓋高度可調(diào)末端姿態(tài)靈活性受限中高適合矮化密植果園Delta并聯(lián)機(jī)械臂速度快、精度高工作空間小負(fù)載能力普通低適合輔助分揀而非采摘直角坐標(biāo)/龍門(mén)式結(jié)構(gòu)簡(jiǎn)單、定位剛性好體積大、部署不靈活低僅限于試驗(yàn)臺(tái)環(huán)境綜合來(lái)看六軸關(guān)節(jié)臂仍是主流選擇。但要注意自由度多不代表好用——在雜亂樹(shù)冠里機(jī)械臂真正需要的不是更多自由度而是合適的臂展和纖細(xì)的臂體設(shè)計(jì)否則還沒(méi)碰到蘋(píng)果機(jī)械臂自己先卡在樹(shù)枝里了。我們用的六軸臂最大工作半徑約1.3米末端負(fù)載設(shè)計(jì)在2公斤以上算上末端執(zhí)行器和相機(jī)留足余量。臂管截面盡量做成圓形減少和樹(shù)枝的刮擦。2.2 末端執(zhí)行器整個(gè)項(xiàng)目的成敗都?jí)涸谶@幾百克上這是蘋(píng)果采摘機(jī)器人最核心的機(jī)構(gòu)沒(méi)有之一。早期方案里不少人嘗試直接套用工業(yè)二指夾爪配軟膠指墊去“捏”蘋(píng)果。實(shí)際測(cè)試下來(lái)問(wèn)題很多蘋(píng)果表面是弧面兩指夾持時(shí)接觸面積小壓強(qiáng)集中在兩個(gè)接觸點(diǎn)稍微用力就是兩個(gè)凹陷印更麻煩的是蘋(píng)果被夾住后需要一個(gè)“拉拽擰斷”的動(dòng)作才能和果梗分離二指夾爪根本沒(méi)法同時(shí)完成夾持和扭轉(zhuǎn)。我們最終采用的是負(fù)壓吸筒加旋轉(zhuǎn)切刀方案這也是目前樣機(jī)里比較主流的結(jié)構(gòu)。它的工作邏輯是這樣的吸筒口是一個(gè)喇叭形開(kāi)口內(nèi)徑比蘋(píng)果直徑略大機(jī)械臂帶著吸筒接近果實(shí)后負(fù)壓泵啟動(dòng)蘋(píng)果被柔和地吸入筒內(nèi)。果梗順勢(shì)進(jìn)入筒壁預(yù)留的刀槽電機(jī)驅(qū)動(dòng)旋轉(zhuǎn)刀片切斷果梗蘋(píng)果由筒壁引導(dǎo)滑向果實(shí)輸送通道。這個(gè)方案的巧妙之處在于吸筒對(duì)蘋(píng)果的約束是“半包圍”的柔和接觸壓力分散在整個(gè)筒壁面上不會(huì)形成局部壓傷同時(shí)它利用筒口和刀槽完成了果梗的粗定位省掉了一個(gè)專(zhuān)門(mén)識(shí)別果梗位置再控制刀具對(duì)準(zhǔn)的復(fù)雜環(huán)節(jié)。負(fù)壓值的選擇需要計(jì)算一個(gè)200克的蘋(píng)果重力約2牛考慮到果??估腿~片阻力實(shí)際需要吸筒提供5到10牛的作用力。吸筒口徑100毫米時(shí)理論壓差只需1300帕左右但因?yàn)樘O(píng)果表面曲率和筒口泄漏實(shí)際負(fù)壓通常取幾千到十幾千帕以實(shí)測(cè)為準(zhǔn)。關(guān)鍵經(jīng)驗(yàn)是吸力并不是主要承重手段——蘋(píng)果吸入筒內(nèi)后托持力來(lái)自筒壁負(fù)壓只負(fù)責(zé)“拉入”和“不掉出”所以筒壁內(nèi)襯的摩擦系數(shù)同樣重要。筒口位置必須加柔性護(hù)圈。我試過(guò)直接把3D打印的PLA筒口對(duì)著蘋(píng)果雖然負(fù)壓不大但筒口邊緣在拉拽時(shí)還是會(huì)在果皮上留下壓痕。換成內(nèi)徑略小于蘋(píng)果直徑的食品級(jí)硅膠波紋套之后70到100毫米直徑范圍的果實(shí)都能自適應(yīng)貼合損傷問(wèn)題基本消失。切刀部分用旋轉(zhuǎn)圓刀就行果梗直徑只有兩三毫米剪切力很小難點(diǎn)在于保證果梗能進(jìn)入刀槽——吸筒的導(dǎo)引結(jié)構(gòu)和負(fù)壓流場(chǎng)方向是這里的關(guān)鍵設(shè)計(jì)時(shí)不要讓刀槽邊緣產(chǎn)生尖角否則容易掛住葉片。2.3 整機(jī)部署形式移動(dòng)底盤(pán)是門(mén)大學(xué)問(wèn)末端執(zhí)行器和機(jī)械臂解決了“怎么摘”整機(jī)的移動(dòng)平臺(tái)解決“在哪摘”。三種常見(jiàn)部署方式各有代價(jià)。輪式或履帶式底盤(pán)機(jī)動(dòng)性最好但果園地面起伏、松軟底盤(pán)晃動(dòng)會(huì)直接傳遞到末端影響毫米級(jí)定位固定軌道沿行間鋪設(shè)穩(wěn)定性最好但前期基建投入大果園改造成本不低只適合標(biāo)準(zhǔn)化程度高的矮化密植園拖拉機(jī)掛載式成本可控但載具發(fā)動(dòng)機(jī)振動(dòng)和行進(jìn)精度問(wèn)題非常棘手。相機(jī)裝在哪里也需要提前想清楚。掛在機(jī)械臂末端eye-in-hand的好處是接近果實(shí)后能近距離精確定位缺點(diǎn)是機(jī)械臂運(yùn)動(dòng)時(shí)畫(huà)面模糊視覺(jué)標(biāo)定容易漂移線纜還要做好走線管理。裝在底盤(pán)上的眼在手外方案標(biāo)定簡(jiǎn)單但遠(yuǎn)處看果實(shí)會(huì)被葉片擋得嚴(yán)嚴(yán)實(shí)實(shí)精度也有限。我們最后選擇的是眼在手上方案并額外加裝了一個(gè)末端接近傳感器用來(lái)對(duì)視覺(jué)估計(jì)結(jié)果做最后校驗(yàn)這樣既能利用近距離高精度又能兜底視覺(jué)漂移。3. 控制系統(tǒng)感知、決策、執(zhí)行三條鏈的工程化落地3.1 控制架構(gòu)別一上來(lái)就聊智能算法蘋(píng)果采摘機(jī)器人的控制系統(tǒng)本質(zhì)上是一個(gè)“感知—決策—執(zhí)行”的實(shí)時(shí)閉環(huán)系統(tǒng)。感知層負(fù)責(zé)環(huán)境信息采集包括RGB-D相機(jī)、編碼器、真空壓力傳感器、力傳感器和各類(lèi)限位開(kāi)關(guān)決策層是主控制器負(fù)責(zé)目標(biāo)檢測(cè)、采摘序列狀態(tài)管理和運(yùn)動(dòng)軌跡規(guī)劃執(zhí)行層是伺服驅(qū)動(dòng)、負(fù)壓泵、切刀電機(jī)和輸送機(jī)構(gòu)。很多學(xué)生項(xiàng)目上來(lái)就鉆進(jìn)目標(biāo)檢測(cè)算法忽略了底層實(shí)時(shí)性和可靠性結(jié)果視覺(jué)識(shí)別再準(zhǔn)機(jī)械臂動(dòng)作一卡一停整體效果還是稀碎。我的建議是先把底層控制回路打通再往上加智能化。整個(gè)采摘?jiǎng)幼骺梢猿橄蟪梢粋€(gè)狀態(tài)機(jī)而不是連續(xù)的智能規(guī)劃流程。狀態(tài)序列為空閑→目標(biāo)定位→接近→負(fù)壓吸附→吸附確認(rèn)→剪切→輸送→回到空閑。這個(gè)設(shè)計(jì)里最容易被忽略的是“吸附確認(rèn)”狀態(tài)——視覺(jué)告訴你蘋(píng)果在那但吸筒伸過(guò)去可能被葉片擋住也可能果??ㄔ谕部谶吘壺?fù)壓值根本建立不起來(lái)。沒(méi)有確認(rèn)環(huán)節(jié)就直接剪切果實(shí)大概率直接掉地上。所以我在控制邏輯里加入真空度閾值判斷吸附后壓力達(dá)不到設(shè)定值就自動(dòng)重試或者跳過(guò)該果實(shí)測(cè)下來(lái)避免了很多無(wú)效動(dòng)作。下面這段偽代碼展示了狀態(tài)機(jī)的核心流轉(zhuǎn)邏輯實(shí)際工程里可以用PLC結(jié)構(gòu)化文本或者C狀態(tài)框架實(shí)現(xiàn)while True: if state IDLE: target scan_next_target() state LOCATE if target else IDLE elif state LOCATE: pos visual_estimate(target) state APPROACH if pos_valid else ALARM elif state APPROACH: move_to(pos, speed_profileslow_tip) state GRASP elif state GRASP: vacuum_on() state VERIFY elif state VERIFY: if vacuum_pressure() threshold and force_limit_ok(): state CUT else: state RETRY elif state CUT: cutter.rotate_once() state RELEASE elif state RELEASE: vacuum_off() conveyor.advance() state IDLE3.2 運(yùn)動(dòng)規(guī)劃接近方向的學(xué)問(wèn)比軌跡算法更大機(jī)械臂進(jìn)樹(shù)冠采摘最大的運(yùn)動(dòng)規(guī)劃難點(diǎn)不是“走到目標(biāo)點(diǎn)”而是“以什么姿態(tài)走進(jìn)去”。果實(shí)朝向四面八方有的果梗朝上有的朝側(cè)面機(jī)械臂末端必須沿著果實(shí)可接近方向靠近否則吸筒會(huì)被枝干擋住。我們的做法是事先定義多個(gè)候選接近姿態(tài)正上方、側(cè)向45度、水平等視覺(jué)系統(tǒng)給出果實(shí)位置后逆解模塊自動(dòng)選一個(gè)能同時(shí)滿(mǎn)足關(guān)節(jié)限位和無(wú)碰撞的姿態(tài)執(zhí)行。速度規(guī)劃上接近段可以快但離果實(shí)20厘米以?xún)?nèi)必須降速一方面是為了安全另一方面高速運(yùn)動(dòng)產(chǎn)生的氣流會(huì)讓旁邊的葉子和果柄晃動(dòng)干擾定位。末端剪切完成后的返回動(dòng)作也盡量走直線減少路徑彎曲帶來(lái)的額外時(shí)間損耗。這些細(xì)節(jié)看起來(lái)不起眼對(duì)節(jié)拍的影響卻非常直接。3.3 戶(hù)外電力系統(tǒng)的隱藏坑果園沒(méi)有工業(yè)插座整機(jī)用鋰電池供電時(shí)功耗大頭在負(fù)壓泵和機(jī)械臂的加減速制動(dòng)階段。這里有個(gè)特別容易踩的坑電池電量下降到一定程度時(shí)電壓跌落會(huì)導(dǎo)致伺服電機(jī)力矩不足表現(xiàn)出來(lái)就是“越采越?jīng)]力”但故障排查時(shí)很難想到是供電問(wèn)題。我們后期在控制面板上實(shí)時(shí)監(jiān)控母線電壓電量低于30%時(shí)強(qiáng)制提示充電并降低機(jī)械臂加減速的加速度上限才算解決。另外負(fù)壓泵建議選無(wú)油型避免在果園環(huán)境下漏油污染果實(shí)有條件的話把負(fù)壓泵獨(dú)立供電和機(jī)械臂動(dòng)力分開(kāi)這樣電機(jī)啟動(dòng)的瞬態(tài)壓降不會(huì)影響負(fù)壓穩(wěn)定性。4. 視覺(jué)識(shí)別模塊紅色蘋(píng)果、白色果袋和綠色枝葉的博弈4.1 目標(biāo)檢測(cè)先看清目標(biāo)長(zhǎng)什么樣成熟期的紅富士蘋(píng)果在顏色上和葉子區(qū)分度很高用傳統(tǒng)的HSV顏色分割就能獲得不錯(cuò)的候選區(qū)域。但真實(shí)果園里光照變化會(huì)打亂一切逆光時(shí)蘋(píng)果表面過(guò)曝紅色被洗成白色陰影里的果實(shí)又暗得和樹(shù)干分不清摘袋不久的蘋(píng)果上色不足呈粉白色顏色特征明顯減弱。如果只靠顏色閾值誤檢漏檢會(huì)非常嚴(yán)重。我們最后采用的策略是“深度學(xué)習(xí)粗定位加傳統(tǒng)圖像精分割”的組合。先用YOLO系列的輕量化檢測(cè)模型框出果實(shí)區(qū)域這一步負(fù)責(zé)應(yīng)對(duì)復(fù)雜背景和光照變化然后在每個(gè)候選框內(nèi)部用邊緣檢測(cè)和橢圓擬合把單個(gè)果實(shí)的輪廓和球心位置精算出來(lái)。這樣粗定位給精度割出邊界精分割負(fù)責(zé)處理果實(shí)重疊和輪廓提取算力開(kāi)銷(xiāo)也比直接端到端分割小得多在工控機(jī)上的實(shí)時(shí)性完全跑得起來(lái)。4.2 遮擋與重疊不是所有看得見(jiàn)的蘋(píng)果都該摘蘋(píng)果被葉片擋住50%以上時(shí)人類(lèi)也無(wú)法準(zhǔn)確判斷果梗的著生位置機(jī)器人硬采只會(huì)把葉子一起吸進(jìn)筒里。我們專(zhuān)門(mén)加了一個(gè)可采摘性評(píng)估模塊計(jì)算果實(shí)輪廓的可見(jiàn)比例檢查果梗區(qū)域附近有沒(méi)有枝條阻擋如果可見(jiàn)性不足就直接標(biāo)記為“跳過(guò)”絕不反復(fù)嘗試。這個(gè)策略剛開(kāi)始我覺(jué)得是“認(rèn)慫”后來(lái)發(fā)現(xiàn)正是這種克制讓整棵樹(shù)的采摘效率提升了不少——與其在一個(gè)難果上耗30秒不如多摘五六個(gè)容易的。重疊果實(shí)是另一個(gè)典型問(wèn)題。兩個(gè)蘋(píng)果擠在一起時(shí)目標(biāo)檢測(cè)的錨框經(jīng)常把兩個(gè)框成一個(gè)深度估計(jì)也會(huì)被拉偏。處理辦法是先用分割算法把重疊區(qū)域內(nèi)的果實(shí)分離出來(lái)分別做橢圓擬合再逐個(gè)估算球心。這里要特別小心深度圖強(qiáng)自然光下RGB-D相機(jī)的結(jié)構(gòu)光很容易失效深度圖會(huì)出現(xiàn)大塊空洞所以在戶(hù)外使用時(shí)要避免陽(yáng)光直射鏡頭最好加遮陽(yáng)罩并用時(shí)間序列上的中值濾波平滑深度讀數(shù)。4.3 手眼標(biāo)定與動(dòng)態(tài)修正運(yùn)動(dòng)會(huì)毀掉一切精度眼在手上的結(jié)構(gòu)讓視覺(jué)系統(tǒng)離目標(biāo)很近但也引入了動(dòng)態(tài)誤差。機(jī)械臂運(yùn)動(dòng)到目標(biāo)附近時(shí)相機(jī)看到的是果實(shí)側(cè)面的局部特寫(xiě)目標(biāo)可能已經(jīng)跑出視場(chǎng)邊緣。再加上GPU推理延遲當(dāng)你算出果實(shí)坐標(biāo)時(shí)機(jī)械臂實(shí)際已經(jīng)往前走了一截。解決思路是“粗到細(xì)”視覺(jué)先給出一個(gè)大概率位置機(jī)械臂快速移動(dòng)到預(yù)抓取點(diǎn)末端接近傳感器或者近距離重識(shí)別觸發(fā)第二次精確定位再執(zhí)行吸附動(dòng)作。相當(dāng)于把視覺(jué)定位拆成兩段第一段負(fù)責(zé)把人送到附近第二段負(fù)責(zé)臨門(mén)一腳。標(biāo)定漂移是長(zhǎng)期運(yùn)行后最頭疼的問(wèn)題。機(jī)械臂反復(fù)運(yùn)動(dòng)相機(jī)支架微小的松動(dòng)都會(huì)讓標(biāo)定矩陣失效。與其頻繁重新標(biāo)定不如從結(jié)構(gòu)上解決——相機(jī)支架直接用銷(xiāo)釘定位加螺紋膠固定杜絕松動(dòng)。果園環(huán)境下不可能像實(shí)驗(yàn)室那樣頻繁鋪標(biāo)定板所以結(jié)構(gòu)緊固遠(yuǎn)比算法補(bǔ)償靠譜。5. 實(shí)測(cè)數(shù)據(jù)與踩坑實(shí)錄成功率和損傷率是兩座山5.1 樣機(jī)在模擬果園里的測(cè)試結(jié)果我們搭了一個(gè)模擬果園環(huán)境用真實(shí)蘋(píng)果枝條和幾種不同直徑的果實(shí)做測(cè)試。初始樣機(jī)的數(shù)據(jù)相當(dāng)難看單果采摘成功率只有50%左右果面損傷率接近兩成單果節(jié)拍要20秒以上。迭代了幾輪末端護(hù)圈、負(fù)壓參數(shù)和接近策略之后數(shù)據(jù)才逐步向目標(biāo)靠攏。指標(biāo)初版樣機(jī)迭代后目標(biāo)值單果采摘成功率45%~55%75%~85%90%以上果面損傷率15%~25%5%~8%3%以下平均單果節(jié)拍20秒以上12~18秒10秒以?xún)?nèi)要提醒的是這些數(shù)據(jù)受果園條件影響極大。同一樣機(jī)換一片樹(shù)形更亂、果實(shí)更密的果園數(shù)值可能迅速惡化所以測(cè)試時(shí)必須按光照條件、果實(shí)大小、遮擋程度分類(lèi)記錄否則后期根本不知道優(yōu)化到底優(yōu)化在哪里。5.2 幾個(gè)讓人反復(fù)失眠的具體問(wèn)題葉子被吸進(jìn)筒里的問(wèn)題比想象中發(fā)生得更頻繁。葉片面積大、重量輕負(fù)壓一開(kāi)就被吸到筒口把果梗進(jìn)入刀槽的路徑堵得死死的。我們的解決辦法是在筒口加了一圈格柵齒讓葉片被擋在外面同時(shí)吸附后給負(fù)壓一個(gè)短暫的反吹脈沖把誤吸的雜物吹掉。蘋(píng)果貼著樹(shù)干生長(zhǎng)的情況處理起來(lái)最讓人頭疼。果實(shí)和枝干間隙太小吸筒根本沒(méi)有足夠的接近空間硬要采只會(huì)卡住機(jī)械臂。我們?cè)谝?guī)劃層加了快速可達(dá)性判斷如果檢測(cè)到果實(shí)周?chē)?0厘米內(nèi)有粗枝條阻擋直接跳過(guò)。這個(gè)邏輯一開(kāi)始會(huì)讓采摘成功率報(bào)表變低但整樹(shù)的實(shí)際效率反而提高了因?yàn)槭∠聛?lái)的時(shí)間能摘更多可達(dá)的果實(shí)。果梗太短或側(cè)生的果實(shí)旋轉(zhuǎn)切刀也經(jīng)常夠不到梗。后來(lái)我們把單一切斷動(dòng)作改成了“吸附后先旋轉(zhuǎn)20度再做切割”模擬人手?jǐn)Q蘋(píng)果的動(dòng)作。就是這一下擰讓一堆原本切不到的果子被成功摘下來(lái)了??刂七壿嬛欢嗔藘尚行Ч麉s非常顯著。5.3 整機(jī)聯(lián)調(diào)里最容易被忽視的系統(tǒng)性干擾視覺(jué)、機(jī)械、控制三個(gè)子系統(tǒng)單獨(dú)測(cè)試都沒(méi)問(wèn)題一聯(lián)調(diào)就各種怪毛病這是項(xiàng)目后期最常見(jiàn)的狀態(tài)。一個(gè)典型案例是機(jī)械臂快速運(yùn)動(dòng)時(shí)末端相機(jī)的圖像會(huì)出現(xiàn)運(yùn)動(dòng)模糊和卷簾快門(mén)畸變視覺(jué)系統(tǒng)在運(yùn)動(dòng)過(guò)程中采集到的坐標(biāo)全是偏的。我們最后在控制邏輯里強(qiáng)制規(guī)定機(jī)械臂到達(dá)預(yù)抓取點(diǎn)、完全停穩(wěn)100毫秒后視覺(jué)才開(kāi)始精確測(cè)量徹底切斷運(yùn)動(dòng)模糊的影響。機(jī)械臂線纜和負(fù)壓氣管的走線也是聯(lián)調(diào)階段的大坑。臂體反復(fù)轉(zhuǎn)動(dòng)氣管和線束纏繞后被關(guān)節(jié)壓住會(huì)導(dǎo)致負(fù)壓管路被壓扁、信號(hào)線斷路。前期設(shè)計(jì)時(shí)就要給線纜預(yù)留足夠長(zhǎng)度的螺旋走線空間或者使用電氣滑環(huán)和旋轉(zhuǎn)氣管接頭這筆成本不能省。6. 如果重新做一遍我會(huì)先做什么如果讓我把整個(gè)項(xiàng)目重來(lái)一次我會(huì)先把末端執(zhí)行器和視覺(jué)系統(tǒng)搭成一套獨(dú)立的半實(shí)物測(cè)試臺(tái)用真實(shí)蘋(píng)果枝條做幾百次采摘實(shí)驗(yàn)把負(fù)壓值、切刀轉(zhuǎn)速、接近姿態(tài)這些參數(shù)徹底標(biāo)定好再上整機(jī)聯(lián)調(diào)。這樣能省掉大量整機(jī)調(diào)試階段排查問(wèn)題的時(shí)間。機(jī)械臂只是“手”末端執(zhí)行器和采摘控制邏輯才是蘋(píng)果采摘機(jī)器人真正的“手藝”。另外做這個(gè)方向不要只蹲在實(shí)驗(yàn)室里調(diào)代碼。去果園蹲幾天看看果農(nóng)怎么繞過(guò)枝條、怎么判斷果梗方向、怎么在密集的果實(shí)之間騰挪手指——很多控制策略的靈感其實(shí)就藏在這些看起來(lái)不起眼的動(dòng)作里。機(jī)器人的價(jià)值不是替代人而是把人不愿意做的重復(fù)勞動(dòng)接下來(lái)前提是設(shè)計(jì)者得先真正理解人在做的事。本文還有配套的精品資源點(diǎn)擊獲取