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

智慧供熱室溫監(jiān)控平臺(tái)研究與設(shè)計(jì)

2021-05-26 00:54:14修偉通李娟王如龍
傳感器世界 2021年4期
關(guān)鍵詞:數(shù)據(jù)庫(kù)用戶模型

修偉通 李娟 王如龍

1. 北京信息科技大學(xué)自動(dòng)化學(xué)院,北京 100192;2. 中熱智能(北京)工程技術(shù)有限公司,北京 100192

0 引言

隨著城市化進(jìn)程的加快,供熱需求也增長(zhǎng)迅速。基于傳統(tǒng)人工控制的供熱熱網(wǎng)也逐步被自動(dòng)化設(shè)備取代[1],人們對(duì)自動(dòng)化控制的數(shù)據(jù)要求也越來(lái)越高,從基本的熱網(wǎng)熱源控制參數(shù)發(fā)展到管網(wǎng)控制參數(shù),進(jìn)而發(fā)展到換熱站控制參數(shù)[2-4]。眾多數(shù)據(jù)的引入使我國(guó)的集中供熱逐漸向智慧化的方向轉(zhuǎn)變。近些年,供熱公司和高校逐漸把目光轉(zhuǎn)向處于供熱末端的供熱用戶身上,用戶室內(nèi)的溫度是供熱效果最為直接可靠的體現(xiàn)[5]。因此,以采集用戶室內(nèi)溫度為目的的測(cè)溫終端被廣泛部署,這種終端設(shè)備可以代替?zhèn)鹘y(tǒng)的人工上報(bào)手段,使獲得的數(shù)據(jù)更加具有實(shí)時(shí)性和參考性。近年來(lái),隨著物聯(lián)網(wǎng)技術(shù)、無(wú)線通信技術(shù)和云計(jì)算的迅速發(fā)展,開(kāi)發(fā)基于B/S(Browser/Server)架構(gòu)的室溫遠(yuǎn)程監(jiān)控系統(tǒng)已成為新的組網(wǎng)形式[6]。用戶僅需要通過(guò)瀏覽器就可以實(shí)時(shí)查詢各個(gè)供熱區(qū)域內(nèi)的供熱情況,對(duì)實(shí)時(shí)了解供熱情況,合理分配供熱資源具有重要意義。

本文提出一種基于B/S架構(gòu)的室溫監(jiān)控平臺(tái),該平臺(tái)使用Django框架作為Web開(kāi)發(fā),前端采用Bootstrap、CSS、JavaScript和HTML5對(duì)數(shù)據(jù)進(jìn)行可視化展現(xiàn),后端則使用Python語(yǔ)言完成數(shù)據(jù)交互,MySQL作為云端數(shù)據(jù)庫(kù),引用GIS系統(tǒng)展現(xiàn)區(qū)域熱力圖。進(jìn)而實(shí)現(xiàn)系統(tǒng)與現(xiàn)場(chǎng)測(cè)溫終端進(jìn)行GPRS無(wú)線通信,實(shí)現(xiàn)室溫的遠(yuǎn)程監(jiān)控。

1 系統(tǒng)總體架構(gòu)

1.1 網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)

室溫監(jiān)控平臺(tái)選用的網(wǎng)絡(luò)架構(gòu)模式是B/S體系[7-8]。這種架構(gòu)體系是基于瀏覽器和服務(wù)器之間的一種信息交互模式,是一種伴隨Web技術(shù)一同發(fā)展起來(lái)的新型架構(gòu)體系。這種架構(gòu)體系將數(shù)據(jù)庫(kù)作為服務(wù)器,瀏覽器作為客戶端,通過(guò)HTTP協(xié)議進(jìn)行通信,用戶界面通過(guò)瀏覽器進(jìn)行展示。與傳統(tǒng)的C/S(Client/Server)體系相比,新的架構(gòu)體系更能減少系統(tǒng)的開(kāi)發(fā)和維護(hù)成本,同時(shí)為用戶的使用提供便利。

1.2 系統(tǒng)總體結(jié)構(gòu)

系統(tǒng)總體設(shè)計(jì)如圖1所示,可分成3大部分:應(yīng)用層、網(wǎng)絡(luò)傳輸層和設(shè)備層。

應(yīng)用層即為向用戶展示的監(jiān)控平臺(tái),采用Django框架搭建,用戶可以通過(guò)瀏覽器登錄系統(tǒng),直觀查看供熱數(shù)據(jù)以及供熱熱力圖;網(wǎng)絡(luò)傳輸層主要是通過(guò)Socket監(jiān)聽(tīng),將測(cè)溫設(shè)備上傳的數(shù)據(jù)解析并存儲(chǔ)到MySQL數(shù)據(jù)庫(kù)中;設(shè)備層則是當(dāng)前已經(jīng)安裝的測(cè)溫設(shè)備,數(shù)據(jù)通過(guò)GPRS以Socket的形式進(jìn)行上傳。

1.3 MySQL數(shù)據(jù)庫(kù)管理系統(tǒng)

MySQL是目前最為流行的關(guān)系型數(shù)據(jù)控管理系統(tǒng)。該數(shù)據(jù)庫(kù)管理系統(tǒng)具有軟件體積小、數(shù)據(jù)處理速度快和代碼開(kāi)源開(kāi)發(fā)成本低的特點(diǎn)。同時(shí),MySQL數(shù)據(jù)庫(kù)可以兼容Django框架,通過(guò)Django框架設(shè)計(jì)數(shù)據(jù)模型后,通過(guò)Django數(shù)據(jù)庫(kù)遷移功能即可完成數(shù)據(jù)庫(kù)的搭建工作,同時(shí)針對(duì)SQL語(yǔ)言,Python設(shè)計(jì)了更為方便的數(shù)據(jù)包——pymysql,可以使開(kāi)發(fā)人員更加方便的管理和操作數(shù)據(jù)庫(kù)。因此,將MySQL作為服務(wù)器的數(shù)據(jù)庫(kù),對(duì)于存儲(chǔ)大量設(shè)備信息、用戶信息和歷史溫度數(shù)據(jù),提供快捷高效的邏輯運(yùn)算和數(shù)據(jù)分析起到了十分重要的作用。

1.4 Django框架

本文提出的室溫監(jiān)測(cè)系統(tǒng)基于B/S(Brower/Server)架構(gòu),使用Django框架進(jìn)行開(kāi)發(fā)。Django框架是在傳統(tǒng)MVC的基礎(chǔ)上用模板代替控制器發(fā)展而成的新模式——MTV設(shè)計(jì)模式,即模型(Model)、模板(Template)、視圖(View)[9]。其中,模型層是數(shù)據(jù)存儲(chǔ)層,通過(guò)創(chuàng)建表單、字段與數(shù)據(jù)庫(kù)進(jìn)行同步管理,提供通用的數(shù)據(jù)輸入輸出接口,當(dāng)應(yīng)用更換不同類(lèi)型數(shù)據(jù)庫(kù)時(shí),不需要重新建立數(shù)據(jù)庫(kù)模型,利用現(xiàn)有的表單模型即可生成新的數(shù)據(jù)庫(kù)文件;模板層是數(shù)據(jù)渲染層,決定瀏覽器內(nèi)容呈現(xiàn)的樣式,從而決定了數(shù)據(jù)的可視化形式;視圖層是業(yè)務(wù)邏輯層,后端接收前端用戶業(yè)務(wù)請(qǐng)求,數(shù)據(jù)的預(yù)處理分析以及查詢工作和邏輯功能的實(shí)現(xiàn)都是在視圖層進(jìn)行完成,是連接模板與模型的橋梁,Django框架如圖2所示。

1.5 地理信息系統(tǒng)(GIS)

地理信息系統(tǒng)(geographic information system,GIS)是基于計(jì)算機(jī)軟硬件系統(tǒng)的以數(shù)據(jù)采集、存儲(chǔ)、管理、分析和描述整個(gè)或部分地區(qū)表面資源的技術(shù)系統(tǒng)[10]。該系統(tǒng)可以將地物的地理空間位置和與其相關(guān)的其他屬性數(shù)據(jù)進(jìn)行結(jié)合展示,使信息更為直觀地展現(xiàn)出來(lái)。同時(shí),也可以為用戶提供分析、查詢以及檢索等相關(guān)功能。基于GIS系統(tǒng)設(shè)計(jì)的熱力圖可以更加直觀地反映區(qū)域供熱情況。本次平臺(tái)設(shè)計(jì)選用百度地圖作為GIS系統(tǒng)模板,前端調(diào)用百度地圖預(yù)留的API接口,可以在百度地圖原有的地圖系統(tǒng)中直接繪制區(qū)域熱力圖。

2 系統(tǒng)硬件設(shè)計(jì)

系統(tǒng)硬件基于目前中熱智能(北京)工程技術(shù)有限公司已經(jīng)研發(fā)的室內(nèi)溫度采集終端,采用單片機(jī)STM32F103C8T6作為主控MCU,無(wú)線通信技術(shù)選用GPRS技術(shù),使用通行模塊型號(hào)為M26,外圍電路包括測(cè)溫電路、存儲(chǔ)電路、實(shí)時(shí)時(shí)鐘電路和GPRS通信電路,硬件模塊的結(jié)構(gòu)組成如圖3所示。該測(cè)溫終端可以將采集到的數(shù)據(jù)通過(guò)GPRS模塊以Socket嵌套字的形式上傳至服務(wù)器進(jìn)行解析處理。

3 系統(tǒng)軟件設(shè)計(jì)

系統(tǒng)軟件可以分為服務(wù)器軟件設(shè)計(jì)和數(shù)據(jù)通信軟件設(shè)計(jì)。其中,服務(wù)器部分可以根據(jù)Django框架分為模型設(shè)計(jì)、模板設(shè)計(jì)和視圖設(shè)計(jì)。

室溫監(jiān)控平臺(tái)界面的整體功能包括用戶的登錄與注冊(cè)、設(shè)備信息管理、溫度報(bào)警、實(shí)時(shí)熱力圖和歷史溫度數(shù)據(jù)查詢等功能。

3.1 服務(wù)器軟件設(shè)計(jì)

3.1.1 模型設(shè)計(jì)

使用Pycharm軟件建立Django項(xiàng)目后,可以在models.py文件中建立數(shù)據(jù)模型,模型建立后可以使用指令python manage.py makemigratetions和指令python manage.py migrate通過(guò)該模型在MySQL數(shù)據(jù)庫(kù)中建立對(duì)應(yīng)表單用于后續(xù)的數(shù)據(jù)存儲(chǔ)工作。

本文設(shè)計(jì)的監(jiān)控平臺(tái)共建立3個(gè)數(shù)據(jù)模型,即User(用戶模型)、UserItom(設(shè)備模型)和ItomDetail(設(shè)備信息模型)。3個(gè)表單均為一對(duì)多關(guān)系,各個(gè)模型之間可以通過(guò)關(guān)鍵詞ForeignKey建立外部聯(lián)系,模型關(guān)系結(jié)構(gòu)和具體ForeignKey如圖4所示。

模型User用于用戶信息表單建立,涉及用戶賬號(hào)、密碼、地址區(qū)域等信息;模型UserItom用于設(shè)備信息表單建立,涉及設(shè)備ID、設(shè)備地址、經(jīng)緯度等信息的存儲(chǔ);模型ItomDetail主要用于設(shè)備采集溫度表單建立,其功能主要為保存測(cè)溫終端上傳的溫度數(shù)據(jù)和采集時(shí)間。

3.1.2 視圖設(shè)計(jì)

Django框架中視圖設(shè)計(jì)包含2個(gè)內(nèi)容:路由(URL)設(shè)置和視圖函數(shù)設(shè)計(jì)。

路由是根據(jù)用戶請(qǐng)求的URL連接來(lái)判斷對(duì)應(yīng)的處理程序,同時(shí)返回處理結(jié)果,即Django框架通過(guò)URL來(lái)將用戶請(qǐng)求與視圖函數(shù)建立映射關(guān)系。Django路由使用正則表達(dá)式在urls.py中進(jìn)行配置,urls.py中的每一條配置對(duì)應(yīng)響應(yīng)的處理方法。本文設(shè)計(jì)的系統(tǒng)路由配置如圖5所示。

3.1.3 模板設(shè)計(jì)

Django框架中的模板語(yǔ)言是一種將HTML語(yǔ)言與邏輯控制代碼相結(jié)合的新型語(yǔ)言,可以在服務(wù)端后端的數(shù)據(jù)變量嵌入到HTML文件中進(jìn)行渲染后,返回給瀏覽器來(lái)達(dá)到前后端代碼分離、頁(yè)面動(dòng)態(tài)顯示的目的。Django模板語(yǔ)言的優(yōu)勢(shì)主要展現(xiàn)在母版繼承和include組件嵌套。

母版繼承以減少網(wǎng)頁(yè)公用頁(yè)面區(qū)域重復(fù)使用造成的代碼冗余,通過(guò)在母版定義block塊,子版繼承母版后僅需編寫(xiě)塊中內(nèi)容即可實(shí)現(xiàn)網(wǎng)頁(yè)的快速編寫(xiě),例如圖6中的base.html文件為用戶登錄后的系統(tǒng)樣式文件,子版繼承后就可在此基礎(chǔ)上實(shí)現(xiàn)其余功能,如圖7所示,紅色區(qū)域內(nèi)為子版繼承后編寫(xiě)的block塊。

Include組件嵌套則可以方便對(duì)HTML中需要的CSS和JavaScript代碼進(jìn)行整合形成公共組件,其他代碼則可以通過(guò)標(biāo)簽{% include %}進(jìn)行調(diào)用。

3.2 熱力圖設(shè)計(jì)

熱力圖的設(shè)計(jì)是以百度地圖為基礎(chǔ),在HTML文件中通過(guò)script標(biāo)簽接入百度地圖的API接口,使用JavaScript完成地圖創(chuàng)建,確定地圖中心坐標(biāo)和其余地圖設(shè)置。

熱力圖數(shù)據(jù)可以在后端以json格式通過(guò)render函數(shù)傳遞給前端的JavaScript函數(shù),json數(shù)據(jù)中要包含建立熱力點(diǎn)所需要的設(shè)備經(jīng)緯度信息和溫度等級(jí)信息,溫度等級(jí)范圍是0~100,可以根據(jù)實(shí)際使用的溫度范圍進(jìn)行自定義劃分,不同等級(jí)在圖中展示的顏色也會(huì)不同。百度地圖提供的heatmapOverlay.setDateSet()可以根據(jù)提供的熱力信息完成熱力圖制作,熱力圖如圖8所示。

3.3 數(shù)據(jù)通信軟件設(shè)計(jì)

測(cè)溫終端作為客戶端,使用綁定的服務(wù)器IP地址和預(yù)留端口號(hào),利用GPRS實(shí)現(xiàn)對(duì)服務(wù)器的連接和訪問(wèn)。服務(wù)端則利用Python Socket編寫(xiě)腳本用以偵聽(tīng)GPRS發(fā)送的TCP/IP請(qǐng)求。當(dāng)終端GPRS模塊與服務(wù)端監(jiān)聽(tīng)程序設(shè)置的IP地址及端口一致時(shí),就可以建立兩者通信。之后,通過(guò)建立MySQL數(shù)據(jù)庫(kù)游標(biāo)將終端上傳的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)中,通信流程如圖9所示。

3.4 數(shù)據(jù)查詢?cè)O(shè)計(jì)

在熱力圖顯示界面,為方便用戶更加詳細(xì)地了解實(shí)時(shí)數(shù)據(jù)情況,引入實(shí)時(shí)數(shù)據(jù)展示功能。該功能可以將各個(gè)設(shè)備的最新溫度數(shù)據(jù)進(jìn)行滾動(dòng)式循環(huán)顯示,同時(shí),使用JavaScript編寫(xiě)腳本函數(shù)用不同顏色區(qū)分各個(gè)溫度區(qū)域:溫度數(shù)據(jù)低于10 ℃或高于27 ℃標(biāo)記為異常溫度,用紅色進(jìn)行標(biāo)識(shí);溫度處于10~18 ℃之間標(biāo)記低溫,用藍(lán)色進(jìn)行標(biāo)識(shí);溫度處于18~23 ℃之間標(biāo)記為正常溫度,用綠色進(jìn)行標(biāo)識(shí);溫度處于23~27 ℃之間標(biāo)記為高溫,用黃色進(jìn)行標(biāo)識(shí)。此外,可以使用HTML編寫(xiě)鼠標(biāo)懸停功能,當(dāng)鼠標(biāo)懸停于某個(gè)數(shù)據(jù)上時(shí),該數(shù)據(jù)會(huì)變?yōu)榘咨珮?biāo)記,同時(shí)顯示該數(shù)據(jù)的采集時(shí)間,方便用戶查詢,實(shí)時(shí)數(shù)據(jù)功能如圖10所示。

4 系統(tǒng)測(cè)試

服務(wù)器使用Python Socket腳本對(duì)端口進(jìn)行偵聽(tīng),接收來(lái)自測(cè)溫終端的連接請(qǐng)求和數(shù)據(jù),并將接收的數(shù)據(jù)存入MySQL數(shù)據(jù)庫(kù)中。用戶注冊(cè)、登錄系統(tǒng)后,可以看到已經(jīng)綁定的設(shè)備信息以及已經(jīng)上傳的歷史溫度數(shù)據(jù)和實(shí)時(shí)熱力圖。系統(tǒng)部分功能界面如圖11所示。

5 結(jié)束語(yǔ)

本文結(jié)合物聯(lián)網(wǎng)和GPRS無(wú)線通信技術(shù)設(shè)計(jì)了室溫監(jiān)控平臺(tái)。平臺(tái)設(shè)計(jì)基于Django框架,給出了詳細(xì)的軟件設(shè)計(jì)流程以及具體工具的使用方法,經(jīng)過(guò)測(cè)試,該平臺(tái)可以穩(wěn)定接收終端數(shù)據(jù),方便用戶遠(yuǎn)程管理設(shè)備,通過(guò)熱力圖直觀展現(xiàn)區(qū)域供熱分布情況。本系統(tǒng)與傳統(tǒng)的室溫統(tǒng)計(jì)方法相比,在極大減少人力成本的同時(shí)提高了數(shù)據(jù)的實(shí)時(shí)性,從而為智慧供熱整體控制提供更為可靠的數(shù)據(jù)支持。

猜你喜歡
數(shù)據(jù)庫(kù)用戶模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
數(shù)據(jù)庫(kù)
關(guān)注用戶
3D打印中的模型分割與打包
關(guān)注用戶
數(shù)據(jù)庫(kù)
關(guān)注用戶
數(shù)據(jù)庫(kù)
主站蜘蛛池模板: 亚洲毛片一级带毛片基地| 人妻无码中文字幕第一区| 亚洲h视频在线| 国产亚洲欧美在线视频| 国产在线观看精品| 99久久亚洲综合精品TS| 特级精品毛片免费观看| 国产va在线观看免费| 婷婷综合缴情亚洲五月伊| 久精品色妇丰满人妻| 精品国产免费观看一区| 国产精品思思热在线| 国产精品流白浆在线观看| 亚洲色图欧美激情| 日本91视频| 黄色福利在线| 激情视频综合网| 欧美日韩一区二区在线免费观看| 99视频在线免费看| 刘亦菲一区二区在线观看| 国产91视频观看| 色综合中文综合网| 亚洲看片网| 蝌蚪国产精品视频第一页| 九九九国产| 操操操综合网| 亚洲精品午夜天堂网页| 激情無極限的亚洲一区免费| 色播五月婷婷| 91人妻日韩人妻无码专区精品| 国产一级视频久久| 青青草欧美| 3p叠罗汉国产精品久久| 日韩专区第一页| 91av成人日本不卡三区| 玖玖精品视频在线观看| 国产肉感大码AV无码| 在线欧美a| 色悠久久综合| 精品超清无码视频在线观看| 国产三级精品三级在线观看| 久久一本日韩精品中文字幕屁孩| 国产凹凸视频在线观看| 97亚洲色综久久精品| 被公侵犯人妻少妇一区二区三区 | 91精品专区| 国产精欧美一区二区三区| 在线国产91| 国产成人高清在线精品| 女人天堂av免费| 97av视频在线观看| www.91在线播放| 一级毛片视频免费| 一本大道无码日韩精品影视| 亚洲aaa视频| a色毛片免费视频| 欧美成人第一页| 女同国产精品一区二区| 免费Aⅴ片在线观看蜜芽Tⅴ| 69视频国产| 亚洲人成网7777777国产| 亚洲精品中文字幕午夜| 波多野结衣一区二区三区四区视频| 国产69囗曝护士吞精在线视频 | 国产迷奸在线看| 国产日韩精品欧美一区喷| 亚洲中文字幕97久久精品少妇| 久久福利片| 波多野结衣一区二区三区88| 国产欧美自拍视频| 久久黄色一级片| 久久综合国产乱子免费| 久久久久青草线综合超碰| 爽爽影院十八禁在线观看| 免费国产无遮挡又黄又爽| 18禁色诱爆乳网站| 熟妇人妻无乱码中文字幕真矢织江| 99热亚洲精品6码| 欧美国产日韩一区二区三区精品影视 | 国产幂在线无码精品| 中字无码精油按摩中出视频| 日韩精品成人在线|