基于Web的單片機(jī)遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)方案
摘 要:傳統(tǒng)的遠(yuǎn)程監(jiān)控系統(tǒng)一般采用C/S 模型的方式,針對大型設(shè)備,成本高。文章采用SOC 芯片C8051F020 和10M 自適應(yīng)網(wǎng)絡(luò)芯片RTL8019AS 接口的方案,在單片機(jī)中嵌入了精簡的TCP/IP 協(xié)議棧,構(gòu)建了基于Web 的單片機(jī)遠(yuǎn)程監(jiān)控系統(tǒng)軟、硬件平臺,在此基礎(chǔ)上實(shí)現(xiàn)了基于單片機(jī)的數(shù)據(jù)采集和遠(yuǎn)程監(jiān)控,所實(shí)現(xiàn)的系統(tǒng)具有成本低廉、操作方便、可靠等優(yōu)點(diǎn)。
本文引用地址:http://butianyuan.cn/article/171513.htm1. 引言
單片機(jī)系統(tǒng)以其簡單、高效的特點(diǎn),在工業(yè)控制和日常生活中應(yīng)用越來越廣泛。目前大多數(shù)單片機(jī)系統(tǒng)是以51 單片機(jī)為核心,與檢測、伺服、顯示設(shè)備配合起來實(shí)現(xiàn)監(jiān)控功能。
然而,這些監(jiān)控系統(tǒng)的數(shù)據(jù)傳輸多采用RS-232、RS-485 以及各種現(xiàn)場總線,這些方式有些通信速度不夠快,有些距離不夠遠(yuǎn),且各種總線之間難于實(shí)現(xiàn)互連和互操作。以太網(wǎng)作為目前應(yīng)用最為廣泛的局域網(wǎng),在工業(yè)自動化和過程控制領(lǐng)域得到了越來越多的應(yīng)用。同時,隨著Internet 的普及,現(xiàn)代通信技術(shù)的進(jìn)步,基于TCP/IP 和Client/Server 架構(gòu)的分布式監(jiān)控技術(shù)也日趨成熟。把嵌入式系統(tǒng)連接到Internet 上,就可以方便、低廉地把信息傳送到世界的任何一個地方。
傳統(tǒng)的遠(yuǎn)程監(jiān)控系統(tǒng)一般采用C/S 模型的方式,主要針對大型的設(shè)備進(jìn)行監(jiān)控。對于如攝像頭圖象監(jiān)控p家用儀表p門禁控制系統(tǒng)等小型的設(shè)備的監(jiān)控就需要采用低成本的方案。
鑒于此,在低成本的單片機(jī)系統(tǒng)上移植精簡的TCP/IP 協(xié)議簇,實(shí)現(xiàn)對于小型設(shè)備遠(yuǎn)程監(jiān)控是最佳選擇。該系統(tǒng)以Web 方式實(shí)現(xiàn),用戶可以在任何一臺裝有瀏覽器的PC 機(jī)上進(jìn)行遠(yuǎn)程監(jiān)視與控制,具有價格低廉、操作方便、界面友好等優(yōu)點(diǎn)。傳統(tǒng)的遠(yuǎn)程監(jiān)控系統(tǒng)模型與本系統(tǒng)采用的模型如圖1 和圖2 所示。
圖1 傳統(tǒng)遠(yuǎn)程監(jiān)控系統(tǒng)模型
圖2 單片機(jī)監(jiān)控系統(tǒng)模型
2. 系統(tǒng)硬件設(shè)計(jì)
本系統(tǒng)以 Cygnal 公司的完全集成的混合信號系統(tǒng)級芯片(SOC)C8051F020 單片機(jī)為核心,采用Realtek 公司的10M 自適應(yīng)以太網(wǎng)控制器RTL8019AS 實(shí)現(xiàn)系統(tǒng)的網(wǎng)絡(luò)接口部分。
SRAM 部分用于存放大量的數(shù)據(jù)信息。數(shù)據(jù)采集部分用于采集系統(tǒng)需要監(jiān)控的設(shè)備的運(yùn)行情況,由于C8051F020 內(nèi)部帶有真正12 位100 ksps 的8 通道ADC 帶PGA 和模擬多路開關(guān),還有兩個12 位DAC 可編程更新時序,可以方便的進(jìn)行模擬信號采集和對外設(shè)進(jìn)行控制。
C8051F020 單片機(jī)內(nèi)置64K FLASH 程序存儲器、4K 內(nèi)部SRAM,可以嵌入TCP /IP 協(xié)議, 從而實(shí)現(xiàn)嵌入式Web Sever 的功能。RTL8019AS 集成了介質(zhì)訪問控制子層(MAC)和物理層的性能,與單片機(jī)的接口簡單,可以方便地用來設(shè)計(jì)基于ISA 總線的系統(tǒng)。另外,它還具有與NE2000 兼容、軟件移植性好以及價格低廉等優(yōu)點(diǎn),所以特別適合用于嵌入式系統(tǒng)。
圖3 系統(tǒng)框圖
3.系統(tǒng)軟件設(shè)計(jì)
3.1 軟件流圖設(shè)計(jì)
軟件的實(shí)現(xiàn)主要是根據(jù)數(shù)據(jù)在網(wǎng)絡(luò)中傳輸?shù)姆较蚝蛿?shù)據(jù)的流向來實(shí)現(xiàn)的。在本設(shè)計(jì)中數(shù)據(jù)的流向?yàn)椋赫埱笮畔木钟蚓W(wǎng)中來,通過RJ 45 送到RTL80l9AS,處理后的數(shù)據(jù)包送入單片機(jī)系統(tǒng)的協(xié)議棧,由協(xié)議棧對數(shù)據(jù)包進(jìn)行解析,得到原始請求信息。請求信息再經(jīng)過單片機(jī)系統(tǒng)的處理,產(chǎn)生回復(fù)信息?;貜?fù)信息到局域網(wǎng)的過程與上面正好相反。整個系統(tǒng)的軟件流程如上圖4 所示。
圖4 軟件框圖
3.2 RTL8019 接收與發(fā)送數(shù)據(jù)
1.RTL8019 芯片初始化主要是將網(wǎng)卡設(shè)置成正常的模式,跟外部網(wǎng)絡(luò)連接。清除所有中斷標(biāo)志位,讓芯片開始工作。
評論