回复:SMART200 PTO 异常停止

holdkcsxyz

西门子1847工业学习平台

  • 帖子

    1560
  • 精华

    24
  • 被关注

    162

论坛等级:至圣

注册时间:2015-06-03

钻石 钻石 如何晋级?

发布于 2018-10-08 16:59:34

17楼

展开查看
以下是引用饼够在2018-10-07 20:13:54的发言 >6楼

NETWORK 5    //速度检测为0自动重新开启保护记录

LDR=   HC0减记忆:VD746, 0.0

EU

A      自动运行:V400.7

AN     定速:V400.5

MOVB   PTO0_Status:SMB66, SMB67记录:VB734

MOVW   PTO0_Profile_Offset:SMW168, SMB168记录:VW732

MOVW   PTO0_Profile_Offset:SMW168, VW736

R      PLS0_Enable:SM67.7, 1

PLS    0

MOVW   +1999, PTO0_Profile_Offset:SMW168

MOVB   16#E0, PLS0_Ctrl:SMB67

PLS    0

INCW   次数记录:VW730


NETWORK 6  //检测脉冲空闲停机保护记录

LD     PLS0_Idle:SM66.7

EU

A      自动运行:V400.7

AN     定速:V400.5

MOVB   PTO0_Status:SMB66, VB754

MOVW   PTO0_Profile_Offset:SMW168, VW752

MOVW   PTO0_Profile_Offset:SMW168, VW756

R      PLS0_Enable:SM67.7, 1

PLS    0

MOVW   +1999, PTO0_Profile_Offset:SMW168

MOVB   16#E0, PLS0_Ctrl:SMB67

PLS    0

INCW   VW750

问题依旧。

现在,我通过高速编码器检测反馈速度,当检测到开机情况下速度为0时重新启动脉冲发出。

同时也检测脉冲空闲位,当运行状态下,停机马上重新开始发脉冲,勉强可以用。

还是没搞明白为什么脉冲有时会停。当停机时溢出位SM66.6也是0

      估计你用空闲位来启动下一段PLS接近最优用法了,官方说明好像要延迟上一个有效脉冲最大周期时间Tmax,也有推荐一个定时中断法,但你的Tmax应该约等于0.18ms(定时中断貌似不好用,能用什么呢难道要在原点的I/O中断中开启自身收发固定周期的高速计数输入中断来点数自己发送的脉冲个数中断来捕捉这0.18ms再发PLS,没在SMART上试过貌似走不通),但是总感觉这0.18ms很容易就被几条指令(比如原点的普通上升沿指令还有移动指令等)消耗掉的(难道SMART快到真的要仔细关注这0.18ms)。不知上述理解是否有误。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有8946条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。