Lonworks網絡虛擬監(jiān)測系統(tǒng)研究
摘要:網絡技術應用到虛擬儀器系統(tǒng)是虛擬儀器發(fā)展的趨勢。文中介紹了采用LabVIEW為開發(fā)平臺,用Lonworks網絡作為數據通道來實現遠程監(jiān)測的Lonworks網絡虛擬監(jiān)測系統(tǒng)的設計方法。同時詳細介紹了虛擬儀器與Lonworks網絡的接口設計和系統(tǒng)通信的實現方法。
本文引用地址:http://www.bjwjmy.cn/article/161781.htm傳統(tǒng)儀器,無論是早期的模擬儀器,還是現在的數字化智能儀器,雖然它們的功能日益完善和強大,但是所有的功能塊都以硬件的形式存在,這使對它們的開發(fā)和應用都缺乏靈活性。虛擬儀器的出現是測試技術與計算機深層次的結合,從而使測試技術上升到一個新的層次。虛擬儀器在工程應用方面具有突出的優(yōu)勢,它可在通用硬件平臺確定之后,用軟件取代傳統(tǒng)儀器中的硬件來完成儀器的功能,儀器的功能可由用戶根據需要通過軟件來定義,甚至能完成傳統(tǒng)儀器因工藝和制造水平的限制而難以完成的測試工作。隨著通信技術和網絡技術的不斷發(fā)展,將網絡技術應用到虛擬儀器領域,以形成網絡化虛擬儀器是虛擬儀器發(fā)展的一個趨勢。本文介紹了一種用于Lonworks網絡(簡稱LON網)的虛擬儀器監(jiān)測系統(tǒng),給出了采用LabVIEW軟件開發(fā)平臺,并用Lonworks網絡作為信號傳輸通道來實現Lonworks網絡與虛擬儀器的接口設計以及通信方式。
1 Lonworks網絡虛擬儀器系統(tǒng)的結構
圖1所示是一種網絡虛擬儀器系統(tǒng)的結構框圖。圖中,虛擬儀器由一臺PC機和LabVIEW開發(fā)的應用軟件構成。LabVIEW 是一種基于圖形化編程語言的虛擬儀器軟件開發(fā)工具,它提供有豐富的功能模塊,可以支持GPIB、PXI、VXI、串口等多種總線標準。用戶可利用不同的模塊組合來編制圖形化軟件流程圖,以實現多種測試功能。該系統(tǒng)操作面板設計靈活,且不受“標準件”和“工藝”的限制。
Lonworks總線是Echelon公司研制的一種局部操作網絡,是一種串行數字通信鏈路。它支持雙絞線、電力線、光纖、同軸電纜等通信媒介,并支持多種網絡拓撲,可用于建立生產領域中現場設備之間以及更高層次控制過程設備之間的聯(lián)系。Neuron神經元芯片是Lonworks系統(tǒng)設備的核心器件。在Lon-works網絡中,以Neuron芯片為核心的智能節(jié)點主要完成各現場設備的信號采集和控制,一個Neuron芯片可連接多個物理I/O設備,節(jié)點掛接在lonworks總線上即可形成現場測控網絡。通過Neuron芯片和LonTalk通信協(xié)議便可實現各節(jié)點之間以及節(jié)點和上位機間的通信。由于總線具有串行特征,同時LabVIEW又提供了對串口的支持,而且PC機一般都帶有串行接口,因此,可以通過串口來實現虛擬儀器與Lonworks網絡的交互,并通過操作軟面板形成控制信號,以控制給定的節(jié)點,然后由節(jié)點將現場設備的狀態(tài)信號送到虛擬儀器進行顯示和分析。
2 虛擬儀器與Lonworks接口卡的設計
雖然Neuron芯片的I/O引腳提供了RS232半雙工異步串行工作方式,但是在傳輸速率、數據格式和通信方式方面仍有較大的局限性。網絡上節(jié)點間的通信是通過LonTalk通信協(xié)議用網絡變量或顯式消息報文的形式實現的。為了實現更靈活的應用,筆者設計了一塊LON-RS232接口卡以實現RS232協(xié)議與LonTalk協(xié)議的相互轉換,從而實現高速率、全雙工的通信。該接口卡的硬件結構如圖2所示。
該接口卡包括51協(xié)議轉換模塊、LON網接口模塊和RS232通信模塊。接口卡采用雙CPU技術。51協(xié)議轉換模塊由P89C51單片機構成,P89C51也是接口卡的主CPU,用于完成RS232標準信號與LonTalk協(xié)議之間的轉換。接口卡向上經RS232通信模塊與虛擬儀器進行通信;向下與TMPN3150進行并口通信。
LON網接口模塊由TMPN3150芯片、收發(fā)器FTT-10A、程序存儲器、數據存儲器等組成,該模塊可將主CPU接收的報文解析成LonTalk協(xié)議報文,然后通過收發(fā)器傳到LON網,或將從LON網上收到的LonTalk協(xié)議報文轉發(fā)給主CPU。TMPN3150芯片通過11個I/O口(IO0~IO10)與P89C51進行連接,它采用并行I/O模式的從A工作方式。在這種方式下,IO0~IO7將作為雙向數據線與P89C51的P0.0~P0.7連接,IO8作為片選信號線連接到P2.0腳,IO9為讀寫信號線,連接于P89C51的WR腳,IO10為握手信號線,接P2.1腳,主機(P89C51)和從機(TMPN3150)之間的數據傳輸通過虛擬的寫令牌傳遞協(xié)議來實現,擁有令牌的一方具有對數據線的寫控制權。
RS232通信模塊由RS232接口芯片完成串口通信網絡的鏈路和協(xié)議。它由P89C51的UART進行驅動,采用中斷驅動方式。
3 系統(tǒng)通信方式的實現
通常,虛擬儀器測試的物理量較少,而且被測試的設備比較集中,因而信號通道一般采用并行方式。但是在設計網絡虛擬儀器系統(tǒng)時,除了要解決接口問題,還要考慮由于網絡的多種拓撲結構而要解決虛擬儀器與各個節(jié)點的有效通信問題,如尋址信息、控制信息以及數據傳輸等。
3.1 控制信號的傳輸
一個Lonworks網絡包括多個節(jié)點,每個節(jié)點可以監(jiān)測多個信號,即一個節(jié)點有多個測量通道。當虛擬儀器要獲取某個被測量數據時,必須同時指定該被測量所在的節(jié)點和通道??稍谔摂M儀器的軟面板上根據實際要測量的物理量設置選擇開關,當選中某一開關時,這樣程序將根據預先的設置自動形成包含節(jié)點號、通道號的控制信息,其消息格式包括節(jié)點號、通道號、控制命令代號共3個字節(jié)。經過接口卡轉換后,節(jié)點號、通道號、控制命令代號將被寫入LonTalk顯式消息報文數據的前三個字節(jié),報文消息代碼為CONTRL_MSG,該報文以廣播方式在LON網上傳播。具體實現代碼如下:
IO_0 parallel slave s_bus; //定義并口I/O對象
#define DATA_SIZE 255
Typedef struct
{
unsigned int length;
unsigned int data[255];
} pio; //定義并口通信結構
far pio p_in;
msg_tag tag_out0;
評論