⑴ 樂高ev3單光感巡線程序怎麼編
採用反光強度模式,設置一個閾值,低於閾值左轉,高於閾值右轉。右側巡線模式。
⑵ 光電巡線車電路工作原理
原理:巡線小車尋跡電路採用紅外光電感測器進行檢測並且尋跡運動,主要利用紅外感測器發出的紅外線的反射原理。
⑶ 樂高機器人巡線抓物怎樣編程
一、前言;在機器人競賽中,「巡線」特指讓機器人沿著場地中一;二、光感中心與小車轉向中心;以常見的雙光感巡線為例,光感的感應中心是兩個光感;所以在實際操作中,一般通過程序與結構的配合,在程;三、車輛結構;巡線任務的核心是讓機器人小車按照場地中畫出的路線;1、前輪驅動;前輪驅動的小車一般由兩個動力輪和一個萬向輪構成,;2、後輪驅動;後輪驅動的小車結構和轉向中心與
一、前言
在機器人競賽中,「巡線」特指讓機器人沿著場地中一條固定線路(通常是黑線)行進的任務。作為一項搭建和編程的基本功,巡線既可以是獨立的常規賽比賽項目,也能成為其他比賽項目的重要技術支撐,在機器人比賽中具有重要地位。
二、光感中心與小車轉向中心
以常見的雙光感巡線為例,光感的感應中心是兩個光感連線的中點,也就是黑線的中間位置。而小車的轉向,是以其車輪連線的中心為圓心進行的。很明顯,除非將光感放置於小車轉向中心,否則機器人在巡線轉彎的過程中,探測線路與做出反應之間將存在一定差距。而若將光感的探測中心與轉向中心重合,將大幅提升搭建難度並降低車輛靈活性。因此,兩個中心的不統一是實際存在的,車輛的轉向帶動光感的轉動,同時又相互影響,造成機器人在巡線時對黑線的反應過快或者過慢,很多巡線失誤由此產生。
所以在實際操作中,一般通過程序與結構的配合,在程序中加入一定的微調動作來彌補其中的誤差。而精準的微調,需要根據比賽場地的實際情況進行反復調試。
三、車輛結構
巡線任務的核心是讓機器人小車按照場地中畫出的路線行進,因此,根據任務需要選擇合適搭建方式是完成巡線任務的第一步。
1、前輪驅動
前輪驅動的小車一般由兩個動力輪和一個萬向輪構成,動力輪位於車頭,通過左右輪胎反轉或其中一個輪胎停轉來實現轉向,前者的轉向中心位於兩輪胎連線中點,後者轉向中心位於停止不動的輪胎上。由於轉向中心距離光感探測中心較近,可以實現快速轉向,但由於機器人反應時間的限制,轉向精度有限。
2、後輪驅動
後輪驅動的小車結構和轉向中心與前輪驅動小車類似,由於轉向中心靠後,相對於前輪驅動的小車而言,位於車尾的動力輪需要轉動較大的幅度,才能使車頭的光感轉動同樣角度。因此,後輪驅動的小車雖轉向速度較慢,但精度高於前輪驅動小車。對於速度要求不高的比賽而言,一般採用後輪驅動的搭建方式。
3、菱形輪胎分布
菱形輪胎分布是指小車的兩個動力輪位於小車中部,前後各有一個萬向輪作為支撐。這樣的結構在一定程度上可以視為前輪驅動和後輪驅動的結合產物,轉向速度和精度都介於兩者之間。這種結構的優勢在於轉向中心位於車身中部,轉彎半徑很小,甚至能以自身幾何中心為圓心進行原地轉向,適合適用於轉90°彎或數格子行進等一些比較特殊的巡線線路。
這種結構最初應用於RCX機器人足球上,居中的動力源可以讓參賽選手為機器人安裝更多的固定和防護裝置,以適應比賽中激烈的撞擊,具有很好的穩定性。而對於NXT機器人而言,由於伺服電機的形狀狹長不規律,將動力輪位於車身中部的做法將大幅提升搭建難度,並使車身重心偏高,降低轉彎靈活性。
4、四輪驅動
四輪驅動的小車四個輪胎都有動力,能較好地滿足一些比賽中爬坡任務的需要。小車的轉向中心靠近小車的幾何中心,因此能進行原地轉彎運動,具有較好的靈活性,特別適用於轉90°彎或數格子行進等任務一些比較特殊的巡線線路。雖然與後輪驅動小車相比,轉向中心比較靠前,轉向精度較小,但四輪驅動小車沒有萬向輪,轉彎需要靠四個輪胎同時與地面摩擦,加大轉彎的阻力,因而轉彎精度應介於菱形輪胎分布的小車和後輪驅動小車之間。
四輪驅動的小車最大優勢在於具有普遍適應性,熟練掌握此結構的參賽選手能在參加FLL工程挑戰賽、WRO世界機器人奧林匹克等一些比較復雜的比賽中占據一定優勢。
四、編程方案
1、單光感巡線
單光感巡線是巡線任務中最基礎的方式,在行進過程中,光感在黑線與白色背景間來回晃動,因此,這種巡線只能用兩側電機交替運動的方式前進,行進路線呈「之」字形。這種巡線方式結構簡單易於掌握,但由於只有一個光感,對無法在完成較為復雜的巡線任務(如遇黑線停車、識別線路交叉口等),且速度較慢。
基本思路:光感放置於黑線的左側,判黑則左輪不動右輪前進,判白則右輪不動左輪前進,如此交替循環。參考程序如下圖:
2、單光感巡線+獨立光感數線
在很多比賽中,機器人需要做的不僅僅是沿著黑線行進,還需要完成一些其他任務,如在循跡路線上增加垂直黑線要求停車、放置障礙物要求躲避等內容。此時,單光感巡線已不能滿足要求。下面以要求定點停車為例,簡要介紹單光感巡線+獨立光感數線的編程模式。
基本思路:在此任務中要求在垂直黑線處停車,則需要跳出單光感巡線的循環程序體系,可以通過設置循環程序的條件實現這一功能。由於程序的設定,負責巡線的3號光感在行進時始終位於黑線的左側,不會移動到黑線右側的白色區域,因此在黑線右側設置一個光感(4號)專門負責監視行進過程中黑
線右側的區域,當此光感判黑時,即可判斷出小車行進到垂直黑線處,於是終止單光感巡線的循環程序,執行規定的停車任務,然後向前行進一小段距離駛過垂直黑線,繼續單光感巡線任務。參考程序如下圖:
上述程序只適用於停車一次的需要,在實際比賽中需以定點停車、蔽障任務為基點,將巡線賽道劃分為若干個小段依次設定程序,或採用兩重循環的程序,重復執行巡線→→定點停車任務:
3、雙光感巡線
雙光感巡線是機器人競賽中最常見的巡線模式,兩個光感分別位於黑線兩側,以夾住黑線的方式行進。根據兩個光感讀取的數值不同,可以將光感的探測結果分為左白右黑、左黑右白、雙白和雙黑四種情況,根據這四種探測結果,分別執行右轉、左轉、直行和停車四種動作的程序命令。由於這種方法能讓兩個電機同時工作,機器人運動的速度較快,同時採取兩個光敏監測黑線,精度也有所提高。
基本思路:使用兩重光感分支程序疊加,為四種探測結果設定與之對應的程序反應,形成循環程序結構,參考程序如下圖:
⑷ 機器人編程第二步:具體問題具體分析
經過第一步分解任務後,接下來就要具體分析每一步是如何實現。
基本上到這里,孩子們都喜歡直接沖到電腦前開始寫程序,但是呢,往往一堆問題,復雜點的任務更是寫著寫著就懵了。
雖然我們已經分解了任務,但只是一個初略的分解,具體每一步的如何實現,前面的分解步驟是否有紕漏,是否合理,這些是需要我們具體來分析一下的。
這一步我們需要寫出每個步驟的具體完成動作,是那個感測器在發揮作用,各個馬達應該如何運轉。如下入所示。
下面我們來具體分析一下。
記得還在初中的時候,在《智慧背囊》(暴露年齡了)里有這么個故事:有個記者采訪一個滑雪冠軍,問他怎麼學好滑雪,冠軍說:你要先知道怎麼停下來。
就像永動機是個偽命題一樣,我不認為這世上有永遠沒有結束的事,大到太陽,看似永恆,可是50億年後也會因為內部的氫元素全部耗盡,導致核心將發生坍縮。小到我們每天吃飯,我們不會一頓飯從早吃到晚,從今天吃到明天,當我們飽了,不想吃了,或者飯吃完了,吃飯這個事也就結束了。
所以對於我們機器人任務的每一步,「你要先知道怎麼停下來」,我們需要知道這一步什麼時候結束。
以上節課的巡線任務為例。
第一步是直行。具體任務描述是從起點巡線到A點。這里其實有兩層含義:一個是巡線,一個是這一步的結束標志是到達A點。如果不去關注每一步的結果,就會導致程序停留在這一步,無法結束。
那怎麼判斷到達A點呢,A點處是一個直角,可以用光電來做遇黑判斷,單光電遇黑時,就可以停下來結束這一步了。
然後在考慮巡線,巡線可以用單光電巡線來完成,一般到這個地步的孩子對單光電巡線都不陌生,不過這里就還是多啰嗦一下,因為單光電巡線看似簡單,但是還是很容易出錯的。
單光電巡線根據光電在黑線的左邊還是右邊會有不一樣的走法,在左邊時,遇黑要左轉,否則右轉,在右邊則是反過來。
上面這個過程看似復雜,但是我把這個過程總結為三個問題:是我是誰?我從哪裡來?要到哪裡去?開玩笑的,是:終止條件是什麼?終止狀態是什麼?這一步要幹嘛?這是那個問題又可以叫做三板斧,我自嗨一下,不用在意。
弄清楚這三個問題後,再具體看下這步幹嘛怎麼做
文章剛開始我說這個環節我們要具體到每個光電每個馬達的狀態,所以這步幹嘛還要在細化:
於是我們就可以把任務分析表給填好了,就是最開始那張表。
有學生會說:老師,搞這么復雜幹嘛?
因為前面不這么分析的細致一點,所有最後調試遇到的問題都在這些細節里,馬達轉動方向不對,光電跟馬達的配合不當,等等。其實都可以通過這一步的分析來避免的。
按照上面的套路,我們把第二步的任務分析表也整出來。
這時候我們對比一下第一步跟第二步的終止條件會發現,兩個都是右光電遇黑,這就意味著第二步的右轉在開始的時候就結束了。真是出師未捷身先死,尷尬了。這里其實就是一個光電狀態的問題,我們可以在第一步跟第二步之間增加一個小的環節,讓光電離開黑線上的狀態。
這里呢,有些學生喜歡把前沖這個動作放在第一步的終止狀態里,不是不行,但是我建議單獨設置一步,這樣使整個分析結果更加清晰明了,遇到問題容易定位也容易修改。所以我們第一步的分解步驟,在這里就要做修改。
前進,前沖,右轉,前進,前沖,左轉,前進,前沖,右轉,前進,停留2秒,後退,掉頭,前進,前沖,右轉,前進。
前三步的任務分析表如下圖所示,後面的步驟跟前面大同小異,用相同的辦法分析就行了。
限於篇幅,這里稍作補充下,對於經驗豐富的學生,他們其實會發現,第一步的巡線其實可以從起點一步到B點的,因為對於直角彎,單光電巡線完全可以在外側直接通過,不需要分解成兩段直線。只要把雙光電放在黑線左側,用右光電來巡線就行了。如果是這樣的話,我們的任務分解又要做修改了,我要去給老婆做飯了,沒時間了,這里就偷懶一下啦,還是按前面的步驟來吧。
下一篇就是要開始寫程序啦,下周見。
老規矩,可子鎮樓。
⑸ 巡線機器人程序
MPLAB.IDE這一軟體不太了復解
我就簡制單的和你講下尋線的演算法,你自己編寫吧
1. 一光感走黑線: 其實走的是黑線的一條邊,利用判斷和循環語句,當讀到黑的時候 向右轉,讀到白的時候向左轉,這樣,就貼著黑線,"之"字形的走下去了.
2. 兩光感走黑線: 比較普遍的走法是,將兩光感夾著黑線,光感都讀到白的話,直行,如果,某個讀到黑的了,那就向相應的方向轉向.
3. 多光感走黑線: 因為考慮到現在的搜救比賽中,有比較"惡劣"的黑線的貼法(例如銳角),如果要程序穩定的話,採用多光感,其實多光感的基本原來還是中間的那兩個夾黑線,但是,當碰到特殊的路徑的時候,邊上的光感得到信號以後,做相應的子程序.
每種走法,都去試試吧,各有優劣,只有自己寫過以後,才會有比較深刻的體會