Upload
others
View
11
Download
0
Embed Size (px)
Citation preview
崑 山 科 技 大 學
電腦與通訊系 四技部
專 題 製 作 報 告
智慧聲控環境照明系統
學生: 丁俊傑(4001D010)
指導老師:
師: 王 建 仁
中 華 民 國 一 0 三 年 八 月
I
摘要
現今這個社會是個資訊爆炸的時代,人們為了要更加即時獲得資
訊而不斷的盯著手機電腦等 3C 產品,再加上人們的生活習慣的改變,
人與人之間的互動不再是見面寒暄,而是使用像 Line 等…APP 進行即
時溝通,使得人們幾乎 24小時不斷的盯著螢幕看,如果剛好環境昏暗,
人們勢必不斷的將 3C產品達到最大亮度,讓 3C產品所散發的能量光
”藍光”不斷的傷害我們的眼睛,讓我們眼睛造成黃斑部發炎、水腫、
假象近視等…最後嚴重影響我們的視力。或者是因為環境亮度不足,
讓我們因為要看清楚字體,使的我們得常時間近距離閱讀書籍,造成
眼球變形而近視。
眼睛是人類的靈魂之窗,我們該更加重視對其的保護,不該因
為平時疏於保護而讓我們看不清楚美麗的事物,而本研究針對環境燈
光是因為與眼睛接觸最長時間的就是光線,防範勝於治療。
本研究希望藉由光敏電阻的自動偵測及手機藍芽跟語音辨識的多
個控制系統去改善現代人對眼睛傷害的問題。
II
致謝
雖然大學四年的時間已經漸漸的結束了,回首剛到校園時的期許
和目標,以及現在完成目標的喜悅,這一切都要感謝許多人對我們的
提攜與幫助。
我們專題能夠順利的完成,首先要感謝的是我們的指導老師-王建
仁老師,在老師辛勞叮嚀我們的進度以及給予我們眾多的鼓勵下,專
題才能如期的完成,在於專題上,老師也在課業上幫助了我們很多,
也在老師身上學到了很多知識與想法。
在忙於專題的日子上,非常感謝所有幫助過我們的人,謝謝你們
指導我們很多不懂的地方,也才能讓我們慢慢熟悉並且深入去完成我
們的專題,沒有你們我們也不會有像現在的成就,謝謝你們。
III
目錄
頁次
摘要 Ⅰ
致謝 Ⅱ
目錄 Ⅲ
圖目錄 Ⅴ
第一章 緒論 1
1.1 前言 1
1.2 動機、目的 2
第一章 背景知識 3
2.1 Arduino 3
2.2 光敏電阻 6
2.3 藍芽模組 8
2.4 語音辨識模組(99SPR) 15
第三章 程式說明 22
第四章 系統功能操作 30
4.1 偵測環境亮度 30
4.2 藍芽控制 32
4.3 語音控制 36
第五章 結論 37
第六章 參考文獻 38
IV
圖表目錄
頁次
圖2-1-1 Arduino硬體介紹 3
圖2-1-2 Arduino 14支數位I/O接腳 4
圖2-1-3 Arduino 6支類比輸入腳 5
圖2-2-1 光敏電阻 6
圖2-2-2 理想狀態圖 7
圖2-3-1 Bluetooth 8
圖2-3-2 藍牙模組 12
圖2-3-3 藍牙模組帶底板 14
圖2-3-4 藍芽模組腳位 14
圖2-4-1 99SPR 17
圖2-4-2 LD3320 20
圖2-4-3 LD3320內步功能方塊圖 20
圖2-4-4 語音辨識流程 21
圖4-1-1 光敏電阻安裝 30
圖4-1-2 光敏電阻偵測暗 31
圖4-1-3 光敏電阻偵測亮 31
圖4-2-1 藍牙模組安裝 32
圖4-2-2 藍牙App開啟 32
圖4-2-3 藍牙App畫面 33
圖4-2-4 藍牙App連結 33
V
圖4-2-5 藍牙App連結 33
圖4-2-6 藍牙App連結成功 34
圖4-2-7 藍牙控制變暗 35
圖4-2-8 藍牙控制變亮 35
圖4-3-1 99SPR 36
1
第 一 章
緒論
1.1 前言
近年來,台灣不只近視率攀升,近視的平均度數也往上升,近視的
年齡也不斷下降。
根據衛生署統計,台灣的小一學童,每五個就有一個有近視眼,
到了小學六年級更誇張,近視比例高達六成五,其中有 3 到 4%,屬於
高度近視,成年人則已超過百分之八十台灣的近視比例,世界第一。
而眼睛是人類的靈魂之窗,我們更該加強對其的重視及保護,本研究
利用光敏電阻讓使用者能藉由光線的調節,讓眼睛不受到強光刺激而
受傷,不僅光線太強會影響我們視覺,讓眼睛受到迫害無法正常觀看,
也會產生眼睛的疾病;光線太弱讓我們無法正常觀看,使得眼睛造成
壓力,形成更多負擔。當然環境光線是會隨著時間做變化,所以利用
此裝置讓我們的室內光線一直持續達成平衡,讓眼睛得到最舒適的保
護。
2
1.2 動機、目的
相信大家都有遇過這問題吧,在房間內閱讀書籍,天空忽然飄來
一大片白雲把室外光線遮住,造成環境亮度整體下降,然後你為了把
字體看得更清楚,所以你就必須更近距離閱讀,常時間下來造成眼睛
不適。或者,環境亮度忽然變亮,然後你可能些許困難無法動身將過
多的光源關閉,造成眼睛刺痛跟浪費能源等…問題。
眼睛是我們感受身邊事物的重要器官,但我們自己有沒有發現它
的健康問題呢?或許每天每天的使用下,並不會發現有什麼不妥,但自
己的視力是否發生起伏?長時間的使用手機、電腦,是否常感到疲累?
很多的傷害都是一點一滴的造成,一旦形成了就很難復原。
讓眼睛受到傷害原因很多,光線就佔了很大的關係,所以本研究以
光線為基礎,透過光敏電阻讓我們的室內光線得已達到平衡,讓眼睛
不會因為忽強忽弱的光線造成眼睛的負擔甚至是傷害,此裝置也特別
使用了藍芽聲控來控制所有燈泡,讓我們能便利且快速的將亮度調節
在自己需要的範圍之中,也使較年長者及行動不便的人也能輕鬆使
用。
3
第 二 章
背景知識
2.1 Arduino
Arduino是一個開放原始碼的單晶片微電腦,它使用了 Atmel AVR
單片機,採用了基於開放原始碼的軟硬體平台,構建於開放原始碼
simple I/O 介 面 板 , 並 且 具 有 使 用 類 似 Java , C 語 言 的
Processing/Wiring 開發環境。Arduino 可區分為三大類,分別是
Arduino硬體、Arduino軟體及 Arduino擴充原件。
圖 2-1-1 Arduino硬體介紹
微控制器 ATMEGA328
工作電壓 5V
輸入電壓(推薦) 7-12V
輸入電壓(限制) 6-20V
數字 I / O接腳 14(6個提供 PWM輸出)
模擬輸入接腳 6支
EEPROM 1 KB(ATMEGA328)
震盪速度 16 MHz
http://zh.wikipedia.org/wiki/%E9%96%8B%E6%94%BE%E5%8E%9F%E5%A7%8B%E7%A2%BChttp://zh.wikipedia.org/wiki/%E5%96%AE%E6%99%B6%E7%89%87%E5%BE%AE%E9%9B%BB%E8%85%A6http://zh.wikipedia.org/wiki/%E9%96%8B%E6%94%BE%E5%8E%9F%E5%A7%8B%E7%A2%BChttp://zh.wikipedia.org/wiki/Java
4
Arduino擁有 14支數位 I/O接腳可以當作 input使用,也可以當
作 output 使用,使用方法是透過 pinMode(),digitalWrite()
,anddigitalRead() 這幾個函式。
這 14 支數位 I/O 接腳,其中幾支腳有特殊的功能:
Serial 通訊
0(RX) 和 1 (TX) 這兩支腳。用來接收(RX)與傳輸
(TX) TTL 訊號的序列資料。這兩支腳也連接到 USB
Converter 晶片中。
外部中斷
2 和 3 這兩支腳。這兩支腳可以利用外部事件觸發
中斷。詳細內容請參考 attachInterrupt() 函式。
PWM
3, 5, 6, 9, 10 和 11 共六支腳。透過
analogWrite() 函式可以提供 8-bit 的 PWM 輸出。
SPI
10 (SS), 11 (MOSI), 12 (MISO) 和 13 (SCK) 這四
支腳。這四支腳搭配 SPI Library 可提供 SPI 序列
通訊。
LED
13。內建一顆 LED,當 pin 腳為 HIGH 時,LED 打
開,當 pin 腳為 LOW 時,LED 關閉。
圖 2-1-2 Arduino 14支數位 I/O接腳
5
Arduino Uno有 6支類比輸入腳,標記為 A0到 A5,每支腳都可提
供 10 位元的解析(即 1024 種不同的數值)。這些腳位所用的參考電壓
預設為 0 到 5V,不過參考電壓也是可以更改的,方法是透過 AREF 腳
和 analogReference()
I2C
4 (SDA) 和 5 (SCL) 這兩支腳。透過 Wire library 可以提
供 I2C 通訊。
AREF
類比輸入的參考電壓,搭配 analogReference() 函式一起使
用。
Reset 當 Reset 腳為 LOW 時,微控制器會重置。
圖 2-1-3 Arduino 6支類比輸入腳
Arduino 的軟體開發環境是開放源碼,可以在 Arduino官網免費
下載,它所用的程式語言語法類似於 C/C++,具備文字編輯介面、常
用工具欄、圖形化控制介面及錯誤編輯器,運用這個工具進行城市的
上傳,及各項感應器的溝通。
使用的 Arduino編寫的軟件被稱為 Sketch(腳本) 。 這些的腳本都
寫在文本編輯器。上排圖形提供了新增、上傳、除錯及腳板切換介面。
而 console介面紀錄了完整的執行訊息,更可藉由此介面監視 Arduino
I/O數值。
6
2.2 光敏電阻
光敏電阻就是在均質的光電導體兩端加上電極後構成為光敏電阻
,兩電極加上電壓後,當光照射到光電導體上,由光照產生的光生載
子在外加電場之作用下沿一定方向運動,在電路中產生電流,達到光
電轉換之目的。
圖 2-2-1光敏電阻
光敏電阻的工作原理是基於內光電效應。在半導體光敏材料兩端
裝上電極引線,將其封裝在帶有透明窗的管殼裡就構成光敏電阻,為
了增加靈敏度,兩電極常做成梳狀。用於製造光敏電阻的材料主要是
金屬的硫化物、硒化物和碲化物等半導體。通常採用塗敷、噴塗、燒
結等方法在絕緣襯底上製作很薄的光敏電阻體及梳狀歐姆電極,接出
引線,封裝在具有透光鏡的密封殼體內,以免受潮影響其靈敏度。在
兩端的金屬電極加上電壓,其中便有電流通過,受到一定波長的光線
http://baike.baidu.com/view/14336.htmhttp://baike.baidu.com/view/19928.htmhttp://baike.baidu.com/view/495141.htmhttp://baike.baidu.com/view/1528693.htm
7
照射時,電流就會隨光強的增大而變大。光敏電阻沒有極性,純粹是
一個電阻器件。
暗電阻
當電阻在完全沒有光線照射的狀態下(室溫),稱這時的電阻值
為暗電阻(當電阻值穩定不變時,例如 1kM歐姆),與暗電阻相對應
的電流為暗電流。
亮電阻
當電阻在充足光線照射的狀態下(室溫),稱這時的電阻值為亮
電阻(當電阻值穩定不變時,例如 1歐姆),與亮電阻相對應的電流
為亮電流。
下圖為光敏電阻理想狀態下所呈現的狀態:
圖 2-2-2 理想狀態
8
2.3 藍芽模組
藍牙是一種無線個人局域網(Wireless PAN),運作原理是在射頻
2.45 GHz的頻帶上傳輸,除了資料外,也可以傳送聲音。每個藍芽技
術連接裝置都具有根據 IEEE 802標準所制定的 48-bit地址;可以一
對一或一對多來連接,傳輸範圍最遠在 10公尺。藍芽技術不但傳輸量
大,每秒鐘高達 1MB,同時可以設定加密保護,每分鐘變換頻率一千六
百次,因而很難截收,也不受電磁波干擾。
圖 2-3-1 Bluetooth
藍牙技術從出現到現在已經出到 4.2版本了以下為各版本的改良:
藍牙 1.0,藍牙 1.0B,藍牙 1.1,藍牙 1.2,這個版本向下相容 1.1
版:
匿名方式
http://zh.wikipedia.org/wiki/%E5%80%8B%E4%BA%BA%E5%B1%80%E5%9F%9F%E7%B6%B2http://zh.wikipedia.org/wiki/%E6%97%A0%E7%BA%BF%E4%B8%AA%E4%BA%BA%E7%BD%91
9
遮蔽裝置的硬體位址(BD_ADDR),保護使用者免受身分嗅探攻擊
和跟蹤。從 1.1 版開始已經可以實作硬體匿名,但未被實施,因此對
普通消費者來說還是沒有此功能。
自適應頻率跳躍(AFH,Adaptive Frequency Hopping)
透過避免使用跳躍序列中的擁擠頻率,從而改善對無線電干涉的
抵抗。更高的實際傳輸速度,實際測試約為 24KB/S(192Kbps)左右
。L2CAP層引入了流量控制和錯誤糾正機制
藍牙 2.0+EDR
2.0介面卡的內部結構(此產品廠商:高銳(CELL)電子)內容加
入了「非跳躍窄頻通道」(Non-hopping narrowband channel)。為
不需要與每個裝置交換應答訊號,這種通道可以用來將各種器件的藍
牙服務概要同時廣播到巨量的藍牙器件。應答訊號交換過程當前需要
大約一秒。更高的連線速度(實際測試速度為 280KB/s=2240Kbps)支
援多個速度水平
藍牙 2.1+EDR
新規範 2.1+EDR 向下對 1.2 版本完全相容,藍牙技術聯盟於 2007
年 7 月 26 日透過。藍牙 2.1,增加了 Sniff 省電功能,使得介面卡與
裝置的聯繫時間延長到 0.5 秒,能節約不小電量;增強功能有簡單安
http://zh.wikipedia.org/w/index.php?title=%E8%BA%AB%E5%88%86%E5%97%85%E6%8E%A2&action=edit&redlink=1http://zh.wikipedia.org/w/index.php?title=%E6%97%A0%E7%BA%BF%E7%94%B5%E5%B9%B2%E6%B6%89&action=edit&redlink=1http://zh.wikipedia.org/w/index.php?title=%E6%8A%B5%E6%8A%97&action=edit&redlink=1http://zh.wikipedia.org/w/index.php?title=%E9%9D%9E%E8%B7%B3%E8%B7%83%E7%AA%84%E9%A2%91%E9%80%9A%E9%81%93&action=edit&redlink=1
10
全配對(SSP),這改善了藍牙裝置的配對經驗,同時提升了使用和安
全強度。
藍牙 3.0+HS
更高的資料傳輸速率,整合 802.11PAL最高速度可達 24Mbps。是
2.0速度的 8倍。引入了增強電源控制,實際空閒功耗明顯降低。
藍牙 4.0
Bluetooth 4.0,協定組成和當前主流的 Bluetooth h2.x+EDR、還
未普及的 Bluetooth h3.0+HS不同,Bluetooth 4.0是 Bluetooth從誕
生至今唯一的一個綜合協定規範,還提出了「低功耗藍牙」、「傳統
藍牙」和「高速藍牙」三種模式。其中:高速藍牙主攻資料交換與傳
輸;傳統藍牙則以訊息溝通、裝置連線為重點;藍牙低功耗顧名思義,
以不需佔用太多頻寬的裝置連線為主。此外,Bluetooth 4.0還把藍牙
的傳輸距離提升到 100 米以上(低功耗模式條件下)。Single mode
只能與 BT4.0 互相傳輸無法向下相容(3.0/2.1/2.0 無法相通);Dual
mod可以向下相容可與 BT4.0傳輸也可以跟 3.0/2.1/2.0傳輸超低的峰
值、平均和待機模式功耗,覆蓋範圍增強,最大範圍可超過 100米。
速度
11
支援 1Mbps 資料傳輸率下的超短封包,最少 8 個八組位,最多 27
個。所有連線都使用藍牙 2.1加入的減速呼吸模式(sniff subrating)
來達到超低工作迴圈。
跳頻
使用所有藍牙規範版本通用的自適應跳頻,最大程度地減少和其
他 2.4 GHz ISM頻段無線技術的串擾。
主控制
可以休眠更長時間,只在需要執行動作的時候才喚醒。
延遲
最短可在 3毫秒內完成連線設定並開始傳輸資料。
健壯性
所有封包都使用 24-bit CRC校驗,確保最大程度抵禦干擾。
安全
使用 AES-128 CCM加密演算法進行封包加密和認證。
拓撲
每個封包的每次接收都使用 32位元定址,理論上可連線數十億裝
置;針對一對一連線最佳化,並支援星形拓撲的一對多連線;快速連
線和斷開,資料可以在網狀拓撲內轉移而無需維持複雜的網狀網路。
藍牙 4.1
12
藍牙 4.1是藍牙技術聯盟於 2013年底推出的新的規範,其目的是
為了讓 Bluetooth Smart 技術最終成為物聯網 (Internet of
Everything)發展的核心動力。此版本為藍牙 4.0的軟體更新版本,搭
載藍牙 4.0 裝置的終端可通過軟體更新獲得此版本。對於開發人員而
言,該更新是藍牙技術發展史上一項重要的進步。該更新提供了更高
的靈活性和掌控度,讓開發人員能創造更具創新並催化物聯網(IOT)
發展的產品。
藍牙 4.2
是藍牙技術聯盟於 2014年 12月推出的新的規範。
藍牙模組
圖 2-3-2藍牙模組
http://zh.wikipedia.org/wiki/%E8%97%8D%E7%89%99%E6%8A%80%E8%A1%93%E8%81%AF%E7%9B%9Fhttp://zh.wikipedia.org/wiki/%E8%97%8D%E7%89%99%E6%8A%80%E8%A1%93%E8%81%AF%E7%9B%9Fhttp://lh6.ggpht.com/-exYafvxNlgQ/T-Hrlkiy-FI/AAAAAAAAHvE/C1tGIqzPB9o/s1600-h/image2.png
13
如圖 2-3-2是 HC-0x 藍芽模組的外觀,這款藍芽模組可以讓你在
範圍 10 米內實現無線傳輸通信,而且可以界接包括 Arduino,8051,
PIC,AVR,ARM,MSP430 等各種 MCU。
特性
藍芽協定: Bluetooth V2.0 + EDR (Enhanced Data Rate)
工作頻率: 2.4~2.48GHz, ISM Band
傳輸距離: 空曠地有效距離 10 公尺
介面: UART
輸入電壓: 3.3V ~ 4.2V
工作溫度: -20℃ ~ +75℃
原始模組使用工作電壓為 3.3V ~ 4.2V,因為 Arduino 一般是 5V
的,如果要跟 Arduino 連接,得利用 LDO Regulator (Low Drop Out
Regulator) 轉換電壓,對一般使用者會有些困難。所幸市面上可以買
到帶底板的模組
14
圖 2-3-3 藍牙模組帶底板
藍芽模組腳位定義:
Pin ID Description
1 EN Enable / Disable module
2 VCC 輸入電壓 3.6V ~ 6V
3 GND Comman Ground
4 TXD UART TXD Output
5 RXD UART RXD Input
6 STATE 藍芽狀態指示,用來判斷藍芽是否已連接
圖 2-3-4 藍芽模組腳位
http://lh6.ggpht.com/-6GZi_7C_jUs/T-Hrq_FB6xI/AAAAAAAAHvk/GhdhKbtaR3M/s1600-h/image7.png
15
2.4 語音辨識模組(99SPR)
語音辨識(ASR)就是將人類的語音中的詞彙內容轉換為計算機可
讀的輸入,例如按鍵、二進制編碼或者字符序列。與說話人識別
(Speaker recognition)及說話人確認不同,後者嘗試識別或確認發
出語音的說話人而非其中所包含的詞彙內容。
ASR是基於候選詞列表識別的技術,只需要設定好要識別的候選詞
列表,並把這些候選詞以字元的形式傳送到語音識別晶片內部,就可
以對用戶說出的候選詞進行識別,不需要用戶作任何地錄音訓練。ASR
技術在現實生活中最重要的意義就在於提供了一種脫離按鍵、鍵盤或
滑鼠等傳統思維的操作介面,而是一種基於語音的用戶介面(VUI:
Voice User Interface)。ASR 技術每次識別的過程,用戶說出的語音
內容,通過頻譜轉換為 語音特徵,再與候選詞列表中的每一筆資料一
一進行匹配,再將最佳匹配的候選詞作為識別的結果。識別引擎只比
對候選詞的特徵值,因此候選詞可以是命令、人名、歌曲名字、操作
指令等等,任何的中文字元串。語音識別技術所涉及的領域包括:信
號處理、模式識別、概率論和信息論、 發聲機理和聽覺機理、人工智
能等等。
16
語音辨識的種類
語音控制系統的功能包括語音識別和語音合成,其中,語音識別
目前可分特定對像( speaker dependent )與非特定對象( speaker
independent)兩種。
特定對象(SD)語音辨別通常用於專屬或者需要安全保密的機器,
第一次使用之前必須先輸入使用者的語音,讓識別系統記住,這個步
驟叫做訓練(training),等到識別系統確認訓練成功後,使用者就可
以使用語音識別功能,不用再次訓練。其優點是可以客製化,將識別
系統變成專屬特性。
非特定對象(SI)語音識別系統在系統完成前,會經過一到特別的
訓練手續,等到訓練完成後,才會交使用者,使用者不但可以直接使
用命令,並且是任何人都可以使用,而不再是個人專用,這類設計比
較適合使用於公共場所。
本研究所使用的語音辨識模組為 99SPR,是屬於非特定對象語音辨
識。99SPR 模塊使用 LD3320 芯片,STC10L08XE 芯片,加上 SPI-Flash
作為存儲器,構成一個完整的模塊系統,可以用來評估 LD3320語音識
別芯片的全部功能。
17
圖 2-4-1 99SPR
99SPR語音識別模塊具備以下特點:
1.非特定人語音識別,輸入拼音即可識別,能識別所有人的語音,
不分男女。
2.模塊上集成有 32Mbit大容量 FLASH存儲芯片用來存儲要播放
MP3文件數據,能滿足絕大多數的人機對話應用情景。
3.模塊支持「口令觸發識別」模式觸發口令可更改,在識別到口
令後,N秒內的語音識別指令有效,如果超過 N秒沒有語音識別指令需
要重新進行口令觸發。N的範圍同樣可以自己修改。
18
4.模塊支持「直接觸發識別」模式,也就是任一時刻都能識別用
戶指令。
5.可串口輸出語音識別結果,方便和其他設備系統互連,無需自
己編程,非常適合初學者,對應高級開發者,可以自己修改程序調整
需要的輸出方式。
6.提供界面友好的圖像界面下載工具,簡單易用。提供單片機端
的測試程序源代碼,方便高級開發者進行更高級的開發應用。
7.模塊支持 50條用戶識別語句,每個語句可以是單字,詞組或短
句,長度為不超 10個漢字或者 79個字節的拼音串
8.支持 50個 MP3文件播放。
9.多種輸入方式選擇,可以選擇 MIC麥克風輸入,單通道音頻輸
入,立體聲音頻輸入。
10.模塊本身支持 7個控制 IO輸出,可以控制 7路繼電器模塊。
11.模塊上有聲(一個蜂鳴器)和光(一個 LED燈)提示工作狀態,
可以選擇是否開啟
19
LD3320主要特點如下
不需要使用者事先訓練和錄音,識別準確率可達 95%。
不需要外接任何輔助的 Flash晶片,RAM晶片和 A/D晶片,就可以
完成語音識別功能。
識別最多可以設置 50項候選識別字語,每個識別字語可以是單字,
片語或短句,長度為不超過 10 個漢字或者 79 個位元組的拼音串。另
一方面,識別句內容可以動態編輯修改,因此可由一個系統支援多種
場景而突破 50項候選識別字語的限制。
晶片內部已經準備了 16位 A/D轉換器、16位 D/A轉換器和功率放
大電路,麥克風、雙聲道耳機和單聲道喇叭可以很方便地和晶片接腳
連接。雙聲道耳機介面的輸出功率為 20mW,而喇叭介面的輸出功率為
550mW,能產生清晰響亮的聲音。
支援 MP3播放功能,無需週邊輔助器件,主控 MCU 只需將 MP3 資
料依次送入 LD3320晶片內部,就可以從晶片的相應接腳輸出聲音。晶
片可接受 MPEG1、MPEG2 和 MPEG 2.5 layer3 等格式。
20
圖 2-4-2 LD3320
圖 2-4-3 LD3320內步功能方塊圖
語音識別流程
語音識別的操作程序必須先將語音識別初始化(包含通用初始
化),然後開始建立識別列表,等識別列表建立完畢後開始識別。如圖
21
開始
語音識別初始化
通用初始化
建立識別列表
開始辨識
所示然後將中斷回應函數建立好,然後打開中斷允許位元。如果不使
用中斷方式,也可以通過查詢 的方式工作,在"開始識別"後,讀取暫
存器B2H的值,如果為21H就表示有識別結果產生,產生結果後讀取候
選項等操作與中斷方式相同。
識別列表的規則是,每個識別條目對應一個特定的編號(1個位元
組)不同的識別條目的編號可以相同,而且不用連續,但是數值,要
小於 256(00H~FFH)LD3320最多支援50個識別條目。
圖 2-4-4 語音辨識流程
22
第 三 章
程式說明
int threshold = 80; //出值使用 analogRead範圍的一半
int range = 12; //如果光照範圍在目前 threshold +- range則系
統不改變亮燈的顆數
int th_increment = 18; //改變參數
int original_range= 3;
int inumber=0;
int inumber_previous = 0;
int justpass=0; //1 代表剛超過 threshold
int x=0; //儲存由 A0讀入的值
int x_previous = 0;
int xt_diff = 0; //目前光度與 threshold的差
int loop1 = 1; //loop1==1 代表在第一次迴圈
int y=0;
int z=0;
char bluetoothread;
void setup()
23
{
for(int i=0;i
24
{
digitalWrite(5+i,HIGH);
}
for(int i=inumber;i threshold && x_previous
25
{
delay(1000);
x = analogRead(A1);
Serial.println("Read in ");
Serial.println(x);
Serial.println(threshold);
/*目前的亮度和 threshold的差在預設範圍 range內,不理會 */
xt_diff = x-threshold;
if( xt_diff < 0 )
{
xt_diff = -xt_diff;
}
if( xt_diff
26
if( x < threshold )
{
inumber = inumber+1;
}
for(int i=0;i 1 )
{
inumber = inumber - 1;
}
27
for(int i=0;i
28
}
Serial.println(threshold);
if( z==1 )
{
threshold = threshold - th_increment; // 調低 threshold
delay(1500);
Serial.println("Down");
}
Serial.println(threshold);
// 偵測藍牙模組是否有訊號輸出 調整 threshold 部分
if(Serial.available() > 0)
{
bluetoothread=Serial.read();
if( bluetoothread == 'f')
{
threshold = threshold + th_increment; // 調高 range
// delay(1000);
}
29
if( bluetoothread == 'b')
{
threshold = threshold - th_increment; // 調低 range
// delay(1000);
}
}
} // loop 結束
30
第 四 章
系統功能操作
4.1 偵測環境亮度
首先將光敏電阻安裝在適當的位置,我們就能利用光敏電阻的特
性去執行自動偵測環境亮度的功能,讓環境都能維持在一個亮度以上,
達到智慧控制的目地。
圖 4-1-1 光敏電阻安裝
31
當環境光線亮時,光敏電阻會自動偵測,且讓室內燈光變暗
圖 4-1-2 光敏電阻偵測亮
當環境光線暗時,光敏電阻會自動偵測,且讓室內燈光變亮
圖 4-1-3 光敏電阻偵測暗
32
4.2藍芽控制
首先先啟動系統,會看到藍芽模組會發出紅色閃光,代表藍芽模
組已啟動。
圖 4-2-1 藍牙模組安裝
接下來開起藍芽 APP會進入圖 4-2-2的畫面
圖 4-2-2 藍牙 App開啟
33
他會要求開起手機的藍芽,這時後按是就會開起手機藍芽,並進
入圖 4-2-3的畫面
圖 4-2-3 藍牙 App畫面
按左下角的 connect,就會跑到圖 4-2-4,接下來 APP就會自動
搜索使用者身邊附近的所有的藍芽的裝置,選擇本裝置的藍芽模組
圖 4-2-4 藍牙 App連結 圖 4-2-5 藍牙 App連結
34
當畫面會變成紅色,並出現 Connected to linvor時,代表藍芽
連結成功,即可使用手機的藍牙功能操控此系統
圖 4-2-6 藍牙 App連結成功
35
圖 4-2-7 藍牙控制變亮
圖 4-2-8 藍牙控制變暗
按”上鍵”即可使系統讓環境亮度變亮
按”下鍵”即可使系統讓環境亮度變暗
36
4.3 語音控制
語音的部分,因為我們使用 99SPR這個語音模組,它是屬於非特
定對象(SI)語音識別系統。所以所有的設定再出廠前已經設定完成,
所以只要對紅標所指的麥克風下達所設的語音指令即可動作。
圖 4-3-1 99SPR
系統所設定的指令為
說”開燈”即可使系統讓環境亮度變亮
說”關燈”即可使系統讓環境亮度變暗
37
第 五 章
結論
現今,因為科技的進步,使得人類的生活越來越方便。就如
“ Nokia ”所說的 科技始終來自人性,因為人們的惰性激發了科技
的進步所以現在的科技都已人性為主軸發展 。
而經過這次專題研究,對於我們的程式撰寫、電路設計與電路製
作都有很大的進步,也對現代人們的需求更加的了解,而本研究以保
護人類的靈魂之窗“ 眼睛 ”做為出發點讓室內燈具變得更人性化。
將自動偵測的光敏電阻,控制的藍芽模組跟語音辨識模組做個結合,
使得任何人能以更輕鬆的方式去改變家中的環境亮度,跳脫以往必須
起身尋找開關,才能改變燈光的情況。讓生活變得更加的便利,創造
出一個高智慧環境的居家環境。
38
第 六 章
參考文獻
[1] 飆機器人,普特企業有限公司 –
http://www.playrobot.com/cart/
[2] 最簡單的互動設計 Arduino一試就上手,孫駿榮/吳明展/盧聰勇,
碁峰資訊
[3] 99 新電子科技
http://99xdz.com/
[4] Cooper Maa
http://coopermaa2nd.blogspot.tw/
[5] 中央研究院計算中心
http://ascc.sinica.edu.tw/iascc/
http://99xdz.com/