1、 引言
原油輸送站控系統是原油輸送中不可缺少的環節,其主要是實現原油的匯集與轉輸,同時要對來油進行加熱、加壓和含水分析等,其站內主要分為加熱爐系統、加壓泵系統、罐區系統、流量計系統等。為了實現生產數據的集中管理、保存和打印,就需要將各個系統中的數據進行集中采集和保存,而多個系統都是采用專用的和不同廠家的控制系統,如加熱爐系統、流量計系統等。因此,對中心站控系統就必須解決各個系統之間的通訊問題。
在對中國石油長慶油田XX管道沿河灣SCADA系統的設計中,就遇到此類問題,即加熱爐系統采用的是北京亞控自動化公司的組態王軟件進行監控,而中心SCADA系統則采用Siemens公司的S7 400 PLC和Wincc軟件進行監控,并且在通訊電纜的設計中采用的是兩芯屏蔽電纜,因此就無法采用工業以太網和OPC協議實現互相之間的通訊,最后雙方決定采用Modbus RTU通訊協議進行通訊。
2、通訊系統組成
中國石油長慶油田XX管道沿河灣站控系統采用的是Siemens S7 400和ET200M系列PLC,其監控系統原理圖如下所示:
為了實現站控計算機可以同加熱爐系統通過Modbus RTU協議進行通訊,采集必要的數據,在ET200M子站中配置了Siemens公司S7 300系列PLC中的CP341通訊模塊。CP341通訊模塊是通過點到點連接,用于高速,強大的串行數據交換,以減輕CPU的負擔。該模塊提供了三種不同類型的傳輸接口:
(1)、RS232C(V.24) (2)、20mA(TTY) (3)、Rs422/Rs485(X.27)
同時,該模塊內置有ASCII、3964(R)和RK512通訊協議,此外,該模塊也可以裝載其他的通訊協議,如Modbus Master協議、Modbus Slave協議和Data Highway協議。
在本設計中,CP341作為Modbus RTU Master,組態王作為Modbus RTU Slave,CP341通過單獨定購的Modbus RTU Master軟件來實現雙方的主從通訊,其可以實現的功能代碼為:01,02,03,04,05,06,07,08,11,12,15,16,傳輸速率最高可以達到76.8Kbit/s。CP341與組態王運行的工業控制計算機之間的通訊為Rs485方式,其連接方式如下所示:
3、軟件實現方法
要通過CP341通訊模塊同組態王之間的通訊,軟件的設計也是一個比較重要的環節,對于CP341主要包括Modbus Master的下裝和對應的發送、接收模塊程序的設計,對于組態王側則需要安裝Modbus Slave的驅動程序。在CP341中下載Modbus Master驅動,可以進入Step7中的Hardware Configuration中選中模塊雙擊,在彈出的窗口中選擇Parameter按鈕,在出現的Assigning Parameters to Point-To-Point Connections窗口中進行對應的驅動下載。CP341接收、發送程序的設計主要包括DB塊的設計和FC功能塊的調用。
(1)、CP341發送模塊的設計
對于通過CP341的Modbus Master驅動通訊的發送模塊需要設計DB塊和FC塊,其DB塊的結構如下:
而發送程序主要是通過調用功能塊FB8來實現,其程序可以設計為如下:
(2)、CP341接收程序的設計
由于CP341可以處理接收程序的細節部分,因此對于設計者來說只需要進行簡單的設計就可以實現數據的接收。接收程序同樣也需要設計Db塊和FC程序塊,其DB塊和FC塊的結構可以定義成如下的結構:
(3)、組態王程序設計方法
組態王是作為Modbus Slave端的,其通過安裝ModbusRTUServer驅動程序和定義“智能模塊――北京亞控――ModRTUServer――串口”通訊設備來實現的。組態王提供2種寄存器,其說明如下:
名字 編號范圍 數據類型 含義
B 1 “ 30000 BIT 開關寄存器
R 1 ” 30000 INT/UINT/LONG/FLOAT 數據寄存器
外部設備通過標準Modbus與組態王驅動進行通訊,使用的功能碼對應如下:
寄存器 讀功能碼 寫功能碼
B 1,2 5
R 3,4 6,16
由此,僅需要定義對應的變量名稱,并且通過周期執行的命令語言,將數據賦給對應的外部通訊設備需要讀取的變量中就可以完成通訊功能。組態王是通過不斷的監聽串口的通訊數據,一旦有外部讀取數據命令,組態王就將對應的數據傳送到對方。
在調試雙方的通訊程序時,需要注意以下幾點:第一、在PLC程序中調用發送模塊FB8時,其R_TYP參數數值為字符型并且必須為大寫字母X,否則通訊不能成功;第二、為了使PLC接收程序比較簡單,建議將組態王側的數據均定義成寄存器(R),而不區分是位還是寄存器;第三、在組態王中定義Modbus Slave地址時,采用1:20的結構,其1代表組態王作為Modbus Slave的從站地址,20代表通訊的時間間隔,單位毫秒。
4、結束語
通過使用CP341點對點通訊模塊和組態王ModbusRTUServer驅動程序,解決了不同的應用系統之間通過Modbus標準通訊進行互相通訊的方法,同時也為將不同系統的數據集成到一個系統中提供了可能的實現方法。
責任編輯:gt
-
plc
+關注
關注
5008文章
13167瀏覽量
462195 -
電纜
+關注
關注
18文章
2698瀏覽量
54691 -
通訊協議
+關注
關注
10文章
272瀏覽量
20327
發布評論請先 登錄
相關推薦
評論