利用modbus协议实现对S7-200 +EM253模块的位置控制

最近在做一个项目,利用S7-200实现对4台步进电机的位置控制,其中的两台是用EM253控制的,另两台是用PLC自有的Q0.0和Q0.1来实现的。在控制室有一台PC机,利用modbus协议实现与现场PLC 200的通讯(PC机做主站,PLC做从站),现场也有一些按钮开关能实现各个电机的前后移动。上位PC机能实现距离的精确定位!现在有一个问题就是,当我在现场让EM253控制的那两台电机运行起来后,如果上位机在这两台电机运行期间发出任何的读写从站(下位PLC)的命令,都会导致电机的停转!这显然不是我所需要的!请问是什么原因?有哪位碰到过?说到底就是感觉modbus协议好像在干扰我的EM253!我的V存储区是没有什么问题的,电机在没有上位机的modbus读写命令时也是正常的!

问题补充:
1.我只是通过功能2读取输出数字量的状态,此时并没有发送电机的控制命令,这时开关量状态是读回来了,但电机还是停止了!V变量区也没有重叠的地方!
2.在交叉表中的确看到一些L变量在EM253和MOdbus协议功能都用到的变量,但我感觉这也没多大关系啊!毕竟每个函数独有自己的临时局部变量区啊!
3.我在交叉引用表中还发现Modbus_slave功能块与IB0(输入字节)和QB0(输出字节)有联系,而实际上我只是调用了它,没有编写与它相关的语句啊!不知是怎么原因!请帮我分析下!
4.顺便问下,有什么简单的方法查看EM253配置时占用的V区空间啊?
5.我的系统中有两个EM253模块,其中最右边的那个在重新PLC上电后回出现MG灯闪的情况(表明配置有错误,而我再将以前的配置和程序下载到CPU中后就正常了。再次断电-通电后又是这样的闪的情况,不知是不是EM253坏了?

最佳答案

1、检查与上位机交互的数据里面,有没有对电机控制位的误操作;
2、modbus库函数需要一定的V存储器作为运算区,检查一下是否有与电机控制重复使用的情况;
3、再编译一下程序,在交叉引用中看看被modbus库函数调用的变量中有没有与电机控制相关的,modbus库函数编译后会生成中断程序,并自动调用一些L、SM以及根据参数设定调用I、Q、M点,也请楼主留意。

提问者对于答案的评价:
最终的问题找到了,还是在构造函数时,temp变变量引起的相互干扰!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc302664.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月31日 下午3:04
下一篇 2020年10月31日 下午3:04

相关推荐

  • S7-200如何程序实现STOP然后RUN

    S7-200如何程序实现STOP然后RUN 最佳答案 没有这个指令,只能人工通过拨码开关将状态转换为RUN。用指令可以调用stop指令使程序停止运行,但是没有指令可以将停止了的程序…

    SIMATIC S7-200 2021年7月5日
  • win10系统安装的S7-200 SP9找不到TCP/IP驱动

    我的是win10企业版64位系统,安装的S7-200 SP9, 但是找不到TCP/IP以太网驱动,网上有修复的教程,需要下载一个Driver,但是没有给出下载链…

    SIMATIC S7-200 2021年7月5日
  • EM235 模拟输出

    描述:EM235的模拟输出组态开关组态为0-20mA,然后用PID向导组态的输出是4-20mA。问题:模拟模块的电流输出有超出4-20mA范围的可能吗? 最佳答案 没有这个可能。 …

    SIMATIC S7-200 2018年3月6日
  • 请教s7-200与传感器通信协议

    首先谢谢各位帮忙,我在做一PLC控制问题,传感器检测溶氧信号,输出经过处理已为数字信号PLC使用的是S7-200 CPU224XP,PLC与传感器之间如何通信我一直没搞明…

    SIMATIC S7-200 2021年7月4日
  • plc能否一路受电脑控制一路由触摸屏控制

    s7200能否由触摸屏和电脑同时控制 问题补充:应如何实现呢? 最佳答案 s7200能否由触摸屏和电脑同时控制应如何实现呢?答:CPU224以上都有两个通信口,一个接上位机,一个接…

    SIMATIC S7-200 2020年11月5日
  • STEP7中的数据类型转换

    问题:AIW0 的值为 6400,放到VW0值为   6400,I-DI转化为双整数VD2 值为  …

    SIMATIC S7-200 2021年7月5日
  • 数据寻址

    在寻址中,数据得长度是按位,字节,字和双字设置的.VW存储区域包含2个VB存储区域,比如VW100包含VB100和VB101.如果给VB100传送数值12,VB101传送34,那么…

    SIMATIC S7-200 2021年7月5日
  • plc,模块,pc的通讯问题

    我是想PLC给模块发命令,模块返回数据,然后PLC再把收到的数据发给PC,上次我问了,但是现在还没有调通 非常感谢Laohuai上次给我发的程序 最佳答案 如果是plc和…

    SIMATIC S7-200 2021年7月4日
  • s7-200输出点问题

    我用16个输出点的CPU控制16台电机的启动.同时用16电眼控制电机的停止.但是我发现同时好几个输出点会有在很短时间内一灭一亮(我的电眼在起作用)这时我听见"孜孜"的声音---也就…

    SIMATIC S7-200 2021年7月5日
  • 关于DP协议

    他们的上位机编程软件是wincc,那我这边的制氮机是s7-200来控制的,他们说要我提供PLC程序里编好的中间变量,但是我这个程序里,比如启动和停止,根本没有中间变量啊,只有报警有…

    2017年11月23日