摘 要:文章研究基于Arduino技術(shù)的智能小車,分析了智能小車結(jié)構(gòu),從小車的硬件設(shè)計(jì)到軟件設(shè)計(jì)進(jìn)行詳細(xì)闡述,尤其對小車硬件部分進(jìn)行設(shè)計(jì),包括電源模塊、單片機(jī)系統(tǒng)、循跡模塊、鴕機(jī)轉(zhuǎn)向模塊、后輪電機(jī)驅(qū)動模塊等。為眾多技術(shù)愛好者設(shè)計(jì)個(gè)性化的智能小車提供一個(gè)解決方案。
關(guān)鍵詞:Arduino;智能小車;設(shè)計(jì)
1 Arduino及智能小車的基本概念
Arduino源于意大利的一位教授的研究,它一個(gè)開源的單板機(jī)控制器,向所有人開放其源代碼、軟硬件平臺和開發(fā)環(huán)境,目前有大量的學(xué)者使用這一平臺進(jìn)行研究。
我們所說的智能小車應(yīng)該區(qū)別于普通的遙控汽車和玩具,它應(yīng)該具有環(huán)境的感知能力,通過各種傳感器采集環(huán)境信息并做出相應(yīng)反應(yīng),能按要求自動行駛,不需要人工操縱和干預(yù)。
2 智能小車車體結(jié)構(gòu)
設(shè)計(jì)智能小車首先應(yīng)該確定小車的基本結(jié)構(gòu),其主要包括以下幾個(gè)部分:(1)循跡模塊:指小車?yán)眉t外發(fā)射裝置發(fā)射紅外線后,照射物體表面返回量的多少來測定小車的具體的位置,以進(jìn)行循跡。(2)舵機(jī)轉(zhuǎn)向模塊:指通過設(shè)置一定占空比的方波來控制舵機(jī)轉(zhuǎn)過的角度,舵機(jī)由于力矩大,響應(yīng)速度快等優(yōu)點(diǎn),經(jīng)常使用在自動小車轉(zhuǎn)向裝置中。(3)電機(jī)驅(qū)動模塊:指通過專用電路對電機(jī)進(jìn)行驅(qū)動,單片機(jī)給出控制信號控制電機(jī)正常運(yùn)轉(zhuǎn)。(4)單片機(jī)模塊:這是小車的控制中心,為設(shè)計(jì)方便,文章使用51單片機(jī)。(5)電源模塊:因設(shè)計(jì)需要,我們給小車單獨(dú)供電,設(shè)置獨(dú)立的電源模塊,使之穩(wěn)定運(yùn)行。
3 硬件設(shè)計(jì)
3.1 電源模塊設(shè)計(jì)
小車電源是整個(gè)系統(tǒng)穩(wěn)定工作的前提,所以因此電源設(shè)計(jì)合理, 小車電池電壓要求在6-8V左右,在考慮電池?fù)p耗和穩(wěn)壓的情況下,我們采用低壓差的穩(wěn)壓芯片。同時(shí)為防止大電流器件對單片機(jī)形成的干擾,大電流器件和單片機(jī)要分開供電。
3.2 單片機(jī)系統(tǒng)設(shè)計(jì)
單片機(jī)是小車的控制中心,設(shè)計(jì)一個(gè)小巧單片機(jī)系統(tǒng)是智能小車平穩(wěn)運(yùn)行重要保證,在設(shè)計(jì)單片機(jī)系統(tǒng)時(shí)需要合理考慮調(diào)試擴(kuò)展的需要,原則上要把所有IO口引出,合理集成LED顯示、蜂鳴器等外圍模塊。同時(shí)考慮單片機(jī)的電源設(shè)計(jì),以確保系統(tǒng)穩(wěn)定供電。
3.3 循跡模塊設(shè)計(jì)
在本設(shè)計(jì)中我們采用紅外一體式發(fā)射接收器。小車循跡就是利用紅外線照射在不同顏色的物體表面具有不同的反射強(qiáng)度的特點(diǎn),在小車行駛過程中首先由發(fā)射器不斷地外界發(fā)射紅外光,當(dāng)紅外光在遇到黑色表面時(shí),由于黑色吸光,紅外線遇到黑線將被大部分吸收,那么反射到接收管的紅外光就較少,在電路上表現(xiàn)為電阻較大,當(dāng)紅外光照射到白色表面時(shí)會發(fā)生漫反射,反射到接受管的紅外線就比較多,在電路上表現(xiàn)為電阻較小,這樣通過外接的電路檢測電路電阻的大小就可以判斷小車的行動狀態(tài)。單片機(jī)就可以依據(jù)反射回來的紅外光多少確定黑線位置和小車行走路線,使智能小車在不需要人工干預(yù)的情況下自動行駛。
3.4 舵舵機(jī)轉(zhuǎn)向模塊設(shè)計(jì)
舵機(jī)也叫做伺服電機(jī),它可以通過程序連續(xù)控制其轉(zhuǎn)角,故經(jīng)常應(yīng)用在智能小車中以實(shí)現(xiàn)轉(zhuǎn)向要求。舵機(jī)是智能小車轉(zhuǎn)向的控制機(jī)構(gòu),舵機(jī)一般由舵盤、減速齒輪組、直流電機(jī)、位置反饋電位計(jì)、控制電路等幾部分組成。 它的工作原理是,由控制電路板通過控制信號控制電機(jī)轉(zhuǎn)動,電機(jī)帶動齒輪組,齒輪組減速,舵機(jī)轉(zhuǎn)動。同時(shí)齒輪組將帶動位置反饋電位計(jì),電位計(jì)的變化將即時(shí)輸出一個(gè)電壓信號,控制電路板根據(jù)獲得的信號就可以決定電機(jī)的轉(zhuǎn)動方向和速度,從而控制目標(biāo)。另外舵機(jī)所需電壓較大,單片機(jī)不能直接供應(yīng),因此要求舵機(jī)要和單片機(jī)分開供電,一般額定工作電壓為6V。
3.5 后輪電機(jī)驅(qū)動模塊設(shè)計(jì)
一般情況,單片機(jī)的驅(qū)動能力無法驅(qū)動電機(jī),故必須外加驅(qū)動電路。最為常見的比如H 橋電路,這種電路由4個(gè)三極管和一個(gè)電機(jī)所組成。其基本原理是通過導(dǎo)通驅(qū)動電路對角線上的一對三極管,形成基本回路使電機(jī)轉(zhuǎn)動。電流在流經(jīng)電機(jī)時(shí),由于導(dǎo)通方式不同,可能會從左右不同的2個(gè)方向流過電機(jī),以控制電機(jī)的向左轉(zhuǎn)還是向右轉(zhuǎn)。雖然這種電路可以方便的實(shí)現(xiàn)電機(jī)正反轉(zhuǎn),但在實(shí)際使用中,因電路設(shè)計(jì)不當(dāng),較容易燒壞三極管,故在設(shè)計(jì)電路時(shí),我們考慮用硬件電路控制三極管的開關(guān),以避免導(dǎo)通錯(cuò)誤。在原有基電路的基礎(chǔ)上設(shè)計(jì)增加 4個(gè)與門和2個(gè)非門。每一側(cè)與門控制2個(gè)三極管,非門用于區(qū)別同一側(cè)的三極管。4個(gè)與門由同一個(gè)“使能”導(dǎo)通信號相連, 2個(gè)非門通過提供一種方向輸人。由于非門的使用,則無論電流從哪個(gè)方向流入,在驅(qū)動電路的同側(cè)都只會有一個(gè)三極管導(dǎo)通,以確保電流無論從哪個(gè)方向?qū)攵紝⒘鹘?jīng)電機(jī),而不會燒壞三極管。通過改進(jìn),電機(jī)的運(yùn)轉(zhuǎn)只需要用到一個(gè)使能信號和兩個(gè)方向信號。其導(dǎo)通原理如圖2所示,在使能信號為1的情況下,令DIR-R信號為1,DIR-L信號為0,則左側(cè)三極管Q1和右側(cè)三極管Q4將導(dǎo)通,電流將從Q1流經(jīng)電機(jī),再從Q4流出;反之DIR-R信號變?yōu)?,DIR-L信號變?yōu)?,那么左側(cè)三極管Q2和右側(cè)三極管Q3導(dǎo)通,電流則從右至左流過電機(jī)。
4 程序設(shè)計(jì)
4.1 PWM程序設(shè)計(jì)
脈沖寬度調(diào)制簡稱PWM,它是通過對一系列脈沖的寬度進(jìn)行調(diào)制,對模擬電路進(jìn)行控制的一種技術(shù),它在通信、測量等領(lǐng)域被廣泛應(yīng)用。PWM使用高分辨率的計(jì)數(shù)器對具體的模擬信號進(jìn)行編碼,本質(zhì)上,它依舊是數(shù)字形式,理論上,只有有足夠的帶寬,任何模擬信號都能用PWM來編碼。文章設(shè)計(jì)的51單片機(jī)的PWM的程序。
4.2 程序總體設(shè)計(jì)
程序設(shè)計(jì)是智能小車能否完成的重要環(huán)節(jié),在設(shè)計(jì)時(shí)需要考慮全面仔細(xì),在巡線模塊、舵機(jī)的轉(zhuǎn)動角度、后輪的驅(qū)動等幾個(gè)部分進(jìn)行設(shè)計(jì)和測試。智能小車程序設(shè)計(jì)一般使用查詢方式,程序啟動,先初始化后,首先查詢光電管的狀態(tài),小車進(jìn)入循跡模式后,將不停地開始掃描I/O口是否有變化,如果有變化,則程序開始進(jìn)行判斷,選擇舵機(jī)的控制信號,根據(jù)控制信號電機(jī)轉(zhuǎn)動控制舵機(jī)轉(zhuǎn)動角度,同時(shí)后輪驅(qū)動模塊控制后輪的轉(zhuǎn)速,實(shí)現(xiàn)小車智能控制行駛的目的。
5 結(jié)束語
目前,研究Arduino人越來越多,眾多技術(shù)愛好者都希望能親手設(shè)計(jì)一個(gè)智能小車,智能小車的設(shè)計(jì)應(yīng)該包括硬件設(shè)計(jì)和軟件設(shè)計(jì)兩部分,在硬件設(shè)計(jì)部分包括電源模塊、單片機(jī)系統(tǒng)、循跡模塊、鴕機(jī)轉(zhuǎn)向模塊、后輪電機(jī)驅(qū)動模塊等內(nèi)容,在軟件設(shè)計(jì)部分包括PWM設(shè)計(jì)、舵機(jī)控制、后輪電機(jī)控制、主程序設(shè)計(jì)等幾部分。
參考文獻(xiàn)
[1]胡長暉,葉夢,等.基于電磁技術(shù)的智能車路徑識別的研究[J]. 湖北師范學(xué)院學(xué)報(bào)(自然科學(xué)版),2011(2).
[2]紀(jì)欣然.基于Arduino開發(fā)環(huán)境的智能尋光小車設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2012(15).
[3]卞云松.基于Arduino單片機(jī)的避障小車機(jī)器人[J].自動化技術(shù)與應(yīng)用,2014(1).
作者簡介:陳開軍,浙江紹興,副教授,研究方向是物聯(lián)網(wǎng)技術(shù)、軟件工程。endprint
摘 要:文章研究基于Arduino技術(shù)的智能小車,分析了智能小車結(jié)構(gòu),從小車的硬件設(shè)計(jì)到軟件設(shè)計(jì)進(jìn)行詳細(xì)闡述,尤其對小車硬件部分進(jìn)行設(shè)計(jì),包括電源模塊、單片機(jī)系統(tǒng)、循跡模塊、鴕機(jī)轉(zhuǎn)向模塊、后輪電機(jī)驅(qū)動模塊等。為眾多技術(shù)愛好者設(shè)計(jì)個(gè)性化的智能小車提供一個(gè)解決方案。
關(guān)鍵詞:Arduino;智能小車;設(shè)計(jì)
1 Arduino及智能小車的基本概念
Arduino源于意大利的一位教授的研究,它一個(gè)開源的單板機(jī)控制器,向所有人開放其源代碼、軟硬件平臺和開發(fā)環(huán)境,目前有大量的學(xué)者使用這一平臺進(jìn)行研究。
我們所說的智能小車應(yīng)該區(qū)別于普通的遙控汽車和玩具,它應(yīng)該具有環(huán)境的感知能力,通過各種傳感器采集環(huán)境信息并做出相應(yīng)反應(yīng),能按要求自動行駛,不需要人工操縱和干預(yù)。
2 智能小車車體結(jié)構(gòu)
設(shè)計(jì)智能小車首先應(yīng)該確定小車的基本結(jié)構(gòu),其主要包括以下幾個(gè)部分:(1)循跡模塊:指小車?yán)眉t外發(fā)射裝置發(fā)射紅外線后,照射物體表面返回量的多少來測定小車的具體的位置,以進(jìn)行循跡。(2)舵機(jī)轉(zhuǎn)向模塊:指通過設(shè)置一定占空比的方波來控制舵機(jī)轉(zhuǎn)過的角度,舵機(jī)由于力矩大,響應(yīng)速度快等優(yōu)點(diǎn),經(jīng)常使用在自動小車轉(zhuǎn)向裝置中。(3)電機(jī)驅(qū)動模塊:指通過專用電路對電機(jī)進(jìn)行驅(qū)動,單片機(jī)給出控制信號控制電機(jī)正常運(yùn)轉(zhuǎn)。(4)單片機(jī)模塊:這是小車的控制中心,為設(shè)計(jì)方便,文章使用51單片機(jī)。(5)電源模塊:因設(shè)計(jì)需要,我們給小車單獨(dú)供電,設(shè)置獨(dú)立的電源模塊,使之穩(wěn)定運(yùn)行。
3 硬件設(shè)計(jì)
3.1 電源模塊設(shè)計(jì)
小車電源是整個(gè)系統(tǒng)穩(wěn)定工作的前提,所以因此電源設(shè)計(jì)合理, 小車電池電壓要求在6-8V左右,在考慮電池?fù)p耗和穩(wěn)壓的情況下,我們采用低壓差的穩(wěn)壓芯片。同時(shí)為防止大電流器件對單片機(jī)形成的干擾,大電流器件和單片機(jī)要分開供電。
3.2 單片機(jī)系統(tǒng)設(shè)計(jì)
單片機(jī)是小車的控制中心,設(shè)計(jì)一個(gè)小巧單片機(jī)系統(tǒng)是智能小車平穩(wěn)運(yùn)行重要保證,在設(shè)計(jì)單片機(jī)系統(tǒng)時(shí)需要合理考慮調(diào)試擴(kuò)展的需要,原則上要把所有IO口引出,合理集成LED顯示、蜂鳴器等外圍模塊。同時(shí)考慮單片機(jī)的電源設(shè)計(jì),以確保系統(tǒng)穩(wěn)定供電。
3.3 循跡模塊設(shè)計(jì)
在本設(shè)計(jì)中我們采用紅外一體式發(fā)射接收器。小車循跡就是利用紅外線照射在不同顏色的物體表面具有不同的反射強(qiáng)度的特點(diǎn),在小車行駛過程中首先由發(fā)射器不斷地外界發(fā)射紅外光,當(dāng)紅外光在遇到黑色表面時(shí),由于黑色吸光,紅外線遇到黑線將被大部分吸收,那么反射到接收管的紅外光就較少,在電路上表現(xiàn)為電阻較大,當(dāng)紅外光照射到白色表面時(shí)會發(fā)生漫反射,反射到接受管的紅外線就比較多,在電路上表現(xiàn)為電阻較小,這樣通過外接的電路檢測電路電阻的大小就可以判斷小車的行動狀態(tài)。單片機(jī)就可以依據(jù)反射回來的紅外光多少確定黑線位置和小車行走路線,使智能小車在不需要人工干預(yù)的情況下自動行駛。
3.4 舵舵機(jī)轉(zhuǎn)向模塊設(shè)計(jì)
舵機(jī)也叫做伺服電機(jī),它可以通過程序連續(xù)控制其轉(zhuǎn)角,故經(jīng)常應(yīng)用在智能小車中以實(shí)現(xiàn)轉(zhuǎn)向要求。舵機(jī)是智能小車轉(zhuǎn)向的控制機(jī)構(gòu),舵機(jī)一般由舵盤、減速齒輪組、直流電機(jī)、位置反饋電位計(jì)、控制電路等幾部分組成。 它的工作原理是,由控制電路板通過控制信號控制電機(jī)轉(zhuǎn)動,電機(jī)帶動齒輪組,齒輪組減速,舵機(jī)轉(zhuǎn)動。同時(shí)齒輪組將帶動位置反饋電位計(jì),電位計(jì)的變化將即時(shí)輸出一個(gè)電壓信號,控制電路板根據(jù)獲得的信號就可以決定電機(jī)的轉(zhuǎn)動方向和速度,從而控制目標(biāo)。另外舵機(jī)所需電壓較大,單片機(jī)不能直接供應(yīng),因此要求舵機(jī)要和單片機(jī)分開供電,一般額定工作電壓為6V。
3.5 后輪電機(jī)驅(qū)動模塊設(shè)計(jì)
一般情況,單片機(jī)的驅(qū)動能力無法驅(qū)動電機(jī),故必須外加驅(qū)動電路。最為常見的比如H 橋電路,這種電路由4個(gè)三極管和一個(gè)電機(jī)所組成。其基本原理是通過導(dǎo)通驅(qū)動電路對角線上的一對三極管,形成基本回路使電機(jī)轉(zhuǎn)動。電流在流經(jīng)電機(jī)時(shí),由于導(dǎo)通方式不同,可能會從左右不同的2個(gè)方向流過電機(jī),以控制電機(jī)的向左轉(zhuǎn)還是向右轉(zhuǎn)。雖然這種電路可以方便的實(shí)現(xiàn)電機(jī)正反轉(zhuǎn),但在實(shí)際使用中,因電路設(shè)計(jì)不當(dāng),較容易燒壞三極管,故在設(shè)計(jì)電路時(shí),我們考慮用硬件電路控制三極管的開關(guān),以避免導(dǎo)通錯(cuò)誤。在原有基電路的基礎(chǔ)上設(shè)計(jì)增加 4個(gè)與門和2個(gè)非門。每一側(cè)與門控制2個(gè)三極管,非門用于區(qū)別同一側(cè)的三極管。4個(gè)與門由同一個(gè)“使能”導(dǎo)通信號相連, 2個(gè)非門通過提供一種方向輸人。由于非門的使用,則無論電流從哪個(gè)方向流入,在驅(qū)動電路的同側(cè)都只會有一個(gè)三極管導(dǎo)通,以確保電流無論從哪個(gè)方向?qū)攵紝⒘鹘?jīng)電機(jī),而不會燒壞三極管。通過改進(jìn),電機(jī)的運(yùn)轉(zhuǎn)只需要用到一個(gè)使能信號和兩個(gè)方向信號。其導(dǎo)通原理如圖2所示,在使能信號為1的情況下,令DIR-R信號為1,DIR-L信號為0,則左側(cè)三極管Q1和右側(cè)三極管Q4將導(dǎo)通,電流將從Q1流經(jīng)電機(jī),再從Q4流出;反之DIR-R信號變?yōu)?,DIR-L信號變?yōu)?,那么左側(cè)三極管Q2和右側(cè)三極管Q3導(dǎo)通,電流則從右至左流過電機(jī)。
4 程序設(shè)計(jì)
4.1 PWM程序設(shè)計(jì)
脈沖寬度調(diào)制簡稱PWM,它是通過對一系列脈沖的寬度進(jìn)行調(diào)制,對模擬電路進(jìn)行控制的一種技術(shù),它在通信、測量等領(lǐng)域被廣泛應(yīng)用。PWM使用高分辨率的計(jì)數(shù)器對具體的模擬信號進(jìn)行編碼,本質(zhì)上,它依舊是數(shù)字形式,理論上,只有有足夠的帶寬,任何模擬信號都能用PWM來編碼。文章設(shè)計(jì)的51單片機(jī)的PWM的程序。
4.2 程序總體設(shè)計(jì)
程序設(shè)計(jì)是智能小車能否完成的重要環(huán)節(jié),在設(shè)計(jì)時(shí)需要考慮全面仔細(xì),在巡線模塊、舵機(jī)的轉(zhuǎn)動角度、后輪的驅(qū)動等幾個(gè)部分進(jìn)行設(shè)計(jì)和測試。智能小車程序設(shè)計(jì)一般使用查詢方式,程序啟動,先初始化后,首先查詢光電管的狀態(tài),小車進(jìn)入循跡模式后,將不停地開始掃描I/O口是否有變化,如果有變化,則程序開始進(jìn)行判斷,選擇舵機(jī)的控制信號,根據(jù)控制信號電機(jī)轉(zhuǎn)動控制舵機(jī)轉(zhuǎn)動角度,同時(shí)后輪驅(qū)動模塊控制后輪的轉(zhuǎn)速,實(shí)現(xiàn)小車智能控制行駛的目的。
5 結(jié)束語
目前,研究Arduino人越來越多,眾多技術(shù)愛好者都希望能親手設(shè)計(jì)一個(gè)智能小車,智能小車的設(shè)計(jì)應(yīng)該包括硬件設(shè)計(jì)和軟件設(shè)計(jì)兩部分,在硬件設(shè)計(jì)部分包括電源模塊、單片機(jī)系統(tǒng)、循跡模塊、鴕機(jī)轉(zhuǎn)向模塊、后輪電機(jī)驅(qū)動模塊等內(nèi)容,在軟件設(shè)計(jì)部分包括PWM設(shè)計(jì)、舵機(jī)控制、后輪電機(jī)控制、主程序設(shè)計(jì)等幾部分。
參考文獻(xiàn)
[1]胡長暉,葉夢,等.基于電磁技術(shù)的智能車路徑識別的研究[J]. 湖北師范學(xué)院學(xué)報(bào)(自然科學(xué)版),2011(2).
[2]紀(jì)欣然.基于Arduino開發(fā)環(huán)境的智能尋光小車設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2012(15).
[3]卞云松.基于Arduino單片機(jī)的避障小車機(jī)器人[J].自動化技術(shù)與應(yīng)用,2014(1).
作者簡介:陳開軍,浙江紹興,副教授,研究方向是物聯(lián)網(wǎng)技術(shù)、軟件工程。endprint
摘 要:文章研究基于Arduino技術(shù)的智能小車,分析了智能小車結(jié)構(gòu),從小車的硬件設(shè)計(jì)到軟件設(shè)計(jì)進(jìn)行詳細(xì)闡述,尤其對小車硬件部分進(jìn)行設(shè)計(jì),包括電源模塊、單片機(jī)系統(tǒng)、循跡模塊、鴕機(jī)轉(zhuǎn)向模塊、后輪電機(jī)驅(qū)動模塊等。為眾多技術(shù)愛好者設(shè)計(jì)個(gè)性化的智能小車提供一個(gè)解決方案。
關(guān)鍵詞:Arduino;智能小車;設(shè)計(jì)
1 Arduino及智能小車的基本概念
Arduino源于意大利的一位教授的研究,它一個(gè)開源的單板機(jī)控制器,向所有人開放其源代碼、軟硬件平臺和開發(fā)環(huán)境,目前有大量的學(xué)者使用這一平臺進(jìn)行研究。
我們所說的智能小車應(yīng)該區(qū)別于普通的遙控汽車和玩具,它應(yīng)該具有環(huán)境的感知能力,通過各種傳感器采集環(huán)境信息并做出相應(yīng)反應(yīng),能按要求自動行駛,不需要人工操縱和干預(yù)。
2 智能小車車體結(jié)構(gòu)
設(shè)計(jì)智能小車首先應(yīng)該確定小車的基本結(jié)構(gòu),其主要包括以下幾個(gè)部分:(1)循跡模塊:指小車?yán)眉t外發(fā)射裝置發(fā)射紅外線后,照射物體表面返回量的多少來測定小車的具體的位置,以進(jìn)行循跡。(2)舵機(jī)轉(zhuǎn)向模塊:指通過設(shè)置一定占空比的方波來控制舵機(jī)轉(zhuǎn)過的角度,舵機(jī)由于力矩大,響應(yīng)速度快等優(yōu)點(diǎn),經(jīng)常使用在自動小車轉(zhuǎn)向裝置中。(3)電機(jī)驅(qū)動模塊:指通過專用電路對電機(jī)進(jìn)行驅(qū)動,單片機(jī)給出控制信號控制電機(jī)正常運(yùn)轉(zhuǎn)。(4)單片機(jī)模塊:這是小車的控制中心,為設(shè)計(jì)方便,文章使用51單片機(jī)。(5)電源模塊:因設(shè)計(jì)需要,我們給小車單獨(dú)供電,設(shè)置獨(dú)立的電源模塊,使之穩(wěn)定運(yùn)行。
3 硬件設(shè)計(jì)
3.1 電源模塊設(shè)計(jì)
小車電源是整個(gè)系統(tǒng)穩(wěn)定工作的前提,所以因此電源設(shè)計(jì)合理, 小車電池電壓要求在6-8V左右,在考慮電池?fù)p耗和穩(wěn)壓的情況下,我們采用低壓差的穩(wěn)壓芯片。同時(shí)為防止大電流器件對單片機(jī)形成的干擾,大電流器件和單片機(jī)要分開供電。
3.2 單片機(jī)系統(tǒng)設(shè)計(jì)
單片機(jī)是小車的控制中心,設(shè)計(jì)一個(gè)小巧單片機(jī)系統(tǒng)是智能小車平穩(wěn)運(yùn)行重要保證,在設(shè)計(jì)單片機(jī)系統(tǒng)時(shí)需要合理考慮調(diào)試擴(kuò)展的需要,原則上要把所有IO口引出,合理集成LED顯示、蜂鳴器等外圍模塊。同時(shí)考慮單片機(jī)的電源設(shè)計(jì),以確保系統(tǒng)穩(wěn)定供電。
3.3 循跡模塊設(shè)計(jì)
在本設(shè)計(jì)中我們采用紅外一體式發(fā)射接收器。小車循跡就是利用紅外線照射在不同顏色的物體表面具有不同的反射強(qiáng)度的特點(diǎn),在小車行駛過程中首先由發(fā)射器不斷地外界發(fā)射紅外光,當(dāng)紅外光在遇到黑色表面時(shí),由于黑色吸光,紅外線遇到黑線將被大部分吸收,那么反射到接收管的紅外光就較少,在電路上表現(xiàn)為電阻較大,當(dāng)紅外光照射到白色表面時(shí)會發(fā)生漫反射,反射到接受管的紅外線就比較多,在電路上表現(xiàn)為電阻較小,這樣通過外接的電路檢測電路電阻的大小就可以判斷小車的行動狀態(tài)。單片機(jī)就可以依據(jù)反射回來的紅外光多少確定黑線位置和小車行走路線,使智能小車在不需要人工干預(yù)的情況下自動行駛。
3.4 舵舵機(jī)轉(zhuǎn)向模塊設(shè)計(jì)
舵機(jī)也叫做伺服電機(jī),它可以通過程序連續(xù)控制其轉(zhuǎn)角,故經(jīng)常應(yīng)用在智能小車中以實(shí)現(xiàn)轉(zhuǎn)向要求。舵機(jī)是智能小車轉(zhuǎn)向的控制機(jī)構(gòu),舵機(jī)一般由舵盤、減速齒輪組、直流電機(jī)、位置反饋電位計(jì)、控制電路等幾部分組成。 它的工作原理是,由控制電路板通過控制信號控制電機(jī)轉(zhuǎn)動,電機(jī)帶動齒輪組,齒輪組減速,舵機(jī)轉(zhuǎn)動。同時(shí)齒輪組將帶動位置反饋電位計(jì),電位計(jì)的變化將即時(shí)輸出一個(gè)電壓信號,控制電路板根據(jù)獲得的信號就可以決定電機(jī)的轉(zhuǎn)動方向和速度,從而控制目標(biāo)。另外舵機(jī)所需電壓較大,單片機(jī)不能直接供應(yīng),因此要求舵機(jī)要和單片機(jī)分開供電,一般額定工作電壓為6V。
3.5 后輪電機(jī)驅(qū)動模塊設(shè)計(jì)
一般情況,單片機(jī)的驅(qū)動能力無法驅(qū)動電機(jī),故必須外加驅(qū)動電路。最為常見的比如H 橋電路,這種電路由4個(gè)三極管和一個(gè)電機(jī)所組成。其基本原理是通過導(dǎo)通驅(qū)動電路對角線上的一對三極管,形成基本回路使電機(jī)轉(zhuǎn)動。電流在流經(jīng)電機(jī)時(shí),由于導(dǎo)通方式不同,可能會從左右不同的2個(gè)方向流過電機(jī),以控制電機(jī)的向左轉(zhuǎn)還是向右轉(zhuǎn)。雖然這種電路可以方便的實(shí)現(xiàn)電機(jī)正反轉(zhuǎn),但在實(shí)際使用中,因電路設(shè)計(jì)不當(dāng),較容易燒壞三極管,故在設(shè)計(jì)電路時(shí),我們考慮用硬件電路控制三極管的開關(guān),以避免導(dǎo)通錯(cuò)誤。在原有基電路的基礎(chǔ)上設(shè)計(jì)增加 4個(gè)與門和2個(gè)非門。每一側(cè)與門控制2個(gè)三極管,非門用于區(qū)別同一側(cè)的三極管。4個(gè)與門由同一個(gè)“使能”導(dǎo)通信號相連, 2個(gè)非門通過提供一種方向輸人。由于非門的使用,則無論電流從哪個(gè)方向流入,在驅(qū)動電路的同側(cè)都只會有一個(gè)三極管導(dǎo)通,以確保電流無論從哪個(gè)方向?qū)攵紝⒘鹘?jīng)電機(jī),而不會燒壞三極管。通過改進(jìn),電機(jī)的運(yùn)轉(zhuǎn)只需要用到一個(gè)使能信號和兩個(gè)方向信號。其導(dǎo)通原理如圖2所示,在使能信號為1的情況下,令DIR-R信號為1,DIR-L信號為0,則左側(cè)三極管Q1和右側(cè)三極管Q4將導(dǎo)通,電流將從Q1流經(jīng)電機(jī),再從Q4流出;反之DIR-R信號變?yōu)?,DIR-L信號變?yōu)?,那么左側(cè)三極管Q2和右側(cè)三極管Q3導(dǎo)通,電流則從右至左流過電機(jī)。
4 程序設(shè)計(jì)
4.1 PWM程序設(shè)計(jì)
脈沖寬度調(diào)制簡稱PWM,它是通過對一系列脈沖的寬度進(jìn)行調(diào)制,對模擬電路進(jìn)行控制的一種技術(shù),它在通信、測量等領(lǐng)域被廣泛應(yīng)用。PWM使用高分辨率的計(jì)數(shù)器對具體的模擬信號進(jìn)行編碼,本質(zhì)上,它依舊是數(shù)字形式,理論上,只有有足夠的帶寬,任何模擬信號都能用PWM來編碼。文章設(shè)計(jì)的51單片機(jī)的PWM的程序。
4.2 程序總體設(shè)計(jì)
程序設(shè)計(jì)是智能小車能否完成的重要環(huán)節(jié),在設(shè)計(jì)時(shí)需要考慮全面仔細(xì),在巡線模塊、舵機(jī)的轉(zhuǎn)動角度、后輪的驅(qū)動等幾個(gè)部分進(jìn)行設(shè)計(jì)和測試。智能小車程序設(shè)計(jì)一般使用查詢方式,程序啟動,先初始化后,首先查詢光電管的狀態(tài),小車進(jìn)入循跡模式后,將不停地開始掃描I/O口是否有變化,如果有變化,則程序開始進(jìn)行判斷,選擇舵機(jī)的控制信號,根據(jù)控制信號電機(jī)轉(zhuǎn)動控制舵機(jī)轉(zhuǎn)動角度,同時(shí)后輪驅(qū)動模塊控制后輪的轉(zhuǎn)速,實(shí)現(xiàn)小車智能控制行駛的目的。
5 結(jié)束語
目前,研究Arduino人越來越多,眾多技術(shù)愛好者都希望能親手設(shè)計(jì)一個(gè)智能小車,智能小車的設(shè)計(jì)應(yīng)該包括硬件設(shè)計(jì)和軟件設(shè)計(jì)兩部分,在硬件設(shè)計(jì)部分包括電源模塊、單片機(jī)系統(tǒng)、循跡模塊、鴕機(jī)轉(zhuǎn)向模塊、后輪電機(jī)驅(qū)動模塊等內(nèi)容,在軟件設(shè)計(jì)部分包括PWM設(shè)計(jì)、舵機(jī)控制、后輪電機(jī)控制、主程序設(shè)計(jì)等幾部分。
參考文獻(xiàn)
[1]胡長暉,葉夢,等.基于電磁技術(shù)的智能車路徑識別的研究[J]. 湖北師范學(xué)院學(xué)報(bào)(自然科學(xué)版),2011(2).
[2]紀(jì)欣然.基于Arduino開發(fā)環(huán)境的智能尋光小車設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2012(15).
[3]卞云松.基于Arduino單片機(jī)的避障小車機(jī)器人[J].自動化技術(shù)與應(yīng)用,2014(1).
作者簡介:陳開軍,浙江紹興,副教授,研究方向是物聯(lián)網(wǎng)技術(shù)、軟件工程。endprint