前言
汽車倒車防碰撞系統是一種輔助汽車泊車裝置。低配的由超聲波收發電路、回波放大電路、語音提示電路、數碼顯示、報警及溫度補償電路組成,高配的有時會帶有后視視頻系統。[1]
一、工作原理
如下圖在汽車的尾部安裝4個超聲波探頭,倒車時,采用往返時間測量法測量汽車尾部到障礙物的距離,通過數碼管實時顯示距離,當車尾部的超聲波探頭與障礙物的距離小於設定值的安全值時,通過蜂鳴器報警提示駕駛員。
這里測距一般采用4路超聲波傳感器分時隙工作,采用往返時間測量法測距,測距原理是當汽車進行倒車時,防碰撞系統開始工作,單片機產生一串40KHz的矩形波,經4選1模擬開關按時序分別向4路超聲波探頭傳給發射電路,通過超聲波換能器發射超聲波,同時開啟計數器計數,超聲波傳至障礙物后反射,反射回來部分超聲波被超聲波換能器接收並轉換成電信號,再經過接收電路濾波、放大、整形后,觸發單片機外部中斷,產生中斷,計數器停止計數,測出超聲波發射脈沖串到接收回波信號的時間差 t,並根據超聲波在空氣中傳播的速度v,得出被測距離:
S=vt/2
由於聲速會受到環境溫度的影響,溫度與聲速的關系為:
v≈v0+0.607T
式中:v0=332m/s為0℃時的聲波速度;T為當前的環境溫度。因此只需要通過溫度傳感器測出T即可得到S的修正值。通過比較選取的4路信號中的最短距離進行顯示,當顯示值小於設定警報值時,單片機控制蜂鳴器發出報警聲音,隨着距離越來越近,報警聲音頻率越大,同時顯示部分兩側的條形數碼管顯示條數量增加以表示危險級別。最大測量距離與超聲波傳感器性能、驅動電路、回波放大電路等因素相關。
二、主要模塊介紹
系統主要模塊包括:顯示模塊、語音報警和四探頭測距模塊(MCU負責整體邏輯協調、溫度測量可采用數字式也可采用熱敏電阻、蜂鳴器報警可以直接由MCU控制)。此外顯示模塊設計沒有難點,如果為了追求絢麗可以考慮采用TFT屏;語音模塊這里引入一個API8108A語音芯片介紹、測距先簡單介紹幾種方案(后面會細講)。
三、具體模塊詳解
API8108A、API8108A(一次性編程語音系列)[2]
>_<: (介紹)10、20秒多功能可編程語音電路是采用大規模CMOS芯片技術制造的最新ASIC專用語音電路。它們內部包含語音處理器、EPROM存儲器、A/D、D/A數模轉換器、邏輯接口控制器、音頻放大器、時鍾振盪器等大量部件,能完成從語音數據寫入固化到語音高保真重放的全過程工作,外圍秩序幾只元件即可。過去這種電路常采用8031、2764、DA0832等IC組合完成,體積大、耗電大、成本高,現在API8108A、API8208A比常規語音處理電路設計要結構簡單、體積微小的多,而成本只是過去的五分之一。
API8108A、API8208A可根據需要分為一至八段錄放,其語音可以最大不重復時間分別為10秒和20秒,重復部分可不計算時間。其語音錄入需要專門的計算機編程器上進行,一旦錄入即成為固定數據,不能再更改或抹掉,永久保存。固化了語音之后的API8108A、API8208A在放音使用上和普通的音樂集成片一樣簡單,只是發出的不是單調的音符曲調,而是極其逼真的話語模擬聲響,其效果經計算機軟件處理可與磁帶、CD媲美。
>_<: (工作要求)其電源電壓為:2.6~6V,靜態耗電<5uA,工作溫度:-10度~60度,儲存溫度:-55度~125度,發光管驅動電路:8mA。
>_<: (引腳說明)1、5、6編程選擇腳;2、3電壓放大推挽輸出,外接蜂鳴器或喇叭;4電源接地端;7電流放大輸出,外接三極管放大推動喇叭;8外接振盪電阻,決定放音速度;9編程電源端;12電源接正端;10、11、13、14發音觸發器,高電平有效,組合控制8段;15單鍵觸發端,高有效使所有的段順序放音;16放音停止端,高電平使放音中斷停止。
編程引腳OUT1、OUT2、OUT3功能選擇:
※STP指OUT輸出15ms的停止脈沖,(也可推另一片語音IC,以增加語音長度)
※BUSY指OUT輸出忙信號,推動馬達或其它
語音分段控制選擇:(L表示接正觸發,N表示不接)
放音頻率、振盪電阻(ROSC)與放音時間選擇:
>_<: (基礎應用)基礎電路應用:
① COUT輸出驅動喇叭 && VOUT輸出驅動蜂鳴偏或喇叭
② 八段觸發控制(見上表)
③ 兩片串聯加長語音長度
④ 帶LED的電路
>_<: (時序波形)時序波形示意圖:
1. Level, Unholdable, Non-retriggerable(電平的、非保持的、非觸發的)
展示了兩種情況:觸發的時長小於一個Group的播放時長和觸發時長超過一個Group的播放時長。可見小於的情況在一個Group的時間內多個觸發只起單個作用,當大於Group時長的觸發會導致Group再次啟動。
2. Level Holdable(電平保持)
展示了兩種情況:(和上面一樣。當小於時,播放會直接停止;當大於時,播放會重新開始同樣也會戛然而止。
3. Single Button Trigger (SBT), Sequential(這是一個按鈕的控制情況)
這是Level Unholdable情況的長短兩種情況,可見:SBT每次觸發會進行一次Group的切換,直到第8個又重新從第1個開始,如果某一個SBT信號持續時間超過當前播放一組的時長,會導致該組重復播放,直至SBT切換。
這是Level Holdable情況的長短兩種情況,可見:類似與上面的Level Unholdable情況,只是會出現截止情況。
4. Edge,Unholdable,Non-retritggerable(邊緣觸發的、非保持的、非觸發的)
和上面1的電平觸發的比較可以看出當觸發時長保持超過Group的時長時,仍然播放一次。
5. Edge Holdable
和上面2的電平保持比較可以發現當觸發時長保持超過Group的時長時,仍然播放一次。
6. Single Button Trigger (SBT), Sequential(這是一個按鈕控制的情況)
這是Edge Unholdable應和3的Level Unholdable比較發現這仍然是Edge觸發的特點:當時長超過時,仍然只播放一次。
同樣的Edge Holdable不再說明。
>_<: (使用注意事項)
編程燒寫語音芯片時注意:語音芯片型號要與軟件相對應,不可互相混淆。
燒寫時注意:首先檢測是否空片,是空片再開始燒寫;OPT芯片不可多次燒寫不用的內容。
API8108A、840N語音芯片燒寫采用6V供電,API8208A語音芯片采用5V供電(可以采用ADAPTOR轉換燒寫電壓)。
>_<: (具體應用)[3]
AT89C205除了在外部引腳上少了兩個並口外,其他資源與AT89C52完全相同,且內部的2KFLASHROM能夠很方便的進行擦寫。該單片機的P1口是一個8位雙向I/O口,其中P1.2~P1.7口內部提供上拉電阻,P1.0和P1.1需要外接上拉電阻。P1.0和P1.1同時也是片內精確模擬比較器的正輸入端(AIN0)和負輸入端(AIN1)。P3口是7個帶有內部上拉電阻的雙向口(P3.6除外)。
為了提高音量,在該設計中加入了音頻放大芯片LM386。LM386是美國國家半導體公司生產的音頻放大器,主要應用於低電壓消費類產品。為使外圍元件最少,電壓增益內置為20,如果在1腳和8腳之間增加一只外接電阻和電容,便可將電壓增益調為任意值,直至200。輸入端以地為參考,同時輸出端被自動偏置到電源電壓的一半,在6V電源電壓下,它的靜態功耗僅僅為24mW,所以它是一種低電壓小功率的音頻功放集成電路,采用8腳雙列直插式封裝,第6腳為電源正極,第4腳接地,第2、3腳為選擇輸入端,第5腳為輸出端,第1、8腳為增益控制端,第7腳為旁路端。它具有共組電壓寬(4~12V)、靜態耗電少、電壓增益可調(20~200)、外接元件少、頻帶寬(300KHz)、低失真度。
整個電路圖如上圖:單片機的P3口控制API8108A的TG1~TG4,用來控制語音的分段輸出。R4為語音模塊的振盪電阻,其余放音時間的關系見上面的表格。在本設計中選用200千歐,放音時間為9s左右。由於U3的1腳和8腳之間只連接10微法的電容,此音頻放大倍數為200倍。通過R2還可以調節音量大小,如果想降低音量,只需在U3的3腳連接一個電位器和R2進行分壓即可。
播放語音已經預先錄制好,存放在API8108A語音芯片的各單元中,語音播放程序首先完成語音地址計算,將語音地址存放在緩沖區中,待全部算完,建立結束標志,然后啟動定時器,每隔0.3s輸出一個地址信號,完成語音輸出,如要播放“歡迎光臨”,根據該數據,調用語音地址計算子程序,將“歡”“迎”語音地址存入緩沖區30H和31H中。依次類推,直至結束,再在緩沖區依次間隔0.3s時間取出語音地址,直至遇到結束標志。
四、小結
最近一直沒有寫東西了,三四月份忙着導師的項目、五月份忙着找工作、六月份忙着復習考試(其實明天還有考試,復習煩了遂來寫點東西,嘻嘻)。翻來覆去發現還是把這個有趣的汽車倒車雷達的設計同大家分享吧,本部分將倒車雷達電路系統中的語音模塊大致講述了一下,接下來還要對其測距電路進行分析設計(其實以前我已經對超聲波測距進行了比較細致的研究啦4個哦:點這看看)。
鏈接
[1] 一種倒車防碰撞系統的設計與實現(張安然):http://pan.baidu.com/s/1dDGrGbR
[2] API8108A的datasheet:http://pan.baidu.com/s/1bn2i7UJ
[3] 簡易智能語音模塊的設計與實現(李世紅)(蔣海潮):http://pan.baidu.com/s/1o6GFrK2
其他資料(私用):http://pan.baidu.com/s/1o6HvpJO