恭喜,你发布的帖子
发布于 2020-09-02 15:01:41
2楼
首先非常感谢你对我的提问的回复及验证。希望能再次得到你的指导。
可能是我前面提问表述不是很清晰,我把条件及要求再描述一次。
1)高速旋转的轮子极限速度是每秒10圈,即100ms一圈(实际生产时速度会变化)。
2)在轮子上等分20份,即20个产品在上面,需要对每个产品进行检测,那么检测需要一个触发信号。
3)用2000线的编码器与旋转的轮子同步,那么PLC 需要 100个脉冲送出一个信号。
4)用高速计数器 当前值等于预设值 进中断,高速计数器在第二个计数周期不是从 0开始。如果在主程序对高速计数器清零,由于扫描周期的影响,从第二个信号周期开始就出现延迟。
希望能得到你的帮助。再次感谢!VX:C17714144
你没有理解当当前值等于预设值时,plc优先进入指定的中断,在这个中断子程序中仍然可以写更新当前值和更新预设值的(这个在你相对均分的脉冲中可能用不上)。由此说明进入中断后,高速计数器允许更新当前值,相当于理解又从0开始计数,更新预设值,你需要高速脉冲总数。
重新设置高速计数器参数本身没有问题,你也不需要纠结在此。
我当时担心的问题是相当于5mS时间内,plc需要作出一个输出响应,你要知道一般plc的扫描周期很有可能大于5mS时间周期,那么,如果按一般方式,等待plc的扫描周期很有可能丢失输出机会,所以,正是考虑到这些因素,我回复说调用中断,在中断用用立即输出指令可以测试试试的。
你还可以这样理解,假设是一个恒速设备,设备每5mS输出一个脉冲(暂且怎么定义),你将如何处理?
这个5mS的来由是,每旋转一周需要100mS时间,每一圈需要划分20个中断工位,每一个工位的时间= 100 / 20 = 5mS
请填写推广理由:
分享
只看
楼主