s7-200 1ms计时器的精度 点击:986 | 回复:8



空智

    
  • 精华:1帖
  • 求助:0帖
  • 帖子:20帖 | 59回
  • 年度积分:0
  • 历史总积分:337
  • 注册:2002年5月28日
发表于:2003-12-17 15:57:00
楼主
有个问题一直想不通,1ms计时器在扫描周期的任意时刻更新,但是计时器的启动同样也是受扫描周期影响,那么启不是计时器的精度受系统扫描周期影响?请指教



叶帆

  • 精华:1帖
  • 求助:0帖
  • 帖子:18帖 | 88回
  • 年度积分:0
  • 历史总积分:239
  • 注册:2003年9月03日
发表于:2003-12-09 09:14:00
1楼
你可以编一个循环(jmp-lbl循环),把定时器放在里面,你发现1ms的定时器的值确实在同一个扫描周期变化了,而10ms,100ms定时器的值却不会更新。

空智

  • 精华:1帖
  • 求助:0帖
  • 帖子:20帖 | 59回
  • 年度积分:0
  • 历史总积分:337
  • 注册:2002年5月28日
发表于:2003-12-09 09:47:00
2楼
叶帆,你说的有道理,不过我的意思是计时器的启动和输出是受系统扫描周期影响的,例如下面这段程序 LD I0.0 TON T32, +20 NETWORK 2 LD T32 = Q0.0 I0.0状态转on,当程序执行完映射区扫描,然后执行程序到当前语句才能启动T32,然后计时器在19~20ms之间,转换t32到on,然后要在此等到程序执行到当前语句,才能转换Q0.0到on,并且中间还有写入输出的动作,这样从i0.0至on到Q0.0至on所经过的时间不就大于20ms了吗?并且和系统扫描周期相关,请大虾们指教

空智

  • 精华:1帖
  • 求助:0帖
  • 帖子:20帖 | 59回
  • 年度积分:0
  • 历史总积分:337
  • 注册:2002年5月28日
发表于:2003-12-09 09:47:00
3楼
叶帆,你说的有道理,不过我的意思是计时器的启动和输出是受系统扫描周期影响的,例如下面这段程序 LD I0.0 TON T32, +20 NETWORK 2 LD T32 = Q0.0 I0.0状态转on,当程序执行完映射区扫描,然后执行程序到当前语句才能启动T32,然后计时器在19~20ms之间,转换t32到on,然后要在此等到程序执行到当前语句,才能转换Q0.0到on,并且中间还有写入输出的动作,这样从i0.0至on到Q0.0至on所经过的时间不就大于20ms了吗?并且和系统扫描周期相关,请大虾们指教

过客8088

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 346回
  • 年度积分:0
  • 历史总积分:1119
  • 注册:2003年1月07日
发表于:2003-12-09 10:46:00
4楼
用定时器中断,当定时器值达到设定值时馬上执行相应动作,效果会好一些。

空智

  • 精华:1帖
  • 求助:0帖
  • 帖子:20帖 | 59回
  • 年度积分:0
  • 历史总积分:337
  • 注册:2002年5月28日
发表于:2003-12-09 10:52:00
5楼
云之风@无名: 问题是我现在想要精确计算两个脉冲之间的时间,有好的算法嘛?

空智

  • 精华:1帖
  • 求助:0帖
  • 帖子:20帖 | 59回
  • 年度积分:0
  • 历史总积分:337
  • 注册:2002年5月28日
发表于:2003-12-09 10:52:00
6楼
云之风@无名: 问题是我现在想要精确计算两个脉冲之间的时间,有好的算法嘛?

西域枭鹏

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 4回
  • 年度积分:0
  • 历史总积分:26
  • 注册:2002年7月29日
发表于:2003-12-17 15:57:00
7楼
E-mail:sxpxiao@sina.com QQ:248949267

西域枭鹏

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 4回
  • 年度积分:0
  • 历史总积分:26
  • 注册:2002年7月29日
发表于:2003-12-17 15:57:00
8楼
E-mail:sxpxiao@sina.com QQ:248949267

热门招聘
相关主题

官方公众号

智造工程师