550374389
!!!
级别: 论坛先锋

精华主题: 0
发帖数量: 696 个
工控威望: 1161 点
下载积分: 5237 分
在线时间: 2360(小时)
注册时间: 2010-11-28
最后登录: 2023-09-22
查看550374389的 主题 / 回贴
楼主  发表于: 2017-02-28 21:18
CP1H PLC,执行PLS2指令,当脉冲输出当前值等于某个设定值时(该值并不是PLS2指令中的脉冲输出设定量),驱动101.00输出,该怎么编程??
mentayili
级别: 工控侠客
精华主题: 0
发帖数量: 64 个
工控威望: 2654 点
下载积分: 121683 分
在线时间: 151(小时)
注册时间: 2012-12-18
最后登录: 2024-04-30
查看mentayili的 主题 / 回贴
1楼  发表于: 2017-03-01 06:41
读取当前发送脉冲量啊,读取的数值进行比较,就可以了
楼主留言:
关键是怎么读取和比较,当脉冲频率较高的时候,周期比PLC的扫描周期还要短,单是用一条比较指令的话肯定会有误差吧
本帖最近评分记录:
  • 下载积分:+5(550374389)
    stackdog
    级别: 网络英雄
    精华主题: 0
    发帖数量: 470 个
    工控威望: 8654 点
    下载积分: 3197 分
    在线时间: 436(小时)
    注册时间: 2015-10-01
    最后登录: 2024-04-21
    查看stackdog的 主题 / 回贴
    2楼  发表于: 2017-03-01 12:21
    同意一楼
    mentayili
    级别: 工控侠客
    精华主题: 0
    发帖数量: 64 个
    工控威望: 2654 点
    下载积分: 121683 分
    在线时间: 151(小时)
    注册时间: 2012-12-18
    最后登录: 2024-04-30
    查看mentayili的 主题 / 回贴
    3楼  发表于: 2017-03-02 07:26
    引用
    引用第1楼mentayili于2017-03-01 06:41发表的  :
    读取当前发送脉冲量啊,读取的数值进行比较,就可以了

    需要到那么精确吗?你是想刚刚等于的时候才输出一次还是怎样?还有其他方法,用到高速中断和立即变更状态指令。但是速度上快了多少就不好说
    楼主留言:
    是的,刚刚等于的时候输出一次!具体用哪个中断?西门子200中有高速计数器可以对脉冲输出的当前值进行计数,当计数器的当前值以设定值相等时可以产生中断事件,不知在CP1H中要怎样才能实现?请大侠指点。。。
    mentayili
    级别: 工控侠客
    精华主题: 0
    发帖数量: 64 个
    工控威望: 2654 点
    下载积分: 121683 分
    在线时间: 151(小时)
    注册时间: 2012-12-18
    最后登录: 2024-04-30
    查看mentayili的 主题 / 回贴
    4楼  发表于: 2017-03-03 07:38
    首先把脉冲输出点并到高速计数器点上,设置成一样的计数模式,然后使用ctbl指令,对该高速计数器点执行中断就可以了
    永恒14
    级别: 略有小成
    精华主题: 0
    发帖数量: 324 个
    工控威望: 451 点
    下载积分: 13981 分
    在线时间: 232(小时)
    注册时间: 2014-12-17
    最后登录: 2023-04-09
    查看永恒14的 主题 / 回贴
    5楼  发表于: 2017-07-13 16:50
    图片:
    图片:
    赞同一楼