1.s7-200和s7-300進(jìn)行mpi通信
s7-200 plc與s7-300 plc之間采用mpi通訊方式時(shí),s7-200 plc中不需要編寫(xiě)任何與通訊有關(guān)的程序,只需要將要交換的數(shù)據(jù)整理到一個(gè)連續(xù)的v 存儲(chǔ)區(qū)當(dāng)中即可,而s7-300 plc中需要在組織塊ob1(或是定時(shí)中斷組織塊ob35)當(dāng)中調(diào)用系統(tǒng)功能x_get(sfc67)和x_put(sfc68),以實(shí)現(xiàn)s7-200 plc與s7-300 plc之間的通訊。調(diào)用sfc67和sfc68時(shí)var_addr參數(shù)填寫(xiě)s7-200的數(shù)據(jù)地址區(qū),由于s7-200的數(shù)據(jù)區(qū)為v區(qū),這里需填寫(xiě) p#db1.dbx×× byte n 對(duì)應(yīng)的就是s7200 v存儲(chǔ)區(qū)當(dāng)中vb××到vb(××+n)的數(shù)據(jù)區(qū)。例如交換的數(shù)據(jù)存在s7-200中vb50到vb59這10個(gè)字節(jié)當(dāng)中,var_addr參數(shù)應(yīng)為 p#db1.dbx50.0 byte 10.
首先根據(jù)s7-300的硬件配置,在step7當(dāng)中組態(tài)s7-300站并且下載,注意s7-200和s7-300出廠默認(rèn)的mpi地址都是2,所以必須修 改其中一個(gè)plc的站地址,例子程序當(dāng)中將s7-300 mpi地址設(shè)定為2,s7-200地址設(shè)定3,另外要分別將s7-300和s7-200的通訊速率設(shè)定一致,可設(shè)為9.6k,19.2k,187.5k三 種波特率,例子程序當(dāng)中選用了19.2k的速率。
s7-200 plc修改mpi地址可以參考下圖:
圖1 s7-200 設(shè)置mpi地址
s7-300 plc修改mpi地址可以參考下圖:
圖2 s7-300 設(shè)置mpi地址
例子程序在ob1當(dāng)中調(diào)用數(shù)據(jù)讀寫(xiě)功能塊:sfc67和sfc68,如下圖:
圖3 程序編寫(xiě)
分別在step7 microwin32 和step7當(dāng)中監(jiān)視s7-200和s7-300 plc當(dāng)中的數(shù)據(jù),數(shù)據(jù)監(jiān)視界面如下:
圖4 s7-200監(jiān)控結(jié)果
圖5 s7-300監(jiān)控結(jié)果