基于網(wǎng)絡的數(shù)據(jù)采集與控制系統(tǒng)輕松實現(xiàn)
一、項目概述
1.1 引言
計算機和網(wǎng)絡技術的迅速發(fā)展,引發(fā)了控制領域深刻的技術革命??刂葡到y(tǒng)結構向網(wǎng)絡化、開放性方向發(fā)展將是控制系統(tǒng)技術發(fā)展的主要潮流。過去大量的浩如煙海的8/16位單片機的嵌入式設備,如儀器儀表、數(shù)據(jù)采集和顯示、過程控制、工業(yè)自動化、家庭自動化等的實時應用,已經到了享受網(wǎng)絡方便的時候了。它們將成為Internet 的發(fā)展沃土,順應“網(wǎng)絡服務”向“網(wǎng)絡應用”擴展的大潮。
1.2 項目背景/選題動機
目前大多數(shù)嵌入式系統(tǒng)還處于單獨應用的階段,以單片機為核心,與一些控制設備配合實現(xiàn)一定的功能。如果嵌入式系統(tǒng)能夠連接到Internet 這個信息流通渠道,則可以方便、低廉地將信息送到世界上任何一個地方,這將形成集管理與控制于一體的分布式網(wǎng)絡系統(tǒng)。要做到這一點并不難,在電子技術、傳感技術已經高度發(fā)達的今天,現(xiàn)場數(shù)據(jù)的取得,已經不是難事,溫度、壓力、濕度、速度、加速度、電流、電壓這些數(shù)據(jù)只需要一個小小的嵌入式系統(tǒng)就可解決。另外,以太網(wǎng)(Ethernet)協(xié)議已經廣泛地應用于各種計算機網(wǎng)絡,基于以太網(wǎng)的嵌入式系統(tǒng)也正在不斷向前發(fā)展。
二、需求分析
2.1 功能要求
實現(xiàn)一個以AVR32 UC3為核心的可移植并且高度可配置的基于網(wǎng)絡的數(shù)據(jù)采集與控制系統(tǒng)。該系統(tǒng)具有結構簡單、通用性強、通過Internet進行通信、使用靈活、性價比高等優(yōu)點,適配各種智能傳感器并具有較強的擴展能力,該系統(tǒng)可用于現(xiàn)在流行的物聯(lián)網(wǎng)的各個方面,例如,傳感器網(wǎng)絡監(jiān)控(污染源實時監(jiān)控,無線環(huán)保數(shù)據(jù)采集),工業(yè)機器監(jiān)控(工業(yè)自動化,智能家居系統(tǒng)),遠程信息交互(遠程醫(yī)療,遠程教育)等應用領域。
系統(tǒng)總體架構圖如圖1。
圖1系統(tǒng)總體架構圖
2.2 性能要求
利用該系統(tǒng),用戶能夠通過Internet 訪問并控制相關外設。當系統(tǒng)上電或復位后相關配置能夠自動設置好,在10秒鐘內開始正常工作;網(wǎng)絡連接通過板卡上的 Ethernet 接口實現(xiàn),相關的IP地址,子網(wǎng)掩碼(Subnet mask),網(wǎng)關(Gateway)等網(wǎng)絡配置通過DHCP(Dynamic Host ConfiguraTIon Protocol)自動實現(xiàn)并顯示在LCD上;信息采集正常工作(溫濕度誤差小于0.1%),控制輸出正常工作(LED實現(xiàn)3級亮度調節(jié),繼電器正常工作,電機正常工作);HTML源文件存放在外部U盤(或SD卡)上,便于修改。
三、方案設計
3.1 系統(tǒng)功能實現(xiàn)原理
基于網(wǎng)絡的數(shù)據(jù)采集與控制系統(tǒng),在AVR32 UC3上實現(xiàn)以太網(wǎng)連接和USB文件系統(tǒng),通過TCP/IP協(xié)議實現(xiàn)以太網(wǎng)的連接,通過USB協(xié)議讀寫U盤中的網(wǎng)頁文件??勺鳛橐蕴W(wǎng)的一個獨立系統(tǒng),網(wǎng)絡上的任何一臺計算機都可通過標準的TCP/IP協(xié)議對其進行連接控制,傳輸命令或數(shù)據(jù)。將該系統(tǒng)配上溫濕度傳感器后實際測量工業(yè)現(xiàn)場溫濕度,然后通過網(wǎng)絡傳輸給計算機,可獲得現(xiàn)場溫濕度。配上相關外設,在計算機上通過網(wǎng)絡可對現(xiàn)場進行控制。
圖2系統(tǒng)硬件結構框圖
3.2 硬件平臺選用及資源配置
硬件平臺擬選用AVR32 EVK1100。
資源配置:以太網(wǎng)端口用于接入以太網(wǎng),USB2.0接口用于讀取U盤網(wǎng)頁文件,USART用于相關外設的串行通信,光敏電阻、溫/濕度傳感器、AD等用于前端信號采集,LED、繼電器、電機等用于后端控制演示。
3.3系統(tǒng)軟件架構
TCP/IP協(xié)議實現(xiàn)網(wǎng)絡連接。
從系統(tǒng)硬件結構框圖中我們可以清晰地了解整個硬件系統(tǒng)的結構以及各部分的連接。首先最重要的部分是調用lwIP TCP/IP Stack來實現(xiàn)AVR32 UC3與Internet的通信,接受用戶的請求并根據(jù)Http Request()的返回值通過Http Response()來與用戶進行交互,例如顯示時間、溫濕度或者控制LED燈的亮滅。
下圖是簡化了的Web服務器原理圖,服務器的事物邏輯部分是嵌入式Web服務器的核心部分,它根據(jù)不同的Http Socket來讀取U盤上的HTML源文件或其他外設的輸入值,來響應用戶的請求,這是整個系統(tǒng)的基礎。
圖3 Web服務器原理圖
USB協(xié)議和文件系統(tǒng)