近場通訊標籤管理系統之研究
全文
(2) 摘要 近場通訊標籤管理系統之研究 陳昱賢 近年來,新型的智慧型手機都具有近場通訊的功能,許多應用程式或相關商 業活動開始利用近場通訊技術進行不同的應用開發。NFC 標籤具有重複利用之特 性,應用程式搭配使用 NFC 標籤可以達到特定功能,但欲使用同個 NFC 標籤達 到不同的目的,此時利用 NFC 標籤的可重複性使用特性,將所需要的目的資訊, 利用碰觸的動作將資料覆蓋寫入 NFC 標籤內,但若需要多個不同應用之 NFC 標 籤,這時要如何有效的管理 NFC 標籤,是本研究重要的探討議題。 本研究旨在發展一套應用於 Android 智慧型手機之 NFC 近場通訊標籤管理系 統,將不同的應用程式結合後端管理,透過不同的帳號管理層級,達到階層化的 管理,本系統以後端管理為主,結合三種不同的應用包含 NFC 標籤紀錄、區域管 理和運動 NFC。後端管理將依照 NFC 標籤格式自動化分類,並利用表格以及圖 形化提供使用者不同的 NFC 標籤紀錄顯示模式;本系統規劃帳號管理有三種使用 者模式,包含 Manager、Leader 和 User,使用者名稱可以依據使用者需求做適當 的修改,例如:管理者、老師、學生。透過本系統的設計模式,不僅可以達到管 理者與使用者的區分,也可以有效管理各種不同應用的 NFC 標籤,並可以從 NFC 標籤記錄得到所需的資訊。. 關鍵字:Android、近場通訊、NFC 標籤紀錄、區域管理.
(3) ABSTRACT Research on NFC Tag Manager System By Yu Hsien Chen In recent years, the new smart phone equips with NFC function, many applications or related commercial activities use NFC technology for various application development. NFC tag with repeated using of the characteristics which the application can be achieved particular function with the using of an NFC tag, the NFC tag content can be overwritten by touching the NFC tag, it can reach another function, in case it need different application by multiple NFC tags, then how to effectively manage NFC tag is important, it is an important issue to explore it. This study is aimed to develop a tag manager system on Android smart phone with NFC technology, the use of Near Field Communication NFC tag management will combine different applications with the back-end management, account management through different classes, reaching levels of management, the system is based on back-end, include NFC tag records, regional management and sports NFC. back-end management will follow the format of automated classification NFC tags and use tables and graphics provide users with different NFC tags record display mode; the system plan account management with three user modes, including the Manager, Leader, User, the user name can be based on user needs to make the appropriate changes, for example: manager, teacher, student. Though this system design model, not only can achieve the distinction between managers and users, but also can effectively manage a variety of different applications of NFC tag, and Manager can get desired information from NFC tags record. Keywords: Android, NFC, NFC tag record, Regional management.
(4) 誌謝 兩年的研究所日子,讓我在 XML 實驗室學到很多,非常感謝指導教授 葉耀 明博士從我一開始進入實驗室,到完成論文細心地引導以及指導我,也非常感謝 共同指導教授 張芳仁博士給予我許多有關論文的啟發,以及我需要的協助。這 兩年期間感謝兩位教授的帶領之下,接觸到很多不同的計劃,也學習到許多團隊 溝通以及合作的實務經驗,也感謝呂永和教授,在百忙中抽空來擔任口詴委員, 對於論文給許相當寶貴的意見,使得論文內容可以更加完整、豐富。 感謝實驗室同學,浩中、志忠、隘同、文寬、哲維、書銘、禮衛、雨曄,在 我就讀研究所期間,給予我的諸多照顧,包含在參與計畫、學習、研究讓我學從 中學習到很多。也感謝學長姊,瀧濱、永倫、芝華、惠迪、孝倫、慶瑞、冠緯、 明憲、韋德、鏞年、垂頤的教學以及帶領,還有感謝學弟妹,念學、清晏、名甫、 聖儒、馨民、奐均、醇洋在計畫上的協助,幫助我有更多的時間可以專注在論文 上,很高興可以在 XML 實驗室認識大家,更高興大家一起共事的時光。 最後我要感謝我的父母以及所有家人,一路支持我念書,在我專注在研究時, 總是能站在我的角度替我分擔許多事情,讓我最後完成論文以及研究所的課業。 在此我要再一次誠心感謝以上所有的人,謝謝你們的大力幫忙。. 陳昱賢 謹致 國立臺灣師範大學 資訊工程研究所 民國 102 年 6 月 i.
(5) 目錄 附表目錄........................................................................................................................ iv 附圖目錄......................................................................................................................... v 第 1 章 緒論................................................................................................................... 1 1.1 研究背景與動機.............................................................................................. 1 1.2 研究目的.......................................................................................................... 2 1.3 論文規劃.......................................................................................................... 3 第 2 章 文獻探討........................................................................................................... 4 2.1 近場通訊(Near Field Communication,NFC) .......................................... 4 2.2 電子地圖(Electronic Map) ......................................................................... 8 2.3 全球定位系統(Global Positioning System,GPS) ................................... 9 2.4 Android 作業系統 ......................................................................................... 11 2.4.1 Android 系統架構 .............................................................................. 11 2.4.2 應用程式............................................................................................. 12 2.5 NFC 標籤 ........................................................................................................ 13 第 3 章 NFC 標籤管理系統 ........................................................................................ 17 3.1 系統架構........................................................................................................ 18 3.2 資料庫伺服器................................................................................................ 19 3.3 NFC 標籤格式 ............................................................................................... 21 3.4 NFC 標籤統計 ............................................................................................... 23 3.5 方法與步驟.................................................................................................... 25 第 4 章 NFC 標籤紀錄 ................................................................................................ 27 4.1 說明................................................................................................................ 27 4.2 功能設計........................................................................................................ 27 4.2.1 帳號密碼登入..................................................................................... 27 4.2.2 NFC 標籤資料傳輸方式 .................................................................... 28 4.3 功能實作........................................................................................................ 29 4.3.1 寫入 NFC 標籤 ................................................................................... 30 4.3.2 讀取 NFC 標籤 ................................................................................... 31 4.3.3 上傳及刪除 NFC 標籤紀錄 ............................................................... 33 第 5 章 系統運用範例................................................................................................. 35 5.1 運動進場通訊................................................................................................ 35 5.1.1 功能設計............................................................................................. 36 5.1.2 NFC 標籤格式 .................................................................................... 36 5.1.3 建立跑步地點..................................................................................... 36 5.1.4 開始跑步............................................................................................. 39 ii.
(6) 5.2 區域管理........................................................................................................ 41 5.2.1 Leader .................................................................................................. 43 5.2.2 User ...................................................................................................... 47 第 6 章 後端管理功能................................................................................................. 50 6.1 說明................................................................................................................ 50 6.2 Manager .......................................................................................................... 51 6.2.1 建立、編輯、刪除 Leader ................................................................ 52 6.2.2 NFC 標籤統計 .................................................................................... 55 6.2.3 設定 User 區域資訊 ........................................................................... 59 6.2.4 觀察 User 闖入資訊 ........................................................................... 60 6.2.5 增加自訂 NFC 標籤 ........................................................................... 61 6.3 Leader ............................................................................................................. 62 6.3.1 分組..................................................................................................... 63 6.3.2 分組資訊............................................................................................. 64 第 7 章 結論與未來展望............................................................................................. 65 7.1 結論................................................................................................................ 65 7.2 未來展望........................................................................................................ 67 參考文獻....................................................................................................................... 68. iii.
(7) 附表目錄 表 2.1 表 2.2 表 2.3 表 2.4. NFC 與其他無線通訊技術比較 ........................................................................ 6 NFC 標籤種類 (資料來源:NFC Forum) .................................................... 14 TNF 設定值(資料來源:Android Developers) ............................................... 15 TNF 的值是 TNF_WELL_KNOWN,Type 設定值(資料來源:Android. Developers) ........................................................................................................... 16 表 2.5 NFC 近場通訊技術標準(資料來源:Android Developers)........................... 16 表 3.1 Client 端開發環境 ............................................................................................ 26 表 3.2 Server 端開發環境 ........................................................................................... 26. iv.
(8) 附圖目錄 圖 2.1 NFC 與其他無線通訊技術比較圖(資料來源:http://www.NFCLab.com, 2010/11) ........................................................................................................... 5 圖 2.2 NFC 技術架構(資料來源:NFC Forum) .......................................................... 7 圖 2.3 GPS 衛星分布示意圖(資料來源:全人教育百寶箱 林傳傑繪圖) .............. 9 圖 2.4 Android 架構圖(來源:Android Developers) ............................................ 12 圖 2.5 Android 作業系統運作 .................................................................................... 13 圖 3.1 應用程式結合後端管理圖............................................................................... 18 圖 3.2 系統架構圖....................................................................................................... 18 圖 3.3 標籤及應用程式資訊資料庫........................................................................... 20 圖 3.4 自訂標籤資料庫............................................................................................... 20 圖 3.5 網頁伺服器....................................................................................................... 21 圖 3.6 上傳式標籤內容............................................................................................... 23 圖 3.7 場景式標籤內容............................................................................................... 23 圖 3.8 地點式標籤內容............................................................................................... 23 圖 3.9 網路位址式標籤內容....................................................................................... 23 圖 3.10 資源式標籤內容............................................................................................. 23 圖 3.11 直條圖 ............................................................................................................. 24 圖 3.12 線條圖............................................................................................................. 24 圖 3.13 區域圖............................................................................................................. 25 圖 3.14 派餅圖............................................................................................................. 25 圖 3.15 NFC 標籤資訊上傳循序圖 ............................................................................ 26 圖 4.1 NFC 標籤紀錄系統架構圖 ............................................................................... 27 圖 4.2 收取郵件取得帳號密碼................................................................................... 28 圖 4.3 NFC 標籤資料傳輸方式 .................................................................................. 29 圖 4.4 帳號密碼輸入................................................................................................... 29 圖 4.5 Leader 登入畫面 .............................................................................................. 30 圖 4.6 User 登入畫面 .................................................................................................. 30 圖 4.7 寫入 NFC 標籤 ................................................................................................. 31 圖 4.8 點選上傳模式................................................................................................... 31 圖 4.9 讀取 NFC 標籤畫面 ......................................................................................... 32 圖 4.10 建立資料庫檔案以及建立資料表................................................................. 32 圖 4.11 新增一筆資料至資料庫 ................................................................................. 33 圖 4.12 刪除資料表..................................................................................................... 33 圖 4.13 上傳 NFC 標籤資料確認 ............................................................................... 34 圖 4.14 手動刪除 NFC 標籤紀錄 ............................................................................... 34 圖 4.15 關閉資料庫..................................................................................................... 34 v.
(9) 圖 5.1 圖 5.2 圖 5.3 圖 5.4 圖 5.5 圖 5.6 圖 5.7 圖 5.8 圖 5.9. 運動近場通訊架構圖....................................................................................... 35 地點標籤內容................................................................................................... 36 帳號密碼輸入................................................................................................... 37 系統功能列....................................................................................................... 37 寫入 NFC 標籤畫面 ......................................................................................... 38 長按 Google Map 畫面 .................................................................................... 38 點選箭頭畫面................................................................................................... 38 箭頭處街景畫面............................................................................................... 38 點選確定後畫面............................................................................................... 39. 圖 5.10 圖 5.11 圖 5.12 圖 5.13 圖 5.14 圖 5.15 圖 5.16 圖 5.17 圖 5.18. 寫入 NFC 標籤完成 ....................................................................................... 39 感應第一個地點標籤 ..................................................................................... 40 感應第二地地點標籤..................................................................................... 40 感應第三個地點標籤..................................................................................... 40 區域管理流程圖............................................................................................. 42 帳號密碼輸入................................................................................................. 43 Leader 系統運作圖 ........................................................................................ 43 區域資訊編輯................................................................................................. 44 地點資訊......................................................................................................... 45. 圖 5.19 圖 5.20 圖 5.21 圖 5.22 圖 5.23 圖 5.24 圖 5.25 圖 5.26 圖 5.27 圖 5.28. 混合圖............................................................................................................. 45 衛星圖............................................................................................................. 45 地形圖............................................................................................................. 45 完成輸入區域資訊......................................................................................... 46 區域資訊上傳確認......................................................................................... 46 寫入 NFC 標籤區域資訊 ............................................................................... 47 User 系統運作圖 ............................................................................................ 48 User 禁止區域 ................................................................................................ 49 禁止區域顯示................................................................................................. 49 感應 NFC 標籤 ............................................................................................... 49. 圖 5.29 警告通知......................................................................................................... 49 圖 6.1 後端管理架構圖............................................................................................... 50 圖 6.2 管理介面架構圖............................................................................................... 51 圖 6.3 Manager 帳號密碼輸入 ................................................................................... 51 圖 6.4 Manager 註冊資料 ........................................................................................... 52 圖 6.5 建立 Leader ...................................................................................................... 53 圖 6.6 編輯 Leader ...................................................................................................... 53 圖 6.7 刪除 Leader ...................................................................................................... 54 圖 6.8 信件內容........................................................................................................... 54 圖 6.9 Outlook 信件畫面 ............................................................................................ 55 vi.
(10) 圖 6.10 圖 6.11 圖 6.12 圖 6.13 圖 6.14 圖 6.15 圖 6.16 圖 6.17 圖 6.18. 地點標籤資訊................................................................................................. 55 地點標籤總數 ................................................................................................. 56 長條圖............................................................................................................. 56 折線圖............................................................................................................. 57 區域圖............................................................................................................. 57 派餅圖............................................................................................................. 58 自訂標籤資訊................................................................................................. 58 使用者標籤使用紀錄..................................................................................... 59 編輯 User 區域資訊 ....................................................................................... 59. 圖 6.19 引用 Google Ajax Libraries API 語法............................................................ 60 圖 6.20 系統提示訊息................................................................................................. 61 圖 6.21 觀察系統提示編號資訊................................................................................. 61 圖 6.22 增加自訂 NFC 標籤 ....................................................................................... 62 圖 6.23 Leader 帳號密碼輸入 .................................................................................... 63 圖 6.24 分組畫面......................................................................................................... 64 圖 6.25 群組資訊......................................................................................................... 64 圖 7.1 系統資料........................................................................................................... 66. vii.
(11) 第1章. 緒論. 1.1 研究背景與動機 過去有許多以 RFID 為基礎發展的系統,例如:人員出入管理[18]、飯店管 理[17]等等,這些系統都需要額外的標籤裝置而增加成本的負擔。近期由 RFID 發展出 NFC 近場通訊之應用,NFC 晶片是內嵌在智慧型手機內,對於各種系統 的發展無疑是一大進展。透過人手一台的智慧型手機以及 Android 系統通用的軟 體下載帄台,減少各種發展系統的成本。 在目前市面上有許多手機,都有 NFC 近距離無線通訊的功能,Android 系統 的「Play 商店」上也有很多開發者上傳提供 NFC 的應用程式,而 NFC 裝置大部 分都需要搭配 NFC 標籤,才可以依應用程式所提供的功能運作。然而這些 NFC 標籤缺乏一個制式管理機制,去管理使用者的行為、習慣等使得其管理運作無法 達到最佳化,這些都是應該要去探討的事。 智慧型手機有各種不同的應用程式,這些應用程式的功能都是透過個人需求 人為啟動或結束,啟動應用程式某種功能有幾種方式,包括手動開啟、系統設定 自動開啟或透過 NFC 開啟等等,結束應用程式亦是如此。這種開啟或關閉的動作 都可以透過 NFC 無線通訊技術快速感應 NFC 標籤的方式完成,因此 NFC 標籤內 的資料主要是依照使用者需求的功能將資料寫入 NFC 標籤。 NFC 標籤的內容可以儲存的內容有各種不同的形式,可以應用在不同環境中,. 1.
(12) NFC 標籤有各種不同的方式提供使用者使用,例如在一個公司環境內部署 NFC 標籤在不同裝置上[10],NFC 標籤的設置使得環境內的使用者達到便利的效果, 但這些 NFC 標籤若是沒有經過管理,會造成許多 NFC 標籤不必要的使用或浪費。 現階段 NFC 標籤都是以應用為主,例如如何讓 NFC 標籤依照使用者需求完成所 需的功能,NFC 論壇也訂定關於 NFC 標籤應用的標準格式,但對於 NFC 標籤的 使用方式不局限於 NFC 論壇訂定的標準格式,也可以依據使用者需求讓 NFC 標 籤完成所需的動作,例如將電子檔案儲存至不同的 NFC 標籤內,依據使用者需求 的檔案讀取所需的 NFC 標籤,或是將 NFC 標籤與鑰匙結合[11],只要將所需的 內容寫入 NFC 標籤內,就可以完成鑰匙的功能,甚至更多的功能像是付費等等。 NFC 標籤有如此多的功能應用,要如何結合智慧型手機搭配 NFC 標籤分類以及 管理,是值得探討的重要議題。. 1.2 研究目的 本研究旨在發展一套 Android 智慧型手機帄台應用的 NFC 標籤管理系統,透 過設計 NFC 標籤格式的方式,可以將 NFC 標籤使用紀錄做有效的分類分級管理。 使用者在使用 NFC 應用程式時,將 NFC 標籤使用記錄上傳至後端管理,提 供後端管理統計以及分析。過去從 NFC 無線通訊技術發展以來,極力發展於各種 不同的應用開發,卻疏忽 NFC 標籤的管理,希望透過本研究系統架構的分析以及 多方面考量,提出 NFC 標籤管理系統,提供 NFC 應用程式開發者管理 NFC 標籤。. 2.
(13) 主要系統開發模式是透過後端管理搭配各種不同的 NFC 應用程式,完成一套可真 實應用的 NFC 標籤管理系統。. 1.3 論文規劃 本論文一共分為七個章節,各章節內容敘述如下: 第一章. 緒論:介紹研究背景與動機、研究目的以及論文規劃。. 第二章. 文獻探討:介紹本系統所需要的背景知識,包含近場通訊、電子地圖、 全球定位系統、Android 作業系統、NFC 標籤等等。. 第三章. NFC 標籤管理系統:針對系統需求進行分析,提出 NFC 標籤管理模式, 介紹方法以及步驟。. 第四章. NFC 標籤紀錄:介紹 NFC 標籤紀錄系統,搭配後端管理模組及細說各 項功能如何製作與呈現。. 第五章. 系統應用範例:介紹運動近場通訊以及區域管理,搭配後端管理模組、 NFC 標籤紀錄及細說各項功能如何製作與呈現。. 第六章. 後端管理:介紹後端管理標籤、帳號管理模式,以及細說各項功能如何 製作與呈現。. 第七章. 結論與未來發展:結論與未來發展。. 3.
(14) 第2章. 文獻探討. 2.1 近場通訊(Near Field Communication,NFC) 近場通訊(Near Field Communication,NFC) ,又稱近距離無線通訊,是一種 短距離的高頻無線通訊技術,允許在十公分內進行非接觸式點對點資料傳輸、交 換資料。近場通訊技術由 Philips、Sony 及 Nokia 研製開發,並在 2004 年 3 月共 同成立 NFC 論壇[3],提供全球推展 NFC 各項應用及技術廠商之交流,其中包含 德國哈瑙,NOKIA 推出全球第一個商業化的服務;南韓首爾和法國坎城進行商 業合作,三星、鮮京電信(SKT)與法國電信業者合作展開 NFC 手機測詴;日本與 韓國是最早將 Felica 系統與 NFC 手機結合應用於消費與交通票證上。2006 年, 發展 NFC 標籤針對智能海報紀錄的技術規格,而 Nokia 推出首部支援 NFC 技術 的手機 Nokia6313,2009 年,NFC 論壇發展出使用 NFC 技術交換聯絡人資料、 網址以及應用程式,以及啟動藍芽裝置等相關技術規格。目前國際上提出 NFC 標準的主要組織有:ISO、ECMA、NFC Forum;NFCIP-1(ECMA-340,ISO/IEC 18092) 、NFCIP-2(ECMA-352, ISO 21481) 、NFC-WI(ECMA-373、ISO/IEC DIS 28361) ,皆已通過 ECMA 國際組織審核及送至認證機關,以 ISO、ISO/IEC 及 ETSI 的標準推出。 近場通訊是基於 RFID 辨識技術以及無線網路協定來做資料傳輸,與其他的 無線傳輸技術的傳輸速率以及範圍比較如圖 2.1。近場通訊技術並沒有取代任何. 4.
(15) 無線傳輸技術,主要基於 RFID 的 13.56GHz 傳輸頻段,NFC 技術與 RFID 不同的 地方是當 NFC 被當作無線技術連結點的時候,NFC 採用雙向識別及連接的方式。 NFC 近場通訊目前最高傳輸速率最高為 424Kbps,未來速率也會提升至兩倍甚至 更高,NFC 與其他無線通訊技術如表 2.1,由於短距離傳輸並不像行動通訊一般 涵蓋相當大的使用區域範圍(WAN),因此只要對小區域的使用範圍中的使用者 做最適合的通道規劃,因此大部分的短距離無線通訊標準與技術均建立或制定在 免使用費的 ISM 頻段。近場通訊解決的部分無線通訊的問題,NFC 提供使用者 無頇輸入網址便可以連結 WAP 站點,解決了無線上網用戶接口的問題;在商業 領域方面,非接觸付款堆動了商業發展,在亞洲的公共運輸系統中得到了廣泛應 用。近場通訊透過非接觸性的動作結合應用程式的功能,達到用戶所需的目的, 安全性方面,相較其他無線通訊技術,由於極短距離的傳輸資料,在用戶使用過 程中,資料被竊取的機率大大減少。. 圖 2.1 NFC 與其他無線通訊技術比較圖(資料來源:http://www.NFCLab.com,2010/11) 5.
(16) 表 2.1 NFC 與其他無線通訊技術比較. 國際標 準. NFC. RFID. Bluetooth. Wi-Fi. ZigBee. UWB. IEC. EPC&ISO. IEEE. IEEE802.11b. IEEE. IEEE. 802.15.1. IEEE 802.11g. 802.15.4. 802.15.3. 18092/21481. 最大傳. 10 cm. 3m. 10 - 100 m. 100 m. 10 - 75 m. 0 – 10m. 13.56 MHz. 可變. 2.4 GHz. 2.4/5. 2.4 GHz. 3.1 –. 輸距離 傳輸頻 段. 10.6GHz. 傳輸方. 雙向. 單向. 雙向. 雙向. 雙向. 雙向. 傳輸速. 低. 可變. 中. 高. 低. 高. 度. 106/212/ 424. 1 Mbps. 144 Mbps. 250 kbps. 53.3 –. 向. Kbps. 480Mbps. 一般應. e-Tickets,信. 高速公路過. 手機間傳輸. 用. 用卡等等. 路站等等. 等等. 安全性. 極高. 中等. 高. 晶片組. 約 2~3 歐元. 可變. 約 5 美元. 無線網路. 家庭自動. 家庭娛樂. 控制等等. 網路. 低. 中等. 高. 約 25 美元. 約 4 美元. 約 20 美元. 價格. 近場通訊在單一裝置內有各種不同的應用,像智慧卡片、裝置間資料的交換、 讀取智慧海報的讀卡機等不同模式的應用。 NFC 近場通訊主要的工作模式為以下三項: 1. 卡模式(Card emulation):此模式相當於一張採用 RFID 技術的 IC 卡。此 種方式可以代替各種不同的 IC 卡或是信用卡、悠遊卡、車票、電影票、 門禁管理、工地人員管理等等。此種方式有極大的優點,那就是 NFC 是 透過非接觸式的讀取器的 RF 域(Range)來供電,即使是 NFC 裝置沒電也 可以工作。 2. 點對點模式(P2P mode):此種模式跟紅外線傳輸近似,可用於資料交換, 但傳輸距離較短,建立傳輸的方式、傳輸速度也比較快,功耗也相對較 6.
(17) 低。將兩個 NFC 裝置連結,就能實作點對點傳輸,如下載音樂、交換圖 片,或是通訊錄同步,甚至是交換網頁資訊等等。因此透過 NFC,各種 不同的裝置如筆電、PDA、數位相機、數位手錶等等,都可以相互交換 資訊或是服務。 3. 讀卡器模式(Reader/writer mode):作為非接觸式的卡片使用,例如可以從 海報、展覽、電影院預告牆等不同電子標籤獲取相關的訊息,透過開發 者將各種不同資訊設定在非接觸式的卡片中,再將此卡片結合各式不同 應用或場景當中。. 圖 2.2 NFC 技術架構(資料來源:NFC Forum). 7.
(18) 2.2 電子地圖(Electronic Map) 電子地圖(Electronic Map)是利用計算機的技術,以數字的方式儲存和查閱 的地圖。電子地圖儲存資料的方法,一般是使用向量式圖像儲存,顯示地圖的比 例可以放大或是縮小,早期的點陣式儲存地圖則是不能放大或縮小,現代的電子 地圖幾乎都是透過網際網路傳送和地理訊息系統儲存地圖資訊。 地理資訊系統(GIS,Geographic Information System)[12]是一門綜合性科學, 目前已經廣泛應用在不同領域,用於輸入、儲存、查詢、分析和顯示地理資訊的 計算機系統。GIS 能夠應用在科學調查、資源管理、財產管理、發展規劃和路線 規劃等等,再將這些應用結合電子地圖,能夠使整體的應用更加完整。 在 2012 年 12 月 3 日 Google Maps Android API v1 已經正式停止發展,意味 著所以 v1 的 Google Maps 應用程式開發已經不會增加任何新功能,另外 2013 年 3 月 18 日開始無法再取得 Google Maps API 的 Key,不過 Google Maps v1 還是持 續提供服務。2012 年 12 月開始 Google 已經正式發展出新一代 Google Maps Android v2[2],第二版的地圖相較於第一版,開發者可以更方便使用其 API,包 含有不同的地圖顯示模式,以及顯示地形圖、交通資訊等等,此外新版地圖上多 了 3D 物件顯示,開發者可以在 Google Map 上面加標記、繪製線條以及增加圖層 以達到更豐富的圖形呈現,不管學術或是商業上的應用都可以更方便上手,將地 圖應用在不同的功能上,達到不同的需求,因此 Google Maps 被廣泛應用。. 8.
(19) 2.3 全球定位系統(Global Positioning System,GPS) 全球定位系統(Global Positioning System,GPS),是一個圓形軌道衛星導航系 統,它可以為地球絕大部分地區提供精確的定位、測速、高精度的時間標準。該 系統是由美國國防部研發製作以及維護,可以滿足全世界各地的軍事確定三維位 置和時間的需要。系統包含太空的 24 顆 GPS 衛星;地表一個主控站、三個數據 輸入站和五個監測站作為用戶端的 GPS 接收機,並提供 24 小時全天候的定位與 導航資訊。GPS 具有許多優點,即使天氣不佳訊號仍然可以保持穿透性;三維定 位快速、高效率,在應用方面相當廣泛,也可移動定位。. 圖 2.3 GPS 衛星分布示意圖(資料來源:全人教育百寶箱 林傳傑繪圖). GPS 全球定位系統約分成三個部分:太空衛星、地面管制、使用者接收端。 太空衛星部分由 24 衛星組成均分在 6 個軌道帄面上,每顆衛星會持續發射無線 電波提供地球上的接收器來應用。地面管制主要是為了追蹤和控制衛星運轉,負 責修正與維護衛星能正常運轉的各項參數數據,確保衛星提供正確的數據給使用 9.
(20) 者接收。使用者接收端主要追蹤所有的衛星,並計算出正確的位置,包含移動速 度和時間等等。 輔助全球衛星定位系統(Assisted Global Positioning System,AGPS)是一個 藉由特定伺服器的協助,將定位所需的衛星資訊下載到伺服器,伺服器再藉由手 機基地台輔助,透過基地台發出信號,找出行動裝置位置,將資訊透過網路傳送 至行動裝置,完成定位。利用以上方式定位是因為行動裝置第一次開啟 GPS 定位 會花上不少時間,因此才做這樣的設計,這樣的方式,是將開啟 GPS 定位所需的 前置作業,大部份已經先被輔助伺服器處理完畢,因此取得衛星星曆時間大大縮 短,如此,經由行動裝置基地台取得資料更方便,不一定要在空曠處也能完成定 位的動作。 透過手機定位伺服器定位的方式,優點為定位速度快,缺點則是定位稍微有 誤差,而 AGPS 是將基地台定位速度快的優點加到 GPS 定位中。目前行動通信系 統中,APGS 透過手機定位伺服器協助 GPS 接收器,完成測距和定位服務,手機 定位伺服器有比 GPS 接收器強大的 GPS 信號接收環境和能力,在這種情況下, 是以手機定位伺服器通過網路與手機的 GPS 接收器通信提供定位的處理動作。 現在的 Android 作業系統智慧型手機,幾乎都有搭載 GPS 定位系統[13],並 利用 GPS 定位系統與應用程式開發結合。透過 GPS 結合 Google Map 的應用,可 以完成定位並視覺化的顯示在電子地圖上,因此使用者可以透過電子地圖的街道 名稱顯示更了解自己的方位。 10.
(21) 2.4 Android 作業系統 Android 是一個以 Linux 為基礎的半開放原始碼的作業系統,主要用在行動 裝置上。Android 是由 Google 在 2007 年 11 月公布的智慧型手機作業系統,Google 以 Apache 免費開源許可證的授權方式,發布了 Android 的原始碼,之後讓出產商 推出搭載 Android 的智慧型手機,Android 作業系統也逐漸拓展到帄板電腦、嵌入 式系統或其他裝置上。 目前 Android 作業系統版本,更新到 4.2.x(Jelly Bean)。主要架構在 Linux Kernel 3.0.31 上,API 層級 17,主要更新內容有支援巢狀式 Fragment(Nested Fragments)、全景式拍攝、帄板電腦支援多使用者帳號輸入、可以將畫面顯示在 第二個螢幕(可透過 Wi-Fi)等。. 2.4.1 Android 系統架構 Android 系統採用了軟體堆疊(software stack)架構如圖 2.4,主要分成三部分。 底層以 Linux 核心工作為基礎,只提供基本功能,中間層為函示庫(Libraries) 和 Android Runtime 作為作業系統與應用程式的溝通橋樑,分為核心函式庫 (Libraries)和虛擬機器(Virtual Machine),上層應用軟體則由各開發者自行開 發,以 Java 語言編寫。. 11.
(22) 圖 2.4 Android 架構圖(來源:Android Developers). 2.4.2 應用程式 Android 系統以 Linux 為核心的行動帄台,使用 JAVA 為程式語言,從介面到 功能有各式各樣不同的變化,在 Android SDK(軟體開發套件)所用的手機模擬器 和實體手機中,都有一系列以 JAVA 語言撰寫的核心應用程式,包括電子郵件程 式、簡訊程式、地圖、日曆、網頁瀏覽器、聯絡人和圖片瀏覽器,或其他應用程 式,讓使用者一開始就可以使用這些應用程式操作手機。目前 Android 作業系統 本身已提供基本桌面(Home)、網頁瀏覽器(Browser)、電話簿(Contact)、數位電話 (Phone)等核心應用程式。 應用程式開發人員可以使用 Android 應用程式開發帄台提供的 API[1],開發 自己的應用程式。Android 作業系統是以一個主要執行緒為基礎來執行 Android. 12.
(23) 相關的組件,其中組件包括機動程式(Activities)、服務程式(Services)、廣播接收 程式(Broadcast Receivers)和資料內容提供(Content Providers),Android 作業系統是 採用 Dalvik Virtual Machine 虛擬系統做為開發資源如圖 2.5。. 圖 2.5 Android 作業系統運作. 2.5 NFC 標籤 NFC 電子標籤的種類,主要是由 NFC Forum 定義的四種不同類別的 Type[5]。 依照不同的傳輸速度、協定、記憶體大小和使用的方式做分類如表 2.2,透過不 同的需求應用,而使用不同的 NFC 標籤種類[4]。. 13.
(24) 表 2.2 NFC 標籤種類 (資料來源:NFC Forum). NFC 標籤主要的資訊技術: . NDEF(NFC Data Exchange Format)技術規格:制訂合乎 NFC Forum 定 義、規範的 NFC 裝置、NFC 標籤的共通資料格式。. . RTD(NFC Record Type Definition)技術規格:規範、定義用於 Message 的資料記錄型態,Message 主要是用在符合 NFC Forum 的 NFC 裝置之 間的通訊,以及 NFC 裝置與 NFC 標籤之間的通訊。. 最基本的用法是 NDEF(NFC Data Exchange Format)[6],它具有下列功能: . 從 NFC 標籤讀取 NDEF 格式資料。. . 從一個 NFC 裝置傳送 NDEF 資料到另外一個裝置。. NDEF 提供一個有效率且簡略方式,依照 NFC 提供的訊息格式,讓使用者可 以達到各種需求,像是封裝任意的格式包括加密的資料、XML 文件、圖片資料 14.
(25) 等。在 Android 系統中,NFC 標籤中 NDEF 資料是封裝在一個 NFC message 裡面, NFC message 可以有一個或多個 NDEF records;NDEF records 可以封裝任何類型 的資訊,一個 NDEF record 含有以下資訊: . TNF(Type Name Format) 決定 Type 欄位的格式,TNF 的幾項設定值如表 2.3。. . Type TNF 欄位的值決定此欄位的資料格式如表 2.4。例如:TNF 值為. media-type,這個欄位就是 media-type 等等。 . ID record 的 ID 編號,通常不需要設定。. . Payload 用來儲存實際的資料,NFC message 中的資料可以分開儲存在多個 record. 中。 表 2.3 TNF 設定值(資料來源:Android Developers) TNF 設定值. 說明. TNF_ABSOLUTE_URI. Type 欄位是 URI 資料. TNF_MIME_MEDIA. Type 欄位是描述 MIME 的型態. TNF_UNCHANGED. 系統以 ACTION_TECH_DISCOVERED 的方式處理. TNF_UNKNOWN. 系統以 ACTION_TECH_DISCOVERED 的方式處理. TNF_EMPTY. 系統以 ACTION_TECH_DISCOVERED 的方式處理. TNF_WELL_KNOWN. Type 欄位是 RTD 類型. TNF_EXTERNAL_TYPE. Type 欄位是 External 類型. 15.
(26) 表 2.4 TNF 的值是 TNF_WELL_KNOWN,Type 設定值(資料來源:Android Developers) Type 欄位值. 說明. RTD_ALTERNATIVE_CARRIER. 系統會以 ACTION_TECH_DISCOVERED 的方式處理. RTD_HANDOVER_CARRIER. 系統會以 ACTION_TECH_DISCOVERED 的方式處理. RTD_HANDOVER_REQUEST. 系統會以 ACTION_TECH_DISCOVERED 的方式處理. RTD_HANDOVER_SELECT. 系統會以 ACTION_TECH_DISCOVERED 的方式處理. RTD_SMART_POSTER. 包含 URI record 在 Payload 欄位. RTD_TEXT. MIME 類型是 String. RTD_URI. Payload 欄位是 URI. 通常 NFC 標籤會利用 NDEF 格式儲存資料,當 Android 系統接收到 NDEF 格式的 Message 時,系統會自動解析其中的資料。但當遇到非 NDEF 格式的 NFC 標籤時,系統會建立 ACTION_TECH_DISCOVERED 型態的 Intent,如果程式接 收到這種 Intent 就表示必頇自己解析 NFC 標籤中的資料,有幾項 NFC 近場通訊 技術標準如表 2.5。 表 2.5 NFC 近場通訊技術標準(資料來源:Android Developers) 類別. 說明. ISODep. 提供存取 ISO DEP(ISO 14443-4)和 I/O 運作. NcfA. 提供存取 NFC-A(ISO 14443-3A)和 I/O 運作. NcfB. 提供存取 NFC-B(ISO 14443-3B)和 I/O 運作. NcfF. 提供存取 NFC-F(JIS 6319-4)和 I/O 運作. NcfV. 提供存取 NFC-V(ISO 15693)和 I/O 運作. Ndef. 提供存取 NDEF 資料和操作已被格式化為 NDEF 的 NFC 標籤. NdefFormatable. 提供存取 NDEF 格式的標籤操作. MifareClassic. 提供存取 MIFARE Classic 屬性和 I/O 操作. MifareUltralight. 提供存取 MIFARE Ultralight 屬性和 I/O 操作. 16.
(27) 第3章. NFC 標籤管理系統. 近年來有許多以 RFID 標籤為主的管理系統應用[9][16],RFID 應用主要分為 主動式和被動式,主動式的應用容易遭受環境的各種影響[15],導致傳輸效果不 甚理想,例如:在 RFID 應用在工廠或是工地環境中,充滿金屬物品情況下,會 造成 RFID 電磁波的傳送過程受阻礙;在開放空間中,會有電磁波洩漏而造成干 擾,在濕氣比較重的環境下,也會影響到 RFID 的電磁波的傳送;RFID 裝置的天 線方向擺設,關係到電磁波是否會正確地將資料傳送到需要的裝置。相對於 RFID, NFC 由於短距離傳輸的特性,關於此類的問題會比較少,基於 NFC 有以下幾個 特點,NFC 近場通訊標籤系統可以針對各種應用而減少各種外在影響的條件,使 得整體系統運作更為順利。 . 直觀:NFC 互動只要一個簡單的動作“觸碰”,就可以完成。. . 多功能:可以廣泛應用在工業、特定環境和自訂環境上。. . 公開且基於國際標準:底層技術基於國際標準,ISO、ECMA、ETSI。. . 啟用技術:NFC 設備在無線技術上快速且簡單設置特性,優於藍芽、 Wi-Fi 等等。. . 安全性:傳輸距離短。. . 操作性:NFC 運作在現存非接觸式的技術上。. . 安全防備:NFC 已經內建在支援安全的應用上面。. 17.
(28) 3.1 系統架構 本研究提出的 NFC 標籤管理系統整合分類分級的管理模式,希望在不同應用 程式透過相同的後端管理介面[14],整合各種以近場通訊開發的應用程式如圖 3.1, 主要以 Http Post 方法傳遞資料;主旨為 NFC 標籤管理、使用 NFC 標籤統計和使 用者 NFC 標籤使用狀態等等。以 NFC 標籤管理為核心,整合開發之應用程式, 完成一系列不同的 NFC 標籤管理應用。. 圖 3.1 應用程式結合後端管理圖. 本系統提出的系統架構整體分為三部分如圖 3.2。系統整體分別為核心、功 能和應用程式,本研究希望在 Server 端提供良好的操控介面。. 核心. •NFC標籤管理. 功能. •NFC標籤分析 •帳號管理. 應用程式. •NFC標籤紀錄 •區域管理 •運動近場通訊 •.... 圖 3.2 系統架構圖 18.
(29) 為了達到良好的 NFC 標籤管理,首先將 NFC 標籤的類型大致分為幾種常用 的類型,分為地點式標籤、場景式標籤、網路位址式標籤、資源式標籤、上傳式 標籤,將這幾種類型個別存在獨立的資料庫中,方便管理者直接的觀察不同的 NFC 標籤類型,達到分類的效果;帳號採用分級管理,使用者分為 Manager、Leader、 User 為了管理的目的,也將之個別的存在獨立的資料庫中,方便管理和區別,角 色名稱將依據需求更改名稱,例如:管理者、老師、學生。應用程式,為了方便 與後端的結合的效率,使用者使用後的 NFC 標籤資訊暫存在手機端,使用此方式 不會使得每使用一次 NFC 標籤就將資料上傳至後端,造成傳輸方面的效率下降, 也可以確保將所有資料上傳至資料庫;後端管理部分,必頇建立與應用程式的資 料接收、儲存以及顯示或設定相關的需求,包含 NFC 標籤資訊內容分類等等;後 端管理延伸結合三種應用程式,第一,NFC 標籤紀錄,第二,運動近場通訊,第 三,區域管理。. 3.2 資料庫伺服器 本論文以 MySQL 為本系統資料庫,資料庫包含所有後端需求的顯示資料以 及應用程式所需的資料或是資料上傳的位置。資料庫內容有 NFC 標籤資訊以及帳 號資訊等等如圖 3.3,另外自訂標籤有獨立的資料庫,方便使用者管理如圖 3.4。 目前瀏覽器都是以 UTF-8 編碼,所以資料庫編碼主要是以 UTF-8 作為主要格式, 方便字元與資料庫做資料傳輸、儲存以及瀏覽器顯示。. 19.
(30) 圖 3.3 標籤及應用程式資訊資料庫. 圖 3.4 自訂標籤資料庫. 本系統以 WampSever 為後端伺服器如圖 3.5,首先將後端系統架設完成,接 著使用者便可以操作編輯完成的程式碼,Wamp 主要是由 Windows、Apache、 MySQL、PHP 集成的軟體,經由此軟體架設的網頁,可以使用各種不同的 MySQL 函式庫與資料庫做溝通,以下是幾種常見的函式: . mysql_connect:開啟 MySQL 伺服器連線。. . mysql_select_db:選擇一個資料庫。. 20.
(31) . mysql_error:從先前 MySQL 操作傳回錯誤訊息。. . mysql_fetch_array:取得查詢後的陣列結果。. . mysql_query:送出 MySQL 查詢。. . mysql_close:關閉 MySQL 連線。. . mysql_free_result:釋放記憶體。. 圖 3.5 網頁伺服器. 3.3 NFC 標籤格式 本系統希望可以經由感應 NFC 標籤,透過 NFC 標籤內的資訊快速將 NFC 標 籤分類,首先必頇要先規劃 NFC 標籤內儲存的資料格式,以建立通用的 NFC 標 籤分類格式。一般 NFC 標籤有各式各樣不同的格式,沒有制定化的 NFC 標籤格 式,主要是隨著使用者需求將資料做寫入的動作,例如寫入 NFC 標籤一個地點資 訊,台灣師範大學科學大樓,但系統無法自行判斷讀取的內容是屬於哪一類別,. 21.
(32) 或是什麼應用。 本系統主要分為五種常見的標籤模式,包含上傳式標籤、地點式標籤、場景 式標籤、網路位址式標籤、資源式標籤,透過 NFC 標籤類型分類,使用者有個明 確的概念了解自己需要的功能或是需求是什麼。為了讓 NFC 標籤方便讓系統判讀 在各類標籤之間使用”@”當作分隔符號;例如:使用者感應 NFC 標籤時可以上傳 NFC 標籤內的資訊或是透過 NFC 標籤觸發某個事件的資訊,再將此資訊上傳至 後端,這時 NFC 標籤內的資料類型屬於上傳式標籤如圖 3.6,讀取此 NFC 標籤可 以將使用者手機內的陽明山海芋圖片上傳;使用者來到故宮博物院,首次來的使 用者可能不知道此地點的資訊,利用場景式標籤可以有效的告知使用者地區資訊, 甚至系統可以利用 NFC 標籤內的資料提供更多的資訊給使用者了解此場景資訊 如圖 3.7,例如影片等等;應用程式需要利用電子地圖,提供使用者所需的服務 時,此時就必頇要明確的經緯度位址儲存至地點式標籤,例如 XML 實驗室緯度 為 25.006658、經度為 121.535879 如圖 3.8;網路位址式標籤方便讓使用者可以利 用 Url 得到使用者所需的資訊,例如:去電影院看鋼鐵人,使用者會需要了解電 影預告片內容,此時可將目前相當流行的 Youtube 影片的 Url 資訊寫入 NFC 標籤 內如圖 3.9,功能類似智能海報;資源式標籤可以將檔案名稱寫入 NFC 標籤,當 使用者將手機感應 NFC 標籤時,可將伺服器儲存對應的資料名稱下載到手機裡如 圖 3.10。. 22.
(33) up@陽明山海芋.jpg 圖 3.6 上傳式標籤內容. sce@故宮博物院大廳 圖 3.7 場景式標籤內容. loc@ 25.006658,121.535879 圖 3.8 地點式標籤內容. url@ http://www.youtube.com/watch?v=Js01Fxr5d1o 圖 3.9 網路位址式標籤內容. [email protected] 圖 3.10 資源式標籤內容. 3.4 NFC 標籤統計 NFC 標籤經過本系統規劃,大致包含已分類、未分類和使用者自訂的 NFC 標籤類型。本系統為了有效統計、了解 NFC 標籤的使用情況,以及讓使用者直觀 的了解使用者有哪些 NFC 使用標籤,分為兩種顯示方式提供使用者觀察以及統計, 一是以表格的方式呈現,二是以畫統計圖的方式呈現。 表格方式呈現方便使用者,可以清楚地觀察每一筆 NFC 標籤使用資訊,以下 列出表格顯示 NFC 標籤資訊內容,依順序包含有: 1.. 系統資料順序序號. 2.. NFC 標籤獨有編號 23.
(34) 3.. 標籤內容. 4.. 上傳時間. 5.. NFC 標籤感應時間. 大部分的 NFC 標籤都擁有獨有編號,透過此編號的儲存、顯示,可以在不同的應 用程式上實作,例如使用者驗證等等。上傳時間可以有效的控制、了解使用者系 統使用狀況,例如工作時間內是否在規定時間內將使用資訊上傳至後端。經由上 傳時間再加上 NFC 感應時間,更可以了解使用者更細部的使用狀態,例如使用者 經由 NFC 標籤使用過哪些裝置,或是使用過哪些教學用 NFC 標籤等等。 統計圖顯示方便使用者以圖畫的方式觀察 NFC 標籤使用情形,這樣的統計設 計,主要希望使用者可以了解哪些 NFC 標籤使用量比較偏高或是偏低,藉此分析 使用者使用 NFC 類型傾向,包括單一使用者的 NFC 標籤使用記錄統計圖分析, 可以了解單一使用者在使用系統過程中,使用哪些 NFC 標籤等等。本研究使用 Open Flash Chart 當作畫統計圖之工具,此工具屬於開放原始碼的方式提供使用者 免費使用,此外也提供各種不同程式語言函式庫,本系統使用直條圖、線條圖、 區域圖和派餅圖做為統計圖顯示方式。. 圖 3.11 直條圖. 圖 3.12 線條圖. 24.
(35) 圖 3.13 區域圖. 圖 3.14 派餅圖. 3.5 方法與步驟 首先研究 NFC 資料格式及通訊方式[6][7][8],接著開始以 JAVA 語法並使用 Eclipse 作為開發工具,實作 NFC 標籤紀錄在 Android 手機裝置上,經由無線網 路將 NFC 標籤資訊傳至後端儲存;區域管理,Leader 建立區域同時將地點資訊 寫入 NFC 標籤,若 User 進入禁止區域系統將即時通知,並將其相關資訊紀錄起 來,User 也可透過讀取 NFC 標籤了解區域資訊,後端管理使用 Ajax 與 jQuery 實 現新資料的呈現與即時通知;運動進場通訊透過電子地圖搭配地點標籤,紀錄距 離以及視覺化顯示箭頭在 Google Map 上,NFC 標籤使用紀錄同樣透過網際網路 傳至後端資料庫儲存,NFC 標籤上傳循序圖如圖 3.15;後端管理介面在用戶端完 成一個可以提供使用者登入的功能,並且依據不同的登入對象有不同的功能使用 權限;Server 端使用 Apache 和 PHP 架設資料接收模組實做管理系統,此管理系 統可以將 NFC 標籤的資料紀錄存至資料庫,區域管理所需資訊也經由管理系統儲 存至資料庫,或是下載資訊至手機端。帳號管理主要分為三個角色,Manager、 Leader 和 User,後端管理使用權限角色為 Manager 和 Leader,而應用程式使用權 25.
(36) 限角色為 Leader、User,各個角色帳號密碼是以電子郵件告知,方式為 Manager 寄信通知 Leader 帳號密碼,Leader 寄信通知 User 帳號密碼。 本研究主要以 Eclipse 做為開發工具,並以 Android SDK4.0 為程式開發套件 進行開發,並且支援 NFC 功能,詳細 Client 開發環境如表 3.1,Server 端開發環 境如表 3.2。. 圖 3.15 NFC 標籤資訊上傳循序圖 表 3.1 Client 端開發環境 名稱. 用途. 版本. 作業系統. 系統開發帄台. Window 7. JDK. Java 開發環境. 1.7.0_03. Eclipse IDE. 開發工具. 4.2. ADT. Android 擴充套件. 21.1.0. Android SDK. Android 開發套件. 4.0. Android API Level. Android 版本相容. 17. 表 3.2 Server 端開發環境. 名稱. 版本. 作業系統. Window 7. Apache. 2.2.22. PHP. 5.3.13. MySQL. 5.5.24. jQuery. 2.0.0 26.
(37) 第4章. NFC 標籤紀錄. 4.1 說明 NFC 標籤紀錄為使用 NFC 標籤後,將 NFC 標籤內容紀錄起來,之後將紀錄 上傳至後端系統,依照 NFC 標籤內容,系統自動化將 NFC 標籤分類儲存至系統 設定的資料庫,方便使用者觀察 NFC 標籤紀錄,此系統的功能架構如圖 4.1。首 先透過電子郵件收到帳號密碼,登入後依照角色不同,進入不同畫面,Leader 比 User 角色多寫入 NFC 標籤的功能,並提供使用者可以依照系統提供的 NFC 標籤 格式,進行編寫 NFC 標籤內容。. NFC標籤 紀錄. 登入帳號 密碼. Leader. 上傳. 地點. 場景. 寫入NFC 標籤. 讀取NFC 標籤. 輸入資料. 暫存標籤 紀錄. 網路位址. User. 上傳NFC 標籤資訊. 刪除NFC 標籤紀錄. 讀取NFC 標籤. 上傳NFC 標籤資訊. 刪除NFC 標籤紀錄. 暫存標籤 紀錄. 資源. 自訂. 圖 4.1 NFC 標籤紀錄系統架構圖. 4.2 功能設計 4.2.1 帳號密碼登入 NFC 標籤紀錄系統使用帳號密碼登入,首先後端管理會將帳號密碼透過電子. 27.
(38) 郵件的方式寄給使用者,此使用者角色可以是 Leader 或是 User,使用帳號密碼登 入主要目的是傳至後端時,方便系統分辨及記錄使用者使用的 NFC 標籤紀錄,另 一方面,目前 Android 系統對於電子郵件的收發和使用 NFC 功能都是可在同一裝 置運作,收取電子郵件的帳號密碼之後,可以開始使用 NFC 標籤紀錄系統。. 圖 4.2 收取郵件取得帳號密碼. 4.2.2 NFC 標籤資料傳輸方式 智慧型手機資料通訊的方式有許多種,本系統主要是以網際網路的方式,將 資料傳送至後端。目前網際網路常見的有兩種方式,一是 WIFI 無線上網,二是 3G 行動上網。由於目前在各大校園或是在街頭,越來越多的 WIFI 無線上網的建 置,所以本系統使用網際網路進行 NFC 標籤資料傳輸。. 28.
(39) 圖 4.3 NFC 標籤資料傳輸方式. 4.3 功能實作 首先取得帳號密碼,將資料輸入依照不同使用者進入不同的使用頁面如圖 4.4。 Leader 登入畫面如圖 4.5,User 登入畫面如圖 4.6。. 圖 4.4 帳號密碼輸入 29.
(40) 圖 4.5 Leader 登入畫面. 圖 4.6 User 登入畫面. 4.3.1 寫入 NFC 標籤 寫入 NFC 標籤介面提供給使用者選擇要寫入的 NFC 標籤格式如圖 4.7,點選 上方按鈕,可以編輯本系統定義的 NFC 標籤格式圖 4.8,寫入上傳模式之 NFC 標 籤,也可以寫入自訂的 NFC 標籤格式。. 30.
(41) 圖 4.7 寫入 NFC 標籤. 圖 4.8 點選上傳模式. 4.3.2 讀取 NFC 標籤 讀取 NFC 標籤功能如圖 4.9,讀取後將 NFC 標籤內容顯示在畫面上,同時將 NFC 標籤內容資訊儲存至 Client 端資料庫;讀取 Android 內建資料庫,必頇先建 立資料庫檔案,接下來開啟資料庫檔案並建立資料表,程式語法如圖 4.10。資料 表內容包含 NFC 標籤 ID、NFC 標籤內容和感應 NFC 標籤時間,新增一筆 NFC 標籤資訊至資料表語法如圖 4.11。. 31.
(42) 圖 4.9 讀取 NFC 標籤畫面. public SQLiteDatabase db = null; //資料庫類別 private final static String DATABASE_NAME="tagInfo.db"; //資料庫名稱 private final static String TABLE_NAME="tagInfo"; //資料表名稱 private final static String _ID="_id"; private final static String tagId="tag_id";. //資料表欄位. private final static String DATA="data"; private final static String TouchTim="touch_tim"; //建立資料表欄位 private final static String CREATE_TABLE = "CREATE TABLE " + TABLE_NAME + " (" + _ID + " INTEGER PRIMARY KEY," + tagId + " TEXT," + DATA + " TEXT," + TouchTim + " TEXT)"; //開啟已經存在的database db = mCtx.openOrCreateDatabase(DATABASE_NAME, 0, null); try{ db.execSQL(CREATE_TABLE); //建立資料表 } catch(Exception e){} 圖 4.10 建立資料庫檔案以及建立資料表. 32.
(43) //新增一筆資料 public long append(String tagId, String tagData, String touch_tim) { ContentValues cv = new ContentValues(); //建立 ContentValues物件 cv.put("tag_id", tagId); cv.put("data", tagData); cv.put("touch_tim", touch_tim); return db.insert(TABLE_NAME, null, cv); } 圖 4.11 新增一筆資料至資料庫. 4.3.3 上傳及刪除 NFC 標籤紀錄 上傳 NFC 標籤資訊提供使用者觀看 NFC 標籤使用紀錄,包括手動上傳所有 NFC 標籤紀錄,上傳資料後系統會自動將儲存在 Client 端的 NFC 標籤資料刪除, 刪除資料庫語法如圖 4.12,因此避免不必要的重複性上傳如圖 4.13。刪除 NFC 標籤,提供使用者可以自行刪除 NFC 標籤紀錄如圖 4.14。 //刪除資料表 public void delTable() { String del = "DROP TABLE IF EXISTS tagInfo"; db.execSQL(del); } 圖 4.12 刪除資料表. 33.
(44) 圖 4.13 上傳 NFC 標籤資料確認. 圖 4.14 手動刪除 NFC 標籤紀錄. 當應用程式使用完資料庫之後必頇關閉資料庫如圖 4.15。 //關閉資料庫 public void close() { db.close(); } 圖 4.15 關閉資料庫. 34.
(45) 第5章. 系統運用範例. 5.1 運動進場通訊 此應用利用本系統定義之地點標籤結合 Google Map,當使用者感應 NFC 標 籤,地圖上會顯示箭頭告知使用者目前位置,當感應第二個 NFC 標籤,地圖上除 了顯示箭頭,同時也會顯示移動距離,感應過後的 NFC 標籤,系統會將 NFC 標 籤資訊自動記錄至 Client 端資料庫。此系統架構如圖 5.1,首先取得帳號密碼之後, 登入系統有四種功能,第一,建立地點標籤,建立完成之後將 NFC 標籤設置至該 地點,第二,開始跑步,感應地點標籤在 Google Map 上顯示箭頭取得位置資訊 和移動距離,使用者長按地圖可以將 Google Map 上箭頭以及距離紀錄消除,第 三,完成所有 NFC 標籤感應之後,將 NFC 標籤使用紀錄上傳至後端資料庫,第 四,使用者可以手動將 NFC 標籤使用紀錄刪除。. 運動NFC. 登入帳號密 碼. Leader&User. 建立地點標 籤. 開始跑步. 視覺化 GoogleMapV2 輸入. 感應NFC標籤. 寫入NFC標籤. 取得位置資 訊及顯示移 動距離. 上傳NFC標籤 資訊. 清除距離及 地圖錨點. 圖 5.1 運動近場通訊架構圖 35. 刪除NFC標籤 紀錄.
(46) 5.1.1 功能設計 運動近場通訊之帳號密碼登入與 NFC 標籤傳輸方式與第四章相同,使用者不 分 Leader 或 User,登入系統後使用相同功能。運動近場通訊結合後端管理,再利 用本研究定義 NFC 標籤格式,同樣可以提供後端觀察使用 NFC 標籤紀錄,另外 上傳及刪除 NFC 標籤資訊,功能與第四章相同,本章不再冗長敘述。此應用可應 用在路跑活動時紀錄過程中路跑者的情況,例如狀態回報等等。. 5.1.2 NFC 標籤格式 由於使用地點標籤,NFC 標籤內容必頇有分隔符號”@”,另外系統設計為了 讓系統分辨經緯度,在經度與緯度之間以”#”當作分隔符號,以臺灣師範大學科學 大樓門口為例,其 NFC 標籤內容如圖 5.2。 [email protected]#121.53590720146894 圖 5.2 地點標籤內容. 5.1.3 建立跑步地點 首先取得帳號密碼登入系統如圖 5.3,登入後顯示功能列如圖 5.4,欲建立地 點標籤,必頇將地點資訊寫入 NFC 標籤內。透過帳號密碼登入,系統可將使用者 資訊紀錄在 Client 端,當使用者將 NFC 標籤使用紀錄上傳時,後端系統可利用系 統使用者的 NFC 標籤使用紀錄儲存至資料庫,另一方面透過與第四章相同的功能 設計,容易與後端管理結合。. 36.
(47) 圖 5.3 帳號密碼輸入. 圖 5.4 系統功能列. 登入系統後點選建立地點標籤,點選後進入寫入標籤畫面,欲開始建立地點 必頇點選上方地圖圖像進入 Google Map 畫面如圖 5.5,長按地圖可顯示地點資訊 包含經緯度和經由經緯度轉換之地址如圖 5.6,並在點選處顯示箭頭,也可以透 過搜尋建立地點資訊,另外,點選地圖上箭頭顯示視窗資訊如圖 5.7,再點選此 視窗顯示箭頭處之街景,提供使用者街景顯示如圖 5.8。. 37.
(48) 圖 5.5 寫入 NFC 標籤畫面. 圖 5.6 長按 Google Map 畫面. 圖 5.7 點選箭頭畫面. 圖 5.8 箭頭處街景畫面. 確定箭頭處為使用者為欲建立之地點之後,點選確定將此地點資訊自動化顯示在 38.
(49) 寫入 NFC 標籤畫面,此標籤內容為系統定義之地點標籤格式如圖 5.9,接著感應 NFC 標籤之後,系統顯示寫入完成如圖 5.10,完成後便完成跑步地點建立。. 圖 5.9 點選確定後畫面. 圖 5.10 寫入 NFC 標籤完成. 5.1.4 開始跑步 點選開始跑步後,首先可透過點選右上角定位鈕或感應先前建立的地點標籤, 將地圖畫面移至所在地點,開始進行跑步。使用者感應第一個地點標籤,同時在 地圖上顯示箭頭如圖 5.11,系統開始累加計算移動距離,接著感應第二個地點標 籤,系統顯示其移動距離如圖 5.12,再感應第三個地點標籤,系統累加移動距離 並顯示在螢幕上如圖 5.13。. 39.
(50) 圖 5.11 感應第一個地點標籤. 圖 5.12 感應第二地地點標籤. 圖 5.13 感應第三個地點標籤. 40.
(51) 5.2 區域管理 區域管理設計目的為工地現場以及廠區等的安全管理,登入畫面如圖 5.15, 使用者角色分為 Leader 與 User,各有不同功能,Leader 登入後負責建立區域資訊, 並將區域資訊寫入 NFC 標籤提供 User 讀取,User 登入後依照系統設定之等級, 系統自動將區域資訊下載,並在 Google Map 上顯示,同時也可以讀取 NFC 標籤 了解地點資訊,系統將自動將讀取之 NFC 標籤資訊儲存在 Client 端,最後再將 NFC 標籤使用記錄上傳;上傳 NFC 標籤使用記錄與第四章相同,本章節不再敘 述。本系統將區域與 User 進行分級,區域等級分為三級說明如下: 1.. 第一級區域:一般區域,任何人都可以進出。. 2.. 第二級區域:除特定人員之外,其他人員不准靠近,例如重機械操作場 所、高壓電盤附近,需要特定操作人員之外,其他人不准進入。. 3.. 第三級區域:任何人都不准靠近,例如重物吊掛之下方處,或是地板開 口等等,屬於危險區域。. User 等級分為兩級說明如下: 1.. 第一級 User:只能去第一級區域,不能進入第二級以及第三級區域。. 2.. 第二級 User:只能去第一級與第二級區域,不能進去第三級區域。. 此系統設計方法是將管理思維之分區分級管理模式運用在此系統中[19][20], 後端管理頁面將 User 設定等級以及區域資訊後,登入區域管理應用程式,自動化. 41.
(52) 將不可進入區域下載至手機端,並顯示在 Google Map 上,當闖入禁止區域時系 統自動發出警告,同時後端使用者接收到 User 闖入資訊,並可用廣播方式告知 User 離開闖入區域,後端也可藉由 NFC 標籤使用記錄分析 User 在工地的動向, 區域管理流程圖如圖 5.14。. 圖 5.14 區域管理流程圖. 42.
(53) 圖 5.15 帳號密碼輸入. 5.2.1 Leader Leader 運作系統模式如圖 5.16,Leader 將區域資訊設定完成後透過網際網路 將資訊傳送到網頁伺服器,接著經由網頁將接收的區域資訊儲存至資料庫。. 圖 5.16 Leader 系統運作圖 43.
(54) 取得帳號密碼後,登入系統顯示需輸入之區域資訊說明如下: 1.. 區域名稱:依照 Leader 定義之區域名稱輸入。. 2.. 級別:設定此區域為第幾級區域。. 3.. 經度:提供 User 登入後將該區域資訊顯示至 Google Map 上。. 4.. 緯度:提供 User 登入後將該區域資訊顯示至 Google Map 上。. 5.. 地址資訊:內容包括該經緯度地址以及 Leader 對於該地點附註說明。. 圖 5.17 區域資訊編輯. 點選經度或緯度編輯列,進入 Google Map 進行區域設定,地圖左下角提供 Leader 進行不同的地圖顯示模式切換如一般圖、混合圖、衛星圖和地形圖,Leader 可以 將定位按鈕顯示、交通資訊或定位位子資訊依需求取消勾選,依照 Leader 使用喜 好設定 Google Map 顯示方式。區域設定方式為長按地圖地點如圖 5.18,地圖上. 44.
(55) 會顯示錨點並在上方顯示經緯度以及地址資訊。. 圖 5.18 地點資訊. 圖 5.19 混合圖. 圖 5.20 衛星圖. 圖 5.21 地形圖. 45.
(56) 確定地點之後點選確定按鈕,錨點資訊自動化輸入至欄位中,Leader 只要設 定級別以及對於地址資訊處加入備註資訊即可如圖 5.22,完成之後點選確定按鈕, 畫面彈出上傳確認如圖 5.23,確認資訊無誤點選確定後進入寫入 NFC 標籤頁面, 最後利用感應 NFC 標籤的方式將資訊寫入如圖 5.24,此 NFC 標籤將提供 User 讀取並了解區域資訊。. 圖 5.22 完成輸入區域資訊. 圖 5.23 區域資訊上傳確認. 46.
(57) 圖 5.24 寫入 NFC 標籤區域資訊. 5.2.2 User User 運作系統模式如圖 5.25,User 登入系統後,依照後端管理設定之等級以 及區域資訊自動化下載區域資訊,並在系統背景執行警告資訊,一旦進入禁止區 域,系統發出聲響並在畫面顯示警告通知,同時 User 資訊上傳至後端資料庫,此 時 User 可以讀取 NFC 標籤取得區域資訊,系統將自動儲存 NFC 標籤資訊,最後 User 手動將 NFC 標籤使用記錄上傳至資料庫。系統以 Google Map 顯示的方式提 供觀看禁止區域位置,讓 User 更了解禁止區域方位以提前預防。. 47.
(58) 圖 5.25 User 系統運作圖. 後端管理將 User 區域以及等級資訊設定完成後,User 登入系統將自動下載 Leader 建置的相關區域資訊,並將區域資訊以及 User 名稱顯示在畫面上如圖 5.26。 登入同時系統開始偵測 User 是否進入禁止區域,若進入禁止區域系統將產生警告, 後端管理人員同時接收到闖入資訊,同時將相關資訊儲存置資料庫,相關資訊在 第七章詳細說明。點選觀看地圖系統自動化將禁止區域顯示在地圖上如圖 5.27, 同時可感應 Leader 建立之 NFC 標籤取得區域資訊如圖 5.28,感應後系統自動將 NFC 標籤資訊儲存,點選上傳可觀看 NFC 標籤使用紀錄並上傳紀錄,而刪除紀 錄可將 NFC 標籤使用記錄刪除,此部分與第四章相同;右上角按鈕提供 User 觀 看自己位置,若 User 闖入禁止區域也就是畫面紅色區域,則系統自動發出警告告 知 User 遠離區域如圖 5.29。. 48.
(59) 圖 5.26 User 禁止區域. 圖 5.27 禁止區域顯示. 圖 5.28 感應 NFC 標籤. 圖 5.29 警告通知. 49.
(60) 第6章. 後端管理. 6.1 說明 此章節說明 NFC 標籤管理系統之後端管理相關功能,功能架構如圖 6.1,後 端管理分為管理介面與資料庫,管理介面以網頁方式呈現。資料庫儲存應用程式 以及管理介面所需的資料,包含標籤管理與標籤類型,標籤類型主要儲存使用者 自訂標籤,與其他資料分隔方便使用者管理。. 後端管理. 管理介面. 網頁. NFC標籤類 型. 帳號. 資料庫. 標籤管理. NFC標籤 使用紀錄. 標籤類型. 區域資訊. User區域 資訊. 趨近人員 資訊. 自訂標籤. 圖 6.1 後端管理架構圖. 管理介面使用者分為 Manager 與 Leader,Manager 與 Leader 角色不同功用在 於,Manager 在後端管理是管理者角色,Leader 則是在應用程式扮演管理者角色, Leader 在後端管理主要是替 User 分組以及觀察分組資訊,而 Manager 可以觀察 NFC 標籤使用紀錄、編輯區域管理系統 User 區域資訊、編輯自訂 NFC 標籤類型 和觀察趨近人員資訊,功能架構如圖 6.2。經由 NFC 標籤使用紀錄可應用在展場 或是任何活動場地,了解使用者以及 NFC 標籤使用資訊以及狀態。. 50.
(61) 圖 6.2 管理介面架構圖. 6.2 Manager Manager 以註冊的方式取得帳號密碼如圖 6.3,點選管理員註冊進入註冊畫面 如圖 6.4,輸入完成後點選確定完成帳號密碼註冊,並以此帳號密碼登入系統。. 圖 6.3 Manager 帳號密碼輸入. 51.
(62) 圖 6.4 Manager 註冊資料. 6.2.1 建立、編輯、刪除 Leader 點選 New Leader 輸入 Leader 資訊,輸入完成後點選確定完成建立 Leader 如 圖 6.5,可輸入的資訊如下: 1.. 姓名:此為必要輸入。. 2.. E-mail:系統登入之用,必要輸入。. 3.. 密碼:系統登入之用,必要輸入。. 4.. 密碼確認:密碼輸入確認。. 5.. Group:群組名稱為非必要輸入,提供相關應用程式使用。. 6.. 電話:非必要輸入。. 7.. 備註:非必要輸入。. 52.
(63) 圖 6.5 建立 Leader. Manager 可以編輯 Leader 資訊或是刪除 Leader,點選 Edit Leader,進入編輯畫面, 輸入 Leader 姓名,系統列出 Leader 資訊提供 Manager 修改其帳號資訊如圖 6.6。 點選 Delete Leader 進入刪除 Leader 頁面,輸入欲刪除的 Leader 點選確定完成刪 除如圖 6.7。. 圖 6.6 編輯 Leader. 53.
(64) 圖 6.7 刪除 Leader. 本系統以 Microsoft Outlook 2010 為系統寄電子郵件的軟體,選取 Leader 後 點選確定進行相關帳號密碼資訊傳送,欄位資訊為系統自動輸入如圖 6.8,確認 之後點選確定送出會彈出 Outlook 軟體視窗,系統自動將收信者、寄信者和信件 內容輸入,Manager 可以額外輸入備註資訊如圖 6.9。. 圖 6.8 信件內容. 54.
(65) 圖 6.9 Outlook 信件畫面. 點選傳送將帳號密碼資訊傳送給 Leader,Leader 接收後則可利用此帳號密碼登入 後端管理或應用程式。. 6.2.2 NFC 標籤統計 網頁左邊提供系統定義的各類 NFC 標籤資訊,Tag Record 顯示為未經過分類 的 NFC 標籤格式,點選 LocationManager 後顯示 NFC 標籤資訊如圖 6.10。. 圖 6.10 地點標籤資訊 55.
(66) 點選標籤紀錄觀看系統定義標籤類型統計、自訂標籤紀錄和使用者標籤使用紀錄; 標籤類型統計提供系統定義的各類型標籤以及未定義標籤總筆數資訊如圖 6.11, 點選圖形化顯示提供四種不同的圖形顯示各類標籤統計資訊,利用下拉式選單方 式讓使用者選取要顯示的圖形樣式。. 圖 6.11 地點標籤總數. 圖 6.12 長條圖. 56.
(67) 圖 6.13 折線圖. 圖 6.14 區域圖. 57.
(68) 圖 6.15 派餅圖. 自訂標籤紀錄提供 Manager 觀察使用者自訂的標籤使用紀錄,經由下拉式選單確 定要觀察的自訂標籤,點選確定顯示自訂標籤資訊,例如:點選 explain 如圖 6.16。. 圖 6.16 自訂標籤資訊. 選取使用者確定後點選確定,觀察使用者標籤使用紀錄如圖 6.17,此使用者包括 Leader 和 User,點選圖形化顯示經由圖形化顯示統計資料如上所述。. 58.
(69) 圖 6.17 使用者標籤使用紀錄. 6.2.3 設定 User 區域資訊 點選使用者區域資訊進行 User 區域資訊設定,首先選取要設定的 User,接 著設定 User 等級,最後設定 User 的區域名稱,設定完成後 User 登入區域管理功 能將自動下載該區域的禁止地點資訊。點選修改使用者區域資訊為修改 User 等級, 以及 User 的區域名稱。. 圖 6.18 編輯 User 區域資訊 59.
(70) 6.2.4 觀察 User 闖入資訊 點選趨近人員警告顯示 User 闖入禁止區域資訊,顯示資訊如下: 1.. 系統資料順序序號. 2.. User 姓名. 3.. 闖入區域資訊. 4.. 上傳裝置 ID 位址. 5.. 闖入時間. 此應用結合 Ajax 與 jQuery 等網頁技術將資料呈現,並直接引用 Google Ajax Libraries API,引用語法如圖 6.19,系統在背景執行是否資料庫有新增資料,代表 是否有 User 闖入禁止區域,若有 User 闖入禁止區域,網頁同時彈出提示視窗如 圖 6.20,點選確定觀察闖入者資訊如圖 6.21。 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"> </script> 圖 6.19 引用 Google Ajax Libraries API 語法. 60.
相關文件
Wang, Solving pseudomonotone variational inequalities and pseudocon- vex optimization problems using the projection neural network, IEEE Transactions on Neural Networks 17
Define instead the imaginary.. potential, magnetic field, lattice…) Dirac-BdG Hamiltonian:. with small, and matrix
(1) Determine a hypersurface on which matching condition is given.. (2) Determine a
• involves teaching how to connect the sounds with letters or groups of letters (e.g., the sound /k/ can be represented by c, k, ck or ch spellings) and teaching students to
Microphone and 600 ohm line conduits shall be mechanically and electrically connected to receptacle boxes and electrically grounded to the audio system ground point.. Lines in
– evolve the algorithm into an end-to-end system for ball detection and tracking of broadcast tennis video g. – analyze the tactics of players and winning-patterns, and hence
Biases in Pricing Continuously Monitored Options with Monte Carlo (continued).. • If all of the sampled prices are below the barrier, this sample path pays max(S(t n ) −
Security and privacy related literatures [19] focused on methods of preserving and protecting privacy of RFID tags; the RFID reader collision avoidance and hidden terminal