S7-200 CPU224的高速计数器当前值复位问题请教! 点击:945 | 回复:2



牛牛不牛

    
  • 精华:2帖
  • 求助:0帖
  • 帖子:50帖 | 459回
  • 年度积分:0
  • 历史总积分:856
  • 注册:2006年5月07日
发表于:2008-04-02 16:13:00
楼主
做了一个实验,用一个三菱PLC的 Y0 给S7-200(224)的 I0.0 发10KHZ的脉冲10000个,启动三菱PLC的X0按钮发10000个(用PLSY指令发的,三菱这边无问题)
S7-200这边完成的动作:当脉冲发到30000个时候,置位 Q0.0,当发到40000个时候,复位Q0.0,同时将HC0中的值归0。如此循环,目的是用来熟悉西门子的高速计数。
HC0归0是在最后一个中断(等于40000时的中断)中使用SM0.0   MOVDW 0 到SMD38 ,   MOVB 16#C0 SMB37 ,HSC 0
当发完第一个40000个脉冲的时候,能按要求动作并且也能将HCO的值归0,但放第2次的40000个脉冲时候,Q0.0无任何动作,并且HCO的值一直往上加,到40000的时候也不会归0。主程序中是用SM0.1调用高速计数子程序的
计数器为单相计数,模式为0。
请教熟悉200的朋友,如果用模式0的话如何将HC0中的数据归0并且周而复始动作呢?

PS:发现一个有趣的现象,当以10K频率发脉冲的时候,S7这边能准确检测到,10K--11K之间,误差非常,超过11K干脆只当一个脉冲计数了。S7的单相计数最高应该不止10K吧?



牛牛不牛

  • 精华:2帖
  • 求助:0帖
  • 帖子:50帖 | 459回
  • 年度积分:0
  • 历史总积分:856
  • 注册:2006年5月07日
发表于:2008-04-06 09:14:23
1楼

朋友们放几天假呢!

 

yangkai0519

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 6回
  • 年度积分:0
  • 历史总积分:6
  • 注册:2007年12月28日
发表于:2008-04-12 19:46:58
2楼

你说的问题不是很清楚,我觉得应该先写控制位,再复位,你 16#CO 改成E8试一下,

我也是刚学S7,跟你一样原来也搞过三菱,西门子的HSC比三菱的要烦点,多试就行了


热门招聘
相关主题

官方公众号

智造工程师