鐘濱 王亞星 童蓮


摘? 要:該文以AM2301/DHT21數字溫濕度傳感器模塊為例,具體介紹了I2C通信,串行通信以及網絡通信的過程和方式。討論了基于單片機的嵌入式以太網遠程溫濕度監控系統的設計方案,提出了嵌入式以太網遠程溫濕度監控的一種設計方法。通過本設計方法,溫濕度傳感器采集溫濕度信號后傳輸到控制單元,所采集的信號數據經控制單元處理后傳輸到本地液晶,以及本地終端和遠程終端。系統能夠實時監測溫、濕度數據,提供本地液晶顯示、本地終端顯示、網絡遠程終端顯示三種工作方式,提供可配置的溫度、濕度獨立上下限報警和溫濕度混合報警功能,提供連續環境監測記錄、查詢、報警提示功能,系統還可以擴展自動調節溫濕度功能。
關鍵詞:溫濕度監控;AM2301;以太網;嵌入式
中圖分類號:TP277? ? ? 文獻標識碼:A 文章編號:2096-4706(2019)24-0189-03
Abstract:This article takes the AM2301 / DHT21 digital temperature and humidity sensor module as an example,and specifically introduces the processes and methods of I2C communication,serial communication,and network communication. The design scheme of remote temperature and humidity monitoring system based on embedded Ethernet based on single chip microcomputer is discussed,and a design method of remote temperature and humidity monitoring based on embedded Ethernet is proposed. Through this design method,the temperature and humidity sensor collects temperature and humidity signals and transmits them to the control unit. The collected signal data is processed by the control unit and transmitted to the local LCD,local terminal,and remote terminal. The system can monitor temperature and humidity data in real time,provide local LCD display,local terminal display,network remote terminal display three working modes,provide configurable temperature and humidity independent upper and lower limit alarms and temperature and humidity mixed alarm functions,and provide continuous environmental monitoring records,query,alarm prompt function. The system can also be extended with automatic temperature and humidity adjustment.
Keywords:temperature and humidity monitoring;AM2301;Ethernet;embedded
0? 引? 言
該文的主要目的是在溫濕度傳感器、單片機以及網絡應用的理論知識的基礎上,選用TI公司的MSP430F149完成一種可以提供不間斷監控記錄,能夠提供網絡遠程終端、本地主機終端和本地液晶三種工作方式以及能夠報警的遠程網絡溫濕度監控系統。
本系統主要是溫濕度傳感器采集溫濕度信號后傳輸到控制單元,所采集的信號數據經控制單元處理后傳輸到本地液晶、本地終端和遠程終端分別顯示,本地終端將接收到的數據進行顯示和存儲,終端上位機可以設置溫濕度閾值并進行報警。本系統能夠實時監測溫濕度數據,提供多種終端顯示工作方式,提供可配置的溫度、濕度獨立上下限報警和溫濕度混合報警功能,提供連續環境監測記錄、查詢功能。系統由溫濕度傳感器模塊,主控制模塊、副控制模塊、電源模塊、本地液晶顯示模塊、以太網控制芯片模塊、RS232轉USB模塊、網絡變壓器模塊、RJ45網絡接口模塊、電腦終端顯示與報警模塊,以及遠程電腦終端顯示模塊共11部分組成。
1? 系統電路設計
系統電路的主芯片采用TI(德州儀器)公司的MSP430 F149 Flash單片機。低電壓范圍1.8V~3.6V供電,本設計采用3.3V的電壓供電。MSP430F149的運行模式以先進的方式支持超低功率和超低能耗的各種要求。這是通過各模塊的智能化運行管理和CPU的狀態組合而成的。
本設計在RST/NMI管腳上接100KΩ的上拉電阻,再接0.1μf的電容,電容的一端接地,可以使復位更加可靠。再在電阻上并接一個型號為IN4008的二極管,可以有效地實現系統斷電后立即上電。LFXT1接低頻振蕩器,接32768Hz的振蕩器,直接接在XIN與XOUT之間,此時振蕩器不需要接負載電容。XT2接8MHZ的標準晶體振蕩器。在本系統中,溫濕度傳感器采用單總線傳輸形式,SDA接5.1K電阻上拉后與單片機器的I/O端口相連。采用5V電源供電。如圖1所示。
2? 串口電路設計
本系統主控制芯片和終端采用串口通信方式,串口波特率為9600,無奇偶校驗位,8位數據位,1位停止位。接收使能端EN接地,時鐘有效;掉電模式控制引腳force off接
地,force on接高電平,此時,自動掉電功能起作用,若器件未感應到接收器輸入端的一個有效的RS-232信號,則驅動器輸出端被禁止。MSP430F149單片機USART0的TXD腳(P3.4)與MAX3221的11腳T1IN相連,USART0的RXD腳(P3.5)與MAX3221的第9腳R1OUT相連。轉換后的RS-232信號分別通過MAX3221的第13腳(T1OUT)和第八腳(R1IN)輸出和輸入,可以與DB9的第2和第3引腳相連,從而通過串口延長線直接與PC機相連。
3? 軟件設計方案
系統軟件運行總體設計流程如下:上電后系統初始化,顯示開機畫面,系統每2s中斷一次,在中斷中讀取和處理溫濕度數據,并在本地液晶上實時顯示數據信息,同時系統將處理后的數據通過UART0和UART1傳送給本地主機和副控制芯片,副控制芯片接收到數據后進入串口中斷,在中斷中修改全局變量temper,修改后的變量經CS8900A以太網芯片發送給遠程主機。
溫濕度接受子程序主要用于接收AM2301模塊發送的串行數據。這個程序在定時器中斷里面完成。通信的波特率默認為9600,1個起始位,1個停止位,無奇偶校驗位。由于溫濕度模塊一次性發送40位數據,前16位為濕度數據,17到32位為溫度數據,后8位為校驗數據。
4? 串口上位機的設計
該串口上位機程序包含溫濕度監控單元、溫濕度設置單元、溫濕度查詢單元。上位機默認設置為串口1,波特率9600,無校驗位,8位數據位,1位停止位,報警溫濕度為70%RH,17℃。如圖2所示,系統登錄界面默認用戶名和密碼為“admin”,點擊登錄后,軟件進入監控界面,點擊“打開端口”按鈕,如果電腦沒有連接硬件,軟件會彈窗警告;如果已連接硬件,點擊打開端口后,登錄狀態燈會變成綠色,同時溫濕度監控單元里面的溫濕度顯示框會2s更新一次當前環境溫濕度數據。如果當前溫濕度超過溫濕度設置單元里設定的溫濕度閾值,溫濕度監控單元中的溫濕度顯示框里的數值會變成紅色,同時報警燈會變成紅色報警。上位機軟件能夠實時存儲接收到的溫濕度數據,數據存儲到當前目錄下的DATA.txt文本中,溫濕度查詢單元可以查詢DATA.txt文本中存儲溫濕度數據,在查詢界面中的“時間”輸入框中輸入時間,如“2019/3/1422.40.56”,點擊“確定”按鈕后DATA.txt文本中記錄的該時刻的溫濕度數據就會顯示在查詢界面的“濕度”和“溫度”的顯示框中。存儲的數據可以導出和備份。下次使用時,可以直接放到軟件當前目錄下,軟件可以直接查詢到。
5? 以太網上位機的設計
該以太網上位機包含端口設置單元、溫濕度顯示單元、報警設置單元。端口設置單元用于設置嵌入式服務器的IP地址,TCP連接的本地端口和目的端口,系統默認本地端口4000,目的端口2025,目的IP 192.168.1.190。連接硬件后,點擊“連接”按鈕,如果本地端口已占用,本地端口自動加1;如果本地端口沒被占用,連接狀態燈變成綠色,按鈕狀態變成“斷開”,同時“獲取溫濕度”按鈕被激活,點擊“獲取溫濕度”按鈕,軟件上位機會自動連接硬件獲取溫濕度數據并顯示在溫濕度顯示單元中的“溫度”和“濕度”顯示框中。如果當前溫濕度超過溫濕度設置單元里設定的溫濕度閾值,溫濕度顯示單元中“溫度”和“濕度”顯示框里面的數值會變成紅色同時報警燈會變成紅色報警。報警設置單元用于設置報警溫濕度閾值,分別在設置框中填寫完后,點擊“設置”按鈕,報警溫濕度就會被設定成設定值。軟件上位機還能自動每2s更新一次當前溫濕度數據,如果把“自動獲取”前面的框打上勾,上位機就能自動每2s更新一次當前溫濕度數據。該以太網上位機還能自動存儲溫濕度數據,數據存儲到當前目錄下的DATA.txt文本中,數據可以導出和備份。
6? 結? 論
本系統提供多種工作方式以及監控和報警功能。但是本設計還有許多可以改進和擴展的地方,比如增加溫濕度傳感器個數,設計成多路溫濕度監控,還可以添加溫濕度自動調節模塊增加風機和加熱模塊使監控場所的溫濕度保持在設定范圍內,使本設計更具有實際應用價值。
參考文獻:
[1] 劉寶元,張玉虹,姜旭,等.基于單片機的溫濕度監控系統設計 [J].國外電子測量技術,2009,28(12):77-80+83.
[2] 宋慶國.基于以太網的分布式溫濕度智能監控系統 [D].青島:中國海洋大學,2007.
[3] 老盛林,何式健.MAX6675在K型熱電偶溫度測量中的應用 [J].現代信息科技,2019,3(8):195-196.
作者簡介:鐘濱(1972-),男,漢族,江蘇建湖人,總經理,中級職稱,碩士,研究方向:工業自動化控制。