西门子代理6ES7132-4HB01-0AB0
我公司主营西门子各系列PLC (S7-200 SMART S7-300 S7-400) 触摸屏 变频器 (MM系列 G120 G120C G110) 伺服 (V80 V60) 数控备件 (PCU50 NCU CCU 轴卡) 等 价格优势 产品为西门子原装正版产品 我公司售出的产品 按西门子标准质保 产品本身有质量问题 质保一年 公司秉承:以信待人 以诚待人 质量如生命 客户至上的经营理念 竭诚为您服务 您的肯定是我们大的动力 我们将期待与您长期持久的合作
那么该如何避免这种情况呢?
大家是否还记得刚刚介绍局部变量参数类型时除了IN, OUT类型外,还有一种类型叫IN_OUT,这种类型的参数是先读入,然后再写出,这里我们就可以利用它的特点解决上面的问题。
下面对子程序的参数进行修改,将原先的#CC变量类型改为IN_OUT。如下图所示:
图.05
主程序结构不变,如下所示,可以看到由于#CC的类型是IN-OUT,它在子程序块的接口位置也转到了左侧输入侧。
图.06
下面再次将I0.0置1,其他输入都为0,监控程序状态,如图.07所示,可以看到只有Q0.0为1,Q0.1状态为0。而如果将I0.1置1, Q0.0被复位,Q0.1还是0,这样就符合客户的控制要求了。
图.07
同样,如果只给I0.2置1,那么也只有Q0.1会亮,不会再影响Q0.0。
了解了IN_OUT类型变量的特点,就不难分析以上的结果。因为每次调用子程序时,局部变量#CC都会先去读取输入参数Q0.0或Q0.1的状态,所以即使两次调用子程序时,#CC变量使用的同一区域,该区域的值也会在开始被Q点的状态所修改,就不存在两次调用相互影响的情况了。
另外,如果在子程序一开始就添加一条指令,对局部变量#CC进行赋初值(如图.08),也可以避免临时变量区数值不定的问题,您可以尝试测试下。
图.08
所以,在编写200子程序时要特别注意局部变量的特点,一旦出现多次调用不正常的情况,就可以从局部变量的特点出发分析,看看是不是存在隐患。善加利用IN_OUT变量也许可以解决许多问题
- 西门子代理6ES7132-4FB01-0AB0 2024-11-10
- 西门子代理6ES7132-4BF00-0AB0 2024-11-10
- 西门子代理6ES7132-4BF00-0AA0 2024-11-10
- 西门子代理6ES7132-4BD30-0AB0 2024-11-10
- 西门子代理6ES7132-4BD32-0AA0 2024-11-10
- 西门子代理6ES7132-4BD00-0AB0 2024-11-10
- 西门子代理6ES7132-4BD02-0AA0 2024-11-10
- 西门子代理6ES7132-4BB31-0AB0 2024-11-10
- 西门子代理6ES7132-4BB31-0AA0 2024-11-10
- 西门子代理6ES7132-4BB01-0AB0 2024-11-10
- 西门子代理6ES7132-4BB01-0AA0 2024-11-10
- 西门子代理6ES7131-4BF50-0AA0 2024-11-10
- 西门子代理6ES7131-4RD02-0AB0 2024-11-10
- 西门子代理6ES7131-4BD51-0AA0 2024-11-10
- 西门子代理6ES7131-4CD02-0AB0 2024-11-10
联系方式
- 电 话:18717946324
- 联系人:占雪芬
- 手 机:18717946324
- 微 信:18717946324