色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于紅外對管陣列的循線技術原理及應用研究

電子設計 ? 來源:電子工程網 ? 作者:電子工程網 ? 2021-04-13 13:47 ? 次閱讀

硬件基本構架]

對于機器人的循線,為了獲得場地上白線(黑線)的信息,硬件結構一般有如下幾種種類。

1、紅外對管陣列。采取這種方式的機器人比較多,尤其在各種機器人競賽中,幾乎是標準配置。但是這種技術有一個致命的弱點,就是對于場地光線的干擾特別敏感,而且也很難把紅色和白線區別開來,所以使用受到一定的限制。一般解決這類問題的方法是在紅外光上加載一個調制波,通過檢測這個調制波來消除場地光線的干擾,至于如何解決紅色和白色的區別問題,那就幾乎是五花八門了。

2、光纖傳感器陣列。采用這種傳感器陣列的原因是,光纖非常細,在單位面積內可以安裝更多的傳感器,從而獲得更精確地場地信息。當然,錢也也花得更多。

3、線性CCD。這種硬件方法幾乎是一種對場地信息分辨率的BT追求,如果說紅外對管陣列還是離散信息的話,那么線性CCD就是線性的連續數據。當然驅動它也不是一件容易的事情,對于單片機也有更高的速度要求。

4、視覺。廢話少說——否則明天我都別想吃飯。

[基本原理]

所謂循線,就是通過一定的傳感器探測地面色調迥異的兩種色彩從而獲得引導線位置,修正機器人運動路徑的一種技術。——說的太拗口了。不說太多理論的東西,我們就從基于紅外對管陣列的循線技術來說起。

假設,我們使用的是黑底白線的場地。紅外對管陣列由3個紅外對管1字擺開組成。白線的寬度略小于或等于紅外對管陣列的寬度

1、數據的采集。

對于機器人來說,通過傳感器感知周圍事物的信息,利用這些信息并不作太多智能上的計算而直接通過一定的轉換,指導機器人的運動——這種形式在人工智能學上叫做機器人的“反應范式”。所以,我們要想讓我們的機器人能夠尋著我們給定的軌跡線運動,第一步就必須讓他感知到軌跡線的存在。一般的做法就是通過AD采樣,獲得紅外對管(傳感器)反饋回來的電壓信息。然而,這樣獲得的電壓值信息是無法直接指導運動的,必須把他們轉化為二值的(也就是二進制信息,1表示線存在,0表示線不存在)信息,然后通過處理每一個管子反饋回來的二值信息獲得白線的位置信息。

>>技術點AAD信號的閥值化。(你可以參考其它的算法,獲得比較詳盡的技術,我這里只是舉例一二)

所謂閥值化,就是通過一定的范圍把握,從而把線性的數據轉化為離散數據的一種變換。簡單的說,就是通過分段函數的方法,將數據分類。在我們這個應用中,就是想方設法使AD采集回來的電壓值變化為一個恰恰能夠準確表示白線位置信息的二進制信息,1代表白線存在,0代表白線不存在。由于白色和黑色在電壓差異上非常之巨大,所以可以簡單的通過一個標志線來區分它們,當電壓值高于這個標志線了,就把他標志為1,否則就標志為0,算法描述為:

o4YBAGB1MmSAd6xAAAAKj1D3Zss632.png

這樣做非常簡單,適合于比較標準的場地,然而對于那些模糊了的場地或者是非標準場地,雖然人的肉眼能夠看出來,但是對于機器人來說,可能看到的就是花白的一片或者是黑色的夜幕。當標志線值過高時,機器人能看到的只是那些特別明顯的白線,其他則是黑色的夜幕,很容易丟失軌跡線;當標志線值過低時,機器人眼中就是白茫茫的一片毛刺。總而言之,對場地的適應性非常差。解決方法是,通過設定兩個標志線來標定軌跡線信息,當AD值高于某一值時,標志1;當AD值低于另外某一值時,則標定0。算法描述為:

o4YBAGB1MlyAVQzRAAATlqmo7qE311.png

>>技術點B動態預值。(你可以參考其它的算法,獲得比較詳盡的技術,我這里只是舉例一二)

當然,這種算法在簡單的機器人循線中不是很常用。比較常見,適應性強的方法是,首先從AD值中找到一個中間值作為MarkLine,(或者可以從AD值中找那些比較接近最大值和最小值之差的0.618倍的數值),然后再使用第一種方法標記,這樣的算法叫做動態預值。如果把這種算法應用于第二種當然也不多啦。

2、數據的簡單加工——第一個循線程序。

到目前為止,我們已經把AD的值的數組轉變為了一個表示白線位置的二進制位的數組——我們不妨直接把他用一個字節表示哈。那么,這個字節的狀態就表示了當前白線的位置信息。再假設,我們已經寫好了幾個函數用來分別控制小車的左右運動。那么我們就可以通過以下的簡單方式來實現循線了。

//用字節的高三位表示三個管子檢測到的白線信息。

switch(LineInforByte

{

case0b11100000://全部在白線上

Motor_Left_GoFront(FullSpeed);

Motor_Right_GoFront(FullSpeed);

break;

case0b01100000://明顯車子向左偏了哈

Motor_Left_GoFront(FullSpeed);

Motor_Right_GoFront(NormalSpeed);

break;

case0b00100000:

Motor_Left_GoFront(FullSpeed);

Motor_Right_GoFront(LowSpeed);

break;

……

//其他情況仿照上面自己寫了哈。

default:

Motor_Left_GoFront(StopNow);

Motor_Right_GoFront(StopNow);

break

}

呵呵,這樣就完成了一個循線小車的程序了哈。簡單吧。

順便說明一下下,Motor_Left_GoFront()函數是一個控制電機PWM輸出的函數。

FullSpeedNormalSpeedLowSpeedStopNowStopFree是一些控制PWM的宏定義,你可以修改這些宏定義的值來實現以上的功能。我想,你看了這個程序應該已經對循線的基本原理了然于胸了吧。哈哈哈哈哈哈哈哈。

3、數據的高級加工——復雜地面情況的模糊識別算法。

以上的算法的確可以應付規范場地下的情況了,但是由于其類似查表式的數據處理方式,一旦出現真值表中沒有的情況——哪怕是很明顯的直線存在——機器人都沒有辦法處理了。典型的就是在地上有大塊的白色斑點,導致機器人對白線視而不見。

解決以上問題的方法還要從人眼識別白線的原理上說起。在破壞嚴重的場地上,人類的眼睛仍然可以識別出原先的白線,這是為什么呢?通過重心。人類的眼睛通過捕捉白線的重心確立白線的大體軌跡,從而辨認出白線的位置。從概率的角度上說,在破壞嚴重的場地上,出現在白線兩邊的淺色干擾的概率是一樣的,即使不同,由于白線本身的存在,其重心至少是不會偏離白線很遠的,所以,只要簡單的獲得地面淺色標志的重心,就可以大體確立白線的所在。我們可以利用物理學上質心的算法獲得這一信息。忘了說一點,要想機器人增強對環境的適應力,就需要增加傳感器的數目。我們不妨用8個紅外管作為傳感器。這樣通過處理后獲得的場地信息就整整1個字節了。假設1個光電管的1擁有1單位的重量,八個光電管的坐標分別為-7-5-3-11357,其間距都是2個單位,通過置信公式很容易計算出質心的坐標,通過這個坐標和0的絕對值,就可以知道當前機器人偏離白線的多少,而這個偏離值則可以通過簡單的比例直接指導運動函數。典型實例如下:

/********************************************************

*函數說明:電機動作調速函數*

*說明:該函數放在定時器或者主循環里面用于產生軟PWM*

********************************************************/

voidSpeedPWM(charPWMLine)

{

charPWMLine_L=PWMLine;

charPWMLine_R=PWMLine;

staticcharPWMCount_L=0;

staticcharPWMCount_R=0;

charTemp=0;

if(FollowLineEnable==True)

{

Temp=(char)fabs((float)CG_X);

if(AdcValueFlag==0)

{

Temp=0;

}

else

{

if(CG_X<0)

{

if((Temp<<4)<=PWMLine_R)

{

PWMLine_R-=((Temp<<5)+Temp<<2);

}

else

{

PWMLine_R=0;

}

}

else

{

if((Temp<<4)<=PWMLine_L)

{

PWMLine_L-=(Temp<<5);

}

else

{

PWMLine_L=0;

}

}

}

}

PWMCount_L++;

PWMCount_R++;

if(PWMCount_L>Fastest)

{

PWMCount_L=Stop;

}

if(PWMCount_R>Fastest)

{

PWMCount_R=Stop;

}

if(PWMCount_L<PWMLine_L)

{

switch(GoDirection)

{

caseFront:

Motor_Left_GoFront;

break;

caseBack:

Motor_Left_GoBack;

break;

caseLeft:

Motor_Left_GoFront;

break;

caseRight:

Motor_Left_GoBack;

break;

caseStop:

Motor_Left_Stop_Free;

break;

}

}

else

{

Motor_Left_Stop_Free;

}

if(PWMCount_R<PWMLine_R)

{

switch(GoDirection)

{

caseFront:

Motor_Right_GoFront;

break;

caseBack:

Motor_Right_GoBack;

break;

caseLeft:

Motor_Right_GoBack;

break;

caseRight:

Motor_Right_GoFront;

break;

caseStop:

Motor_Right_Stop_Free;

break;

}

}

else

{

Motor_Right_Stop_Free;

}

}

/********************************************************

*函數說明:獲取偏離軌跡線的數值*

*輸入:表明尋線狀態的字節*

*[說明]*

*通過類質心算法獲取當前機器人偏離軌跡線的量*

*-表示偏左+表示偏右*

********************************************************/

signedcharGetCG_X(unsignedcharAdcValues)

{

signedchara=0;

signedcharTemp=0;

signedcharTotals=0;

for(a=0;a<8;a++)

{

if((AdcValues<<a)>>7)

{

Temp+=((-7)+(a<<1));

Totals++;

}

}

if(Totals==0)

{

return0;

}

return(Temp/Totals);

}

函數調用GetCG_X函數,用來獲取CG_X,CG_X直接在PWM輸出函數里面指導機器人的運動。

以上方法的好處是,提供了一個比例調節循線動作的可能。支持多傳感器的情況,尤其適合線性CCD類的線性數據的處理。為機器人提供了一個相對完整的視覺,不可能出現無法識別的情況,而且,這種情況可以使機器人在不加修改程序的情況下直接在在白線循線和黑線循線狀態下切換。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 傳感器
    +關注

    關注

    2550

    文章

    51041

    瀏覽量

    753098
  • 機器人
    +關注

    關注

    211

    文章

    28389

    瀏覽量

    206925
收藏 人收藏

    評論

    相關推薦

    第三代紅外技術(IR-III)并不是陣列

    。帕特羅(PATRO)第三代紅外攝像機技術陣列式區別: 亮度:第三代陣列式將發光二極按照陣列
    發表于 02-19 09:35

    ZigBee技術在礦燈監控中的應用研究

    ZigBee技術在礦燈監控中的應用研究
    發表于 03-15 13:27

    紅外傳感器在汽車改造技術中的應用研究

      摘要:利用反射式近紅外傳感器及語音錄放組件,研究了汽車倒車防撞語音提示器 當汽車倒車時,只要距車身后尾一定的距離內有人或物體存在,就會有一部分紅外光信號經人或物體反射回來,被與發射
    發表于 11-13 11:02

    碳納米陣列天線的輻射性能

    1、引言自1991年日本Iijima教授發現碳納米以來,納米技術吸引了大量科學家的興趣和研究,是目前科學界的研究熱點。基于碳納米獨特的電
    發表于 05-28 07:58

    多路復用技術在水聲探測系統中的應用介紹

    光纖(光柵)水聽器已經成為目前水聲探測靈敏度最高的器件。它具有較小的體積并且適于成陣,是目前水聲探測系統的熱門研究對象。基于多路復用技術的分布式陣列則是光纖(光柵)水聽器應用研究的發展
    發表于 04-19 06:28

    如何去實現一種基于單片機智能循線避障智能小車系統設計

    智能循線避障小車設計與制作【摘要】:提出了一種智能循線避障小車的設計方法,利用紅外技術檢測障礙物和采集地面信息,采用AT89S52單片機進行適時控制,實現智能
    發表于 12-13 07:09

    Holon技術在敏捷制造系統中的應用研究

    Holon技術在敏捷制造系統中的應用研究 Application of Holon Technology in Agile Manufacturing System
    發表于 03-16 10:52 ?12次下載

    碳納米應用研究

    隨著對碳納米研究的不斷深入,對碳納米應用研究越來越受到人們的重視。通過分析碳納米的物理特性,對碳納米
    發表于 07-13 10:28 ?13次下載

    紅外光譜儀的陣列檢測技術研究

    本章敘述了近紅外光譜技術、近紅外光譜儀器的發展現狀,闡述了陣列檢測技術及其特點。最后介紹了論文的研究
    發表于 11-09 21:50 ?72次下載

    硅光電二極應用研究

    電子專業單片機開發中的學習教程資料——硅光電二極應用研究
    發表于 08-08 14:45 ?0次下載

    ZigBee和GPRS技術在水文監測系統中的應用研究

    ZigBee和GPRS技術在水文監測系統中的應用研究
    發表于 01-08 15:31 ?10次下載

    超寬帶無線通信技術及其應用研究

    超寬帶無線通信技術及其應用研究,下來看看
    發表于 01-07 21:24 ?9次下載

    基于UWB無線通信技術在礦井中的應用研究

    基于UWB無線通信技術在礦井中的應用研究
    發表于 11-18 09:41 ?11次下載

    如何使用光電進行智能車模自動循線控制系統的設計

    紅外光電對管用于智能車模自動循線控制,不僅抗光線干擾能力強,響應時間短,成本低,而且通過對光電對布置方案的優化,能實現滿意的循線控制。結合我國首屆飛思卡爾杯全國智能汽車大賽的車模設
    發表于 07-03 17:35 ?2次下載
    如何使用光電<b class='flag-5'>管</b>進行智能車模自動<b class='flag-5'>循線</b>控制系統的設計

    QPSO算法在天線陣列波形優化中的應用研究

    電子發燒友網站提供《QPSO算法在天線陣列波形優化中的應用研究.pdf》資料免費下載
    發表于 11-08 15:49 ?0次下載
    QPSO算法在天線<b class='flag-5'>陣列</b>波形優化中的<b class='flag-5'>應用研究</b>
    主站蜘蛛池模板: np高h肉文| 亚洲va精品中文字幕| 女人色极品影院| 欧美freesex黑人又粗又| 欧美18精品久久久无码午夜福利| 久青草国产在线视频| 泷泽萝拉首部av| 嫩草成人影院| 欧美一区二区影院| 歪歪爽蜜臀AV久久精品人人槡| 熟女久久久久久久久久久| 亚洲 无码 在线 专区| 亚洲欧美精品一中文字幕| 午夜小视频免费观看| 欧美.亚洲.日韩.天堂| 美女被爆羞羞天美传媒| 两性午夜色视频免费网站| 国产亚洲精品免费视频| 国产成人精品免费青青草原app| 国产国拍精品AV在线观看| 91久久精品国产亚洲| 不卡无线在一二三区| 嫩草影院地址一二三| 99热这里精品| 欧美xxxxx18| 超碰在线公开视频| 文中字幕一区二区三区视频播放| 国产97精品久久久天天A片| 忘忧草研究所 麻豆| 中字幕久久久人妻熟女天美传媒| 97在线视频免费| 91黄色大片| RUN AWAY无删减全集动漫| 拔擦拔擦8X永久华人免费播放器| 欲香欲色天天影视大全| 2019午夜75福利不卡片在线| 国产产一区二区三区久久毛片国语| 国产又色又爽又刺激在线播放| 红尘影院在线观看| 欧美日韩亚洲一区二区三区在线观看| 午夜看片a福利在线观看|