沈晨航 周俊
摘要:本文針對游泳館的泳池,設計開發(fā)了一種基于STM32單片機、ESP8266無線模塊和MQTT傳輸協(xié)議的實時水質(zhì)監(jiān)測系統(tǒng)。該方法構成簡單,系統(tǒng)成本較低且使用便捷,可對游泳池水質(zhì)進行實時監(jiān)測,并通過了模擬驗證實驗,證實了其可行性。
關鍵詞:STM32單片機;ESP8266;MQTT;水質(zhì)監(jiān)測
中圖分類號:TP391.4 文獻標識碼:A 文章編號:1007-9416(2020)05-0148-04
0引言
水常常應用在各個場合,是人類生產(chǎn)生活所必要的元素之一,人類在日常生活中幾乎不能離開水?,F(xiàn)如今夏天很多人喜歡去游泳館游泳,但是很多游泳館的水質(zhì)實在令人堪憂,隨著天氣越來越熱,越來越多人希望可以到游泳館游泳,同時在游泳池內(nèi)游泳的人數(shù)一旦增多,游泳池的水質(zhì)很容易被污染,從而影響游泳館用戶的體驗以及身體健康。特別是近年游泳館水質(zhì)尤為問題突出,多家游泳館因水質(zhì)不合格而被查處。因此,泳池應該時不時換水或者隨時監(jiān)測游泳館水質(zhì)來保證水質(zhì)安全。但是即使定期換水也不能隨時保證游泳館內(nèi)水質(zhì)處于一個健康的狀態(tài),并且由于人工檢測成本較高,檢測頻率低,不能及時發(fā)現(xiàn)水質(zhì)的污染問題。所以迫切需要應用現(xiàn)代電子技術和物聯(lián)網(wǎng)技術,研制開發(fā)一種實時有效的游泳館水質(zhì)監(jiān)測系統(tǒng),使監(jiān)測人員可以通過互聯(lián)網(wǎng)獲取游泳館水質(zhì)的相應參數(shù),從而節(jié)約游泳館成本,保證游泳池水質(zhì)安全,提高國內(nèi)游泳館的水質(zhì)水平。
縱觀國內(nèi)游泳池水質(zhì)監(jiān)測設備,目前市場上主要以全自動和便攜式的水質(zhì)監(jiān)測設備為主,但很少能夠買到價格低廉,并且可以通過物聯(lián)網(wǎng)連接手機移動端實現(xiàn)實時監(jiān)控的水質(zhì)監(jiān)測系統(tǒng)。基于此,本文設計開發(fā)了一種游泳館水質(zhì)監(jiān)測系統(tǒng),硬件部分以STM32F103C8T6單片機作為核心控制器,通過ESP8266 Wi-Fi SoC芯片和MQTT傳輸協(xié)議,自行設計android手機APP作為接收客戶端,來實現(xiàn)遠程水質(zhì)監(jiān)測。
1系統(tǒng)總體設計
游泳館水質(zhì)監(jiān)測系統(tǒng)以STM32f103c8T6為硬件核心,利用傳感器獲取游泳水質(zhì)相關參數(shù),通過ESP826 Wi-Fi SOC芯片以及MOTT傳輸協(xié)議將檢測數(shù)據(jù)實時同步到遠程服務器,并通過移動客戶端通知使用人員達到游泳池水質(zhì)實時監(jiān)測的作用。并且根據(jù)國內(nèi)最新的游泳池水質(zhì)標準CJ/T 244-2016((游泳池水質(zhì)標準》設定各項標準的報警閾值(以下稱為閾值),當安全指標超過閾值則通過軟件對使用人員進行報警。參考2016-2018年江蘇省江陰市游泳池水質(zhì)監(jiān)測分析,完整的七項快檢項目包括對水溫、pH值、渾濁度、大腸菌群、細菌總數(shù)、尿素、游離性余氯,本系統(tǒng)作為簡單低成本的監(jiān)測預警系統(tǒng),僅對其水溫,PH值,渾濁度三個指標進行實時監(jiān)控,其他參數(shù)檢測可另外添加。系統(tǒng)總體框圖如圖l所示。
2硬件組成及其工作原理
2.1硬件組成及選型
系統(tǒng)硬件部分主要由主控器、電源電路、信號收發(fā)模塊和傳感器四部分組成,系統(tǒng)硬件連接框圖如圖2N示。
本系統(tǒng)使用的主處理器為STM32F103C8T6單片機,是一款基于ARM Cortex M內(nèi)核架構的32位微處理器,擁有64KB閃存,20KB SRAM和37個I/O接口,可將I/O接口配置為數(shù)字信號輸入/輸出端口。單片機的主頻速度為72MHz,工作溫度在-40℃至85℃,需要供電電壓2V-3.6V,充分滿足了系統(tǒng)設計需求。
ESP8266 Wi-Fi SoC是一款低功耗、高集成度的WWi芯片,其工作溫度范圍在-40℃至125℃,性能穩(wěn)定價格低廉。本系統(tǒng)選用ESP-01型ESP8266模塊,可使用串口的無線AP(COM-AP)模式,串口的無線STATION(COM-STA)模式和串口的無線AP+STA(COM-AP&STA)模式,同時還具備一鍵配網(wǎng)(smartConfig)功能。
2.2電源電路模塊
在游泳館水質(zhì)監(jiān)測系統(tǒng)中,單片機與ESP8266模塊需要的供電電壓為3.3V,傳感器需要的供電電壓為4.0-5.0V,所以需要選用穩(wěn)定持續(xù)的供電系統(tǒng)來提供3.3V以及5V電壓的電壓源。系統(tǒng)最終采用TPS73XXQ系列的低壓差穩(wěn)壓器,其在10=100mA時的最大極低電壓差僅為35mV(TPS7350),符合系統(tǒng)要求。3.3V(TPS7330)與5.0V(TPS7350)組成的電源系統(tǒng)模塊原理圖如圖3所示。
2.3ESP8266工作模式及AT指令簡介
ESP8266具備COM-AP模式、COM-STATIOM模式和COM STA+AP模式,每個模式都有各自的功能和應用場合。其中串口的無線AP(COM AP)模式是將模塊作為熱點,使用其他的設備接入到ESP8266模塊,通過串口來實現(xiàn)信息交互。串口無線sTA(COM STA)模式則是將模塊作為客戶端,用于將模塊接人其他熱點來構成WiFi網(wǎng)絡。而串口無線AP+STA(COM AP&STA)模式則是既能將模塊作為熱點供其他設備接入,又可以接人到其他WWi網(wǎng)絡,是前兩種模式的整合。初始化時單片機通過串口通信的方式,使用AT指令進行對模塊的最初配置和發(fā)送命令的操作,部分AT指令如表1所示。
2.4WiFi傳輸與MQTT傳輸協(xié)議
MQTT是消息隊列遙測傳輸?shù)暮喎Q,英文全稱為MessageQueuing Telemetry Transport。是由IBM公司撰寫的適用于物聯(lián)網(wǎng)通信的傳輸協(xié)議。MQTT協(xié)議工作在TCP/IP協(xié)議族上,通過發(fā)布(Publish)/訂閱(Subscribe)的范式工作,是一種為了硬件性能低的遠程設備以及網(wǎng)絡狀態(tài)不良的情況下設計的消息協(xié)議Ⅲ。本系統(tǒng)通過硬件系統(tǒng)與路由器連接將信息傳輸至阿里云服務器,通過訂閱/發(fā)布功能實現(xiàn)手機遠程接收監(jiān)測消息的功能。
2.5游泳池參數(shù)獲取