999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Arduino和App Inventor2的空氣溫濕度檢測系統(tǒng)設(shè)計

2018-02-28 11:19:18楊靜
電子技術(shù)與軟件工程 2018年21期
關(guān)鍵詞:交互設(shè)計

楊靜

摘要

運用Arduino和AppInventor2開發(fā)空氣溫濕度檢測系統(tǒng),將傳統(tǒng)交互設(shè)計教學中的界面與硬件相聯(lián)系,能夠更好的理解交互設(shè)計與如何增強用戶體驗。該系統(tǒng)主要由溫濕度傳感器、Arduino UNO開發(fā)板、藍牙通信模塊、手機App等構(gòu)成,具有結(jié)構(gòu)簡單、成本低廉、綜合能力要求較高的特點,適合作為項目教學案例應用于交互設(shè)計專業(yè)和創(chuàng)客教育中。

【關(guān)鍵詞】Arduino App Inventor2 溫濕度藍牙通信 交互設(shè)計

智能家居作為物聯(lián)技術(shù)在居住環(huán)境中的綜合體現(xiàn),現(xiàn)今己被越來越多的中國消費者所接受。環(huán)境監(jiān)測作為其中的一項重要組成部分,通常會通過各種傳感器對空氣溫度、濕度、燃氣濃度、火焰探測等項目進行監(jiān)測。其中空氣溫濕度的智能檢測常作為附加功能應用于空調(diào)、加濕器、除濕器等家電,需要啟動體量較大的家電才能實現(xiàn)檢測,成本較高;而傳統(tǒng)的簡易物理溫濕度測量儀不具備手機實時顯示的功能,便捷性較低。本文設(shè)計提出的基于Arduino和APP Inventor2的空氣溫濕度檢測系統(tǒng),具有通過手機APP遠程控制并實時顯示空氣溫濕度訊息的功能,具備系統(tǒng)結(jié)構(gòu)簡易、硬件連接簡單、軟件制作便捷、APP軟件界面用戶體驗順暢、成本較低的優(yōu)點,十分適合作為項目教學案例應用于交互設(shè)計專業(yè)和創(chuàng)客教育中的編程教育中。

1 系統(tǒng)結(jié)構(gòu)

本系統(tǒng)由檢測對象、溫濕度傳感器、Arduino開發(fā)板、無線通信模塊、手機川,P等部分構(gòu)成。檢測對象為空氣溫濕度信息;傳感器把在空氣中獲取的溫濕度信息轉(zhuǎn)變?yōu)殡娦盘栞敵鲋罙rduino開發(fā)板;開發(fā)板首先將接收到的空氣溫濕度信息進行數(shù)據(jù)處理,通過比特與數(shù)值的換算公式,輸出可直接讀取的溫濕度數(shù)字和符號信息,例如“32℃78%”;然后開發(fā)板通過無線通信模塊與控制手機相連接,手機APP接收并顯示開發(fā)板輸出的溫濕度信息。

2 Arduino的硬件連接與編程

本文設(shè)計中使用的電路硬件有ArduinoUNO板、DHT11溫濕度傳感器以及HC-06無線藍牙通信模塊。Arduino是一個集合開發(fā)板硬件、Arduino IDE程序開發(fā)環(huán)境、Arduino編程語言,三個部分的開源工作平臺,擁有適合編程零基礎(chǔ)的學生學習的編程語言和強大的控制器,因其跨平臺、開源性、易學性、靈活性、可擴展、硬件成本低等特點,活躍于國內(nèi)外的交互設(shè)計教育中。Arduino UNO是Arduino硬件家族中最為適宜初學者使用的開發(fā)板,主要由處理器、電源接口、擴展插槽,三大部分組成。DHT11溫濕度傳感器是一款可輸出數(shù)字信號的溫濕度復合傳感器,穩(wěn)定性較強,它的濕度精度為+-5%RH,量程為20%-90%,溫度精度為+-2℃,量程為0℃-50℃。由于本文設(shè)計中使用的APP hiventor2平臺支持的無線通信連接方式僅支持藍牙,所以選擇HC-06作為通信硬件。HC-06藍牙模塊是一個從機模式無線藍牙數(shù)據(jù)傳輸器件,具有低耗能、低成本、傳輸速率高等優(yōu)點,通電后可自動進入AT模式,快速閃爍紅色小燈,有藍牙設(shè)備接入時紅燈一直亮,本設(shè)計中用于接收和傳遞來自Arduino和手機APP的指令。

DHT11溫濕度傳感器與Arduino UNO的接線方式為:VCC接Arduino的5V;GND接Arduino的GND;NC為不連接空腳;DATA接Arduino的數(shù)字I/O腳位2。

HC-06藍牙模塊與Arduino UNO的接線方式為:VCC接Arduino的5V;GND接Arduino的GND;TXD發(fā)送端接Afduino的數(shù)字I/O腳位0(RN);RXD接收端接Arduino的數(shù)字I/O腳位1(TX)。

本設(shè)計中有關(guān)于Arduino的編程使用Arduino IDE進行開發(fā),用于程序驗證、上傳、調(diào)試和下載的操作,可在電腦端的串口監(jiān)視器中讀取實時采集到的空氣溫濕度數(shù)值。程序主要由定義變量及接口名稱、設(shè)置通信波特率、定義串口指令、獲取數(shù)據(jù)、校對數(shù)據(jù)、處理數(shù)據(jù)、空氣溫濕度數(shù)據(jù)顯示等部分構(gòu)成,在串口監(jiān)視器中輸入“A”時開始檢測溫濕度,輸入“B”時停止檢測,每隔1秒向串口監(jiān)視器發(fā)送一次溫濕度數(shù)據(jù),程序代碼如下所示:

#include

#define pin 2

int temp;//溫度

int hurni;//濕度

int tol;//校對碼

int j;

unsigned int loopCnt;

int chr[40]={0};//創(chuàng)建數(shù)字數(shù)組存儲數(shù)據(jù)

unsigned long time;

char flag_on=0;

void setupo(){Serial.begin(9600);//設(shè)置波特率為9600}

void loop()

{

while(Scrial.available()>0){

char c=Serial.read();

if(c=='A'){flag_on=1;//設(shè)置開}

else if(c=='B'){flag_on=0://設(shè)置關(guān)}

}

if(flag_on)//設(shè)置溫濕度檢測{

bgn:

delay(2000);

pinMode(pin,OUTPUT);//設(shè)置2號接口為輸出模式

digitalWrite(pin,LOW);//輸出低電平

delay(20);

digitalWrite(pin,HIGH);//輸出高電平

delayMicroseconds(40);

digitalWrite(pin,LOW);

piliMode(pin,INPUT);//設(shè)置2號接口為輸入模式

//高電平響應信號

loopCnt=10000;

while(digitaiRead(pin)!=HIGH){

if(loopCnt--==0){

//若不返回高電平,輸出提示從新開始

Scrial.println("HIGH");

goto bgn;

}

}

//低電平響應信號

loopCnt-30000;

while(digitalRead(pin)!=LOW){

if(loopCnt--==0){

//若不返回低電平,輸出提示從新開始

Serial.println("LOW");

goto bgn;

}

}

for(int i=0;i<40;i++){

while(digitaiRead(pin)==LOW){}

time=micros();

while(digitaiRead(pin)==HIGH){}

if(micros()-time>50){chr[i]=1;}

else{chr[i]=0;}

}

//將濕度的8位bit轉(zhuǎn)換為數(shù)值

humi=chr[0]*128+chr[1]*64+chr[2]*32+chr[3]*16+chr[4]*8+chr[5]*4+chr[6]*2+chr[7];

//將溫度的9位的bit轉(zhuǎn)換為數(shù)值

temp=chr[16]*128+chr[17]*64+chr[18]*32+chr[19]*16+chr[20]*8+chr[2]]*4+chr[22]*2+chr[23];

//將校對碼的8位的bit轉(zhuǎn)換為數(shù)值

tol=chr[32]*128+chr[33]*64+chr[34]*32+chr[35]*16+chr[36]*8+chr[37]*4+chr[38]*2+chr[39];

//輸出溫度和濕度

Serial.print(temp);

Serial.print("°C");

Serial.print(humi);

Serial.print("%");

delay(1000);

}

}

3 手機APP軟件設(shè)計

本文設(shè)計中采用APP Inventor2作為制作手機APP軟件的平臺。APP Inventor2是一個最初由谷歌公司發(fā)布,后移交給MIT進行維護的圖形可視化安卓手機應用制作平臺,廣泛應用于非計算機專業(yè)的手機應用制作中與樂高機器人創(chuàng)客活動中。該平臺的軟件設(shè)計工作區(qū)由組件設(shè)計和邏輯設(shè)計兩大部分組成,用戶可通過拖拽模塊進行積木式的拼接實現(xiàn)設(shè)計與編程,還可使用平臺附帶的AI伴侶或安卓模擬器進行實時調(diào)試,極大程度上的降低了學生的學習成本,提高了編程工作者的工作效率。據(jù)研究公司Gartner于2018年2月分享的數(shù)據(jù)表明,2017年全球銷售的智能手機中Android占據(jù)了86%的份額,本文設(shè)計中僅設(shè)計安卓應用符合手機應用市場趨勢。

手機App客戶端功能包括選擇藍牙設(shè)備、連接/斷開藍牙、開啟\關(guān)閉空氣溫度和濕度檢測、顯示溫濕度的數(shù)值4個功能模塊。在組件設(shè)計部分中,需要使用組件面板中的按鈕、列表選擇框、標簽、對話框、圖像、水平布局、垂直布局、藍牙客戶端、計時器8種組件,組件列表與實際手機App初始化界面如圖1所示,“開關(guān)關(guān)”組件屬性為不顯示,右側(cè)初始化界面中的自適應手機界面效果可通過調(diào)整組件列表中水平與垂直布局的組件屬性實現(xiàn)。

邏輯設(shè)計主要分為5個部分軟件初始化、藍牙設(shè)備的選擇、藍牙設(shè)備的連接、設(shè)置按鍵、數(shù)值信息接收。(圖2一圖5)為增強用戶體驗,在整個用戶操作過程中增加了多個狀態(tài)與提示的消息彈出框的設(shè)計,并設(shè)置界面中的按鈕按照操作步驟的順序啟用,啟用狀態(tài)下文字呈現(xiàn)黑色。按鈕填充色為深灰色,禁用狀態(tài)下文字與按鈕呈淺灰色,使界面視覺為界面操作順序進行正確的引導。

(1)軟件初始化。彈出一個消息框顯示“歡迎使用!”,界面中僅“選擇設(shè)備”列表選擇框可被點擊,其他按鍵皆不可用,溫濕度數(shù)值無顯示。

(2)藍牙設(shè)備的選擇。點擊“選擇設(shè)備”列表選擇框,選擇藍牙設(shè)備,彈出“請確認手機己和對方配對!”的消息框,“連接”按鈕啟用。在實際手機應用中操作時,首先需要完成手機藍牙與HC-06藍牙之間的配對,待配對成功后,方可利用平臺的藍牙客戶端組件進行藍牙設(shè)備的選擇。

(3)藍牙設(shè)備的連接。當“連接”按鈕被點擊時,如果藍牙為非連接狀態(tài),消息框提示“藍牙連接成功”,“連接”按鈕文本變?yōu)椤皵嚅_連接”,啟用兩個開關(guān)按鈕,關(guān)閉按鈕不顯示;如果藍牙為連接狀態(tài),消息框提示“藍牙己斷開”,“連接”按鈕文本變?yōu)椤罢堖B接”,禁用兩個開關(guān)按鈕和計時器。

(4)設(shè)置按鍵。點擊“開關(guān)開”,調(diào)用藍牙客戶端組件發(fā)送文本"A",啟用計時器,“開關(guān)開”隱藏,“開關(guān)關(guān)”顯示,Arduino端開始檢測空氣溫濕度;點擊“開關(guān)關(guān)”,調(diào)用藍牙客戶端組件發(fā)送文本“B”,關(guān)閉計時器,“開關(guān)關(guān)”隱藏,“開關(guān)關(guān)”顯示,Arduino端中止檢測溫濕度。

(5)數(shù)值信息接收。啟用計時器時,每100毫秒調(diào)用藍牙客戶端組件接收Arduino端發(fā)送的溫濕度數(shù)值,在“溫濕度數(shù)值”標簽處進行顯示。

4 結(jié)語

運用Arduino和APP Inventor2開發(fā)空氣溫濕度檢測系統(tǒng),將傳統(tǒng)交互設(shè)計教學中的界面與硬件相聯(lián)系,能夠幫助學生更好的理解交互設(shè)計與如何增強用戶體驗,提升學生綜合思考問題的能力。實際教學中可依據(jù)該項目引導學生進行溫濕度條件提示、溫度或濕度的單一應用、與其它電路器件組合等方向的編程與界面的設(shè)計探究。

參考文獻

[1]王登宏,歷佳男,賀雪輝等,基于Arduino的手機同步顯示溫濕度檢測系統(tǒng)的設(shè)計與實現(xiàn)[J].工業(yè)控制計算機,2016,29(07):43-49.

[2]張展瑋,唐細永,葉展鵬,申耀武.基于Arduino控制的移動平臺設(shè)計[J].無線互聯(lián)科技,2017(02):48-49+57.

[3]劉彥,王倩,王可.Arduino單片機在產(chǎn)品交互原型設(shè)計課程中的實驗教學實踐[J].藝術(shù)科技,2016(12):1-3.

猜你喜歡
交互設(shè)計
交互性視覺設(shè)計
青年時代(2016年28期)2016-12-08 16:24:43
非物質(zhì)文化遺產(chǎn)數(shù)字化研究
RRS交互機制分析及基于該機制的節(jié)水APP實現(xiàn)
淺談交互設(shè)計在工業(yè)設(shè)計中的運用
莆田電子商務界面設(shè)計的藝術(shù)研究
主站蜘蛛池模板: 亚洲中文无码h在线观看| 久久久久夜色精品波多野结衣| 国产乱肥老妇精品视频| 亚洲欧美一区二区三区图片| 欧美中文字幕无线码视频| 欧美一级爱操视频| 久久成人18免费| 幺女国产一级毛片| 国产欧美专区在线观看| 国产精品片在线观看手机版| 日本手机在线视频| 日韩在线视频网| 中文字幕第1页在线播| 国产日韩AV高潮在线| 亚洲男人天堂2020| 免费AV在线播放观看18禁强制| 成·人免费午夜无码视频在线观看 | 欧美a在线| 天天躁狠狠躁| 亚洲久悠悠色悠在线播放| 67194在线午夜亚洲| 欧美特黄一级大黄录像| 毛片免费网址| 一级看片免费视频| 成人在线视频一区| 日韩高清一区 | 玖玖精品在线| 一级毛片在线播放免费| 亚洲成人黄色在线| 日本高清在线看免费观看| 久久精品国产999大香线焦| 亚洲永久视频| 国产久操视频| 都市激情亚洲综合久久| 欧美午夜在线播放| 国产综合另类小说色区色噜噜| 伊人成色综合网| 亚洲精品国偷自产在线91正片| 欧美一区二区啪啪| 成年人国产视频| 欧美一级色视频| 久久动漫精品| a色毛片免费视频| 免费毛片a| 欧美一区福利| 色综合国产| 国产精品视频白浆免费视频| 伊人久久婷婷五月综合97色| 无码中文字幕精品推荐| 国产精品女同一区三区五区| 2021国产精品自产拍在线| 国产色网站| 久久6免费视频| 日本日韩欧美| 亚洲人精品亚洲人成在线| av手机版在线播放| 色丁丁毛片在线观看| 韩日午夜在线资源一区二区| 欧美特黄一级大黄录像| 日本一区二区不卡视频| 亚洲AV无码乱码在线观看代蜜桃 | 色成人综合| 日韩一级二级三级| 国产凹凸视频在线观看| 精品91视频| 福利视频久久| 欧美一区二区福利视频| 国产视频a| 无码免费视频| 欧美激情视频一区| 91精品网站| 浮力影院国产第一页| 亚洲第一极品精品无码| 精品久久久久久久久久久| 色综合色国产热无码一| 91娇喘视频| 国产一级视频在线观看网站| 尤物精品国产福利网站| 国产激情在线视频| 精品免费在线视频| 亚洲欧美日韩综合二区三区| 中国美女**毛片录像在线|