技术论坛

 跟我一起玩200 smart PLC---- 关于指针及循环指令的应用

返回主题列表
作者 主题
WWCWWC
至圣

经验值:71712
发帖数:8024
精华帖:145
楼主    2017-04-26 17:10:40
主题:跟我一起玩200 smart PLC---- 关于指针及循环指令的应用 精华帖 

跟我一起玩200 smart PLC

关于指针及循环指令的应用

    前一些天,有网友提问:“把一些数据累加后,再除一个数据的编程方法,需要多次调用”。我当时考虑了一下,西门子关于带参数的子程序调用正好能够满足这样的编程需要,做起来还是比较方便的。

    今天,刚好手头上有一个西门子200 PLC,于是着手先编辑这样一个程序。按网友的要求是对一些数据的累加,最后除以一个被除数。我在回复那位网友中也提到了对于一些连续的数据可以实现带参数的子程序编程。

编程思路:

初始化数据、指定指针入口、利用循环指令、对接口数据的用户数量进行累加、循环次数的比较结果进行除法计算,退出循环指令。

将一串连续的数据VW0、VW2、、、、、、10个数据累加,然后再除以一个数。

假设我按VW0 = 10;VW2 = 20;VW4 = 30;这样累加10个数据得到550这个数,再除以一个数据,假设是10,如果程序执行正确,那结果应该是55。

1)首先新建一个子程序,并在接口变量表中定义变量,其中,定义符号、数据类型、必要时做一些注释,方便在编辑程序时理解,图示:




比较循环次数结果达到循环次数,退出循环指令,图示:



完整的子程序,图示:



2)在主程序中调用这个子程序,图示:



3)在状态表中新建相关的变量数据,图示:



4)输入自VW0开始的10个数据,并连接M0.0,看结果数据存放地址VD100的数据,图示:



从状态表中可以看到结果VD100 = 55,可以实现控制要求。

西门子200的程序可以直接用200smart 软件打开。


您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。