VxWorks下基于緩沖隊列的網(wǎng)絡通信
1引言
本文引用地址:http://www.ex-cimer.com/article/157520.htm現(xiàn)代監(jiān)控系統(tǒng)的監(jiān)控對象越來越復雜,越來越分散,信號采集終端呈現(xiàn)分布式趨勢。各個信號采集終端經(jīng)常用小巧靈便、易于控制和性價比高的嵌入式系統(tǒng)構成相對獨立的數(shù)據(jù)采集系統(tǒng),然后通過網(wǎng)絡將數(shù)據(jù)傳輸?shù)缴衔粰C服務器進行統(tǒng)一分析處理 [1]。負責數(shù)據(jù)傳輸?shù)?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/網(wǎng)絡通信">網(wǎng)絡通信協(xié)議和軟件在整個監(jiān)控系統(tǒng)中起著十分重要的作用,然而周圍環(huán)境的電磁干擾、上位機 CPU被占用等情況可能導致網(wǎng)絡阻塞、連接中斷等,如果軟件不能及時發(fā)現(xiàn)故障并做出相應的處理,將會直接影響到整個系統(tǒng)的穩(wěn)定性,導致數(shù)據(jù)采集中斷,甚至使系統(tǒng)癱瘓。利用實時操作系統(tǒng) VxWorks對多任務的良好支持,本文提出了一種基于緩沖隊列的網(wǎng)絡通信模式,并添加了網(wǎng)絡狀態(tài)監(jiān)測功能,使系統(tǒng)能夠快速的對網(wǎng)絡斷線等故障做出響應,提高了網(wǎng)絡通信的穩(wěn)定性和可靠性。
2 VxWorks及分布式數(shù)據(jù)采集系統(tǒng)介紹
VxWorks是美國風河( Wind River Systems)公司開發(fā)的一套具有微內核、可裁減的高性能實時操作系統(tǒng),適用于當下所有流行的目標 CPU平臺,支持廣泛的網(wǎng)絡通信協(xié)議,為開發(fā)者提供了高效的實時多任務調度、終端管理、實時的系統(tǒng)資源及實時的任務間通信功能,是嵌入式領域中應用最多的實時操作系統(tǒng)之一[2]。VxWorks采用了與 4.4BSD TCP/IP兼容的實時網(wǎng)絡協(xié)議棧,使得網(wǎng)絡開發(fā)變得易于進行和方便移植。利用 VxWorks對多任務和Socket的良好支持,可以方便地實現(xiàn)網(wǎng)絡通訊。
圖1是我們開發(fā)的一個基于 TCP/IP協(xié)議的分布式監(jiān)測系統(tǒng)的結構示意圖。該系統(tǒng)主要可分為三個層次結構:服務器、采樣節(jié)點、傳感器。傳感器負責采集信號,將物理信號轉換為電信號;采樣節(jié)點首先對信號進行預處理,然后通過 A/D芯片將信號轉換為數(shù)字信號,最后通過網(wǎng)絡傳送給服務器;服務器負責數(shù)據(jù)的接收、分析、存儲并顯示結果。服務器和采樣節(jié)點之間通過TCP/IP協(xié)議進行數(shù)據(jù)的傳輸與接收,網(wǎng)絡通訊程序的質量直接影響著整個系統(tǒng)的穩(wěn)定性和可靠性。TCP/IP協(xié)議是目前廣泛采用的一組完整的網(wǎng)絡通信協(xié)議,可以用在各種各樣的信道和底層協(xié)議之上,是一組不基于任何特定硬件平臺而可實現(xiàn)異種機互聯(lián)的網(wǎng)絡通信協(xié)議,在網(wǎng)絡通信中被廣泛應用[3-4]。
評論