無線收發(fā)的聲音導(dǎo)引系統(tǒng)
來源:單片機(jī)與嵌入式系統(tǒng)應(yīng)用
李小松,孫航
(太原科技大學(xué),,太原030024)
摘要: 設(shè)計(jì)以STC89C58單片機(jī)為核心的最小系統(tǒng),。采用L297與L298控制,、驅(qū)動(dòng)步進(jìn)電機(jī);音頻放大器采用CX20106芯片,,信號(hào)頻率選擇,、放大性能好;同時(shí)具有433 MHz無線接收發(fā)模塊等,。音頻接收器接收小車發(fā)出的15 kHz音頻信號(hào),,通過采集、放大,、濾波等環(huán)節(jié)傳送至接收端單片機(jī),;利用時(shí)間差作為變量,將對應(yīng)的信息無線發(fā)送回小車處理器,,控制小車移動(dòng)到達(dá)預(yù)定位置,。
Abstract:
Key words :
引言
聲音引導(dǎo)在工業(yè)、民用等領(lǐng)域有著廣闊的應(yīng)用空間,。本文基于主從兩塊單片機(jī)設(shè)計(jì)了聲音引導(dǎo)電動(dòng)小車運(yùn)動(dòng)系統(tǒng),。該系統(tǒng)由可移動(dòng)聲源(智能小車)和聲音接收控制電路等組成。其主要功能是由聲音接收控制電路接收并處理移動(dòng)聲源發(fā)出的聲音信號(hào),,通過無線的方式向移動(dòng)聲源控制電路發(fā)送方位,、速度等信息,使移動(dòng)聲源達(dá)到預(yù)期的目標(biāo),。系統(tǒng)的移動(dòng)聲源采用了步進(jìn)電機(jī)驅(qū)動(dòng)的小車,,角度、位移控制較為精確,。
1 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件總體框圖如圖1所示,。主控、從控單片機(jī)為宏晶科技的STC89C58,。
圖1 系統(tǒng)硬件總體框圖
1.1 電機(jī)驅(qū)動(dòng)模塊
電機(jī)驅(qū)動(dòng)模塊電路如圖2所示,。驅(qū)動(dòng)模塊采用L298驅(qū)動(dòng)芯片和L297電機(jī)控制芯片。L298驅(qū)動(dòng)芯片是性能優(yōu)越的小型直流電機(jī)驅(qū)動(dòng)芯片,,可用來驅(qū)動(dòng)兩個(gè)直流電機(jī)或者是一個(gè)步進(jìn)電機(jī),;在4~46 V的電壓下,可以提供2 A的驅(qū)動(dòng)電流,。L298還有過熱自動(dòng)關(guān)斷功能,,并有反饋電流檢測功能,符合電機(jī)驅(qū)動(dòng)的需要,。L297芯片為電機(jī)驅(qū)動(dòng)的前級(jí)電路,,主要用來產(chǎn)生格雷碼,避免了用單片機(jī)引腳直接控制所造成的資源浪費(fèi),。
1.1 電機(jī)驅(qū)動(dòng)模塊
電機(jī)驅(qū)動(dòng)模塊電路如圖2所示,。驅(qū)動(dòng)模塊采用L298驅(qū)動(dòng)芯片和L297電機(jī)控制芯片。L298驅(qū)動(dòng)芯片是性能優(yōu)越的小型直流電機(jī)驅(qū)動(dòng)芯片,,可用來驅(qū)動(dòng)兩個(gè)直流電機(jī)或者是一個(gè)步進(jìn)電機(jī),;在4~46 V的電壓下,可以提供2 A的驅(qū)動(dòng)電流,。L298還有過熱自動(dòng)關(guān)斷功能,,并有反饋電流檢測功能,符合電機(jī)驅(qū)動(dòng)的需要,。L297芯片為電機(jī)驅(qū)動(dòng)的前級(jí)電路,,主要用來產(chǎn)生格雷碼,避免了用單片機(jī)引腳直接控制所造成的資源浪費(fèi),。

圖2 電機(jī)驅(qū)動(dòng)模塊電路
本系統(tǒng)采用的是步進(jìn)電機(jī),。步進(jìn)電機(jī)是將電脈沖信號(hào)轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件,。在非超載的情況下,電機(jī)的轉(zhuǎn)速,、停止的位置只取決于脈沖信號(hào)的頻率和脈沖數(shù),,而不受負(fù)載變化的影響,即給電機(jī)加一個(gè)脈沖信號(hào),,電機(jī)則轉(zhuǎn)過一個(gè)步進(jìn)角,。這一線性關(guān)系的存在,加上步進(jìn)電機(jī)只有周期性的誤差而無累積誤差等特點(diǎn),,在速度、位置等控制領(lǐng)域用步進(jìn)電機(jī)來控制變得非常簡單,。采用步進(jìn)電機(jī)作為電動(dòng)車的電動(dòng)機(jī),,可以通過脈沖控制實(shí)現(xiàn)速度與精度兼得。
1.2 聲音發(fā)生裝置
以揚(yáng)聲器作為車載聲源加之多諧振蕩電路,可以向聲音接收器發(fā)送一定頻率的聲音脈沖,。多諧振蕩電路的應(yīng)用可節(jié)省寶貴的單片機(jī)資源,。
555定時(shí)器是一種模擬電路和數(shù)字電路相結(jié)合的中規(guī)模集成器件。它性能優(yōu)良,,適用范圍很廣,,外部接少量的阻容元件就可以很方便地組成多諧振蕩器,產(chǎn)生穩(wěn)定的方波波形,。由555定時(shí)器組成的多諧振蕩器如圖3所示,。其中,R1,、R2和電容C為外接元件,。
本系統(tǒng)采用的是步進(jìn)電機(jī),。步進(jìn)電機(jī)是將電脈沖信號(hào)轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件,。在非超載的情況下,電機(jī)的轉(zhuǎn)速,、停止的位置只取決于脈沖信號(hào)的頻率和脈沖數(shù),,而不受負(fù)載變化的影響,即給電機(jī)加一個(gè)脈沖信號(hào),,電機(jī)則轉(zhuǎn)過一個(gè)步進(jìn)角,。這一線性關(guān)系的存在,加上步進(jìn)電機(jī)只有周期性的誤差而無累積誤差等特點(diǎn),,在速度、位置等控制領(lǐng)域用步進(jìn)電機(jī)來控制變得非常簡單,。采用步進(jìn)電機(jī)作為電動(dòng)車的電動(dòng)機(jī),,可以通過脈沖控制實(shí)現(xiàn)速度與精度兼得。
1.2 聲音發(fā)生裝置
以揚(yáng)聲器作為車載聲源加之多諧振蕩電路,可以向聲音接收器發(fā)送一定頻率的聲音脈沖,。多諧振蕩電路的應(yīng)用可節(jié)省寶貴的單片機(jī)資源,。
555定時(shí)器是一種模擬電路和數(shù)字電路相結(jié)合的中規(guī)模集成器件。它性能優(yōu)良,,適用范圍很廣,,外部接少量的阻容元件就可以很方便地組成多諧振蕩器,產(chǎn)生穩(wěn)定的方波波形,。由555定時(shí)器組成的多諧振蕩器如圖3所示,。其中,R1,、R2和電容C為外接元件,。

圖3 555多諧振蕩器
多諧振蕩波形如圖4所示。
多諧振蕩波形如圖4所示。

圖4多諧振蕩波形
由圖4可知,,矩形波的振蕩周期T=T1+T2,。T1為電容充電時(shí)間,T2為電容放電時(shí)間,。
由圖4可知,,矩形波的振蕩周期T=T1+T2,。T1為電容充電時(shí)間,T2為電容放電時(shí)間,。

因此,,改變R1、R2和電容C的值,,便可改變矩形波的周期和頻率,。
這里,C=0.15 μF,,R1=125 Ω,,R2=256 Ω。代入上述公式,,則有:T1=40.005 μs,,T2=26.88
μs,,T=T1+T2=66.885 μs,f=1/T=14.95 kHz,。
1.3 聲音接收及處理模塊
采用具有帶通功能的集成芯片CX20106進(jìn)行信號(hào)處理,。CX20106的總放大增益約為80 dB,輸出的控制脈沖序列信號(hào)幅度在3.5~5 V范圍內(nèi),??傇鲆婢哂锌烧{(diào)性,雖然增益取值過大時(shí)將造成頻率響應(yīng)變差,,但仍能滿足系統(tǒng)要求,。經(jīng)過實(shí)驗(yàn),CX20106作為聲音信號(hào)處理芯片的抗干擾能力極強(qiáng),,且電路最為簡潔,。其內(nèi)部結(jié)構(gòu)如圖5所示。
這里,C=0.15 μF,,R1=125 Ω,,R2=256 Ω。代入上述公式,,則有:T1=40.005 μs,,T2=26.88
μs,,T=T1+T2=66.885 μs,f=1/T=14.95 kHz,。
1.3 聲音接收及處理模塊
采用具有帶通功能的集成芯片CX20106進(jìn)行信號(hào)處理,。CX20106的總放大增益約為80 dB,輸出的控制脈沖序列信號(hào)幅度在3.5~5 V范圍內(nèi),??傇鲆婢哂锌烧{(diào)性,雖然增益取值過大時(shí)將造成頻率響應(yīng)變差,,但仍能滿足系統(tǒng)要求,。經(jīng)過實(shí)驗(yàn),CX20106作為聲音信號(hào)處理芯片的抗干擾能力極強(qiáng),,且電路最為簡潔,。其內(nèi)部結(jié)構(gòu)如圖5所示。

圖5 CX20106內(nèi)部結(jié)構(gòu)
前置電路將接收到的信號(hào)轉(zhuǎn)換成CX20106可以接收的標(biāo)準(zhǔn)數(shù)字信號(hào),,送到CX20106的1腳,。CX20106的總放大增益約為80 dB,其7腳輸出的控制脈沖序列信號(hào)幅度為3.5~5 V,??傇鲆娲笮∮?腳外接的R1、C1決定,,R1越小或C1越大,,增益越高。但取值過大時(shí)將造成頻率響應(yīng)變差,,C1為1.0 μF,。采用峰值檢波方式,檢波電容C2為3.3 μF,。R2為帶通濾波器中心頻率的外部電阻,。積分電容C3取330 pF。經(jīng)CX20106處理后的脈沖信號(hào)由7腳輸出,。
1.4 無線收發(fā)模塊
1.4.1 無線發(fā)射模塊
無線發(fā)射模塊電路如圖6所示,。編碼采用PT2262芯片,它將載波振蕩器,、編碼器和發(fā)射單元集于一身,,使發(fā)射電路變得非常簡潔。編碼輸入是4路獨(dú)立的二進(jìn)制信號(hào),,把誤差信號(hào)轉(zhuǎn)換為4位數(shù)字信號(hào)通過433 MHz發(fā)射模塊進(jìn)行發(fā)射,。
前置電路將接收到的信號(hào)轉(zhuǎn)換成CX20106可以接收的標(biāo)準(zhǔn)數(shù)字信號(hào),,送到CX20106的1腳,。CX20106的總放大增益約為80 dB,其7腳輸出的控制脈沖序列信號(hào)幅度為3.5~5 V,??傇鲆娲笮∮?腳外接的R1、C1決定,,R1越小或C1越大,,增益越高。但取值過大時(shí)將造成頻率響應(yīng)變差,,C1為1.0 μF,。采用峰值檢波方式,檢波電容C2為3.3 μF,。R2為帶通濾波器中心頻率的外部電阻,。積分電容C3取330 pF。經(jīng)CX20106處理后的脈沖信號(hào)由7腳輸出,。
1.4 無線收發(fā)模塊
1.4.1 無線發(fā)射模塊
無線發(fā)射模塊電路如圖6所示,。編碼采用PT2262芯片,它將載波振蕩器,、編碼器和發(fā)射單元集于一身,,使發(fā)射電路變得非常簡潔。編碼輸入是4路獨(dú)立的二進(jìn)制信號(hào),,把誤差信號(hào)轉(zhuǎn)換為4位數(shù)字信號(hào)通過433 MHz發(fā)射模塊進(jìn)行發(fā)射,。

圖6 無線發(fā)射模塊電路
1.4.2 無線接收模塊
無線接收模塊電路如圖7所示。解碼芯片采用PT2272M4芯片,對433 MHz接收模塊接收到的信號(hào)進(jìn)行解碼,。433 MHz接收模塊上集成有超外差接收裝置,,其具有較好的選擇性和頻率特性,且容易調(diào)整,。PT2272M4的數(shù)據(jù)輸出位因其后綴而異,,數(shù)據(jù)輸出具有暫存和鎖存兩種方式,方便用戶使用,。后綴為M為暫存型,,后綴為L為鎖存型,其數(shù)據(jù)輸出又分為0,、2,、4、6不同的輸出,。
1.4.2 無線接收模塊
無線接收模塊電路如圖7所示。解碼芯片采用PT2272M4芯片,對433 MHz接收模塊接收到的信號(hào)進(jìn)行解碼,。433 MHz接收模塊上集成有超外差接收裝置,,其具有較好的選擇性和頻率特性,且容易調(diào)整,。PT2272M4的數(shù)據(jù)輸出位因其后綴而異,,數(shù)據(jù)輸出具有暫存和鎖存兩種方式,方便用戶使用,。后綴為M為暫存型,,后綴為L為鎖存型,其數(shù)據(jù)輸出又分為0,、2,、4、6不同的輸出,。

圖7 無線接收模塊電路
2 軟件設(shè)計(jì)
聲源引導(dǎo)示意圖如圖8所示,。設(shè)S點(diǎn)為可移動(dòng)聲源,Ox代表AB直線的中垂線,,O′y代表AC直線的中垂線。如果AS距離大于BS距離,,則小車向9點(diǎn)鐘方向前進(jìn),;如果AS距離小于BS距離,則小車向3點(diǎn)鐘方向倒車,;如果AS等于BS,,則說明小車在AB的中垂線上。如果AS距離大于CS距離,,則小車向6點(diǎn)方向前進(jìn),;如果AS距離小于CS距離,則小車向12點(diǎn)鐘方向倒車,;如果AS等于CS,,則小車到達(dá)W點(diǎn)。
2 軟件設(shè)計(jì)
聲源引導(dǎo)示意圖如圖8所示,。設(shè)S點(diǎn)為可移動(dòng)聲源,Ox代表AB直線的中垂線,,O′y代表AC直線的中垂線。如果AS距離大于BS距離,,則小車向9點(diǎn)鐘方向前進(jìn),;如果AS距離小于BS距離,則小車向3點(diǎn)鐘方向倒車,;如果AS等于BS,,則說明小車在AB的中垂線上。如果AS距離大于CS距離,,則小車向6點(diǎn)方向前進(jìn),;如果AS距離小于CS距離,則小車向12點(diǎn)鐘方向倒車,;如果AS等于CS,,則小車到達(dá)W點(diǎn)。

圖8 聲源引導(dǎo)示意圖
本系統(tǒng)在聲音接收器端設(shè)置主單片機(jī),,承擔(dān)運(yùn)算工作并發(fā)射信號(hào),。在移動(dòng)聲源上設(shè)置一塊從單片機(jī),根據(jù)接收到的指令控制聲源運(yùn)動(dòng),。系統(tǒng)軟件流程如圖9所示,。
本系統(tǒng)在聲音接收器端設(shè)置主單片機(jī),,承擔(dān)運(yùn)算工作并發(fā)射信號(hào),。在移動(dòng)聲源上設(shè)置一塊從單片機(jī),根據(jù)接收到的指令控制聲源運(yùn)動(dòng),。系統(tǒng)軟件流程如圖9所示,。

圖9 系統(tǒng)軟件流程
3 系統(tǒng)測試
測試儀器使用秒表、米尺等,。通過改變小車的起始位置測量小車走完全程所需的時(shí)間,,從而計(jì)算出平均速度。設(shè)小車離W點(diǎn)水平線的垂直距離為H(單位為cm),。由于車身完全為手工制作,,重心位置存在誤差,,導(dǎo)致兩個(gè)輪子承受壓力不同、阻力不同,,對系統(tǒng)的精度有一定影響,。共進(jìn)行6次測試,在同一H值下,,分別測量平均速度v1和v2,。
3 系統(tǒng)測試
測試儀器使用秒表、米尺等,。通過改變小車的起始位置測量小車走完全程所需的時(shí)間,,從而計(jì)算出平均速度。設(shè)小車離W點(diǎn)水平線的垂直距離為H(單位為cm),。由于車身完全為手工制作,,重心位置存在誤差,,導(dǎo)致兩個(gè)輪子承受壓力不同、阻力不同,,對系統(tǒng)的精度有一定影響,。共進(jìn)行6次測試,在同一H值下,,分別測量平均速度v1和v2,。

測試數(shù)據(jù)如表1所列。
表1 聲音引導(dǎo)系統(tǒng)測試數(shù)據(jù)

結(jié)語
本系統(tǒng)以單片機(jī)STC89C58芯片為核心部件,,利用無線收發(fā)模塊,、音頻收發(fā)模塊,并配合一套獨(dú)特的軟件算法實(shí)現(xiàn)聲音的收發(fā),、無線傳輸控制,、小車的方向和運(yùn)動(dòng)控制,以及自動(dòng)到達(dá)指定位置并有明顯的光和聲指示,、時(shí)間顯示等功能,。在系統(tǒng)設(shè)計(jì)過程中,力求硬件線路簡單,,充分利用軟件編程方便,、靈活的特點(diǎn)來滿足系統(tǒng)的設(shè)計(jì)要求。
參考文獻(xiàn)
[1] 全國大學(xué)生電子設(shè)計(jì)競賽組委會(huì).全國大學(xué)生電子設(shè)計(jì)競賽獲獎(jiǎng)作品匯編[M].北京:北京理工大學(xué)出版社,,2006.
[2] 閻石.數(shù)字電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,,2006.
[3] 畢滿清,等.模擬電子技術(shù)[M].北京:電子工業(yè)出版社,,2008.
[4] 夏路易.單片機(jī)技術(shù)基礎(chǔ)教程與實(shí)踐[M].北京:電子工業(yè)出版社,,2007.
李小松(講師)、孫航(本科生),,研究方向?yàn)榭刂评碚撆c控制工程,。
本系統(tǒng)以單片機(jī)STC89C58芯片為核心部件,,利用無線收發(fā)模塊,、音頻收發(fā)模塊,并配合一套獨(dú)特的軟件算法實(shí)現(xiàn)聲音的收發(fā),、無線傳輸控制,、小車的方向和運(yùn)動(dòng)控制,以及自動(dòng)到達(dá)指定位置并有明顯的光和聲指示,、時(shí)間顯示等功能,。在系統(tǒng)設(shè)計(jì)過程中,力求硬件線路簡單,,充分利用軟件編程方便,、靈活的特點(diǎn)來滿足系統(tǒng)的設(shè)計(jì)要求。
參考文獻(xiàn)
[1] 全國大學(xué)生電子設(shè)計(jì)競賽組委會(huì).全國大學(xué)生電子設(shè)計(jì)競賽獲獎(jiǎng)作品匯編[M].北京:北京理工大學(xué)出版社,,2006.
[2] 閻石.數(shù)字電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,,2006.
[3] 畢滿清,等.模擬電子技術(shù)[M].北京:電子工業(yè)出版社,,2008.
[4] 夏路易.單片機(jī)技術(shù)基礎(chǔ)教程與實(shí)踐[M].北京:電子工業(yè)出版社,,2007.
李小松(講師)、孫航(本科生),,研究方向?yàn)榭刂评碚撆c控制工程,。
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。