S7-200与V20之间的MODBUSRTU通讯S7-200与V20的MODBUSRTU通讯1、本例程的系统配置:(1)安装Step7Micro/Winsoftware和Modbus协议库,西门子在Micro/WINV4.0SP5中正式推出ModbusRTU主站协议库。(2)PC/PPI电缆、S7-200、电源模块、通信电缆。(3)V20驱动装置和一台PC机。2、在使用MicroWinsoftware创建项目之前,确认ModbusMaster库文件已经安装:3、创建一个例程:3.1设置通讯接口本例程使用PC/PPI电缆。3.2建立PC和PLC之间的连接“双击刷新”搜索到PLC后,点击”确认”。3.3用电缆将S7-200Port1端口与V20的RS485接口相连(注意端口连接规则:V20的P+对3、N-对8),如下图所示:3.4变频器参数设置:V20可以通过选择连接宏Cn011实现ModbusRTU控制,也可以通过直接更改变频器参数的方法来实现。参数设置如下表所示:参数描述Cn011默认值实际设置备注P0700[0]选择命令源55RS485为命令源P1000[0]选择频率55RS485为速度设定值P2023[0]RS485协议选择22MODBUSRTU协议P2010[0]USS/MODBUS波特率66波特率为9600bpsP2021[0]MODBUS地址13V20的MODBUS地址P2022[0]MODBUS应答超时10002000向主站发回应答的最大时间P2014[0]USS/MODBUS报文间断时间1000接收数据时间3.5V20常用寄存器说明寄存器编号描述访问类型定标系数读取写入控制数据40100控制字R/W1PZD1PZD140101主设定值R/W1PZD2PZD2状态数据40110状态字R1PZD140111速度实际值R1PZD2P112040322斜坡上升时间R/W100P1120P1120P112140323斜坡下降时间R/W100P1121P1121更多的V20寄存器信息,请访问下面链接:672674843.6库存储区分配:在编译程序之前,选择“程序块”-“库”右键,选择“库存储区”。在点击“建议地址”选择V存储区的地址后点击“OK”退出。3.6初始化ModbusMaster端口:EN使能:必须保证每一扫描周期都被使能(使用SM0.0)。Mode模式:为1时,使能Modbus协议功能;为0时恢复为系统PPI协议。Baud波特率:支持的通讯波特率为4800,9600,19200。Parity校验:校验方式选择(V20采用偶校验)0=无校验1=奇较验2=偶较验Timeout超时:主站等待从站响应的时间,以毫秒为单位,典型的设置值为1000毫秒(1秒),允许设置的范围为1-32767。注意:这个值必须设置足够大以保证从站有时间响应。Done完成位:初始化完成,此位会自动置1。Error:初始化错误代码。3.7调用ModbusRTU主站读写功能块MBUS_MSG,发送一个Modbus请求:3.7.1写入控制字1和速度实际值:EN使能:同一时刻只能有一个读写功能(即MBUS_MSG)使能。注意:V20对于写指令同一时刻只运行对一个保持寄存器操作;读指令同一时刻最大允许操作125个保持寄存器。First读写请求位:每一个新的读写请求必须使用脉冲触发。Slave从站地址:可选择的范围1-247。RW请求方式:0=读,1=写。Count数据个数通讯的数据个数(位或字的个数)。注意:Modbus主站可读/写的最大数据量为120个字(是指每一个MBUS_MSG指令)。DataPtr数据指针:1.如果是读指令,读回的数据放到这个数据区中;2.如果是写指令,要写出的数据放到这个数据区中。Done完成位:读写功能完成位。Error错误代码:只有在Done位为1时,错误代码才有效。常用的控制字:047E:运行准备047F:正转启动0C7F:反转启动04FE:故障确认3.7.2读取状态字1和速度实际值:3.7.3读取斜坡上升时间P1120:3.7.4写入斜坡下降时间P1121:3.8通过状态表控制和读取变频器的状态:对于斜坡上升时间P1120,从寄存器列表中可以看到40322的寄存器的定标系数是100,读取过来的值为:VW1310=1000,所以参数P1120=1000/100=10。4Modbus错误代码:Done完成位:读写功能完成位Error错误代码:只有在Done位为1时,错误代码才有效代码描述0无错误1响应校验错误2未用3接收超时(从站无响应)4请求参数错误(slaveaddress,modbusaddress,count,R/W)5Modbus/自由口未使能6Modbus正在忙于其他请求7响应错误(响应不是请求的操作)8响应CRC校验和错误101从站不支持请求的功能102从站不支持数据地址103从站不支持此种数据类型104从站设备故障105从站接收了信息,但是响应被延迟106从站忙,拒绝了该信息107从站拒绝了信息108从站存储区奇偶错误关键词V20、ModbusRTU