您现在的位置是:首页 > PLC技术 > PLC技术

S7-200 PLC计数器功能及计数指令实现

来源:艾特贸易2017-06-05

简介根据前面的分析,首先考虑的是计数器实现,计数器个数很多( S7-200 有 256 个)需要存储的参数有 4 个,按照这个要求,计数器实现必须有数量可扩展性,综合考虑各种因素,使用在

    根据前面的分析,首先考虑的是计数器实现,计数器个数很多(S7-200256个)需要存储的参数有4个,按照这个要求,计数器实现必须有数量可扩展性,综合考虑各种因素,使用在C8051F020的内部4KB RAM里定义(使用关键字xdata)存储结构体变量的COUNTER来实现。    结构体COUNTER包括四个成员,分别是计数器设定值(set value)、计数当前值(current value)、计数器位(线圈状态)(action state)以及计数器端前次输入状态(former input)。用户使用的每一个计数器都是一个COUNTER结构体变量。由于计数器的动作都是立即产生的,所以除了指令实现程序之外不需要额外的子程序来实现计数。根据前面对计数器功能及计数原理的分析,可设计出计数器指令的实现程序,使用计数器结构体变量指针以及设定值作为参数。如图1-77所示为加计数器指令CTU实现子程序流程图,类似可得减计数器指令实现子程序设计方法。计数器结构体定义(定时器类似)和指令子程序原型为:
加计数器指令CTU实现子程序流程图
    1-77    加计数器指令CTU实现子程序流程图
加计数器指令CTU实现子程序流程图
    实现中计数器的个数和定时器个数的处理方法相同,可以根据产品需要进行设计、扩展,只是增加一个计数器或定时器结构体变量而已,多一些定时器或计数器只是多占用一些C8051F020的内部RAM资源而已,当然资源也不是无限的,所以数量也不能太多,但足以满足小型PLC系统的需要。