田 敏 楊 帥,2 薛 嵐,2
(淮安信息職業技術學院電氣工程系1,江蘇 淮安 223003;江蘇電子產品裝備制造工程技術研究開發中心2,江蘇 淮安 223003)
LonWorks技術是一種能夠在電力線信道上進行通信的網絡監控平臺,但傳統的基于神經元芯片型式的Lon-Works節點不能滿足系統日益復雜的控制要求。基于主機型式的節點克服了軟件調度采用基于事件巡檢機制的弊端,能夠讓節點完成實時性高的多進程、多任務并行處理,節點中的數據傳輸采用Slave_B并行接口傳輸模式,提高了數據的處理速率,增強了節點的實時性。
LonWorks是一種在多信道可靠工作的現場總線技術,是一種雙向、串行、數字化的智能開放式系統,它為各種各樣的監控網絡應用提供了端到端的解決方案[1]。神經元芯片和電力線收發器是LonWorks技術在電力信道上通信的核心技術。
神經元芯片是一種集通信、控制、調度和I/O支持為一體,并內嵌LonTalk七層協議的高級大規模集成器件。神經元芯片內部集成有3個8位流水線作業的CPU:①介質訪問控制CPU,負責驅動通信子系統硬件和執行MAC算法;②網絡CPU,分管處理網絡變量尋址事務、權限證實、背景診斷,軟件計時器、網絡管理和路由、控制網絡通信端口,發送和接收數據包;③應用CPU,具體執行用戶使用Neuron C語言編寫的代碼以及用戶代碼調用的操作系統命令[2]。
LonWorks電力線收發器采用先進的雙載波頻率的數字信號處理手段,通過數字信號處理器完成數據的接收和發送,能夠根據電力線的噪聲動態調整靈敏度。LonWorks電力線收發器通信采用雙頻傳輸模式,當主頻率通信受阻時可自動切換備用頻率繼續通信。通信報文采用糾錯技術,根據糾錯碼恢復錯誤報文。
在基于Slave_B傳輸模式的LonWorks節點中,神經元芯片MC143150是通信處理任務的從機,作為主機的微處理器AT89S51承擔現場底層的應用控制任務。AT89S51內集成了中央處理器和Flash存儲單元,為許多控制應用系統提供高性價比的解決方案。MC143150具有11個I/O管腳,可以配置成34種對象[3],支持外部存儲器,可擴大芯片的內部資源,適合復雜的應用場合。Slave_B并行傳輸模式的LonWorks節點硬件連接圖如圖1所示。

圖1 Slave_B并行接口硬件圖Fig.1 Hardware of parallel Slave_B interface
從機MC143150相對于主機AT89S51是一個內存映像的 I/O 設備。主機 AT89S51 通過 P2.5、P2.6、P2.7控制譯碼電路74LS138選通片選位 IO8,激活從機MC143150;通過WR位控制從機讀寫控制位IO9;IO10為地址輸入位,由主機AT89S51驅動;IO0~IO7作為數據總線與P0.0~P0.7相連,實現現場底層數據與總線數據的交換,74LS373鎖存器實現IO0的復用。當IO10輸入為0時,IO0為數據位;當IO10的輸入為1時,IO0為握手控制位,由從機MC143150驅動。為防止主機AT89S51從握手控制位讀到無效的信息,通過一個10 kΩ的上拉電阻將該位置高[4]。這種復用模式允許神經元芯片駐留在微處理器的總線上,數據位位于一個地址,握手控制位位于另一個地址。因此,主機AT89S51只要訪問不同的地址就能決定IO0是數據位還是握手控制位。
AT89S51與MC143150的復位低電壓由IMP809芯片提供,滿足AT89S51與MC143150正常數據通信時同步復位的要求,同時IMP809芯片也為節點提供低電壓監控功能。
為避免主機AT89S51與從機MC143150產生數據沖突的問題,提出了一種利用虛擬令牌的傳輸機制。主機通過讀寫控制位WR決定兩處理器擁有虛擬令牌的權利,擁有令牌的一方能夠將數據寫入總線。當讀寫控制位WR為低電平時,AT89S51擁有令牌,它有權將準備好的數據發送給MC143150或將令牌交給MC143150;當讀寫控制位WR為高電平時,MC143150擁有令牌,它將準備好的數據發送給AT89S51或交出令牌,因而令牌在AT89S51與TMPN3150之間以乒乓方式來回傳遞[5]。
主機AT89S51每次對從機MC143150進行操作之前必須激活片選位,根據握手控制位判斷MC143150的閑忙狀態。若握手控制位為低電平,MC143150為空閑狀態,則AT89S51可以訪問MC143150;若握手控制位為高電平,MC143150為忙狀態,則表明MC143150正在訪問總線。MC143150在Slave_B并行接口得到的數據通過網絡變量將信息發送到LonWorks網絡上,然后LonTalk協議透明地將修改后的值構成網絡變量消息并將消息傳遞到網絡層,網絡層將地址信息附加到消息中后傳遞到MAC層[6],MAC層再附加上更多的信息到網絡變量消息中,并將消息傳遞到通道上能與之共享該網絡變量數據的其他控制器。
MC143150固化的LonTalk協議能夠自動完成虛擬令牌傳輸機制,除了同步操作外,MC143150的應用程序都是透明的。用Neuron C語言將MC143150的I/O口聲明為Slave_B并行接口:IO_0 parallel slave-b ioobject_name[7];利用任務調度程序、io_in_ready()、io_out_request()和io_out_ready()事件、io_in()和 io_out()函數實現從機的同步、握手、數據讀寫、令牌傳遞的過程。AT89S51不能自動完成虛擬令牌傳遞,需要用C語言編制虛擬令牌傳遞協議,包括主機的同步、握手、數據讀寫、令牌傳遞過程。
節點復位后,主機與從機自動建立握手協議,令牌被主機AT89S51擁有。當握手控制位IO0為低電平時,AT89S51向從機MC143150發送同步命令,并向MC143150傳遞令牌。MC143150在握手控制位IO0為高電平時向AT89S51發送應答同步命令,并將令牌傳給主機。再次擁有令牌的AT89S51決定是否向MC143150發送數據。
如果發送數據,則令牌自動傳遞給MC143150;如果不發送數據,需要發送傳遞令牌命令才能將令牌傳遞給MC143150。每次片選位由低到高的跳變都會導致握手控制位IO0變高。在握手控制位IO0和片選位IO8均為低時,AT89S51向MC143150發送數據,如果無數據發送則傳遞空命令,并導致握手控制位IO0自動變為高電平,之后AT89S51可以讀數據,讀取數據可導致握手控制位IO0自動變為低電平。每次主機發送數據時都要檢測握手控制位IO0的有效狀態,只有握手控制位IO0有效時主機才可以發送數據。MC143150讀取AT89S51發送過來數據之后握手控制位IO0再次變為低電平,從機交出令牌,主機可以進行下次通信。如果MC143150需要發送數據,則發送數據之后自動交出令牌,否則通過空命令交出令牌。
AT89S51與MC143150的數據通信過程如圖2所示。

圖2 數據通信過程示意圖Fig.2 Data communication process
LonWorks電力線節點采用電力線收發器PLT-22實現節點數據信號與電力信號的耦合與傳輸。神經元芯片MC143150與PLT-22的連接圖如圖3所示。

圖3 網絡接口連接圖Fig.3 Connections of the network interface
PLT-22由A/D轉換單元、DSP、D/A轉換單元、發送放大和濾波電路等構成。CKout、CKsel1、CKsel0、CP1、CP2、CP4、Reset管腳用于和 MC143150 芯片通信。Rxin、Txout分別是耦合信號輸入和信號輸出管腳;Rxcomp用于連接接收補償器件。A/D對從電力線耦合來的信號進行濾波并將模擬信號轉換為數字信號。DSP是信號處理的核心部分,它一方面將A/D處理后的數字信號進行解碼處理,并將處理后的數據與MC143150進行交換;另一方面,它將需要發送的信號進行編碼處理。D/A將數字信號處理單元處理后的要發送的數字信號轉換為模擬信號,發送放大和濾波電路將D/A轉換后的信號進行功率放大并發送到耦合電路[8]。

圖4 Slave_B模式節點網絡架構Fig.4 Network architecture of Slave_B node
應用Slave_B模式的節點采用主干式網絡架構,如圖4所示。雙絞線干網以1.25 Mbit/s的速率傳輸數據,電力線分支網以10 kbit/s的速率傳輸數據,用于通信的電力線信道具有高衰減、高噪聲的特點。為確保數據報文的可靠傳輸,需采用增強的LonTalk代理協議,在路由器中實現自學習報文路由功能,在節點的Neuron固件中實現報文轉發機制,實現節點在LonWorks網絡通信中的自動中繼。該網絡架構子網中數據通信不會影響主干網的數據吞吐量,單個節點和路由器的損壞不影響整個網絡正常工作,提高了網絡的可靠性。主干式網絡處理整個網絡的數據信息速率較快,保證了數據及時處理,可防止數據通路的阻塞,提高了網絡的實時性。
工作站內置 LNS、LonMaker、和 LNS DDE Server,用于系統設計配置和后期的 HMI監控。LNS為LonWorks總線提供開放、互操作性的平臺,用于實現管理、監控、診斷和維護網絡服務。LonMaker基于LNS操作系統,實現節點邏輯安裝與配置。LNS DDE Server通過LNS網絡驅動器和LNS網絡接口進行動態數據交換,監視和控制 LonWorks網絡,更新網絡變量。iLON100設備嵌入實時操作系統,采用一個32位RISC處理器和LonWorks/IP體系結構,是遵從EIA 852協議的LonTalk協議的IP網關,為LonWorks和IP局域網提供互訪通道。當節點工作在C波段時,兩個載波頻率分別是第一載波頻率(132 kHz)和第二載波頻率(115 kHz)。在每個載波頻率上使用6 kHz的頻率帶寬。第一載波頻率具有更好的畸變糾正能力以及更強大的數據包分辨能力和抗噪聲能力,第二載波頻率比第一載波頻率的誤差校正能力強。當工作在A波段時,第一載波頻率是86 kHz,第二載波頻率為75 kHz。兩個載波頻率被選擇時,充分考慮了由于諧波而導致的兩個載波同時被阻塞的情況。
基于Slave_B并行傳輸模式的LonWorks電力線節點可以輸送1 A或2 A峰-峰值到低阻抗負載,可在衰減80 dB的情況下工作。電力線通信工作在132 kHz主頻或115 kHz輔頻,以調光器為噪波源。經測試可知,LonWorks電力線節點通信信息經過-67 dB衰減而無錯誤。
LonWorks電力線節點在現有的供電網絡上實現數據信號的傳輸,克服了電力線上高干擾、高衰減、高失真、高阻抗等弊端。這種通信載波傳輸無需額外布線,可以節省60%以上的工程費用,改變了現有電力線網絡只用于電力傳輸的現狀,大大提高了電力線的利用率,因此具有顯著的實用價值。
[1]王俊杰.現場總線與 LonWorks技術[J].自動化儀表,1999,20(7):40-43.
[2]高安邦.LonWorks技術開發與應用[M].北京:機械工業出版社,2009.
[3]楊帥.基于虛擬令牌傳輸協議的LonWorks監控系統設計[J].低壓電器,2010(14):45-48.
[4]畢敏娜.基于神經元芯片和DSP的LonWorks節點控制器并行通信的實現[M].低壓電器,2008(8):8-10.
[5]楊帥.基于Slave_B并行傳輸模式的雙絞線LON節點[J].儀表技術與傳感器,2011(5):48-50.
[6]成建生.采用并行接口模式的LonWorks監控系統的設計[J].礦山機械,2010,38(12):62 -65.
[7]成建生.基于LonWorks技術礦山生產監控系統的設計[J].礦業安全與環保,2010,37(5):31 -34.
[8]徐建俊.基于LON現場總線技術的電力線收發器PLT-22的設計[J].電力自動化設備,2008,28(9):108 -111.