国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Android物聯(lián)網(wǎng)創(chuàng)新型實(shí)驗(yàn)研究與應(yīng)用

2018-04-11 03:41:05張義紅李永樂郝礦榮
實(shí)驗(yàn)室研究與探索 2018年1期
關(guān)鍵詞:溫濕度藍(lán)牙應(yīng)用程序

張義紅, 李永樂, 郝礦榮, 韋 方

(東華大學(xué) a.信息科學(xué)與技術(shù)學(xué)院; b.數(shù)字化紡織服裝技術(shù)教育部工程研究中心,上海 201620)

0 引 言

物聯(lián)網(wǎng)是計(jì)算機(jī)、互聯(lián)網(wǎng)之后,世界信息產(chǎn)業(yè)的第三次浪潮[1]。物聯(lián)網(wǎng)專業(yè)作為一個(gè)典型的交叉學(xué)科,應(yīng)用到通信、電子、計(jì)算機(jī)多個(gè)學(xué)科的專業(yè)知識(shí),同時(shí)它也是一個(gè)基于工程應(yīng)用的學(xué)科,是現(xiàn)有信息技術(shù)綜合集成化的產(chǎn)物[2-3]。近年來,BLE技術(shù)以及智能終端的普及加速了物聯(lián)網(wǎng)技術(shù)的發(fā)展,同時(shí)也催生出了各種智能硬件。隨著智能硬件的發(fā)展,智能穿戴也成為了一項(xiàng)熱門的課題。溫濕度傳感器是較為廣泛運(yùn)用的兩種傳感器。

本文以我校大唐移動(dòng)物聯(lián)網(wǎng)實(shí)驗(yàn)室智能家居實(shí)驗(yàn)開發(fā)平臺(tái)設(shè)計(jì)了一款面向信息類研究生的創(chuàng)新型實(shí)驗(yàn)。實(shí)驗(yàn)的主要內(nèi)容和技術(shù)是:利用物聯(lián)網(wǎng)實(shí)驗(yàn)平臺(tái)的溫濕度傳感器,采集到溫濕度信息后,通過BLE技術(shù)將信息傳輸?shù)接脩糁悄苁謾C(jī)中,并由對(duì)應(yīng)的APP解析數(shù)據(jù)并判斷當(dāng)前溫濕度傳感器狀態(tài),可解決母嬰和養(yǎng)老領(lǐng)域的智能穿戴中的技術(shù)關(guān)鍵問題。

1 硬件資源配置

1.1 板載資源

本文的實(shí)驗(yàn)教學(xué)環(huán)節(jié)是基于新型物聯(lián)網(wǎng)實(shí)訓(xùn)平臺(tái)的,該平臺(tái)相較于傳統(tǒng)平臺(tái)的最大特點(diǎn)在于功能模塊十分完備,可擴(kuò)展性強(qiáng)。平臺(tái)實(shí)物圖如圖1所示。

實(shí)驗(yàn)所涉及的硬件資源:① Exynos4412 核心板。Samsung Exynos4412,2 GB DDR2內(nèi)存,4GB NAND FLASH;② 17.78 cm(7 in)TFT LCD。分辨率為800×480,電容式觸摸屏,支持校準(zhǔn);③ 調(diào)試串口、JTAG、復(fù)位、RTC 電池、DCDC電源等;④ BLE4.0開發(fā)套件;⑤ 板載溫濕度傳感器。系統(tǒng)框架如圖2所示。

圖2系統(tǒng)框架

1.2 溫濕度傳感器與BLE通信協(xié)議

溫濕度傳感器所采用的芯片為SHT11[6-7]。SHT系列單芯片傳感器是一款含有已校準(zhǔn)數(shù)字信號(hào)輸出的溫濕度復(fù)合傳感器。傳感器包括一個(gè)電容式聚合體測(cè)濕元件和一個(gè)能隙式測(cè)溫元件,并與一個(gè)14 bit的A/D轉(zhuǎn)換器以及串行接口電路在同一芯片上實(shí)現(xiàn)無縫連接,具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強(qiáng)等優(yōu)點(diǎn)。

將傳感器芯片輸出轉(zhuǎn)換為物理量的過程遵循的公式如圖3所示。圖中,SORH和SOT分別為濕度傳感器和溫度傳感器的數(shù)字輸出,表示測(cè)量分辨率。默認(rèn)的 測(cè)量分辨率分別為14 bit(溫度)、12 bit(濕度),也可分別降至12 bit和8 bit[6-7]。

圖3 溫濕度轉(zhuǎn)換公式

藍(lán)牙通信協(xié)議包括多個(gè)服務(wù)(service),每個(gè)service由一個(gè)或多個(gè)特征組成,通信數(shù)據(jù)分?jǐn)?shù)據(jù)(data)、命令(command)兩類,支持手機(jī)端向設(shè)備的查詢、設(shè)定命令、設(shè)備響應(yīng),設(shè)備主動(dòng)上報(bào)消息及手機(jī)端響應(yīng)等。每條命令和消息由命令名、命令內(nèi)容構(gòu)成[8-9]。

設(shè)定設(shè)備溫濕度主動(dòng)上報(bào),每1 s上報(bào)一個(gè)數(shù)據(jù),本實(shí)驗(yàn)僅使用命令幀傳輸,格式如表1所示。

表1 命令幀格式

舉例:若接受數(shù)據(jù)為 0xDFB1D100020300D540。溫度值: 0x00D5=213/10=+21.3 °C(默認(rèn)1位小數(shù)點(diǎn));濕度值:0x40=64%。

2 軟件實(shí)驗(yàn)部分

2.1 交互界面設(shè)計(jì)

Android是Google公司開發(fā)的基于Linux平臺(tái)的開源手機(jī)操作系統(tǒng),遵循MVC框架模式。M層即Model層適合做一些業(yè)務(wù)邏輯處理[10-11]。數(shù)據(jù)庫(kù)存取操作、網(wǎng)絡(luò)操作、復(fù)雜的算法、耗時(shí)的任務(wù)等都在該層處理。V層即View層,應(yīng)用層中處理數(shù)據(jù)顯示的部分,XML布局可以視為V層,顯示Model層的數(shù)據(jù)結(jié)果。 C層即Controller層,在Android中,Activity用以處理用戶交互問題,因此可以認(rèn)為Activity是控制器,Activity讀取V視圖層的數(shù)據(jù),控制用戶輸入,并向Model發(fā)送數(shù)據(jù)請(qǐng)求。

應(yīng)用程序視圖層主界面采用經(jīng)典Tab類型界面,實(shí)現(xiàn)方式為Fragment + FragmentManager,見圖4。

圖4主界面布局

FrameLayout作為Fragment的container主界面,頂欄為標(biāo)題欄,底欄作為菜單欄,啟動(dòng)時(shí)默認(rèn)fragment為顯示溫濕度信息的界面。

2.2 核心業(yè)務(wù)邏輯設(shè)計(jì)

應(yīng)用程序的工作流程如圖5所示。

圖5應(yīng)用程序業(yè)務(wù)邏輯流程圖

2.2.1BLE連接并解析數(shù)據(jù)

首先需要開啟BLE權(quán)限,在manifest添加:android.permission.BLUETOOTH和android.permission. BLUETOOTH_ADMIN 兩個(gè)權(quán)限。之后完成BLE Controller層的編寫:

(1) 獲取適配器mBlueAdapter并調(diào)用適配器方法mBluetoothAdapter.enable();方法開啟藍(lán)牙。

(2) 掃描藍(lán)牙設(shè)備:mBluetoothAdapter.startLeScan(lescancallback); 搜索到設(shè)備后會(huì)回調(diào)LeScanCallback接口,此時(shí)可判斷(本文依據(jù)預(yù)設(shè)的設(shè)備名“RLEIT_9430C”)是否為目標(biāo)設(shè)備,若是則連接。

(3) 停止掃描,此時(shí)獲得device對(duì)象,調(diào)用其 device.connectGatt(this, true, mGattCallback);進(jìn)行連接,連接后會(huì)回調(diào)BluetoothGattCallback接口,此時(shí)可依照前文所述通信協(xié)議解析所接收到的數(shù)據(jù)。

2.2.2監(jiān)測(cè)溫濕度信息

將獲取到的溫濕度數(shù)據(jù)封裝至Intent中,使用廣播傳遞至主界面并以進(jìn)度條的視圖形式顯示。

intent_18.putExtra("temperature", temperature);

intent_18.putExtra("humidity", humidity);

getBaseContext().sendBroadcast(intent_18)。

在主界面中響應(yīng)廣播,并得到溫濕度數(shù)據(jù):

temperature = intent.getStringExtra("temperature");

humidity = intent.getStringExtra("humidity")。

每1 s接受一次BLE數(shù)據(jù),則每秒判斷一次:

(Integer.parseInt(temperature, 16) / 10) > 25&& Integer.parseInt(humidity, 16)>70。

只要滿足溫度>25 °C并且濕度超過70%,彈出報(bào)警界面,并創(chuàng)建一個(gè)MediaPlayer類型的對(duì)象實(shí)現(xiàn)播放背景音樂的功能,使用工具類vibrator_util.Vibrate(new long[]{1 000, 1 000, 1 000, 1 000, 1 000, 1 000}, true)實(shí)現(xiàn)振動(dòng)功能。

采用閾值進(jìn)行判斷是最基礎(chǔ)的報(bào)警判斷方式,實(shí)驗(yàn)中學(xué)生可通過溫濕度信息隨時(shí)間的變化率自行設(shè)計(jì)更為復(fù)雜和精確的算法。

2.2.3存儲(chǔ)報(bào)警信息

Android在運(yùn)行時(shí)(run-time)集成了SQLite,所以每個(gè)Android 應(yīng)用程序都可以使用 SQLite 數(shù)據(jù)庫(kù)[12]。本文所述應(yīng)用程序的Model層即是使用SQLite數(shù)據(jù)庫(kù)來存儲(chǔ)數(shù)據(jù)的。所要存儲(chǔ)的主要信息為每次報(bào)警的日期以及具體時(shí)間,由此可以統(tǒng)計(jì)嬰兒的排尿頻率,建表語句如下:

public static final String CREAT_DATABASE = "create table baby_data("

+ "_id integer primary key autoincrement,"

+ "date varchar(10),"

+ "time varchar(10))";

在滿足報(bào)警條件時(shí),首先執(zhí)行存儲(chǔ)數(shù)據(jù)命令:

new SqliteData(getApplicationContext()).insertData();

之后彈出報(bào)警窗口。

2.2.4附加功能設(shè)計(jì)

軟件部分可進(jìn)行附加功能的設(shè)計(jì)實(shí)驗(yàn),將溫濕度信息數(shù)據(jù)利用Android自定義控件制作成圖形進(jìn)度條顯示,使信息顯示更為直觀,界面布局更為簡(jiǎn)潔美觀。將數(shù)據(jù)庫(kù)的存儲(chǔ)信息調(diào)出,可在程序內(nèi)制作圖表界面,直觀展示或查詢數(shù)據(jù)庫(kù)內(nèi)容。擴(kuò)展報(bào)警選項(xiàng),增加報(bào)警鈴聲選項(xiàng),增加鈴聲和震動(dòng)選項(xiàng)(見圖6)。

圖6 應(yīng)用程序功能界面

3 溫濕度傳感器手機(jī)App測(cè)試

實(shí)驗(yàn)環(huán)境:實(shí)驗(yàn)室空調(diào)控制室溫為25 °C左右,空氣濕度為30%~40%。

啟動(dòng)圖1所示物聯(lián)網(wǎng)開發(fā)板。啟動(dòng)手機(jī)端的Android應(yīng)用程序,打開藍(lán)牙,并配對(duì)設(shè)備名稱為“RLEIT_9430C”的藍(lán)牙設(shè)備。配對(duì)成功后,應(yīng)用程序主界面會(huì)將溫濕度信息以進(jìn)度條的形式顯示在主界面上。測(cè)試數(shù)據(jù)傳輸?shù)姆€(wěn)定性,將實(shí)驗(yàn)室溫度升至30 °C,可觀察到應(yīng)用程序主界面顯示信息的變化。

準(zhǔn)備一小杯40 °C左右的溫水,將紙巾蘸水后迅 速貼近溫濕度傳感器。片刻后,應(yīng)用程序主界面彈出

報(bào)警窗口,同時(shí)手機(jī)振動(dòng)并播放警報(bào)音樂。

按下報(bào)警界面的任意選項(xiàng)即可退出報(bào)警狀態(tài),至此智能尿不濕系統(tǒng)的實(shí)驗(yàn)基本成功。

4 結(jié) 語

結(jié)合大唐移動(dòng)物聯(lián)網(wǎng)實(shí)驗(yàn)室相關(guān)的軟硬件實(shí)驗(yàn)設(shè)備與研究生課程體系,面向當(dāng)今育嬰或養(yǎng)老產(chǎn)業(yè)的應(yīng)用需求,設(shè)計(jì)了一門創(chuàng)新性研究生實(shí)驗(yàn)課程。該實(shí)驗(yàn)的主要原理和功能室由溫濕度傳感器檢測(cè)的物理信息通過BLE傳輸給智能手機(jī)終端,由Android應(yīng)用程序解析數(shù)據(jù)并判定溫濕度信息的變化,完成報(bào)警功能。

軟件附加部分可設(shè)置多種創(chuàng)新內(nèi)容,如改進(jìn)溫濕度信息預(yù)警判斷的算法,以及搭建服務(wù)器已上傳APP的數(shù)據(jù)庫(kù)信息并分析。

參考文獻(xiàn)(References):

[1]楊丹,吳建勝,王剛,等.“物聯(lián)網(wǎng)技術(shù)及應(yīng)用”實(shí)驗(yàn)教學(xué)環(huán)境構(gòu)建[J].實(shí)驗(yàn)室研究與探索,2016(6):211-213.

[2]黃崢,古鵬.物聯(lián)網(wǎng)實(shí)驗(yàn)室建設(shè)研究與探討[J].實(shí)驗(yàn)技術(shù)與管理,2012(2):191-195.

[3]錢志鴻,王義君.物聯(lián)網(wǎng)技術(shù)與應(yīng)用研究[J].電子學(xué)報(bào),2012(5):1023-1029.

[4]李德駿,盧曉波. 可手機(jī)監(jiān)控的智能紙尿褲電子系統(tǒng)[J]. 電子質(zhì)量,2015(7):35-38.

[5]張思云. 紙尿褲熱濕舒適性的評(píng)價(jià)與研究[D].上海:東華大學(xué),2014.

[6]Duane W J, Pepin N C, Losleben M L,etal. General characteristics of temperature and humidity variability on kilimanjaro, tanzania[J]. Arctic Antarctic & Alpine Research, 2016, 40(2):323-334.

[7]Patanen M. Creating Android application using BLE sensor: A knee rehabilitation monitoring system[J]. Astronomy Now, 2014, 17(11):1804-1814.

[8]韓悅文. 幾種典型濕度傳感器的原理和概要分析[J]. 江漢大學(xué)學(xué)報(bào)(自然科學(xué)版),2009(1):33-36.

[9]廖澤鑫. 溫度傳感器的設(shè)計(jì)與研究[D].上海:復(fù)旦大學(xué),2012.

[10]李金樺,甄輝,黃海,等. 基于BLE的Android心電監(jiān)護(hù)軟件[J]. 計(jì)算機(jī)與現(xiàn)代化,2016(4):114-122.

[11]常敏,梅曉敏,崔永進(jìn),等. 基于BLE與Android的牧場(chǎng)溫濕度智能監(jiān)控系統(tǒng)設(shè)計(jì)[J]. 通信電源技術(shù),2015(5):134-137.

[12]林培杰,朱安南,程樹英. Android數(shù)據(jù)庫(kù)SQLite性能優(yōu)化[J]. 計(jì)算機(jī)系統(tǒng)應(yīng)用,2014(4):193-196.

[13]潘月, 朱卉. 基于Android系統(tǒng)的藍(lán)牙便攜式血脂儀的設(shè)計(jì)[J]. 電子設(shè)計(jì)工程, 2013, 21(24):170-173.

[14]唐榮年, 曾雄梅. 基于北斗衛(wèi)星和藍(lán)牙技術(shù)的Android手機(jī)導(dǎo)航系統(tǒng)設(shè)計(jì)[J]. 武漢理工大學(xué)學(xué)報(bào), 2015, 37(6):104-108.

[15]張馳程,周淵平. 基于Android的藍(lán)牙通信頭盔應(yīng)用[J]. 計(jì)算機(jī)系統(tǒng)應(yīng)用,2017(2):37-42.

猜你喜歡
溫濕度藍(lán)牙應(yīng)用程序
藍(lán)牙音箱的直線之美
溫濕度控制器在回收砂冷卻系統(tǒng)中的應(yīng)用
基于DSP的多路溫濕度監(jiān)測(cè)系統(tǒng)
刪除Win10中自帶的應(yīng)用程序
簡(jiǎn)單、易用,可玩性強(qiáng)Q AcousticsBT3藍(lán)牙音箱
基于溫濕度控制的天氣預(yù)測(cè)裝置
電子制作(2018年11期)2018-08-04 03:26:02
適合自己的才是最好的 德生(TECSUN) BT-50藍(lán)牙耳機(jī)放大器
緊急:藍(lán)牙指尖陀螺自燃!安全隱患頻出
玩具世界(2017年8期)2017-02-06 03:01:38
蒸發(fā)冷卻溫濕度獨(dú)立控制空調(diào)系統(tǒng)的應(yīng)用
關(guān)閉應(yīng)用程序更新提醒
電腦迷(2012年15期)2012-04-29 17:09:47
紫云| 和平县| 玉龙| 贡山| 盐池县| 临武县| 嘉荫县| 南郑县| 丹江口市| 永吉县| 曲麻莱县| 潜山县| 静宁县| 乌兰浩特市| 福泉市| 喀喇| 嘉义市| 通化市| 平湖市| 清流县| 抚州市| 阳西县| 阳江市| 三穗县| 大悟县| 伊春市| 玉树县| 万盛区| 绵阳市| 永清县| 宜都市| 芦溪县| 鄂尔多斯市| 肇州县| 岳池县| 普兰店市| 宾川县| 霸州市| 靖宇县| 上饶市| 洪湖市|