1.示例系統(tǒng)的體系結(jié)構(gòu)
本例中選用 S7-300 CPU 314C-PtP 作為 RS485 USS 串行通訊主站,連接一個(gè) MM440 變頻器。連接多個(gè) MM440 時(shí)與之相同。
2.軟件版本描述
需要軟件
STEP 7 V5.2 以上
PtP Param
Drive ES SIMATIC for Function Block Library DRVUSSS7(含手冊)
需要硬件
1:S7-300 CPU 314C-2PtP
2:MM440
3。串口通訊連接圖
S7-300PtP MM440
PIN 4 ……………………… … . PIN 30
PIN 11…………………… … … PIN 29
4.組態(tài)
4.1 組態(tài)MM440 USS 通訊參數(shù)
P003=3 訪問級
P700=5 通訊源,從USS 通訊接口
P1000=5 頻率設(shè)定點(diǎn)數(shù)據(jù)源,從USS 通訊接口
P2010=6 波特率為9.6K (7 為19.2K, 8 為38.4K)
P2011=1 USS 站號
P2012=4 USS PZD 長度
P2013=4 USS PKW 長度
P2014=1000 監(jiān)控時(shí)間
4.2 組態(tài)S7-300PtP 串口通訊參數(shù)
5 plc 編程
5.1 拷貝 DRVUSSS7 庫程序到應(yīng)用程序中
在本例中,站號為 1,PZD 和 PKW 為 4,在 OB100 初始化程序中修改相應(yīng)程序:
讀寫多個(gè)站時(shí)必須使 PKW 和 PZD 數(shù)量相同且站號連續(xù)。DB50,100 任選,DB10 用于串口通訊塊。這些數(shù)據(jù)塊在啟動(dòng) CPU 時(shí)自動(dòng)生成,不用在程序中新建。
5.2 注意在 FC30 中塊調(diào)用的順序(請參考 Drive ES SIMATIC DRVUSSS7 手冊)
FC21(USS 發(fā)送)– SFB60(串口發(fā)送)- FC22(USS 接收)- SFB61 (串口接收)
DB100 中的請求數(shù)據(jù)通過 DB50 來協(xié)調(diào),指向 DB10 中,用 SFB60 發(fā)送出去;SFB61 用DB10 作為接收區(qū),通過 DB50 來協(xié)調(diào),最后按站排序放在 DB100 中。所以用戶關(guān)心的數(shù)據(jù)都放在 DB100 中。
5.3 DB100 中數(shù)據(jù)存儲的規(guī)則(請參考 Drive ES SIMATIC DRVUSSS7 手冊)
每一個(gè)站占用的數(shù)據(jù)為 2X(PKW+PZD)+PKW+6 字
在本例中,PKW 和PZD 為4,所占用數(shù)據(jù)的字為26 個(gè)字
圖4 中 PZD 為16,PKW 為4。
在本例中PKW 發(fā)送區(qū)為DB100.DBW22~28,PZD 發(fā)送區(qū)為DB100.DBW30~36,PKW 接收區(qū)為DB100.DBW38~44,PZD 接收區(qū)為DB100.DBW46~52 (n 為2) 。后續(xù)站數(shù)據(jù)結(jié)構(gòu)與之相同,每個(gè)站占用26 個(gè)字。PKW 數(shù)據(jù)發(fā)送時(shí),要置位通訊控制KSTW 第一位一次,在本例中為 DB100.DBX3.0,然后被程序復(fù)位。
6 數(shù)據(jù)傳送規(guī)則
對 PKW 區(qū)數(shù)據(jù)的訪問是同步通訊,即發(fā)一條信息,得到返回值后才能發(fā)第二條信息。PKW 一般為 4 個(gè)字。
1,讀寫 0002~1999 的參數(shù)。
如:讀 P0700, 700(DEC)=2BC(HEX)
PLC PKW 輸出=12BC,0000,0000,0000 1 表示讀請求
PLC PKW 輸入=12BC,0000,0000,0006 返回 1 表示單字長,值為 0006(HEX)
如:讀 P1082, 1082(DEC)=43A(HEX)
PLC PKW 輸出=143A,0000,0000,0000 1 表示讀請求
PLC PKW 輸入=243A,0000,4248,0000 返回 2 表示雙字長,值為 42480000(HEX)=50.0(REAL)
如:寫 P1082, 1082(DEC)=43A(HEX)
PLC PKW 輸出=343A,0000,41F0,0000 3 表示寫雙字請求,值為
41F00000(HEX)=30.0(REAL)
PLC PKW 輸入=243A,0000,41F0,0000 返回 2 表示雙字長,確認(rèn)修改完畢。
2,讀寫 2000~3999 的參數(shù)。
如:讀 P2010, 10(DEC)=A(HEX) (10=2010-2000)
PLC PKW 輸出=100A,8001,0000,0000 1 表示讀請求, 01 表示參數(shù)下標(biāo)為 1
8 表示參數(shù)號碼相差 2000
PLC PKW 輸入=100A,8001,0000,0006 返回 1 表示單字長,值為 0006(HEX)
傳送命令參考 MM440 手冊。
3,PZD 參數(shù)為異步讀寫。
PLC 輸出,第一個(gè)字為控制字,第二個(gè)字為主設(shè)定值。(缺省)
PLC 輸入,第一個(gè)字為狀態(tài)字,第二個(gè)字為運(yùn)行反饋值。(缺省)