基于FPGA的LON網絡高速智能節(jié)點的設計
1 概述
LonWorks現(xiàn)場總線(簡稱LON總線)是美國Echelon公司推出的局部操作網絡,為集散式監(jiān)控系統(tǒng)提供了很強的實現(xiàn)手段,成為當今流行的現(xiàn)場總線技術之一?,F(xiàn)在的測控系統(tǒng)中,連接在現(xiàn)場總線網絡上的每一個節(jié)點,即傳感器、變送器、執(zhí)行器等都不再是單功能的傳統(tǒng)儀表,而是具有數(shù)據采集、轉換、控制、計算、報警、診斷及數(shù)字通訊等功能的智能化設備(智能節(jié)點)連接在網絡上的各種智能現(xiàn)場設備共享總線信道,進行數(shù)據和信息交換,相互協(xié)調工作組成一個完整的現(xiàn)場總線控制系統(tǒng)。LON總線技術使用開放式的通信協(xié)議LonTalk,為設備之間交換控制狀態(tài)信息建立了一個通用標準并,在硬件芯片的支持下實現(xiàn)了實時性和接口的直觀、簡潔的現(xiàn)場總線的應用要求。在LON總線技術中所有節(jié)點都包括一個用以實現(xiàn)通信管理、輸入、輸出和控制等功能的神經元芯片(Neuron Chip)-- LON總線技術的核心,它不僅是LON總線的通信處理器,也是數(shù)據采集和控制的通用處理器,LON總線技術中所有網絡的操作實際上都是通過它來完成的。因此網絡中節(jié)點的設計是實現(xiàn)LON總線技術的一個關鍵所在。
2 智能節(jié)點開發(fā)的一般方法
智能節(jié)點是控制網絡中分布在現(xiàn)場級的基本智能單元,主要用于接受和處理來自傳感器的輸入數(shù)據,執(zhí)行通信和控制任務以及控制執(zhí)行起操作等。智能節(jié)點中的核心技術是LONTALK協(xié)議和神經元芯片。智能節(jié)點的開發(fā)分為兩類:一類是利用神經元芯片完成所有的工作(包括通信和用戶應用程序),節(jié)點中不再包含其他處理器。這類智能節(jié)點成為基于神經元芯片的節(jié)點。另一類是只利用神經元芯片完成通信工作,而用戶的應用程序由其他的處理器(如微處理器、微控制器或PC機來完成)這種智能節(jié)點成為基于主機的節(jié)點。
(1) 以Neuron 芯片為核心的控制節(jié)點
圖1為以Neuron芯片為核心的控制節(jié)點的結構框圖。
神經元芯片是一組復雜的VLSI器件,通過獨特的硬件固件相結合技術,使一個Neuron芯片幾乎包含一個現(xiàn)場節(jié)點的大部分功能若加上收發(fā)器就可以構成一個典型的現(xiàn)場控制節(jié)點。
此設計方法由于Neuron芯片是8位總線,目前只支持最高主頻是10MHz,因此它能完成的功能也十分有限,對于一些復雜的控制如帶有PID算法的單回路多回路的控制就顯得力不從心。且其片載操作系統(tǒng)基于一種巡檢機制,不太適合于實時性很強的控制節(jié)點。
圖1 以Neuron芯片為核心的控制節(jié)點結構
圖2 采用MIP結構的控制節(jié)點結構
(2) 采用MIP結構的控制節(jié)點
圖2為Host Base結構的節(jié)點框圖。鑒于方法(1)的缺點,采用MIP結構是解決這一問題的好辦法,將Neuron芯片作為通信協(xié)處理器,用高級主機(上位管理機)的資源來完成復雜的測控功能。
對于這種方法,由于高級主機(上位管理機)和各智能節(jié)點間,屬于多對一通信,當節(jié)點增多時,容易引起網絡的阻塞,且一旦發(fā)生網絡阻塞,網絡上的數(shù)據傳輸效率將顯著降低。
此外,現(xiàn)有大多LON網絡的智能節(jié)點應用中,數(shù)據采集系統(tǒng)通常采用單片機或DSP(數(shù)字信號處理器)作為CPU,控制ADC(模/數(shù)轉換器)、存儲器和其他外圍電路的工作。但是單片機的時鐘頻率較低,難以適應高速數(shù)據采集系統(tǒng)的要求,而DSP雖然可以實現(xiàn)較高速的數(shù)據采集,但其速度提高的同時也提高了系統(tǒng)的成本。FPGA(現(xiàn)場可編程門陣列)有單片機和DSP無法比擬的優(yōu)勢:時鐘頻率高,內部時延??;全部控制邏輯由硬件完成,速度快,效率高;組成形式靈活,可以集成外圍控制、譯碼和接口電路。
3高速智能節(jié)點的設計
3.1高速智能節(jié)點的硬件系統(tǒng)結構設計
該高速智能節(jié)點是基于FPGA架構來設計的。FPGA是整個系統(tǒng)的控制中心和數(shù)據交換橋梁,而且能夠實現(xiàn)對底層的信號快速預處理,在很多信號處理系統(tǒng)中,底層的信號預處理算法要處理的數(shù)據量很大,對處理速度要求很高,但算法結構相對比較簡單,適于用FPGA進行硬件編程實現(xiàn)。
系統(tǒng)的原理框圖如圖3所示。
圖3 通用高速智能節(jié)點總體結構框圖
整個高速數(shù)據采集處理系統(tǒng)的主要硬件構成為:
1)ACEX1K系列EP1K30TC144-3:主處理器,是整個系統(tǒng)的控制中心和數(shù)據處理中心,特點是電路連接I/O口多,速度快;
2)AD9288:實現(xiàn)4路8位采樣,最高采樣頻率為100 MSPS,適合應用與高速信號測量儀器;;
3)Neuron芯片:通信協(xié)處理器,負責通信功能
4)雙口RAM:主處理器與通信協(xié)處理器的接口,實現(xiàn)數(shù)據交換;
5)收發(fā)器FTT-10A:將數(shù)據傳遞至LON總線。
在控制臺發(fā)出采集指令或定時器的作用下,模擬輸入經AD采樣進入FPGA,經過FPGA里的信號處理模塊和算法處理后存入RAM,經Neuron芯片讀出至LON網絡。
3.2高速智能節(jié)點的軟件設計
軟件設計包括:數(shù)據采集和控制。
1) 數(shù)據采集軟件設計
數(shù)據采集當上位機發(fā)出采集數(shù)據指令后,通過網絡變量送到相應的節(jié)點,然后控制外部傳感器執(zhí)行相應的數(shù)據采集指令,并將采集到的數(shù)據經 A/D 轉換送到神經元芯片,再經過網絡變量傳遞,經 LNS DDE 動態(tài)數(shù)據連接傳遞給監(jiān)控軟件,并進行圖形化顯示給操作者。這一流程可以不斷循環(huán)進行,直到滿足所有條件為止。這一部分的總體流程如圖4所示。
圖4 采集程序的軟件流程圖 圖5 控制程序的軟件流程圖
數(shù)據采集部分核心軟件:本部分的主要功能是將采集到的模擬信號通過電平轉換、濾波及多路開關后分成 8 路信號,再進行 A/D 轉換變成數(shù)字量,經過加工處理后,送至網絡數(shù)據庫,自動改寫其中的網絡變量的值。
2)控制軟件設計
控制軟件主要是負責對底層設備的控制。當控制中心在監(jiān)控軟件下發(fā)出控制指令,經DDE 傳遞給 LonWorks 網絡,通過網絡變量送到對應的節(jié)點,在經過 D/A轉換,底層設備接收后開始數(shù)據采集,然后進行檢測是否有下一個控制指令。這一流程也是可不斷循環(huán)直到滿足所有條件為止。這一部分的總體流程如圖5所示。
3.3 實驗結果
輸入一正弦波,周期為1s,得到如圖6示結果:
圖6 實驗結果
4 結束語
本設計成功的實現(xiàn)了利用FPGA芯片作為LON網絡智能節(jié)點的主處理器,并且采用雙口RAM實現(xiàn)了主處理器與NEURON芯片之間的數(shù)據傳遞。本系統(tǒng)適合大多數(shù)數(shù)據采集場合,能達到通用和高速的目的。
采用FPGA進行設計可縮短開發(fā)生產周期,而且現(xiàn)場靈活性好,它不但包括了MCU這一特點,而且可觸及硅片電路的物理界限,并兼有串、并行工作方式,高速、高可靠性以及寬口徑適用性等諸多方面的特點。因此,利用基于FPGA的LON網絡的高速智能節(jié)點的設計具有一定的實際意義和價值。