工業(yè)通信用網(wǎng)關設計及技術研究
出處:夏繼強, 梁超眾, 邢春香 發(fā)布于:2011-08-23 11:25:23
采用現(xiàn)場總線技術的工業(yè)測控系統(tǒng)具有結構簡單、易于維護、開放性、分散性和可互操作性等優(yōu)點。但因為現(xiàn)階段多種現(xiàn)場總線協(xié)議的共存,導致其上述優(yōu)點不能充分體現(xiàn)出來。針對目前工業(yè)測控領域多種現(xiàn)場總線共存的客觀事實,探討如何將兩種或多種現(xiàn)場總線系統(tǒng)集成具有重要意義。
1 網(wǎng)關系統(tǒng)解決方案設計
現(xiàn)場總線用網(wǎng)關一般要擔負兩種或多種總線之間的協(xié)議數(shù)據(jù)轉換的責任,屬于系統(tǒng)連接的關鍵部分。因此系統(tǒng)大多采用圖1所示的的結構來實現(xiàn)。

應用本網(wǎng)關所組成的系統(tǒng)總體結構如圖2所示。智能網(wǎng)關在系統(tǒng)中無縫連接PROFIBUS-DP(以下簡稱”DP”)現(xiàn)場總線系統(tǒng)與MODBUS總線系統(tǒng),實現(xiàn)同一系統(tǒng)內兩種總線設備的共存。

2 網(wǎng)關結構設計
現(xiàn)階段的網(wǎng)關設計主要有協(xié)議芯片、硬核、軟核三種解決方案:
(1) 協(xié)議芯片解決方案:采用專門芯片來實現(xiàn)相關協(xié)議,這種方法開發(fā)周期短,實現(xiàn)起來相對簡單,比較適合于快速開發(fā),但成本稍高。
(2) 硬核解決方案:主要是對ASIC如CPLD、FPGA等進行硬件編程來實現(xiàn)相關協(xié)議的IP核。此方案對開發(fā)人員的硬件及軟件知識要求,協(xié)議稍復雜,實現(xiàn)難度就很大。但是網(wǎng)關性能可以與采用協(xié)議芯片實現(xiàn)方式相媲美。
(3) 軟核解決方案:用軟件實現(xiàn)協(xié)議數(shù)據(jù)鏈路層協(xié)議處理功能,結合相應的外圍硬件電路實現(xiàn)協(xié)議功能。此方法成本低,但需要開發(fā)人員充分了解相關協(xié)議及協(xié)議運作機制。對于復雜的協(xié)議,編程工作量巨大,且可靠性不易保證,受單片機處理速度影響,通常網(wǎng)關的性能不如其他兩種方法。
在一般工業(yè)控制用網(wǎng)關設計中,都有較短的開發(fā)周期及很高的可靠性要求。因此,對于復雜的協(xié)議如DP、CAN、FF總線等一般選用協(xié)議芯片實現(xiàn);對于較簡單的協(xié)議如MODBUS等一般用軟核實現(xiàn)。本網(wǎng)關采用了DP協(xié)議芯片與MODBUS軟核相結合的實現(xiàn)方式。

按照功能劃分,網(wǎng)關可以分為電源管理模塊、中央管理模塊、DP從站模塊和RS485通信模塊。
本網(wǎng)關設計要求串行口速率能夠達到921.6 kb/s?;诖艘?,硬件平臺選用PHILIPS公司的ARM7-TDMI核微處理器。
電源管理模塊負責整套系統(tǒng)的電源供給,系統(tǒng)的穩(wěn)定運行與電源模塊的穩(wěn)定性能關系密切,此處設計的電源模塊兼有熱插拔和電壓轉換功能;DP從站模塊的功能由協(xié)議芯片(VPC3+C)實現(xiàn);中央管理模塊除了實現(xiàn)對DP從站模塊的配置和管理,還要完成MODBUS協(xié)議的實現(xiàn)以及兩種協(xié)議數(shù)據(jù)交換協(xié)議棧的實現(xiàn)。
3 網(wǎng)關系統(tǒng)的實現(xiàn)
網(wǎng)關系統(tǒng)在軟件設計方面與網(wǎng)關連接總線系統(tǒng)所采用的協(xié)議有較大差別,但一般協(xié)議在定義時為了實現(xiàn)靈活性好、易于實現(xiàn)和維護等優(yōu)點都采用分層結構。網(wǎng)關軟件設計時也可以采用分層結構,在應用層實現(xiàn)協(xié)議數(shù)據(jù)的相互轉換。
網(wǎng)關協(xié)議棧是連接MODBUS輸入/輸出模塊與DP通信的橋梁。協(xié)議棧分為DP通信層、協(xié)議數(shù)據(jù)映射層和MODBUS通信層三層。網(wǎng)關協(xié)議棧分層結構及各層功能如圖4所示。

3.1 軟件總體結構設計
CPU通過驅動VPC3+C來實現(xiàn)對DP通信過程的控制,包括通信接口檢查、正常和發(fā)生故障情況下的診斷數(shù)據(jù)的發(fā)送及數(shù)據(jù)交換等過程;通過MODBUS協(xié)議實現(xiàn)對下掛的輸入/輸出從站模塊的查詢操作;通過對模塊應答幀進行分析來判斷模塊的狀態(tài)以及模塊的通道狀態(tài),根據(jù)模塊狀態(tài)信息填充DP的診斷域的數(shù)據(jù),并以此為依據(jù)實現(xiàn)對網(wǎng)關通信狀態(tài)的控制。

3.2 PROFIBUS-DP總線驅動
此網(wǎng)關DP通信部分采用協(xié)議芯片VPC3+C,其內部含有4 KB RAM,用戶可根據(jù)需要對其進行設置;具有兩種微處理器接口:數(shù)據(jù)/地址總線復用或單獨操作。因為ARM核對外部RAM操作的速度較快,時序不能滿足VPC3+C的操作時序,因此這里用ARM的GPIO口來模擬VPC3+C的操作時序。
3.3 MODBUS協(xié)議的實現(xiàn)
為提高信號傳輸?shù)木嚯x及抗干擾能力,此處MODBUS物理層采用標準RS485通信。為了保證MODBUS協(xié)議軟核的健壯性,設計了其有限狀態(tài)機[1]模型,如圖6所示,并根據(jù)此有限狀態(tài)機模型運用狀態(tài)路由器進行軟件實現(xiàn)。

4 網(wǎng)關關鍵技術研究
對于工業(yè)用網(wǎng)關應用來說,保證網(wǎng)關正常工作的首要條件是其所連接的系統(tǒng)數(shù)據(jù)映射關系的正確性,其次可靠性和故障處理能力是網(wǎng)關可長期穩(wěn)定工作的重要影響因素,對網(wǎng)關實時性的要求則因系統(tǒng)的不同而各異。
4.1 數(shù)據(jù)映射關系管理
本網(wǎng)關對所有可能下掛的模塊的輸入輸出數(shù)據(jù)格式進行分析,然后分別定義了各個模塊對應的通信接口配置字,并在GSD文件以下例格式進行描述:
Module="AI31xx——4 channels" 0xd3; 輸入模塊AI31xx占4個字長
EndModule
這樣在對其進行硬件組態(tài)時,只需要將對應的模塊放到對應的地址槽中即可。
在網(wǎng)關協(xié)議棧中同樣保留上述表用來查詢下掛模塊類型對應的控制字和硬件組態(tài)數(shù)據(jù)進行比較。并以硬件組態(tài)數(shù)據(jù)為標準填充數(shù)據(jù)映射表,單個模塊數(shù)據(jù)映射表數(shù)據(jù)結構如下:
typedef struct{
unsigned char cfg_data; /*記錄模塊的參數(shù)配置字*/
MODULE_STATE this_state; /*當前模塊的狀態(tài)*/
unsigned char start_position; /*記錄模塊數(shù)據(jù)在
PROFIBUS-DP中交換數(shù)據(jù)中的起始地址*/
unsigned char data_length; /*記錄模塊數(shù)據(jù)在
PROFIBUS-DP中交換數(shù)據(jù)中所占長度*/
unsigned char data_direction; /*記錄模塊數(shù)據(jù)在
PROFIBUS-DP中是輸入數(shù)據(jù)還是輸出數(shù)據(jù)*/
} IO_CONFIG_PRM。
其中MODULE_STATE為枚舉數(shù)據(jù)類型,代表MODBUS從站當前狀態(tài),數(shù)據(jù)結構如下:
typedef enum module_state{
TYPE_OK,
NOT_EXIST,
TYPE_DISAGREE
}MODULE_STATE;
4.2 保證實時性措施
網(wǎng)關在對兩種協(xié)議的數(shù)據(jù)進行映射的過程中采用了性內存拷貝技術和單緩沖區(qū)技術來盡快完成數(shù)據(jù)的處理且保證是數(shù)據(jù),以此來保證網(wǎng)關通信的實時性能。
性內存拷貝技術是指網(wǎng)關從協(xié)議芯片內部讀取到DP的輸出數(shù)據(jù)后,直接將此數(shù)據(jù)填充到MODBUS輸出幀對應的位置;從MODBUS輸入模塊得到的數(shù)據(jù)直接填入到DP協(xié)議芯片的輸入緩沖區(qū)的對應位置。用這種方式來減少內存拷貝過程中所耗費的時間。
高效地使用指針可以大大提高網(wǎng)絡協(xié)議棧性能。本網(wǎng)關在MODBUS協(xié)議實現(xiàn)過程的信息處理中就采用了函數(shù)指針實現(xiàn)指針路由功能,避免了因過多判斷對系統(tǒng)性能的影響,這樣做不僅提高了系統(tǒng)處理信息的能力,也使系統(tǒng)有很好的擴展性能。上述性內存拷貝技術也是通過指針來實現(xiàn)的。
4.3 保證可靠性措施
在硬件方面,除了保證網(wǎng)關性能所必須的參數(shù)外,還應在成本和可靠性方面做出一定的折中。本系統(tǒng)中為了提高系統(tǒng)的抗干擾能力,與外界通信的部分和系統(tǒng)在物理接口上都進行b 電氣隔離,此處的3個通信接口都需要進行隔離。根據(jù)通信性能要求的不同,選擇磁耦隔離+驅動芯片完成DP通信的隔離兼物理層電平轉換功能;用雙通道磁耦隔離芯片來完成另外兩路串行口通信的隔離。這兩款芯片都采用了的基于芯片尺寸的變壓器隔離技術的磁耦,與傳統(tǒng)的光耦比較,其轉換速度、瞬態(tài)共模抑制能力、功耗、尺寸及成本等方面均有很明顯的優(yōu)勢。為了滿足工業(yè)現(xiàn)場即插即用的要求,設計了電源轉換及保護電路來實現(xiàn)網(wǎng)關供電系統(tǒng)的穩(wěn)定,保證系統(tǒng)的可靠運行,并支持帶電作業(yè)。
網(wǎng)關系統(tǒng)中如何保證多種總線通信的互不干擾是很重要的環(huán)節(jié)。此網(wǎng)關系統(tǒng)中MODBUS協(xié)議是由軟件來實現(xiàn)的,考慮到需要定時器等保證通信的可靠性,為了防止兩種協(xié)議通信的相互影響,對DP輸出數(shù)據(jù)的讀取采用查詢的方式而非中斷方式進行訪問。這樣在DP的數(shù)據(jù)到來后不會打斷正在進行的MODBUS通信過程,尤其是在DP通信速率較高的情況下,這種設計的可靠性更加明顯。如果采用中斷的方式,當DP通信速率超過一定值后,其勢必影響網(wǎng)關與MODBUS從站之間的通信,嚴重時會導致MODBUS幀傳輸?shù)牟煌暾?,從而導致網(wǎng)關對MODBUS模塊通信狀態(tài)的誤判,進而影響系統(tǒng)的可靠性。
4.4 模塊故障信息的處理
西門子的DP從站設備只要有一個模塊出現(xiàn)錯誤,則模塊從屬的從站會退出正常的數(shù)據(jù)交換狀態(tài),這樣導致此從站相連的其他正常模塊也不能進行數(shù)據(jù)交換,進而對于整個設備的運行產(chǎn)生影響。這種處理方式認為所有的模塊都屬于關鍵模塊,只要有一個出現(xiàn)問題其余都會“被迫下線”,但這種處理方式不太靈活。相比來看,本網(wǎng)關在處理故障的策略則更加靈活。本網(wǎng)關可以判斷的故障診斷信息包括:模塊類型錯誤、模塊超時故障、模塊不存在故障以及模擬量輸入模塊的通道斷線標志。
本網(wǎng)關在其對應的GSD文件中的用戶自定義診斷數(shù)據(jù)部分定義了上述4種故障對應的代碼。故障代碼格式如下:
Unit_Diag_Bit(x)=“插槽x中模塊不存在”
Unit_Diag_Bit(8+x)=“插槽x中模塊類型錯誤”
Unit_Diag_Bit(16+x)=“插槽x中模塊超時”
Unit_Diag_Bit(24+x+8×y)=“插槽x中模塊通道y斷線”
在正常運行中,在標準的診斷信息后只需要使用3+x個字節(jié)即可描述x個模塊的診斷信息。在系統(tǒng)運行過程中該診斷信息由中央管理模塊管理,如果存在故障,則填入VPC3+C的用戶診斷緩沖區(qū),然后置位診斷狀態(tài)位,這樣主站會在檢測到此診斷位的下一個訪問周期發(fā)送請求從站診斷報文幀,待取回診斷幀后繼續(xù)進行正常的數(shù)據(jù)交換請求。上述過程不斷重復,直至網(wǎng)關下掛的模塊故障消除為止。在此過程中不存在上述故障的模塊則仍然映射成標準的DP從站模塊,正常的數(shù)據(jù)更新不受影響。該網(wǎng)關采用這種方式來保證狀態(tài)正常的模塊不停止工作,提高系統(tǒng)的靈活性。
5 網(wǎng)關性能測試
本網(wǎng)關的性能和下掛模塊以及DP總線波特率設定有直接的關系。經(jīng)過測試和DP通信速率可以到達DP協(xié)議規(guī)定的速度12 Mb/s;與MODBUS每個模塊完成通信的長時間為10.7 ms(波特率為115.2 kb/s時);一個掃描周期內故障判斷等所用時間為400 ?滋s。用戶在設計過程中可以根據(jù)實際系統(tǒng)需求進行具體分析和配置。
本文對工業(yè)通信用網(wǎng)關的設計進行了闡述,以PROFIBUS-DP智能網(wǎng)關的設計為例對此類網(wǎng)關實現(xiàn)的關鍵技術進行了分析。針對本網(wǎng)關,硬件方面,采用電源管理模塊實現(xiàn)網(wǎng)關的熱插拔功能,采用專用芯片解析DP協(xié)議,采用磁耦隔離代替?zhèn)鹘y(tǒng)的光耦隔離,提高了系統(tǒng)的性能和可靠性。軟件方面,采用單緩沖區(qū)設計、性內存拷貝技術以及合理的中斷應用來保證系統(tǒng)的實時性和可靠性。對網(wǎng)關的數(shù)據(jù)映射處理和故障處理進行了詳細的分析,并給出了其性能參數(shù)。本設計為其他工業(yè)通信用網(wǎng)關的設計提供了參考依據(jù)。
版權與免責聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權均屬于維庫電子市場網(wǎng),轉載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關法律責任。
本網(wǎng)轉載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉載時,必須保留本網(wǎng)注明的作品出處,并自負版權等法律責任。
如涉及作品內容、版權等問題,請在作品發(fā)表之日起一周內與本網(wǎng)聯(lián)系,否則視為放棄相關權利。
- 什么是氫氧燃料電池,氫氧燃料電池的知識介紹2025/8/29 16:58:56
- SQL核心知識點總結2025/8/11 16:51:36
- 等電位端子箱是什么_等電位端子箱的作用2025/8/1 11:36:41
- 基于PID控制和重復控制的復合控制策略2025/7/29 16:58:24
- 什么是樹莓派?一文快速了解樹莓派基礎知識2025/6/18 16:30:52









