日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 工業(yè)控制 > 工業(yè)控制
[導(dǎo)讀]1 引言現(xiàn)代溫室大棚多以微電子技術(shù)和計(jì)算機(jī)輔助決策技術(shù)為核心、以上下位機(jī)方式進(jìn)行智能化監(jiān)控。但上下位機(jī)監(jiān)控由于受通訊線路、距離影響,費(fèi)時(shí)費(fèi)力。隨著我國設(shè)施農(nóng)業(yè)的快速發(fā)展和廣泛應(yīng)用,研究并開發(fā)基于Internet

1 引言

現(xiàn)代溫室大棚多以微電子技術(shù)和計(jì)算機(jī)輔助決策技術(shù)為核心、以上下位機(jī)方式進(jìn)行智能化監(jiān)控。但上下位機(jī)監(jiān)控由于受通訊線路、距離影響,費(fèi)時(shí)費(fèi)力。隨著我國設(shè)施農(nóng)業(yè)的快速發(fā)展和廣泛應(yīng)用,研究并開發(fā)基于Internet的連棟溫室室內(nèi)環(huán)境遠(yuǎn)程控制技術(shù)及設(shè)備,成為迫切需要解決的問題。本文提出了一種將溫室控制的嵌入式系統(tǒng)作為服務(wù)器接入網(wǎng)絡(luò),利用廉價(jià)的嵌入TCP/IP通信協(xié)議的51系列單片機(jī)來控制網(wǎng)絡(luò)接口芯片RTL8019AS,實(shí)現(xiàn)以太網(wǎng)通訊的系統(tǒng)方案,并對系統(tǒng)硬軟件進(jìn)行了設(shè)計(jì)。

2  系統(tǒng)硬件設(shè)計(jì)方案

溫室遠(yuǎn)程監(jiān)控系統(tǒng)的核心微控制器采用美國Cygnal公司的單片機(jī)C8051F020,以太網(wǎng)控制器采用臺灣Realtek公司生產(chǎn)的RTL8019AS。下面,首先分別對其作一介紹。

2.1  C8051F020微處理器

C8051F020是一塊集成混合信號SoC芯片,其內(nèi)核與8051兼容。工作在最大系統(tǒng)時(shí)鐘頻率25MHz時(shí),峰值速度可達(dá)25MIPS 。C8051F020有256KB的內(nèi)部RAM,還另有位于外部數(shù)據(jù)存儲器地址空間的4 KBXRAM和一個(gè)可尋址64 KB地址空間的外部數(shù)據(jù)存儲器接口,以及64 K B可在系統(tǒng)編程的Flash存儲器。C8051 F020 除標(biāo)準(zhǔn)的8051端口 ( P0 、P 1 、P2和P3)外,還附加4個(gè)端口( P4、P5 、P6和P7)。有5個(gè)16位通用定時(shí)器、片內(nèi)看門狗定時(shí)器、VDD監(jiān)視器和溫度傳感器。工作電壓為2.7 V~3.6 V,工作電流為10mA/20MHz [1]。

2.2  以太網(wǎng)控制器RTL8019AS

臺灣Realtek公司生產(chǎn)的RTL8019AS以太網(wǎng)控制器,因性能優(yōu)良、價(jià)格低廉,在10Mbps網(wǎng)卡中占有相當(dāng)?shù)谋壤?。它符合Ethernet II與IEEE802.3(10Base5、10Base2、10BaseT)標(biāo)準(zhǔn),100引腳PQFP封裝,采用全雙工收發(fā)可同時(shí)達(dá)到10Mbps的速率,內(nèi)置16KB的SRAM,支持8/16位數(shù)據(jù)總線,8個(gè)中斷申請線以及l(fā)6個(gè)I/O基地址選擇等。

RTL8019AS內(nèi)部分為遠(yuǎn)程DMA口、本地DMA接口、MAC(介質(zhì)訪問控制)邏輯、數(shù)據(jù)編碼解碼邏輯和其他端口。遠(yuǎn)程DMA接口是指單片機(jī)對RTL8019AS內(nèi)部RAM進(jìn)行讀寫的總線,即ISA總線的接口部分。單片機(jī)收發(fā)數(shù)據(jù)只需對遠(yuǎn)程DMA操作。本地DMA接口是指 RTL8019AS與網(wǎng)線的連接通道,通常通過RJ45接口實(shí)現(xiàn)和外部網(wǎng)絡(luò)的連接,完成控制器與網(wǎng)線的數(shù)據(jù)交換。MAC(介質(zhì)訪問控制)邏輯完成以下功能:當(dāng)單片機(jī)向網(wǎng)上發(fā)送數(shù)據(jù)時(shí), 先將一幀數(shù)據(jù)通過遠(yuǎn)程DMA通道送到RTL8019AS中的發(fā)送緩存區(qū),然后發(fā)出傳送命令;當(dāng)RTL8019AS完成了上一幀的發(fā)送后,再開始此幀的發(fā)送。RTL8019AS接收數(shù)據(jù)時(shí),首先把接收到的數(shù)據(jù)通過MAC比較、CRC校驗(yàn)后,由FIFO存到接收緩沖區(qū);收滿一幀后,以中斷或寄存器標(biāo)志的方式通知主處理器。FIFO邏輯對收發(fā)數(shù)據(jù)作16字節(jié)的緩沖,以減少對本地DMA請求的頻率。

2.3  系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)

系統(tǒng)核心微控制器采用Cygnal公司的單片機(jī)C8051F020,而C8051F020單片機(jī)并不具有以太網(wǎng)接口,為實(shí)現(xiàn)以太網(wǎng)通信,需要接口芯片。系統(tǒng)接口芯片采用是臺灣Realtek公司生產(chǎn)的以太網(wǎng)控制器RTL8019AS。RTL8019AS有即插即用、跳線和免跳線3種工作方式。為了減少資源占用,系統(tǒng)設(shè)計(jì)中將RTL8019AS芯片的JP腳接高電平即選擇跳線方式。為了防止干擾和破壞元器件,實(shí)現(xiàn)帶電拔插功能,需要將RTL8019AS外接一個(gè)隔離LPF濾波器,再通過RJ45接口接入以太網(wǎng)。系統(tǒng)硬件結(jié)構(gòu)框圖如圖1所示。


圖1  系統(tǒng)硬件結(jié)構(gòu)框圖

3  系統(tǒng)軟件設(shè)計(jì)

3.1  單片機(jī)中TCP/IP協(xié)議的嵌入

嵌入式系統(tǒng)接入Internet同PC機(jī)接入Internet一樣,必須要有相應(yīng)通信協(xié)議。目前Internet主要采用TCP/IP協(xié)議,因此,采用嵌入式系統(tǒng)通過TCP/IP協(xié)議接入Internet的方案,嵌入式系統(tǒng)對信息進(jìn)行TCP/IP協(xié)議處理,使其變成可以在Internet上傳輸?shù)腎P數(shù)據(jù)包和以太網(wǎng)幀。

溫室中的主控單片機(jī)要作為Web服務(wù)器接入以太網(wǎng),必須嵌入TCP/IP協(xié)議。Internet通信協(xié)議對計(jì)算機(jī)系統(tǒng)的CPU速度、存儲器容量等要求比較高,用于PC機(jī)不存在任何困難,但用于自身資源有限的嵌入式系統(tǒng)就必須考慮性價(jià)比,根據(jù)需要有所取舍,合理選擇通信協(xié)議的實(shí)現(xiàn)和處理方案。根據(jù)所選的單片機(jī)C8051F020的資源,對TCP/IP協(xié)議做了裁減,系統(tǒng)中使用了ARP、RARP、ICMP、UDP、HTTP等部分協(xié)議,即可保證單片機(jī)接入以太網(wǎng),同時(shí)亦保證有足夠小的代碼量。

根據(jù)實(shí)際需要,該系統(tǒng)采用一種簡化的TCP/IP 4層網(wǎng)絡(luò)模型,分別為:應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層。應(yīng)用層傳遞來自以太網(wǎng)和數(shù)據(jù)終端的數(shù)據(jù),并對數(shù)據(jù)作打包拆包處理;傳輸層采用用戶數(shù)據(jù)包協(xié)議UDP;網(wǎng)絡(luò)層實(shí)現(xiàn)IP協(xié)議,還要實(shí)現(xiàn)能報(bào)告數(shù)據(jù)傳輸差錯(cuò)等情況的ICMP協(xié)議;鏈路層由控制同一物理網(wǎng)絡(luò)上不同機(jī)器間數(shù)據(jù)傳送的底層協(xié)議組成。在簡化的TCP/IP協(xié)議4層模型中,鏈路層部分由RTL8019AS完成,網(wǎng)絡(luò)層和傳輸層由溫室控制的單片機(jī)來處理,應(yīng)用層則根據(jù)需要可以在單片機(jī)內(nèi)完成,也可以由單片機(jī)轉(zhuǎn)給用戶或終端設(shè)備完成。

3.2 單片機(jī)控制以太網(wǎng)卡工作過程

系統(tǒng)在上電工作時(shí)首先要進(jìn)行初始化,即初始化單片機(jī)C8051F020和RTL8019AS,進(jìn)行工作參數(shù)和條件的設(shè)置,主要是一些寄存器的配置和內(nèi)置RAM空間的分配。初始化之后,由于MCU系統(tǒng)中的TCP/IP是直接面向硬件的,沒有嵌入式實(shí)時(shí)操作系統(tǒng)的支持,程序結(jié)構(gòu)一般采用順序執(zhí)行和硬件中斷相結(jié)合的方式,與操作系統(tǒng)的多進(jìn)程并發(fā)執(zhí)行的方式截然不同。當(dāng)所有初始化完成之后,就采用查詢方式開始工作,程序流程圖見圖2。

當(dāng)系統(tǒng)接入以太網(wǎng)開始運(yùn)行時(shí),首先進(jìn)行地址解析,在網(wǎng)絡(luò)內(nèi)進(jìn)行“身份識別”,當(dāng)用戶通過瀏覽器發(fā)出請求時(shí),網(wǎng)絡(luò)芯片驅(qū)動(dòng)程序接收以太網(wǎng)幀形式的用戶請求,然后傳輸給上層協(xié)議逐層分離取出用戶請求,控制系統(tǒng)根據(jù)用戶請求調(diào)用單片機(jī)C8051F020外圍傳感器采集溫室內(nèi)相應(yīng)的狀態(tài)數(shù)據(jù),再將數(shù)據(jù)逐層打包,最后交給以太網(wǎng)芯片RTL8019AS封裝成以太網(wǎng)幀發(fā)送出去。如果傳輸?shù)臄?shù)據(jù)量比較大,則重復(fù)多次數(shù)據(jù)發(fā)送過程,便可完成一個(gè)數(shù)據(jù)的完整傳輸。在終端可以以Web網(wǎng)頁的形式供用戶瀏覽和做出進(jìn)一步的判斷控制。

溫室控制系統(tǒng)中單片機(jī)主要完成來自網(wǎng)絡(luò)數(shù)據(jù)的解包和接受溫室傳感器采集的數(shù)據(jù)的打包,當(dāng)以太網(wǎng)有數(shù)據(jù)到達(dá)該設(shè)備時(shí),單片機(jī)采用查詢方式讀取網(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ù)接收。當(dāng)傳感器傳來的數(shù)據(jù)要發(fā)送時(shí),單片機(jī)先將待發(fā)送的數(shù)據(jù)按UDP 協(xié)議格式打包進(jìn)行封裝,需要設(shè)置以太網(wǎng)目的地址、源地址、協(xié)議類型,再按所設(shè)置的協(xié)議類型來設(shè)置數(shù)據(jù)段。然后給出發(fā)送緩沖區(qū)首地址和數(shù)據(jù)包長度,啟動(dòng)發(fā)送命令。通過遠(yuǎn)程DMA通道送到RTL8019AS中的發(fā)送緩沖區(qū),即可實(shí)現(xiàn)RTL8019AS的發(fā)送功能,并將結(jié)果寫入狀態(tài)寄存器中。再啟動(dòng)本地DMA,將數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)上。


圖2 系統(tǒng)程序流程圖

4  結(jié)論

(1)提出將單片微處理器提升為具有系統(tǒng)軟件和TCP/IP協(xié)議的嵌入式Web服務(wù)器,并用于溫室環(huán)境控制的方案。這種嵌入TCP/IP協(xié)議的單片機(jī)系統(tǒng)成本低、硬件少、傳輸速度快、使用方便,可在遠(yuǎn)程數(shù)據(jù)采集和傳輸、遠(yuǎn)程監(jiān)控等方面有廣泛應(yīng)用前景。

(2)設(shè)計(jì)了系統(tǒng)的軟硬件,通過用單片機(jī)控制網(wǎng)絡(luò)接口芯片RTL8019AS,同時(shí)嵌入精簡的TCP/IP協(xié)議,將溫室控制器擴(kuò)展成嵌入式Web服務(wù)器,實(shí)現(xiàn)溫室內(nèi)各種狀態(tài)數(shù)據(jù)的采集與控制。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

在工業(yè)物聯(lián)網(wǎng)設(shè)備部署中,Modbus通信故障是導(dǎo)致系統(tǒng)停機(jī)的首要原因之一。據(jù)統(tǒng)計(jì),超過60%的現(xiàn)場問題源于通信配置錯(cuò)誤或數(shù)據(jù)解析異常。本文從嵌入式系統(tǒng)開發(fā)視角,系統(tǒng)闡述Modbus通信調(diào)試的方法論,結(jié)合實(shí)際案例解析如何高...

關(guān)鍵字: 嵌入式系統(tǒng) Modbus通信

在嵌入式系統(tǒng)開發(fā)中,看門狗(Watchdog Timer, WDT)是保障系統(tǒng)可靠性的核心組件,其初始化時(shí)機(jī)的選擇直接影響系統(tǒng)抗干擾能力和穩(wěn)定性。本文從硬件架構(gòu)、軟件流程、安全規(guī)范三個(gè)維度,系統(tǒng)分析看門狗初始化的最佳實(shí)踐...

關(guān)鍵字: 單片機(jī) 看門狗 嵌入式系統(tǒng)

人工智能(AI)和機(jī)器學(xué)習(xí)(ML)是使系統(tǒng)能夠從數(shù)據(jù)中學(xué)習(xí)、進(jìn)行推理并隨著時(shí)間的推移提高性能的關(guān)鍵技術(shù)。這些技術(shù)通常用于大型數(shù)據(jù)中心和功能強(qiáng)大的GPU,但在微控制器(MCU)等資源受限的器件上部署這些技術(shù)的需求也在不斷增...

關(guān)鍵字: 嵌入式系統(tǒng) 人工智能 機(jī)器學(xué)習(xí)

Zephyr開源項(xiàng)目由Linux基金會(huì)維護(hù),是一個(gè)針對資源受限的嵌入式設(shè)備優(yōu)化的小型、可縮放、多體系結(jié)構(gòu)實(shí)時(shí)操作系統(tǒng)(RTOS)。近年來,Zephyr RTOS在嵌入式開發(fā)中的采用度逐步增加,支持的開發(fā)板和傳感器不斷增加...

關(guān)鍵字: 嵌入式系統(tǒng) 軟件開發(fā) 實(shí)時(shí)操作系統(tǒng) Zephyr項(xiàng)目

在資源受限的嵌入式系統(tǒng)中,代碼執(zhí)行效率和內(nèi)存占用始終是開發(fā)者需要權(quán)衡的核心問題。內(nèi)聯(lián)函數(shù)(inline functions)和宏(macros)作為兩種常見的代碼展開技術(shù),在性能、可維護(hù)性和安全性方面表現(xiàn)出顯著差異。本文...

關(guān)鍵字: 內(nèi)聯(lián)函數(shù) 嵌入式系統(tǒng)

在嵌入式系統(tǒng)和服務(wù)器開發(fā)中,日志系統(tǒng)是故障排查和運(yùn)行監(jiān)控的核心組件。本文基于Linux環(huán)境實(shí)現(xiàn)一個(gè)輕量級C語言日志庫,支持DEBUG/INFO/WARN/ERROR四級日志分級,并實(shí)現(xiàn)按大小滾動(dòng)的文件輪轉(zhuǎn)機(jī)制。該設(shè)計(jì)在某...

關(guān)鍵字: C語言 嵌入式系統(tǒng)

在嵌入式系統(tǒng)和底層驅(qū)動(dòng)開發(fā)中,C語言因其高效性和可控性成為主流選擇,但缺乏原生單元測試支持成為開發(fā)痛點(diǎn)。本文提出一種基于宏定義和測試用例管理的輕量級單元測試框架方案,通過自定義斷言宏和測試注冊機(jī)制,實(shí)現(xiàn)無需外部依賴的嵌入...

關(guān)鍵字: C語言 嵌入式系統(tǒng) 驅(qū)動(dòng)開發(fā)

在嵌入式系統(tǒng)與驅(qū)動(dòng)開發(fā)中,內(nèi)存映射I/O(Memory-Mapped I/O, MMIO)是一種將硬件寄存器映射到處理器地址空間的技術(shù),允許開發(fā)者通過指針直接讀寫寄存器,實(shí)現(xiàn)高效、低延遲的硬件控制。本文通過C語言實(shí)戰(zhàn)案例...

關(guān)鍵字: 內(nèi)存映射 I/O操作 嵌入式系統(tǒng)

在嵌入式系統(tǒng)開發(fā)和多線程編程中,程序崩潰、內(nèi)存越界等復(fù)雜問題常令開發(fā)者困擾。GDB作為強(qiáng)大的調(diào)試工具,其條件斷點(diǎn)和內(nèi)存查看功能可精準(zhǔn)定位隱蔽缺陷。本文通過實(shí)際案例演示這些高級功能的應(yīng)用,幫助開發(fā)者提升調(diào)試效率。

關(guān)鍵字: GDB 嵌入式系統(tǒng)
關(guān)閉