集成WSN、載波通信和多種現(xiàn)場(chǎng)總線的網(wǎng)關(guān)設(shè)計(jì)
3.1 BootLoader與Linux
BootLoader是系統(tǒng)加電后運(yùn)行的一小段程序,用來(lái)初始化硬件設(shè)備、建立內(nèi)存空間映射,為調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境,同時(shí)也將啟動(dòng)內(nèi)核所需要的一些信息通過(guò)相關(guān)機(jī)制傳遞給內(nèi)核,并引導(dǎo)和加載內(nèi)核。它的主要功能是完成硬件設(shè)備的初始化、操作系統(tǒng)代碼的搬運(yùn),并提供一個(gè)控制臺(tái)及一個(gè)命令集在操作系統(tǒng)運(yùn)行前操控硬件設(shè)備。
Linux 2.6在內(nèi)核主體中加入了提高中斷性能和調(diào)度響應(yīng)時(shí)間的改進(jìn),其中有三個(gè)最顯著的改進(jìn):采用可搶占內(nèi)核、更加有效的調(diào)度算法以及同步性的提高。
3.2 通信網(wǎng)關(guān)
網(wǎng)關(guān)的核心功能是完成協(xié)議轉(zhuǎn)換和數(shù)據(jù)中轉(zhuǎn),即將ZigBee和載波協(xié)議的數(shù)據(jù)轉(zhuǎn)成TCP/IP格式的數(shù)據(jù),并在ZigBee網(wǎng)絡(luò)、Modbus、以太網(wǎng)、電力載波通信和GPRS遠(yuǎn)程通信網(wǎng)之間無(wú)障礙的交互數(shù)據(jù)。
網(wǎng)關(guān)軟件包括:數(shù)據(jù)采集、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)顯示(測(cè)試用)和遠(yuǎn)程數(shù)據(jù)傳輸。數(shù)據(jù)采集功能負(fù)責(zé)獲取從串口傳過(guò)來(lái)的數(shù)據(jù)。具體過(guò)程是主線程中初始化并打開(kāi)串口,建立串口接收信號(hào),在信號(hào)處理函數(shù)中。處理接收到的數(shù)據(jù)。當(dāng)接到數(shù)據(jù)包時(shí)產(chǎn)生信號(hào),在信號(hào)處理函數(shù)里調(diào)用協(xié)議轉(zhuǎn)換程序按照Z(yǔ)igBee,Modbus和載波協(xié)議的定義解析數(shù)據(jù),解析出原始數(shù)據(jù)中的節(jié)點(diǎn)號(hào)、傳感器模擬量、開(kāi)關(guān)量值等信息。整個(gè)網(wǎng)關(guān)對(duì)多種協(xié)議的處理采用事件通知和分發(fā)機(jī)制,如圖5所示。利用多線程技術(shù),將數(shù)據(jù)處理部分、數(shù)據(jù)存儲(chǔ)部分分別放在單獨(dú)的線程中處理,以提高程序的運(yùn)行速度。通過(guò)在Linux上移植了嵌入式數(shù)據(jù)庫(kù)系統(tǒng),可以有效的實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)的存儲(chǔ)。本文引用地址:http://2s4d.com/article/155140.htm
網(wǎng)關(guān)通過(guò)GPRS與遠(yuǎn)程主站通信,主站以自身設(shè)置的通信協(xié)議發(fā)送指令,指令下達(dá)到網(wǎng)關(guān)后,網(wǎng)關(guān)解析主站的指令并獲取操作對(duì)象,依據(jù)操作對(duì)象選取載波協(xié)議或者ZigBee,對(duì)指令進(jìn)行再封裝,并下發(fā)指令至操作對(duì)象,等待對(duì)象返回信息,在獲得對(duì)象的信息后,根據(jù)選取的協(xié)議解析對(duì)象數(shù)據(jù),使用主站協(xié)議重新對(duì)該數(shù)據(jù)進(jìn)行封裝,而后將數(shù)據(jù)上傳至主站。
網(wǎng)關(guān)是建立在傳輸層以上的協(xié)議轉(zhuǎn)換器,通常它連接兩個(gè)或多個(gè)相互獨(dú)立的網(wǎng)絡(luò),每接收一種協(xié)議的數(shù)據(jù)包后,在轉(zhuǎn)發(fā)之前將它轉(zhuǎn)換為另一種協(xié)議的格式。該網(wǎng)關(guān)不僅實(shí)現(xiàn)了4種協(xié)議的轉(zhuǎn)換和4種工控網(wǎng)絡(luò)的互聯(lián),而且通過(guò)TCP/IP協(xié)議連入工業(yè)以太網(wǎng),實(shí)現(xiàn)了與工業(yè)以太網(wǎng)之間的數(shù)據(jù)互傳。通過(guò)在Linux上移植了嵌入式Web服務(wù)器功能,使操作人員能夠通過(guò)網(wǎng)頁(yè)遠(yuǎn)程監(jiān)控網(wǎng)絡(luò)節(jié)點(diǎn)運(yùn)行狀態(tài)。
4 結(jié)語(yǔ)
該系統(tǒng)將WSN、電力線載波、以太網(wǎng)和公共通信網(wǎng)絡(luò)有機(jī)地結(jié)合在一起,將信息匯集之后通過(guò)以太網(wǎng)接口或者GPRS達(dá)到遠(yuǎn)程傳輸?shù)哪康?。通過(guò)在一個(gè)軟硬件平臺(tái)上提供了工業(yè)控制中常見(jiàn)的多種總線和網(wǎng)絡(luò)的接口,能夠支持多種應(yīng)用模式。該設(shè)計(jì)適合于現(xiàn)實(shí)應(yīng)用中的多種需求,可以根據(jù)具體應(yīng)用進(jìn)行快速的裁剪和配置,具有實(shí)際的應(yīng)用價(jià)值。
評(píng)論