產(chǎn)品詳情
S7-1200 串行通信
S7-1200支持的串行通訊方式
- 點(diǎn)對(duì)點(diǎn)(PtP)通信
- Modbus 主從通信
-
USS 通信
名稱 | CM 1241 RS232 | CM 1241 RS485 |
---|---|---|
訂貨號(hào) | 6ES7 241-1AH30-0XB0 | 6ES7 241-1CH30-0XB0 |
通訊口類型 | RS232 | RS485 |
波特率(bps) | 300; 600;1.2 kb; 2.4 kb; 4.8 kb; 9.6 kb;19.2 kb; 28.4 kb; 57.6 kb; 76.8 kb; 115.2 kb; | |
校驗(yàn)方式 |
|
|
流控 | 硬件流控;軟件流控 | 不支持 |
接收緩沖區(qū) | 1KB | |
通訊距離(屏蔽電纜) | 10m | 1000m |
電源規(guī)范(5V DC) | 220mA |
S7-1200 RS232 和 RS485 通信模塊的特征
圖1. 串口通信模塊
-
由 CPU 供電,不必連接外部電源
-
端口經(jīng)過(guò)隔離,最長(zhǎng)距離1000 米
-
有診斷 LED 及顯示傳送和接收活動(dòng) LED
-
支持點(diǎn)對(duì)點(diǎn)協(xié)議
- 通過(guò)擴(kuò)展指令和庫(kù)功能進(jìn)行組態(tài)和編程
RS485 與 RS232 通信模塊的LED
診斷 LED 燈
- 紅閃:如果 CPU 未正確識(shí)別到通信模塊,診斷 LED 會(huì)一直紅色閃爍
- 綠閃:CPU 上電后已經(jīng)識(shí)別到通信模塊,但是通信模塊還沒(méi)有配置
- 綠燈:CPU 已經(jīng)識(shí)別到通信模塊,且配置也已經(jīng)下載到了CPU
發(fā)送 LED 燈
- 代表數(shù)據(jù)正在通過(guò)通信口傳送出去
接收 LED 燈
- 代表數(shù)據(jù)正在通過(guò)通信口接收進(jìn)來(lái)
注意:安裝于CPU本體上的通信板只有發(fā)送和接收 LED 燈,而沒(méi)有診斷 LED 燈
RS485及RS232兩種模板支持的協(xié)議
- ASCII
- USS
- Modbus RTU Master protocol
-
Modbus RTU Slave protocol
ASCII 協(xié)議的特點(diǎn)
- 報(bào)文可以由用戶自己定義,便于用戶以 ASCII 協(xié)議為基礎(chǔ)開發(fā)
- 使用簡(jiǎn)單,可以很好地實(shí)現(xiàn)與第三方系統(tǒng)的通訊
- 可以進(jìn)行識(shí)別報(bào)文結(jié)束設(shè)置
- 可以進(jìn)行數(shù)據(jù)流量控制
- 缺點(diǎn):具有簡(jiǎn)單的校驗(yàn)功能(奇偶校驗(yàn)),低數(shù)據(jù)安全性;數(shù)據(jù)傳輸無(wú)確認(rèn)信息; 通訊需要雙方協(xié)調(diào)
S7-1200 的 PTP 校驗(yàn)
串口的校驗(yàn): 奇偶校驗(yàn):用于檢驗(yàn)數(shù)據(jù)傳遞的正確性,是最簡(jiǎn)單的檢錯(cuò)方法。
圖2. 校驗(yàn)設(shè)置
- 偶校驗(yàn):如果每字節(jié)的數(shù)據(jù)位中“1”的個(gè)數(shù)為奇數(shù),則校驗(yàn)位為1,如果個(gè)數(shù)為偶數(shù),則校驗(yàn)位為“0”, 保證數(shù)據(jù)位和校驗(yàn)位中“1”的個(gè)數(shù)是偶數(shù)
- 奇校驗(yàn):如果每字節(jié)的數(shù)據(jù)位中“1”的個(gè)數(shù)為奇數(shù),則校驗(yàn)位為0,如果個(gè)數(shù)為偶數(shù),則校驗(yàn)位為“1”, 保證數(shù)據(jù)位和校驗(yàn)位中“1”的個(gè)數(shù)是奇數(shù)
- 傳號(hào)校驗(yàn):奇偶校驗(yàn)位始終設(shè)置為 1
- 空號(hào)校驗(yàn):奇偶校驗(yàn)位始終設(shè)置為 0
注意:奇偶校驗(yàn)可以簡(jiǎn)單的判斷數(shù)據(jù)的正確性,從原理上可看出當(dāng)一位出錯(cuò),可以準(zhǔn)確判斷,當(dāng)兩位或更多位誤碼就校驗(yàn)不出,但由于其實(shí)現(xiàn)簡(jiǎn)單,仍得到了廣泛使用。
PTP 通信的發(fā)送信息配置
定義在信息起始發(fā)送斷點(diǎn)及空閑線
字符中斷:當(dāng)接收到的數(shù)據(jù)保持為零值的時(shí)間大于完整的字符傳輸時(shí)間時(shí),代表字符中斷。一個(gè)完整字符傳輸時(shí)間定義為傳輸起始位、數(shù)據(jù)位、校驗(yàn)位和停止位的時(shí)間總和。
圖3. 定義在信息起始發(fā)送斷點(diǎn)及空閑線
常問(wèn)問(wèn)題:為什么發(fā)送配置中只配了2位字符中斷,而通信伙伴卻可以正常接收數(shù)據(jù)?
答:發(fā)送配置中設(shè)置的字符中斷小于等于16位時(shí),系統(tǒng)自動(dòng)發(fā)出16位的字符中斷位;設(shè)置大于16位時(shí),則發(fā)出的中斷位與實(shí)際設(shè)置相符。下圖是設(shè)置的發(fā)送斷點(diǎn)及空閑線位及其實(shí)際發(fā)出的波形圖。
波形圖
|
斷點(diǎn)及空閑線設(shè)置
|
圖4. 斷點(diǎn)及空閑線波形圖
PTP 通信接收起始條件
以任意字符開始
以特殊條件開始:
- 通過(guò)斷點(diǎn)識(shí)別消息開始
- 通過(guò)空閑線識(shí)別消息開始
- 通過(guò)單個(gè)字符識(shí)別消息開始
- 通過(guò)字符序列識(shí)別消息開始
圖5. 通信接收起始條件
通過(guò)字符序列識(shí)別消息開始
對(duì)于多個(gè)起始序列的組態(tài),只要出現(xiàn)其中一個(gè)序列,即會(huì)滿足開始條件。下圖右側(cè)即為滿足起始條件的字符串。
圖6. 通過(guò)字符序列識(shí)別消息開始
如果選擇了多個(gè)起始條件,則檢查開始條件的順序如下:
注意:檢查多個(gè)開始條件時(shí),如果有一個(gè)條件沒(méi)有滿足,則 CM 將從第一個(gè)所需的條件開始重新啟動(dòng)檢查。
PTP 通信接收結(jié)束條件
圖7.結(jié)束條件設(shè)置
注意:與多個(gè)起始條件的判斷不同,檢查多個(gè)結(jié)束條件時(shí),任何一個(gè)條件滿足,信息接收結(jié)束。
消息超時(shí)結(jié)束條件
消息超時(shí)時(shí)間從接到符合消息開始條件的第一個(gè)字符時(shí)開始計(jì)算,如下圖。
圖8.消息超時(shí)
響應(yīng)超時(shí)結(jié)束條件
響應(yīng)超時(shí)時(shí)間從傳送結(jié)束時(shí)開始計(jì)算,只要傳送成功完成且模塊開始接收操作,定時(shí)器就會(huì)啟動(dòng)。
圖9.響應(yīng)超時(shí)
注意:響應(yīng)超時(shí)結(jié)束條件不能作為單獨(dú)的結(jié)束條件的設(shè)置,否則會(huì)在編譯時(shí)報(bào)如下錯(cuò)誤:
圖10.響應(yīng)超時(shí)作為單獨(dú)的結(jié)束條件報(bào)錯(cuò)
從消息中讀取信息長(zhǎng)度
圖11.從消息中讀取信息長(zhǎng)度的設(shè)置
實(shí)際收到的數(shù)據(jù)長(zhǎng)度= 長(zhǎng)度偏移前的字節(jié)數(shù)+長(zhǎng)度字節(jié)大小+讀取的實(shí)際數(shù)據(jù)長(zhǎng)度+不計(jì)入字節(jié)長(zhǎng)度的字節(jié)數(shù)
圖12.程序中讀到的實(shí)際數(shù)據(jù)長(zhǎng)度
PTP 通信接收緩存區(qū)
緩存區(qū)的數(shù)據(jù)保持
斷電后緩存區(qū)中的數(shù)據(jù)全部丟失,不能保持。
通信模板緩存區(qū)超出20條信息
如果緩存區(qū)中的信息超過(guò)20條,后面的信息被 自動(dòng)丟棄,且不報(bào)錯(cuò)。
通信模板緩存區(qū)多包數(shù)據(jù)超出1024字節(jié)
發(fā)送多個(gè)每包50個(gè)字節(jié)數(shù)據(jù),當(dāng)數(shù)據(jù)超過(guò)1024字節(jié)那包就被丟棄了,前面的可以正常接收,且沒(méi)有任何報(bào)錯(cuò).在前面數(shù)據(jù)被成功接收以后,只要緩存區(qū)有空間,后面的數(shù)據(jù)還可以正常收到。
通信模板緩存區(qū)一包數(shù)據(jù)超出1024字節(jié)
如果發(fā)送數(shù)據(jù)一包就大于1024字節(jié)時(shí),緩沖區(qū)接收到數(shù)據(jù)到1024字節(jié)時(shí),雖然沒(méi)有收到結(jié)束字符,數(shù)據(jù)由緩存區(qū)送給CPU,但會(huì)報(bào)錯(cuò)16#80E0,如下圖。
圖13. 發(fā)送數(shù)據(jù)一包大于1024字節(jié)時(shí),緩存區(qū)報(bào)錯(cuò)
、
圖14. 使用RST指令復(fù)位緩存區(qū)錯(cuò)誤,恢復(fù)數(shù)據(jù)接收
注意:緩存區(qū)可以存儲(chǔ)多條信息,限制是20條信息或最多1024字節(jié)。
為什么不能使用 PC/PPI 電纜與S7-1200 RS485 模塊進(jìn)行串口調(diào)試?
答:因?yàn)?S7-1200 RS485 模塊接口不提供24V電源,不能給 PC/PPI 電纜供電,所以電纜無(wú)法工作。
解決辦法:可以將 S7-1200 RS485 與 S7-200 通信口網(wǎng)絡(luò)連接,將 PC/PPI 電纜插在 S7-200 通信口上總線連接器的編程口上,對(duì)S7-1200 RS485進(jìn)行串口調(diào)試。此時(shí)S7-200必須上電并打到停止?fàn)顟B(tài)。
PTP 接線方式
CB 1241 RS485 接線 (6ES7 241 1CH30-1XB0)
CB1241 RS485 信號(hào)板(安裝在CPU機(jī)本體上) ,訂貨號(hào)為: 6ES7 241 1CH30-1XB0 接線如圖1
圖1 CB1241 RS485
注釋: 3號(hào)針腳--RS485信號(hào) B(+) ;8號(hào)針腳--RS485信號(hào)A(-);5號(hào)針腳--接屏蔽等電位點(diǎn)。
CM1241 RS232 接線 (6ES7 241-1AH30-0XB0)
CB1241 RS232 通訊模塊,訂貨號(hào)為: 6ES7 241 1AH30-0XB0 接線如圖2
圖2 CM1241 RS232
注釋: 2號(hào)針腳--RS232 信號(hào)輸入接收。3號(hào)針腳--RS232 信號(hào)輸出發(fā)送。 5--接地等電位
CM 1241 RS422/485 接線 (6ES7 241-1CH31-0XB0)
CB1241 RS232 通訊模塊,訂貨號(hào)為: 6ES7 241 1CH31-0XB0 接線如圖3
圖2 CM1241 RS422/485
注釋:
RS422 接線方法: 2號(hào)與9號(hào)針腳 -- RS422 發(fā)送信號(hào)。 3號(hào)與8號(hào)針腳 -- RS422 接收信號(hào);SHELL接屏蔽等電位點(diǎn) 。
RS485 接線方法:3號(hào)針腳--RS485信號(hào) B(+) ;8號(hào)針腳--RS485信號(hào)A(-) 1號(hào)針腳-電位點(diǎn)。
RS232、422及485 的通訊距離和終端電阻
- RS 232 通訊最長(zhǎng)距離為 10 米屏蔽電纜
- RS 422/R485 通訊最長(zhǎng)距離為 1000 米屏蔽電纜(取決于波特率及安裝終端電阻)
RS 485 終端電阻安裝方法及阻值大小,如圖4
串口通信編程
發(fā)送指令及發(fā)送完成位:
圖1. 發(fā)送完成位
接收指令及接收完成位:
圖2.接收完成位
字符串轉(zhuǎn)換
S7-1200字符串結(jié)構(gòu):
總字符數(shù) | 當(dāng)前字符數(shù) | 字符1 | 字符2 | ...... | 字符256 |
如上面S7-1200字符串結(jié)構(gòu),第一個(gè)字節(jié)是總字符數(shù),第二個(gè)字節(jié)是當(dāng)前字符數(shù),所以發(fā)送和接收真正的字符內(nèi)容都應(yīng)該從字符串的第三個(gè)字節(jié)開始,因此發(fā)送和接收字符串都要進(jìn)行相應(yīng)的轉(zhuǎn)換。
發(fā)送字符串轉(zhuǎn)換:
要將 DB3.DBB20 中的字符串發(fā)送出去,需要經(jīng)過(guò)下列轉(zhuǎn)換:
圖3. 發(fā)送字符串轉(zhuǎn)換
接收字符串轉(zhuǎn)換:
要將收到的字符串送入 DB3.DBB30 中需要進(jìn)行以下轉(zhuǎn)換:
圖4. 接收字符串轉(zhuǎn)換
輪詢編程
通信任務(wù):
主站將 P#DB3.DBX20.0 中的字符串“西門子”(注意發(fā)送緩沖區(qū)由 P#DB3.DBX22.0 開始,因?yàn)樽址皟蓚€(gè)字節(jié)分別是總字符數(shù)和當(dāng)前字符數(shù))發(fā)送給從站的接收緩沖區(qū)P#DB3.DBX32.0;從站 P#DB3.DBX22.0 返回“博大精深”給主站 P#DB3.DBX32.0。
主站輪詢:
圖5. 主站輪詢
從站輪詢:
圖6. 從站輪詢
通信結(jié)果:
如何通過(guò)USS協(xié)議實(shí)現(xiàn)S7-1200 與G120變頻器的通信
-
文檔
-
涉及產(chǎn)品
西門子S7-1200 緊湊型PLC在當(dāng)前的市場(chǎng)中有著廣泛的應(yīng)用,作為經(jīng)常與SINAMICS G120系列變頻器共同使用的PLC,其USS通信協(xié)議的使用一直在市場(chǎng)上有著非常廣泛的應(yīng)用。本文將主要介紹如何使用USS通信協(xié)議來(lái)實(shí)現(xiàn)S7-1200與G120變頻器的通信。
1.控制系統(tǒng)原理和接線圖
下圖是本例中所使用的原理和接線圖。
圖1:控制系統(tǒng)原理和接線圖
2.硬件需求
S7-1200 PLC目前有3種類型的CPU:
1)S7-1211C CPU。
2)S7-1212C CPU。
3)S7-1214C CPU。
這三種類型的CPU都可以使用USS通信協(xié)議通過(guò)通信模塊CM1241 RS485來(lái)實(shí)現(xiàn)S7-1200與G120變頻器的通信。
本例中使用的PLC硬件為:
1)PM1207電源 ( 6EP1 332-1SH71 )
2) S7-1214C ( 6ES7 214 -1BE30 -0XB0 )
3) CM1241 RS485 ( 6ES7 241 -1CH30 -0XB0 )
4) 模擬器 ( 6ES7 274 -1XH30 -0XA0 )
本例中使用的G120變頻器硬件為:
1) SINAMICS G120 PM240 (6SL3244-0BA20-1BA0)
2) SINAMICS G120 CU240S(6SL3224-0BE13-7UA0)
3) SIEMENS MOTOR (1LA7060-4AB10)
4) 操作面板 ( XAU221-001469)
5) USS 通信電纜 ( 6XV1830-0EH10)
3.軟件需求
1) 編程軟件 Step7 Basic V10.5 ( 6ES7 822-0AA0-0YA0)
4.組態(tài)
我們通過(guò)下述的實(shí)際操作來(lái)介紹如何在Step7 Basic V10.5 中組態(tài)S7-1214C 和G120變頻器的USS通信。
4. 1 PLC 硬件組態(tài)
首先在Step7 Basic V10.5中建立一個(gè)項(xiàng)目,如圖1所示。
圖2: 新建S7 1200項(xiàng)目
在硬件配置中,添加CPU1214C和通信模塊CM1241 RS485模塊,如圖2所示。
圖3: S7 1200硬件配置
在CPU的屬性中,設(shè)置以太網(wǎng)的IP地址,建立PG與PLC的連接,如下圖所示。
圖4: S7 1200 IP地址的設(shè)置
4. 2 G120參數(shù)設(shè)置
變頻器的參數(shù)設(shè)置如下表所示。
序號(hào) | 功能 | 參數(shù) | 設(shè)定值 |
1 | 工廠設(shè)置復(fù)位 | P0010 | 30 |
2 | 工廠設(shè)置復(fù)位 | P970 | 1 |
3 | 快速啟動(dòng)設(shè)置 | P0010 | 1 |
4 | 電機(jī)額定電壓 | P0304 | 380V |
5 | 電機(jī)額定功率 | P0307 | 5.5KW |
6 | 電機(jī)額定頻率 | P0310 | 50Hz |
7 | 電機(jī)額定轉(zhuǎn)速 | P0311 | 1350r/min |
8 | USS命令源 | P0700 | 5 |
9 | 頻率設(shè)定源 | P01000 | 5 |
10 | 最小電機(jī)頻率 | P1080 | 0.0Hz |
11 | 最大電機(jī)頻率 | P1081 | 50.0Hz |
12 | 啟動(dòng)斜坡時(shí)間 | P1120 | 10.0S |
13 | 延遲斜坡時(shí)間 | P1121 | 10.0S |
14 | 結(jié)束快速啟動(dòng)設(shè)置 | P3900 | 1 |
15 | 激活專家模式 | P0003 | 3 |
16 | 參考頻率 | P2000 | 50.0Hz |
17 | USS數(shù)據(jù)傳輸速度 | P2010 | 9 |
18 | USS從站地址 | P2011 | 1 |
19 | USS PZD長(zhǎng)度 | P2012 | 2 |
20 | USS PKW長(zhǎng)度 | P2013 | 4 |
21 | 通信監(jiān)控 | P2014 | 0 |
22 | 在E2PROM 保存數(shù)據(jù) | P0971 | 1 |
23 | 激活專家模式 | P0003 | 3 |
24 | 激活參數(shù)模式 | P0010 | 30 |
25 | 從G120中傳輸參數(shù)到BOP | P0802 | 1 |
表1 :G120變頻器的參數(shù)設(shè)置
注意:表1中的17,18,19,20 這四項(xiàng)參數(shù)值的設(shè)置必須使PLC的參數(shù)值與變頻器的參數(shù)值相一致。而19,20這兩個(gè)參數(shù)值必須設(shè)置成如表1中的值,否則有可能變頻器與S7-1200通信有如下問(wèn)題:可能不能讀出從變頻器反饋回來(lái)的參數(shù)值。
5.USS通信原理與編程的實(shí)現(xiàn)
5. 1 S7 1200 PLC與G120 通過(guò)USS通信的基本原理
S7 1200提供了專用的USS庫(kù)進(jìn)行USS通信,如下圖所示:
圖5: S7 1200 專用的USS庫(kù)
USS_DRV 功能塊是S7-1200 USS通信的主體功能塊,接受變頻器的信息和控制變頻器的指令都是通過(guò)這個(gè)功能快來(lái)完成的。必須在主 OB中調(diào)用,不能在循環(huán)中斷OB中調(diào)用。
USS_PORT功能塊是S7-1200與變頻器USS通信的接口,主要設(shè)置通信的接口參數(shù)。可在主OB或中斷OB中調(diào)用。
USS_RPM功能塊是通過(guò)USS通信讀取變頻器的參數(shù)。必須在主 OB中調(diào)用,不能在循環(huán)中斷OB中調(diào)用。
USS_WPM功能塊是通過(guò)USS通信設(shè)置變頻器的參數(shù)。必須在主 OB中調(diào)用,不能在循環(huán)中斷OB中調(diào)用。
這些專用功能塊與變頻器之間的控制關(guān)系如下圖所示:
圖6: USS 通信功能塊與變頻器的控制關(guān)系
USS_DRV功能塊通過(guò)USS_DRV_DB數(shù)據(jù)塊實(shí)現(xiàn)與USS_PORT功能塊的數(shù)據(jù)接收與傳送,而USS_PORT功能塊是S7-1200 PLC CM1241 RS485模塊與變頻器之間的通信接口。USS_RPM功能塊和USS_WPM功能塊與變頻器的通信與USS_DRV功能塊的通信方式是相同的。
每個(gè)S7-1200 CPU最多可帶3個(gè)通信模塊,而每個(gè)CM1241 RS485通信模塊最多支持16個(gè)變頻器。因此用戶在一個(gè)S7-1200 CPU中最多可建立3個(gè)USS網(wǎng)絡(luò),而每個(gè)USS網(wǎng)絡(luò)最多支持16個(gè)變頻器,總共最多支持48個(gè)USS變頻器。
5. 2 S7 1200 PLC進(jìn)行USS通信的編程
1.USS通信接口參數(shù)功能塊的編程
USS通信接口參數(shù)功能塊的編程如下圖所示。
圖7: USS通信接口參數(shù)功能塊的編程
USS_PORT功能塊用來(lái)處理USS網(wǎng)絡(luò)上的通信,它是S71200 CPU與變頻器的通信借口。每個(gè)CM1241 RS485模塊有且必須有一個(gè)USS_PORT功能塊。
PORT:指的是通過(guò)哪個(gè)通信模塊進(jìn)行USS通信。
BAUD:指的是和變頻器進(jìn)行通行的速率。 變頻器的參數(shù)P2010種進(jìn)行設(shè)置。
USS_DB:指的是和變頻器通信時(shí)的USS數(shù)據(jù)塊。每個(gè)通信模塊最多可以有16個(gè)USS數(shù)據(jù)塊,每個(gè)CPU最多可以有48個(gè)USS數(shù)據(jù)塊,具體的通信情況要和現(xiàn)場(chǎng)實(shí)際情況相聯(lián)系。每個(gè)變頻器與S7-1200進(jìn)行通信的數(shù)據(jù)塊是唯一的。
ERROR:輸出錯(cuò)誤。
STATUS:掃描或初始化的狀態(tài)。
S7-1200 PLC與變頻器的通信是與它本身的掃描周期不同步的,在完成一次與變頻器的通信事件之前,S7-1200通常完成了多個(gè)掃描。
USS_PORT通信的時(shí)間間隔是S7-1200與變頻器通信所需要的時(shí)間,不同的通信波特率對(duì)應(yīng)的不同的USS_PORT通信間隔時(shí)間。下圖列出了不同的波特率對(duì)應(yīng)的USS_PORT最小通信間隔時(shí)間。
圖8:不同的波特率對(duì)應(yīng)的USS_PORT最小通信間隔時(shí)間
USS_PORT在發(fā)生通信錯(cuò)誤時(shí),通常進(jìn)行3次嘗試來(lái)完成通信事件,那么S7-1200與變頻器通信的時(shí)間就是USS_PORT發(fā)生通信超時(shí)的時(shí)間間隔。例如:如果通信波特率是57600,那么USS_PORT與變頻器通信的時(shí)間間隔應(yīng)當(dāng)大于最小的調(diào)用時(shí)間間隔,即大于36.1Ms而小于109Ms。S7-1200 USS 協(xié)議庫(kù)默認(rèn)的通信錯(cuò)誤超時(shí)嘗試次數(shù)是2次。
基于以上的USS_PORT通信時(shí)間的處理,我們建議在循環(huán)中斷OB塊中調(diào)用USS_PORT通信功能塊。在建立循環(huán)中斷OB塊時(shí),我們可以設(shè)置循環(huán)中斷OB塊的掃描時(shí)間,以滿足通信的要求。循環(huán)中斷OB塊的掃描時(shí)間的設(shè)置如下圖所示:
圖9:循環(huán)中斷OB塊的掃描時(shí)間的設(shè)置
2.USS_DRV功能塊的編程
USS_DRV功能塊的編程如下圖所示。
圖10: USS_DRV功能塊的編程
USS_DRV功能塊用來(lái)與變頻器進(jìn)行交換數(shù)據(jù),從而讀取變頻器的狀態(tài)以及控制變頻器的運(yùn)行。每個(gè)變頻器使用唯一的一個(gè)USS_DRV功能塊,但是同一個(gè)CM1241 RS485模塊的USS網(wǎng)絡(luò)的所有變頻器(最多16個(gè))都使用同一個(gè)USS_DRV_DB。
USS_DRV_DB:指定變頻器進(jìn)行USS通信的數(shù)據(jù)塊。
RUN: 指定DB塊的變頻器啟動(dòng)指令。
OFF2: 緊急停止,自由停車。 該位為0時(shí)停車。
OFF3: 快速停車,帶制動(dòng)停車。 該位為0時(shí)停車。
F_ACK: 變頻器故障確認(rèn)。
DIR : 變頻器控制電機(jī)的轉(zhuǎn)向。
SPEED_SP: 變頻器的速度設(shè)定值。
ERROR: 程序輸出錯(cuò)誤。
RUN_EN: 變頻器運(yùn)行狀態(tài)指示。
D_DIR: 變頻器運(yùn)行方向狀態(tài)指示。
INHIBIT: 變頻器是否被禁止的狀態(tài)指示。
FAULT: 變頻器故障。
SPEED: 變頻器的反饋的實(shí)際速度值。
DRIVE: 變頻器的USS站地址。變頻器參數(shù)P2011設(shè)置。
PZD_LEN: 變頻器的循環(huán)過(guò)程字。 變頻器參數(shù)P2012設(shè)置。
注意:變頻器的PKW的長(zhǎng)度在這里是特殊需要注意的,在使用USS通信時(shí)必須是4,如果改成3或者127都將不能讀取反饋回來(lái)的過(guò)程值。
3.USS_RPM功能塊的編程
USS_RPM功能塊的編程 如下圖所示。
圖11:USS_RPM功能塊的編程
USS_RPM功能塊用于通過(guò)USS通信從變頻器讀取參數(shù)。
REQ: 讀取參數(shù)請(qǐng)求。
DRIVE: 變頻器的USS站地址。
PARAM: 變頻器的參數(shù)代碼。
INDEX: 變頻器的參數(shù)索引代碼
USS_DB: 指定變頻器進(jìn)行USS通信的數(shù)據(jù)塊。
DONE: 讀取參數(shù)完成。
ERROR: 讀取參數(shù)錯(cuò)誤。
STATUS: 讀取參數(shù)狀態(tài)代碼。
VALUE: 所讀取的參數(shù)的值。
注意:進(jìn)行讀取參數(shù)功能塊編程時(shí),各個(gè)數(shù)據(jù)的數(shù)據(jù)類型一定要正確對(duì)應(yīng)。如果需要設(shè)置變量讀取參數(shù)時(shí),注意該參數(shù)變量的初始值不能為0,否則容易產(chǎn)生通信錯(cuò)誤。
4.USS_WPM功能塊的編程
USS_WPM功能塊的編程如下圖所示。
圖12:USS_WPM功能塊的編程
USS_WPM 功能塊用于通過(guò)USS通信設(shè)置變頻器的參數(shù)。
REQ: 讀取參數(shù)請(qǐng)求。
DRIVE: 變頻器的USS站地址。
PARAM: 變頻器的參數(shù)代碼。
INDEX: 變頻器的參數(shù)索引代碼。
EEPROM:把參數(shù)存儲(chǔ)到變頻器的EEPROM。
VALUE: 設(shè)置參數(shù)的值。
USS_DB: 指定變頻器進(jìn)行USS通信的數(shù)據(jù)塊。
DONE: 讀取參數(shù)完成。
ERROR: 讀取參數(shù)錯(cuò)誤狀態(tài)。
STATUS: 讀取參數(shù)狀態(tài)代碼。
注意:對(duì)寫入?yún)?shù)功能塊編程時(shí),各個(gè)數(shù)據(jù)的數(shù)據(jù)類型一定要正確對(duì)應(yīng)。如果需要設(shè)置變量進(jìn)行寫入?yún)?shù)值時(shí),注意該參數(shù)變量的初始值不能為0,否則容易產(chǎn)生通信錯(cuò)誤。
5. 3 S7 1200 PLC進(jìn)行USS通信的調(diào)試
S7-1200 PLC 通過(guò)CM1241 RS485模塊與變頻器進(jìn)行USS通信時(shí),需要注意如下幾點(diǎn):
- 當(dāng)同一個(gè)CM1241 RS485 模塊帶有多個(gè)(最多16個(gè))USS變頻器時(shí),這個(gè)時(shí)候通信的USS_DB是同一個(gè),USS_DRV功能塊調(diào)用多次,每個(gè)USS_DRV功能塊調(diào)用時(shí),相對(duì)應(yīng)的USS站地址與實(shí)際的變頻器要一致,而其它的控制參數(shù)也要一致。
- 當(dāng)同一個(gè)S7-1200 PLC 帶有多個(gè)CM1241 RS485模塊(最多3個(gè))時(shí),這個(gè)時(shí)候通信的USS_DB相對(duì)應(yīng)的是3個(gè),每個(gè)CM1241 RS485模塊的USS網(wǎng)絡(luò)使用相同的USS_DB,不同的USS網(wǎng)絡(luò)使用不同的USS_DB。
- 當(dāng)對(duì)變頻器的參數(shù)進(jìn)行讀寫操作時(shí),注意不能同時(shí)進(jìn)行USS_RPM和USS_WPM的操作,并且同一時(shí)間只能進(jìn)行一個(gè)參數(shù)的讀或者寫操作,而不能進(jìn)行多個(gè)參數(shù)的讀或者寫操作。
在S7-1200 PLC 與變頻器的USS通信的實(shí)際使用過(guò)程中,需要根據(jù)網(wǎng)絡(luò)的現(xiàn)場(chǎng)情況,對(duì)問(wèn)題進(jìn)行具體的解決。
關(guān)鍵詞
USS 協(xié)議,S7-1200,G120,變頻器