帳號:
密碼:
最新動態
產業快訊
CTIMES / 文章 /
多功能智慧型語音撲滿技術架構
 

【作者: 張博超、謝其晉、鍾啟仁】   2006年01月05日 星期四

瀏覽人次:【5573】

「撲滿」相信是許多人不可磨滅的兒時記憶之一,尤其是剖開豬公那一剎那間的成就與喜悅更是無法以筆墨形容!科技的進步日新月異,然而反觀現今的撲滿,除了造型與材質上的變更之外,在功能上似乎並未跟上科技脈動的腳步!因此,本文期望藉由微控制器的運用,增加傳統撲滿的功能,以提昇其附加價值,讓撲滿儲蓄變得更加生動有趣、儲蓄的金錢更易於管理。


就目前市面上常見的撲滿而言,其主要的缺點有:


  • ●無法統計金額:使用者無法掌握目前所儲蓄的金額狀況,因此無法妥善、有效的運用儲蓄的金錢。


  • ●附加功能太少:一般的撲滿只有存錢的功能,太單調。使用起來相當的無趣,導致儲蓄的念頭大大的降低。


  • ●缺乏互動性:缺乏與使用者之間的互動;若能讓『撲滿儲蓄』變得更加生動有趣,相信必能激起使用者更高的儲蓄意願。



針對上述之缺點進行改善,設計出能統計金額、有良好互動性及高附加價值的存錢系統-多功能智慧型語音撲滿,讓使用者能清楚的了解當前儲蓄的狀況。本文以LCD為顯示裝置,將目前儲蓄的金額顯示出來,讓使用者能隨時掌握儲蓄狀況。為增加使用者儲蓄的興趣,因此提供了能讓使用者設定存錢目標的功能,讓存錢目標顯示在LCD上提醒使用者。此外,也加上時鐘與鬧鐘及重要事件提示的選項,以增加撲滿的附加功能,讓撲滿使用起來更加的實用、有趣。在互動性方面,也加入語音功能,使用語音來告知使用者目前的儲蓄金額、投入金額、與預設目標金額差距等儲蓄的狀況。另外,還提供整點報時、鬧鈴及語音提示重要事件,縮短撲滿與使用者之距離。最後,還特別為學齡前的小朋友設計了一套字卡教學系統,讓小朋友可以多認識一些單字、圖形等,使撲滿擁有更豐富、有趣的功能,提高幼童的儲蓄意願、養成儲蓄的良好習慣。


功能概述

本作品功能規劃,可分為以下幾個部份:


  • ●撲滿功能:統計目前所存金額並顯示在LCD上、預設存錢目標並以語音告知目前所存金額與存錢目標金額的差距,此外在投入硬幣時會以語音報出投入金額、目前所存金額,在達到預設之存錢目標時也會以語音告知使用者。


  • ●鬧鐘功能:時間顯示、時間設定、整點報時,可設定不同的語音提示方式。


  • ●字卡學習功能:插入字卡或圖卡後,以語音方式唸出字卡上的單字或圖案名稱。


  • ●資料的保存:透過I2C介面將儲蓄狀況儲存在E2PROM中,即使電源關閉後資料也不會消失,在系統重新啟動後會自動載入儲蓄金額、使用者之相關設定等等。



本設計的特色在於改善市面上撲滿功能過於單調的缺點,所以將各種不同的功能整合在一個撲滿上。以LCD顯示出目前所存金額、時間及功能選單,能讓使用者清楚的知道目前儲蓄的狀況,而進一步對自己的財務作最佳的運用與規劃。再加上鬧鐘功能及創新的字卡學習系統,提升原本只有單一用途的撲滿之功能與實用性,這些都是目前市面上相關產品所沒有的功能。


系統架構與工作原理

《圖一 多功能智慧型語音撲滿系統方塊圖》
《圖一 多功能智慧型語音撲滿系統方塊圖》

(圖一)為本設計之系統方塊圖,以HT46R24做為整個系統的控制樞紐再搭配上相關的週邊硬體,茲將各個單元分別敘述如下:


  • ●MCU:以HT46R24微控制器為系統之核心,其內部除了RAM(384×8Bits)、ROM(8192×16)、Timer/Event Counter等一般微控制器的基本配備之外,尚提供PWM、ADC等周邊資源;本設計的卡片圖案偵測就是利用ADC搭配簡單的分壓電路完成的;此外,有關時鐘計時的功能、投幣器投幣時的立即反應以及用以判定幣值的脈波寬度的統計工作,則是由其Timer/Event Counter與外部中斷(External Interrupt)搭配完成。


  • ●LCD:為了搭配中文的語音輸出及儲存金額、時間等相關資訊的顯示,採用中文LCD模組做為顯示裝置;其控制方式與一般文字型的LCD類似,所以關於其原理部分不再於此贅述,僅提醒讀者相當重要的注意事項:本設計採用9×2的中文顯示型LCD(編號:P-14B32CT),此液晶顯示器共有兩行,每行可以顯示九個中文字型(或十八個英文字型),其顯示位置與DD RAM位址之對應關係如(表一)所示:



表一 9×2中文顯示型LCD顯示位置與DD RAM位址之對應關係
 

0

1

2

7

8

顯示位置

第一行

00h

01h

02h

07h

08h

DD RAM位址

第二行

10h

11h

12h

17h

15h

DD RAM位址



請注意第一行最後一個位置(08h)與第二行第零個位置(10h)的DD RAM位址並不連續。而每一個位置可以顯示一個中文字型或是兩個英文字型,這表示在中文顯示型LCD上,一個DD RAM位址是可以存放兩個Byte的資料;當顯示中文時,只需將中文的BIG-5碼(2 Bytes)分成兩次寫至LCD之DD RAM即可;而顯示英文時,則與一般LCD之控制方式相同。不過要注意在寫入中文時,要確定寫入的BIG-5碼一定要在同一個DD RAM位址內。


●Push-Button Input:提供四個按鈕開關做為輸入控制,讓使用者進行時間、鬧鈴、儲蓄目標等功能設定,因為使用HT46R24微控制器Port D的Pull-High功能,所以就不需額外再連接提昇電阻。


●Coin Detector:錢幣幣別辨識裝置,採用一般自動販賣機所使用的投幣器,可分辨自行設定的數種幣別,設定有50元、20元、10元、5元及1元等五種不同的硬幣,根據不同的幣值投幣器會送出不同的脈衝訊號,此訊號數入至HT46R24後再經由程式的分析,即可分辨出所投入的幣值。


●E2PROM:資料儲存裝置,為避免停電導致目前累計金額、目標金額、鬧鈴時間等資料消失,採用I2C介面之HT24LC16 E2PROM來儲存使用者的相關設定以及系統內之重要資訊。


●Card Detector:字卡(或圖卡)辨識裝置,此裝置主要是以分壓的觀念搭配HT46R24微控制器內建的類比-數位轉換電路(ADC)來達成。HT46R24配備高達10Bit解析度(Resolution)的ADC,理論上一個通道的輸入就可以辨識1024張不同的圖卡;但是,因為所需的分壓阻值不易尋找,因此目前只使用了6Bit辨識64張不同的圖卡。如果卡片的數目要增加,尚可利用其他ADC通道來達成,若以兩個通道各取6Bit搭配為例,就可以分辨出4096張不同的圖卡。


●Text-To-Speech:採用中文Text-To-Speech IC-SD178A作為發聲的音源;SD178A的內部系統結構如(圖二)所示,其主要特色如下:


《圖二 SD178A內部結構圖》
《圖二 SD178A內部結構圖》
  • (a)單晶片解決方案:只要單一晶片即可轉換Big-5中文碼定義所有文字(約一千三百字)為中文語音、ASCII字符的大小寫英文字母a-z、A-Z(共52字)轉為英語語音、及數字0~9的中文語音輸出。


  • (b)單一系統時脈,採用RC振盪方式:SD178A的系統時脈來源是採用最經濟的RC振盪方式,除了在OSC1和GND間必需連接一電阻(Rosc)外,不需要其它元件。Rosc的建議值是100KΩ,此時其系統頻率可望為4MHz,當系統時脈頻率為4MHz 時,SD178A會有最佳的工作性能。


  • (c)內建12位元高品質D/A轉換器:可發揮12位元高品質D/A轉換器提供真人錄音的音質,只要再配合一外部放大電路即可推動8Ω的喇叭。


  • (d)省電模式及喚醒功能,減少電源耗損:SD178A不只提供命令碼讓其進入省電模式,另外還提供PWDN這根接腳,讓連接於SD178A的元件也可於SD178A進入待機狀態的同時關閉其動作。進入省電模式時,SD178A會關閉系統振盪器,只要外部重新啟動或內部負緣訊號即可喚醒。



表二 SD178A命令碼
命令碼 功能
0x80(停止) 停止撥放,並將所有參數重新設定為初始設定值
0x81(暫停) 暫停撥放,之後SD178A僅接受 0x80和0x82的命令碼
0x82(繼續) 繼續SD178A停止前的下一個動作
0x83 增加音節間靜音的時間長度,增加S_STEP
0x84 減少音節間靜音的時間長度,減少S_STEP
0x85 增加標點符號靜音的時間長度,增加P_STEP
0x86 減少標點符號靜音的時間長度,減少P_STEP
0x8A 後接8位元資料,b7, b6, …, b0,b7~b0分別送至PA7~PA0
0x8B 後接8位元資料,b7, b6, …, b0,b5~b0分別送至PC5~PC0
0x8C 設定SD178A進入省電模式


  • (e)提供命令碼:停止、暫停、繼續、增減音節間靜音長度、增減符號靜音長度、省電模式設定、輸出接腳控制等功能,讓使用者在文字轉語音執行中可輕易操作控制。(表二)為SD178A所提供之命令,所有的命令或資料傳送都是由/SCLK(Serial Clock)與SDI(Serial Data Input)兩支接腳控制完成。當然,在開始傳送之前必須先確認SD178A的/RDY(Ready)已處於「Low」狀態,否則將無法完成正確之傳輸動作。而當SD178A每處理完一筆資料或命令時,會由/FOCC腳送出一個「Low」的脈衝,使用者也可藉由此一信號瞭解目前SD178A處理的進度。這幾支控制腳位之時序關係,如(圖三)所示。



《圖三 SD178A串列傳輸時序示意圖》
《圖三 SD178A串列傳輸時序示意圖》

程式流程電路原理

投幣器(Coin Detector)會依據投入錢幣幣值的不同,在Pulse Out端輸出不同寬度與不同個數的脈波。為了能即時反應使用者投幣的動作,故運用HT46R24的中斷功能來偵測脈波,並以Timer計算其寬度再搭配上內部程式統計脈波總數量,如此就完成了單一投幣事件的幣值判斷。卡片座(Card Socket)是提供字卡(或圖卡)的插入,每張卡都配有不同的電阻值,因此在AN0就會產生不同的壓降,經由HT46R24的ADC轉換之後再由預先建好的對照表即可測知使用者所插入的卡片,最後再控制SD178A唸出對應的名稱。按鍵輸入主要是提供使用者設定存錢目標、系統時間、鬧鈴時間以及鬧鈴提醒語等,搭配LCD的顯示,使用者只要按左(Key Left)、右(Key Right)、離開(Exit)、確認(Enter)等按鍵即可完成各項設定。


《圖四 多功能智慧型語音撲滿流程圖》
《圖四 多功能智慧型語音撲滿流程圖》

現代人工作壓力大、事務繁瑣,有時鬧鐘響了卻忘記該做什麼事,鬧鈴提醒語設計之主要目的,就是希望當時間到時可以用語音的方式提醒使用者該做的事。在設計之初也曾思考提供使用者自行錄音的方式,不過由於錄放音IC的價格不斐,再加上字卡、圖卡多種語音內容的需求,最後選擇便宜、實用的SD178A TTS IC。此外為了避免斷電時造成儲蓄總金額資料的遺失,在電路中也加上了HT24LC16 E2PROM作為停電時資料保存之用,HT24LC16的容量為2K×8Bit,實際上大約只用了256Byte,但若基於成本因素的考量,可以替換為容量較小的E2PROM。



《圖五 多功能智慧型語音撲滿電路圖》
《圖五 多功能智慧型語音撲滿電路圖》

結語

本產品設計的主要目的是想改善傳統撲滿的缺點,希望透過增加撲滿的功能、方便使用的人機介面以及互動式的語音輸出,來提高使用者儲蓄的念頭,讓使用者可以養成良好的儲蓄習慣並加強對金錢的控管能力。另外,專門為幼童設計的字卡學習功能,讓小朋友可以從小培養儲蓄的習慣,並進行一些學齡前的基礎學習。對父母而言,撲滿不再只是個培養小朋友儲蓄習慣的玩具,多功能智慧型語音撲滿同時也是提供幼童進行基礎學習的工具。(作者就讀於明新科技大學電子工程系;本文由盛群半導體提供)


《圖六 多功能智慧型語音撲滿成品照片》
《圖六 多功能智慧型語音撲滿成品照片》

<參考資料:


[1]「HT46xx微控制器理論與實務寶典」鍾啟仁 編著,全華圖書


[2]SD178A Datasheet翔音科技股份有限公司 www.sounding.com.tw


[3]HT46x24 Datasheet 盛群半導體股份有限公司 www.holtek.com.tw>


相關文章
藍牙技術支援精確定位
前進垂直應用市場 微控制器低功耗方向確立
時間敏感網路解決方案消弭工業物聯網通訊缺口
無橋圖騰柱功率因數校正控制器 實現AC-DC 功率轉換效益
AI在Deep Edge領域應用:為STM32 MCU而生的STM32Cube.AI
相關討論
  相關新聞
» 日本SEMICON JAPAN登場 台日專家跨國分享半導體與AI應用
» Nordic Thingy:91 X平臺簡化蜂巢式物聯網和Wi-Fi定位應用的原型開發
» 豪威集團推出用於存在檢測、人臉辨識和常開功能的超小尺寸感測器
» ST推廣智慧感測器與碳化矽發展 強化於AI與能源應用價值
» ST:AI兩大挑戰在於耗能及部署便利性 兩者直接影響AI普及速度


刊登廣告 新聞信箱 讀者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 遠播資訊股份有限公司版權所有 Powered by O3  v3.20.2048.52.14.255.122
地址:台北數位產業園區(digiBlock Taipei) 103台北市大同區承德路三段287-2號A棟204室
電話 (02)2585-5526 #0 轉接至總機 /  E-Mail: webmaster@ctimes.com.tw