新聞中心

EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 基于Rabbit2000的嵌入式網(wǎng)絡(luò)智能測控系統(tǒng)

基于Rabbit2000的嵌入式網(wǎng)絡(luò)智能測控系統(tǒng)

作者: 時(shí)間:2008-01-30 來源:網(wǎng)絡(luò) 收藏
摘要:文章介紹了以微處理器為核心的測控的基本工作原理及其軟硬件設(shè)計(jì)。該采用模塊化和式分布技術(shù),具有先進(jìn)的通信能力和微處理器控制能力,編程快捷,組網(wǎng)能力強(qiáng),通信傳輸可靠,實(shí)時(shí)性高,極易推廣使用。
關(guān)鍵詞;測控

1 引言

Internet技術(shù)的飛速進(jìn)展,使得分組交換技術(shù)的通信性能、通信質(zhì)量和可靠性得到穩(wěn)步提高,8位、16位單片機(jī)的設(shè)備(如儀器儀表、數(shù)據(jù)采集和顯示、過程控制、工業(yè)自動(dòng)化等)的實(shí)時(shí)應(yīng)用,測控系統(tǒng)正在走向智能化[1]。這就要求企業(yè)從現(xiàn)場控制層到管理層能實(shí)現(xiàn)全方位的無縫信息集成, 實(shí)現(xiàn)遠(yuǎn)程維護(hù)、智能診斷以及遠(yuǎn)程管理功能[2], 提供一個(gè)開放的基礎(chǔ)構(gòu)架,并具有高可靠性、分散控制、集中監(jiān)視和管理的功能。

Z-World[3]公司以微處理器為核心研制了一系列系統(tǒng)模塊,使用這些模塊能夠?qū)崿F(xiàn)對(duì)集成了網(wǎng)絡(luò)的系統(tǒng)進(jìn)行快速開發(fā)。本系統(tǒng)以Rabbit2000微處理器為核心,采用模塊化和智能式的分布技術(shù)設(shè)計(jì)嵌入式網(wǎng)絡(luò)智能測控系統(tǒng)。

2 Rabbit2000的性能特點(diǎn)

Rabbit2000是Rabbit半導(dǎo)體公司為嵌入式環(huán)境設(shè)計(jì)的高性能低價(jià)位的8位微處理器,以其C語言友好指令集和快速數(shù)字處理功能而受到矚目。它和Z80系列微處理器有相似的結(jié)構(gòu)和高度的兼容性,但性能有很大的提高。具有多達(dá)40個(gè)通用I/O引腳。內(nèi)建日歷、時(shí)鐘、看門狗、定時(shí)器、多級(jí)中斷、雙DMA通道,可外擴(kuò)4~8MB Flash,用于數(shù)據(jù)存儲(chǔ)。對(duì)于8位總線的微處理器,Rabbit具有很高的計(jì)算速度,這對(duì)于實(shí)時(shí)操作系統(tǒng)是極為重要的。對(duì)于Rabbit2000,傳統(tǒng)的微處理器硬件和軟件的開發(fā)已被簡化,不再需要在線仿真。用1根接口電纜把PC串行口和Rabbit2000的目標(biāo)系統(tǒng)連接起來就可實(shí)現(xiàn)軟件的開發(fā)。Rabbit2000具有4個(gè)串行端口,具有很強(qiáng)的組網(wǎng)通信能力。它能精確地產(chǎn)生脈沖和邊沿,可實(shí)現(xiàn)多優(yōu)先級(jí)中斷。處理器速度和功耗在程序控制之下,在處理器持續(xù)執(zhí)行指令的時(shí)候,能使用超低功耗模式實(shí)現(xiàn)計(jì)算和執(zhí)行邏輯檢測,為實(shí)現(xiàn)低功耗設(shè)計(jì)提供了方便。

Rabbit 2000芯片上外設(shè)包括5個(gè)8位并行I/O端口、4個(gè)串行端口、1個(gè)子端口、5個(gè)8位定時(shí)器、1個(gè)10位定時(shí)器、精確脈沖發(fā)生硬件和電池支持的RTC。其串口可采用同步或異步傳輸方式,采用29.4912MHz的系統(tǒng)頻率,異步傳輸速率最高可達(dá)91.6kbps。

Rabbit2000以Z-World’s公司的C語言開發(fā)系統(tǒng)Dynamic C[4]編譯器為其開發(fā)工具。其特點(diǎn)是有1個(gè)交互式編譯程序、編輯程序和調(diào)試程序,通過1個(gè)10線的簡單接口可實(shí)現(xiàn)EPROM編程和在線仿真。此外,Rabbit2000可以運(yùn)行流行的Internet協(xié)議棧,如HTTP、SMTP、POP3、TCP、UDP、ICMP、IP等,還可以在外接一個(gè)以太網(wǎng)控制芯片RTL8019的情況下,實(shí)現(xiàn)Ethernet (IEEE802.3)協(xié)議處理,使該系統(tǒng)可以直接通過RJ-45連到以太網(wǎng)上。

3 嵌入式網(wǎng)絡(luò)智能測控系統(tǒng)設(shè)計(jì)

3.1 測控設(shè)備硬件結(jié)構(gòu)

對(duì)于所要實(shí)現(xiàn)的嵌入式系統(tǒng),系統(tǒng)硬件設(shè)計(jì)是圍繞Rabbit 2000微處理器來進(jìn)行的,包括存儲(chǔ)器、處理器、振蕩晶體、標(biāo)準(zhǔn)編程口、以太網(wǎng)接口、串行接口(RS232、RS485)、數(shù)字量I/O(DI/DO)接口、模擬量I/O(AI/AO)接口、擴(kuò)展接口,在一些情況下還要包括功率控制器和系統(tǒng)供電設(shè)計(jì),具體應(yīng)用時(shí)可根據(jù)不同的應(yīng)用要求對(duì)各種功能模塊進(jìn)行適當(dāng)增減。圖1為硬件實(shí)現(xiàn)框圖。

圖1 網(wǎng)絡(luò)智能測控裝置(MCD)

3.2 實(shí)現(xiàn)方案

圖1所示的測控裝置可實(shí)現(xiàn)多種監(jiān)測和控制功能,并通過以太網(wǎng)接口(RJ-45接口)連到Hub后由路由器接入Internet構(gòu)成網(wǎng)絡(luò)智能測控系統(tǒng)。如圖2所示。

圖2 網(wǎng)絡(luò)智能測控系統(tǒng)

本系統(tǒng)中,每臺(tái)主機(jī)和測控裝置(MCD)都有自己獨(dú)立的IP地址,互相之間可進(jìn)行通信,遠(yuǎn)程主機(jī)(Remote PC)可通過撥號(hào)連接(圖中所示就是這種情況)或通過以太網(wǎng)網(wǎng)關(guān)接入Internet來訪問測控裝置,使用其提供的服務(wù)或?qū)ζ溥M(jìn)行系統(tǒng)編程和遠(yuǎn)程啟動(dòng)。測控裝置具有一般單片機(jī)系統(tǒng)的所有測控能力,并且可根據(jù)需要提供各種網(wǎng)絡(luò)服務(wù),包括:作為一臺(tái)簡單的Web服務(wù)器,提供簡單的網(wǎng)頁供外部主機(jī)訪問,提供可被遠(yuǎn)程主機(jī)修改的表格資料;提供文件傳輸服務(wù)(FTP),可作為FTP客戶端或服務(wù)器;提供SMTP(簡單郵件傳輸協(xié)議)服務(wù),自動(dòng)或定時(shí)向指定的電子郵箱發(fā)送E-mail,以傳遞系統(tǒng)的實(shí)時(shí)數(shù)據(jù)或報(bào)警信息;提供遠(yuǎn)程登錄(TELNET)服務(wù)以及其他的Internet服務(wù)。

3.3 工作過程

圖2中測控裝置的主要任務(wù)是與探測器通信,以獲取現(xiàn)場信息并對(duì)信息進(jìn)行集中處理后, Rabbit2000的串行口將這些信息傳至PC,或由PC來查詢。PC機(jī)在獲取測控裝置上的報(bào)警信息后,按一定的協(xié)議格式對(duì)報(bào)警信息進(jìn)行包裝,并將之傳送到遠(yuǎn)程PC上,這樣形成一個(gè)星形的網(wǎng)絡(luò)結(jié)構(gòu),以此構(gòu)成測控信息的局域網(wǎng)

系統(tǒng)有兩種類型的網(wǎng)絡(luò)節(jié)點(diǎn):一種是與PC進(jìn)行通信的節(jié)點(diǎn);另一種是測控裝置與探測器進(jìn)行通信的探測器節(jié)點(diǎn)。傳輸協(xié)議采用規(guī)范化數(shù)據(jù)結(jié)構(gòu),設(shè)有BBC校驗(yàn)位,且采用軟件容錯(cuò)技術(shù)。管理軟件設(shè)有容錯(cuò)陷阱,有效地消除隨機(jī)干擾引起的死機(jī)或誤報(bào)現(xiàn)象。主機(jī)為PC機(jī),其網(wǎng)絡(luò)ID號(hào)為0,每個(gè)測控裝置都有1個(gè)唯一的大于0的ID號(hào)。PC與測控裝置通信采用標(biāo)準(zhǔn)的協(xié)議格式,它所發(fā)出的信息幀中攜有目的控制器的ID號(hào)。如果目的控制器的ID號(hào)為0,則為廣播信息,否則只有和目的控制器的ID號(hào)相同的控制器才接收該幀并對(duì)幀格式和CRC檢驗(yàn)和進(jìn)行判斷。在緊急報(bào)警時(shí),探測器的報(bào)警信息中攜有地址編號(hào)和時(shí)間信息,而在自動(dòng)故障報(bào)警時(shí),報(bào)警信息由故障地址編號(hào)和故障等級(jí)信息組成。控制器有2種運(yùn)行模式:模式A是雙向運(yùn)行,收到報(bào)警信息時(shí)立即將該信息轉(zhuǎn)發(fā)給PC機(jī);模式B是單向運(yùn)行,收到報(bào)警信息后首先在控制器的數(shù)據(jù)庫中保存該條信息。當(dāng)PC機(jī)來查詢火警信息時(shí)才發(fā)送給PC機(jī)。

PC機(jī)由后臺(tái)的基于Winsock的網(wǎng)絡(luò)程序?qū)?bào)警信息發(fā)往外部網(wǎng)絡(luò)。在Rabbit2000的協(xié)議棧中,對(duì)TCP/IP的實(shí)現(xiàn)是通過Dynamic C提供的TCP/IP應(yīng)用程序接口來實(shí)現(xiàn)的:

#define MY-GATEWAY “202.196.187.1” //網(wǎng)關(guān)

#define MY-IP-ADDRESS “202.196.187.28” //IP地址

#define MY-NETMASK “255.255.255.0” //子網(wǎng)掩碼

#memmap xmem //代碼存儲(chǔ)在擴(kuò)展存儲(chǔ)區(qū)

#use “dcritcp.lib” //數(shù)據(jù)庫

Sock_init() //TCP連接初始化

tcp_reserveport(MY_PORT) //TCP連接保持

tcp_open(socket,0,ip,PORT,NULL) //主機(jī)建立會(huì)話

tcp_listen(socket,MY_PORT,0,0,NULL,0) //監(jiān)聽端口

sock_established(socket) //建立TCP連接

sock_dataready(socket) //取得等待輸出的字符數(shù)

sock_gets(socket,buffer,len) //從套接字中讀取字符串

sock_twrites(socket,buffer,len) //向套接字中寫入字符串

sock_close(socket) //連接斷開

圖3 系統(tǒng)程序執(zhí)行過程圖

系統(tǒng)的工作過程如圖3。

通過安裝在上位機(jī)中的Web瀏覽器,在客戶端的瀏覽器中輸入現(xiàn)場設(shè)備的IP地址(202.196.187.28),即可獲得對(duì)現(xiàn)場設(shè)備的訪問權(quán),可直接訪問接入工業(yè)以太網(wǎng)的現(xiàn)場設(shè)備,獲得監(jiān)測數(shù)據(jù),如圖4所示。

圖4 監(jiān)控頁面

4結(jié)論

隨著以太網(wǎng)技術(shù)的不斷發(fā)展,嵌入式系統(tǒng)與以太網(wǎng)相結(jié)合應(yīng)用于工業(yè)控制領(lǐng)域是一種發(fā)展趨勢。Rabbit2000微處理器在同類8位微處理器中具有功能強(qiáng)、成本低、速度快等特點(diǎn),同時(shí)提供了一套嵌入式開發(fā)工具以及網(wǎng)絡(luò)支持的Dynamic C,使得網(wǎng)絡(luò)功能開發(fā)簡便、快捷,也證明了將嵌入式系統(tǒng)和以太網(wǎng)應(yīng)用于工業(yè)控制的可行性和實(shí)用性。

本系統(tǒng)的應(yīng)用較廣:

1)智能大廈。隨著計(jì)算機(jī)的普及應(yīng)用以及網(wǎng)絡(luò)和自動(dòng)化技術(shù)的發(fā)展,大廈內(nèi)所有公共設(shè)備都將采用嵌人式智能測控系統(tǒng)來提高服務(wù)能力。

2)工業(yè)自動(dòng)化。工業(yè)現(xiàn)場應(yīng)用了大量的8、16、32位嵌入式微控制器,其網(wǎng)絡(luò)化是提高生產(chǎn)效率和產(chǎn)品質(zhì)量、減少人力資源的主要途徑,在工業(yè)過程控制、電力系統(tǒng)、電網(wǎng)安全、電網(wǎng)設(shè)備監(jiān)測、石油化工等系統(tǒng)中具有廣闊的應(yīng)用前景。

3)智能儀器。根據(jù)不同要求,只需對(duì)軟硬件做部分修改,簡化系統(tǒng),大大地提高了開發(fā)效率,具有廣闊的應(yīng)用空間。

4)礦井智能監(jiān)測。能解決礦山網(wǎng)絡(luò)傳輸中有關(guān)安全信息數(shù)據(jù)的采集問題,應(yīng)用前景廣闊。

本文作者創(chuàng)新點(diǎn):1. 64路開關(guān)量輸入、8路模擬量輸入及16路開關(guān)量輸出,反映敏捷;2.輸入、輸出全部電氣隔離、具有聲光報(bào)警的功能;3. 控制器有2種運(yùn)行模式:雙向運(yùn)行和單向運(yùn)行,保證信息傳遞的目的性;4. 支持Dynamic C,支持多任務(wù),可以滿足各種復(fù)雜控制、運(yùn)算的要求及遠(yuǎn)程在線編程、維護(hù);5. 與同類產(chǎn)品相比,具有功能齊全,性能可靠,使用方便等特點(diǎn)。

參考文獻(xiàn)

[1]俞新祥,翁一武.基于Internet 的分布式供能遠(yuǎn)程監(jiān)控系統(tǒng)[J].微計(jì)算機(jī)信息,2006,7-1:4-6

[2]鮑吉龍,葉平.工業(yè)監(jiān)控系統(tǒng)的網(wǎng)絡(luò)化發(fā)展[J].微計(jì)算機(jī)信息,2006,6-1:66-68

[3]Z-World.Rabbit2000 Microprocessor User’s Manual.1999.

[4]Z-World. Dynamic C Premier for Rabbit Semiconductor Microprocessors(Integrated C Development System User’s Manua1)[Z].1999

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉