基于LonWorks現場(chǎng)總線(xiàn)技術(shù)的智能節點(diǎn)設計
現場(chǎng)總線(xiàn)系統是自動(dòng)控制系統發(fā)展的一種趨勢。然而,當前還存在著(zhù)大量基于各種非現場(chǎng)總線(xiàn)標準的設備,將這些設備全部更新成基于現場(chǎng)總線(xiàn)的設備幾乎是不可能或不現實(shí)的。因此,開(kāi)發(fā)現有設備到現場(chǎng)總線(xiàn)的接口轉換設備,使現場(chǎng)總線(xiàn)技術(shù)與傳統的設備有機地結合起來(lái),將非現場(chǎng)總線(xiàn)設備集成到LonWorks現場(chǎng)總線(xiàn)系統中,實(shí)現基于現場(chǎng)總線(xiàn)的控制系統,是一項非常有意義的工作。
本文引用地址:http://dyxdggzs.com/article/148328.htm本文的目的是將現場(chǎng)總線(xiàn)技術(shù)、非現場(chǎng)總線(xiàn)技術(shù)、智能控制技術(shù)和單片機技術(shù)各自的優(yōu)勢有機地結合起來(lái),設計一種既具有強大現場(chǎng)處理功能,又具有通信功能的智能控制節點(diǎn)。通過(guò)該智能控制節點(diǎn),能夠將傳統儀器、設備掛接到LonWorks現場(chǎng)總線(xiàn)上,經(jīng)LonWorks總線(xiàn)進(jìn)行信息的傳輸與交換。
如GPIB接口是目前許多儀器的專(zhuān)用接口,通過(guò)GPIB總線(xiàn)控制儀器端,實(shí)現遠程控制。然而GPIB系統卻受到一些工作限制,如:①兩個(gè)設備之間最大距離4m,整個(gè)電纜的長(cháng)度不得超過(guò)20m;②GPIB母線(xiàn)上最多可掛15個(gè)設備,這主要是受TTL接口收發(fā)器驅動(dòng)能力限制。當測試系統有必要使用多于15個(gè)器件時(shí),需在控制器上再添置一個(gè)GPIB接口,即可多拉一條母線(xiàn),多掛14個(gè)設備。
本文以具有GPIB總線(xiàn)接口的設備為例,通過(guò)設計基于LON總線(xiàn)的智能節點(diǎn),將基于GPIB總線(xiàn)接口的設備轉換成LonWorks現場(chǎng)總線(xiàn)設備,進(jìn)而將空間位置上分散較遠的基于GPIB總線(xiàn)的儀器儀表資源通過(guò)LonWorks網(wǎng)絡(luò )有效聯(lián)系起來(lái),實(shí)現儀器的較遠程控制和數據的分析、處理與資源共享。
智能節點(diǎn)的總體設計方案
LonWorks節點(diǎn)是同物理上與之相連的I/O設備交互作用并在網(wǎng)上使用LonTalk協(xié)議與其他節點(diǎn)相通信的對象。LonWorks現場(chǎng)控制節點(diǎn)包含:應用CPU、I/O處理單元、通信處理器、收發(fā)器和電源等。
LonWorks節點(diǎn)有兩種類(lèi)型:
①以Neuron芯片為核心的控制節點(diǎn),Neuron芯片直接作為通信處理器和測控處理器,這類(lèi)節點(diǎn)適合于I/O設備較簡(jiǎn)單,處理任務(wù)不復雜的系統。
②采用主處理器結構的控制節點(diǎn),即Host Base節點(diǎn),Neuron芯片只作為通信處理器,充當著(zhù)LonWorks網(wǎng)的網(wǎng)絡(luò )接口,節點(diǎn)應用程序由主處理器(一般用微控制器)執行,這類(lèi)節點(diǎn)適合于對處理能力、輸入/輸出能力要求較高的系統,如圖1所示。

圖1 LonWorks智能控制節點(diǎn)
本智能節點(diǎn)采用Host Base節點(diǎn)結構。通信協(xié)議處理器采用Neuron 3150芯片,該固件中帶有LonWorks網(wǎng)絡(luò )通信協(xié)議,該通信協(xié)議集成了ISO全部7層協(xié)議。節點(diǎn)采用網(wǎng)絡(luò )變量的形式發(fā)送和接收數據,通信速率可達78.125kbps,對于總線(xiàn)或環(huán)型拓撲網(wǎng)絡(luò )結構,最大通信距離可達2700m;對于星型或自由拓撲網(wǎng)絡(luò )結構,最大通信距離可達500m,滿(mǎn)足了遠程測控的需求。
本節點(diǎn)的最主要部分是主處理器,選用STC89C516RD+,它既要接收現場(chǎng)總線(xiàn)控制模塊并行發(fā)出的信息并且將它轉化成非現場(chǎng)總線(xiàn)設備能接收的信息格式,又要將非現場(chǎng)總線(xiàn)設備上的信息轉化傳送到現場(chǎng)總線(xiàn)控制模塊。它是實(shí)現LonWorks現場(chǎng)總線(xiàn)系統和非現場(chǎng)總線(xiàn)設備間通信的橋梁。
智能控制節點(diǎn)的總體結構如圖2所示,主要分為L(cháng)onWorks控制模塊與主控制模塊及其外圍設備接口。

圖2 智能控制節點(diǎn)總體結構框圖
LonWorks控制模塊電路設計
本節點(diǎn)將神經(jīng)元芯片、FLASH ROM、RAM和收發(fā)器等集成為一個(gè)通用模塊,稱(chēng)之為L(cháng)onControl控制模塊。以神經(jīng)元芯片為核心的LonWorks控制模塊主要負責對LON通信網(wǎng)絡(luò )的管理以及與單片機的并行數據通信。
Neuron芯片3150選型
Neuron芯片是LonWorks技術(shù)的核心,每一個(gè)神經(jīng)元芯片被賦予一個(gè)唯一的48位碼的標識,稱(chēng)為標識碼。它既進(jìn)行通信的管理,也同時(shí)具有輸入、輸出和控制的能力。介質(zhì)訪(fǎng)問(wèn)控制CPU處理LonTalk 7層協(xié)議的第1到第2層,包括驅動(dòng)通信子系統硬件和執行MAC算法;網(wǎng)絡(luò )CPU處理LonTalk協(xié)議的第3到第6層,包括處理網(wǎng)絡(luò )變量尋址事務(wù)、權限證實(shí)、背景診斷、軟件計時(shí)器、網(wǎng)絡(luò )管理和路由等,同時(shí)還控制網(wǎng)絡(luò )通信端口、物理的發(fā)送和接收數據包;應用CPU執行用戶(hù)用Neuron C語(yǔ)言編寫(xiě)的代碼以及用戶(hù)代碼調用的操作系統命令。芯片內有3個(gè)8位流水線(xiàn)作業(yè)的CPU,3個(gè)CPU分別通過(guò)片內的網(wǎng)絡(luò )緩存器和應用緩存器進(jìn)行通信。
神經(jīng)元芯片選用日本東芝公司生產(chǎn)的TMPN3150B1AF,通常為64腳QFP封裝。芯片內存儲器的地址范圍是E800H~FFFFH,包括2kByte的SRAM和512kByte的EEPROM。
神經(jīng)元芯片外部存儲器擴展電路設計
TMPN3150有16根地址線(xiàn),可尋址64k空間,可以外接存儲器,如RAM、ROM、EEPROM或FLASH。根據應用性能和成本要求,該智能節點(diǎn)的外部存儲器采用FLASH和RAM。FLASH ROM不僅能夠在斷電的情況下保證數據不丟失,而且在上電情況下可進(jìn)行理論上高達10萬(wàn)次的數據寫(xiě)操作。
根據Echelon公司的推薦,這里選用Winbond的W29EE512P作為FLASH ROM擴展。W29EE512P是64k×8bit CMOS FLASH Memory,5V的電壓即可對其進(jìn)行片上編程和擦除。W29EE512P含有4k個(gè)扇區,每個(gè)扇區為128字節,存儲空間總共為512kB。其中低字節空間用于存放神經(jīng)元芯片的固件(包括LonTalk協(xié)議等),高字節空間作為節點(diǎn)應用程序的存儲區。
外部數據存儲器擴展用于存儲附加的應用程序讀/寫(xiě)數據和作為附加的網(wǎng)絡(luò )緩沖區及應用程序緩沖存儲空間,SRAM采用HITACH公司生產(chǎn)的HM62256。HM62256含有512個(gè)扇區,每個(gè)扇區為64字節,總共存儲空間為32kB,設計時(shí)只使用了24kB。圖3為神經(jīng)元芯片外部存儲器擴展電路。

圖3 神經(jīng)元芯片外部存儲器擴展電路圖
收發(fā)器電路設計
收發(fā)器是智能節點(diǎn)與Lon網(wǎng)之間的接口。本設計選用ECHELON公司的FTT-10A自由拓撲雙絞線(xiàn)收發(fā)器,該收發(fā)器可以連接到任何基于Neuron芯片的控制系統,支持無(wú)極性自由拓撲總線(xiàn)安裝形式,它可支持星型、總線(xiàn)型和環(huán)型。自由拓撲結構能夠減少系統安裝時(shí)間、降低系統安裝成本。
FTT-10A收發(fā)器由一個(gè)隔離變壓器和一個(gè)集成的78kbps微分曼切斯特編碼收發(fā)器組成,收發(fā)器管腳與Neuron芯片的通信端口(CP)和時(shí)鐘線(xiàn)、+5V電源及雙絞線(xiàn)網(wǎng)絡(luò )線(xiàn)相連。FTT-10A收發(fā)器自動(dòng)檢測輸入時(shí)鐘頻率是在5MHz、10MHz還是20MHz。當無(wú)電源供給時(shí)收發(fā)器輸出呈高阻狀態(tài),當收發(fā)器電源下降時(shí)不會(huì )影響網(wǎng)絡(luò )通信。
FTT-10A收發(fā)器與神經(jīng)元芯片的接口電路如圖4所示。C1是供電電源的解耦電容,選用“0.1uF,+5VDC”解耦電容;C2是靜態(tài)放電電容,電容值較小,要盡可能地耐高壓,選用1000pF、2kV電容,電路設計時(shí),C2和PCB火花隙連在一起,可有效地防止收發(fā)器接入網(wǎng)絡(luò )瞬間發(fā)生的電壓“浪涌”現象;C3,C4為DC模塊電容,選用22uF、+50V的極性電容;D1~D4為瞬態(tài)箱位二極管,保證收發(fā)器放電安全可靠,通常選用BAV99或IN4148。

圖4 FTT-10A收發(fā)器與神經(jīng)元芯片接口電路圖
時(shí)鐘電路設計
3150 Neuron芯片時(shí)鐘電路如圖5所示。在神經(jīng)元芯片內有振蕩器,利用外接晶振可產(chǎn)生輸入時(shí)鐘。神經(jīng)元芯片時(shí)鐘頻率范圍在625KHz~10MHz之間,有效的輸入時(shí)鐘頻率為:10MHz、5MHz、2.5MHz、1.25MHz和625KHz,時(shí)鐘頻率的精度必須為±1.5%或更高。本設計采用外接晶體振蕩器的方法來(lái)產(chǎn)生10MHz輸入時(shí)鐘。

圖5 時(shí)鐘信號產(chǎn)生電路圖
主控制模塊及其外圍設備接口電路設計
以單片機為核心的主控制模塊及其外圍設備接口電路主要負責與LonWorks控制模塊的并行數據交換、對外圍設備輸入輸出量的控制以及實(shí)現人機交互的鍵盤(pán)輸入和LCD顯示等。
電源與復位電路設計
考慮到設備的集中供電,本設計采用交流13.8V對每個(gè)節點(diǎn)或者設備供電。由于系統需要+5V電源,13.8V交流電通過(guò)整流橋3KBP06整流得到直流電,對其濾波后送往穩壓器件7805進(jìn)行轉換,便可得到相應的穩定工作電壓。7805芯片雖然具有輸出穩定、溫度系數小、內含過(guò)流及短路保護等優(yōu)點(diǎn),但長(cháng)時(shí)間工作時(shí),往往會(huì )散發(fā)比較多的熱量,因此有必要在芯片的底槽上加固一散熱片以保護芯片長(cháng)期穩定工作,圖6為電源電路原理圖。

圖6 電源電路原理圖
復位電路采用復位芯片STC708,它具有較寬范圍的用戶(hù)自定義門(mén)限電壓,具有上電復位、掉電復位和外部手動(dòng)復位等功能,能進(jìn)行電源穩壓塊前端掉電檢測,可實(shí)現高/低電平兩路復位信號輸出,圖7為復位電路圖。

圖7 復位電路圖
STC89C516RD+及存儲器擴展電路設計
主控制模塊單片機選用STC89C516RD+。STC89C516RD+是完全兼容8051內核的單片機,和8051單片機在指令級上兼容,12時(shí)鐘/機器周期和6時(shí)鐘/機器周期可反復設置。高達64k的用戶(hù)應用程序空間和1280字節的片上集成RAM,以及256Byte的內存,最高工作頻率可達40MHz,共有32根輸入輸出線(xiàn)、3個(gè)16位計時(shí)/計數器、8個(gè)中斷源和一個(gè)串行口。本節點(diǎn)采用外部振蕩器,其頻率為11.0592MHz。
由于系統在終端顯示、與外圍設備和Neuron芯片通信等都涉及大量的數據交換和操作,需要占用較大的RAM空間,同時(shí)也為了讓數據處理的速度更快,設計擴展了一片8k×8數據存儲器HM6264。STC89C516RD+的存儲器擴展電路如圖8所示。

圖8 STC89C516RD+存儲器擴展電路圖
人機交互接口電路設計
人機接口電路主要包括鍵盤(pán)和終端顯示等。
為了減少對單片機I/O口的占用,設計采用非編碼式2×4矩陣鍵盤(pán)。鍵盤(pán)電路原理如圖9所示,DIG0~3與SEGA、B接擴展芯片74LS373上。

圖9 鍵盤(pán)電路原理圖
本智能節點(diǎn)采用廈門(mén)OCULAR公司生產(chǎn)的GDM12864,該LCD模塊自帶漢字庫和常用字符,功能強大,操作簡(jiǎn)單。它主要由行驅動(dòng)器/列驅動(dòng)器及128×64全點(diǎn)陣液晶顯示器組成,與CPU接口采用8位數據總線(xiàn)并行輸入輸出。
單片機與液晶控制模塊之間通過(guò)擴展一個(gè)鎖存器74LS373的訪(fǎng)問(wèn)方式,使STC89C516RD+利用數據總線(xiàn)與控制信號控制GDM12864液晶顯示模塊。其中,數據口P0與液晶顯示模塊的數據口通過(guò)鎖存器相連,單片機的R/W作為液晶顯示模塊的讀、寫(xiě)控制信號,液晶模塊的/RST與外部復位電路的復位端相連,液晶模塊的/CE信號端由P2.6進(jìn)行片選控制,RS信號由單片機I/O口控制,高電平時(shí)為指令口地址,低電平時(shí)為數據口地址。電位器RW1用來(lái)調節顯示屏的亮度。液晶模塊與STC89C516RD+的電路連接如圖10所示。
單片機與神經(jīng)元芯片通信電路設計

圖10 液晶模塊與STC89C516RD+電路連接圖
主副控制器之間采用并行I/O方式,STC89C516RD+利用數據總線(xiàn)和控制信號與LonWorks控制模塊進(jìn)行通信,并根據控制模塊接口J2的引腳定義來(lái)設計相互之間的連接。單字節并行通信接口模塊由兩塊74HC574和一塊74HC74芯片組成,74HC574是帶三態(tài)輸出控制的8D觸發(fā)器,數據的輸入由CLK腳上升沿控制,數據的輸出由OC腳低電平選通。74HC74是帶預置端和清除端的雙D觸發(fā)器,接口電路中由于它的數據輸入端D接地、輸出清除端CD接正電源,所以其數據輸出端Q由CLK腳上升沿置低、由SD腳低電平置高。并行通信接口通過(guò)其對稱(chēng)的兩個(gè)接口分別與要進(jìn)行數據交換的A機(主控制模塊)和B機(LonWorks控制模塊)相連。主副控制器通信接口電路如圖11所示。

(a)主控制器J2接口電路
(b)LonWorks控制模塊J2接口電路
圖11 主副控制器通信接口電路圖
A機向B機發(fā)送單個(gè)數據的工作原理為:
①A機把數據輸出到數據總線(xiàn)D0~D7上;
②控制寫(xiě)信號(WR),即上升沿,把D0~D7上數據選通到U5中鎖存,同時(shí)使INTS變低,請求B機接收數據;
③B機收到INTS低電平請求信號后,控制IORS產(chǎn)生低電平,把U5中鎖存的數據選通輸出到數據總線(xiàn)BD0~BD7上,同時(shí)使INTS置高,釋放數據總線(xiàn)BD0~BD7;
④B機控制IOWS產(chǎn)生上升沿,使INTM變低,通知A機可以繼續發(fā)送數據;
⑤A機收到INTM低電平后,把RD置低,使INTM變高,消除請求信號;
⑥A機把RD置高,釋放數據總線(xiàn)D0~D7。
重復上述步驟,就能實(shí)現A機到B機的多個(gè)數據傳送。B機到A機的數據傳送的工作原理同上。
外圍設備接口電路設計
本節點(diǎn)設備端使用GPIB專(zhuān)用芯片TNT4882實(shí)現GPIB接口功能,TNT4882是美國NI公司的一款單芯片、高速、聽(tīng)/講功能兼備的GPIB接口專(zhuān)用芯片。TNT4882芯片使用簡(jiǎn)單靈活,可方便地連接各種8位和16位處理器,除了40MHz的時(shí)鐘外不需要其他任何外圍芯片即能直接與GPIB總線(xiàn)相連。TNT4882有三種不同的硬件接口模式:?jiǎn)纹J?、Turbor+7210模式以及Turbor+9914模式,本設計采用單片模式。GPIB實(shí)現的硬件連接如圖12所示。

圖12 GPIB實(shí)現的硬件連接圖
智能節點(diǎn)的軟件設計
軟件的主要功能是通過(guò)單片機從GPIB總線(xiàn)獲取數據,并將數據送到LON網(wǎng)絡(luò )上相應節點(diǎn),或將LON網(wǎng)絡(luò )傳送過(guò)來(lái)的數據發(fā)給單片機,經(jīng)轉換后發(fā)送至GPIB總線(xiàn)。本節點(diǎn)中Neuron芯片需要完成與單片機之間的通信,同時(shí)作為與LonWorks網(wǎng)絡(luò )的通信處理器還需實(shí)現與底層各節點(diǎn)的數據交換。而主控制器單片機則主要完成與LonWorks控制模塊的并行通信、控制TNT4882芯片獲取GPIB總線(xiàn)上儀器儀表設備的數據以及外圍電路的驅動(dòng)。在此主要介紹單片機與GPIB接口的軟件設計。
GPIB系統中各設備的工作速度可能相差懸殊,為了保證多線(xiàn)消息能雙向、異步、準確可靠地傳遞,GPIB母線(xiàn)中設置了三條握手線(xiàn)(DAV、NRFD和NDAC)。源方和受方之間利用三線(xiàn)握手技術(shù)以異步方式來(lái)進(jìn)行數據傳送。由于本節點(diǎn)采用TNT4882實(shí)現GPIB數據的收發(fā),因此對GPIB總線(xiàn)的控制只要對TNT4882進(jìn)行控制即可,數據傳送過(guò)程可通過(guò)TNT4882芯片自行完成。單片機控制TNT4882對GPIB數據的收發(fā)有中斷方式、查詢(xún)方式和DMA方式。本文采用查詢(xún)方式來(lái)控制TNT4882實(shí)現對GPIB總線(xiàn)的控制,其工作流程如圖13所示。當初始化完成后,程序不斷地讀取TNT4882的狀態(tài)位判斷當前TNT4882所處的狀態(tài),如果為聽(tīng)者狀態(tài),單片機接收數據,如果為講者狀態(tài),單片機發(fā)送數據。

圖13 單片機控制TNT4882工作流程圖
結束語(yǔ)
本文以含GPIB接口總線(xiàn)的儀器儀表設備為例,設計了將GPIB總線(xiàn)上的儀器儀表設備接入LonWorks現場(chǎng)總線(xiàn)網(wǎng)絡(luò )的智能節點(diǎn),給出了智能節點(diǎn)的總體設計方案;并對智能控制節點(diǎn)進(jìn)行了詳細的硬軟件設計,給出了設計電路。
c語(yǔ)言相關(guān)文章:c語(yǔ)言教程
存儲器相關(guān)文章:存儲器原理
塵埃粒子計數器相關(guān)文章:塵埃粒子計數器原理 晶振相關(guān)文章:晶振原理 雙絞線(xiàn)傳輸器相關(guān)文章:雙絞線(xiàn)傳輸器原理
評論