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

        ?

        基于嵌入式和Web技術(shù)的智慧循環(huán)水處理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

        2022-07-29 14:12:30王自強(qiáng)
        計(jì)算機(jī)時(shí)代 2022年7期
        關(guān)鍵詞:頁(yè)面水質(zhì)傳感器

        王自強(qiáng)

        (上海理工大學(xué)機(jī)械工程學(xué)院,上海 200093)

        0 引言

        近年來(lái),水處理問(wèn)題已經(jīng)成為我國(guó)環(huán)保領(lǐng)域的熱點(diǎn)問(wèn)題之一。目前很多位于二三線城市的水處理企業(yè)仍然采用傳統(tǒng)的工作模式,工人師傅需要每天定時(shí)定點(diǎn)進(jìn)行水質(zhì)檢測(cè)、開(kāi)泵加藥、設(shè)備維護(hù)等工作,由此造成了企業(yè)管理成本高、工作效率低等問(wèn)題。

        為了解決上述問(wèn)題,筆者針對(duì)江蘇某水處理企業(yè)設(shè)計(jì)了一套循環(huán)水處理系統(tǒng)。該系統(tǒng)采用Quartz實(shí)現(xiàn)設(shè)備定時(shí)任務(wù)的調(diào)度,采用Websocket 實(shí)現(xiàn)設(shè)備遠(yuǎn)程控制和實(shí)時(shí)數(shù)據(jù)的傳輸,采用ActiveMQ 實(shí)現(xiàn)本地應(yīng)用間的異步通信。另外,本系統(tǒng)主要以React 作為Web 前端開(kāi)發(fā)框架,后臺(tái)部分主要使用Django 框架進(jìn)行搭建,使用MySQL 和InfluxDB 數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)持久化,使用Qt框架進(jìn)行人機(jī)交互界面的開(kāi)發(fā),實(shí)現(xiàn)了設(shè)備定時(shí)控制、水質(zhì)數(shù)據(jù)實(shí)時(shí)監(jiān)測(cè)、水質(zhì)數(shù)據(jù)圖表化、水質(zhì)異常警告等功能。測(cè)試與應(yīng)用結(jié)果表明,反饋效果較好。

        1 需求分析

        1.1 核心需求分析

        通過(guò)與企業(yè)管理人員和工人代表的交流討論,以及在企業(yè)生產(chǎn)實(shí)地進(jìn)行走訪調(diào)研后,將企業(yè)訴求總結(jié)為水質(zhì)監(jiān)測(cè)、設(shè)備控制和設(shè)備監(jiān)控三大核心需求,具體需求詳情如圖1所示。

        圖1 用例圖

        1.2 其他需求分析

        為了降低企業(yè)及企業(yè)下屬客戶(hù)的管理成本,提高用戶(hù)在使用本系統(tǒng)過(guò)程中的可靠性和安全性,將管理和安全需求總結(jié)為:固定資產(chǎn)管理、賬戶(hù)管理和權(quán)限配置三個(gè)部分,需求說(shuō)明如表1所示。

        表1 管理和安全需求說(shuō)明

        2 系統(tǒng)模塊設(shè)計(jì)

        根據(jù)前述六大需求,筆者將系統(tǒng)分為運(yùn)維、基本信息、固定資產(chǎn)、賬戶(hù)與權(quán)限四大模塊進(jìn)行模塊化設(shè)計(jì)。下面,針對(duì)于這四大模塊進(jìn)行介紹。

        2.1 運(yùn)維模塊

        運(yùn)維模塊主要由設(shè)備監(jiān)控、設(shè)備控制、設(shè)備維護(hù)以及水質(zhì)監(jiān)測(cè)四大子模塊組成,如圖2所示。

        圖2 運(yùn)維模塊圖

        如圖3 所示,區(qū)別于之前工人需要去設(shè)備上挨個(gè)讀取水質(zhì)數(shù)據(jù),用戶(hù)在設(shè)備詳情頁(yè)面就可以輕松讀取到當(dāng)前的實(shí)時(shí)水質(zhì)數(shù)據(jù)。通過(guò)選擇設(shè)備上已配置的傳感器,就可以將所選時(shí)間段內(nèi)的傳感器數(shù)據(jù)以圖表的形式在頁(yè)面上顯示,也可以將所選時(shí)段的數(shù)據(jù)以Excel文件的形式下載到本地。另外,當(dāng)水質(zhì)數(shù)據(jù)超過(guò)閾值時(shí),系統(tǒng)會(huì)以水質(zhì)警告的方式在頁(yè)面和設(shè)備上對(duì)用戶(hù)給予提醒。

        圖3 設(shè)備詳情頁(yè)面

        設(shè)備控制模塊是本系統(tǒng)的重要子模塊之一,它主要包含設(shè)備遠(yuǎn)程控制和設(shè)備操作日志查看兩大功能。用戶(hù)在進(jìn)入設(shè)備詳情頁(yè)面后,可以在頁(yè)面上遠(yuǎn)程控制設(shè)備,也可以配置定時(shí)任務(wù),實(shí)現(xiàn)設(shè)備的自動(dòng)化運(yùn)行。另外,通過(guò)頁(yè)面上的設(shè)備使用日志選項(xiàng),設(shè)備負(fù)責(zé)人可以清楚地看到設(shè)備操作歷史和配置人,方便檢查工作執(zhí)行情況,以及意外情況下的責(zé)任追查。

        2.2 基本信息模塊

        基本信息模塊主要由客戶(hù)信息和設(shè)備信息兩大子模塊組成??蛻?hù)信息模塊主要用于對(duì)購(gòu)買(mǎi)或租用企業(yè)設(shè)備的客戶(hù)信息進(jìn)行維護(hù),企業(yè)可以在基本信息模塊下的客戶(hù)信息頁(yè)面對(duì)客戶(hù)信息進(jìn)行維護(hù)。設(shè)備信息模塊主要用于對(duì)企業(yè)設(shè)備的管理,主要包含設(shè)備信息查看、設(shè)備調(diào)撥和設(shè)備報(bào)廢等功能。

        2.3 固定資產(chǎn)模塊

        固定資產(chǎn)模塊主要用于對(duì)企業(yè)設(shè)備的配置、調(diào)撥及報(bào)廢流程進(jìn)行跟蹤與記錄,能夠讓企業(yè)對(duì)其所擁有的設(shè)備資產(chǎn)現(xiàn)狀有直觀的了解。用戶(hù)可以在頁(yè)面?zhèn)冗厵诘墓潭ㄙY產(chǎn)模塊下選擇查看設(shè)備的配置、調(diào)撥和報(bào)廢記錄。

        2.4 賬戶(hù)與權(quán)限模塊

        賬戶(hù)與權(quán)限模塊主要分為賬戶(hù)管理和角色權(quán)限兩個(gè)子模塊。賬戶(hù)管理模塊主要包含賬戶(hù)創(chuàng)建、賬戶(hù)信息維護(hù)以及賬戶(hù)權(quán)限配置三大功能。系統(tǒng)管理員可以在賬戶(hù)管理頁(yè)面為不同職位的員工選擇對(duì)應(yīng)的角色并創(chuàng)建對(duì)應(yīng)的賬號(hào),也可以為已有賬號(hào)進(jìn)行信息更新和角色更換,實(shí)現(xiàn)了賬號(hào)權(quán)限可配置。角色權(quán)限模塊主要服務(wù)于企業(yè)管理員,管理員可以通過(guò)該模塊創(chuàng)建不同的角色,并給不同的角色配置不同的權(quán)限。

        3 軟件系統(tǒng)功能實(shí)現(xiàn)

        3.1 網(wǎng)頁(yè)前端實(shí)現(xiàn)

        系統(tǒng)的網(wǎng)頁(yè)前端部分主要使用React 框架進(jìn)行搭建,React 框架通過(guò)虛擬DOM 技術(shù)的使用,減少與DOM之間的交互,具有速度快、性能好等優(yōu)點(diǎn)。同時(shí),虛擬DOM 技術(shù)能夠有效解決跨瀏覽兼容問(wèn)題,開(kāi)發(fā)人員在開(kāi)發(fā)過(guò)程中可以使用模塊化的UI 組件來(lái)提高代碼的復(fù)用率,并使程序具有較好的可維護(hù)性。

        3.2 后端實(shí)現(xiàn)

        本系統(tǒng)后臺(tái)部分使用Django 框架進(jìn)行搭建,Django 框架是一款基于Python 語(yǔ)言編寫(xiě),使用MTV架構(gòu)的開(kāi)源Web 應(yīng)用框架。在MTV 架構(gòu)中,M 代表模型層,負(fù)責(zé)處理業(yè)務(wù)對(duì)象和數(shù)據(jù)庫(kù)表之間的映射關(guān)系,T 代表模板層,主要負(fù)責(zé)將頁(yè)面展示給用戶(hù);V 代表視圖層,是模型層與模板層之間的橋梁。

        3.3 水質(zhì)數(shù)據(jù)監(jiān)測(cè)與警報(bào)

        與之前水質(zhì)監(jiān)測(cè)員需要到現(xiàn)場(chǎng)進(jìn)行數(shù)據(jù)采集不同,用戶(hù)使用本系統(tǒng)可以直觀地在頁(yè)面上獲取實(shí)時(shí)的水質(zhì)數(shù)據(jù)。傳感器在測(cè)得水質(zhì)數(shù)據(jù)后,設(shè)備端將實(shí)時(shí)數(shù)據(jù)通過(guò)Websocket 發(fā)送至服務(wù)器,以此實(shí)現(xiàn)水質(zhì)數(shù)據(jù)的實(shí)時(shí)監(jiān)測(cè)。為了防止Websocket 連接中斷,在相應(yīng)的程序中加入心跳機(jī)制,將傳感器所測(cè)得的數(shù)據(jù)以心跳包的形式發(fā)送給服務(wù)器,這樣即實(shí)現(xiàn)了水質(zhì)數(shù)據(jù)實(shí)時(shí)監(jiān)測(cè)的功能,也防止了因連接中斷而產(chǎn)生系統(tǒng)問(wèn)題。另外,當(dāng)傳感器檢測(cè)到水質(zhì)異常時(shí),設(shè)備端會(huì)發(fā)送水質(zhì)異常信息至服務(wù)器,用戶(hù)在網(wǎng)頁(yè)端和設(shè)備人機(jī)交互界面上就能看到系統(tǒng)所發(fā)出的警報(bào)信息,提醒用戶(hù)及時(shí)處理。

        3.4 水質(zhì)數(shù)據(jù)圖表化

        用戶(hù)在設(shè)備詳情頁(yè)面可以通過(guò)選擇設(shè)備上配置的不同傳感器查看所選時(shí)間范圍內(nèi)水質(zhì)數(shù)據(jù)圖表,也可以通過(guò)鼠標(biāo)點(diǎn)擊獲取圖標(biāo)上任一時(shí)間點(diǎn)的數(shù)據(jù)信息。該功能使用戶(hù)可以便捷地查看當(dāng)前水質(zhì)的變化趨勢(shì),及時(shí)進(jìn)行加藥防止水質(zhì)出現(xiàn)異常。在本系統(tǒng)中,主要使用InfluxDB數(shù)據(jù)庫(kù)進(jìn)行水質(zhì)數(shù)據(jù)的存儲(chǔ)。InfluxDB作為一款被廣泛使用的高性能時(shí)序型數(shù)據(jù)庫(kù),因其具有高性能的寫(xiě)入、沒(méi)有其他依賴(lài)、查詢(xún)效率高、能自動(dòng)處理過(guò)期數(shù)據(jù)等優(yōu)點(diǎn),常被用于涉及大量時(shí)間戳數(shù)據(jù)的后端存儲(chǔ)。

        3.5 定時(shí)任務(wù)配置

        通過(guò)設(shè)備端的人機(jī)交互界面或是網(wǎng)頁(yè)端頁(yè)面,用戶(hù)只需要登錄具有權(quán)限的賬號(hào)并確定設(shè)備處于正確的運(yùn)行模式,就可以非常便捷地完成定時(shí)任務(wù)的創(chuàng)建,其流程如圖4 所示。在定時(shí)任務(wù)配置中,使用了ActiveMQ 中間件實(shí)現(xiàn)了設(shè)備端應(yīng)用與本地Java 服務(wù)之間的異步通信。ActiveMQ 是Apache 開(kāi)發(fā)的一款消息中間件,是JMS 規(guī)范的具體實(shí)現(xiàn),具有適應(yīng)性強(qiáng)、速度快、支持多種語(yǔ)言編寫(xiě)等諸多優(yōu)點(diǎn)。本系統(tǒng)中,使用了點(diǎn)對(duì)點(diǎn)的消息模式,通過(guò)在不同客戶(hù)端建立隊(duì)列,實(shí)現(xiàn)了Java 客戶(hù)端與C++設(shè)備端之間的異步消息通信。同時(shí),未被消費(fèi)者接收到的消息會(huì)存儲(chǔ)于ActiveMQ 服務(wù)器之中,等待對(duì)應(yīng)的消費(fèi)者上線接收,解決了異常情況下的消息丟失問(wèn)題。

        圖4 定時(shí)任務(wù)創(chuàng)建流程

        3.6 定時(shí)任務(wù)調(diào)度

        為了實(shí)現(xiàn)設(shè)備定時(shí)任務(wù)調(diào)度,設(shè)備開(kāi)機(jī)時(shí)會(huì)自動(dòng)運(yùn)行集成了Quartz 框架以及ActiveMQ 中間件的本地Java 服務(wù)。Quartz 是一款由Java 語(yǔ)言編寫(xiě)的開(kāi)源任務(wù)框架,其框架的主要核心分為調(diào)度器(Scheduler)、任務(wù)(Job)和觸發(fā)器(Trigger)三大核心組件。在任務(wù)注冊(cè)過(guò)程中,首先會(huì)創(chuàng)建觸發(fā)器對(duì)象Trigger。之后根據(jù)實(shí)際需求,選擇相應(yīng)的任務(wù)類(lèi)創(chuàng)建Job 對(duì)象并為T(mén)rigger 對(duì)象和Job 對(duì)象設(shè)置相關(guān)屬性,最后通過(guò)調(diào)度器Scheduler完成任務(wù)注冊(cè)流程。在任務(wù)執(zhí)行流程中,一但到達(dá)預(yù)先設(shè)定的時(shí)間,調(diào)度器就會(huì)調(diào)用觸發(fā)器,觸發(fā)器會(huì)調(diào)用任務(wù)注冊(cè)的Job對(duì)象,并自動(dòng)執(zhí)行Job對(duì)象中的相應(yīng)方法,實(shí)現(xiàn)任務(wù)執(zhí)行自動(dòng)化。

        4 嵌入式硬件系統(tǒng)設(shè)計(jì)

        4.1 系統(tǒng)總體設(shè)計(jì)

        智慧循環(huán)水處理硬件系統(tǒng)主要模塊包括:RK3288開(kāi)發(fā)板,傳感器模塊,繼電器模塊,上位機(jī)監(jiān)測(cè)控制模塊等。RK3288 開(kāi)發(fā)板是嵌入式系統(tǒng)的關(guān)鍵,主要使用Linux+Qt 來(lái)完成主要功能的開(kāi)發(fā)。本系統(tǒng)使用Qt上位機(jī)進(jìn)行人機(jī)交互界面設(shè)計(jì),通過(guò)串口與傳感器進(jìn)行通信,實(shí)現(xiàn)數(shù)據(jù)的采集,并將采集的數(shù)據(jù)保存到數(shù)據(jù)庫(kù),進(jìn)行部分?jǐn)?shù)據(jù)的展示以及完成相應(yīng)的泵操作。傳感器模塊主要通過(guò)RS485 串口與上位機(jī)進(jìn)行通訊。另外,為了保證測(cè)量的準(zhǔn)確性,需要通過(guò)標(biāo)定來(lái)對(duì)傳感器進(jìn)行校正。為了實(shí)現(xiàn)泵的控制,因此采用了繼電器模塊,通過(guò)多路的繼電器對(duì)多個(gè)泵進(jìn)行控制,通過(guò)發(fā)送指令來(lái)控制繼電器的開(kāi)閉來(lái)實(shí)現(xiàn)不同泵的開(kāi)關(guān)。上位機(jī)監(jiān)控頁(yè)面可以顯示實(shí)時(shí)的數(shù)據(jù),每隔一段時(shí)間對(duì)獲取的實(shí)時(shí)數(shù)據(jù)進(jìn)行保存,并且用曲線來(lái)顯示水質(zhì)數(shù)據(jù)的變化趨勢(shì)。

        4.2 硬件電路設(shè)計(jì)

        在本系統(tǒng)中,使用了很多的用電設(shè)備,而且不同設(shè)備所使用的電源有所差異,因此配備了多個(gè)開(kāi)關(guān)電源,此外泵的接線需要形成一個(gè)完整的回路。其實(shí)際電路連接如圖5所示。

        圖5 實(shí)際電路連接

        4.3 人機(jī)交互界面設(shè)計(jì)

        本系統(tǒng)需要實(shí)現(xiàn)較好的人機(jī)交互,支持觸控等操作。在Qt中提供了強(qiáng)大的信號(hào)和槽,用來(lái)實(shí)現(xiàn)信息之間的交互,本系統(tǒng)使用了Qt Widget 的編程方式來(lái)實(shí)現(xiàn)所有的功能,使用Qt 的版本為5.9.2。因?yàn)樾枰缙脚_(tái)也就是在Linux 下編寫(xiě)代碼,最后運(yùn)行的平臺(tái)為ARM Linux。由于RK3288 上處理器各方面參數(shù)都不如本地參數(shù)快,編譯速度很慢,因此選擇在本地使用交叉編譯工具鏈進(jìn)行編譯,然后移植到RK3288,提高了移植的速度,減少了不必要的時(shí)間等待。

        4.4 人機(jī)交互界面展示與功能介紹

        本系統(tǒng)設(shè)計(jì)的主界面如圖6所示。在左邊顯示了整個(gè)需要監(jiān)測(cè)的區(qū)域,有酸堿度、濁度、ORP、電導(dǎo)率、腐蝕率、溫度。右邊主要是泵的管理模塊,可以實(shí)時(shí)查看每個(gè)泵的狀態(tài)并手動(dòng)切換泵的運(yùn)行模式。此外,右下角的液位計(jì)模塊還可以實(shí)時(shí)顯示藥液余量,判斷是否需要補(bǔ)充。

        圖6 主頁(yè)面

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

        針對(duì)傳統(tǒng)水處理企業(yè)管理成本高、工作效率低等問(wèn)題,基于嵌入式和Web 技術(shù)開(kāi)發(fā)設(shè)計(jì)了具有運(yùn)維模塊、固定資產(chǎn)模塊、基本信息模塊和賬戶(hù)與權(quán)限模塊四大功能模塊的智慧循環(huán)水處理系統(tǒng),實(shí)現(xiàn)了實(shí)時(shí)水質(zhì)監(jiān)測(cè)、異常水質(zhì)警報(bào)、設(shè)備自動(dòng)控制等功能。整體系統(tǒng)部署上線后運(yùn)行穩(wěn)定,達(dá)到了預(yù)期目標(biāo),滿(mǎn)足了水處理企業(yè)的基本需求,推進(jìn)了企業(yè)的數(shù)字化。下一步考慮在設(shè)備數(shù)量較多的情況下,通過(guò)引入快速排序算法,加快設(shè)備對(duì)象的搜索速度,進(jìn)一步完善本系統(tǒng)功能。

        猜你喜歡
        頁(yè)面水質(zhì)傳感器
        大狗熊在睡覺(jué)
        水質(zhì)抽檢豈容造假
        環(huán)境(2023年5期)2023-06-30 01:20:01
        刷新生活的頁(yè)面
        康奈爾大學(xué)制造出可拉伸傳感器
        簡(jiǎn)述傳感器在物聯(lián)網(wǎng)中的應(yīng)用
        電子制作(2019年22期)2020-01-14 03:16:52
        “傳感器新聞”會(huì)帶來(lái)什么
        一月冬棚養(yǎng)蝦常見(jiàn)水質(zhì)渾濁,要如何解決?這9大原因及處理方法你要知曉
        跟蹤導(dǎo)練(三)2
        水質(zhì)總磷測(cè)定存在的問(wèn)題初探
        河南科技(2014年23期)2014-02-27 14:19:07
        水質(zhì)總氮測(cè)定方法改進(jìn)探究
        河南科技(2014年18期)2014-02-27 14:14:54
        亚洲中文字幕无线乱码va| 日本50岁丰满熟妇xxxx| 欧美喷潮久久久xxxxx| 老熟女一区二区免费| 丝袜美腿亚洲综合一区| 中文字幕av中文字无码亚| 国产国语熟妇视频在线观看| 日本免费一区二区三区在线看| 精品国产污黄网站在线观看 | 亚洲国产精品18久久久久久| 国产综合久久久久| 欧美人与禽交zozo| 熟女不卡精品久久av| 亚洲小说区图片区色综合网| 中文人妻av久久人妻18| 久久精品国产亚洲av大全相关| 亚洲精品成人一区二区三区| 在线播放五十路熟妇| 在教室伦流澡到高潮h麻豆| 热re99久久精品国产66热6| 草逼视频污的网站免费| 亚洲熟妇自偷自拍另欧美| 国产乱子伦露脸在线| 日本女优中文字幕四季视频网站| 国产精品黑丝美女啪啪啪| 18分钟处破好疼哭视频在线观看| 99久久久无码国产精品动漫| 国产在线观看黄片视频免费| 日韩av高清在线观看| 亚洲av成本人无码网站| 日韩精品极品视频在线观看蜜桃 | 一二三区亚洲av偷拍| 日韩欧美人妻一区二区三区| 91精品国产福利尤物免费| 亚洲国产一区二区,毛片| 少妇做爰免费视频了| 全免费a级毛片免费看视频| 久久国产精品av在线观看| 久久久久高潮综合影院| 在线va免费看成| 亚洲综合网一区二区三区|