一、系统配置: 1。1安装Step7MicroWinSMARTsoftware(含Modbus协议库)的PC机,本例中使用的是Step7MicroWinSMARTV2。7。 1。2打开编程软件STEP7MicroWINSMART。 1。3点开库,我们会看到有两个ModbusRTUMaster文件夹。 MUSCTRL和MBCTRL2具有相同的作用和参数。如果一个CPU有两个主站的情况下MBUSCTRL用于第一个ModbusRTU主站。MBCTRL2用于第二个ModbusRTU主站。相应地,MBUSMSG和MBUSCTRL一同用于第一个ModbusRTU主站。MBMSG2和MBCTRL2一同用于第二个ModbusRTU主站。 我们在硬件上会看到CPU本身集成了一个RS485口,我们还可以通过扩展的方式扩一个RS485通讯板。(红色方框是本身集成的,蓝色方框是扩展的)。 二、硬件配置: 2。1硬件要求 G120配备CU240E2控制单元的变频器一台、异步电机一台、S7200SMARTPLC一台、标准DRIVECLIQ电缆一根、双绞屏蔽电缆一根。本例中,使用的G120的控制单元CU240E2固件版本V4。6。 2。2CU240E2控制单元接口 CU240E2控制单元端子排如图下图,RS485接口在控制单元的底部,共有5个接线端子,其中从左到右,2号端子为RS485P,3号端子为RS485N,这两端子用于通信数据的发送和接收。 2。3G120与200SMART硬件连线。 S7200SMART作为Modbus通信主站,其通信端口和变频器从站的接线如图,在通信网络的首、末端需要使用终端电阻。对于S7200SMART,需要在通信端口端子3和8之间连接一阻值为120欧姆的电阻。对于变频器,把通信网络末端的CU240E2终端电阻拨码开关拨到ON位置即可;中间位置的CU240E2,终端电阻拨码开关必须拨到OFF位置。 三、通信设置: 3。1设置通讯接口 使用PLC以太网接口和DRIVECLIQ电缆,设置通信接口。 第一步:双击通信,弹出通信设置窗口; 第二步:选择网络接口卡,设置为ICPIP。AUTO。1,系统会自动收索CPU。 3。2建立PC与PLC之间连接 选择网络接口后自动搜索到CPU。 第一步:搜索到CPU后,选择搜索到的CPU,点击CPU的IP地址。 第二步:点击确定按钮,完成网络连接。 四、变频器参数设置: 4。1变频器地址设置 变频器的MODBUS通信地址可以通过控制单元上的总线地址拨码开关进行设置。 当地址拨码开关的位置都为OFF时,也可用过参数P2021进行设置。(说明:改变地址后需重新上电后才能生效) 4。2变频器参数设置 对变频器一些基本的通信参数进行设置,才可以进行MODBUS通信。 4。3G120常用寄存器说明 G120变频器常用寄存器介绍,也是本例所使用的寄存器,如表下表。要了解更多的G120寄存器信息,请参见G120操作手册。 5、PLC编程 5。1初始化程序 使用MODBUS协议的初始化模块MBUSCTRL,初始化S7200SMART的 CPU端口专用于MODBUS主站通信。 功能块说明: 注:此处以及下文的功能块说明仅介绍了功能块内的主要管脚功能,未说 明的管脚功能,请参考Step7MicroWinSMARTV2。0软件的帮助文件。 EN使能:必须保证每一扫描周期都被使能(使用SM0。0)。 Mode模式:为1时,使能Modbus协议功能;为0时恢复为系统PPI协议。 Baud波特率:支持的通讯波特率为4800,9600,19200,此处设置9600。 Parity校验:校验方式选择(G120采用偶校验) 0无校验 1奇较验 2偶较验 Port端口:设置物理通信端口(0CPU中集成的RS485,1可选CM01信 号板上的RS485或RS232)。 Timeout超时:主站等待从站响应的时间,以毫秒为单位,典型的设置值为 1000毫秒(1秒),允许设置的范围为132767。注意:这个值必须设置足 够大以保证从站有时间响应。 Done完成位:初始化完成,此位会自动置1。 Error:初始化错误代码。 (注意:MBUSCTRL指令,要写在主站里,一个主站只要写一条即可。波特率和奇偶校验要与从站的设定一致。) 5。2主站读写功能块 5。2。1写控制字 功能块说明: 注:此处以及下文的功能块说明仅介绍了功能块内的主要管脚功能,未说 明的管脚功能,请参考Step7MicroWinSMARTV2。0软件的帮助文件。 EN使能:同一时刻只能有一个读写功能(即MBUSMSG)使能。 注意:G120对于写指令同一时刻只运行对一个保持寄存器操作;读指令同一时 刻最大允许操作125个保持寄存器。 First读写请求位:每一个新的读写请求必须使用脉冲触发。 Slave从站地址:可选择的范围1247。 RW请求方式:0读,1写。 Count数据个数:通讯的数据个数(位或字的个数)。注意:Modbus主站可 读写的最大数据量为120个字(是指每一个MBUSMSG指令)。 DataPtr数据指针:1。如果是读指令,读回的数据放到这个数据区中; 2。如果是写指令,写出的数据放到这个数据区中。 Done完成位:读写功能完成位。 Error错误代码:只有在Done位为1时,错误代码才有效。 常用的控制字: 047E:运行准备 047F:正转启动 0C7F:反转启动 04FE:故障确认 5。2。2写速度设定值 5。2。3读状态字和速度实际值 5。2。4读取斜坡时间 5。2。5写斜坡下降时间 六、分配库存储区 在编译程序之前,首先要为Modbus库分配可用的全局V存储器地址。 第一步:选择程序块库右键,选择库存储区; 第二步:点击建议地址,选择V存储器的地址; 第三步:点击确定退出。 7、调试程序 程序编辑完成后,要调试程序。 第一步:点击保存,保存好编辑的程序; 第二步:点击编译,编译程序; 第三步:点击下载,把程序下载到PLC的CPU当中; 第四步:点击运行,启动程序。 8、监控状态表 通过监控状态表,可以修改过程数据和监控过程数据的变化状态。 控制字:VW10016047F说明启动命令已经给了。 状态字:VW30016EF37说明变频器的状态,参见r0052。 主设定值:VW200161000说明速度设定值已经给了,1604000对应转速 0P2000的值。 速度实际值:VW302161000说明电机实际转速已经运行到375rpm。 斜坡上升时间:VW4001000,从寄存器列表中可以看到40322的寄存器的定 标系数是100,所以参数P1120100010010。 斜坡下降时间:VW4022000,读的下降时间;VW5002000,设定的下降时 间;VW402VW500,说明写指令已经生效。从寄存器列表中可以看到40323 的寄存器的定标系数是100,所以参数P1121200010020。