目前,我國一些大中城市的公交車報站系統(tǒng)主要有三種方式:人工報站,一般報站人員都是當?shù)厝耍梅窖赃M行報站,這給外地的乘客帶來很大的不便,這種報站方式逐漸被其他方式取代;半自動報站,這種報站方式一般是司機控制的,比前一種有了較大的改進,但是有時由于司機疏忽,也會出現(xiàn)錯報、誤報的現(xiàn)象,同時,由于需要司機參與,也有一定的安全隱患;自動報站,這種報站方式實現(xiàn)了智能化,無需司機的參與,系統(tǒng)自動識別車站,而且比較準確,現(xiàn)在研究這種方式的比較多,本文設計的系統(tǒng)是運用紅外線技術作為發(fā)射和接收信號來實現(xiàn)的,成本較低,有利于推廣。本系統(tǒng)是一種自動播報公交車站名的智能系統(tǒng),它由車載設備及車站設備兩大部分組成。該系統(tǒng)采用一塊單片機(AT89C51)作為自動報站的檢測和驅(qū)動核心,以及ISD4004語音芯片控制報站。車載紅外接收機接收到車站發(fā)出的紅外信號后,經(jīng)過單片機處理后,決定語音芯片中哪段音進行播音,語音芯片根據(jù)該播放地址由揚聲器播放特定的語音信息,它具有公交汽車行駛中能自動播放站點,并適時向乘客報站。
系統(tǒng)組成
本系統(tǒng)的基本組成是:紅外發(fā)射裝置、紅外接收裝置、AT89C51單片機、ISD4004語音芯片和揚聲器等。
該系統(tǒng)的硬件電路原理框圖如上圖所示,其基本的工作原理是:車站的紅外發(fā)射裝置發(fā)出紅外信號,車載系統(tǒng)的接收裝置通過紅外光電傳感器檢測到的信號,經(jīng)過信號處理電路后,把光信號轉換成電信號,同時把電信號送給單片機進行處理,再發(fā)出指令,執(zhí)行語音模塊,完成對自動報站。
系統(tǒng)工作原理
1、紅外線發(fā)射和接收模塊
紅外線發(fā)射和接收是利用光電轉換原理,紅外線發(fā)射裝置把電信號轉換成光信號,將電信號轉換成光信號的核心器件是三只紅外發(fā)光二極管,在其兩端加上固定電壓產(chǎn)生連續(xù)的光信號。
紅外接收裝置采用光敏三極管來實現(xiàn),從而又能夠把紅外發(fā)光二極管所發(fā)出的紅外光轉換成電信號,但由于此時的電信號較弱,不足以驅(qū)動電路及負載正常工作,故采用模擬放大電路對信號進行放大處理,使其能夠保證后面的電路及負載正常工作。
由于紅外線發(fā)射裝置和紅外線接收裝置的有效作用距離有限,所以必須盡量減少光源能量的損失,為使發(fā)光二極管的光源能量能最大限度地被光敏三極管接收,采用透鏡聚光技術來實現(xiàn),使其作用距離可達到8~9m,甚至更遠,這樣就可以滿足公交車報站的需要。
在站臺上裝上紅外線發(fā)射裝置,在公交車上裝上紅外線的接收裝置,當公交車即將到達站臺時,紅外線接收裝置的光敏三極管收到紅外線發(fā)射裝置的光信號,經(jīng)過模擬放大電路,輸出電平為低電平,這時單片機就會控制語音芯片,實現(xiàn)報站的功能,當公交車沒有到達站臺時,模擬電路輸出電平為高電平,單片機就不執(zhí)行相應的操作。
2、單片機模塊
單片機模塊是該系統(tǒng)的核心模塊,采用AT89C51單片機,AT89C51是一種低功耗、高性能的8位單片機,它采用了CO-MOS工藝和Atmel公司的高密度非易失性存儲器技術。包含一個8位中央處理器、256個RAM單元,其中能作為寄存器供用戶使用的僅有前面的128個,余下的被專用寄存器占用:片內(nèi)含有4k字節(jié)的Flash可編程可擦除的存儲器;有4個8位的I/O口,1個全雙工串行口以及5個中斷源。它能夠滿足本系統(tǒng)開發(fā)的需要。
當單片機的相應引腳接收到紅外接收裝置的低電平信號時,就會通過軟件的方式來控制語音芯片,從而實現(xiàn)報站,當單片機的相應引腳沒有接收到紅外信號(高電平)時,不執(zhí)行相應的操作。3、語音模塊該模塊采用ISD4004芯片實現(xiàn)語音報站。ISD4004的特點是記錄聲音沒有段長度限制,并且聲音記錄不需要/VD轉換和壓縮,其采用快速閃存作為存儲介質(zhì),無需電源可保存數(shù)據(jù)長達100年,重復記錄10000次以上,記錄時間長,開發(fā)應用所需外圍電路簡單。
由于ISD4004工作電壓是3V,而單片機工作電壓是5V,因此,需要變壓電路;此外由于ISD4004的工作功率比較小,需要通過功放電路實現(xiàn)播報。本文主要介紹播報已經(jīng)錄制好的語音,至于錄音的過程在此不做介紹。
系統(tǒng)硬件電路設計
本文主要討論單片機控制電路、語音芯片電路以及相關的變壓電路和功放電路,硬件電路圖如下圖所示:紅外接收電路連接Pl.0、P1.1、P1.2引腳,用來連接紅外接收裝置的電信號,紅外電路在此不作詳細介紹。
控制部分則主要由單片機AT89C51構成,包含必要的晶振電路、復位電路及其與ISD4004的連接電路等外圍電路,放音部分主要由ISD4004構成,包含相應的變壓電路,功放電路等。
從上面的圖中可以看出AT89C51和ISD4004之間的連接較少,單片機的P1.0~P1.3引腳接紅外接收電路,控制報站器工作過程中是否放音。P1.6接ISD4004的片選引腳/SS,控制ISD4004的選通與否。P1.7接ISD4004的串行輸入引腳MOSI,從該引腳讀入放音的地址,從單片機輸出數(shù)據(jù),ISD4004接收數(shù)據(jù)。P3.2和P3.3分別接ISD4004的串行時鐘引腳SCLK和中斷引腳/INT。對于ISD4004芯片所需要的連接還有音頻信號輸出引腳AUDOUT,該引腳通過一個濾波電容與功放電路連接,AM-CAP為自動靜音端,使用時通過一個電容接地。為了使ISD4004正常工作,變壓電路如下圖所示:
軟件設計
根據(jù)設計需要,運用單片機實現(xiàn)自動報站的程序設計過程如下:
程序流程圖如下圖:
程序如下: