采用Arduino為核心控制的智能小車(chē)避障系統(tǒng)
2算法分析
本文引用地址:http://m.butianyuan.cn/article/276267.htm針對(duì)單傳感器避障系統(tǒng)中存在的缺點(diǎn),本文提出了多傳感器協(xié)調(diào)合作方案,通過(guò)超聲波傳感器和紅外傳感器的配合,擴(kuò)大了探測(cè)范圍以及靈敏性,從而避免了誤撞和緊貼障礙物的危險(xiǎn),提高了避障機(jī)率,實(shí)現(xiàn)了全方位避障。
2.1流程設(shè)計(jì)
全方位避障小車(chē)在行進(jìn)過(guò)程中,各傳感器不斷檢測(cè)小車(chē)周?chē)欠裼姓系K物。當(dāng)有傳感器檢測(cè)到障礙物時(shí),通過(guò)判斷檢測(cè)到障礙物的傳感器的數(shù)量,來(lái)實(shí)現(xiàn)小車(chē)全方位自動(dòng)避障:?jiǎn)蝹鞲衅鳈z測(cè)到障礙物時(shí),小車(chē)遠(yuǎn)離檢測(cè)到障礙物方向;兩個(gè)傳感器檢測(cè)到障礙物時(shí),小車(chē)向未檢測(cè)到障礙物方向轉(zhuǎn)向;所有傳感器都檢測(cè)到障礙物時(shí),小車(chē)急速左轉(zhuǎn)避開(kāi)障礙物。當(dāng)小車(chē)避開(kāi)障礙物后,小車(chē)?yán)^續(xù)行進(jìn)。流程圖如圖4所示。
圖4程序流程圖
2.2避障代碼
根據(jù)以上避障原理,編寫(xiě)相應(yīng)的程序,以實(shí)現(xiàn)小車(chē)的全面避障,程序主要分電機(jī)、超聲波和紅外測(cè)距三部分。電機(jī)部分由analogWrite()、digitalWrite()分別控制車(chē)速和小車(chē)前進(jìn)、后退或轉(zhuǎn)向;超聲波測(cè)距部分由Trig.Pin控制超聲波輸入,由EchoPin控制超聲波輸出,控制模塊通過(guò)對(duì)接收到的脈沖波時(shí)間進(jìn)行處理,轉(zhuǎn)化為距離參數(shù),從而獲得距離Middle_distance;紅外測(cè)距部分由控制模塊通過(guò)紅外傳感器獲得一個(gè)模擬量analo.gRead(),通過(guò)輸出的模擬量可以推算出電壓值volts,而輸出電壓和探測(cè)距離關(guān)系為distance:65*pow(volts,-1.10),從而可獲得小車(chē)與障礙物的距離。
3實(shí)驗(yàn)研究
智能車(chē)在進(jìn)行了器件選型和確定控制算法后,為了驗(yàn)證系統(tǒng)的性能,進(jìn)行了實(shí)驗(yàn)驗(yàn)證。
實(shí)驗(yàn)中選用一塊放著多種障礙物的平地,障礙物分兩大種:一種是規(guī)則的障礙物,如正方體、圓柱等。另一種為不規(guī)則障礙物。實(shí)驗(yàn)時(shí),智能避障小車(chē)在行進(jìn)過(guò)程中不斷探測(cè)前方周?chē)欠裼姓系K物,當(dāng)存在障礙物時(shí)候,判斷出相應(yīng)障礙物位置,并進(jìn)行相應(yīng)動(dòng)作。
為了有效驗(yàn)證智能小車(chē)避障成功率,通過(guò)改變障礙物形狀來(lái)對(duì)小車(chē)進(jìn)行性能測(cè)試,結(jié)果如圖5所示。其中測(cè)試小車(chē)100次,并統(tǒng)計(jì)出單面避障和全方位避障成功通過(guò)不同障礙環(huán)境的次數(shù),障礙環(huán)境由總數(shù)為100的規(guī)則障礙物和不規(guī)則障礙物組成。由圖5可見(jiàn),普通的單面避障方法有著較低的成功通過(guò)率,而本文所提出的全方位避障方法則受此影響不大,有著較高的通過(guò)率。
圖5單面避障與全方位避障成功率對(duì)比
4結(jié)論
設(shè)計(jì)的基于Arduino的智能小車(chē)避障系統(tǒng),采用了單紅外和雙超聲波避障方式,使小車(chē)在行車(chē)過(guò)程中對(duì)障礙物的探測(cè)更加精確。實(shí)驗(yàn)結(jié)果表明,設(shè)計(jì)的全方位避障系統(tǒng)較大地提高了避障的效率和成功率,可有效地實(shí)現(xiàn)全方位避障。
電流變送器相關(guān)文章:電流變送器原理 激光器相關(guān)文章:激光器原理
評(píng)論