<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 一種自動(dòng)割草機器人的設計和實(shí)現

一種自動(dòng)割草機器人的設計和實(shí)現

作者: 時(shí)間:2011-10-18 來(lái)源:網(wǎng)絡(luò ) 收藏

3.1 軟件總體結構

  主程序主要執行初始化以及的3種行走策略:普通行走的任務(wù);回到基站的任務(wù);執行出站的任務(wù)。在外部中斷中,外部光電避障、碰撞開(kāi)關(guān)避障和保護部分的信號是主要外部中斷的來(lái)源,用于實(shí)時(shí)響應這些異常事件。軟件流程圖如圖6.

  3.2 割草路徑規劃

  路徑規劃是指,在具有障礙物的環(huán)境中,按照一定的評價(jià)標準,尋找一條從起始狀態(tài)到目標狀態(tài)的無(wú)碰撞路徑。本算法中路徑規劃采用了基于知識的遺傳算法,它包含了自然選擇和進(jìn)化的思想,具有很強魯棒性。機器人整體的運動(dòng)規劃一般又稱(chēng)為路徑規劃,由于機器人整體看作是一個(gè)點(diǎn)或者是一個(gè)固定的幾何體,自由度比較少,因此路徑規劃問(wèn)題相對比較簡(jiǎn)單。傳統的機器人運動(dòng)規劃算法已經(jīng)能較好地解決路徑規劃問(wèn)題。

  路徑規劃的遍歷策略是割草機設計中的一個(gè)重要環(huán)節,涉及到割草機割草的效率。合理的遍歷策略可以使在最短的時(shí)間內遍歷整個(gè)割草區域[4].常用的割草策略主要有兩種方式:直線(xiàn)運行方式和邊界跟蹤運行方式[5].兩種覆蓋區域方式如圖7、圖8所示。

  采用直線(xiàn)運行時(shí),轉向處會(huì )有不可避免的重疊路徑,使總的運行距離增加;采用邊界跟蹤的方式時(shí),需要機器人不斷地調整進(jìn)行方向,容易帶來(lái)誤差。針對自動(dòng)割草機器人以單片機為核心的控制器而言,需要自動(dòng)割草機器人的運行軌跡盡量簡(jiǎn)單化和規范化。因此采取直線(xiàn)運行方式遍歷子區間,在前向的電子籬笆傳感器感應到邊界后,割草機器人后退一小段距離,然后以一個(gè)輪子為中心,另一個(gè)輪子左轉(或右轉)180°,完成掉頭,然后繼續前進(jìn),下次再碰到邊界就向相反的方向旋轉180°,這樣就可以做到區域的覆蓋。

  3.3 割草邊界區域的處理方法

  割草機器人在區域的邊角處行走是最容易出現問(wèn)題的時(shí)候,不合理的行走策略可能導致割草機器人走出邊界。所以要利用割草機器人現有的傳感器去選擇在區域邊角的運行策略。

  經(jīng)過(guò)實(shí)驗發(fā)現,出現越界問(wèn)題的情況主要有兩種。

 ?。?)割草機到達邊界的一個(gè)角落,如圖9.在這種情況下割草機器人傳感器A4(或者A3)首先檢測到邊界L1的信息,根據直線(xiàn)運行方式就應該先后退再向左轉(或向右轉)。正常情況下走到這種角落時(shí)就應該是先檢測到L1,然后后退一段距離,再向右方向轉180°。在轉彎的過(guò)程中,由于L2的存在, A3就會(huì )感應到角落的另外一個(gè)邊界L2,如果沒(méi)有特別的策略,就會(huì )執行先后退一段距離,再向左轉180°的策略,這樣就很容易走出邊界,或者使控制變得混亂。要避免這種情況就需要在軟件上做出改動(dòng),即在轉彎過(guò)程中如果有其他傳感器檢測到邊界,就說(shuō)明已經(jīng)到了另一個(gè)邊界角落的位置。最好的處理方法就是原路回轉過(guò)去,回到原位后再次左轉180°,開(kāi)始從這個(gè)區域的頂端到另外一端的循環(huán)行走遍歷。

 ?。?)割草機遇到了一個(gè)傾斜的邊界,如圖10.如果沒(méi)有特殊的策略,A4檢測到邊界后,就執行轉向的策略,這樣就會(huì )有很大一片的前方區域(區域一)不能遍歷到,所以就需要利用右邊的A2去解決這個(gè)問(wèn)題。在正常行走時(shí),如果A2首先檢測到了邊界,則執行先后退、然后左拐一定的角度、最后前進(jìn)的策略。自動(dòng)割草機器人就會(huì )沿著(zhù)這根斜線(xiàn)邊界不斷調整自己的角度前進(jìn),而不會(huì )漏掉這些區域,適用于邊界不是很規則的草地。


  4 系統整體調試

  割草機器人整體調試步驟:(1)單片機控制系統的測試;(2)運動(dòng)控制系統的調試;(3)各個(gè)傳感部分的調試;(4)運動(dòng)控制系統與傳感器相結合的整機調試。

  首先單獨測試單片機的控制,測試通過(guò)后進(jìn)行運動(dòng)模塊的測試,獲取割草機的運動(dòng)參數。然后進(jìn)行各個(gè)傳感模塊的測試,其中重點(diǎn)的是電子籬笆、光電避障的測試。在確認各個(gè)傳感模塊工作無(wú)誤后即可開(kāi)始進(jìn)行割草機器人的整體測試以及割草路徑規劃。最終實(shí)現自動(dòng)割草機器人自動(dòng)割草、自動(dòng)充電和雨雪天自動(dòng)返回基站等功能。

  自動(dòng)割草機器人系統借鑒了國外的割草機系統的特點(diǎn),特別加強了安全性和可靠性的設計,實(shí)現了更好的控制。從外界獲取信息能力來(lái)看,多傳感器系統保證了獲得的外界信息的完整性、有效性,保證了自動(dòng)割草的正常進(jìn)行以及意外情況的及時(shí)應對。從系統性能方面,采用功耗合理、性能優(yōu)越的單片機控制系統,保證了性能與成本的兼顧。從功能方面,基本實(shí)現了全部割草機器人應有的功能,并且加強了安全性。通過(guò)現場(chǎng)的測試結果,割草機器人完全能夠勝任坡度不大于15°的草地的割草需求,實(shí)現了真正的無(wú)人值守自動(dòng)割草。

光電開(kāi)關(guān)相關(guān)文章:光電開(kāi)關(guān)原理
電能表相關(guān)文章:電能表原理

上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: 自動(dòng)割草機器人

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>