汪文韜??
【中圖分類號】 TP212 【文獻標識碼】 A 【文章編號】 2236-1879(2018)11-0194-01
參加Roborave機器人大賽不僅可以鍛煉參與者解決問題能力,實踐動手能力,還能訓練其工程思維能力。我們都知道,在數學上對于一個問題有許多解法,答案不是唯一的。工程上也是如此,解決問題的方法有很多,其中,容錯率和效率就是要考慮的重要指標。這里我想討論一下如何把機器人巡線和在箱子里放固定數量的乒乓球做到又快又好,以下是我在準備參加比賽和在比賽時所用的不同方案,經過學習和比對得出的一些心得。
(圖為清華教授姜玉芹 、毛勇現場指導照片)
大賽機器人的運行環境是大賽的場地,比賽時場地的情況將非常復雜,因此,機器人必須知道自己當前的位置才能決定要執行怎樣的動作,定位是大賽機器人各種性能發揮的基礎,也是機器人全場路徑自動規劃的基礎。我們在Roborave機器人大賽中運用基于巡線技術的定位方案對大賽機器人來講是一種比較可靠和有針對性的方案。
Roborave對于巡線的要求并不高,用一個巡線傳感器和最簡單的if語句就可以完成。傳感器需要在黑線內,因為它靠識別黑線上的白色來進行巡線的。這個時候你會發現小車雖然可以前進,但是會大幅度的左右搖擺,而且遇到一條以上的黑線比如路口就無法判斷方向了,并且小車速度不能過快,因為當速度過快時,它會沖出范圍原地快速轉圈,而轉速很快時,小車沒有足夠的時間識別并做出反應,導致很難繼續巡線,任務必然失敗。多加一個傳感器就成了一個很好的解決方案。當我們有兩個傳感器時,可以同時進行巡線,當兩個傳感器都感應到線的時候可以判定為路口然后停下,隨機進入一個再判斷是否正確的入口,如果不是則掉頭。
當選擇用兩個傳感器時,就可以完成Roborave的巡線要求,并有一定的判斷能力,但是在只有兩個傳感器的情況下,運行速度會受到很大的限制。如果速度過快,小車會沖出跑道,黑線不在兩個傳感器以內,就無法自主返回。如果使用更多的傳感器提高冗余,進一步提高容錯率,就可以使小車加速。即使黑線不在車最內側的傳感器范圍內,也就是沖出來跑道,依然可以通過外側的傳感器加大小車的轉向角度和速度使小車返回原位。通過多次實驗,我們用五個傳感器完美的實現這個功能,為了使小車在轉向時更快,可以在小車的最外側靠小車中間的地方再加兩個傳感器,功能是進行直角轉彎。
我們在比賽中用于巡線的傳感器組合是由多組反射式紅外光電傳感器組成,組與組之間的工作相互獨立。其工作原理是:紅外發射管發射一定強度的紅外光,接受管用來檢測反射光的強度,由于場地的光線和黑色引導線的顏色相差很大,因此,引導線上的反射光強度和場地的反射光強度就會有較大的差別,這些都會影響傳感器的測量結果。因此在設計時采用了對對典型值進行實地反復測量的方法。將一個場地的2個典型反射光強度進行反復采樣,然后將結果存入控制器的flash中,作為比賽時的典型值,即實現對場地反光強度的記憶。
巡線完成之后的關鍵就是如何把小車上的乒乓球放入箱子里了。如果巡線足夠精準,地上箱子的開口和車上的箱子的開口是剛好吻合的,所以巡線是很重要的一環。由于巡線車的大小有明確規定,一般在30cm*30cm*30cm以內,在測試的時候,我們發現如果只是把車上箱子的開口打開讓乒乓球傾倒下來,效果不是很好,因為由于高度的限制乒乓球經常會卡在開口處,導致整個任務失敗。于是我們想到加裝震動馬達,通過震動使乒乓球掉落,但是能使用的馬達功率太小達不到理想要求。最后我們改進用舵機攪拌,同時讓小車小幅度的前后移動達到震動的效果。隨即要解決的問題是,通過一個主板沒有足夠長的線同時控制車上面的箱子和下面的馬達與傳感器,最用我們采用了連接兩塊主板的方式。
這樣,通過多個傳感器的協助,以及巧妙地設計箱子的代碼,終于可以完成Roborave的巡線任務。一個有我們親手設計制作的機器人在賽場上舞動身姿,完美通過每一個關口,最后用最快的速度將貨物準確的送達目的地,成就感油然而生!
參賽指導老師:姜玉芹 、 毛勇