《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 一種智能電梯語(yǔ)音系統(tǒng)的設(shè)計(jì)
一種智能電梯語(yǔ)音系統(tǒng)的設(shè)計(jì)
互聯(lián)網(wǎng)
摘要: 隨著城市文明化和現(xiàn)代化建設(shè)步伐的加快,,對(duì)建筑物中電梯的服務(wù)要求也越來(lái)越高,人們?cè)絹?lái)越追求智能...
Abstract:
Key words :

1  引言
    隨著城市文明化和現(xiàn)代化建設(shè)步伐的加快,對(duì)建筑物中電梯的服務(wù)要求也越來(lái)越高,人們?cè)絹?lái)越追求智能化,、人性化的乘梯環(huán)境,。在電梯語(yǔ)音服務(wù)方面,,目前主要是傳統(tǒng)的人工服務(wù),,即通過電梯管理員告知乘客所要到達(dá)的樓層以及其他相關(guān)的服務(wù)信息,。本文以單片微機(jī)和ISD語(yǔ)音芯片為核心,設(shè)計(jì)了一種電梯語(yǔ)音服務(wù)系統(tǒng),,實(shí)現(xiàn)了電梯語(yǔ)音服務(wù)的智能化和自動(dòng)化,,以適應(yīng)各種對(duì)服務(wù)要求比較高的電梯中。

2  器件功能介紹
    Winbond公司的ISD系列語(yǔ)音芯片采用了“直接模擬量存儲(chǔ)”(DAST)專利技術(shù),,信號(hào)無(wú)需經(jīng)過D/A,,A/D轉(zhuǎn)換,數(shù)字壓縮和語(yǔ)音合成等復(fù)雜的數(shù)字信號(hào)處理過程,,減少了失真,,使其聲音存貯效果較以前產(chǎn)品有大幅提高,實(shí)際試聽主觀評(píng)價(jià)可以達(dá)到磁帶錄音機(jī)的水平,,是目前市場(chǎng)上錄放效果最好的語(yǔ)音電路之一,。

    ISD4004語(yǔ)音芯片采用CMOS技術(shù),內(nèi)含晶體振蕩器,、防混疊濾波器,、平滑濾波器、自動(dòng)靜噪,、音頻功率放大器及高密度多電平閃爍存儲(chǔ)陳列等(見圖1),,因此只需很少的外圍器件就可構(gòu)成一個(gè)完整的聲音錄放系統(tǒng)。芯片設(shè)計(jì)是基于所有操作由微控制器控制,,操作命令通過串行通信接口(SPI或Micwire)送入,。采樣頻率可為4.0kHz、 5.3kHz,、6.4kHz,、8.0kHz頻率越低,錄放時(shí)間越長(zhǎng),,而音質(zhì)則有所下降,。片內(nèi)信息存于閃爍存儲(chǔ)器中,可在斷電情況下保存100年(典型值) 反復(fù)錄10萬(wàn)次,。器件工作電壓3V,工作電流25~30mA,,維持電流1uA,,單片錄放語(yǔ)音時(shí)間8~16min,音質(zhì)好,,適用于移動(dòng)電話機(jī)及其它便攜式電子產(chǎn)品中,。

 

 

圖1     ISD4004系列語(yǔ)音芯片內(nèi)部框圖

2.1  引腳描述
ISD4004系列芯片引腳圖如圖2所示:

 

 

圖2     ISD4004系列芯片引腳圖(TSOP及PDIP、SOIC)

    同相模擬輸入(ANA IN+)—這是錄音信號(hào)的同相輸入端,輸入放大器可用單端或差分驅(qū)動(dòng),。單端輸入時(shí),,信號(hào)由耦合電容輸入,最大幅度為峰峰值32mV,,耦合電容和本端的3kΩ輸入阻抗決定了芯片頻率的低端截止頻率,。在差分驅(qū)動(dòng)時(shí),信號(hào)最大幅度為峰峰值16mV,。

    反相模擬輸入(ANA IN-)—差分驅(qū)動(dòng)時(shí),,這是錄音信號(hào)的反相輸入端。信號(hào)通過耦合電容輸入,,最大幅度為峰峰值16mV,,本端的標(biāo)稱輸入阻抗為56kΩ,單端驅(qū)動(dòng)時(shí),,本端通過電容接地,。 兩種方式下,ANA IN+和ANA IN-端的耦合電容值應(yīng)相同,。

·音頻輸出(AUD OUT)—提供音頻輸出,,可驅(qū)動(dòng)5Ω的負(fù)載。
·片選(SS)—此端為低,,即選中ISD4004 系列,。
·串行輸入(MOSI)—此為串行輸入端,主控制器應(yīng)在串行時(shí)鐘上升沿之前半個(gè)周期將數(shù)據(jù)放到本端,,供ISD 輸入,。
·串行輸出(MISO)—串行輸出端,ISD未選中時(shí),,本端呈高阻態(tài),。
·串行時(shí)鐘(SCLK)—ISD的時(shí)鐘輸入端,由主控制器產(chǎn)生,,用于同步 MOSI 和MISO的數(shù)據(jù)傳輸,。數(shù)據(jù)在SCLK上升沿鎖存到ISD,在下降沿移出ISD,。
·中斷(INT)—本端為漏極開路輸出,,ISD在任何操作(包括快進(jìn))中檢測(cè)到EOM或OVF時(shí),本端變低并保持,。中斷狀態(tài)在下一個(gè)SPI周期開始清除,,中斷狀態(tài)也可用RINT指令讀取。
·行地址時(shí)鐘(RAC)—漏極開始輸出,。每個(gè)RAC周期表示 ISD存儲(chǔ)器的操作進(jìn)行了一行(ISD4004系列中的存儲(chǔ)器有2400行),。8kHz采樣頻率的器件,,RAC周期為200ms,其中175ms保持高電平,,低電平為25ms,。快進(jìn)模式下,,RAC為218.75ms高電平,,31.25ms為低電平,該端可用于存儲(chǔ)管理技術(shù),。
·外部時(shí)鐘(XCLK)—本端有內(nèi)部下拉元件,,芯片內(nèi)部的采樣時(shí)鐘在出廠前已調(diào)校,誤差在+1%內(nèi),,在不外接時(shí)鐘時(shí),,此端必須接地。
·自動(dòng)靜噪(AM CAP)—1μF電容構(gòu)成內(nèi)部峰值檢測(cè)電路的一部分,,檢測(cè)出的峰值電平與內(nèi)部設(shè)定的閾值作比較,,決定自動(dòng)靜噪電路的工作與否。大信號(hào)時(shí)自動(dòng)靜噪電路不衰減,,靜音時(shí)衰減6dB,。同時(shí),1μF電容也影響自動(dòng)靜噪電路時(shí)信號(hào)幅度的響應(yīng)速度,,本端接VCCA則禁止自動(dòng)靜噪,。

2.2  SPI接口
    ISD4004工作于SPI串行接口。SPI協(xié)議是一個(gè)同步串行數(shù)據(jù)傳輸協(xié)議,,協(xié)議假定微控制器的SPI移位寄存器在SCLK的下降沿動(dòng)作,。因此,對(duì)ISD4004而言,,在時(shí)鐘上升沿鎖存MOSI引腳數(shù)據(jù),,在下降沿將數(shù)據(jù)送至MISO引腳。協(xié)議具體內(nèi)容如下:
(1) 所有串行數(shù)據(jù)傳輸開始于SS下降沿;
(2) SS在傳輸期間必須保持為低電平,,在兩條指令之間保持為高電平;
(3) 數(shù)據(jù)在時(shí)鐘上升沿移入,,在下降沿移出;
(4) SS變低,輸入指令和地址后,,ISD行才開始錄放操作;
(5) 指令格式是8位控制碼加16位地址碼;
(6) ISD的任何操作(含快進(jìn))如果遇到EOM或OVF,,則產(chǎn)生一個(gè)中斷,該中斷狀態(tài)在下一個(gè)SPI周期開始時(shí)被清除;
(7) 使用“讀”指令會(huì)使中斷狀態(tài)位移出ISD的MISO引腳時(shí),,控制及地址數(shù)據(jù)也同步從MOSI端移入;
(8) 所有操作在運(yùn)行位(RUN)置1時(shí)開始,,置0時(shí)結(jié)束;
(9) 所有指令都在SS端上升沿開始執(zhí)行。
OVF標(biāo)志指示ISD錄放操作已到達(dá)存儲(chǔ)器的末尾,。EOM標(biāo)志只在放音過程中檢測(cè)到內(nèi)部的EOM標(biāo)志時(shí),,此狀態(tài)位置1,如圖3所示,。SPI指令碼如表1所示,。

 

 

圖3     SPI端口的控制位

表1     SPI指令表

 


    以下列舉了幾種對(duì)ISD器件進(jìn)行操作時(shí)的指令次序。
(1) 信息快進(jìn),。用戶不必知道確切的地址,,就能快進(jìn)跳過一條信息。信息快進(jìn)只用于放音模式,。放音速度是正常的1600倍,,遇到EOM后停止,內(nèi)部地址計(jì)數(shù)器加1,,并接下條信息開始處,。
(2) 上電順序。器件延時(shí)TPUD(8kHz)采樣時(shí),,約25ms后才能開始操作,。因此,用戶發(fā)完上電指令后,,必須等待TPUD,,才能發(fā)出一條操作指令。例如從 00處放音,,應(yīng)遵循如下時(shí)序:發(fā)power up命令;等待TPUD上電延時(shí));發(fā)地址值為00的SETPLAY命令;發(fā)PLAY命令,。器件會(huì)從00地址開始放音,當(dāng)出現(xiàn)EOM時(shí),,立即中斷,,停止放音。如果從00處錄音,,則按以下時(shí)序:發(fā)power up命令;等待TPUD(上電延時(shí));發(fā)power up命令;等待2倍 TPUD;發(fā)地址值為00的SET REC命令;發(fā)REC命令,。器件便從00地址開始錄音,一直到出現(xiàn)OVF存儲(chǔ)器末尾)時(shí),,錄音停止,。

    SPI控制寄存器控制器件的每種功能,如表2所列,。

表2     SPI 控制寄存器


    注:IAB置0時(shí),,錄、放操作從A15A0地址開始,。為了能連貫錄,、放到后續(xù)存儲(chǔ)空間,在操作到達(dá)該行之前,,應(yīng)發(fā)出第二個(gè)SPI指令將IAB置1,,原則器件在同一地址上反復(fù)循環(huán),。這個(gè)特點(diǎn)對(duì)語(yǔ)音提示功能很有用,RAC腳和 IAB位可用于信息管理,。

2.3  命令格式及時(shí)序
    8位及24位命令格式如圖4和圖5所示,。錄音、放音,、停止時(shí)序如圖6所示,。

 圖4     8位命令格式

 圖5     24位命令格式

 

 圖 6      錄音、放音,、停止時(shí)序


3  電梯語(yǔ)音系統(tǒng)的設(shè)計(jì)
3.1  系統(tǒng)原理電路
    本系統(tǒng)是指安裝在電梯內(nèi)的放音電路,,不包含錄音部分。在實(shí)際應(yīng)用中,,將對(duì)方需要播音的內(nèi)容事先錄制到語(yǔ)音芯片中(每一層樓對(duì)應(yīng)一段語(yǔ)音服務(wù),,按樓層從低到高的順序錄音),電梯運(yùn)行時(shí),,本系統(tǒng)便可實(shí)現(xiàn)自動(dòng)的語(yǔ)音播報(bào)服務(wù),。各樓層信號(hào)通過信號(hào)采集系統(tǒng)從電梯控制面板中引出,經(jīng)過隔離系統(tǒng),,進(jìn)入單片機(jī)(如圖8所示,,其中隔離器件選用TOSHIBA的光電耦合芯片TLP521-4)。電源部分從電梯內(nèi)部引入220V交流電源,,通過電源模塊和電壓調(diào)節(jié)模塊分別為單片機(jī)和語(yǔ)音芯片提供5V和3V電壓(如圖9所示),。語(yǔ)音芯片輸出的音頻信號(hào)通過功放電路輸出至外部。系統(tǒng)總體結(jié)構(gòu)如圖7所示,。

 圖7     系統(tǒng)整體結(jié)構(gòu)圖

 圖8     信號(hào)采集電路

 圖9     電源電路


3.2  單片機(jī)與ISD芯片接口電路
    本文討論的電梯語(yǔ)音系統(tǒng)的控制和放音部分主要由AT89C51單片機(jī)和ISD4004語(yǔ)音芯片構(gòu)成,,其中單片機(jī)和語(yǔ)音芯片的接口設(shè)計(jì)如圖10所示:

 圖10     ISD4004與89C51接口電路

    從圖10中可以看出,單片機(jī)和ISD4004之間的連線較少,。P1.0接 ISD4004的片選引腳/SS,控制ISD4004是否選通;P1.1接ISD4004的MOSI串行輸入引腳,,語(yǔ)音芯片從該引腳讀入放音的地址; P1.2接ISD的串行輸出引腳MISO,單片機(jī)從該引腳接收從語(yǔ)音芯片傳來(lái)的信號(hào);單片機(jī)AT89C51的P1.3接ISD4004的串行時(shí)鐘輸入端 SCLK,,作為ISD的時(shí)鐘輸入,,用于同步MOSI和MISO的數(shù)據(jù)傳輸;P1.4接ISD芯片的中斷引腳/INT, 接收從語(yǔ)音芯片發(fā)來(lái)的EOM信號(hào),獲得語(yǔ)音段結(jié)束信息, 控制其放音或快進(jìn)操作;ISD4004音頻信號(hào)輸出引腳AUDOUT通過一濾波電容輸出至外部功放,。

    本系統(tǒng)是針對(duì)播報(bào)20層樓的情形設(shè)計(jì)的,,通過信號(hào)采集系統(tǒng)從電梯控制面板內(nèi)主要取出了三類信號(hào):樓層信號(hào),上下行信號(hào),,關(guān)門信號(hào),。其中F1至F20便是樓層信號(hào),UP和DOWN分別為上行和下行信號(hào),CLOSE為關(guān)門信號(hào),,這些信號(hào)經(jīng)過隔離處理后進(jìn)入單片機(jī),。

4  軟件設(shè)計(jì)
    按照前面的分析和硬件原理圖,軟件部分的任務(wù)主要是找出將要進(jìn)行語(yǔ)音播報(bào)服務(wù)的樓層和在找到樓層后在合適的時(shí)候進(jìn)行放音,。

4.1  軟件流程包括以下步驟
(1) 初始化,,取定當(dāng)前樓層;
(2) 掃描電梯面板,并量化存儲(chǔ)用戶選取的所有目標(biāo)樓層信息;
(3) 為存儲(chǔ)的目標(biāo)樓層數(shù)據(jù)排序;
(4) 判斷是否存在有效的目標(biāo)樓層信息,,若判斷結(jié)果為否,則返回步驟(2);
(5) 若步驟(4)中的判斷結(jié)果為是,,檢測(cè)是否有關(guān)門信號(hào),,若檢測(cè)結(jié)果為否,則返回步驟(2);
(6) 若(5)中檢測(cè)的結(jié)果為是,,判斷電梯是上行還是下行;
(7) 保存判斷所述的電梯最近目標(biāo)樓層;
(8) 調(diào)用選音播放子程序;
(9) 保存已經(jīng)播放語(yǔ)音的電梯最近目標(biāo)樓層為當(dāng)前樓層,。

4.2  軟件
    軟件流程圖如圖11所示。選音播放子程序見圖12,。

 圖11     系統(tǒng)軟件流程圖

 

 圖12     選音播放子程序流程圖

    對(duì)于ISD4004而言,,由于兩次要放音的內(nèi)容在存儲(chǔ)器里不一定是相鄰的兩段,所以涉及到對(duì)語(yǔ)音芯片的分段提取語(yǔ)音的控制,,而不只是簡(jiǎn)單的放音操作,。對(duì)于這種情況,如果在知道每一語(yǔ)音段首地址的情況下,,可以直接采用“發(fā)送該段首地址并從當(dāng)前地址開始放音”的命令來(lái)實(shí)現(xiàn),,由于在實(shí)際錄音過程中,錄音設(shè)備不一定提供每一語(yǔ)音段的物理地址(一般只是顯示對(duì)應(yīng)的段數(shù)),,所以在提取樓層對(duì)應(yīng)的語(yǔ)音段的問題上,,就必須采取另外的方法,在這里我們是采取控制語(yǔ)音芯片連續(xù)快進(jìn)的方式來(lái)實(shí)現(xiàn)的,。因此,,選音播放子程序包括下列步驟:
(1) 根據(jù)電梯最近目標(biāo)樓層設(shè)置快進(jìn)次數(shù)計(jì)數(shù)器;
(2) 從首地址處開始快進(jìn)一次(本系統(tǒng)一樓不要求語(yǔ)音服務(wù));
(3) 向語(yǔ)音芯片發(fā)送從當(dāng)前語(yǔ)音段地址開始快進(jìn)的命令;
(4) 檢測(cè)是否到達(dá)電梯最近目標(biāo)樓層的語(yǔ)音段地址,若否則返回步驟(3);
(5) 若步驟(4)中的檢測(cè)結(jié)果為是,,則播放語(yǔ)音,。

本文重點(diǎn)給出選音播放子程序如下:
FANGYIN:MOV 34H,33H   
;設(shè)置33H為計(jì)數(shù)器并將當(dāng)前播音樓層作一備份
SETMC: CLR  SS
MOV R1,#0E8H  
;發(fā)送從首地址開始快進(jìn)命令
MOV A, #00H
ACALL SEND
MOV A, #00H
ACALL SEND
MOV A, R1
ACALL SEND
SETB SS 
SETMC1: CLR SS
MOV R1, #0F8H  
;發(fā)送從當(dāng)前地址開始快進(jìn)命令
MOV A, R1
ACALL SEND
ACALL DELAY125U 
;調(diào)用12.5微秒延時(shí)子程序
SETB SS
ACALL DELAY125U
JB  INT,$  
;一段快進(jìn)結(jié)束則接收到低電平信號(hào)
DJNZ 33H,SETMC1 
;判斷快進(jìn)次數(shù)是否達(dá)到要求, 是則往下執(zhí)行
ACALL PLAY   ;調(diào)用放音子程序
MOV 33H,34H  
;保存播音樓層為當(dāng)前樓層
RET
PLAY: CLR  SS    
MOV R1,#0F0H  
;發(fā)送從當(dāng)前地址開始放音命令
MOV A, R1
ACALL SEND   
;調(diào)用發(fā)送子程序進(jìn)行發(fā)送
SETB SS
JB INT, $  
;放音結(jié)束則接收到低電平信號(hào)
RET
由于篇幅所限,,相關(guān)子程序并未全部給出,。

5  結(jié)束語(yǔ)    
    本文所介紹的電梯語(yǔ)音系統(tǒng)已在某大醫(yī)院門診部大樓的多臺(tái)電梯中投入使用,整個(gè)系統(tǒng)工作穩(wěn)定,,功耗小,,音量可調(diào),輸出的語(yǔ)音清晰,,音色優(yōu)美,,實(shí)現(xiàn)了電梯語(yǔ)音服務(wù)的智能化和自動(dòng)化,,用戶評(píng)價(jià)良好。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。