摘 要:針對基金會現場總線的通信特點和要求,基于PCI接口和單片無線收發芯片nRF401,提出基于FF協議的無線PC接口卡的軟硬件設計方案。根據該方案設計的無線PC接口卡,很好地解決了控制結點分布廣、敷設通信線路困難的生產裝置或有移動對象的工業現場的局部網絡通信問題。
關鍵詞:基金會現場總線;PCI;PC接口卡;無線收發芯片
The design of wireless PC-interface for foundation fieldbus
Abstract:This article proposes a software and hardware design schemefor wireless PC-interface based on PCI and nRF401.The PC-interface designed according to this scheme solves satisfactorily the communication problem of the local work located in industrial fields where the controlling points are distributed widely and the lines of communication are difficult to be laid or where mobile devices are used
Keywords:foundation fieldbus;PCI bus;PC-interface;wireless transceiver chip
0 引言
基金會現場總線(FF,Foundation FieldBus)是現場總線基金會為適應自動化系統,特別是過程自動化系統在功能、環境與技術上的需要而專門設計的,它作為一種全數字信號的現場總線協議,在國際上獲得了廣泛的支持[1]?;饡F場總線支持多種傳輸介質,包括雙絞線、電纜、光纖以及無線介質,目前應用較廣泛的是前兩種。但是,對于控制結點分布廣、敷設通信線路困難的生產裝置或者有移動對象的工業現場,則必須考慮以無線方式進行數據通信[2、3]。因此,開發基于FF協議的無線通信產品具有重大的現實意義。
1 基于FF協議的無線PC接口卡的硬件設計
基于FF現場總線協議的無線PC接口卡的基本功能是能夠自主地與符合FF協議的無線通信設備進行通信。無線PC接口卡的總體結構框圖如圖 1所示,其硬件電路包括CPU與PC主機CPU的通信接口、CPU與通信控制器的硬件接口、通信控制器與數據緩沖存儲器的接口、通信控制器與無線收發單元的接口等4個部分。其中雙口RAM采用CY7C09449PV-AV芯片;CPU選用嵌入式控制中最常用的Intel80188CPU;通信控制器選用SMAR公司的FB3050;無線收發單元由單片無線收發芯片nRF401及其外圍電路構成。CY7C09449PV-AC可以采用總線仲裁加等待的方式,允許兩邊CPU在指令級共享SRAM,允許兩邊的CPU相互通過中斷交換信息,還允許通過狀態信號相互同步。在此采用狀態寄存器及中斷的方式進行通信握手并快速傳遞數據。
1.1 接口卡CPU與PC的接口
隨著計算機技術的發展,PC總線日新月異。 PCISIG(Peripheral Component Interconnect Special Inter-est Group)因其具有32/64位寬度、最高傳輸率在64業標準結構)總線的趨勢,考慮到當前需求及今后發展,在宿主總線的選擇上采用PCI總線。硬件接口芯片為Cypress Semiconductor公司的PCI總線雙口RAM。CY7C09449PV-AC是一款適于PCI2.2總線規范的功能完善、價格低廉的雙端口RAM接口芯片,其中一個端口是PCI接口,適合與PC機通信,另一個端口是本地接口,適合與各類本地CPU通信,其總線通信時鐘速率可達50MHz,兩個端口均可以獨立讀/寫靜態存儲器SRAM。其主要特點如下:①完全兼容PCI規范2.2版本;②128 k雙向靜態SRAM;③可作為主/從設備進行數據的傳輸,支持PCI突發方式工作及DMA操作;④具有I2O(Intelligent Input/Output)功能,當I2O單元工作時包含4組32位FIFO(FirstIn First Out)、中斷寄存器及部分SRAM,其余SRAM用于一般存儲目的;⑤支持3V、5V電壓工作;⑥可通過I2O總線對芯片進行初始化設置,并把設置參數存于非易失性NVRAM中;⑦160腳扁平方形塑封[4]。
CY7C09449PV-AC可以采用總線仲裁加等待的方式,允許兩邊CPU在指令級共享SRAM,允許兩邊的CPU相互通過中斷交換信息,還允許通過狀態信號相互同步。在此采用狀態寄存器及中斷的方式進行通信握手并快速傳遞數據。
1.2 接口卡CPU與通信控制器FB3050的接口
FB3050是SMAR公司推出的第三代基金會現場總線通信控制器芯片,該芯片符合ISASP50-2- 1992,PART2中所規定的現場物理層標準。FB3050芯片功能框圖如圖2所示。從圖中可以看出FB3050通過3總線與CPU相連接,右邊部分是FB3050輸出的存儲器總線,CPU和FB3050二者都能夠通過存儲器總線訪問掛接在該總線上的存儲器。下邊部分是FB3050通過介質存取單元和現場總線網絡相連接,中間部分是FB3050的內部功能塊。FB3050的主要功能是實現總線上的信號驅動與接收、傳輸數據的串并行轉換、串行數據的編碼與解碼、信息幀的打包和解包、幀校驗序列的產生和驗證等[5]。
FB3050的對外信號主要可分為如下4組:
①時鐘和定時功能信號。3個輸入分別用于FB3050的系統時鐘、傳輸數據速率時鐘以及規定FB3050的系統同步沿。一個125kHz輸出信號供用戶線路中使用。
②CPU接口信號。CPU接口信號線用于連接接口卡微處理器,包括16位地址線,8位數據線,可采用數據/地址復用方式連接,也可直接連接,當采用數據/地址復用方式連接時,低8位地址線PI-AD-DR[7∶0]接信號地,包括兩條片選線,兩條讀寫控制線,中斷請求輸出線;另外包括一條PO-READY線,可與微處理器的WAIT線連接,使得FB3050的DMA和CPU能夠共享FB3050的局部存儲器總線。
③存儲器總線信號。本組信號是通過FB3050對CPU的地址總線進行變換后所產生的一組存儲器總線,變換后的存儲器總線增加了8條擴展存儲器地址線,配合使用FB3050內部增加的段地址寄存器,使得存儲器總線的尋址范圍大大超出了原CPU的64KB容量,另外還輸出6條可編程的片選信號。因此這組存儲器總線和所掛接的存儲器是CPU和FB3050共享的。
④現場總線接口信號。FB3050共有8條現場總線接口線,一條接收數據的信號線PI-PHPDU,接收來自介質存取單元的總線信號,接收的數據信號格式符合總線曼徹斯特編碼規則,一條發送數據的信號線PO-PHPDU,發送數據到介質存取單元,一條控制總線發送器工作狀態的控制線PO-TACT,5條狀態信號線用于指示FB3050的發送接收情況。
由于FB3050的接口設計上已經充分考慮了和Intel系列CPU接口的問題,因此FB3050和In-tel80188的接口是非常簡單的。Intel 80188的地址總線數據總線可以直接和FB3050的地址數據總線相連接,4條片選線MCS0~MCS3中的任一條都可以作FB3050的存儲器片選線。7條I/O片選線PCS0~ PCS6中的任一條都可以作為FB3050的內部存儲器片選線;FB3050內部共需要38個I/O口地址,而In-tel 80188每條I/O片選線可以提供128個I/O口地址,因此完全可以滿足要求。FB3050的中斷輸出為低電平有效,而Intel80188CPU的中斷輸入線需要高電平或上升沿信號,因此需要加一反向器。FB3050的READY輸出線可以直接接到Intel80188的AREADY引腳上,使得FB3050的DMA和CPU能夠共享FB3050的局部存儲器總線。Intel80188的時鐘輸出信號可以直接作為FB3050的系統時鐘輸入。
1.3 FB3050與無線收發單元的接口
無線PC接口卡的無線收發單元的基本功能是發送和接收符合FF規范的無線信號,它是FF信號能否實現正常通信的關鍵。其主要器件是單片無線收發芯片nRF401。nRF401是NORDIC公司最新推出的工作于ISM頻段(433MHz)的單片無線收發一體芯片。它是目前集成度最高的無線數傳產品,20腳雙列直插封裝。nRF401內部包含高頻接收/發射、PLL合成、FSK調制/解調和雙頻切換等單元。
該芯片有如下特點:FSK調制方式,直接數據輸入輸出,抗干擾能力強,特別適合工業場合;采用DSS+PLL頻率合成技術,頻率穩定性極好;靈敏度高,達到-105dBm;無需曼徹斯特編碼;工作速率最高可達20kb/s;最大發射功率達+10dBm;開闊地的使用距離最遠可達1000m;工作在ISM頻段433MHz和雙信道頻率433.92MHz/433.34MHz,使用不需要申請許可證[6]。
利用nRF401實現的無線收發單元與FB3050接 口電路原理圖如圖3所示。其中,無線收發單元的天線設計采用環形差分天線。nRF401的時鐘輸入要與CPU和FB3050同步,因此nRF401必須與CPU和FB3050共用一個時鐘源。nRF401芯片的數據輸出(DOUT)/輸入(DIN)與FB3050的接收輸入(PI-PHPDU)、發送輸出(PO-PHPDU)信號線相連接;接FB3050的數據發送允許信號引腳PO-TACT,當PO-TACT輸出為高電平時為發送模式,反之為接收模式;CS為頻率選擇引腳,接PCB跳線,由高低電平選擇所使用的頻率;PWR-UP為節電模式選擇信號引腳,也接PCB跳線,高電平時為工作模式,低電平時為待機模式。
2 軟件設計
無線PC接口卡的軟件采用嵌入式設計方法進行設計。其基本工作過程為:當外部有信號時,無線收發單元首先接收信號并發送給通信控制器FB3050,通信控制器接收并發給接口卡上的接收緩沖區,然后通過接口卡上的CPU進行應答。能處理的命令、數據立即處理,其余內容通過PCI雙口RAM接口傳給上位機處理。反之,當上位機需要發送信息到基于FF的無線網絡時,信號先通過PCI雙口RAM,再經接口卡CPU傳遞至通信卡發送緩沖區,最后由通信控制器將發送緩沖區中的內容通過無線收發單元發送給無線網絡。
其中FF通信控制器FB3050經無線收發單元接收報文以及將報文發送給無線收發單元均采用DMA方式。FB3050擁有一個直接內存存取表,從而極大地方便了接收及發送工作。利用這個DMA表,FB3050能夠將接收信息直接存入內存,或從內存中發送信息,而不需要CPU的干預。
在接收時使用者只需要指定接收緩存區的內存區域,FB3050自動將信息按順序存入緩沖區。緩沖區是一個循環連續空間,所以當數據(信息)存入緩沖區末尾時,FB3050將返回到緩沖區起始位指針并繼續寫下一個已接收字節。緩沖區需要4 KB或更大空間。在發送時使用者只需要指定信息的開始指針的長度,FB3050在接收到發送命令的同時發送此信息到無線收發單元,再通過無線收發單元傳送到FF無線網絡上。
3 結束語
根據以上方案設計的基于FF協議的無線PC接口卡,很好地解決了控制結點分布廣、敷設通信線路困難的生產裝置或者有移動對象的工業現場的局 部網絡通信問題。在抗干擾能力、實時性、可靠性等方面基本滿足工業控制要求。隨著技術的成熟和更加廣泛的應用,工業控制系統的發展趨勢必定是由有線網絡向有線無線混合網絡發展?;贔F的無線網絡產品的軟硬件的開發,必將推動工業控制網絡的廣泛應用,并將產生巨大的社會及經濟效益。
參考文獻
[1]馮冬芹,施一明.基金會現場總線(FF)技術講座(第1講):基金會現場總線(FF)的發展與特點[J].上海:自動化儀表,2001,22(6):52-54.
[2]沈鋼,何星.工業控制網無線網關的設計和實現[J].蘭州:化工自動化及儀表,2001,28(6):37-41.
[3]Cavalieri S,Panno D.A.A Novel Solution to InterconnectFielBus Systems UsingIEEE Wireless LAN Technology[J].Computer Standards & Interfaces.1998,(20):9-23.
[4]李貴山,威德虎.PCI局部總線開發者指南[M].西安:西安電子科技大學出版社,1997.
[5]蔡建新,閻華文.現場總線通信控制器FB3050的原理和應用[J].西安:國外電子元器件,2000,(6):5-11.
[6]張銘,劉銀峰.基于nRF401的PC機無線收發模塊的設計[J].北京:電子技術應用,2002,28(4):76-78. 工業儀表與自動化裝置