西門子200的MODBUS方式控制變頻器
一、MODBUS通信概述
MODBUS協(xié)議分為串行鏈路上MODBUS協(xié)議和基于TCP/IP協(xié)議的MODBUS 協(xié)議。串行鏈路上MODBUS協(xié)議有MODBUS ASCAII(字符串) 和MODBUS RTU兩種
200SMART所提供的MODBUS協(xié)議庫能夠支持MODBUS RTU通信
MODBUS RTU 是以16進制的數(shù)值進行發(fā)送
MODBUS ASCAII是以ASCAII碼的方式進行發(fā)送,一個數(shù)據(jù)采用RTU方式發(fā)送只需要一個字節(jié),而用ASACII碼發(fā)送需要兩個字節(jié),發(fā)送時間長
PLC與變頻器串口通信有很多通信方式,但常用的、選的就是MODBUS通信方式,在實際的工業(yè)控制中應用非常廣泛;這一期我們向大家一起分享變頻器如何與PLC通過MODBUS RTU的方式進行控制
庫指令分兩種,一個是主站庫,一個是從站庫
主站是PLC作為MODBUS的主站主動去讀取其他設備的數(shù)據(jù);從站是PLC作為MODBUS的從站,其他設備來讀取數(shù)據(jù);本期我們分享的是PLC作主站,變頻器做從站
STEP7-MinWIN SMART軟件自帶MODBUS通信庫指令
初始化指令:
控制指令:
通信協(xié)議有:站號、功能碼、數(shù)據(jù)地址、數(shù)據(jù)內(nèi)容、校驗位、結束符組成
校驗:N=None無校驗 E=Even偶校驗 O=Odd奇校驗
判斷數(shù)據(jù)位中為1的個數(shù)是奇數(shù)還是偶數(shù)(選擇偶校驗如16#03中如果為1 的個數(shù)是偶數(shù)時,校驗位為1 ;如果為1 的個數(shù)是奇數(shù)時,校驗位為0 。選擇奇校驗時,為1的個數(shù)是偶數(shù)時,校驗位為0 ;為1的個數(shù)是奇數(shù)時,校驗位為1)
功能碼定了對從站設備讀操作還是寫操作,同時也指了MODBUS寄存器地址的類型,常用功能碼有:
在變頻器上面涉及通信的端子標記有A/B RS585+/RS485-或RJ11的網(wǎng)口;找到相關變頻器的說明書查看通信端口的接線定義,以下是臺達VFD-M系列的變頻器通信口接線定義
1、 要實現(xiàn)變頻器或儀表和PLC能正常通信,彼此的接口和協(xié)議需要一致,除此之外參數(shù)的設置也必須一致
P00 設03(頻率指令)P01 設03(運轉指令)P88 設03 (通訊地址,0-254之間)P89 設02(波特率選擇)P92 設04 (數(shù)據(jù)格式,200SMART不支持2個停止位,因此只能選04/05任意一個參數(shù))P157 設01 (變頻器默認的就是MODBUS模式)
2、查看說明書的啟停、頻率給定、運行頻率、電壓電流等反饋參數(shù)的地址
信息幀格式說明
表示讀2103 2104兩個地址的數(shù)據(jù)放在17 70 和00 00的地址里通信協(xié)議的參數(shù)地址定義:
運行命令地址2000H 頻率命令地址2001H 輸出頻率地址2103H 輸出電流地址22104H 輸出電壓地址2106H 變頻器溫度地址 210DH
在程序的開始可以加一段初始化對所有的位進行復位。