崑山科技大學 -...

75
崑山科技大學 資訊工程系 專題製作報告 線上家電控制系統 ONLINE CONTROLLING SYSTEM OF HOME APPLIANCE 製作學生:4960E036 吳旻曄 4960E067 曾鈺茜 4960E085 陳世諭 4960E088 蕭崇凱 指導老師:黃慶祥 老師 中華民國1006

Upload: others

Post on 05-Mar-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

  • 崑山科技大學

    資訊工程系

    專題製作報告

    線上家電控制系統

    ONLINE CONTROLLING SYSTEM OF HOME APPLIANCE

    製作學生:4960E036 吳旻曄

    4960E067 曾鈺茜

    4960E085 陳世諭

    4960E088 蕭崇凱

    指導老師:黃慶祥 老師

    中華民國100年6月

  • 線上家電控制系統

    ONLINE CONTROLLING SYSTEM OF HOME APPLIANCE

    學 生:吳旻曄 Student: Wu, Min-Ye

    曾鈺茜 Zeng, Yu-Cian

    陳世諭 Chen, Shin-Yu

    蕭崇凱 Siao, Chong-Kai

    指導老師:黃慶祥 老師 Advisor: Hwang, Ching-Shine

    崑山科技大學

    資訊工程系

    專題報告

    A Report

    Submitted to Department of Information Engineering

    Kun Shan University

    in Partial Fulfillment of the Requirements

    for the Degree of Bachelor

    in

    Information Engineering

    December 2010

    Tainan, Taiwan, Republic of China

    中華民國100年6月

  • I

    線上家電控制系統

    學生:吳旻曄 指導老師:黃慶祥 老師

    曾鈺茜

    陳世諭

    蕭崇凱

    崑山科技大學資訊工程系

    摘 要

    從過去相關的實作中發現少有專題去探討網路與家電之關係。過去相關的實

    作透過紅外線的方式與家電做傳輸訊息,但受限於傳輸距離較近之問題,有鑑於

    此,本專題欲進一步探究網路與家電之關係。

    本專題整個系統包含使用者介面端、伺服器端、家電控制端這三部分。在使

    用者介面這部分,可以使用新型智慧型手機或個人電腦的方式,透過網際網路連

    到伺服器端,並以WiFi連到已架設好的Web Server,再者,以OSGI服務平台撰寫

    Bundle以及com-port之程式,將之與設計完後的網頁介面做連結,最後再由RS232

    做軟硬體的轉接方式來控制8051單晶片,並且透過開啟繼電器方式與家電控制端

    的電器做傳接收訊息之功能,此外,也可透過開關方式來控制整個系統。

    最後,本專題除了可用個人電腦進行控制之外,另外還增加了瀏覽器的控制,

    進而達成線上家電控制的應用。

  • II

    致 謝

    大學四年生活即將畫下句點,從我們大一進來對於新的人、事、地、物都懵

    懵懂懂,直到大三下學期的專題製作這門課,才開始展開大學四年以來最忙碌的

    生活,也慢慢的體會到人際關係也是重要的一門課,在專題製作期間,我們學習

    到很多相關專業知識以及實作,首先要感謝我們的指導教授黃慶祥教授的協助與

    指導,讓我們在專業知識與實作這方面獲益良多,且讓我們認識了8051這顆晶片

    的原理以及OSGI服務平台的應用,也在百忙之中抽空看我們的專題報告,也不厭

    其煩給予我們建議與教導,讓我們能順利的完成專題。

    同時感謝涂志豪學長以及劉季泓學長協助OSGI以及相關技術的教導,讓我們

    本專題製作起來更加順利,在此謹致上最深的敬意與謝意。

  • III

    目 錄

    中文摘要 ....................................................................................................................... I

    致謝 ............................................................................................................................. II

    目錄 ............................................................................................................................ III

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

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

    1.1 研究動機與目的 .......................................................................................... 1

    1.2 研究背景 ..................................................................................................... 1

    1.3 研究方法與系統概述 .................................................................................. 2

    1.4 論文內容概述 ............................................................................................. 3

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

    2.1 MCS-51簡介 ................................................................................................ 4

    2.1.1 8051內部結構 ................................................................................... 5

    2.1.2 8051單晶片的接腳............................................................................ 6

    2.2 OSGI簡介 .................................................................................................... 7

    2.2.1 OSGI服務平台技術及開發工具介紹 ............................................... 7

    第三章 系統架構 ....................................................................................................... 11

    3.1 系統架構簡介 ............................................................................................. 11

    3.1.1 使用者介面端 ................................................................................. 12

    3.1.2 伺服器端 ......................................................................................... 12

    3.1.3 家電控制端 ..................................................................................... 12

    3.2 家電控制端架構 ........................................................................................ 13

    3.2.1 家電控制端電路硬體 ...................................................................... 15

    第四章 網頁軟體系統流程 ........................................................................................ 17

    4.1 網頁軟體系統流程說明 ............................................................................ 17

  • IV

    4.2 網頁製作過程 ........................................................................................... 18

    第五章 系統實現及實作 ............................................................................................ 20

    5.1 伺服器端軟體開發過程 .............................................................................. 20

    5.1.1 OSGI執行環境安裝過程................................................................. 20

    5.1.2 NetBeans IDE外掛開發OSGI的工具 .............................................. 35

    5.1.3 OSGI主要程式說明 ........................................................................ 39

    5.2 家電控制端 ................................................................................................. 50

    5.2.1 Keil C的程式編輯平台 .................................................................... 50

    5.2.2 Siow 測試 RS232平台 ..................................................................... 53

    5.2.3 ISP燒錄平台 ................................................................................... 53

    5.3 系統成果 ..................................................................................................... 57

    第六章 結論 ............................................................................................................... 63

    參考文獻 .................................................................................................................... 64

  • V

    圖目錄

    圖2.1 8051內部結構圖 ............................................................................................................ 5

    圖2.2 8051接腳圖 ..................................................................................................................... 6

    圖2.3 OSGI服務平台架構 ....................................................................................................... 8

    圖2.4 Bundle 生命週期 ............................................................................................................ 8

    圖2.5 OSGI Standard Services 與 Custom Services .................................................................. 9

    圖2.6 OSGI規格 ..................................................................................................................... 10

    圖3.1 系統架構圖 .................................................................................................................. 11

    圖3.2 硬體架構圖 .................................................................................................................. 12

    圖3.3 8051家電控制電路板 .................................................................................................. 13

    圖3.4 8051 IC燒錄器 .............................................................................................................. 14

    圖3.5 電路板與燒錄器的連接 ............................................................................................. 14

    圖3.6.1 8051控制家電電路圖 ............................................................................................... 15

    圖3.6.2 8051控制家電電路圖 ............................................................................................... 16

    圖4.1 網頁軟體系統流程圖 ................................................................................................. 17

    圖4.2 資料庫程式碼一 .......................................................................................................... 18

    圖4.3 資料庫程式碼二 .......................................................................................................... 18

    圖4.4 輸入帳號密碼之連結資料庫 ..................................................................................... 19

    圖5.1 編輯maven_home之變數值 ......................................................................................... 20

    圖5.2 顯示maven_home變數值之更改 ................................................................................. 21

    圖5.3 編輯Path之變數值 ....................................................................................................... 21

    圖5.4 顯示Path變數值之更改 ............................................................................................... 22

    圖5.5 TortoiseSVN安裝執行中 ............................................................................................. 23

    圖5.6 JDK選取步驟 ............................................................................................................... 24

    圖5.7 下載JDK ....................................................................................................................... 24

  • VI

    圖5.8 選擇系統位元 .............................................................................................................. 24

    圖5.9 是否安裝JDK ............................................................................................................... 25

    圖5.10 選取 jdk 應用程式 ..................................................................................................... 25

    圖5.11 維持預設值 ................................................................................................................ 25

    圖5.12 JDK安裝執行中 ......................................................................................................... 26

    圖5.13 JDK安裝完成 ............................................................................................................. 26

    圖5.14 新增變數JAVA_HOME ............................................................................................. 27

    圖5.15 新增變數Classpath ..................................................................................................... 27

    圖5.16 編輯Path之變數值 ..................................................................................................... 28

    圖5.17 Felix資料夾設為SVN checkout ................................................................................. 28

    圖5.18 下載Felix之trunk ........................................................................................................ 29

    圖5.19 trunk 立即下載 .......................................................................................................... 29

    圖5.20 安裝plugins ................................................................................................................. 30

    圖5.21 建立成功 .................................................................................................................... 30

    圖5.22 安裝bundle .................................................................................................................. 31

    圖5.23 啟動OSGI.................................................................................................................... 31

    圖5.24 查看Bundle.................................................................................................................. 32

    圖5.25 安裝Bundle用法 ......................................................................................................... 32

    圖5.26 顯示安裝後之bundle編號、啟動 ............................................................................. 33

    圖5.27 顯示Bundle 5目前在動作狀態 ................................................................................. 33

    圖5.28 移除Bundle 5............................................................................................................... 34

    圖5.29.1 須先安裝外掛程式 ................................................................................................. 35

    圖5.29.2 勾選已安裝好之外掛 ............................................................................................. 35

    圖5.29.3 顯示勾選已安裝好之外掛啟用 ............................................................................ 35

    圖5.29.4 啟用外掛程式中 ..................................................................................................... 36

    圖5.29.5 已啟用成功完成 ..................................................................................................... 36

    圖5.29.6 綠色勾勾代表已啟動安裝外掛 ............................................................................ 37

  • VII

    圖5.29.7 檢視Maven之設定步驟一 ...................................................................................... 37

    圖5.29.8 瀏覽Maven存放路徑 .............................................................................................. 38

    圖5.29.9 選擇Maven來源檔 .................................................................................................. 38

    圖5.29.10 顯示已選擇Maven來源檔路徑 ............................................................................ 39

    圖5.30.1 載入OSGI套件 ........................................................................................................ 39

    圖5.30.2 Activator實作Bundle Activator ............................................................................... 40

    圖5.30.3 建構電風扇與電燈 ................................................................................................. 40

    圖5.30.4 建構電風扇與電燈網頁 ........................................................................................ 41

    圖5.31.1 設定預設連接埠 ..................................................................................................... 41

    圖5.31.2 設定RS232 ON傳送的訊號 .................................................................................... 42

    圖5.32 設定RS232 OFF傳送的訊號 ..................................................................................... 44

    圖5.33 電風扇網頁原始碼與電風扇開關狀態 .................................................................. 45

    圖5.34 編譯並產生JAR檔 ..................................................................................................... 46

    圖5.35 編譯成功 .................................................................................................................... 46

    圖5.36 產生JAR檔放置之target資料夾 ................................................................................ 47

    圖5.37 放置C槽方便作業 ..................................................................................................... 47

    圖5.38 啟動OSGI.................................................................................................................... 48

    圖5.39 安裝JAR檔 .................................................................................................................. 48

    圖5.40 顯示所有Bundle工作狀態......................................................................................... 49

    圖5.41 啟動Bundle之157裝置 ............................................................................................... 49

    圖5.42 顯示Bundle 157 之工作狀態 ..................................................................................... 50

    圖5.43 Keil C 的程式編輯平台 ............................................................................................ 51

    圖5.44 Keil C 的程式編輯平台 ............................................................................................ 51

    圖5.45 Siow 測試 RS232平台 ................................................................................................ 53

    圖5.46 燒錄板......................................................................................................................... 53

    圖5.47 載入燒錄檔路徑 ........................................................................................................ 54

    圖5.48 燒入成功 .................................................................................................................... 55

  • VIII

    圖5.49 8051 IC燒錄器電路圖 ............................................................................................... 56

    圖5.50 啟動OSGI之批次檔 ................................................................................................... 57

    圖5.51 查看Bundle及目前狀態 ............................................................................................. 57

    圖5.52 家電之首頁 ................................................................................................................ 58

    圖5.53 輸入帳號密碼 ............................................................................................................ 58

    圖5.54 登入失敗 .................................................................................................................... 59

    圖5.55 登入成功 .................................................................................................................... 59

    圖5.56 控制電燈是否啟動 .................................................................................................... 60

    圖5.57 是否啟動COM 12....................................................................................................... 60

    圖5.58 電燈同時亮 ................................................................................................................ 61

    圖5.59 控制電風扇是否啟動................................................................................................ 61

    圖5.60 是否啟動COM 12....................................................................................................... 62

    圖5.61 電風扇同時轉動 ........................................................................................................ 62

  • 1

    第一章

    緒論

    1.1 研究動機與目的 依目前所參考相關的專題大部分都是利用短距離的無線發射模組,例如:紅外

    線、藍芽等等,都受限於傳輸距離較近之問題,因此欲改進傳輸距離較近之問題,

    以無線網路代替了紅外線,藉此達成零距離之方式,讓使用者在任何地方透過手

    機上網或者有提供無線網路之場所,利用筆電上網皆可控制家電,例如:冷氣、

    電燈等。

    因此本專題之目的在於希望利用網路之發達,透過網頁的圖示介面之方式,

    讓使用者在登入網頁時,輸入帳號密碼後,即可控制網頁介面之家電,在控制開

    啟或關閉家電之按鈕,同時家電也隨著啟動或關閉,且網頁在傳接收之過程,也

    會顯示圖式之動態,讓使用者知道目前家電是否開啟,因此希望不只有單純的個

    人電腦可以控制之外,還多加入瀏覽器之控制。

    1.2 研究背景 日常生活中都會使用到遙控器控制任何電器,其大部分以紅外線居多,因此

    在使用上會遇到的問題,想必各位都有類似的經驗,例如:紅外線與電器之間距

    離太遠無法偵測到信號、電器如受到有物體阻擋或超過30度發射角範圍之外此遙

  • 2

    控器就無法發揮作用,在加上紅外線本身特性以直線傳播方式,且頻帶較窄,在

    傳送信號上,品質不是那麼好,另外也因無法實現雙向傳送之原因,讓使用者在

    使用上無法得知信號,一個好的傳接收品質就是讓使用者在使用之過程上,沒有

    距離以及物體阻擋等問題,即可直接進行控制。

    1.3 研究方法與系統概述 本系統分為硬體部分及軟體部分,硬體程式是使用C語言撰寫並藉由Keil C51

    編譯並執行。燒錄程式使用ISP PROG並燒入89S52 IC。設計兩個硬體電源控制開

    關盒,分別進行控制家電的電源及運作。網頁部分由php和java撰寫,網路採用無

    線網路接收。伺服器連接使用OSGI開放式平台應用,OSGI負責把使用者欲控制的

    家電ON或OFF的訊號,並透過RS232轉USB傳輸線傳送到指定的電源控制開關盒再

    經由電源控制開關盒來掌握家電的ON與OFF。

    主要是由個人電腦或新型智慧型手機來控制家電,在網頁設置一個模擬情境

    圖案,點選大門圖案後會出現使用者帳密登入,輸入正確後才可進入該系統。進

    入後可看見模擬住家裡的情境圖片,點選圖片中的家電就會進入該家電控制端,

    進去之後會看到家電之電燈或電風扇圖片,這時按ON電燈或電風扇的圖片跟家電

    本身都會同步啟動,反之OFF就立即停止。也可從硬體上直接控制開關,經實驗測

    試新型智慧型手機也可以透過OSGI平台連接控制家電,目前作業系統為只要是新

    型智慧型手機能上網皆可控制。

  • 3

    1.4 論文內容概述 本篇論文主要是在說明專題的製作、研究成果,並且了解專題所需的各項設

    備,以及設備具有的功能以下各章節皆會說明。

    第一章:緒論

    探討製作專題的動機以及目的,製作何種系統來達成所需要的功能與實用性。

    第二章:相關研究

    探討關於製作此系統,使用到的平台以及單晶片方面的說明,且相關方面的資訊。

    第三章:系統架構

    探討關於此系統架構模組與硬體製作上之說明。

    第四章:網頁軟體系統流程

    探討關於系統網頁製作的過程以及操作方面之其他說明。

    第五章:系統實現及實作

    探討關於系統製作的完成與運作,以及實作方面之其他說明。

    第六章:結論

    探討關於此系統呈現之結果,以及給于建議之其他說明。

  • 4

    第二章

    相關研究

    2.1 MCS-51簡介 MCS-51(Micro Computer System,簡稱MCS),MCS是intel公司對單晶片微電腦

    總稱,8051是一種8位元的單晶片微電腦,屬於MCS-51單晶片的一種。

    由於以下幾點原因,決定使用 8051 系列IC

    1.因為目前所開發的單晶片8051 系列有多功能選項。

    2.燒入系統方便,使用上也較容易。

    3.在CPU 有三大單元:ALU、暫存器以及控制單元裡,含有8位元的

    4.CPU,非常適合做"控制"的應用,剛好專題也需要控制到。

    5.在I/O 上每一個位元均可以單獨被設定輸入或輸出的功能。

    6.可使用RS232 與個人電腦做連接,有一組全雙工的UART,有足夠的記憶體。

  • 5

    2.1.1 8051內部結構

    圖2.1 8051內部結構圖

    8051主要特性:

    1. 用在控制使用而設計的 8 位元單晶片

    2. 具有位元邏輯運算能力

    3. 具有 4 個 8 位元的 I/O

    4. 有 128 位元的 RAM,和 4K位元的 ROM

    5. 有 2 個 16 位元的計時和計數器

    6. 具有全雙工的 UART

    7. 共有 5 個中段源和兩層中段優先權結構

    8. 晶片內有時脈產生電路

    9. 具有外部的電路擴充到 64 位元記憶體的能力

  • 6

    2.1.2 8051單晶片的接腳

    此系統8051系列所使用之接腳單晶片,如下圖2.2:

    圖2.2 8051接腳圖

    接腳功能如下:

    1. P(0.0~P0.1)有三個功能:

    (1) 外部擴充記憶體時,當作資料匯流排(D0~D2)。

    (2) 外部擴充記憶體時,當作位址匯流排(A0~A2)。

    (3) 不擴充時,可當作一般 I/O 使用,不過內部無提升電阻,當作輸入或輸出時

    要在外部接提升電阻。

    2. P1:只當做 I/O 埠使用,內部有提升電阻

    3. P3 有兩個功能:

    (1) 當作 I/O 使用,內部有提升電阻。

    (2) 當作特殊功能,由特殊暫存器來規劃。

    4. VCC: 電源 5v。

    GND:接地。

    5. RESET:將 PIN 9 高態時,可將 CPU 重置。

    6. EA/VPP:

    (1) 接高電位:CPU 讀取內部程式記憶體(ROM),如 8051/8052。

    (2) 接低電位:CPU 讀取外部程式記憶體(ROM),如 8031/8032。

    10. XTAL 1(Input)/XTAL 2(Output):接石英晶體振盪器。

  • 7

    2.2 OSGI簡介 OSGI 技術為Open Service Gateway Initiative 協會所制定,目的在於制定一

    個整合性的資訊服務平台,並將其整合至家用閘道器裡,並使遠端軟體服務供應

    商所提供之應用程式及加值服務,能視使用者所需求,透過網際網路動態地下載

    至用戶的家用閘道器上,且能夠地自動安裝執行。本章節將 OSGI的架構、技術及

    開發工具做簡單之介紹,並以OSGI服務平台為基礎之家用閘道器。

    2.2.1 OSGI服務平台技術及開發工具介紹

    OSGI 成立的目的在於定義一個開放性的平台,使遠端軟體服務供應商所提

    供的應用程式及加值服務,能視使用者需求,透過網際網路動態地下載至用戶的

    家用閘道器上,且能夠自動安裝執行。「開放性」意味 OSGI 的會員皆可參與標

    準之制定,並遵循此標準開發符合規格的產品。在此開放性的架構下,不同廠商

    所開發出來的服務軟體、設備就能彼此溝通或搭配使用。

    以下介紹OSGI服務平台技術

    如圖2.3所示, OSGI架構主要由三種元件所組成: Framework、Bundle和

    Service。Framework 架構在 Java VM(Java Virtual Machine)上,Bundle 則是執行

    於 Framework上的應用程式,而 Service 是 Bundle 所提供(Export)或所需(Import)

    的介面服務。從遠端下載的 Bundle 會在 OSGI Framework上自動安裝、執行,並跟

    OSGI 平台註冊 Bundle 所提供分享或所需要的服務(Service)。以下段落將 OSGI

    Framework、Bundle和 Service詳細說明。

  • 8

    圖2.3 OSGI服務平台架構

    OSGI Framework 為一整合性的資訊服務平台,主要的功能是提供 Bundle 的執

    行環境與動態地調整 Bundle 掛載的生命週期(Bundle life cycle)。OSGI Framework

    也提供管理機制讓執行其上的Bundles 可以(Export)或使用(Import)Service。 Bundle

    之間可透過 Service 的分享,以節省程式的開發時間或增加程式之功能。

    如圖2.4所示, OSGI Framework管理的 Bundle 生命週期可分為六個狀態:己

    安裝(INSTALLED)、等待.動(RESOLVED)、動(STARTING)、執行(ACTIVE)、

    停止(STOPPING)以及取消安裝(UNINSTALLED)。當 Bundle被停止時,Framework

    會將 Bundle 所註冊(Register)的 Service 動態地移除(Unregisters),在同一時間

    內,也會通知有使用該 Service的其他 Bundle,讓其他的 Bundle得知該事件。

    圖2.4 Bundle 生命週期

  • 9

    Bundle 的中文名稱是服務包,由 OSGI Framework 負責啟動與執行。就實作的

    角度而言,Bundle是一個 Java Archive(JAR)檔案,該 JAR 檔包含 Java類別(Class)、.

    動類別(Activator Class)、清單文件檔( Manifest Header)和一些資源檔(如 HTML

    網頁或 JPG圖檔等)。清單文件檔主要描述該 Bundle所附加的資訊,並訂定一些

    規則,如 Import-Package、 Export-Package、Bundle-Activator、Import-Service 與

    Export-Service 等。

    Bundle 可將其所要提供(Export)的功能,以 Service 的方式來表示。 Service

    是一個定義清楚的介面服務,其他需要此(Import)功能的 Bundle 可透過此介面

    來存取。當 Bundle 提供Service 時,Framework會保留了一個相對應的Service

    Reference,需要此 Service 的 Bundle 可透過 Framework所提供的查詢機制(基於

    LDAP的語法),請求並取得所要的 Service。在 Framework 裡,一個有效的應用是

    由一系列的 Service相輔相成所互相搭配而成。

    如圖2.5所示, OSGI規格中所定義的 Service 包括 Standard Services與 Custom

    Services兩種:Standard Services是由 OSGI Framework本身所提供 ; Custom Services

    則較為彈性,主要由服務廠商定義開發,目的在於區隔產品服務市場。

    圖2.5 OSGI Standard Services 與 Custom Services

  • 10

    如圖2.6所示,在 2000 年 5 月所發表的 OSGI SPR1 (OSGI Service Platform

    Release 1),定義 Device Access、Http 和 Log 等服務,提供基本的服務架構; 2001

    年 10月 OSGI SPR2發表時,新增了 User Administration、Configuration Management

    等服務,著重於安全性能與管理配置功能的增強; 2003年 3月發展至 OSGI SPR3,

    除了與 1.0 及 2.0 版本相容外,更新增一些工具、管理、網路等相關服務,如 UPnP

    Device 、 Jini Driver 與 XML Parser 等服務。

    圖2.6 OSGI規格

  • 11

    第三章

    系統架構

    3.1 系統架構簡介

    圖3.1 系統架構圖

    本專題是為了讓使用者能直覺透過網頁的圖示介面之方式,讓使用者在登入

    網頁時,輸入帳號密碼後,即可控制網頁介面之家電,以此構想來實作整個家電

    系統,如圖3.1為本系統之架構所示,整個系統包含使用者介面端、伺服器端、家

    電控制端這三部分,使用者介面這部分,可以使用新型智慧型手機或個人電腦的

    方式,透過網際網路連到伺服器端,其以WiFi連到已架設好的Web Server,接著再

    以OSGI服務平台撰寫Bundle以及com-port之程式,與設計完後的網頁介面做連結,

    再由RS232做軟硬體的轉接方式來控制8051單晶片,其透過開啟繼電器方式與家電

    控制端的電器做所謂的傳接收訊息,另外也可透過開關方式來控制。

  • 12

    3.1.1 使用者介面端

    使用者可以使用個人電腦或新型智慧型手機控制家電只要在能上網的地方隨

    時隨地都能夠控制家裡面的家電,使用者連接到線上家電控制系統伺服器登入使

    用者網頁的帳號密碼後,經由APPSERV伺服器的資料庫核對後,便可進入控制家

    電頁面,想對哪項家電進行控制,則點相對應的家電圖示,便可對此家電進行開

    關控制。

    3.1.2 伺服器端

    當伺服器端接收到由使用者介面端傳送要求打開某個家電,由APPSERV伺服

    器端連接OSGI伺服器便傳送訊號給家電控制端,藉由家電控制端去控制使用者的

    家電要開啟或關掉,網頁家電圖示會隨著家電的開關顯示相對應的圖示。

    伺服器端由OSGI開放式服務平台所提供,APPSERV伺服器的資料庫撰寫使用

    者帳號密碼。

    3.1.3 家電控制端

    伺服器端由OSGI開放式服務平台所提供,當家電控制端接收到伺服端傳送過

    來的訊號,進而去控制使用者的家電要開啟或關掉。此系統流程是由使用者先透

    過伺服器端發送欲控制家電的訊號,訊號經由USB轉RS232傳輸線傳到89S52 IC,

    再由89S52發送訊號給控制家電的固態繼電器來控制家電的開與關。以下如圖3.2

    架構圖所示:

    圖3.2 硬體架構圖

  • 13

    當家電控制端接受到"0"致能則電燈開啟,若家電控制端接受到"1"致能則關掉

    電燈,若家電控制端接受到"2"致能則開啟電風扇,若家電控制端接受到"3"致能則

    關掉電風扇。

    3.2 家電控制端架構 本系統硬體分為家電控制端及IC燒錄,家電控制端的主要零件是使用ATMEL

    89S52ic、KA20C04A固態繼電器、HIN232ic、7805穩壓ic、2.54莫仕接頭6 Pin公接

    頭、 2 - pin接線端子、石英振盪器(11.0592MHz) 、電容及電阻等。(如圖3.3所示)

    其中ATL 89S52擁有USB介面的ISP功能以及有高性能的CMOS 8位元微控制器與

    面積字節的系統可編程快閃記憶體,記憶體容量較大可方便燒錄更複雜的程式。

    而燒錄則使用AT89C2051 IC、MAX 232、RS-232 DB9接頭(母)、開關按鈕、2.54

    莫仕接頭6 Pin公接頭、USB轉RS232傳輸線等。(如圖3.4所示)燒錄時必須使用ISP

    Link線(6 Pin)並對準燒錄及家電控制端上的2.54莫仕接頭即可進行燒錄的步驟。(如

    圖3.5所示)在5.2.3節會有詳細說明

    圖3.3 8051家電控制電路板

  • 14

    圖3.4 8051 IC燒錄器

    圖3.5 電路板與燒錄器的連接

  • 15

    3.2.1 家電控制端電路硬體

    家電控制端最主要用常見的家電來模擬,分別為電風扇跟電燈。家電控制端

    主要功能為接收來自伺服端的訊號,這時透過USB轉RS232傳輸線的家電會依送來

    的訊號判讀是哪種訊號,若傳來的訊號為P0.0則啟動電燈,如果是P0.1的話則啟動

    電風扇。以下如圖3.6.1、圖3.6.2為控制家電控制端的電路圖:

    圖3.6.1 8051控制家電電路圖

    圖3.6.1腳位解說

    AT89S52單晶片:

    第6~8接腳接ISP2~5腳位。

    第10&11接腳接HIN232單晶片12&11腳位。

    第18~20接腳接30pf陶瓷電容,20接腳與陶匙電容接地。

    第31&40接腳接5v。

    第38~39接腳接2個KA20C04A固態繼電器的第1腳位。

  • 16

    圖3.6.2 8051控制家電電路圖

    圖3.6.2腳位解說

    HIN232單晶片:

    第1~6腳位接10uf電容。

    第11&12腳位連接AT89S52單晶片11&10腳位。

    第13&14腳位連接RS232第3孔&5孔。

    第15腳位與連接第6腳位電容接地。

    第16腳位與連接第2腳位電容接5v並接地。

  • 17

    第四章

    網頁軟體系統流程

    4.1 網頁軟體系統流程說明

    圖4.1 網頁軟體系統流程圖

    整體之網頁軟體系統流程圖如圖4.1所示,本系統以網頁當家電控制端,使用

    者利用新型智慧型手機或筆電上網輸入網址,至首頁部分按大門圖示,立即跳出

    輸入帳號密碼之框架,如輸入正確,則進入控制頁面選擇電燈或電風扇之家電後,

    又進入家電控制ON/OFF按鈕,則進入家電之網頁確認是否啟動中,如輸入錯誤,

    則再次重新輸入。

  • 18

    4.2 網頁製作過程

    本系統之網頁軟體以 Dreamweaver 製作,主要程式語言以 PHP為主,少許加

    些java 程式之撰寫,製作之第一步少不了首頁這部分,再來由於確保不讓他人進入

    此系統違法控制使用者之家電,而製作了輸入帳號密碼之通道,讓使用者能更安

    全之使用,接著想讓使用者進入網頁時能感到有如進到家一般,則使用了客廳圖

    示,其圖示中電燈以及電風扇則可連結至家電之網頁控制ON/OFF,如ON則家電

    圖示顯示啟動,反OFF則停止。

    本系統網頁之帳號密碼部分利用到資料庫連結方式,以下為資料庫程式碼如圖

    4.2、4.3所示:

    圖4.2 資料庫程式碼一

    圖4.3 資料庫程式碼二

  • 19

    以下如圖4.4所示為登入帳號密碼之主要連結資料庫呼叫部分。

    圖4.4 輸入帳號密碼之連結資料庫

  • 20

    第五章

    系統實現及實作

    5.1 伺服器端軟體開發過程

    5.1.1 OSGI執行環境安裝過程

    安裝apache-maven

    首先在安裝OSGI 之前,要先安裝OSGI套件,此套件為 apache-maven-2.2.1,

    至 此 下 載 頁 面 (http://maven.apache.org/download.html) , 選 取

    apache-maven-2.2.1-bin.zip 之檔案安裝後,才能安裝 Apache Felix。

    在安裝maven套件後,必須設定maven之環境變數,以下為設定步驟:

    步驟一:請先至我的電腦按右鍵, 選擇 "內容", 切換到 "進階" 後, 選取"環境變數" 按

    鈕點進去,在系統變數選取maven_home之後按"編輯",則會來到以下如圖5.1所示,

    變數值之地方設定為 C:\apache-maven-2.2.1\bin 之後按"確定"。

    圖5.1 編輯maven_home之變數值

  • 21

    步驟二:在如圖5.1之確定後,系統變數之地方顯示了編輯完後之數值,以下如圖

    5.2所示:

    圖5.2 顯示maven_home變數值之更改

    步驟三:在系統變數選取 Path 之後按"編輯",則會來到以下如圖5.3所示,變數值

    之分號後面增加 C:\apache-maven-2.2.1\bin 之後按"確定"。

    圖5.3 編輯Path之變數值

  • 22

    步驟四:在如圖5.3之確定後,系統變數之地方顯示了編輯完後之數值,以下如圖

    5.4所示:

    圖5.4 顯示Path變數值之更改

    本系統OSGI之framework是使用Apache felix, 此 Apache Felix是 Apache旗下的

    一個OSGI框架,項目本身非常成熟,已經被用到了很多其他的項目中。

    首先至以下網址(http://felix.apache.org/site/building-felix.html)連結後,在

    Building Felix 依序執行以下三點敘述:

    安裝TortoiseSVN

    1. Check out or update the Felix trunk

    (i.e., svn checkout http://svn.apache.org/repos/asf/felix/trunkfelix).

  • 23

    此敘述先安裝 TortoiseSVN 1.6.12,以下是作業系統 32、64 位元之載點: 作業系統32位元:

    http://sourceforge.net/projects/tortoisesvn/files/1.6.12/Application/TortoiseSVN-1.6.12.

    20536-win32-svn-1.6.15.msi/download

    作業系統64位元:

    http://sourceforge.net/projects/tortoisesvn/files/1.6.12/Application/TortoiseSVN-1.6.12.

    20536-x64-svn-1.6.15.msi/download

    選好之後,安裝設定照原廠設定只需要 "NEXT ",安裝過程如圖5.5所示,安裝完,

    下一步安裝JDK。

    圖5.5 TortoiseSVN安裝執行中

    安裝JDK

    由於OSGI服務平台之基本架構是一個Java容器(Container),也就是說程式

    語言是以Java來撰寫,安裝JDK 開發環境,就能用Java編譯器將Java應用程式原始

    碼編譯成為位元碼。

    此為JDK網址(http://www.oracle.com/technetwork/java/javase/downloads/index.html),

    連結此網址,點選"Downloads",再點選"Java for Developers"進入後,點選"Download

    JDK"按鈕,如圖5.6、圖5.7所示:

  • 24

    圖5.6 JDK選取步驟

    圖5.7 下載JDK

    選擇符合自己作業系統位元,如圖5.8所示:

    圖5.8 選擇系統位元

  • 25

    勾選"同意",按"繼續"按鈕,如圖5.9所示:

    圖5.9 是否安裝JDK

    選取 jdk-6u23-windows-i586.exe ,如圖5.10所示:

    圖5.10 選取 jdk 應用程式

    設定JDK安裝在哪裡,此"維持預設值"以免後續設定麻煩,如圖5.11所示:

    圖5.11 維持預設值

  • 26

    JDK安裝執行中,如圖5.12所示:

    圖5.12 JDK安裝執行中

    安裝完成,如圖5.13所示:

    圖5.13 JDK安裝完成

    JDK安裝後,設定JDK環境設定,以下為設定步驟:

    步驟一:請先至控制台, 選擇 "系統"點進去, 切換到 "進階" 後, 選取"環境變數" 按

    鈕點進去,在使用者變數選取"新增",在新增變數名稱輸入"JAVA_HOME",在變

    數值輸入" C:\Program Files\Java\jdk1.6.0_21",然後點擊"確定",以下如圖5.14所示:

  • 27

    圖5.14 新增變數JAVA_HOME

    步驟二:在使用者變數按"新增",在新增變數名稱輸入"Classpath",在變數值輸入

    ".;C:\Program Files\Java\jdk1.6.0_21\lib;C:\Program Files\Java\jre1.6.0_03\lib",然後點

    擊"確定",以下如圖5.15所示:

    圖5.15 新增變數Classpath

  • 28

    步驟三:在使用者變數裡找到"Path",然後點擊"編輯"。在編輯使用者變數之變數

    值輸入"C:\AppServ\Apache2.2\bin;C:\AppServ\php5;C:\AppServ\MySQL\bin;

    C:\Program Files\Java\jdk1.6.0_21\bin;C:\Program Files\Java\jre1.6.0_03\bin; ",然後點

    擊"確定",以下如圖5.16所示:

    圖5.16 編輯Path之變數值

    安裝felix

    JDK環境變數設定完,接續安裝 felix ,在D槽點右鍵新增"Felix"資料夾,在

    Felix資料夾點右鍵選擇SVN checkout,以下如圖5.17所示:

    圖5.17 Felix資料夾設為SVN checkout

  • 29

    在URL那欄輸入Building Felix 第一點之網址

    http://svn.apache.org/repos/asf/felix/trunk 後,按 OK 立即下載,以下如圖5.18所示:

    圖5.18 下載Felix之trunk

    下載完後,按 OK ,以下如圖5.19所示:

    圖5.19 trunk 立即下載

  • 30

    2. Go to the top of the project and type: "mvn -Dpackaging=plugins install" and then "mvn

    -Dpackaging=bundle install" to build the project.

    至"開始"選取"執行"輸入"CMD"後,按"確定",切換到Felix目錄底下,接著輸入"mvn

    -Dpackaging=plugins install"安裝以及 建立成功,以下如圖5.20、圖5.21所示:

    圖5.20 安裝plugins

    圖5.21 建立成功

  • 31

    接著輸入" mvn -Dpackaging=bundle install "安裝,以下如圖5.22所示:

    圖5.22 安裝bundle

    3. To run the newly built framework, cd into "main" and type " java -jar bin/felix.jar ".

    至Felix/main目錄底下,輸入" java -jar bin/felix.jar ",以下如圖5.23所示:

    圖5.23 啟動OSGI

  • 32

    輸入 lb ,查看目前有安裝哪些Bundle,以下如圖5.24所示:

    圖5.24 查看Bundle

    以下如圖5.25為安裝Bundle之用法:

    圖5.25 安裝Bundle用法

  • 33

    以下如圖5.26為安裝後顯示Bundle 5,再啟動bundle 5。

    圖5.26 顯示安裝後之bundle編號、啟動

    以下如圖5.27顯示Bundle 5 目前在動作狀態。

    圖5.27 顯示Bundle 5目前在動作狀態

  • 34

    以下如圖5.28為移除Bundle 5 。

    圖5.28 移除Bundle 5

  • 35

    5.1.2 NetBeans IDE外掛開發OSGI的工具

    OSGI是使用JAVA程式語言開發使用OSGI的工具須先啟動已經安裝好的外

    掛 ,以下如圖5.29.1所示:

    圖5.29.1 須先安裝外掛程式

    以下是勾選啟動已安裝好的外掛後按下啟用,以下如圖5.29.2、圖5.29.3所示:

    圖5.29.2 勾選已安裝好之外掛

    圖5.29.3 顯示勾選已安裝好之外掛啟用

  • 36

    以下如圖5.29.4為啟用外掛程式中。

    圖5.29.4 啟用外掛程式中

    以下如圖5.29.5為已啟用成功完成。

    圖5.29.5 已啟用成功完成

  • 37

    以下如圖5.29.6為綠色勾勾代表已啟動安裝外掛。

    圖5.29.6 綠色勾勾代表已啟動安裝外掛

    啟動外掛完畢後按選項,以下如圖5.29.7所示:

    圖5.29.7 檢視Maven之設定步驟一

  • 38

    選擇其他選項點選Maven,以下如圖5.29.8所示:

    圖5.29.8 瀏覽Maven存放路徑

    選擇Maven的來源按完後再按開啟,以下如圖5.29.9所示:

    圖5.29.9 選擇Maven來源檔

  • 39

    看到以下畫面代表Maven套件已經裝好後就可以開始撰寫OSGI,以下如圖5.29.10

    所示:

    圖5.29.10 顯示已選擇Maven來源檔路徑

    5.1.3 OSGI主要程式說明

    此Activator用來啟動裝置,首先載入OSGI官方寫好的套件,把有需要用的套

    件載入,以下如圖5.30.1所示:

    圖5.30.1 載入OSGI套件

  • 40

    接著Activator實作Bundle Activator使用前面載入的套件建立新的變數,start這

    個函式會去做服務註冊、做Servlet的註冊,以下如圖5.30.2所示:

    圖5.30.2 Activator實作Bundle Activator

    做服務註冊的這個函式使用FanDevice這個實體建立fan這個變數,且使用

    LightDevice這個實體建立light這個變數,以下如圖5.30.3所示:

    圖5.30.3 建構電風扇與電燈

  • 41

    做 Sevlet 這 個 函 式 產 生 電 風扇和電燈網頁使用 PresentationServlet 和

    PresentationServlet2的實體建立,以下如圖5.30.4所示:

    圖5.30.4 建構電風扇與電燈網頁

    FanModel去實作Eventsource,這段程式碼主要是設定RS232的comport為

    COM12,,以下如圖5.31.1所示:

    圖5.31.1 設定預設連接埠

  • 42

    RS232ON這個函式被啟動會傳送"2"這個訊號會去打開電風扇且設定資料長度

    為8位元、停止位元1、沒有偶同位檢查、設定鮑率為9600,再根據預設的comport

    去尋找對應的comport有沒有連接上,以下如圖5.31.2所示:

    圖5.31.2 設定RS232 ON傳送的訊號

  • 43

    RS232OFF這個函式被啟動會傳送"3"這個訊號會去關掉電風扇且設定資料長度

    為8位元、停止位元1、沒有偶同位檢查、設定鮑率為9600,再根據預設的comport

    去尋找對應的comport有沒有連接上,以下如圖5.32所示:

  • 44

    圖5.32 設定RS232 OFF傳送的訊號

  • 45

    PresentationServlet這個程式碼是電風扇網頁原始碼,會判斷使用點一下會圖片

    會自動接換到電風扇打開的圖示,在點一下圖片會自動接換到電風扇關掉的圖

    示,有時圖示會反應不及可以點一下Refresh status更新目前最新的圖示,以下如圖

    5.33所示:

    圖5.33 電風扇網頁原始碼與電風扇開關狀態

  • 46

    撰寫完OSGI程式之後編譯並且產生.JAR檔再把這個檔案裝到OSGI執行平

    台,以下如圖5.34、圖5.35所示:

    圖5.34 編譯並產生JAR檔

    圖5.35 編譯成功

    按右鍵

  • 47

    編譯成功產生出來的jar檔依照個人存放位址去找裡面的target資料夾,產生好

    的JAR檔都放在這邊,以下如圖5.36所示:

    圖5.36 產生JAR檔放置之target資料夾

    把撰寫好產生出來的jar檔複製到c槽並更改檔名之所以要改檔名和複製到c槽

    是為了方便作業程序,以下如圖5.37所示:

    圖5.37 放置C槽方便作業

  • 48

    至Felix/main目錄底下,輸入" java -jar bin/felix.jar ",以下如圖5.38所示:

    圖5.38 啟動OSGI

    輸入 lb ,查看目前有安裝哪些Bundle,安裝圖5.38產生出來的JAR檔,以下

    如圖5.39所示:

    圖5.39 安裝JAR檔

  • 49

    Bundle ID代表安裝在157之位置, 以下如圖5.40為所有Bundle工作狀態。

    圖5.40 顯示所有Bundle工作狀態

    以下如圖5.41為啟動Bundle 之157裝置。

    圖5.41 啟動Bundle之157裝置

  • 50

    以下如圖5.42為顯示Bundle 的157之工作狀態。

    圖5.42 顯示Bundle 157 之工作狀態

    5.2 家電控制端

    5.2.1 Keil C的程式編輯平台

    keil c就是以c語言來開發單晶片(8051)程式的工具,它除了標準C語言中,定義

    的語法外還有一些是為單晶片(8051)硬體所定義出來的語法。

    開啟keil c編輯平台,點選進入選擇要編譯的單晶片(如圖5.43紅色框框),並點

    選輸出勾選Create HEX File,回頁面建立新專案並放在同一個資料夾,程式碼須另

    存為.C檔才能編譯,要使用新的原始碼須先移除前個原始碼與專案間的連結(如圖

    5.44),並將新的原始碼與專案做連結。

  • 51

    圖5.43 Keil C 的程式編輯平台

    圖5.44 Keil C 的程式編輯平台

    RS232通訊程式碼

    //RS232 communication

    #include

    #include

    Void main() //主程式

    {

    Char c; //宣告C變數,1byte字元變數,數值代表-128~+127

    若為unsigned char 則為0~255

  • 52

    Scon=0x50; //Mode 1 8bit UART enable receive

    TMOD=0x20; //BaudRate Generator Timer 1 Mode 2 8 bit auto reload

    TH1=0xFD; //crystal 11.0592MHZ 9600bps

    TR1=1; //start Timer1

    TI=1; //write enable

    While(1) //無窮迴圈

    {

    While(RI) //wait for receives data

    {

    RI=0; //clear RI

    C=SBUF; //serial buffer to c

    Switch(c)

    {

    Case ‘0’:P0.0=0; //P0.0 ON

    Printf(“\a”);

    Break;

    Case’1’:P0.0=1; //P0.0 OFF

    Printf(“\a”);

    Break;

    Case’2’:P0.1=0; //P0.1 ON

    Printf(“\a”);

    Break;

    Case’3’:P0.1=1; //P0.1 OFF

    Printf(“\a”);

    Break;

    }

    }

    }

    }

  • 53

    5.2.2 Siow 測試 RS232平台

    Siow 測試 RS232平台是用來測試燒入進單晶片的原始碼,是否能由使用者發

    送指令透過RS232傳送至電路板,並讓電路板作出回應。

    進入平台點選Configuration點選Set port options,來選擇對應之RS232的COM

    PORT,確定後點Local echo做測試(如圖5.45),在上面輸入數字並傳送至電路板,

    底下之訊息為電路板的回應。

    圖5.45 Siow 測試 RS232平台

    5.2.3 ISP燒錄平台

    ISP燒錄平台是利用燒錄板(如圖5.46)由個人電腦透過RS232連接至燒錄板並透

    過ISP線連接至電路板,並將編譯好之原始碼燒入至電路板上IC的一套軟體。

    圖5.46 燒錄板

  • 54

    進入平台後先到工作管理員確定RS232的PORT再到Settings選擇對應的PORT,

    選擇Device確定要燒入的IC編號。選擇要燒入的原始碼(需選擇.hex檔),如圖5.47

    把所有項目框起來開始燒入。

    從上到下:

    第一項目為確認裝置是否有連接成功。

    第二項目如果是從FALSH裡讀出.HEX檔,通常是不會用到的。

    第三項目為了清除晶片內FLASH的.HEX。

    第四項目是把.HEX檔燒錄到晶片內的FLASH。

    第五項目是核對燒進去的.HEX檔,若跳過這步驟測試硬體時會有問題。

    第六項目是鎖住.HEX檔以防止被人偷走.HEX檔

    上敘六項皆顯示成功後代表原始碼已成功燒入至目標IC(如圖5.48)

    圖5.47 載入燒錄檔路徑

  • 55

    圖5.48 燒入成功

    燒錄器

    想要在使用8051之前必須先有一套撰寫8051專屬程式的套件,本專題使用

    Keil C51編譯並執行程式來啟動控制的功能,若編譯值行成功下一步就是要測試與

    硬體的結合。這時需要一部8051專用的自製燒錄器,燒錄器使用前先使用USB轉

    RS232傳輸線接至個人電腦,ISP接頭則接至家電控制電路板,再來進行同步燒錄,

    在燒錄時難免會失敗,在燒錄板上有設置一個重置按鈕,按下即可清除並再重新

    燒錄一次。燒錄器上有LED會顯示燒錄器目前是否有動作,有的話就會亮反之則暗。

    以下如圖5.49為燒錄器電路圖:

  • 56

    圖5.49 8051 IC燒錄器電路圖

    圖5.49腳位解說

    MAX232單晶片:

    第1~6接腳接10uf電容。

    第11&12接腳接AT89X2051單晶片3&2接腳。

    第13&14接腳接RS232第3&2孔。

    第15接腳接10uf電容正端接地。

    第16接腳接10uf電容負端接5v。

    AT89C2051單晶片:

    第1接腳接0.1陶瓷電容。

    第2&3接腳接MAX232單晶片12&11接腳。

    第4~5接腳接石英震盪器並連接30pf陶瓷電容。

    第10接腳接地。

    第15接腳接led燈。

    第16~19接腳接1k電阻。

    第20接腳接5v。

  • 57

    5.3 系統成果 本章節主要是解說當整個系統建置完成之後,使用者如何運用此系統來控制家

    中之家電,本章節利用圖與文字方式呈現整個系統之操作。

    首先將OSGI的啟動指令寫成批次檔,在操作上只要執行此檔案,其OSGI立即

    啟動,以下如圖5.50所示:

    圖5.50 啟動OSGI之批次檔

    輸入lb查詢OSGI BUNDLE目前之狀態且有裝哪些BUNDLE,以下如圖5.51所示:

    圖5.51 查看Bundle及目前狀態

  • 58

    OSGI Bundle如正常執行目前狀態,下一步在瀏覽器輸入網址後,連結至首頁,以

    下如圖5.52所示,如未啟動正常,查看Bundle是否未安裝。

    圖5.52 家電之首頁

    由於確保不讓他人進入此系統違法控制使用者之家電,而製作了輸入帳號密碼之

    通道,讓使用者能更安全之使用,此按首頁之大門,呈現帳號密碼之框架,以下

    如圖5.53所示:

    圖5.53 輸入帳號密碼

  • 59

    如輸入錯誤顯示登入失敗,以下如圖5.54所示:

    圖5.54 登入失敗

    輸入成功進入此網頁,以下如圖5.55所示:

    圖5.55 登入成功

  • 60

    點選電燈後進入控制頁面,按On後顯示燈亮,以下如圖5.56所示,如按OFF 反之

    暗。

    圖5.56 控制電燈是否啟動

    在控制頁面如按ON,會呈現啟動COM 12之狀態,以下如圖5.57所示:

    圖5.57 是否啟動COM 12

  • 61

    再啟動COM 12同時電燈也亮,以下如圖5.58所示:

    圖5.58電燈同時亮

    再來測試電風扇,如圖5.55所示,點選電風扇後進入控制頁面,按On後顯示電風

    扇轉動,以下如圖5.59所示,如按OFF 反之停止。

    圖5.59 控制電風扇是否啟動

  • 62

    在控制頁面如按ON,會呈現啟動COM 12之狀態,以下如圖5.60所示:

    圖5.60 是否啟動COM 12

    再啟動COM 12同時電風扇也轉動,以下如圖5.61所示:

    圖5.61 電風扇同時轉動

  • 63

    第六章

    結論

    只需要透過個人電腦或新型智慧型手機連線到線上家電控制系統,使用者可

    以不用回到家裡就可隨時隨地的控制家裡面的家電,就算人在世界的另一端使用

    者只需要輸入帳號密碼經過資料庫的核對之後,即可進入到家電控制頁面控制家

    電,達到線上家電控制系統的功能。

    由於確保不讓他人進入此系統違法控制使用者之家電,而設計帳號密碼之功

    能,讓使用者能更安全之使用,本系統必須要輸入帳號密碼經過資料庫的核對之

    後,才可以進入到家電控制頁面控制家電,所以並不是任何人都可以進入到家電

    控制頁面。

    本線上家電控制系統是藉由個人電腦或新型智慧型手機,透過瀏覽器連接到使

    用者介面端,再由使用者介面端傳遞訊號給伺服器端,再透過RS232傳送到家電控

    制端達到線上家電控制的效果,只需要使用個人電腦或新型智慧型手機就可以達

    到家電控制的功能,無須安裝繁複的應用程式只要有瀏覽器就可以連接到線上家

    電控制系統。

    因為身障者行動不便,所以特別開發這套線上家電控制系統,只需要使用攜帶

    式智慧型手機,身障者不需要來回走動,就可以開啟家裡面的家電用品。

    這套線上家電控制系統不只有以上這個好處,比方說就算人出去國外旅遊,還

    是可以控制家裡面的家電,使家裡面的電燈打開,讓小偷誤以為家中有人,而不

    敢來偷竊,再舉個例在天氣炎熱的時候,從戶外打完球後很熱,所以可以在回家

    以前使用新型智慧型手機,透過瀏覽器連接到線上家電控制系統打開家裡面的冷

    氣,讓使用者從戶外打完球回到家中能享受到涼爽的家。

  • 64

    參考文獻

    書籍

    [1] 郭庭吉,8051 單晶片微電腦專題製作,台科大出版,2004 年。

    相關專題

    [2] 鄭琨霖、金忠信、趙泓翔、陳弘斌,利用 8051 微控制器及電腦網路遠端遙控家電,專題報告,逢甲大學資訊工程系。

    [3] 張原誌,以 8051 整合進行網際網路遠端家電控制之開發與應用,專題報告,逢甲大學通訊工程系。

    相關論文 [4] 黃永順 李坤敏 吳文鈴 林文瑋, “OSGi 開放式服務平台技術家用閘道器與智慧

    型車輛之應用” 工業技術研究院 電腦與通訊工業研究所