西門子S7-200 PLC與MACS V系統通訊說明
目前和利時的MACS V系統與西門子的PLC系統通訊比較多,本文檔針對西門子的S7-200 PLC系統與MACSV系統的通訊進行介紹。
1、 系統資源
1.1西門子PLC的CPU型號,比如CPU(CPU222,或CPU224、CPU226,電源在CPU內部集成),通訊卡(必須支持DP協議,一般為EM277)。
1.2PLC的GSD文件,我們現在MACSV系統里一般包括了西門子的S7-200的GSD文件(siem089d.gsd)。
1.3DCS系統是MACS V系統(包括1.1.0,1.1.0+sp1,1.1.0+sp2)。
1.4通訊電纜最好采用專用的DP通訊線纜,如果采用普通的雙絞通訊線距離短數據量少也可以通訊。
2、PLC系統側的組態
2.1PLC側系統 的組態,與SMARTPRO的通訊設置一樣,不再具體敘述。
2.2直接將DP總線連接到EM277的DP口,設定EM277 DP從站號(要與DCS系統的站號一樣)。
2.3根據所需要通訊的變量數目,雙方協商設定通訊區的大小。
2.4確定通訊區的起始地址和長度,對于CPU222最大起始地址為2046,CPU226最大起始地址為5119,DCS側的該地址由ConMaker側組態時在參數數據中設置。
2.5PLC的通訊數據移到V變量存儲區中。
3、DCS系統側的組態
3.1設備組態
3.1.1 GSD文件:DCS測設備組態時,需要相應的GSD文件siem089d.gsd,應將此文件拷到PCBasedIO目錄下,如下圖:
(目前MACS V系統PCBasedIO里包括了EM277的GSD文件siem089d.gsd)
3.1.2自定義設備:
3.1.2.1打開設備組態工具,選擇你的工程;
3.1.2.2在查看中點擊自定義設備;
3.1.2.3在自定義設備的所屬鏈路框中選擇DP;
3.1.2.4引入GSD文件,點擊引入按鈕;
3.1.2.5引入EM277的GSD文件;
然后在下方出現:EM277 PROFIBUS-DP設備;
3.1.2.6對EM277設備進行定義,點擊右鍵-定義設備;
彈出以下對話框:
3.1.2.7對設備進行定義:定義一個設備名稱并對EM277設備添加模塊。
3.1.2.8對EM277設備模塊進行通道定義;(選中模塊號0,然后點擊右邊的模塊定義按鈕),如果通訊點是開關量定義BIT,如果模擬量要定義WORD。
3.1.2.9定義結束后在EM277下出現你自己定義的模塊(S7-200)。
3.1.2.10設備定義后在控制站里添加你定義的PLC模塊,選中你定義的S7200PLC后加入;
3.1.2.11更改PLC的地址
3.1.2.12然后進行編譯,編譯成功后保存。
3.2進行工程硬件設備生成;
3.2.1打開總控:經過數據庫基本編譯、聯編、生成下裝文件后在控制器算法組態的相應站里生成MACS設備配置。
3.2.2定義和PLC通訊的虛擬內存地址:
3.3定義DCS和PLC之間的通訊變量;
3.3.1在數據總控中定義;
3.3.1.1打開數據總控,然后在數據類名中要選擇BIT(開關量通訊)
3.3.1.2進行通訊點定義,也可以用導入導出功能定義數據。
3.3.1.3數據通訊點定義完畢后更新保存。
3.3.1.4在數據總控中進行全部編譯,然后在CODESYS中自動生成數據庫點。
3.3.1.5根據要求完成控制方案。
3.3.2在下層定義CODESYS中定義。
3.3.2.1在CODESYS中新建一個全部變量區,不要與IO變量區放在一起;
1. 3.3.2.2數據庫總控中變量添加:這樣添加的變量,在數據庫總控聯編時不會自動添加到DM變量表中,需要重新建立一組對應的變量,然后進行賦值到DM變量中。下圖中的變量在數據庫總控聯編時會自動添加到DM變量表中,畫面組態使用此部分變量。
4、注意事項
ConMaker與EM277中的地址對應關系:
QBOUT——ConMaker在硬件配置中自動分配的該模件的輸出區起始地址;
IBIN —— ConMaker在硬件配置中自動分配的該模件的輸入區起始地址;
V-memory —— PLC中設置的通訊區(變量存儲區)的起始地址,CPU222中輸入輸出緩沖區的長度由I/O配置決定,下例中I/O數據均為4 word,先是輸出區,輸入區緊隨其后。
|
BYTE |
ConMaker中的位置 |
S7200 CPU中的位置 |
輸
出
區 |
0 |
QWOUT+0 |
V-memory+0 |
… |
… |
… |
3 |
QWOUT+3 |
V-memory+3*2 |
輸
入
區 |
0 |
IWIN+0 |
V-memory+8 |
… |
… |
… |
3 |
IWIN+3 |
V-memory+8+3*2 |
注意:S7200 CPU中的偏移都是相對于V區開始的字節偏移,VB、VW、VD等其中的B、W、D只是表明了從該偏移起的這個變量是字節、字或雙字。這一點和ConMaker中的IW、QW有所不同,ConMaker中的IW、QW指的是對于輸入輸出區的“字偏移”,IB、QB指對輸入輸出區的“字節偏移”。
.
|