熱門關(guān)鍵字:谷物容重器 降落值測(cè)定儀 粉質(zhì)儀 拉伸儀 羅維朋比色計(jì) 纖維素測(cè)定儀 脂肪測(cè)定儀 油脂煙點(diǎn)測(cè)定儀 凱氏定氮儀 錘式旋風(fēng)磨  硬度計(jì)

探討網(wǎng)絡(luò)儀器的設(shè)計(jì)和實(shí)現(xiàn)

來(lái)源: http://324232.com  類別:實(shí)用技術(shù)  更新時(shí)間:2015-03-23  閱讀

  實(shí)現(xiàn)設(shè)備資源和數(shù)據(jù)資源共享。嵌入式網(wǎng)絡(luò)儀器以其網(wǎng)絡(luò)共享和穩(wěn)定可靠的優(yōu)勢(shì)在智能交通,信息家電、家庭自動(dòng)化、工業(yè)自動(dòng)化、環(huán)境監(jiān)測(cè)及遠(yuǎn)程醫(yī)療等眾多領(lǐng)域得到越來(lái)越廣泛的應(yīng)用嵌入式網(wǎng)絡(luò)儀器系統(tǒng)構(gòu)成一個(gè)嵌入式網(wǎng)絡(luò)儀器基本上包括數(shù)據(jù)采集、嵌入式微控制器和網(wǎng)絡(luò)接口3大部分。以一個(gè)具體的嵌入式網(wǎng)絡(luò)圖像監(jiān)控系統(tǒng)為例,該儀器由微控制器SX52,圖像采集模塊DB200、網(wǎng)絡(luò)接口芯片RTL8019和網(wǎng)絡(luò)濾波器FB2022等構(gòu)成。

  其中MCU控制整個(gè)系統(tǒng)的運(yùn)行并用軟件實(shí)現(xiàn)協(xié)議棧,圖像采集模塊實(shí)現(xiàn)前端圖像的獲取,網(wǎng)絡(luò)接口芯片和網(wǎng)絡(luò)變壓器實(shí)現(xiàn)網(wǎng)絡(luò)傳輸?shù)牡讓庸δ,整個(gè)系統(tǒng)的框圖結(jié)構(gòu)如所示。嵌入式網(wǎng)絡(luò)圖像監(jiān)控系統(tǒng)構(gòu)成嵌入式微控制器SX52嵌入式系統(tǒng)中可選用的控制芯片很多,例如51、96系列單片機(jī)等,這些芯片應(yīng)用廣泛,價(jià)格也很便宜,但在圖像實(shí)時(shí)采集中速度不是很快;另外也可用DSP,它在實(shí)現(xiàn)復(fù)雜的函數(shù)運(yùn)算和編解碼中很有優(yōu)勢(shì),并可以達(dá)到很高的速度,但它主要用在進(jìn)行大量數(shù)學(xué)運(yùn)算的場(chǎng)合,不適宜進(jìn)行事務(wù)控制。根據(jù)實(shí)際需要,不僅要成本低而且要有足夠快的速度,綜合考慮MCU選用sx52單片機(jī)。它基于RISC結(jié)構(gòu),帶有片上FLASH程序存儲(chǔ)器,具有在系統(tǒng)編程調(diào)試功能;由于采用CPU并行流水線方式及單時(shí)鐘周期指令,在100MHz晶振驅(qū)動(dòng)下指令執(zhí)行速度可達(dá)100MI/s;所有I/O管腳可通過(guò)編程靈活配置;CPU通過(guò)執(zhí)行虛擬軟件模塊直接驅(qū)動(dòng)普通I/O口實(shí)現(xiàn)硬件外設(shè)功能。

  網(wǎng)絡(luò)接口芯片網(wǎng)絡(luò)控制芯片采用全雙工以太網(wǎng)控制器RTL8019AS,自帶16KB的SRAM,具有全雙工的通信接口,可以通過(guò)交換機(jī)在雙絞線上同時(shí)發(fā)送和接收數(shù)據(jù)。它能完成物理幀的形成、編解碼、CRC的形成和校驗(yàn)、數(shù)據(jù)的收發(fā)等。RTL8019AS可使帶寬從2006年第12期儀表技術(shù)與傳感器是用來(lái)進(jìn)行以太網(wǎng)通訊的理想芯片。通訊網(wǎng)絡(luò)變壓器品質(zhì)特性,直接影響整個(gè)網(wǎng)絡(luò)系統(tǒng)的運(yùn)行。網(wǎng)卡濾波器FB2022有2個(gè)輸入2個(gè)輸出,和以太網(wǎng)的10BASE-T構(gòu)成標(biāo)準(zhǔn)的接口。圖像采集器圖像采集模塊采用DB200.DB200攝像部件將鏡頭、視頻圖像、圖像截取、圖像緩存、時(shí)序發(fā)生、總線接口等電路集于一體,它可以與單片機(jī)、DSP、通用I/O接口進(jìn)行連接。DB200體積小,功耗低,特別適合用于電池供電。電路框圖結(jié)構(gòu)如。圖像采集器DB200電路框圖圖像采集器的地址線A0、讀信號(hào)RD、寫信號(hào)WR和片選信號(hào)CE分別接SX52的RE03,數(shù)據(jù)線D0D7接到SX52的RD07,由SX52控制數(shù)據(jù)的傳輸。

  網(wǎng)絡(luò)協(xié)議在SX52上的實(shí)現(xiàn)網(wǎng)絡(luò)接口芯片的配置共有4頁(yè)寄存器組,每頁(yè)寄存器組有16個(gè)寄存器。實(shí)際上網(wǎng)絡(luò)通訊也就是對(duì)這些寄存器進(jìn)行設(shè)置,其中CR寄存器是控制命令寄存器,地址是00h,其結(jié)構(gòu)如下所示:這個(gè)寄存器用來(lái)選擇寄存器頁(yè),控制遠(yuǎn)程DMA操作。在實(shí)際配置寄存器時(shí),首先要進(jìn)行寄存器頁(yè)的設(shè)置,指定配置的寄存器屬于哪一頁(yè),然后對(duì)那頁(yè)中的寄存器寫入配置信息。要進(jìn)行網(wǎng)絡(luò)通訊必須對(duì)網(wǎng)絡(luò)控制芯片初始化,初始化非常重要,它決定網(wǎng)絡(luò)通訊的一些重要參數(shù),配置過(guò)程如下:初始化復(fù)位寄存器,地址1Fh,代碼如下:寫入數(shù)據(jù);調(diào)寫子程序,把數(shù)據(jù)寫入選擇為用戶配置模式,然后對(duì)CR寄存器進(jìn)行寫使能,再進(jìn)行的配置寄存器設(shè)置。在第一頁(yè)中寫入網(wǎng)絡(luò)接口卡的硬件地址。以太網(wǎng)的地址為48位,由IEEE統(tǒng)一分配給網(wǎng)卡制造商,每個(gè)網(wǎng)卡的地址都是唯一的,共6B的長(zhǎng)度。跟硬件地址有關(guān)的寄存器:PARO5,這幾個(gè)寄存器為網(wǎng)絡(luò)工作時(shí)用的物理地址寄存器,位于第一頁(yè),共6B,這就是該網(wǎng)絡(luò)系統(tǒng)的地址。配置當(dāng)前頁(yè)寄存器。寫時(shí)選擇第一頁(yè)07h寄存器,讀時(shí)選擇第二頁(yè)07h寄存器,配置第一頁(yè)寄存器組中接收緩沖區(qū)的大小。設(shè)置中斷寄存器(地址在第一頁(yè)的07h),設(shè)置接收配置寄存器(0C,RCR),設(shè)置發(fā)送配置寄存器(OD,TCR),設(shè)置數(shù)據(jù)配置寄存器(OE,DCR)。開始接收數(shù)據(jù)。

  目標(biāo)MAC地址是通過(guò)地址解析協(xié)議獲得的。所謂地址解析就是主機(jī)在發(fā)送幀前將目標(biāo)IP地址轉(zhuǎn)換成目標(biāo)MAC地址的過(guò)程。ARP協(xié)議的基本功能就是通過(guò)目標(biāo)設(shè)備的IP地址,查詢目標(biāo)設(shè)備的MAC地址,以保證通信的順利進(jìn)行。在SX52芯片中設(shè)置一個(gè)固定大小的內(nèi)存棧作為CACHE,這個(gè)內(nèi)存棧維護(hù)一個(gè)IP地址到物理地址的映射表。這個(gè)棧能響應(yīng)對(duì)方ARP請(qǐng)求,即在遠(yuǎn)方主機(jī)探求自己的硬件地址時(shí),能夠發(fā)送一個(gè)ARP響應(yīng)分組,告訴對(duì)方自己的硬件地址,同時(shí)在內(nèi)存棧中根據(jù)對(duì)方的IP地址查詢物理地址時(shí),如果沒(méi)有相應(yīng)的映射,就記錄下對(duì)方的IP地址和硬件地址,為以后發(fā)送IP分組做準(zhǔn)備。同時(shí)這個(gè)內(nèi)存棧有一個(gè)時(shí)鐘來(lái)控制,如果網(wǎng)絡(luò)長(zhǎng)時(shí)間沒(méi)有活動(dòng),就把這一條記錄刪掉,以便節(jié)省內(nèi)存。同時(shí)這個(gè)內(nèi)存棧在不知道對(duì)方網(wǎng)絡(luò)硬件地址時(shí),能夠發(fā)一個(gè)ARP請(qǐng)求,并且能對(duì)ARP響應(yīng)進(jìn)行解析,記錄下對(duì)方的IP地址和硬件地址。

  這樣雙方就可以進(jìn)行網(wǎng)絡(luò)通信了,如所示。整個(gè)過(guò)程分為接收過(guò)程和發(fā)送過(guò)程兩部分,在接收過(guò)程時(shí),軟件讀取網(wǎng)絡(luò)物理幀,這個(gè)幀包含的可能是IP數(shù)據(jù)包,也可能是ARP包,其區(qū)分是靠幀的類型字段來(lái)識(shí)別的,若是IP包,則ARP軟件不處理,由IP軟件層來(lái)處理,若是ARP包,則區(qū)分是請(qǐng)求包還是響應(yīng)包,然后根據(jù)兩種情況分別進(jìn)行處理。但不管哪種情況,這個(gè)ARP表具體對(duì)應(yīng)著單片機(jī)的一段內(nèi)存空間。而發(fā)送過(guò)程是由上層軟件觸發(fā)的。例如在具體發(fā)送一個(gè)IP數(shù)據(jù)包時(shí),要搜索ARP表,查找IP地址對(duì)應(yīng)的MAC地址,若找到,則自動(dòng)填充,若沒(méi)找到,則自動(dòng)廣播一個(gè)ARP請(qǐng)求。期待獲得一個(gè)ARP響應(yīng),來(lái)解析對(duì)方的網(wǎng)絡(luò)硬件地址。網(wǎng)絡(luò)層、傳輸層協(xié)議的實(shí)現(xiàn)IP、TCP,UDP是網(wǎng)絡(luò)層、傳輸層的核心協(xié)議,其中TCP,UDP工作在傳輸控制層,而IP工作在網(wǎng)絡(luò)層,這兩層協(xié)議密切配合,實(shí)現(xiàn)數(shù)據(jù)的傳輸。實(shí)際選用傳輸層協(xié)議時(shí),考慮到圖像的數(shù)據(jù)量大,實(shí)時(shí)性要求較高,并且對(duì)數(shù)據(jù)包的丟失要求不是很苛刻,所以選用了用戶數(shù)據(jù)包UDP(UserDatagramProtocol)協(xié)議。即最終把采集的圖像數(shù)據(jù)按UDP協(xié)議的格式打包,再傳給下層IP協(xié)議,最后經(jīng)網(wǎng)絡(luò)接口芯片打包成以太網(wǎng)幀的格式發(fā)送。在系統(tǒng)中,嵌入式芯片SX52及外部接口模塊作為服務(wù)方,完成數(shù)據(jù)的采集和圖像傳輸任務(wù)。

  網(wǎng)絡(luò)儀器的遠(yuǎn)程控制通過(guò)以太網(wǎng)進(jìn)行儀器控制并要經(jīng)過(guò)復(fù)雜的協(xié)議轉(zhuǎn)換和處理,最后發(fā)到以太網(wǎng)上。在這一點(diǎn)上它會(huì)犧牲一些時(shí)間,但優(yōu)點(diǎn)也是很明顯的:它能夠利用現(xiàn)成的全球網(wǎng)在任何地方發(fā)送控制命令。發(fā)送命令時(shí)控制方需要把數(shù)據(jù)按照UDP,IP,ARP和底層的物理網(wǎng)絡(luò)層層打包,最后轉(zhuǎn)換成標(biāo)準(zhǔn)的以太網(wǎng)物理幀,然后通過(guò)路由器、網(wǎng)關(guān)等把數(shù)據(jù)傳送到要控制的主機(jī)?刂品皆诎l(fā)出命令后,目標(biāo)主機(jī)也要進(jìn)行TCP/IP協(xié)議棧的處理,來(lái)還原數(shù)據(jù)所以必須根據(jù)協(xié)議的規(guī)定,把攜帶命令的數(shù)據(jù)包層層拆包,最后把命令解析出來(lái),然后根據(jù)命令進(jìn)行儀器的控制。最后嵌入式網(wǎng)絡(luò)圖像采集系統(tǒng)的協(xié)議實(shí)現(xiàn)流程如所示:開機(jī)后,系統(tǒng)進(jìn)行初始化操作,主要是對(duì)網(wǎng)絡(luò)芯片進(jìn)行配置。配置完后,系統(tǒng)處于等待狀態(tài),直到客戶方有數(shù)據(jù)發(fā)送來(lái)。數(shù)據(jù)的接收是通過(guò)網(wǎng)絡(luò)接口芯片實(shí)現(xiàn)的,它能夠?qū)W(wǎng)絡(luò)上的物理幀進(jìn)行包過(guò)濾,即只接收和自己硬件地址一樣的物理幀,而扔掉與自己的硬件地址不一樣的物理幀。當(dāng)然網(wǎng)絡(luò)接口芯片也可配置成混雜模式,這時(shí),網(wǎng)絡(luò)接口芯片能接收局域網(wǎng)上的所有網(wǎng)絡(luò)包,然后把所有的包交給上層協(xié)議處理,由上層協(xié)議軟件交給不同的協(xié)議層處理。

  系統(tǒng)客戶端軟件的設(shè)計(jì)C/S(Client/Server)模式又稱C/S結(jié)構(gòu),是軟件系統(tǒng)體系結(jié)構(gòu)的一種。C/S模式是基于企業(yè)內(nèi)部網(wǎng)絡(luò)的應(yīng)用系統(tǒng)。網(wǎng)絡(luò)通信大多是基于C/S模式的,即客戶服務(wù)器模式。嵌入式系統(tǒng)為服務(wù)方,等待客戶的請(qǐng)求,提供數(shù)據(jù)和信息。客戶方是控制方,根據(jù)需要可編制瀏覽控制軟件實(shí)現(xiàn)信息的交互。所以在PC機(jī)上編制的客戶軟件,除了能實(shí)現(xiàn)控制遠(yuǎn)方服務(wù)器進(jìn)行數(shù)據(jù)采集和圖像傳輸外,還能對(duì)傳輸過(guò)來(lái)的圖像進(jìn)行重構(gòu)再現(xiàn)。其過(guò)程是:客戶方提出請(qǐng)求,對(duì)應(yīng)著雙方約定好的命令。服務(wù)方在驗(yàn)證命令后,開始進(jìn)行圖像的采集和發(fā)送,客戶方負(fù)責(zé)數(shù)據(jù)的收集和圖像的重現(xiàn)。在硬件上SX52控制DB200,使它完成圖像的采集,采集完成后存儲(chǔ)在SRAM中,然后SX52可以根據(jù)需要把采集的圖像數(shù)據(jù)經(jīng)過(guò)協(xié)議棧處理,再通過(guò)底層的RTL8019AS發(fā)送到因特網(wǎng)上,完成數(shù)據(jù)的網(wǎng)絡(luò)發(fā)送。這樣通過(guò)網(wǎng)絡(luò)就可以在任何連網(wǎng)的地方進(jìn)行圖像監(jiān)控了。雙方進(jìn)行一幀圖像的交換流程如所示。結(jié)束語(yǔ)探討了嵌入式網(wǎng)絡(luò)儀器的設(shè)計(jì)和實(shí)現(xiàn),并以遠(yuǎn)程網(wǎng)絡(luò)圖像監(jiān)控系統(tǒng)為例,從硬件、軟件兩部分進(jìn)行了系統(tǒng)的結(jié)構(gòu)和具體實(shí)現(xiàn)。遠(yuǎn)程網(wǎng)絡(luò)圖像監(jiān)控系統(tǒng)成功實(shí)現(xiàn)了用微控器進(jìn)行系統(tǒng)控制,并能同時(shí)接入Internet,實(shí)現(xiàn)圖像的遠(yuǎn)程實(shí)時(shí)傳送,具備遠(yuǎn)程網(wǎng)絡(luò)控制、圖像傳輸、信息發(fā)布的功能。系統(tǒng)還可以通過(guò)轉(zhuǎn)接設(shè)備接入無(wú)線局域網(wǎng),能進(jìn)行無(wú)線數(shù)據(jù)傳輸,從而使嵌入式網(wǎng)絡(luò)化儀器的應(yīng)用更方便、更靈活。

  【中國(guó)糧油儀器在線】部分信息來(lái)自互聯(lián)網(wǎng),力求安全及時(shí)、準(zhǔn)確無(wú)誤,目的在于傳遞更多信息,并不代表本網(wǎng)對(duì)其觀點(diǎn)贊同或?qū)ζ湔鎸?shí)性負(fù)責(zé)。