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

基于STM32的水質監測系統研究

2022-08-06 02:16:32游曠吉吉董自鵬顧苗苗
江蘇科技信息 2022年17期
關鍵詞:水質測量系統

游曠吉吉,董自鵬,顧苗苗

(蘇州市職業大學 計算機工程學院,江蘇 蘇州 215104)

0 引言

水是生命的源泉,隨著經濟社會的快速發展和社會文明的進步,人類對水資源的重視程度越來越高。傳統的人工抽樣檢測水質既費時又費力,實現對水質的實時監測,無論是對保護水資源還是促進水產養殖都具有十分重要的意義[1]。

基于嵌入式的產品開發,市場廣泛、功能擴展性好[2]。本文基于STM32設計的水質監測系統,可實現對被監測水域的水溫和濁度自動實時監測并預警。

1 總體設計

本系統以正點原子戰艦STM32F1 V3開發板作為控制器[3],總體設計采用STM32F103ZET6作為主控芯片[4],選用DS18B20溫度模塊和TSW-30濁度模塊作為傳感器[5],通過引腳設定和必要的外部電路連接,分別測量監測水域的水溫和濁度,經過信號處理和A/D轉換,將測量得到的數值顯示在TFTLCD液晶屏上,當測量值超過設定的閾值時,蜂鳴器報警,提醒現場工作人員,如圖1所示。

圖1 總體設計

2 硬件選擇

2.1 主控芯片

本系統以STM32F103ZET6作為主控芯片,該芯片是意法半導體公司生產的一款32位Cortex-M3內核的處理器[6],具有64 kB SRAM,512 kB FLASH、最高72 MHz的工作頻率,共有112個通用IO口,是一款低功耗、高性能的芯片。該芯片已在工程上被廣泛使用,很適合本系統的嵌入式開發。

2.2 DS18B20傳感器

DS18B20是由DALLAS半導體公司推出的一款“一線總線”接口的溫度傳感器,具有體積小、抗干擾性強、與微處理器接口簡單的優點,測量溫度范圍-55~125 ℃,精度為±0.5 ℃,可在3.3~5.0 V的電壓范圍工作。使用時將DS18B20的平面部分朝內、曲面部分朝外,按照電源線、DQ線、接地線的次序從左到右插入開發板U6的1、2和3腳,測量結果即會以9~12位數字量方式串行傳送,不需要再外接外圍元件。

2.3 TSW-30濁度傳感器

濁度傳感器通過測量水中懸浮固體總量(TSS)的變化來測量水中懸浮顆粒物的光透過率和散射率,利用光來檢測懸浮顆粒物。傳感器默認采用模擬信號的輸出模式,濁度越高輸出值越低,根據參考資料,輸出的電壓值和濁度關系,如圖2所示。在使用時電源線接開發板的5 V引腳,接地線接開發板的GND引腳,OUT接開發板的PA1引腳即可讀取到內部ADC值,通過單片機的A/D轉換即可得到電壓值,進而得到當前水的濁度。

圖2 電壓與濁度關系

3 軟件編程

軟件部分使用C語言庫函數編寫,用MDK5軟件進行編譯,用FlyMcu軟件將編譯好的.hex文件下載到STM32中,查看運行效果。主要的函數模塊有DS18B20溫度模塊、濁度模塊和主函數模塊,程序控制流程,如圖3所示。

圖3 程序控制流程

3.1 DS18B20溫度模塊

DS18B20的典型溫度讀取過程為:復位→發SKIP ROM命令(0XCC)→發開始轉換命令(0X44)→延時→復位→發送SKIP ROM命令(0XCC)→發讀存儲器命令(0XBE)→連續讀出兩個字節數據(即溫度)→結束。轉化后得到的12位數據存儲在DS18B20的兩個8比特的RAM中,如圖4所示。二進制中的前面5位是符號位,如果測得的溫度大于0,這5位為0,只要將測到的數值乘以0.062 5即可得到實際溫度;如果溫度小于0,這5位為1,測得的數值需要取反加1再乘以0.062 5即可得到實際溫度。

圖4 DS18B20數據位表示

if(TH>7)

{

TH=~TH;

TL=~TL;

temp=0; //溫度為負

}else temp=1; //溫度為正

tem=TH; //獲得高八位

tem<<=8;

tem+=TL; //獲得低八位

tem=(float)tem*0.625; //轉換

if(temp)return tem; //返回溫度值

else return -tem;

代碼實現如上所示,先判定溫度的正負,如果為負,則將高低位的值都取反,反之則數據位保持不變動,再將測量得到的數值乘以0.625,將實際溫度擴大10倍,輸出時再分別除以10取整以及取余作為整數部分和小數部分,小數點前后的數據分開輸出,并精確到0.1 ℃。

3.2 TSW-30濁度模塊

在獲取ADC的值時,因為是個實時變化的量,可能誤差較大,因此采用一定時間內多次測量取平均值的方法,獲得adcx的值,提高精確度。代碼實現如下所示。

u16 Get_Adc_Average(u8 ch,u8 times)

{

u32 temp_val=0;

u8 t;

for(t=0;t

{

temp_val= temp_val +Get_Adc(ch);

delay_ms(5);

}

return temp_val/times;

}

adcx=Get_Adc_Average(ADC_Channel_1,10);//采樣10次

因為STM32的ADC是12位逐次逼近型的模擬數字轉換器,其值為0~4 095,定義一臨時變量temp,用于儲存測量得到的adcx值轉換為0~4.5 V的電壓值。當temp小于2.64時,直接輸出NTU的值3 000(表示水極度渾濁);當temp大于4.2時,直接輸出NTU的值0(表示水比較清澈);當temp介于2.64~4.20之間時,根據公式-1 120.4*temp*temp+5 742.3*temp-4 352.9,求得NTU的值。代碼實現如下所示。

temp=(float)adcx*(4.5/4096);

if(temp<2.64)

NTU=3000;

else if(temp>4.2)

NTU=0;

else

NTU=-1120.4*temp*temp+5742.3*temp-4352.9;

3.3 主函數模塊

主函數主要包括定義一定的變量,完成延時函數初始化、設置中斷優先級、串口初始化、LED端口初始化、蜂鳴器初始化、LCD顯示屏初始化、STM32內部ADC初始化、DS18B20初始化和中文字庫初始化等。

if(t%10==0) //每100ms讀取一次

{

temperature=DS18B20_Get_Temp();

if(temperature<0)

{

LCD_ShowChar(30+40,210,'-',16,0); //顯示負號

temperature=-temperature; //將負數轉為正數

}else

LCD_ShowChar(30+40,210,' ',16,0); //原負號的位置不顯示

LCD_ShowNum(30+40+8,210,temperature/10,2,16); //顯示整數部分

LCD_ShowNum(30+40+32,210,temperature%10,1,16); //顯示小數部分

}

delay_ms(10);

t++;

if(t==20)

{

t=0;

}

通過t的計數和延時,每100 ms獲取一次DS18B20測得的temperature并進行判定,如果小于0,就顯示“-”號并將值取反,否則就顯示空白,然后將temperature分別除以10取整以及取余作為整數部分和小數部分輸出在屏幕上。

4 系統測試

系統通電后,將傳感器放入水中,即可在TFTLCD液晶屏上正常顯示采集到的數據。分別選取一定程度的渾濁水和清澈水,模擬測試圖,如圖5和6所示:渾濁水測試結果NTU的值為2 407,水溫為20.1 ℃;清澈水測試結果NTU的值為0,水溫為20.5 ℃。系統設定:當水溫值低于10 ℃或高于30 ℃、濁度值高于2 800時,蜂鳴器報警。

圖5 渾濁水測試

圖6 清澈水測試

5 結語

本系統在設計和實現的過程中僅加入了單一的溫度和濁度傳感器,具有投入小、適用范圍廣的優勢。但當被監測的水域面積足夠大時,可能無法客觀地反映整體水域的水質情況,并且不同深度的水質情況也會存在差異,可利用STM32良好的功能擴展性,通過多布局傳感器節點、統一收集數據管理分析的方式,更為全面地反映整體水域的水質情況。后期還可添加溶氧、酸堿度、電導率、氨氮、亞硝酸鹽pH等傳感器,多參數更為科學地、綜合地評價水質情況;還可添加LoRa無線傳輸模塊和GPRS通信模塊,通過無線傳輸的方式將數據傳送至遠端計算機保存,實現遠程實時監測。

猜你喜歡
水質測量系統
水質抽檢豈容造假
環境(2023年5期)2023-06-30 01:20:01
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
把握四個“三” 測量變簡單
一月冬棚養蝦常見水質渾濁,要如何解決?這9大原因及處理方法你要知曉
當代水產(2019年1期)2019-05-16 02:42:04
滑動摩擦力的測量和計算
滑動摩擦力的測量與計算
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
測量
主站蜘蛛池模板: 亚洲综合色婷婷| 国产精品网址你懂的| 国产欧美中文字幕| 91美女视频在线| 91精品情国产情侣高潮对白蜜| 久久国产黑丝袜视频| 精品一区二区三区中文字幕| 亚洲男人的天堂在线观看| 18禁影院亚洲专区| 五月综合色婷婷| 国产精品久久久久久久久久98| 国产在线观看人成激情视频| 国产又黄又硬又粗| 中文字幕久久亚洲一区 | 婷婷伊人久久| 久久夜色精品国产嚕嚕亚洲av| 色亚洲成人| www.youjizz.com久久| 九九热精品视频在线| 国内精品视频| 波多野结衣AV无码久久一区| 久久国产精品电影| 国产精品亚洲五月天高清| 国产精品尤物在线| 亚洲av无码成人专区| 国产欧美中文字幕| 久久国产精品麻豆系列| 高清久久精品亚洲日韩Av| 欧美激情福利| 国产精品lululu在线观看| 国产福利影院在线观看| 成人亚洲国产| 一级一级一片免费| 毛片免费视频| 日韩精品无码一级毛片免费| 免费国产小视频在线观看| 久久国产高清视频| 好吊日免费视频| 日韩中文欧美| 中文字幕有乳无码| 精品三级网站| 天天躁日日躁狠狠躁中文字幕| 国产不卡网| 欧美色99| 日本免费a视频| 粗大猛烈进出高潮视频无码| 国产高清免费午夜在线视频| 久久大香香蕉国产免费网站| 亚洲成人免费在线| 五月丁香伊人啪啪手机免费观看| 久久综合亚洲色一区二区三区| av在线无码浏览| 国产精品香蕉在线观看不卡| 日韩在线欧美在线| 九色综合伊人久久富二代| 国产成人一二三| 亚洲国产精品成人久久综合影院| 亚洲小视频网站| 久久黄色影院| 91无码视频在线观看| 国产精品视频第一专区| 国产真实二区一区在线亚洲| 97成人在线视频| 精品撒尿视频一区二区三区| 国产日韩精品欧美一区灰| 亚洲精品第五页| 国产在线视频福利资源站| 国产成人亚洲欧美激情| 97国产一区二区精品久久呦| 成人日韩精品| 亚洲乱伦视频| 91免费精品国偷自产在线在线| 激情网址在线观看| 国产精品久久久免费视频| 精品国产成人高清在线| 久草视频中文| 91亚洲免费视频| 午夜精品影院| 手机精品福利在线观看| 99激情网| 国产18页| 青青国产在线|