吳鵬 汪善盛
摘 ?要: 擬設(shè)計(jì)一款水質(zhì)監(jiān)測(cè)系統(tǒng),用于對(duì)水體多個(gè)參數(shù)進(jìn)行實(shí)時(shí)監(jiān)測(cè)。系統(tǒng)采用STM32控制器為核處理器,通過(guò)控制ADS1256分別對(duì)水體溫度、電導(dǎo)率和pH值三個(gè)參量進(jìn)行數(shù)據(jù)采集,并設(shè)有過(guò)壓量程自動(dòng)轉(zhuǎn)化電路,提高數(shù)據(jù)采集的穩(wěn)定性和可靠性。水體參量測(cè)量數(shù)據(jù)可存儲(chǔ)于本地鐵電存儲(chǔ)器中,并同時(shí)通過(guò)串口實(shí)時(shí)傳輸?shù)缴衔粰C(jī),通過(guò)LabVIEW進(jìn)行串口數(shù)據(jù)接收和顯示,整個(gè)系統(tǒng)工作穩(wěn)定可靠,可直觀實(shí)時(shí)顯示當(dāng)前測(cè)量參數(shù)的曲線變化及實(shí)時(shí)數(shù)值大小,有較強(qiáng)的人機(jī)交互功能,能應(yīng)用于水質(zhì)監(jiān)測(cè)等環(huán)境監(jiān)測(cè)領(lǐng)域。
關(guān)鍵詞: STM32控制器; 電路設(shè)計(jì); 軟件設(shè)計(jì); 性能測(cè)試; LabVIEW; 水質(zhì)監(jiān)測(cè)
中圖分類號(hào): TN98?34 ? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼: A ? ? ? ? ? ? ? ? ? ? ? ? ? ?文章編號(hào): 1004?373X(2019)13?0122?05
Study on water quality monitoring system
WU Peng1, 2, 3, WANG Shansheng3
(1. Key Laboratory of Earthquake Geodesy, Institute of Seismology, China Earthquake Administration, Wuhan 430071, China;
2. Hubei Subsurface Multi?scale Imaging Key Laboratory, Institute of Geophysics and Geomatics, China University of Geosciences, Wuhan 430074, China;
3. Wuhan Institute of Seismologic Instrument Co., Ltd., Xianning 437000, China)
Abstract: A water quality monitoring system is designed to monitor several parameters in real time. The STM32 controller is used as the core processor of the system. The data of water temperature, conductivity and PH value is collected by controlling ADS1256, and the automatic conversion circuit of overvoltage range is set to improve the stability and reliability of data acquisition. The measured data of water body parameters can be stored in the local electric storage, transmitted to the upper computer through serial port in real time, and received and displayed through LabVIEW. The whole system works stably and reliably. The curve changes of current measurement parameters and real?time numerical value can be displayed directly and in real time. The system has strong man?machine interaction function, and can be used in the field of environmental monitoring such as water quality monitoring.
Keywords: STM32 controller; circuit design; software design; performance test; LabVIEW; water quality monitoring
0 ?引 ?言
隨著我國(guó)工農(nóng)業(yè)的迅速發(fā)展,人們生活水平的提高,對(duì)水質(zhì)量的要求也越來(lái)越高。但因水土流失、水源污染等因素的影響,地表水成分逐漸趨于復(fù)雜,有機(jī)成分增多,飲用水處理難度增大。由于水體受到污染,導(dǎo)致水體富營(yíng)養(yǎng)化,對(duì)日常飲用水帶來(lái)了極大的危害,嚴(yán)重影響著人群健康水平。因此,水質(zhì)監(jiān)測(cè)顯得尤為重要。
水質(zhì)監(jiān)測(cè)可以監(jiān)視和測(cè)定水體中污染物的種類以及各類污染物的濃度和變化趨勢(shì),其監(jiān)測(cè)范圍十分廣泛,包括未被污染和已受污染的天然水(江、河、湖、海和地下水)及各種各樣的工業(yè)排水等。目前,主要反映水質(zhì)狀況的綜合指標(biāo)有溫度、pH值、懸浮物、溶解氧、電導(dǎo)率等。水質(zhì)監(jiān)測(cè)可以為環(huán)境管理提供數(shù)據(jù)和分析資料,可以為評(píng)價(jià)江河和海洋水質(zhì)狀況提供依據(jù)[1]。
1 ?系統(tǒng)方案設(shè)計(jì)
水質(zhì)監(jiān)測(cè)系統(tǒng)方案框圖如圖1所示,系統(tǒng)主要分為信號(hào)調(diào)理模塊和數(shù)據(jù)采集通信部分。
整個(gè)系統(tǒng)的工作原理為:STM32控制器通過(guò)I2C接口控制ADS1256進(jìn)行電導(dǎo)率、溫度和pH值的測(cè)量,與此同時(shí)會(huì)通過(guò)自動(dòng)量程轉(zhuǎn)換電路對(duì)電導(dǎo)率測(cè)量值進(jìn)行自動(dòng)量程判斷和切換,監(jiān)測(cè)數(shù)據(jù)會(huì)依次存儲(chǔ)于鐵電存儲(chǔ)器中[2],STM32會(huì)通過(guò)網(wǎng)絡(luò)模塊將實(shí)時(shí)監(jiān)測(cè)數(shù)據(jù)通過(guò)網(wǎng)絡(luò)傳輸?shù)綌?shù)據(jù)終端服務(wù)器,用戶可通過(guò)客戶端Web瀏覽器進(jìn)行參數(shù)查詢及數(shù)值下載。
2 ?硬件電路設(shè)計(jì)
2.1 ?電導(dǎo)率測(cè)量及自動(dòng)量程轉(zhuǎn)化電路
一般來(lái)說(shuō),電阻的測(cè)量方法都可以采用電導(dǎo)率測(cè)量來(lái)實(shí)現(xiàn)。通過(guò)直接測(cè)量法能簡(jiǎn)單直接進(jìn)行電導(dǎo)率的測(cè)量[3],其測(cè)量電路如圖2所示。
采用高精度電壓基準(zhǔn)芯片ADR4533作為電導(dǎo)液池的激勵(lì)電壓,分別通過(guò)高精度運(yùn)放OPA2211來(lái)實(shí)現(xiàn)電壓分壓,產(chǎn)生1 V的激勵(lì)電壓。
如圖3所示,測(cè)量電路的放大倍數(shù)[Av=-RfRx],因此,為了滿足AD1256的測(cè)量范圍,將整個(gè)測(cè)量電路的測(cè)量電壓最大值控制在2 V以內(nèi)才能保證所測(cè)結(jié)果的有效性,由于設(shè)定激勵(lì)電壓為1 V,根據(jù)放大倍數(shù)[Av]選擇為1屬于合理值。
根據(jù)經(jīng)驗(yàn),從理論純水(0.548 ?S/cm)到電導(dǎo)率很大的海水(30 000 ?S/cm),對(duì)應(yīng)的測(cè)量電極的電阻變化范圍從Ω級(jí)到MΩ級(jí)。因此,擬將整個(gè)電路放大倍數(shù)進(jìn)行檔位劃分,分為四個(gè)檔位,電路如圖4所示。通過(guò)選用具有三組單刀雙擲的模擬開關(guān)來(lái)實(shí)現(xiàn)四個(gè)檔位[Rf]切換的功能。依據(jù)CD4052的增值表,當(dāng)CTR0,CTR1分別為0,0時(shí),[X]與[X0]導(dǎo)通,電阻[R1]接入回路;當(dāng)CTR0,CTR1分別為1,0時(shí),[X]與[X1]導(dǎo)通,電阻[R2]接入回路;當(dāng)CTR0,CTR1分別為0,1時(shí),[X]與[X2]導(dǎo)通,電阻[R3]接入回路;當(dāng)CTR0,CTR1分別為1,1時(shí),[X]與[X3]導(dǎo)通,電阻[R4]接入回路。其中,依次選擇[R1],[R2],[R3],[R4](其分別用于等效為[Rf])分別為10,100,1 000,10 000的[110 000]精密電阻。分別用于對(duì)應(yīng)所測(cè)溶液電阻檔位:第一檔(10~100),第二檔(100~1 000),第三檔(1 000~10 000),第四檔(大于10 000)。
2.2 ?溫度測(cè)量模塊
本文采用PT100鉑電阻進(jìn)行溫度測(cè)量,通過(guò)四線測(cè)量法來(lái)實(shí)現(xiàn)[5]。具體測(cè)量電路如圖5所示,選擇MAX6126作為電壓基準(zhǔn)源,提供[Vref=]2.5 V的基準(zhǔn)電壓,其精度可達(dá)正負(fù)0.02%,溫度系數(shù)為3 ppm/℃,1.3 μVp?p的超低噪聲。
2.3 ?pH值測(cè)量模塊
工業(yè)型pH計(jì)主要要求有較高的穩(wěn)定性、精度適中、專用性強(qiáng),一般要求實(shí)現(xiàn)自動(dòng)溫度補(bǔ)償,并且儀器應(yīng)能輸出標(biāo)準(zhǔn)電壓或電流信號(hào)。pH值的測(cè)定采用電位測(cè)定法,輸出電壓[E]是pH的函數(shù):
系統(tǒng)選用的BNT7120型pH傳感器,其測(cè)量范圍為0~14,溫度測(cè)量范圍為0~80 ℃,零電位pH=7.00,精度可達(dá)0.1。測(cè)量電路如圖6所示,采用儀表運(yùn)放IN128來(lái)實(shí)現(xiàn),設(shè)置放大倍數(shù)為[Av=1+50KR3=3],通過(guò)滑動(dòng)變阻器調(diào)整其基準(zhǔn)零位和輸入負(fù)端零位。在上述計(jì)算公式中,溫度值[T]則通過(guò)系統(tǒng)溫度測(cè)量電路來(lái)提供。
2.4 ?數(shù)據(jù)采集
系統(tǒng)控制器選擇STM32F101RBT6來(lái)實(shí)現(xiàn),分別用于數(shù)據(jù)采集電路和數(shù)據(jù)存儲(chǔ)電路。其中:采用24位A/D采集芯片ADS1256進(jìn)行實(shí)時(shí)多路信號(hào)數(shù)據(jù)采集;選擇MAX6126作為基準(zhǔn)電壓芯片,為A/D提供2.5 V的基準(zhǔn)電壓;同時(shí),選擇3.3 V供電的鐵電存儲(chǔ)器FM25L256作為數(shù)據(jù)存儲(chǔ),最多可實(shí)現(xiàn)存儲(chǔ)256 KB的數(shù)據(jù)量,按照每分鐘可分別存儲(chǔ)一個(gè)溫度、pH值和電導(dǎo)率的數(shù)據(jù)來(lái)計(jì)算,每個(gè)數(shù)據(jù)占有8 B,則1 h數(shù)據(jù)量可達(dá)1 440 B,因此,該容量足夠?qū)崿F(xiàn)3天的數(shù)據(jù)備份應(yīng)用[9]。
3 ?系統(tǒng)上位機(jī)軟件設(shè)計(jì)
系統(tǒng)上位機(jī)軟件采用圖形化編程語(yǔ)言LabVIEW實(shí)現(xiàn),其具有開發(fā)周期短、移植性強(qiáng)和穩(wěn)定性高等特點(diǎn),根據(jù)需要可調(diào)取相應(yīng)的功能VI子模塊進(jìn)行編程,省去了底層開發(fā)周期和繁冗的編程過(guò)程。上位機(jī)軟件的核心部分是與下位機(jī)進(jìn)行串口通信程序,通過(guò)調(diào)用VISA串口VI讀取下位機(jī)測(cè)量數(shù)據(jù),并進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換[10]。
LabVIEW的串口程序采用狀態(tài)機(jī)來(lái)實(shí)現(xiàn),狀態(tài)機(jī)的狀態(tài)共分為四種:Initialize(默認(rèn))狀態(tài)、receive狀態(tài)、sum狀態(tài)和stop狀態(tài)。
如圖7所示,在while循環(huán)結(jié)構(gòu)中設(shè)置2個(gè)移位寄存器,分別用于狀態(tài)機(jī)的不同狀態(tài)切換和進(jìn)行接收數(shù)據(jù)緩存。在Initialize(默認(rèn))狀態(tài),對(duì)數(shù)據(jù)緩存移位寄存器進(jìn)行清零初始化操作,并通過(guò)讀取串口緩沖區(qū)的屬性節(jié)點(diǎn)判斷其是否為空。如果是空,則返回Initialize(默認(rèn))狀態(tài)繼續(xù)等待;如果不為空,則進(jìn)入receive狀態(tài)進(jìn)行數(shù)據(jù)接收。
如圖8所示,在receive狀態(tài),通過(guò)調(diào)用VISA的子模塊VI對(duì)串口緩沖區(qū)的屬性節(jié)點(diǎn)進(jìn)行字節(jié)讀取,每次讀取一個(gè)字節(jié)的數(shù)據(jù),讀取的字節(jié)數(shù)據(jù)以字符串的數(shù)據(jù)格式存儲(chǔ)在移位寄存器中,結(jié)束符字節(jié)為十六進(jìn)制AA。判斷寄存器的數(shù)據(jù)個(gè)數(shù)是否大于等于3個(gè)字節(jié),是,則進(jìn)入sum狀態(tài);否,則對(duì)當(dāng)前所接收到的字節(jié)與AA進(jìn)行比較,若當(dāng)前接收的數(shù)據(jù)與AA相同,則跳轉(zhuǎn)到Initialize(默認(rèn))狀態(tài),若不同,則繼續(xù)進(jìn)行數(shù)據(jù)接收。
如圖9所示,在sum狀態(tài),通過(guò)數(shù)據(jù)轉(zhuǎn)換,將字符串類型的數(shù)據(jù)轉(zhuǎn)化為十進(jìn)制二維數(shù)組,并通過(guò)索引數(shù)組進(jìn)行字節(jié)從低位到高位依次讀取操作。當(dāng)該狀態(tài)完畢后,如圖10所示,狀態(tài)機(jī)進(jìn)入stop狀態(tài),至此,整個(gè)狀態(tài)機(jī)的一個(gè)循環(huán)動(dòng)作執(zhí)行完畢。
4 ?系統(tǒng)整機(jī)性能測(cè)試
4.1 ?溫度測(cè)試
采用恒溫水槽、高精度FLUKE溫度計(jì)分別進(jìn)行溫度準(zhǔn)確控制和標(biāo)定測(cè)試。溫度測(cè)量擬設(shè)置15 ℃,20 ℃,25 ℃,30 ℃,35 ℃,40 ℃,50 ℃等幾個(gè)點(diǎn)進(jìn)行標(biāo)定測(cè)試。調(diào)節(jié)室內(nèi)溫度控制在25 ℃左右,分別設(shè)定恒溫水槽控制溫度,并利用標(biāo)準(zhǔn)溫度計(jì)進(jìn)行比對(duì),以標(biāo)準(zhǔn)溫度計(jì)為準(zhǔn),精確讀數(shù)到1%。采取當(dāng)溫度穩(wěn)定到0.5 h,1 h和1.5 h分別進(jìn)行讀數(shù),如表1所示。
4.2 ?pH值測(cè)試
采用HI223A高精度實(shí)驗(yàn)室pH測(cè)定儀進(jìn)行標(biāo)定測(cè)試。采用醋酸和純堿配置溶液進(jìn)行結(jié)果測(cè)試,數(shù)據(jù)如表2所示。
4.3 ?電導(dǎo)率測(cè)試
電導(dǎo)率測(cè)試選擇含磷化肥作為實(shí)驗(yàn)對(duì)象,采用型號(hào)為DDB?303A的便攜式電導(dǎo)率儀作為標(biāo)定設(shè)備,通過(guò)每次截取定量的肥料溶解于準(zhǔn)備好的裝有純凈水的200 mL玻璃杯中,每次標(biāo)定比測(cè)完畢后,將再次增加之前設(shè)定量的肥料,一共測(cè)試4次,測(cè)試比對(duì)結(jié)果如表3所示。
5 ?結(jié) ?論
本文儀器采用STM32控制器與ADS1256進(jìn)行溫度、pH值和電導(dǎo)率的實(shí)時(shí)監(jiān)測(cè),通過(guò)串口與上位機(jī)LabVIEW進(jìn)行數(shù)據(jù)通信和顯示。經(jīng)過(guò)對(duì)比實(shí)驗(yàn),系統(tǒng)所測(cè)數(shù)據(jù)比較穩(wěn)定可靠,可應(yīng)用于水質(zhì)監(jiān)測(cè)等領(lǐng)域。
參考文獻(xiàn)
[1] 鄭才慶,支國(guó)強(qiáng),李田富,等.我國(guó)地下水污染現(xiàn)狀及對(duì)策措施分析[J].環(huán)境科學(xué)導(dǎo)刊,2018,37(6):49?52.
ZHENG Caiqing, ZHI Guoqiang, LI Tianfu, et al. Analysis of current situation and countermeasures of groundwater pollution in China [J]. Environmental science survey, 2018, 37(6): 49?52.
[2] 榮華,何培忠.采用MSP430的pH值與電導(dǎo)率一體化測(cè)量?jī)x設(shè)計(jì)[J].現(xiàn)代制造工程,2013(12):85?88.
RONG Hua, HE Peizhong. Design of a detector for pH value and conductivity based on MSP4430 [J].Modern manufacturing engineering, 2013(12): 85?88.
[3] 宋麗娟,祁欣.基于同步采樣方法的電導(dǎo)率測(cè)量系統(tǒng)設(shè)計(jì)[J].電子測(cè)量技術(shù),2017,40(3):35?39.
SONG Lijuan, QI Xin. Design of a conductivity measuring system based on the synchronous sampling method [J]. Electronic measurement technology, 2017, 40(3): 35?39.
[4] 楊衛(wèi)國(guó).水溶液電導(dǎo)率測(cè)量系統(tǒng)的研究[J].熱能動(dòng)力工程,2015,30(1):95?100.
YANG Weiguo. Study of a water solution electric conductivity measurement system [J]. Journal of engineering for thermal energy and power, 2015, 30(1): 95?100.
[5] 陳平平,楊雷,張志堅(jiān).基于鉑電阻的溫度測(cè)量?jī)x的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)測(cè)量與控制,2015,23(3):1041?1044.
CHEN Pingping, YANG Lei, ZHANG Zhijian. Design and implementation of temperature measuring instrument based on PT100 [J]. Computer measurement & control, 2015, 23(3): 1041?1044.
[6] 徐英,劉新峰,張濤,等.基于XTR110的高精度恒流源設(shè)計(jì)[J].化工自動(dòng)化及儀表,2015,42(1):71?74.
XU Ying, LIU Xinfeng, ZHANG Tao, et al. Designs of constant current source based on XTR110 [J]. Control and instruments in chemical industry, 2015, 42(1): 71?74.
[7] 紹偉恒,顧昂,隋俊杰.基于STM32的便攜式恒流源設(shè)計(jì)[J].自動(dòng)化與儀表,2015(12):29?32.
SHAO Weiheng, GU Ang, SUI Junjie. Design of STM32?based portable constant current source [J]. Automation & instrumentation, 2015(12): 29?32.
[8] 林關(guān)成.基于STC89C52單片機(jī)的pH值測(cè)量?jī)x設(shè)計(jì)[J].計(jì)算機(jī)與數(shù)字工程,2017,45(9):1874?1877.
LIN Guancheng. Design of PH measure instrument based on STC89C52 microcontrollers [J]. Computer & digital enginee?ring, 2017, 45(9): 1874?1877.
[9] 王磊,江小華.基于SPI總線的FRAM存儲(chǔ)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2013,36(4):52?54.
WANG Lei, JANG Xiaohua. Design of FRAM storage based on SPI [J]. Modern electronics technique, 2013, 36(4): 52?54.
[10] 馬敏,楊勝偉.基于LabVIEW的氣體監(jiān)測(cè)系統(tǒng)串口通訊設(shè)計(jì)[J].自動(dòng)化儀表,2016(11):43?46.
MA Min, YANG Shengwei. Design of multi gas monitoring system based on LabVIEW and serial port [J]. Automation & instrumentation, 2016(11): 43?46.