成年在线视频,老牛嫩草一区二区三区日本,午夜影院一区二区三区,在线观看二区,欧美成人一二区,免费看搞逼视频,国产无套精品

基于移動設備的智能手表設計與實現

來源:網絡

點擊:1041

A+ A-

所屬頻道:新聞中心

關鍵詞: iOS,單片機系統(tǒng),藍牙低能耗,智能手表,可穿戴式設備

      摘要:智能手表是一種新型的可穿戴式設備,其中蘊含了大量的新穎的設計理念,包括傳感器的實時監(jiān)測生命體征,無線通信將實時的監(jiān)控數據向其他設備發(fā)送。它的出現體現了可穿戴式設備的快速發(fā)展,同時也體現出可穿戴式設備的應用將一步一步走向人們的生活。而其智能手機客戶端,在保證智能手表的基礎功能的前提下,同時優(yōu)化了智能手表的用戶體驗,并收集來自智能手表的數據,向服務器傳輸,達到云端監(jiān)控的目的。設計將主要闡述構建基礎可穿戴設備的幾項關鍵技術,如可穿戴技術、無線通訊技術(BLE 傳輸、Socket 傳輸)、相關傳感器技術、單片機系統(tǒng)、以及iOS的應用開發(fā),其中還會對新型的TI CC2540 BLE 技術以及iOS BLE 技術進行詳細的介紹與分析。

      0 引言

      智能手機的發(fā)展增速很快,但是可穿戴式設備的發(fā)展還是相對空白,不僅市面上可以看到的產品有限,而且目前的產品涉及面也相對較窄,技術還不算成熟,所以可穿戴式設備還算是一個相對新穎的領域。但作為繼智能手機之后的下一個智能終端熱點,它的潛力不可估量。所以有研究能力的科技公司早早地就已經進行對該領域的開發(fā),如三星的SamsungGear,Google 的Google glass。目前可穿戴式設備的研究領域主要涉及到傳感器技術以及無線通訊技術。

      本項目主要通過整合單片機系統(tǒng)、BLE 技術及相關傳感器技術,設計出可穿戴設備,再通過開發(fā)iOS 應用作為客戶端,最終設計出相對完整的可穿戴式設備及其客戶端的開發(fā)。其中客戶端通過接入互聯網可以與云端服務器進行交互,從而獲取云端服務器的支持。

      1 系統(tǒng)結構

      本項目整體是按照數據采集—數據分析-數據處理-控制輸出-回饋的框架來實現,利用DHT11 溫濕度傳感器收集環(huán)境數據,再通過Atmel 單片機芯片[3]進行數據分析,隨后通過藍牙芯片將數據發(fā)送給手機客戶端。手機客戶端以處理數據為主,并可以通過藍牙向智能手表發(fā)送信息,從而達到控制智能手表的目的。

      智能手表及其手機客戶端的系統(tǒng)框架圖如圖1 所示:

    基于移動設備的智能手表設計與實現

      圖1 系統(tǒng)框圖

      2 系統(tǒng)硬件設計

      2.1 Bluno 開發(fā)板介紹

    基于移動設備的智能手表設計與實現

      圖2 Bluno 主控板實物圖

      Bluno 主控板是基于ATmega528 芯片,有14 個數字I/O 口,其中6 個I/O 口可以以PWM 口來用,6個模擬輸入口,16 MHz 的晶振頻率,一個USB。一個TI CC2540 芯片,支持低功耗藍牙通信。同時主控板支持I2C 和SPI 總線,提供UART TLL 串口通信。

      2.2 Arduino 拓展板介紹

    基于移動設備的智能手表設計與實現

      圖3 Bluno 拓展板實物圖

      Bluno 拓展主要為主控板提供額外的拓展功能,它內部含有一個128*64 的OLED 顯示屏,一個有源蜂鳴器,一個DHT11 溫濕度傳感器,一個1.5 A 繼電器模塊,一個螺旋電位器,一個RGB LED 燈,一個Mini 搖桿按鍵。

      2.3 手機硬件

      本項目開發(fā)的手機客戶端是iOS 應用,所以,最終完成的應用可以兼容iOS 6 及以上iOS 系統(tǒng),iPhone 4s及以上iPhone 設備。

      3 系統(tǒng)軟件設計

      系統(tǒng)軟件設計主要包括兩大部分,智能手表部分和手機客戶端部分。其中智能手表部分的軟件主要有BLE 通訊部分,傳感器數據采集部分,時間功能,以及單片機系統(tǒng)組成。而手機客戶端部分主要由BLE通訊部分,Socket 通訊部分,設備控制部分組成。系統(tǒng)流程圖如圖4 所示:

    基于移動設備的智能手表設計與實現

      圖4 系統(tǒng)主程序流程圖

      3.1 BLE 通訊協(xié)議

      BLE 通訊采用UTF8 編碼,幀格式如下所示:

      < Command > content1;

      < Command > content1, content2,&hellip;;

      < Command + ExtraString>stringLength;

      3.2 藍牙通訊協(xié)議

      智能手表藍牙通訊主要由兩個部分組成,分別是BLE 雙向透傳模塊和串口封裝模塊。

      BLE 雙向透傳模塊是基于BLE 協(xié)議棧以及OSAL(TI CC2540 內部的實時系統(tǒng))的開發(fā)。而串口雙向透傳的目的在于忽略協(xié)議棧以及OSAL 的成分,將其視為一個簡單的輸入輸出系統(tǒng)。所以在進行串口透傳之前,要設定固定的BLE service 以及固定BLE characteristic。整個系統(tǒng)的流程最開始需要進入初始化流程,分別是硬件初始化、OSAL 初始化、BLE 協(xié)議棧初始化、串口初始化、應用層初始化。當整個系統(tǒng)初始化完成以后進入事件輪詢流程。

      串口接收數據部分:BLE 協(xié)議棧檢測到characteristic的變化后,會調用用戶填入的回調函數,而在整個回調函數中可以處理characteristic 的數據,隨后將有效數據填入串口回調函數最終將數據輸出至串口。

      串口發(fā)送數據部分:串口收到數據后將調用串口回調函數,在回調函數中調用BLE 協(xié)議棧提供的寫入characteristic 函數,隨后將數據處理并寫入characteristic中(對于監(jiān)聽該characteristic 的設備而言,將能夠發(fā)現該值的變化,從而讀取數據)。

      由于雙向透傳模塊并沒有隱藏串口,所以如果想要進行數據I/O,還需要經過串口的操作,勢必會帶來不必要的麻煩。所以設計串口封裝模塊,忽略串口的存在,并遵循通信協(xié)議下的數據收發(fā)格式。

      3.3 智能手表傳感器數據采集

      本項目主要使用的傳感器是DHT11 溫濕度傳感器。DHT11 是一個相對較友好的硬件模塊。它對數據的封裝以及數據的IO 已經做了很好的處理。對于軟件上的設計,所做的工作不多。首先需要進行DHT11的初始化,主要目的是通知DHT11 做好準備。

      而在讀取數據時,由于讀取數據的方式是同步的,所以在智能手表系統(tǒng)需要等待DHT11 設備處理并準備好數據后,才能讀取。其中準備過程以及讀取過程都需要進行硬延時。這在一定程度上會對系統(tǒng)的定時功能造成影響(尤其本設計是一塊手表,所以對時間有著嚴格的要求),所以系統(tǒng)獲取DHT11 數據是有一個較長的軟延時間隔。

      3.4 智能手表時間功能

      時間功能主要由時間類以及日期類組成,其中時間類負責時分秒的計算,而日期類主要負責日期的計算。

      3.5 智能手表單片機系統(tǒng)

      整個單片機系統(tǒng)由顯示模塊、系統(tǒng)初始化模塊、系統(tǒng)定時器模塊、系統(tǒng)時間輪詢模塊串口輪詢以及BLE 通訊輪詢組成。其中顯示模塊負責封裝硬件信息,并設計適合進行軟件操作的接口。

      系統(tǒng)初始化主要包含以下幾個任務:OLED 初始化、串口初始化、系統(tǒng)時鐘設置、繼電器及蜂鳴器初始化、BLE 通訊模塊初始化、系統(tǒng)狀態(tài)位初始化。

      系統(tǒng)定時器進程的設置是因為在單片機中能夠設置的定時器是十分有限的。所以只能利用有限的定時器去&ldquo;生成&rdquo;更多的定時器。在本設計中,如果需要新增定時器,首先需要添加自定義定時器。隨后系統(tǒng)定時器進程將會根據自定義定時器進行生成定時。

      系統(tǒng)事件的輪詢主要的實現是基于系統(tǒng)定時器的實現。每隔50 ms 對系統(tǒng)事件進行檢測,所涉及到的系統(tǒng)事件主要為按鍵事件。

      串口收發(fā)輪詢用于收發(fā)來自串口的數據,其目的主要用于調試。BLE 通訊輪詢進程主要用于收發(fā)來自BLE 通訊模塊的數據。其流程如圖5 所示:

    基于移動設備的智能手表設計與實現

      圖5 BLE 通訊流程

      3.6 手機客戶端藍牙通訊

      BLE 通訊的設計主要使用了Cocoa touch 自帶的Core Bluetooth 框架,并再此之上進行二次開發(fā),并對BLE 的特性進行一定程度的隱藏。在本設計中,iOS 客戶端的BLE 角色是Central 的,需要進行廣播的搜索,以及鏈接的建立,找到感興趣的peripheral后,訂閱其中的characteristic,最終實現數據的交互。

      3.7 手機客戶端Socket 通訊

      Socket 類的設計使用了Cocoa touch 中的CF-Socket,并將Socket 的特性進行了一定程度的隱藏,以方便與云端服務器進行通訊。

      3.8 手機客戶端硬件控制

      設備控制模塊主要負責配置智能手表的信息,當配置完成以后,將數據發(fā)送給智能手表。

      4 結束語

      本系統(tǒng)設計出的智能手表及其客戶端具有以下特點:

     ?。?)Bluno 主控板及其拓展板是基于Arduino 平臺,方便進行硬件設計以及軟件開發(fā)。

     ?。?)本項目使用的BLE 通訊不僅功耗低,而且能夠保證相對可靠地通訊,它可以在開闊的空間內達到120 m 的通訊距離。

      (3)使用的iOS 平臺具有較好的兼容性,可以兼容iPhone 4s 及以上的設備。

     ?。?)手機客戶端可以與云端服務器進行通訊,可以將智能手表手機的數據實時上傳到云端服務器,同時云端服務器也可以通過手機客戶端控制智能手表。

    (審核編輯: 智匯張瑜)

    聲明:除特別說明之外,新聞內容及圖片均來自網絡及各大主流媒體。版權歸原作者所有。如認為內容侵權,請聯系我們刪除。