陳 慧
(華東交通大學(xué)機(jī)電工程學(xué)院,江西南昌330013)
自動(dòng)售貨機(jī)因無需專人值守而可每天24小時(shí)售貨,被譽(yù)為“無人小超市”。自動(dòng)售貨機(jī)具有銷售方式新穎、商品貨真價(jià)實(shí)、服務(wù)方便快捷、技術(shù)含量高等優(yōu)點(diǎn),決定了它廣闊的發(fā)展前景[1,2]。自動(dòng)售貨機(jī)在日本、美國等西方發(fā)達(dá)國家應(yīng)用很廣泛,經(jīng)過多年的發(fā)展其控制技術(shù)日趨完善,但由于技術(shù)封鎖公開資料很少,且國外產(chǎn)品在功能、使用形式等方面與我國消費(fèi)者的需求和習(xí)慣還有一定的差別,另外其高昂的價(jià)格也令商家望而切步。有見于此,近年來國內(nèi)的有識(shí)之士展開了對(duì)自動(dòng)售貨機(jī)系統(tǒng)的研究,從貨幣識(shí)別技術(shù)、執(zhí)行部件結(jié)構(gòu)、主控制系統(tǒng)等多方面進(jìn)行了探討[3-6]。上述研究多集中在售貨功能的實(shí)現(xiàn)方面,對(duì)于人機(jī)交互界面的多元化、人性化的考慮則很少。
作者曾對(duì)自動(dòng)售貨機(jī)的智能控制系統(tǒng)進(jìn)行過研究[7],認(rèn)為自動(dòng)售貨機(jī)不僅應(yīng)完善其本質(zhì)的售貨功能,而且要在售貨過程中提高其人性化。本文集中探討自動(dòng)售貨機(jī)上語音功能的實(shí)現(xiàn)。相信語音功能的加入可以彌補(bǔ)機(jī)器生硬操作的不足,使顧客在購物的同時(shí)可以有種親切的、人性化服務(wù)的感受。
圍繞功能強(qiáng)、方便、可靠及經(jīng)濟(jì)性的要求,本設(shè)計(jì)選定凌陽16位單片機(jī)SPCE061A為控制核心,它具有功率低、處理速度高、擴(kuò)展性好、語音處理能力強(qiáng)大,其語音模塊便于工作人員進(jìn)行修改的突出優(yōu)點(diǎn)。
如圖1所示,自動(dòng)售貨機(jī)系統(tǒng)設(shè)計(jì)工作流程如下。
(1)用戶投幣,當(dāng)系統(tǒng)檢測(cè)到有幣投入時(shí)產(chǎn)生中斷。在中斷程序里調(diào)用語音輸出程序播出“您好,歡迎使用自動(dòng)售貨機(jī),在您使用之前請(qǐng)仔細(xì)閱讀有關(guān)注意事項(xiàng)”,然后延時(shí)調(diào)用硬幣或紙幣識(shí)別程序;如果檢測(cè)出偽幣、殘幣則將其從退幣口退出;否則片內(nèi)SRAM單元保存當(dāng)前的幣值。
(2)等待顧客按鍵選擇商品,當(dāng)系統(tǒng)掃描到“購物鍵”按下后執(zhí)行鍵處理操作。如所選商品價(jià)格大于當(dāng)前輸入總幣值,或該商品售完,則語音提示“商品售完或您投幣值不足,本次購物結(jié)束,請(qǐng)您取回錢幣,再見!”,同時(shí)進(jìn)行退幣;否則就由單片機(jī)控制送貨電機(jī)彈出所選貨物至取物口,此時(shí)片內(nèi)SRAM單元減去相應(yīng)貨物價(jià)格所對(duì)應(yīng)的數(shù),得到剩余金額,將此剩余金額對(duì)應(yīng)的數(shù)送片內(nèi)SRAM單元保存,同時(shí)顯示。
(3)系統(tǒng)檢測(cè)到有商品送出的信號(hào),則根據(jù)當(dāng)前剩余金額決定下一步操作:如果剩余金額為零,語音提示“本次購物結(jié)束,無退幣,再見!”;如果還有余額,則語音提示“金額有剩余,選擇購物鍵可繼續(xù)購物;選擇退幣鍵則購物結(jié)束。”并等待按鍵:如果顧客再次按下“購物”,則重復(fù)前述購物操作;若顧客按下“退幣”鍵,則將片內(nèi)SRAM單元內(nèi)容清空,同時(shí)剩余金額顯示為零,等待下一個(gè)顧客的光臨投幣。如此一直循環(huán)下去。
從上述自動(dòng)售貨機(jī)工作流程可見,語音提示的部分成為了系統(tǒng)智能化的一個(gè)重要體現(xiàn),使得整個(gè)系統(tǒng)更友好、更人性化。
常用語音系統(tǒng)的種類主要有:由多帶通濾波器及線性匹配電路構(gòu)成的語音系統(tǒng)、由單片機(jī)構(gòu)成的語音系統(tǒng)和由數(shù)字信號(hào)處理器DSP組成的語音系統(tǒng)。由多帶通濾波器及線性匹配電路構(gòu)成的語音系統(tǒng)是最早期的語音集成電路,這種電路的語音識(shí)別性能低,主要應(yīng)用于上世紀(jì)80年代,現(xiàn)已很少用;由DSP組成的語音識(shí)別系統(tǒng)運(yùn)算能力強(qiáng),精度高,適用于高性能語音系統(tǒng)。但目前DSP的價(jià)格也較昂貴。
本設(shè)計(jì)采用SPCE061A單片機(jī)為核心組成語音系統(tǒng)模塊,對(duì)比上述方案而言其優(yōu)點(diǎn)是:SPCE061A單片機(jī)同時(shí)具有較高16位×16位的乘法運(yùn)算和內(nèi)積運(yùn)算功能,CPU最高時(shí)鐘可達(dá)49 MHz。因此在處理復(fù)雜的數(shù)字信號(hào)方面它可以和DSP相媲美,但其價(jià)格卻要比專用的DSP芯片廉價(jià)。它具有可編程音頻處理的能力,采用凌陽音頻編碼方式能容納數(shù)百秒的語音數(shù)據(jù)(例如,2.4 k位/秒的SACM-S240方式能容納210秒的語音數(shù)據(jù)),具有雙通道10位DAC方式的音頻輸出功能。SPCE061A單片機(jī)強(qiáng)大的語音處理能力為我們的設(shè)計(jì)提供了方便[4]。
對(duì)于語音的處理大致可以分為A/D、編碼、存儲(chǔ)、解碼及D/A等。凌陽SPCE061A單片機(jī)提供了SACM-LIB,該庫將A/D、編碼、存儲(chǔ) 、解碼及D/A 作為相應(yīng)的模塊,對(duì)于上述每個(gè)模塊都有相應(yīng)的API函數(shù)來實(shí)現(xiàn)其各自功能。SPCEO61A可以使用SACM-S240,SACM-S480,SACM-S720,SACM-A2000等多種凌陽編碼壓縮算法。其中SACM-A2000壓縮算法具有壓縮比較小(8:1)、語音質(zhì)量好、傳輸碼率高的特點(diǎn),適用于高保真語音。本設(shè)計(jì)采用的就是SACM-A2000音頻算法。
錄制自動(dòng)售貨機(jī)控制系統(tǒng)需要的各段語音提示文件,將它們存儲(chǔ)在凌陽SPCE061A單片機(jī)的內(nèi)部存儲(chǔ)器中。當(dāng)系統(tǒng)進(jìn)行語音提示的播放時(shí),通過SPCE061A的語音識(shí)別和處理功能把內(nèi)部存儲(chǔ)器中相應(yīng)的語音文件自動(dòng)解壓縮,經(jīng)過內(nèi)置的D/A轉(zhuǎn)換器及后續(xù)電路的處理后將其轉(zhuǎn)換成聲音信號(hào),經(jīng)過擴(kuò)音裝置進(jìn)一步將聲音信號(hào)放大播出。操作完一步,調(diào)用一段數(shù)據(jù),如此進(jìn)行下去。
圖1 自動(dòng)售貨機(jī)系統(tǒng)工作流程
SPCE061A單片機(jī)內(nèi)置兩路10位DAC,本設(shè)計(jì)采用DAC1引腳外接功放電路實(shí)現(xiàn)語音播放。語音輸出電路如圖2所示,由于SPEO161A的DAC是電流輸出,為了能驅(qū)動(dòng)喇叭SPK1放音,采用音頻集成功放LM386芯片,喇叭SPK1可選用4 Ω/8 Ω的揚(yáng)聲器。本模塊特點(diǎn)如下:
(1)充分利用SPCE061A單片機(jī)內(nèi)部資源設(shè)計(jì)了外圍元件最少的語音輸出電路,特別適合于嵌入式產(chǎn)品的開發(fā)應(yīng)用;
(2)LM386音頻集成功放芯片比較起一般由負(fù)載電阻和三極管組成的功放電路而言,具有工作電壓范圍寬(5~18 V)、外接阻容元件少、低失真度及靜態(tài)功耗低(約為4 mA,兩節(jié)電池供電即可)等優(yōu)點(diǎn)。
圖2 語音模塊電路
當(dāng)有外部中斷信號(hào)時(shí),開始啟用語音提示程序,程序先要獲取語音資源填充語音隊(duì)列并進(jìn)行譯碼,然后通過中斷服務(wù)子程序?qū)⑵湟来嗡腿隓AC通道播放。語音提示程序流程圖如圖3,源代碼如下。
//////////////語音程序主要代碼//////////
圖3 語音提示程序流程圖
以凌陽16位單片機(jī)SPCE061A為控制核心,利用該單片機(jī)語音識(shí)別和處理能力強(qiáng)(提供了API函數(shù),能進(jìn)行DSP數(shù)據(jù)處理)的優(yōu)勢(shì),設(shè)計(jì)了自動(dòng)售貨機(jī)控制系統(tǒng)的語音模塊。該模塊的應(yīng)用使得自動(dòng)售貨機(jī)系統(tǒng)更具智能化、人性化,且該模塊成本低,易于維護(hù)。這一設(shè)計(jì)可以推廣應(yīng)用在其他自動(dòng)服務(wù)設(shè)施中,前景廣泛。
[1]陳志軍,張愛琴.自動(dòng)售貨機(jī)研究現(xiàn)狀及展望[J].中國工程科學(xué),2008,10(7):51-56.
[2]張曼,楊勇強(qiáng).一種新型自動(dòng)售貨機(jī)控制系統(tǒng)的設(shè)計(jì)[J].機(jī)電工程技術(shù),2007,36(10):59-62.
[3]陳萌,葉樺,等.自動(dòng)售貨機(jī)主控制器及執(zhí)行機(jī)構(gòu)的設(shè)計(jì)與實(shí)現(xiàn)[J].東南大學(xué)學(xué)報(bào):自然科學(xué)版,2007,37(1):24-28.
[4]葉銀蘭.自動(dòng)售貨機(jī)的設(shè)計(jì)與實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2008,24(23):53-55.
[5]鄭大宇,劉立晶.自動(dòng)售貨機(jī)送出機(jī)構(gòu)的設(shè)計(jì)及優(yōu)化[J].黑龍江商學(xué)院學(xué)報(bào),自然科學(xué)版,2000,16(3):39-43.
[6]謝中賽,金志華.基于μ C/OS-Ⅱ的自動(dòng)售貨機(jī)控制系統(tǒng)[J].機(jī)電工程,2009,26(1):35-37.
[7]陳慧.基于嵌入式單片機(jī)的智能自動(dòng)售貨機(jī)控制系統(tǒng)[J].華東交通大學(xué)學(xué)報(bào),2008,25(4):78-82.
[8]沈紅衛(wèi).單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)實(shí)例與分析[M].北京:北京航空航天大學(xué)出版社,2002.
[9]薛鈞義,張彥斌,虞鶴松,等.凌陽十六位單片機(jī)原理及應(yīng)用[M].北京:航空航天大學(xué)出版社,2003.
[10]姚四改.Protel99SE電子線路設(shè)計(jì)教程[M].上海:上海交通大學(xué)出版社,2003.