亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Qt on Android平臺的空氣質(zhì)量監(jiān)測系統(tǒng)手機客戶端設(shè)計

        2017-03-15 17:05:53曹龍劉煒曾力
        電子技術(shù)與軟件工程 2017年2期
        關(guān)鍵詞:空氣質(zhì)量客戶端服務(wù)器

        曹龍+劉煒+曾力

        摘 要 利用Qt on Android平臺設(shè)計出了一種針對空氣質(zhì)量監(jiān)測系統(tǒng)的Android手機客戶端,該客戶端實現(xiàn)了手機與服務(wù)器的信息交互,使得用戶可以通過手機方便快捷的查詢選定監(jiān)測端當(dāng)前的空氣質(zhì)量數(shù)據(jù),實現(xiàn)了室內(nèi)環(huán)境監(jiān)測的網(wǎng)絡(luò)化。同時為C/C++程序員在Android平臺開發(fā)APP提供了范例。

        【關(guān)鍵詞】Qt on Android 空氣質(zhì)量 監(jiān)測 C/S XML

        1 引言

        Android平臺已成為智能手機領(lǐng)域舉足輕重的平臺,由于其只支持Java開發(fā)應(yīng)用,對C/C++開發(fā)的支持有限,大多數(shù)C/C++程序員若想進行Android平臺的開發(fā)只好轉(zhuǎn)型。而Qt on Android的出現(xiàn)為眾多C/C++程序員提供了福音。利用Qt Creator可以輕松將Qt程序部署到Android平臺上,從而實現(xiàn)Qt在Android平臺上的應(yīng)用。筆者設(shè)計了一種針對空氣質(zhì)量監(jiān)測系統(tǒng)的Android手機客戶端,為操作人員提供更加靈活的環(huán)境監(jiān)測手段,隨時獲取環(huán)境信息。

        2 手機客戶端的軟件功能

        空氣質(zhì)量監(jiān)測系統(tǒng)手機客戶端的主要作用是按照用戶的需求,向服務(wù)器發(fā)出相應(yīng)的請求,從而獲取當(dāng)前室內(nèi)的溫度、濕度、光照強度、PM2.5和氨硫類氣體等環(huán)境數(shù)據(jù)信息,并對數(shù)據(jù)進行解析后存儲,通過相應(yīng)的控件在手機上顯示出來,從而實現(xiàn)室內(nèi)環(huán)境監(jiān)測的網(wǎng)絡(luò)化、智能化。

        手機客戶端軟件主要由用戶登錄模塊、用戶注冊模塊、通信設(shè)置模塊、室內(nèi)環(huán)境數(shù)據(jù)顯示界面,數(shù)據(jù)曲線繪制模塊等組成。其結(jié)構(gòu)如圖1所示。

        登錄模塊:主要實現(xiàn)用戶的登錄功能。當(dāng)手機客戶端發(fā)出登錄請求后,服務(wù)器匹配用戶數(shù)據(jù)庫的信息,若匹配成功,則返回登錄成功的指令,進入數(shù)據(jù)顯示界面。

        注冊模塊:為用戶提供注冊功能。用戶確定注冊信息后,服務(wù)器將用戶名和密碼信息查詢用戶數(shù)據(jù)庫中用戶是否已存在,若用戶名不存在,則完成注冊,否則提示用戶出錯。

        網(wǎng)絡(luò)設(shè)置:設(shè)置客戶端網(wǎng)絡(luò)連接的服務(wù)器IP和端口。

        數(shù)據(jù)顯示界面:客戶端登錄后會實時顯示當(dāng)前時段各個終端的數(shù)據(jù)情況;點擊對應(yīng)的圖標(biāo)會進入數(shù)據(jù)曲線顯示界面。如圖2所示。

        客戶端中界面設(shè)計采用堆棧的思想,使用QStackedWidget類對各個界面進行存放,將不同的widget使用UI控件類將其放進該類的對象中,并進行編號,也可顯式編號,默認(rèn)從0開始。利用Qt中的信號與槽機制(singnals and slots),可以很好的實現(xiàn)各個界面的切換,以界面中的“登錄”功能為例,當(dāng)用戶點擊“DL_Btn”控件(登錄按鈕名稱)時,控件發(fā)出信號clicked(),從而觸發(fā)與之相關(guān)聯(lián)的槽函數(shù)on_DL_Btn_clicked(),在函數(shù)中處理登錄過程的信息交互,當(dāng)滿足登錄條件時,調(diào)用setCurrentIndex(int) 來顯示該頁號的widget。進入數(shù)據(jù)顯示界面。

        3 手機客戶端與服務(wù)器的通信

        該平臺采用C/S(Client/Server)結(jié)構(gòu),客戶端程序與服務(wù)器通過Socket套接字建立TCP/IP連接,從而實現(xiàn)客戶端與服務(wù)器的網(wǎng)絡(luò)數(shù)據(jù)通信。在Qt中QTcpSocket類為TCP提供了一個接口,可以使用QTcpSocket來實現(xiàn)標(biāo)準(zhǔn)的網(wǎng)絡(luò)協(xié)議。

        服務(wù)器啟動后,調(diào)用QTcpServer::listen()函數(shù)來設(shè)置服務(wù)器的IP及端口號,如server->listen(QHostAddress::Any,ui->txtPort->text().toInt()),使服務(wù)器進入監(jiān)聽狀態(tài),等待客戶端的連接。配置代碼如下:

        bool ok=server->listen(QHostAddress::Any,ui->txtPort->text().toInt());//啟動監(jiān)聽

        客戶端負(fù)責(zé)建立Socket連接,用戶輸入用戶名和密碼進行登錄后,系統(tǒng)進入Sockt連接槽函數(shù),通過QTcpSocket::connectToHost()函數(shù)建立與服務(wù)器的連接,同時使用QTcpSocket::waitForConnected()函數(shù)設(shè)置連接超時時間。Socket連接成功后,服務(wù)器就可以接收客戶端發(fā)出的請求信息,與客戶端進行環(huán)境信息的交互。部分代碼如下:

        tcpClient->connectToHost(ui->txtIP->text(),ui->txtPort->text().toInt());//連接服務(wù)器

        tcpClient->waitForConnected(1000);//連接超時設(shè)置

        4 手機客戶端與服務(wù)器間的通訊協(xié)議

        服務(wù)器和手機客戶端數(shù)據(jù)通訊采用的是用TCP/IP傳輸XML的消息的方式,其幀結(jié)構(gòu)如表1所示。

        其中開始表示采用0C55CH,報文內(nèi)容為XML文件的數(shù)據(jù)流。XML格式部分報文如下:

        請求監(jiān)測參數(shù)報文:

        <?xml version="1.0" encoding="UTF-8"?>

        需求數(shù)據(jù)版本號

        回復(fù)報文:

        <?xml version="1.0" encoding="UTF-8"?>

        監(jiān)測終端編號

        溫度

        濕度

        光強PM2.5

        有害氣體

        日期

        時間段

        .......

        服務(wù)器接收到客戶端的請求命令后,獲取數(shù)據(jù)庫中存儲版本后到當(dāng)前時間段版本的數(shù)據(jù),按照上述格式回復(fù)報文的形式保存為xml文件,讀取文件并轉(zhuǎn)化為字節(jié)流,再進行幀格式的拼接,封裝成TCP/IP數(shù)據(jù)幀發(fā)送;手機客戶端將接收的數(shù)據(jù)幀去掉幀頭后,提取有效信息保存為xml文件,應(yīng)用程序解析xml文件中的監(jiān)測信息,最后通過界面進行顯示。

        5 結(jié)語

        本文提出的使用Qt on Android設(shè)計的空氣質(zhì)量監(jiān)測系統(tǒng)在Android智能機上得以實現(xiàn),增強空氣質(zhì)量監(jiān)測系統(tǒng)監(jiān)測數(shù)據(jù)查詢的便捷性,同時為C/C++程序員開發(fā)Android手機APP提供了范例,具有很好的借鑒價值。

        參考文獻

        [1]安曉輝.Qt on Android核心編程[M].電子工業(yè)出版社,2015.

        [2]霍亞飛.Qt Creator快速入門[M].北京航空航天大學(xué)出版社,2012.

        [3]孫賀.室內(nèi)環(huán)境監(jiān)測系統(tǒng)中客戶端的設(shè)計與實現(xiàn)[D].信息技術(shù),2014.

        作者簡介

        曹龍,碩士學(xué)歷。主要研究方向為信號檢測與信息處理。

        劉煒,副教授,碩士研究生導(dǎo)師。

        曾力,碩士學(xué)歷。主要研究方向為信號檢測與信息處理。

        作者單位

        北方民族大學(xué)電氣信息工程學(xué)院 寧夏回族自治區(qū)銀川市 750021

        猜你喜歡
        空氣質(zhì)量客戶端服務(wù)器
        通信控制服務(wù)器(CCS)維護終端的設(shè)計與實現(xiàn)
        縣級臺在突發(fā)事件報道中如何應(yīng)用手機客戶端
        傳媒評論(2018年4期)2018-06-27 08:20:24
        孵化垂直頻道:新聞客戶端新策略
        傳媒評論(2018年4期)2018-06-27 08:20:16
        基于Vanconnect的智能家居瘦客戶端的設(shè)計與實現(xiàn)
        電子測試(2018年10期)2018-06-26 05:53:34
        “空氣質(zhì)量發(fā)布”APP上線
        得形忘意的服務(wù)器標(biāo)準(zhǔn)
        車內(nèi)空氣質(zhì)量標(biāo)準(zhǔn)進展
        汽車與安全(2016年5期)2016-12-01 05:22:14
        重視車內(nèi)空氣質(zhì)量工作 制造更環(huán)保、更清潔、更健康的汽車
        汽車與安全(2016年5期)2016-12-01 05:22:13
        開展“大氣污染執(zhí)法年”行動 加快推動空氣質(zhì)量改善
        計算機網(wǎng)絡(luò)安全服務(wù)器入侵與防御
        亚洲一区av在线观看| 亚洲国产精品高清一区| 日本视频一区二区三区一| 欧美xxxxx高潮喷水麻豆| 中国无码人妻丰满熟妇啪啪软件| 久久av高潮av无码av喷吹| 夜色阁亚洲一区二区三区| 亚洲色偷拍一区二区三区| 亚洲av成人一区二区三区在线观看| 国产欧美日韩午夜在线观看| 国产成人香蕉久久久久| 男女搞黄在线观看视频 | 国产在热线精品视频| 免费观看的a级毛片的网站| 无码一区二区波多野结衣播放搜索 | 人妻久久久一区二区三区蜜臀| 欧美人与禽z0zo牲伦交| 无码人妻丰满熟妇片毛片| 亚洲一区综合精品狠狠爱| 亚洲国产剧情一区在线观看| 中文字幕一区二区网址| 日韩一区在线精品视频| 无码av无码天堂资源网| 久久av高潮av喷水av无码| 人妻少妇久久精品一区二区| 国产在线观看一区二区三区av| 国产精品主播在线一区二区| 久久精品国产精品青草| 人与嘼交av免费| 亚洲tv精品一区二区三区| 婷婷色在线视频中文字幕| 亚洲精品98中文字幕| 国产av国片精品jk制服| 亚洲国产长腿丝袜av天堂| 国产香蕉尹人综合在线观| 18禁成人免费av大片一区| 人妻久久一区二区三区| 免费超爽大片黄| 99热精品成人免费观看| 亚洲av色香蕉一区二区蜜桃| 久久精品国产亚洲综合av|