LOGO!计数器 点击:770 | 回复:4



netwell

    
  • 精华:2帖
  • 求助:0帖
  • 帖子:241帖 | 589回
  • 年度积分:0
  • 历史总积分:2921
  • 注册:2003年3月17日
发表于:2007-11-05 19:08:00
楼主
我现在想用一LOGO!进行计数,输入端A 为脉冲周期为15毫秒,脉宽7毫秒的连续脉冲,输入端B 为偶发性脉冲,脉宽10毫秒,输出为当B 有信号时,输出为高,并对A 进行计数,10个A 脉冲后 ,输出变低。能否实现?赐教!



ls20000

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 14回
  • 年度积分:0
  • 历史总积分:17
  • 注册:2007年6月25日
发表于:2007-11-07 11:32:00
1楼
步序 指令 说明
1 IN DI02 读取启动计数的B输入
2 OSP 1 当DI02由"0"变"1"时,产生1个周期的脉冲,做S端
3 IN IO01_1 读取中间变量,做R端
4 RS RS触发器运算(R端优先)
5 OUT DO01 结果输出至DO01
6 IN DI01 读取DI01
7 OSP 1 当DI01由"0"变"1"时,产生1个周期的上升沿脉冲
8 AND 2 上两步求"与"运算
9 OUT IO01_2 结果送这位中间变量
10
11 IN DO01 读取DI01
12 BIF STEP1: 为"0"跳转STEP1步执行,为"1"往下执行
13 IN IO01_2 读取中间变量
14 IN M01 读取M01
15 ADD 2 上两步求"+",即将"IO01_2"为"1"的次数加入M01
16 OUT M01
17 GTO STEP2: 强制跳转至STEP2执行
18
19 STEP1:
20 INI 0
21 OUT M01 当DO01为0时,将M01清零
22
23 STEP2:
24 INI 10 读取立即数"10"
25 IN M01 读取M01
26 SUB 将上两步相减
27 BIT STEP3: 结果大于"0"跳转STEP3
28 INI 1
29 OUT IO01_1
30
31
32 STEP3:
33 INI 0
34 OUT IO01_1
35 END
36

ls20000

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 14回
  • 年度积分:0
  • 历史总积分:17
  • 注册:2007年6月25日
发表于:2007-11-07 13:56:00
2楼

以上程序的扫描周期设置为1ms,单步指令的执行速度为55ns,

这么快的速度输入输出接口只能为TTL电平了

其他还会有什么需求?

netwell

  • 精华:2帖
  • 求助:0帖
  • 帖子:241帖 | 589回
  • 年度积分:0
  • 历史总积分:2921
  • 注册:2003年3月17日
发表于:2007-11-07 18:54:00
3楼
非常感谢ls20000
再请教一下 LOGO! OBA3能达到要求吗?

KKYYHH

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:5
  • 注册:2009年9月04日
发表于:2009-09-05 17:15:29
4楼

大师们好:

         请教一个问题。LOGO加减计数器能不能这样使用:只有CNT脉冲,频率可变的,在设置了ON和OFF后,输出Q是否能够呈现周期性变化。LOGO为OAB5。请赐教!谢谢


热门招聘
相关主题

官方公众号

智造工程师