子程序调用时输出干扰问题

做了一个子程序,在调用的过程中,输出值vw2000和vw2002相互干扰。
在变量里,用的是in/out还是不行

图片说明:

子程序调用时输出干扰问题    子程序调用时输出干扰问题    子程序调用时输出干扰问题   

最佳答案

附图的子程序接口中定义了TEMP类型的局部变量A100,该局部变量在子程序中引用时要遵循先赋值后引用的规则。
因为TEMP类型的局部变量你不赋值,并不表示它没有值,而是一个随机的数值。这就导致了非预期的逻辑判断,子程序内部的OUT1这个OUT 类型的形式参数并非每次调用子程序时在其内部也没有确定的赋值操作。
改动
1、子程序中将局部变量A100先赋值;
2、实数比较不要进行比较>=0.0这样的,如果工艺控制允许建议改成>0.0,或者将比较值用ROUND四舍五入取整,或者用TRUNC指令截尾取整后,进行双整数比较;
附官方文档可参看一下:子程序和中断服务程序常见问题
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-portal/MicroPower2013/s7-200/programming/basic/sbr_int.htm

提问者对于答案的评价:
谢谢,就是因为没有给A100赋值

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午3:13
下一篇 2021年7月5日 下午3:13

相关推荐

  • 模拟量控制电机转速

    想在触摸屏上写入对应的数字量,由PLC输出0-20mA电流来控制变频器再控制电机转速,我用的是西门子200 CPU224XP的PLC,触摸屏和变频器也是西门子的,本人刚接…

    SIMATIC S7-200 2021年7月5日
  • 200plc profibus通讯问题

    请问200plc通过em277与300/400plc通讯的时候,200的通讯数据对应的v存储区必须从vb0开始吗?这个起始地址能不能设置为其它的,比如说vb110或者vw2000之…

    SIMATIC S7-200 2020年11月1日
  • S7-200 PLC IO输出

    在程序中设置一IO输出,每扫描一周期翻转一次,即IO输出一个周期置1,一个周期置0。但在示波器上看,发现波形并不是高低电平切换,高电平基本正常,但低电平呈锯齿状,这是什么原因? 最…

    SIMATIC S7-200 2021年7月5日
  • 如何做到电机故障自动切换到下一台电机

    现在手上有个项目,是控制水泵的循环供水的,简单的讲有A,B,C,D,E五台水泵,正常工作时间隔四小时切换到下一台电机,具体见流程A–>B–>C–>D–&g…

    SIMATIC S7-200 2020年10月31日
  • S7-200和S7-200 smart 扩展模块可以通用吗

    S7-200的模块停产了,扩展模块可以跟S7-200 smart 扩展模块可以通用吗 最佳答案 新旧款模块是不能通用互换。新旧款的扩转模块是不能通用,而且新旧款…

    SIMATIC S7-200 2021年7月5日
  • Prodave5.5与PLC通讯

    我使用Prodave与CPU226 使用PPI做通讯在Xp系统中一直提示prodave load不成功 连接不上;但装上PLC编程软件MicroWin…

    SIMATIC S7-200 2020年11月1日
  • ET200SP与WINCC直连

    6ES7 151-8AB01-OABO   ET200SP带有PLC运算的CPU与WINCC7.4直连,网上都说能直连,但是新手太菜,没有看…

    SIMATIC S7-200 2021年7月5日
  • uss子程序库在哪可以下载,当然是要不上锁的库

    各位大侠请帮忙提供一下uss子程序库在哪可以下载,本人想用USS库来做一个控制M440变频器的子程序,但由于所下载的程序只能实现普通逻辑控制编程,而不能调用USS子程序库,而且曾下…

    SIMATIC S7-200 2021年7月5日
  • EM 231热电偶测量温度跟实际温度相差太大

    S7226PLC+EM 231热电偶做温度测量,跟实际温度相差太大,环境温度是13度,PLC显示20度,传感器连线距231模块25M左右,请教大虾如何解决? 问题补充:请…

    SIMATIC S7-200 2021年7月5日
  • S7-200与VDR通讯

    求教:现在使用CPU226CN, 需要与船上的VDR进行通讯, VDR使用的是NMEA 0183语句,RS485接口, 不太清楚是什么,&n…

    SIMATIC S7-200 2021年7月4日

发表回复

登录后才能评论