本例程的系統(tǒng)配置:
(1)安裝STEP 7-MicroWIN SMART確保modbus庫(kù)文件未丟失。(軟件安裝后自帶庫(kù)文件,個(gè)別在安裝時(shí)可能丟失庫(kù))
(2)網(wǎng)線一根、S7-200SMART、24V開關(guān)電源、單頭帶DP接頭的通信電纜。
(3)V20變頻器一臺(tái)。
2. 用通信電纜將S7-200SMART自帶的RS485接口與V20的RS485接口相連(注意端口連接規(guī)則:V20的P+對(duì)3、N-對(duì)8),如下圖所示:
3.變頻器參數(shù)設(shè)置:
V20 可以通過選擇連接宏Cn011實(shí)現(xiàn)Modbus RTU控制,也可以通過直接更改變頻器參數(shù)的方法來實(shí)現(xiàn)。參數(shù)設(shè)置如下表所示:
4.V20常用寄存器說明
5. 上述準(zhǔn)備工作完畢,接下來正式編寫通信程序
1)初始化ModbusMaster端口:
EN 使能: 必須保證每一掃描周期都被使能(使用 SM0.0) 。
Mode 模式: 為 1 時(shí),使能 Modbus 協(xié)議功能;為 0 時(shí)恢復(fù)為系統(tǒng) PPI 協(xié)議 。
Baud 波特率: 支持的通訊波特率為4800,9600,19200 。必須與變頻器*。
Parity 校驗(yàn): 校驗(yàn)方式選擇 (V20采用偶校驗(yàn))
0=無校驗(yàn)
1=奇較驗(yàn)
2=偶較驗(yàn)
Timeout 超時(shí): 主站等待從站響應(yīng)的時(shí)間,以毫秒為單位,典型的設(shè)置值為 1000 毫秒(1 秒),只要保證從站有時(shí)間響應(yīng)即可。
Done 完成位: 初始化完成,此位會(huì)自動(dòng)置1。
Error:初始化錯(cuò)誤代碼。
2) 調(diào)用 ModbusRTU 主站讀寫功能塊MBUS_MSG,發(fā)送一個(gè)Modbus 請(qǐng)求:
寫入控制字1:
EN 使能: 同一時(shí)刻只能有一個(gè)讀寫功能(即 MBUS_MSG)使能 。
注意:V20對(duì)于寫指令同一時(shí)刻只運(yùn)行對(duì)一個(gè)保持寄存器操作;讀指令同一時(shí)刻zui大允許操作125 個(gè)保持寄存器。
First 讀寫請(qǐng)求位: 每一個(gè)新的讀寫請(qǐng)求必須使用脈沖觸發(fā)。
Slave 從站地址: 可選擇的范圍 1 – 247,填寫變頻器實(shí)際地址 。
RW 請(qǐng)求方式: 0 = 讀, 1 = 寫 。
Count 數(shù)據(jù)個(gè)數(shù) 通訊的數(shù)據(jù)個(gè)數(shù)(位或字的個(gè)數(shù)) 。
注意: Modbus主站可讀/寫的zui大數(shù)據(jù)量為120個(gè)字(是指每一個(gè) MBUS_MSG 指令)。
DataPtr 數(shù)據(jù)指針: 如果是讀指令,讀回的數(shù)據(jù)放到這個(gè)數(shù)據(jù)區(qū)中 ;
如果是寫指令,要寫出的數(shù)據(jù)放到這個(gè)數(shù)據(jù)區(qū)中 。
Done 完成位:讀寫功能完成位,正在發(fā)送命令時(shí)為0,完成后為1 。
Error 錯(cuò)誤代碼: 只有在 Done 位為1時(shí),錯(cuò)誤代碼才有效。
常用的控制字:
047E :運(yùn)行準(zhǔn)備
047F :正轉(zhuǎn)啟動(dòng)
0C7F :反轉(zhuǎn)啟動(dòng)
04FE :故障確認(rèn)
3)寫設(shè)定頻率
其它參數(shù)通信方法類似,此處不復(fù)述。
對(duì)于斜坡上升時(shí)間P1120,從寄存器列表中可以看到40322的寄存器的定標(biāo)系數(shù)是100,讀取過來的值為:VW1310=1000,所以參數(shù)P1120=1000/100=10。
6.Modbus錯(cuò)誤代碼:
Done 完成位:讀寫功能完成位
Error 錯(cuò)誤代碼: 只有在 Done 位為1時(shí),錯(cuò)誤代碼才有效
西門子V201.5KW變頻器6SL3210-5BE21-5UV0
西門子V201.5KW變頻器6SL3210-5BE21-5UV0