陳天浩
摘 要:本文簡要介紹了基于智能輪式移動(dòng)機(jī)器人智能避障、循跡、遙控的設(shè)計(jì)與實(shí)現(xiàn)——一種基于Arduino新型集成開發(fā)環(huán)境的超聲波避障小車的工作原理。其中包括對(duì)小車的執(zhí)行組件、搭建結(jié)構(gòu)、傳感器、Arduino單片機(jī)軟件編程及試驗(yàn)結(jié)果的介紹。
關(guān)鍵詞:Arduino單片機(jī);超聲波傳感器;避障;遙控;循跡
中圖分類號(hào):TP212 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1671-2064(2018)03-0027-02
1 設(shè)計(jì)背景
隨著現(xiàn)代計(jì)算機(jī)技術(shù)的不斷發(fā)展和普及,機(jī)器人的發(fā)展已經(jīng)遍及近年來機(jī)器人的智能水平不斷提高,并且迅速地改變著人們的生活方式。小到智能玩具,大到機(jī)械、電子、冶金、交通、宇航、國防等各個(gè)領(lǐng)域。在本次的設(shè)計(jì)中,我將設(shè)計(jì)出一個(gè)能夠避障機(jī)器人,在具有這個(gè)基本功能的基礎(chǔ)上,就可以為他附加更多的功能,賦予它更多的實(shí)用價(jià)值。
本設(shè)計(jì)題目為《基于arduino的智能避障小車設(shè)計(jì)》是以Arduino單片機(jī)為控制核心,主要研究小車的避障功能。利用超聲波傳感器檢測(cè)道路上的障礙,然后把數(shù)據(jù)傳送給單片機(jī),當(dāng)超聲波檢測(cè)到距離小車前方有障礙物時(shí)單片機(jī)就發(fā)出指令讓小車左轉(zhuǎn)一定角度,然后停止運(yùn)行繼續(xù)探測(cè).如果前方?jīng)]有障礙物就直走,否則繼續(xù)左轉(zhuǎn)一定角度。如此通過超聲波不斷的循環(huán)檢測(cè)周邊環(huán)境的情況進(jìn)行自動(dòng)避障。該功能的小車能夠?qū)崿F(xiàn)在無人操作的情況下在比較寬闊平坦的環(huán)境中避開障礙物。當(dāng)機(jī)器人在行走過程中遇到前方障礙時(shí),能夠根據(jù)有效范圍內(nèi)的距離作出相應(yīng)處理,由單片機(jī)軟件發(fā)出轉(zhuǎn)彎、直行、后退指令,避免機(jī)器與障礙物相撞。
2 避障小車機(jī)器人的設(shè)計(jì)原理與方法
本設(shè)計(jì)中直流電機(jī)PWM控制系統(tǒng)的主要功能包括實(shí)現(xiàn)對(duì)直流電機(jī)的加速、減速,并且可以調(diào)整電機(jī)的轉(zhuǎn)速,能夠很方便的實(shí)現(xiàn)電機(jī)的智能控制。主體電路:即直流電機(jī)PWM控制驅(qū)動(dòng)模塊。這部分電路主要由Arduino Uno系統(tǒng)開發(fā)好的PWM控制函數(shù)配合定時(shí)器直接產(chǎn)生,配合對(duì)于的方向控制IO口可以直接控制直流電機(jī)的加速、減速以及電機(jī)的正轉(zhuǎn)和反轉(zhuǎn),并且可以調(diào)整電機(jī)的轉(zhuǎn)速,能夠很方便的實(shí)現(xiàn)電機(jī)的智能控制。其間是通過ArduinoUno單片機(jī)產(chǎn)生脈寬可調(diào)的脈沖信號(hào)并輸入到L298驅(qū)動(dòng)芯片來控制直流電機(jī)工作的。該直流電機(jī)PWM控制系統(tǒng)由以下電路模塊組成;設(shè)計(jì)控制部分:主要由Arduino Uno功能擴(kuò)展板組成。直流電機(jī)PWM控制實(shí)現(xiàn)部分主要由一些二極管、電機(jī)和L298直流電機(jī)驅(qū)動(dòng)模塊組成。智能小車采用后輪驅(qū)動(dòng),兩個(gè)前輪各用一個(gè)電機(jī),后輪是萬向輪,起到支撐和轉(zhuǎn)向的作用。
本小車的硬件部分分為幾個(gè)模塊:超聲波傳感器、Arduino單片機(jī)、電源、兩個(gè)直流電動(dòng)機(jī)、電機(jī)驅(qū)動(dòng)板、車身。電源連接在Arduino單片機(jī)上給整個(gè)小車供電。小車以Arduino單片機(jī)為核心,連接電機(jī)驅(qū)動(dòng)板控制兩個(gè)直流電動(dòng)機(jī)的運(yùn)轉(zhuǎn),從而實(shí)現(xiàn)小車的前進(jìn)。將超聲波傳感器安置在車身的最前端,用于探測(cè)前方是否有障礙物。當(dāng)超聲波傳感器遇到障礙物,將反饋提供到單片機(jī)里從而做出向左旋轉(zhuǎn)的反應(yīng),再次檢測(cè)前方是否有障礙物,若有障礙物則繼續(xù)旋轉(zhuǎn),沒有障礙物則電機(jī)驅(qū)動(dòng)器驅(qū)動(dòng)電機(jī)前進(jìn),從而實(shí)現(xiàn)整個(gè)小車的避障功能。
3 實(shí)驗(yàn)及結(jié)果分析
3.1 預(yù)期目標(biāo)
本次試驗(yàn)基本達(dá)到預(yù)期目標(biāo)。
(1)在車前方?jīng)]有障礙物時(shí),小車沿直線向前走。(2)在車前方有障礙物時(shí),小車能避開障礙物,避障方法如下:超聲波檢測(cè)到障礙物后,先向左邊旋轉(zhuǎn),檢測(cè)。如果旋轉(zhuǎn)后前面沒有檢測(cè)障礙物,則沿直線向前走;如果旋轉(zhuǎn)后檢測(cè)到前方仍有障礙物,則繼續(xù)旋轉(zhuǎn),如果前面沒有障礙物,則沿直線向前行走。
但是該超聲波避障小車還存在著許多的不足,比如說只能對(duì)正前方一定角度內(nèi)進(jìn)行探測(cè),使用的是一路超聲波而不是多路超聲波探測(cè),并且為了簡化,默認(rèn)的只是向同一個(gè)方向轉(zhuǎn)彎等,這些都是有待進(jìn)一步發(fā)展和提高的。
3.2 遇到的問題和解決方法
在此之前我并沒有制作過任何智能的機(jī)器人。初定避障小車這個(gè)題目時(shí),最初采用樂高機(jī)器人搭建了一個(gè)循跡避障的機(jī)器人,由于操作較為簡單,后來我決定嘗試采用Arduino芯片,利用超聲波傳感器搭建出一臺(tái)智能的避障小車。最初我對(duì)硬件的原理不夠明白,不知道采用哪些原件,課程設(shè)計(jì)指導(dǎo)書上介紹的也并不詳細(xì),因此我利用大量時(shí)間去圖書館查閱了許多資料,對(duì)其電機(jī)驅(qū)動(dòng)、Arduino控制板以及超聲波傳感器的引腳、電路設(shè)計(jì)等各方面都做了近一步的了解之后才開始進(jìn)行小車的搭建。
在選擇硬件設(shè)施上,我也花了很大功夫。在最初我設(shè)計(jì)了兩個(gè)驅(qū)動(dòng)方案的選擇。一個(gè)是采用ULN2003驅(qū)動(dòng),它是由7組達(dá)林頓晶體管陣列和相應(yīng)的電阻網(wǎng)絡(luò)以及鉗位二極管網(wǎng)絡(luò)構(gòu)成,具有同時(shí)驅(qū)動(dòng)7組負(fù)載的能力,一般用于高速大功率驅(qū)動(dòng)電路。另個(gè)一就是采用由雙極性管組成的H橋電路(L298N)。用單片機(jī)控制晶體管使之工作在占空比可調(diào)的開關(guān)狀態(tài),精確調(diào)整電機(jī)轉(zhuǎn)速。這種電路由于工作在管子的飽和截止模式下,則效率非常高;H橋電路保證了可以簡單地實(shí)現(xiàn)轉(zhuǎn)速和方向的控制,電子開關(guān)的速度很快,穩(wěn)定性也很高。而且它有更強(qiáng)的驅(qū)動(dòng)能力。此驅(qū)動(dòng)板體積小,重量輕,而且它有一個(gè)外加的續(xù)流二極管,可以防止電機(jī)線圈在斷電時(shí)的方向電勢(shì)損壞芯片,同時(shí)也也安裝有散熱片能使芯片溫度降低,盡量防止他自動(dòng)斷電,讓驅(qū)動(dòng)性能更加穩(wěn)定。板子設(shè)有兩個(gè)電流反饋檢測(cè)接口、內(nèi)邏輯取電選擇端、4個(gè)上拉電阻選擇端、2路直流電機(jī)接口、控制電機(jī)方向指向燈等等。這個(gè)板子不僅適用于智能程控小車、輪式機(jī)器人等,還可以配合各種控制器使用。因此經(jīng)過一番對(duì)比和考慮,最終我選擇了L298N電機(jī)驅(qū)動(dòng)板。之所以最終沒有選擇紅外線傳感,是因?yàn)榧t外線對(duì)使用環(huán)境有較高的要求,當(dāng)遇上淺色或是深色的家居物品它無法反射回來,會(huì)造成機(jī)器人無法正常避障。而這款HC-SR04則采用仿生超聲波技術(shù),類似鯨魚,蝙蝠采用聲波來偵測(cè)判斷障礙物以及及空間方位,該超聲波避障模塊包括超聲波發(fā)射器,接收器和控制電路,靈敏度較高,但技術(shù)成本也較高。
在搭建方面,我完成程序的編譯通電之后,小車發(fā)生了原地旋轉(zhuǎn)的現(xiàn)象,經(jīng)過觀察,我發(fā)現(xiàn)小車在感應(yīng)障礙物方面并沒有問題。問題出現(xiàn)在左側(cè)輪前轉(zhuǎn),而右側(cè)輪后轉(zhuǎn)。所以我將控制右側(cè)車輪的電機(jī)的接線進(jìn)行改接,這個(gè)問題便得以解決。
在軟硬件調(diào)試方面,也存在一些小問題。首先是避障小車的旋轉(zhuǎn)角度不夠,也許是因?yàn)榈孛婺Σ亮Φ年P(guān)系,小車的旋轉(zhuǎn)角度并達(dá)不到我所設(shè)定的左轉(zhuǎn)九十度。后來我又將程序進(jìn)行改進(jìn),設(shè)置的旋轉(zhuǎn)角度比九十度多一些,小車就可正常避障了。還有一個(gè)問題就是小車在遇到障礙物之后的反應(yīng)速度并不是很快,需要障礙物在前面平行持續(xù)1,2秒才可以做出轉(zhuǎn)向的判斷,這個(gè)延遲反應(yīng)也經(jīng)常造成小車和障礙物發(fā)生碰撞,這也是我遇到的最大問題,在這個(gè)問題上我做了很多程序上的調(diào)試,但終究達(dá)不到很理想的效果,在后續(xù)的試驗(yàn)中,我準(zhǔn)備嘗試換一個(gè)感測(cè)避障模塊進(jìn)行嘗試改進(jìn)。
4 結(jié)語
在未來的社會(huì)中智能也是大勢(shì)所趨,而智能車作為智能機(jī)器人中一類必不可少的組成部分。最近幾年發(fā)展更是迅速,各個(gè)國家更是投入大量資金。它廣泛涉及人工智能、計(jì)算機(jī)視覺、自動(dòng)控制、精密儀器、傳感和信息等一系列學(xué)科的創(chuàng)新研究,其研究成果可廣泛應(yīng)用于工業(yè)、農(nóng)業(yè)、醫(yī)藥、軍事、航空、信息技術(shù)等實(shí)際領(lǐng)域,智能機(jī)器人的發(fā)展水平可反映出一個(gè)國家的高科技水平和綜合國力,是國家綜合國力強(qiáng)大的標(biāo)志,也是人類文明進(jìn)步的標(biāo)志。在我未來的工作與生活中,會(huì)越來越多的需要機(jī)器人代替人力來工作和完成一些難度較大或較為費(fèi)力的任務(wù),對(duì)這些實(shí)用的機(jī)器人的需求也會(huì)越來越大。因此,機(jī)器人研發(fā)的前景是不可估量的。
參考文獻(xiàn)
[1]袁新娜,與紅英,編著.超聲波傳感器在智能小車避障系統(tǒng)中的應(yīng)用[A].中北大學(xué),(2009)08-0085-04.
[2]邵貝貝.單片機(jī)嵌入式應(yīng)用的在線開發(fā)方法[M].北京.清華大學(xué)出社,2004.
[3]王曉明.電動(dòng)機(jī)的單片機(jī)控制[M].北京:北京航空航天大學(xué)出版社,2002.
[4]安鵬,馬偉.S12單片機(jī)模塊應(yīng)用及程序調(diào)試[J].電子產(chǎn)品世界,2006(211):162-163.
[5]童詩白,華成英.模擬電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,2000.