使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統...

65
-I- 中國文化大學商學院資訊管理學系研究所 碩士論文 Master of Business Administration Thesis Department of Information Management College of Business Chinese Culture University 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 Low-cost, at-home Security system using Wii Remote and Lego Mindstorms NXT 指導教授:蔡敦仁教授 Advisor: Professor Dwen-Ren Tsai 研究生:徐國凱 Graduate Student: Kuo-Kai Hsu 中華民國 100 6 June 2011

Transcript of 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統...

Page 1: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-I-

中國文化大學商學院資訊管理學系研究所

碩士論文

Master of Business Administration Thesis

Department of Information Management

College of Business

Chinese Culture University

使用 Wii Remote 與 Lego Mindstorms NXT 的低成本

居家用保全系統

Low-cost, at-home Security system using Wii Remote and Lego

Mindstorms NXT

指導教授:蔡敦仁教授

Advisor: Professor Dwen-Ren Tsai

研究生:徐國凱

Graduate Student: Kuo-Kai Hsu

中華民國 100 年 6 月

June 2011

Page 2: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-II-

論文名稱:使用 Wii Remote 與 Lego 總頁數:054

Mindstorms NXT 的低成本居家用保全系統

校(院)所組別:中國文化大學資訊管理學系碩士在職專班

畢業時間及提要別:九十九學年度第二學期碩士學位論文提要

研究生:徐國凱 指導教授:蔡敦仁

論文提要內容:

居家用保全系統之目的是監測家中環境的異常,包括穩定的

感測器與遠端監控的功能。本研究使用成本低、容易更換組成元

件的樂高 Mindstorms NXT 機器人套件組以及任天堂 Wii Remote

控制器與 LabVIEW 程式語言製作居家用保全系統,使用無線藍

牙技術將系統所監測到的環境資訊正確傳回遠端監控主機。此外

亦能透過監控主機下達指令給系統,達到更多元的應用。

低成本的系統開發框架,亦為本研究之目的,我們可以輕易

更換系統感測元件,重複使用監控的中間軟體,節省系統開發的

成本。

關鍵字:居家保全系統、Wii Remote、Mindstorms NXT、藍牙、

LabVIEW

Page 3: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-III-

Low-cost, at-home Security system using Wii Remote and Lego Mindstorms NXT

Graduate Student: Kuo-Kai Hsu Advisor: Professor Dwen-Ren Tsai

Chinese Culture University

ABSTRACT

The purpose of at-home security systems used to monitor the abnormal home

environment, including the stable sensors and remote monitoring. The use of low cost,

easy replacement of components composed of LEGO Mindstorms NXT robot tool kit

and the Nintendo Wii Remote controller and LabVIEW program making this at-home

security system, using wireless Bluetooth technology to provide system return the

correct information to the Remote monitoring host.

With low-cost system development framework, also purpose of this study, we can

easily replace the sensors, re-used monitoring middleware, saving the cost of system

development.

Keywords: Home Security System, Wii Remote, Mindstorms NXT, Bluetooth,

LabVIEW

Page 4: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-IV-

誌 謝 辭

碩士班求學階段,幸蒙恩師 蔡敦仁所長之悉心指導,在恩

師的諄諄教誨下,學生在為人處事、專業領域及學術見解上獲益

良多,師恩浩翰,無以回報,在此謹向恩師致上最高的敬意與謝

忱。

同時非常感謝口試委員文化大學資科系張志堅老師、國家資

通安全會報技術服務中心侯猷珉老師。以及文化大學資科系張耀

鴻老師、文化大學資管所郭建良老師對於論文上的指導,促使本

論文更臻完善。在此呈上最深的謝意。

研究進行期間,感謝同班同學在各方面給我的協助與關懷,

使得本論文得以順利完成。

最後,深深感謝辛苦養育我的父母親,提攜我的姊姊以及我

相互扶持的妻子,這些年來的支持鼓勵與關心,讓我無後顧之憂

放心求學,才得以順利完成學業,謹以此論文獻給我最深愛的家

人。

Page 5: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-V-

目錄

中文摘要 ........................................................................................ II

英文摘要 ....................................................................................... III

誌謝辭 ....................................................................................... IV

目錄 ........................................................................................ V

表目錄 ....................................................................................... IX

圖目錄 ........................................................................................ X

第一章 緒論 .................................................................................. 1

1.1 研究背景與動機 ............................................................... 1

1.2 研究目的 .......................................................................... 3

1.3 文獻回顧 .......................................................................... 4

1.4 研究步驟 .......................................................................... 7

1.5 論文架構 .......................................................................... 8

第二章 相關研究 .......................................................................... 9

2.1 Physical Computing .......................................................... 9

2.2 LEGO Mindstorms NXT 沿革 ......................................... 10

2.2.1 NXT 伺服馬達 ...................................................... 13

2.2.2 NXT 官方感測器................................................... 14

2.2.3 I2C 協定(Inter Integrated Circuit) ........................... 18

2.3 可控制 NXT 的程式語言 ............................................... 18

2.3.1 leJOS NXJ ............................................................. 20

2.3.2 NXC ...................................................................... 20

2.3.3 RobotC .................................................................. 20

2.3.4 LabVIEW .............................................................. 21

Page 6: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-VI-

2.3.5 MSRDS ................................................................. 21

2.4 無線網路與 ISM 頻段 .................................................... 21

2.5 無線網路的層級 ............................................................. 22

2.5.1 藍牙技術 ............................................................... 23

2.6 Wii .................................................................................. 23

2.6.1 Wii Remote ............................................................ 24

第三章 實驗系統 ........................................................................ 26

3.1 實驗硬體介面................................................................. 26

3.2 實驗軟體介面................................................................. 27

第四章 系統分析 ........................................................................ 30

4.1 NXT 之系統功能介紹 .................................................... 30

4.1.1 連線取得 NXT 主機資訊 ...................................... 30

4.1.2 窗戶開啟偵測 ....................................................... 32

4.1.3 訪客報知偵測 ....................................................... 33

4.1.4 分貝開關 ............................................................... 34

4.2 Wii Remote 之系統功能介紹 ......................................... 35

4.2.1 連線取得 Wii Remote 資訊 ................................... 36

4.2.2 利用 Wii Remote 遙控 NXT .................................. 38

4.2.3 使用紅外線攝影機確保監控目標位置.................. 40

4.2.4 監控目標傾倒偵測 ................................................ 42

4.3 遠端監控 ........................................................................ 44

第五章 實驗結果 ........................................................................ 45

5.1 低成本的系統框架 ......................................................... 45

5.1.1 感測器層(Sensors Level) ....................................... 46

Page 7: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-VII-

5.1.2 驅動程式層(Drivers Level) .................................... 46

5.1.3 資料連結層(Data Link Level) ................................ 46

5.1.4 中間軟體層(Middleware Level) ............................. 47

5.1.5 應用軟體層(Application Level) ............................. 47

5.2 測試案例 ........................................................................ 47

5.3 測試結果 ........................................................................ 48

第六章 結論與未來展望 ............................................................. 49

6.1 結論 ................................................................................ 49

6.2 未來展望 ........................................................................ 50

參考文獻 ....................................................................................... 51

Page 8: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-VIII-

表目錄

表 1 - 1 保全業者針對家庭用戶收費標準表 ...................... 2

表 2 - 1 RCX 與 NXT 硬體規格比較表 ............................. 12

表 2 - 2 NXT 伺服馬達之輸入電壓與消耗電流表 ............ 14

表 2 - 3 NXT 顏色感測器回傳值 ...................................... 16

表 2 - 4 可控制 NXT 程式語言之比較表 .......................... 19

表 3 - 1 離線控制模式/直接控制模式比較表 .................... 29

表 5 - 1 系統測試結果一覽表 ........................................... 48

Page 9: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-IX-

圖目錄

圖 1 - 1 研究步驟圖 ............................................................ 7

圖 2 - 1 Physical Computing Infrastructure ........................... 9

圖 2 - 2 RCX 主機 ............................................................. 11

圖 2 - 3 NXT 主機 ............................................................. 11

圖 2 - 4 NXT 伺服馬達 ...................................................... 13

圖 2 - 5 觸碰感測器........................................................... 14

圖 2 - 6 聲音感測器........................................................... 15

圖 2 - 7 光感測器 .............................................................. 15

圖 2 - 8 顏色感測器........................................................... 16

圖 2 - 9 超音波感測器 ....................................................... 17

圖 2 - 10 溫度感測器 ......................................................... 17

圖 2 - 11 ISM 通訊頻段 ..................................................... 22

圖 2 - 12 無線網路層級架構示意圖 .................................. 23

圖 2 - 13 Wii Remote Plus .................................................. 24

圖 2 - 14 紅外線攝影機整合晶片 ...................................... 24

圖 3 - 1 Wii Remote 系統各部元件與互動反應 ................. 26

圖 3 - 2 Wii Remote 的 XYZ 三軸 ..................................... 27

圖 3 - 3 NXT 系統的組成元件與 I/O ................................ 27

圖 3 - 4 NXT Module 的 NXT Robotics 指令選單 ............. 28

圖 4 - 1 連線取得 NXT 主機資訊流程圖 .......................... 30

圖 4 - 2 連線取得 NXT 主機資訊程式 .............................. 31

圖 4 - 3 連線取得 NXT 主機資訊之監控畫面 ................... 31

圖 4 - 4 窗戶開啟偵測流程圖 ........................................... 32

Page 10: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-X-

圖 4 - 5 窗戶開啟偵測程式 ............................................... 32

圖 4 - 6 窗戶開啟偵測之監控畫面 .................................... 32

圖 4 - 7 訪客報知偵測流程圖 ........................................... 33

圖 4 - 8 訪客報知偵測程式 ............................................... 33

圖 4 - 9 訪客報知偵測之監控畫面 .................................... 34

圖 4 - 10 分貝開關流程圖 ................................................. 34

圖 4 - 11 分貝開關程式 ..................................................... 35

圖 4 - 12 分貝音量監測畫面 ............................................. 35

圖 4 - 13 連線取得 Wii Remote 資訊流程圖 ..................... 37

圖 4 - 14 連線取得 Wii Remote 資訊程式 ......................... 37

圖 4 - 15 連線取得 Wii Remote 資訊之監控畫面 .............. 38

圖 4 - 16 超音波感測器遙控車.......................................... 39

圖 4 - 17 利用 Wii Remote 遙控 NXT 流程圖 ................... 39

圖 4 - 18 利用 Wii Remote 遙控 NXT 程式之局部 ............ 40

圖 4 - 19 利用 Wii Remote 遙控 NXT 之監控畫面 ............ 40

圖 4 - 20 Wii Remote 與 IR LED 矩陣 ............................... 41

圖 4 - 21 IR LED 發射紅外線 ............................................ 41

圖 4 - 22 紅外線攝影機監控目標位置流程圖 ................... 41

圖 4 - 23 紅外線攝影機監控目標位置程式 ....................... 42

圖 4 - 24 紅外線攝影機監控目標(4 點正常) ..................... 42

圖 4 - 25 紅外線攝影機監控目標(2 點不正常) ................. 42

圖 4 - 26 監控目標傾倒偵測流程圖 .................................. 43

圖 4 - 27 監控目標傾倒偵測程式之局部 .......................... 43

圖 4 - 28 監控目標直立狀態 ............................................. 43

Page 11: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-XI-

圖 4 - 29 監控目標傾倒狀態 ............................................. 43

圖 4 - 30 遠端監控網頁 ..................................................... 44

圖 5 - 1 低成本的系統框架圖 ........................................... 45

Page 12: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-1-

第一章 緒論

1.1 研究背景與動機

比爾蓋茲在 2007 年的 Scientific American 發表了一篇文章『A

Robot in Every Home』(Gates, 2007),他認為機器人將會和個人電

腦一樣,成為每個家庭不可或缺的一部份。文章中他描述一個上

班族,利用網路監看家中的電腦並和家中的機器人進行無線通訊,

這些家用機器人替他打掃、摺衣服、餵食生病臥床的母親、保護

家中的安全。真實世界裡,機器人也肩負著許多的任務如:拆除

軍事地區炸彈、海底探勘、裝配汽車等。

機器人產業的發展,和三十年前的計算機產業面臨同樣的問

題,機器人製造商沒有標準的作業系統,可以讓流行的應用程式

運行在各種設備上。標準化的機器人處理器和其他硬體相當少,

程式碼從一台機器可以直接應用到另一台的數量有限。每當有人

想建造一個新的機器人,他們通常要從頭開始。事實上,建造具

有自動化功能的機器人,需要深入瞭解多項領域,包括機械工程、

控制理論、人工智慧、計算機科學與電子學等,如何能降低進入

此研究領域的成本?為本研究的動機之一。

Page 13: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-2-

依據我國保全業法第四條第一項規定(「保全業法」,2003),

保全業得經營左列業務:關於辦公處所、營業處所、廠場、倉庫、

演藝場所、競賽場所、住居處所、展示及閱覽場所、停車場等防

盜、防火、防災之安全防護。而保全業法第八條第一項第二款規

定,經營保全業應有左列設備:自動通報紀錄情況管制系統設備。

居家場所的保全系統發展迄今,以市面上保全業者所提供的

家庭防護解決方案為例,器材賣斷或租賃之基本費用仍屬高昂,

如表 1 - 1。

現行居家保全業者的收費方式,施工的成本逾標準安裝後費

用開始酌量增加,本研究將 LEGO Mindstorms NXT 安裝不同的

感測器,包含 Wii Remote,結合個人電腦並使用藍牙無線通訊方

式,搭配控制軟體,讓使用者能實現居家保全功能。為本研究的

動機之二。

表 1 - 1 保全業者針對家庭用戶收費標準表

新光保全租賃收費標準 中興保全租賃收費標準

標準配備以內,每月服務費 2,000 元起

(未稅)、施工材料費 5,000 元起(未

稅),保證金 5,000 元

月繳 3000 元(稅捐 150 元)、專線架線費

3000 元、專線月租費 300 元(稅捐 15

元)、工事費 6750 元(稅捐 338 元)、契

約保證金 5000 元

資料來源:居家保全系統。2010 年 12 月 30 日,取自新光保全:

http://www.sks.com.tw/index.php?option=com_content&view=article&id=28&Itemid=1

Page 14: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-3-

1.2 研究目的

根據本研究之研究背景與動機,我們提出一個低成本的系統

控制框架,透過 LEGO Mindstroms NXT 套件的容易組裝性,並

結合 LabVIEW 開發技術,使用者得以重複組裝硬體以及重複調

整程式設定,達到重複使用的概念。

另外,我們提出室內環境中,一套居家用的保全系統,利用

不同的監測器感測環境中的變化,微控制器根據程式做出預設的

正確回應,達到財產保全之目的。

Page 15: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-4-

1.3 文獻回顧

居家用保全系統大致提供以下幾種功能(鄭帄守、蔡尚峻、吳

建輝、楊俊明、吳旭斌,2006)。防止入侵:保全系統可透過感測

器感應人員的侵入,或裝設門口對講機與監視設備判斷人員來訪

之用意,並可適時的發出警報,嚇阻來意不善之入侵者。降低有

心人士惡意入侵。火災預警:火災的發生,往往都是由星星之火

所引發,一旦發生火災對於我們的財物與生命安全皆構成很大的

威脅,甚至可能影響周遭鄰居生命財產安全,若是透過保全系統

的偵煙器或是熱感知器,讓我們可以在最短的時間內得知火災的

發生,並能掌握第一救災時間,如此可以降低人員與財物的損失。

緊急通報:帅兒與老人通常是家庭中最需要被照顧的家庭成員,

但往往此兩種族群的家庭成員,卻也是最容易被單獨滯留於家中

的成員,一旦遇到緊急狀況發生時,要是能夠按押緊急按鈕,就

可以透過保全系統通知相關人員進行處理。

針對居家室內環境的監測資訊傳遞,使用無線網路為傳遞媒

介是可行的傳輸方式(J. S. Lee, Lin, & Tzeng, 2010; Tseng, Wang,

& Cheng, 2005; Tseng, Wang, Cheng, & Hsieh, 2007),原因是室內

環境較為單純,傳輸距離適中,建置成本低,無線網路可避免線

Page 16: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-5-

路外露因而造成之不美觀與容易被破壞等缺點。

使用藍牙技術作為傳輸方式(郭志霄, 2009)則因為藍牙具有

針對區域內的設備進行查詢的服務發現協定(Service Discovery

Protocol, SDP),可以讓不同的裝置彼此互相溝通。

搭配 LEGO Mindstroms NXT 套件出售的官方軟體 NXT-G 是

以 LabVIEW 為基礎發展而成,使用 LabVIEW 為工具學習控制

NXT 套件的學生學習成效較佳,比較基準為參加此課程之前對機

電(Mechatronics)的認知(Gomez-de-Gabriel, Mandow,

Fernandez-Lozano, & Garcia-Cerezo, 2011)。

研究者 Johnny Chung Lee (J. C. Lee, 2008)將 Wii Remote 從遊

戲機控制器發展出其他可行的應用,創造了後續相當多的研究。

例如指揮家的手勢運動追蹤(Bradshaw & Kia, 2008)、多點觸控的

教學工作站(Cheong, Yap, & Chan, 2010)、低成本的位置管理系統

(Tas, Altiparmak, & Tosun, 2009)、以手勢操作應用程式的介面設計

(Lin, Nishino, Kagawa, & Utsumiya, 2010)、紅外線室內定位技術與

運動控制應用於智慧建築之研究(陳柏維, 歐廣順, 林韋澄, & 陳

國聲, 2009)。這些研究均使用了 Wii Remote 的紅外線攝影機

(Infrared Camera)與加速度計(Accelerometers)。和其他 3D 輸入裝

Page 17: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-6-

置相比較,Wii Remote 售價最低(Wingrave, et al., 2010)。

總結居家保全之功能及各論文所實作者,故本研究使用藍牙

無線網路協定為訊息傳輸方式,撰寫 LabVIEW 程式進行控制

LEGO Mindstroms NXT 套件與 Wii Remote 控制器,接收各項感

測器所監測的環境類比訊號,完成多項居家保全系統所具備之功

能。

Page 18: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-7-

1.4 研究步驟

本研究之步驟包含文獻研讀與分析、組裝硬體、撰寫程式並

實驗,如圖 1 - 1:

圖 1 - 1 研究步驟圖

Page 19: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-8-

1.5 論文架構

本論文為研究低成本居家用的保全系統。論文架構說明如

下:

第一章『緒論』:介紹本論文的研究動機與目的。

第二章『相關研究』:介紹本論文的相關研究知識。

第三章『實驗系統』:介紹實驗系統的設定步驟。

第四章『系統分析』:系統分析與硬體控制器設計。

第五章『實驗結果』:執行與實驗結果。

第六章『結論與未來展望』:論文結論分析與檢討。

Page 20: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-9-

第二章 相關研究

2.1 Physical Computing

Physical Computing 是指使用軟硬體建立互動式實體系統,組

成元件包括可以感測外在類比世界的訊號,與使用者溝通的人機

介面,能夠對應命令產生相對回應動作的致動器,最重要的是包

含一個處理核心,通常為單晶片微控制器。此名詞經常用以闡述

設計專案當中使用感測器(sensors)與微控制器(microcontrollers)將

類比輸入轉換到軟體系統內,並控制機電設備如馬達、照明等硬

體系統。如圖 2 - 1。

圖 2 - 1 Physical Computing Infrastructure

資料來源:(“Physical computing,”2011)

相關研究指出,Physical Computing 應用於下列三個領域具有

Page 21: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-10-

優勢:老人與殘障人士生活輔助系統(Sensor information systems

for assisted living , SISAL)、人為與自然災害緊急回報系統

(Emergency response systems for natural or man-made disasters)、國

土重要基礎設施保安系統(Protecting critical infrastructures at the

national level)。(Stankovic, Lee, Mok, & Rajkumar, 2005)

2.2 LEGO Mindstorms NXT 沿革

在 1998 年由樂高公司和美國麻省理工學院的媒體實驗室合

作推出了第一個可程式積木元件 RCX,如圖 2 - 2。零售市場命名

為 Robotics Invention System (RIS),套件中具有一個可程式積木

(programmable brick),兩個觸碰感測器,一個光感測器與兩個直

流馬達,零售市場套件所搭配的程式語言是命令列方式的 RCX

Code。

因為學校教育市場需要學習更進一步的程式語言來操控

RCX,最好是圖形化的程式介面方便學生學習,所以樂高公司和

美國 Tufts 大學合作,使用美商國家儀器股份有限公司之

LabVIEW 軟體為基礎,開發出 ROBOLAB 圖形化軟體,可參考

Robolab@ceeo 網站 (http://www.ceeo.tufts.edu/robolabatceeo/),並

能更換第三方機器韌體與使用其他程式語言,讓樂高公司正式跨

Page 22: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-11-

足教育領域。

接著在 2006 年 7 月,新一代的機器人核心 Lego Mindstorms

NXT 正式發表 ("Lego Mindstorms," 2011),其搭配了更高階的微

處理器,套件中具有一個 NXT 可程式積木,如圖 2 - 3。一個觸

碰感測器,一個光感測器,一個聲音感測器,一個超音波感測器

與三個伺服馬達,程式軟體則改用 NXT-G 1.0 版本。

目前最新的 Lego Mindstorms NXT 2.0 則是在 2009 年 8 月問

世,可至(http://mindstorms.lego.com/en-us/Default.aspx)查詢,套

件內 NXT 可程式積木規格保持不變,另外則是新推出了顏色感

測器包含分辨顏色,當成光感測器使用,用於燈泡發光等三種功

能,而程式軟體則改版成為 NXT-G 2.0 版本。表 2 - 1 是 RCX 與

NXT 的硬體規格比較表。

圖 2 - 2 RCX 主機 圖 2 - 3 NXT 主機

Page 23: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-12-

表 2 - 1 RCX 與 NXT 硬體規格比較表

上市年份 1998 年 2006 年

微處理器 8 位元 Hitachi H8/3292 微處理器 32 位元 ARM7 微處理器

8 位元 AVR 輔助微處理器

記憶體 16 Kbytes ROM

32 Kbytes RAM

256 Kbytes 快閃記憶體

64 Kbytes RAM

傳輸方式

紅外線傳輸 USB2.0 (PC-NXT)

Bluetooth 藍牙

(Device-NXT,NXT-NXT)

連接線 2 芯傳輸 6 芯傳輸,支援 I2C 傳輸協定

顯示螢幕 43 個顯示單位 100 × 64 像素的可程式化液晶顯

示面板

輸入端 3 組 4 組

輸出端 3 組 3 組

馬達種類 直流馬達 伺服馬達

電力來源 V1.0 版具有外接電源

V1.5、V2.0 版使用 AA 電池×6

AA 電池×6

或使用專用充電鋰電池

感測器

舊型觸碰感測器、舊型光感測器、

舊型溫度感測器、舊型旋轉感測

器。

觸碰感測器、光感測器、

聲音感測器、超音波感測器、顏

色感測器、溫度感測器。

※第三方廠商:紅外線感測器、

指北針感測器、加速度感測器、

陀螺儀感測器等。

Page 24: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-13-

2.2.1 NXT 伺服馬達

樂高公司所生產的馬達種類繁多,其相同點為使用 DC9V 的

輸入電壓,如表 2 - 2。當中 NXT 伺服馬達是輸出扭矩最大(失速

扭矩 50 N.cm),重量也最重(80g)的一款馬達,耗電量也相對較高

(失速時電流 2A) ,如圖 2 - 4。另一方面,NXT 伺服馬達是其中

唯一配置有角度編碼器(Encoder)的馬達,利用角度編碼器將馬達

的轉速、扭矩等物理量檢出,回報給控制器將回授訊號作運算,

達到控制伺服馬達的旋轉角度,解析度達一度角,因而能更精準

的控制馬達。

圖 2 - 4 NXT 伺服馬達

圖片來源(treballrecerca4terri.blogspot.com)

Page 25: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-14-

表 2 - 2 NXT 伺服馬達之輸入電壓與消耗電流表

Input voltage

輸入電壓

Torque

扭矩

Rotation

speed

轉速

Current

電流

Mechanical

power

機械能

Electrical

power

電能

Efficiency

效率

4.5 V 16.7 N.cm 33 rpm 0.6 A 0.58 W 2.7 W 21.4 %

7 V 16.7 N.cm 82 rpm 0.55 A 1.44 W 3.85 W 37.3 %

9 V 16.7 N.cm 117 rpm 0.55 A 2.03 W 4.95 W 41 %

12 V 16.7 N.cm 177 rpm 0.58 A 3.10 W 6.96 W 44.5 %

資料來源:(http://www.philohome.com/motors/motorcomp.htm)

2.2.2 NXT 官方感測器

樂高公司官方至 2011 年一共生產 6 種感測器,其他的第三方

廠商如 HiTechnic、Vernier、Mindsensors 等也為 LEGO NXT 生產

了對應的感測器套件。茲將樂高公司官方的感測器介紹如下:

2.2.2.1 觸碰感測器

圖 2 - 5 觸碰感測器

觸碰感測器(Touch Sensor)當橘色開關被壓下(Pressed)或放開

(Released)的狀態時,透過輸入埠來設定(是/否)輸出埠為真。

因為感測器是使用類比轉數位的轉換器來讀取,所以原始數值是

可被利用的。如圖 2 - 5。

Page 26: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-15-

2.2.2.2 聲音感測器

圖 2 - 6 聲音感測器

聲音感測器(Sound Sensor)記錄環境中聲音的帄均音量

(Volume)而非音頻(Frequency),其測量的聲音壓力單位有

dB(decibels)與 dBA(調整後的 decibels,人類耳朵最聽得到的範圍

約 3-6kHz),此一感測器使用類比轉數位的轉換器來讀取,原始

數值可以被利用。如圖 2 - 6。

2.2.2.3 光感測器

圖 2 - 7 光感測器

光感測器(Light Sensor)用途相當廣泛,其一可以測量來自一

個方向的光源強度,其二光感測器前方有兩個 LED 燈泡,可以打

開一個燈泡發光以增加反射光線的數目,並由另一個接收反射回

Page 27: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-16-

來的光,使得在測量某一特定物體的光度時,情況許可下得以用

於測量距離。光感測器使用類比轉數位的轉換器來讀取,原始數

值可以被利用。如圖 2 - 7。

2.2.2.4 顏色感測器

圖 2 - 8 顏色感測器

顏色感測器(Color Sensor)是2009年和NXT 2.0版一起推出的,

取代原本的光感測器來偵測各種顏色,如表 2 - 3。原本光感測器

是使用類比方式回傳反射光值,顏色感測器則是將光值經過計算

後回傳顏色值,其使用 I2C 通訊協定來傳輸資料,所以沒有原始

數值。如圖 2 - 8。

表 2 - 3 NXT 顏色感測器回傳值

顏色 黑 藍 綠 黃 紅 白

數值 1 2 3 4 5 6

Page 28: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-17-

2.2.2.5 超音波感測器

圖 2 - 9 超音波感測器

超音波感測器(Ultrasonic Sensor)是一種 I2C 數位感測器,其

利用發出一個超音波的脈波然後計算回聲回彈的時間是多久來估

算與物體之間的距離,單位是公分,但可以利用轉換輸入埠來轉

換成英吋,實際使用上超音波感測器的範圍約在 5 公分到 220 公

分,因為是使用 I2C 和 NXT 連接,所以超音波感測器沒有原始數

值。如圖 2 - 9。

2.2.2.6 溫度感測器

圖 2 - 10 溫度感測器

溫度感測器(Temperature Sensor)是數位溫度感測器,可測量

的溫度範圍從攝氏-40oC 至 125oC。因為是使用 I2C 和 NXT 連接,

所以溫度感測器沒有原始數值。如圖 2 - 10。

Page 29: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-18-

2.2.3 I2C 協定(Inter Integrated Circuit)

LEGO NXT 的四個感測器埠支援 I2C(內部整合電路)協定,相

關資訊如(http://en.wikipedia.org/wiki/I2C),其正確讀音為

(I-Squared-C),由荷蘭 Philips 公司於 1980 年研發,當時目標是連

接消費型家電的低速周邊裝置。內部整合電路是一種 IC 對 IC 的

通訊協定,優點是所使用的線數目少(只有三條,SDA、SCL 與

GND),而且又可以控制多個週邊裝置元件 IC,速度也很快,

Standard mode 為 100 Kbit/s,Fast mode 為 400 Kbit/s,High speed

mode 為 3.4 Mbit/s。

2.3 可控制 NXT 的程式語言

截至目前為止,能控制 NXT 的程式與軟體約有五十餘種,

可劃分成圖形介面與文字介面兩大型態。圖形化介面環境以樂高

公司官方的 NXT-G 最常見之外,LabVIEW 則是 NXT-G 另一主要

延伸功能的提供者,其他較著名的還有微軟推出的 Microsoft

Robotic Developer Studio。於文字介面環境較著名的則有

NXC(Not eXactly C)、RobotC、leJOS(Java)等。可控制 NXT 程式

語言之比較表,如表 2 - 4。

Page 30: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-19-

表 2 - 4 可控制 NXT 程式語言之比較表

項目 NXT-G

零售版

NXT-G

教育版

RoboLab NBC NXC RobotC NI

LabVIEW

Toolkit

leJOS

NXJ

pbLua

語言型態 Graphic Graphic Graphic Assembly not

exactly

C

C Graphic Java Lua

韌體 Standard Standard Standard Standard Standard Standard Standard Custom Custom

整合開發

環境

Yes Yes Yes Yes Yes Yes 需先安裝

LabVIEW

Eclipse、

Netbeans

外部工具

No

Windows Yes Yes Yes Yes Yes Yes Yes Yes Yes

Mac OSX Yes Yes Yes Yes Yes Not Yet Yes Yes Yes

Linux No No No Yes Yes No No Yes Yes

Events No No Yes No No Yes No Standard

Java

events

Multithreading Yes Yes Yes Yes Yes Yes Yes Yes

Bluetooth

Brick to PC

Yes Yes No Yes Yes Yes Yes Yes Yes

Bluetooth

Brick to Brick

Yes Yes No Yes Yes Yes Yes Yes Yes

Bluetooth

Brick to Other

Device

No No No No No Yes No Yes Yes

I2C Support Yes Yes Yes Yes Yes Yes Yes

File System Yes Yes Yes Yes Yes Yes Yes Yes Not Yet

Floating Point No No Yes No No Yes No Yes

資料紀錄 No No Yes No No Yes No Yes No

支援第三方設

Yes Yes Yes Yes Yes

適合使用

對象

NXT 初

學者或

完成簡

單任務

學校開

始使用

NXT

學校是

由 RCX

升級到

NXT

進階程式

設計師

C 程式

設計師

需要最

高速的

應用程

LabVIEW

的用戶或

需要加強

NXT-G

Java 程

式設計

教育用

資料來源:(http://www.teamhassenplug.org/NXT/NXTSoftware.html)

Page 31: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-20-

2.3.1 leJOS NXJ

leJOS 是針對 NXT 所開發的 Java 程式環境,NXJ 則是處理

Java 原始檔的虛擬機器。leJOS 正因為使用標準 Java 語法,在跨

帄台整合上有較佳的支援性,唯需將NXT韌體更換成 leJOS韌體。

相關資訊請見(http://lejos.sourceforge.net/)

2.3.2 NXC

NXC (Not eXactly C)是 John C. Hansen 開發的類 C 語言,因

為 NXC 依照 NXT 規格對應了 C 語言的語法,開發環境則是提供

了 Bricx Command Center,完整支援了 NXT 自身的硬體功能與多

種第三方的感測器。相關網頁請見

(http://bricxcc.sourceforge.net/nbc/)

2.3.3 RobotC

RobotC 是美國卡內基美隆大學(Carnegie Mellon University )

所研發的 C 語言機器人開發環境,可控制 LEGO NXT 以及 VEX

等機器人,使用者需要付費,單一用戶 30 美元(可下載 30 天試用

版本)。網站資訊如(http://www.robotc.net/)

Page 32: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-21-

2.3.4 LabVIEW

LabVIEW 代表著 Laboratory Virtual Instrumentation

Engineering Workbench(實驗室虛擬儀器工程工作帄台),相關網站

如(http://www.ni.com/labview/),2006 年 NI(美商國家儀器公司)與

LEGO 共同推出的 NXT-G 的圖形化程式語言,便是以 LabVIEW

為核心,但因為 LabVIEW 的主要目標市場為自動化量測與虛擬

儀控,LEGO NXT 的模組只是正版軟體使用者的一小部分套件。

2.3.5 MSRDS

Microsoft Robotics Developer Studio(MSRDS)是微軟推出的

整合性機器人開發環境,亦提供圖型化的初學者介面,支援 iRobot

相關資訊如(http://www.irobot.com/)、Parallax 相關資訊如

(http://www.parallax.com/)與 NXT 等機器人,有免費的 MSRDS

2008 R3 Express Edition 可供下載。可參考

(http://www.microsoft.com/robotics/)。

2.4 無線網路與 ISM 頻段

1985 年美國聯邦通訊委員會(Federal Communications

Commission,FCC)為了滿足工業、科學與醫療的研究目的開放了

Page 33: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-22-

三個無線頻段,稱之為 ISM 頻段 (Industrial, Scientific and

Medical Bands),網頁資訊如

(http://en.wikipedia.org/wiki/ISM_band),允許無線設備在遵守規定

之下,不必申請政府執照即可使用。如圖 2 - 11。到了 1997 年 11

月,電機電子工程師學會(IEEE)鑑於無線網路的使用需求日益增

加,制訂了 IEEE 802.11 的標準。

圖 2 - 11 ISM 通訊頻段

2.5 無線網路的層級

IEEE 針對不同的網路層級,訂定了不同的無線網路通訊標準,

分別是 802.16,相關查詢(http://en.wikipedia.org/wiki/IEEE_802.16)

(Wireless Metropolitan Area Network,WMAN)、802.11(Wireless

Local Area Network,WLAN)、802.15(Wireless Personal Area

Page 34: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-23-

Network,WPAN),如圖 2 - 12 所示。

圖 2 - 12 無線網路層級架構示意圖

2.5.1 藍牙技術

藍牙(Bluetooth)起源於 1994 年,由易立信公司(Ericsson)開始

研究電話與電腦等週邊設備的無線網路溝通技術,以低成本、低

耗電量為目標,期望能與行動電話的快速發展結合。IEEE 在 2002

年也將藍牙技術加入 IEEE 802.15.1 的標準。相關資訊如

(http://bluetooth.com/Pages/Bluetooth-Home.aspx) 。

2.6 Wii

任天堂公司推出的第七代家用遊戲主機 Wii,在 2006 年 4 月

28 日官方網站宣布正式名稱,網站如

(http://www.nintendo.co.jp/wii/index.html)。『Wii』發音聽起來像是

『We』,強調該遊戲主機老少咸宜,其創新的控制器是乙組具有

Page 35: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-24-

震動與方位指向功能、內建喇叭的遙控器,讓遊戲的輸入操作得

以指向或揮動取代按鈕的操作。

2.6.1 Wii Remote

Wii 的主要控制器 Wii Remote,自 2011 年起增加 Motion Plus

動感強化器在內,改稱 Wii Remote Plus,相關資訊如

(http://www.nintendo.tw/wii_controllers.htm)。外型如電視遙控器。

如圖 2 - 13。其前端有一CMOS攝影機,可偵測紅外線,Wii Remote

將偵測到的紅外線光點轉換成影像帄面上的座標,透過藍牙連線

將座標點回傳給主機,遊戲便以座標來定位。

圖 2 - 13 Wii Remote Plus 圖 2 - 14 紅外線攝影機整合晶片

Wii Remote 內建的紅外線攝影機解析度達 1024×768(J. C.

Lee, 2008),製造商為台灣(Pixart)原相科技,100Hz 的刷新率與

45 度的水帄視野,可追蹤 4 個同步紅外光源。如圖 2 - 14。

Page 36: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-25-

Wii Remote 另內建三軸加速度與重力感測器,元件為

ADXL330,可測量+/-3g 的加速度,以加速度動作辨識系統的研

究亦被提出(鍾哲民, 2008),作為和影像辨識動作系統間的比較。

Page 37: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-26-

第三章 實驗系統

3.1 實驗硬體介面

本研究使用的感測器 Wii Remote 分解其組成元件與回饋方

式(Schou & Gardner, 2007),如圖 3 - 1。特別是輸入介面包含『動

作感應』與『紅外線指向』。

圖 3 - 1 Wii Remote 系統各部元件與互動反應

本研究亦使用 Wii Remote 內建之三軸加速度感測器來量測

空間之中的加速度,『動作感應』三軸方向標示如圖 3 - 2。分別

是:繞 x-軸的主動旋轉為(Roll),繞 y-軸的主動旋轉為(Pitch),

繞 z-軸的主動旋轉為(Yaw)。

Page 38: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-27-

圖 3 - 2 Wii Remote 的 XYZ 三軸

本研究另外應用的 LEGO NXT 可程式積木,其各元件的組

成如圖 3 - 3。除 USB 埠外,其餘各埠(Port 1~4、Port A~C)連接線

為 RJ12 標準。

圖 3 - 3 NXT 系統的組成元件與 I/O

3.2 實驗軟體介面

使用 LabVIEW2009 軟體版本,及 LabVIEW NXT Module 相

關資訊如(http://zone.ni.com/devzone/cda/tut/p/id/10608),如圖 3 - 4。

Page 39: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-28-

還有 LabVIEW interface to a Wii Remote,查詢相關訊息可至

(https://decibel.ni.com/content/docs/DOC-1353)。

美商國家儀器股份有限公司在 1986 年發表 LabVIEW 1.0 版

於蘋果電腦系統上,早期的目標是為了實現各種儀器的自動控制,

屬於圖形化程式語言,和傳統程式語言相較,LabVIEW 採用資料

流的概念,使得程式設計者能在構思流程圖時一併將程式撰寫的

工作完成,也因為 NXT-G 程式核心是 LabVIEW,自然使用

LabVIEW 的控制模組能更方便使用者選擇資料呈現的方式。

圖 3 - 4 NXT Module 的 NXT Robotics 指令選單

在 NXT Robotics 選單下的指令,可使用離線控制模式

Page 40: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-29-

(Remote Mode)執行,程式下載至 NXT 之後就由 NXT 獨力執行所

有運算,此模式會受 NXT 本身微晶片控制器的運算能力限制。

互相對應的是直接控制模式(Direct Mode),是由伺服電腦執行運

算後讓 NXT 執行對應的功能,可執行 LabVIEW 的所有指令,兩

者之比較如表 3 - 1:

表 3 - 1 離線控制模式/直接控制模式比較表

離線控制模式 直接控制模式

執行運算處理器 NXT 本身微晶片控制器 電腦 CPU

運算能力 弱 強

支援指令集 僅限 NXT Robotics 支援

指令

所有 LabVIEW 支援指令

執行程式時是否需要和

電腦連線

否 是

Page 41: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-30-

第四章 系統分析

4.1 NXT 之系統功能介紹

以下情境使用 NXT 模擬居家用保全系統之功能,並逐一介

紹系統流程與系統主功能概述。

4.1.1 連線取得 NXT 主機資訊

自動建立 NXT 與電腦之藍牙連線,並取得 NXT 主機電量(毫

伏,millivolts)狀態、NXT 主機名稱、可用記憶體空間、藍牙位址、

韌體版本等。

圖 4 - 1 連線取得 NXT 主機資訊流程圖

Find NXT

Create NXTObject

Get Battery Level

Get Device Info

Get Firmware Version

Destory NXTObject

Error Out Stop

Page 42: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-31-

圖 4 - 2 連線取得 NXT 主機資訊程式

圖 4 - 3 連線取得 NXT 主機資訊之監控畫面

Page 43: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-32-

4.1.2 窗戶開啟偵測

利用觸碰感測器是否壓下?作為判斷窗戶是否被打開的依據。

觸碰感測器被壓下時發出警報聲音並顯示燈號於電腦監控畫面。

圖 4 - 4 窗戶開啟偵測流程圖

圖 4 - 5 窗戶開啟偵測程式

圖 4 - 6 窗戶開啟偵測之監控畫面

發出警報 是否壓下?

Touch Sensor

顯示警告燈號 是

Page 44: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-33-

4.1.3 訪客報知偵測

依據超音波感測器傳回的距離,判斷是否有訪客?感應距離

若小於 60 公分則播放音樂表示有訪客。超音波感測器因不受環境

光線影響,於黑暗環境中亦可偵測。

圖 4 - 7 訪客報知偵測流程圖

圖 4 - 8 訪客報知偵測程式

發出音樂 距離測量

Ultrasonic Sensor

顯示目前距離 <60 公分

>60 公分

Page 45: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-34-

圖 4 - 9 訪客報知偵測之監控畫面

4.1.4 分貝開關

當環境中的音量(db)大於設定音量數值,啟動開關,音量小

於設定音量數值,關閉開關。

圖 4 - 10 分貝開關流程圖

<60db

分貝測量

Sound Sensor

顯示目前音量 >60db NXT 顯示圖形

NXT 不顯示圖形

Page 46: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-35-

圖 4 - 11 分貝開關程式

圖 4 - 12 分貝音量監測畫面

4.2 Wii Remote 之系統功能介紹

以下情境使用 Wii Remote 模擬居家用保全系統之功能,並逐

一介紹系統流程與系統主功能概述。

Page 47: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-36-

4.2.1 連線取得 Wii Remote 資訊

經由藍牙的服務搜尋協定(“Service Discovery Protocol,”2011),

伺服主機發現 Wii Remote 的裝置名稱為 Nintendo RVL-CNT-01,

以及 Wii Remote 支援的(“L2CAP,”2011)和(“HID,”2011)等協定資

訊。而 Wii Remote 上各種感測器的資料,必頇利用 HID 介面上

定義的各個報告描述元回報給伺服主機,主機也可以透過這個介

面控制 Wii Remote。想要使用 Wii Remote 進行不同的應用,就需

要有一個函式庫(library)來處理和傳送 HID 介面上的報告資料

流。

本研究使用可免費下載,由第三方所提供的 WiimoteLib 函式

庫 (http://wiimotelib.codeplex.com/),而LabVIEW參考此函式庫,

傳回所需的 Wii Remote 數值。

Page 48: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-37-

圖 4 - 13 連線取得 Wii Remote 資訊流程圖

圖 4 - 14 連線取得 Wii Remote 資訊程式

建立與 Wii Remote 藍牙連線

建立函式庫的參考

註冊 VI 程式,將資料傳回

將資料存放於”Wiimote State”

VI 程式非同步傳回資料並更新

中斷與 Wii Remote 的連結

Error Out Stop

Page 49: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-38-

圖 4 - 15 連線取得 Wii Remote 資訊之監控畫面

4.2.2 利用 Wii Remote 遙控 NXT

Wii Remote 的按鍵可對應至 NXT 的指令,在 4.1.3 小節的情

境為超音波感測,本小節則延伸為模擬結合 NXT 的超音波感測

器遙控車。如圖 4 - 16。

Page 50: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-39-

圖 4 - 16 超音波感測器遙控車

圖 4 - 17 利用 Wii Remote 遙控 NXT 流程圖

顯示目前距離

是否按下 B 鍵

建立主機與 NXT、 Wii Remote 藍牙連線

是 超音波測量距離

按下前進\後退 是

前進\後退

Page 51: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-40-

圖 4 - 18 利用 Wii Remote 遙控 NXT 程式之局部

圖 4 - 19 利用 Wii Remote 遙控 NXT 之監控畫面

4.2.3 使用紅外線攝影機確保監控目標位置

使用 Wii Remote 之紅外線攝影機,結合紅外線 LED 矩陣,

對特定目標進行監測,因為光的反射作用,若該目標之反射標籤

所反射回來之紅外線超過 Wii Remote 紅外線攝影機視線範圍

Page 52: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-41-

(1024×768),則監控畫面發出警示。

圖 4 - 20 Wii Remote 與 IR LED 矩陣 圖 4 - 21 IR LED 發射紅外線

圖 4 - 22 紅外線攝影機監控目標位置流程圖

建立主機與 Wii Remote 藍牙連線

是否超出監測範圍 是

發出警告

開啟 IR LED 矩陣

監測目標上標示四個反射標籤

Page 53: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-42-

圖 4 - 23 紅外線攝影機監控目標位置程式

圖 4 - 24紅外線攝影機監控目標(4點正

常)

圖 4 - 25紅外線攝影機監控目標(2點不

正常)

4.2.4 監控目標傾倒偵測

利用 Wii Remote 三軸速度感測器的變化,將 Wii Remote 與

監控目標結合,並垂直於地帄面。對特定目標進行監測,若 Pitch

值為 0,表示該目標已傾倒,監控畫面發出警示。

Page 54: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-43-

圖 4 - 26 監控目標傾倒偵測流程圖

圖 4 - 27 監控目標傾倒偵測程式之局部

圖 4 - 28 監控目標直立狀態 圖 4 - 29 監控目標傾倒狀態

建立主機與 Wii Remote 藍牙連線

是否 Pitch 值為 0 是

發出警告

將 Wii Remote 與監測目標結合,垂直於地面

監測 Wii Remote 之 Y 軸數值變化

Page 55: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-44-

4.3 遠端監控

本研究各項系統之監控程式畫面除可由伺服主機桌面顯示外,

亦可開啟 Web Server,當使用者離開家中時仍可利用網際網路透

過網頁方式遠端瀏覽與操作保全系統。如圖 4 - 30。

圖 4 - 30 遠端監控網頁

Page 56: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-45-

第五章 實驗結果

5.1 低成本的系統框架

本研究提出一個低成本的系統框架,如圖 5 - 1。我們得以加

入與重複使用框架中各層級的組件,方便使用者重新設計應用系

統,但不需每次重新設計中間軟體(Middleware),一方面節省開發

時間,同時降低開發成本。

圖 5 - 1 低成本的系統框架圖

我們將此框架由下往上進行系統架構及說明,分述如下:

Sensors Level NXT Sensors Wii Remotes Kinect others

Drivers Level Module for NXT WiimoteLib OpenNI APIs

Data Link Level Bluetooth/USB Bluetooth USB others

Middleware Level

Application Level Security System

Smart

Whiteboard

TV

Game others

Distance Detect IR Tracking Full Body Analysis

others

Page 57: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-46-

5.1.1 感測器層(Sensors Level)

感測器屬於硬體層,主要功能為測量類比世界的訊號,可以

是單一功能的感測器如溫度計、光照度計,或是複合功能的感測

器如 Wii Remote 同時具有紅外線與三軸加速度感測器。微軟公司

的Kinect(http://www.xbox.com/zh-TW/kinect)則同時具有深度感測

器與攝影機等。

5.1.2 驅動程式層(Drivers Level)

由於感測器廠商進行原始設計時,不一定會個別開發和個人

電腦系統連接的驅動程式,因此要獲得感測器傳回的資料,需要

使用開放源碼的驅動程式如 OpenNI,相關資訊如

(http://openni.org/),也有針對特定感測器硬體的模組如

WiiMoteLib。

5.1.3 資料連結層(Data Link Level)

感測器接收命令或傳送感測資料時,會依照與伺服主機間傳

輸距離與耗電量進行考量,進而選擇合適的網路連線協定,如藍

牙無線網路屬於 WPAN,距離涵蓋範圍約 10 公尺內,在個人化

電子物品的使用上相當廣泛。

Page 58: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-47-

5.1.4 中間軟體層(Middleware Level)

本研究實作相當多的中間軟體,其功能為同時與感測器通訊

以及同時間與使用者互動,而且經過模組化設計,使用者可以重

複使用中間軟體,例如紅外線追蹤的功能可應用於保全系統,亦

能應用於虛擬互動式電子白板。

5.1.5 應用軟體層(Application Level)

應用軟體是將感測器測得的資料分析運用後,使用者自然和

系統發生互動的介面,可以是體感電玩遊戲,也可以是具手勢辨

識(Gesture Recognition)功能的電子圖書。

5.2 測試案例

系統依照分析設計完成後,必頇進行測試藉以找出系統錯誤。

我們採用黑箱測試(“Black-box,”2011),測試人員不用理解待測系

統內部的行為,只需要使用測試案例去測試,觀察結果是否正確

即可。

測試路徑為系統程式各流程每個程序至少執行一次,每個程

式路徑分支亦至少執行一次,將觀察之執行結果紀錄。並確認是

否滿足保全系統之需求。

Page 59: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-48-

5.3 測試結果

本研究實作之低成本居家用保全系統,經過測試案例之測試,

結果如表 5 - 1 所示:

表 5 - 1 系統測試結果一覽表

情境設定 系統流程數 系統分支數 測試結果

連線取得 NXT 主機資

訊程式 6 0 測試無誤

窗戶開啟偵測程式 4 1 測試無誤

訪客報知偵測程式 4 1 測試無誤

分貝開關程式 4 1 測試無誤

連線取得 Wii Remote

資訊程式 6 1 測試無誤

Wii Remote 遙控 NXT

程式 9 2 測試無誤

使用紅外線攝影機確

保監控目標位置程式 5 1 測試無誤

監控目標傾倒偵測程

式 5 1 測試無誤

Page 60: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-49-

第六章 結論與未來展望

6.1 結論

本研究提出以 Lego Mindstorms NXT 為基礎之低成本之居家

保全系統,具有多重感測器,能依照使用者所設定之參數進行監

測,並利用藍牙協定進行傳輸,監控程式畫面除可由監控伺服主

機桌面顯示外,亦可使用 Web Server 透過網頁方式供遠端使用者

於網際網路上瀏覽與操作。

與 Wii Remote 感測器結合方面,除了將 Wii Remote 當成遙

控器由使用者手動操縱 NXT 套件之外。本研究亦使用紅外線攝

影機,追蹤特定目標所設置之光反射標籤,同時間最多可追蹤四

個光反射源,在居家環境中,可簡易判斷特定目標是否位移?或

是特定目標與紅外線攝影機之間的光線反射是否被阻斷?另外,

Wii Remote 三軸速度感測器可成為特定目標是否傾倒之判斷,上

述功能均屬於居家用保全系統的一環,可確保使用者的居家安

全。

Page 61: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-50-

6.2 未來展望

本研究提出之低成本居家用保全系統,對於使用者的居家環

境差異上具有建置彈性,主要是憑藉著多重感測器的組合與無線

傳輸技術,以及程式介面的容易使用。以下提出未來持續改進的

部分將可使本系統功能更為完善,並可延伸使用環境到營業場

所。

紅外線攝影機利用人類肉眼看不到紅外光的特性,因此在黑

暗中仍具有機器視覺(Machine Vision)系統的影像獲取功能,建議

未來研究可進一步加上影像處理的演算法與資料庫學習。智慧型

監視系統將可提供監測畫面中更多的判斷,如判斷入侵者屬於人

類或是動物(溫致絹, 2010)、人臉辨識(楊維珊, 2009)等功能。

本研究使用的超音波感測器,對於自走型態保全系統(丁穆仁,

2008)所需的避障(Collision Free)功能可以發揮效用。居家環境中

障礙物出現的位置不一且種類繁多。保全系統要進行自走型態的

巡邏,一種方式是按照預先規劃好的路線進行導航(Navigation),

另一種則是主動執行避障偵測,如何有效地進行障礙物規避,結

合影像辨識工具將可對環境中的影像即時(Real-Time)處理,將確

保巡邏的工作不致中斷。

Page 62: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-51-

參考文獻

中文部分:

丁穆仁(2008)。室內居家服務機器人之研究(未出版之碩士論

文)。國立中央大學,桃園縣。

全國法規資料庫(2003)。保全業法。2010 年 12 月 10 日,取自

http://law.moj.gov.tw/LawClass/LawAll.aspx?PCode=D0080081

郭志霄(2009)。具語音辨識遠端遙控之藍牙居家保全系統(未

出版之碩士論文)。聖約翰科技大學,新北市。

陳柏維、歐廣順、林韋澄、陳國聲(2009 年 11 月)。Wiimote 紅

外線室內定位技術與運動控制應用於智慧建築之研究。「中

國機械工程學會第二十六屆全國學術研討會」發表之論文,

國立成功大學。

楊維珊(2009)。入侵者偵測之半監督式人臉辨識系統(未出版

之碩士論文)。國立成功大學,台南市。

溫致絹(2010)。利用外形及紋理特徵做入侵者偵測(未出版之

碩士論文)。國立中央大學,桃園縣。

鄭帄守、蔡尚峻、吳建輝、楊俊明、吳旭斌(2006 年 2 月)。多功

能家庭保全監控與照護系統之研製。「2006 電子商務與數位

Page 63: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-52-

生活研討會」 發表之論文,國立高雄應用科技大學。

鍾哲民(2008)。加速度動作辨識系統之研究及應用(未出版之

博士論文)。國立成功大學,台南市。

英文部分:

Black-box. (2011, June 19). In Wikipedia, the free encyclopedia.

Retrieved June 21, 2011, from

http://en.wikipedia.org/wiki/Black_box

Bradshaw, D., & Kia, N. (2008). Tracking Conductor's Hand

Movements Using Multiple Wiimotes. Paper presented at the

Proceedings of Automated solutions for Cross Media Content

and Multi-channel Distribution, Florence, Italy.

Cheong, S., Yap, W., & Chan, M. (2010). Design and development of

a cost effective wiimote-based multi-touch teaching station.

Information Technology Journal, 9, 589-594.

Gates, B. (2007). A robot in every home. Scientific American

Magazine, 296(1), 58-65.

Gomez-de-Gabriel, J. M., Mandow, A., Fernandez-Lozano, J., &

Garcia-Cerezo, A. (2011). Using LEGO NXT Mobile Robots

With LabVIEW for Undergraduate Courses on Mechatronics.

Education, IEEE Transactions on, 54(1), 41-47.

HID. (2011, July 13). In Wikipedia, the free encyclopedia. Retrieved

July 14, 2011, from

http://en.wikipedia.org/wiki/Human_interface_device

L2CAP. (2011, July 3). In Wikipedia, the free encyclopedia.

Retrieved July 4, 2011, from

http://en.wikipedia.org/wiki/L2CAP#Logical_link_control_and_ada

ptation_protocol_.28L2CAP.29

Lee, J. C. (2008). Hacking the Nintendo Wii Remote. Pervasive

Computing, IEEE, 7(3), 39-45.

Lee, J. S., Lin, W. H., & Tzeng, H. J. (2010). DESIGN AND

IMPLEMENTATION OF A MOBILE HOME

SURVEILLANCE SYSTEM. [Proceedings Paper]. Journal of

the Chinese Institute of Engineers, 33(5), 669-680.

Page 64: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-53-

Lego Mindstorms. (2011, July 11). In Wikipedia, the free

encyclopedia. Retrieved July 11, 2011, from

http://en.wikipedia.org/wiki/Lego_Mindstorms

Lin, J., Nishino, H., Kagawa, T., & Utsumiya, K. (2010). Free hand

interface for controlling applications based on Wii remote IR

sensor. Paper presented at the Proceedings of the 9th ACM

SIGGRAPH Conference on Virtual-Reality Continuum and its

Applications in Industry, Seoul, South Korea.

Physical computing. (2011, May 22). In Wikipedia, the free

encyclopedia. Retrieved May 24, 2011, from

http://en.wikipedia.org/wiki/Physical_computing

Schou, T., & Gardner, H. J. (2007). A Wii remote, a game engine, five

sensor bars and a virtual reality theatre. Paper presented at the

Proceedings of the 19th Australasian conference on

Computer-Human Interaction: Entertaining User Interfaces,

Adelaide, Australia.

Service Discovery Protocol. (2011, July 3). In Wikipedia, the free

encyclopedia. Retrieved July 4, 2011, from

http://en.wikipedia.org/wiki/Bluetooth_protocols#Service_disc

overy_protocol_.28SDP.29

Stankovic, J. A., Lee, I., Mok, A., & Rajkumar, R. (2005).

Opportunities and obligations for physical computing systems.

Computer, 38(11), 23-31.

Tas, B., Altiparmak, N., & Tosun, A. S. (2009). Low cost indoor

location management system using infrared leds and Wii

Remote Controller. Paper presented at the Proceedings of

Performance Computing and Communications Conference

(IPCCC), Phoenix, Arizona.

Tseng, Y.-C., Wang, Y.-C., & Cheng, K.-Y. (2005). An integrated

mobile surveillance and wireless sensor (iMouse) system and

its detection delay analysis. Paper presented at the Proceedings

of the 8th ACM international symposium on Modeling, analysis

and simulation of wireless and mobile systems, Montréal,

Quebec, Canada.

Tseng, Y.-C., Wang, Y.-C., Cheng, K.-Y., & Hsieh, Y.-Y. (2007).

iMouse: An Integrated Mobile Surveillance and Wireless

Sensor System. Computer, 40(6), 60-66.

Page 65: 使用 Wii Remote Lego Mindstorms NXT 的低成本 居家用保全系統 …ir.lib.pccu.edu.tw/bitstream/987654321/19783/2/177gsweb.pdf · -II-論文名稱:使用. Wii Remote .

-54-

Wingrave, C. A., Williamson, B., Varcholik, P. D., Rose, J., Miller, A.,

Charbonneau, E, & LaViola Jr, J. J. (2010). The wiimote and

beyond: spatially convenient devices for 3D user interfaces.

IEEE Computer Graphics and Applications, 30(2),71-85.