STEP7 V5.x 中EM277 與S7-300的Profibus DP通訊
TIA 中EM277 與S7-300的Profibus DP通訊
DP通信所需要傳輸?shù)臄?shù)據(jù)超過64字節(jié)怎么辦?
EM277 作為一個特殊的PROFIBUS-DP從站模塊,其相關(guān)參數(shù)(包括上述的數(shù)據(jù)一致性)是以GSD(或GSE)文件的形式保存的。在主站中配置EM277,需要安裝相關(guān)的GSD文件。
S7-300與S7-200通過EM277 進(jìn)行PROFIBUS DP通訊,需要在STEP7中進(jìn)行S7-300站組態(tài),在S7-200系統(tǒng)中不需要對通訊進(jìn)行組態(tài)和編程,只需要將要進(jìn)行通訊的數(shù)據(jù)整理存放在V存儲區(qū),并且S7-300組態(tài)EM277從站時設(shè)置正確的地址即可。
從站地址---EM277的從站地址通過硬件設(shè)置,在模塊本身上的撥碼設(shè)置分為X0(地址個位)和X10(地址十位);
波特率---EM277是波特率自適應(yīng)的,DP網(wǎng)絡(luò)的波特率取決于S7-300的組態(tài)。
通訊數(shù)據(jù)地址對應(yīng)---假設(shè)DP主站已定義了16入/16出的一種I/O配置,V區(qū)偏移量為2000,則其對應(yīng)關(guān)系如下:
圖1 通過EM277 在S7-200 CPU本地的輸入/輸出緩沖區(qū)分配
在主站上容易分辨輸入/輸入緩沖區(qū),而通過EM277在S7-200 CPU的V存儲區(qū)的映射,是本地的輸入緩沖區(qū)(也就是主站的輸出緩沖區(qū))在前(地址低),輸出緩沖區(qū)(主站的輸入緩沖區(qū))在后面(地址高)。
第一,在STEP 7項(xiàng)目里插入一個S7-300的站:
圖2 S7-300組態(tài)
第二,選中STEP7的硬件組態(tài)窗口中的菜單 Option-Install new GSD( EM 277 GSD 下載) ,導(dǎo)入SIEM089D.GSD文件,安裝EM277 從站配置文件,如圖2:
圖2 安裝GSD
第三,點(diǎn)擊Browse,添加GSD文件路徑:
圖3 加GSD路徑
第四,導(dǎo)入GSD文件后,在右側(cè)的設(shè)備選擇列表中找到EM277 從站,PROFIBUS DP-Additional Field Device-PLC-SIMATIC-EM277,并且根據(jù)通訊字節(jié)數(shù),選擇一種配置(只能添加一組),本例選擇8字節(jié)入/8字節(jié)出的方式,如圖4:
第五,確定S7-300硬件組態(tài)中所設(shè)置EM277 的地址,如下圖紅框標(biāo)注,為DP從站EM277 的站地址。
圖5 組態(tài)DP通信地址
第六,組態(tài)完系統(tǒng)的硬件配置后,將編譯下載到S7-300的PLC當(dāng)中。
第七,在S7-200側(cè)斷電的情況下,將EM277 的撥位開關(guān)撥到與S7-300側(cè)硬件組態(tài)的設(shè)定值一致。 在S7-200中編寫程序?qū)⑦M(jìn)行交換的數(shù)據(jù)存放在VB0-VB7,VB8-VB15,分別對應(yīng)S7-300的PQB0-PQB7和PIB0-PIB7,打 開 STEP7中的變量表和STEP7 MicroWin的狀態(tài)表進(jìn)行監(jiān)控,它們的數(shù)據(jù)交換結(jié)果如圖6/圖7所示:
圖6 通信數(shù)據(jù)監(jiān)控
圖7 通信數(shù)據(jù)監(jiān)控
注意:VB0-VB7是S7-300寫到S7-200的數(shù)據(jù),VB8-VB15是S7-300從S7-200讀取的值。EM277上撥位開關(guān)的位置一定要和S7-300中組態(tài)的地址值一致。如果使用的S7-200通信區(qū)域不從VB0開始,則需要設(shè)置地址偏移,在S7-300硬件組態(tài)中雙擊 EM277,修改數(shù)值0為實(shí)際使用的數(shù)值即可,如下圖所示:
圖8 地址區(qū)域偏移設(shè)置
首先,在TIA STEP 7項(xiàng)目里插入一個S7-300的站,并添加DP主站:
圖9 添加S7-300站點(diǎn)
打開TIA網(wǎng)絡(luò)視圖,選中菜單-選項(xiàng)-安裝設(shè)備描述文件 GSD( EM 277 GSD 下載) ,導(dǎo)入SIEM089D.GSD文件,安裝EM277 從站配置文件,見圖10:
圖10 安裝GSD
彈出圖11界面,選擇EM277 GSD文件存放路徑,并安裝GSD文件,如圖11:
圖11 安裝GSD
導(dǎo)入GSD文件后,如圖12示步驟操作:
圖12 添加EM277站點(diǎn)
選中EM277,切換為設(shè)備視圖,
此例中:VB0-VB7是S7-300寫到S7-200的數(shù)據(jù),VB8-VB15是S7-300從S7-200讀取的值。
圖13 通訊區(qū)域組態(tài)
組態(tài)完,編譯程序下載到S7-300的PLC當(dāng)中。 在S7-200側(cè)斷電的情況下,將EM277 的撥位開關(guān)撥到與S7-300側(cè)硬件組態(tài)的設(shè)定值一致。 在S7-200中編寫程序?qū)⑦M(jìn)行交換的數(shù)據(jù)存放在VB0-VB7,VB8-VB15,分別S7-300的QB0-QB7和IB0-IB7,打開 TIA中的監(jiān)控STEP7 MicroWin的狀態(tài)表進(jìn)行監(jiān)控。
常見問題:
如果組態(tài)的io地址較大,則可能超過了300CPU默認(rèn)的過程映像區(qū)。此時將IB,IW改為PIB,PIW讀取。
方法1:軟件里固定的通訊長度最大64bytes out/64 bytes in, 可以選擇圖中的“通用模塊”根據(jù)實(shí)際需求自由設(shè)置輸入/輸出區(qū)域,而EM277 最大的通訊字節(jié)數(shù)是64 word out/64 word in。
方法2:分時通訊。以64字節(jié)通信區(qū)為例,若超過最大配置。那么可以將通信區(qū)的第一個字節(jié)作為標(biāo)志位,這樣需要在S7-200中分時或條件判斷,將數(shù)據(jù)放置或讀取通信區(qū)域。同理,在S7-300中也需要判斷標(biāo)志位。
方法3:滿足擴(kuò)展要求的前提下,同一個200PLC可以擴(kuò)展多個EM277,具體可以參考本文中最大I/O擴(kuò)展能力的要求,那么在同一個S7-300的項(xiàng)目里可以組態(tài)多個PROFIBUS從站。
方法2可以增大通信的數(shù)據(jù)量,但由于通過標(biāo)志位來分時分次傳輸?shù)?,所以通信?shù)據(jù)的刷新會比方法3慢;方法3通過擴(kuò)展DP從站或者200PLC的通信端口來實(shí)現(xiàn)數(shù)據(jù)擴(kuò)展的,但增加了成本,且需要考慮是否滿足擴(kuò)展要求。
電話:15721373211
郵箱:15721373211@139.com
網(wǎng)址:http://youmiyou.cn/
地址:上海青浦區(qū)北青公路7171號111-112室