基于嵌入式Web服務(wù)器的溫室遠程監(jiān)控的研究
溫室控制系統(tǒng)中單片機主要完成來自網(wǎng)絡(luò)數(shù)據(jù)的解包和接受溫室傳感器采集的數(shù)據(jù)的打包,當以太網(wǎng)有數(shù)據(jù)到達該設(shè)備時,單片機采用查詢方式讀取網(wǎng)絡(luò)數(shù)據(jù)并分析,先將其目的地址與系統(tǒng)的物理地址相比較,如果地址不相符,則將該數(shù)據(jù)丟棄,如果相符,則判斷是否是ARP數(shù)據(jù)包,是則轉(zhuǎn)入ARP處理程序,并發(fā)送RARP數(shù)據(jù)包。如果是UDP數(shù)據(jù)包且IP地址和端口號正確,則開始數(shù)據(jù)接收。當傳感器傳來的數(shù)據(jù)要發(fā)送時,單片機先將待發(fā)送的數(shù)據(jù)按UDP 協(xié)議格式打包進行封裝,需要設(shè)置以太網(wǎng)目的地址、源地址、協(xié)議類型,再按所設(shè)置的協(xié)議類型來設(shè)置數(shù)據(jù)段。然后給出發(fā)送緩沖區(qū)首地址和數(shù)據(jù)包長度,啟動發(fā)送命令。通過遠程DMA通道送到RTL8019AS中的發(fā)送緩沖區(qū),即可實現(xiàn)RTL8019AS的發(fā)送功能,并將結(jié)果寫入狀態(tài)寄存器中。再啟動本地DMA,將數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)上[4]。
4 結(jié)論
(1)提出將單片微處理器提升為具有系統(tǒng)軟件和TCP/IP協(xié)議的嵌入式Web服務(wù)器,并用于溫室環(huán)境控制的方案。這種嵌入TCP/IP協(xié)議的單片機系統(tǒng)成本低、硬件少、傳輸速度快、使用方便,可在遠程數(shù)據(jù)采集和傳輸、遠程監(jiān)控等方面有廣泛應(yīng)用前景。
(2)設(shè)計了系統(tǒng)的軟硬件,通過用單片機控制網(wǎng)絡(luò)接口芯片RTL8019AS,同時嵌入精簡的TCP/IP協(xié)議,將溫室控制器擴展成嵌入式Web服務(wù)器,實現(xiàn)溫室內(nèi)各種狀態(tài)數(shù)據(jù)的采集與控制。
本文作者創(chuàng)新點: 通過設(shè)計,首次把溫室內(nèi)廉價的單片微處理器做成一個嵌入TCP/IP協(xié)議的Web服務(wù)器,其不僅實現(xiàn)溫室內(nèi)各種狀態(tài)數(shù)據(jù)的采集功能,更替代了過去的上下位機遠程控制,這對我國數(shù)字農(nóng)業(yè)和網(wǎng)絡(luò)農(nóng)業(yè)的研究也具有重大意義。
本文引用地址:http://2s4d.com/article/173726.htm linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論