vancouva
级别: 略有小成
精华主题: 0
发帖数量: 222 个
工控威望: 397 点
下载积分: 4689 分
在线时间: 142(小时)
注册时间: 2007-04-10
最后登录: 2024-03-11
查看vancouva的 主题 / 回贴
楼主  发表于: 2011-05-28 15:58
图片:
见过瑞士的机器,把输出脉冲的Y0接到输入X0,用指令C235 D300(设定的脉冲数量)和DHSCS D300 C235 M50就可以看出输出的脉冲是否正确?我这个为什么不行呢,脉冲电压5V。
z4131246
华铭工控
级别: 工控侠客
精华主题: 0
发帖数量: 582 个
工控威望: 2562 点
下载积分: 23788 分
在线时间: 521(小时)
注册时间: 2010-10-22
最后登录: 2022-08-19
查看z4131246的 主题 / 回贴
1楼  发表于: 2011-05-28 17:04
晕死有那么麻烦吗,直接从D8140-D8143里面调用就行了只不过Y0和Y1发完一次脉冲并检测完后你要复位一次(因为里面的脉冲数是PLC开机以后累积的脉冲数)。
你上面的程序只能检测到少于预设时的参数错误超过了后怎么办;下面我做了一个程序你看看怎么样


  至于你用X0检测不到Y0的脉冲输出肯定是你的COM COM0 COM1 COM2 COM3没连在一起,这一张是我自己做的实验
楼主留言:
热心助人。我原来的信号电压为5V,COM与COM0已经连接,但是检测不到,后来参看手册,换成24V加限流电阻,就可以接收信号了。
但是现在的新问题是:在发脉冲的时候,突然断开检测信号X0,步进电机就停止了(程序设定的是走完,与检测信号无关啊,只不过走完脉冲没有下一个动作而已,以此区别脉冲丢失。)希望3楼能给予解答。谢谢。
[ 此帖被z4131246在2011-05-28 18:03重新编辑 ]
本帖最近评分记录:
  • 下载积分:+3(vancouva) 热心助人
    z4131246
    华铭工控
    级别: 工控侠客
    精华主题: 0
    发帖数量: 582 个
    工控威望: 2562 点
    下载积分: 23788 分
    在线时间: 521(小时)
    注册时间: 2010-10-22
    最后登录: 2022-08-19
    查看z4131246的 主题 / 回贴
    2楼  发表于: 2011-05-29 11:45
    你好 你能不能把你的要求说清楚一点 我现在看得很模糊 我想我应该能帮上你;你的意思是你用Y0给步进电机发脉冲当脉冲发完以后程序内部要检测到Y0的脉冲要发完如果因为其他因素使其没发玩的话就没有下一步动作,是不是这意思啊?
    楼主留言:
    就是这个意思,但现在是:我假设信号没有发完(把X0突然断开),让检测信号与实际脉冲数步不相等。步进电机就不走了。实际断开X0信号应该与步进电机运行没有关系的。步进电机应该继续走,直到脉冲发完(即使不准确)。只是没有下一个动作而已。
    z4131246
    华铭工控
    级别: 工控侠客
    精华主题: 0
    发帖数量: 582 个
    工控威望: 2562 点
    下载积分: 23788 分
    在线时间: 521(小时)
    注册时间: 2010-10-22
    最后登录: 2022-08-19
    查看z4131246的 主题 / 回贴
    3楼  发表于: 2011-05-30 08:39
    我给你做了个样本程序你可以参考下,该程序在Y0脉冲输出没有达到预定值那么多时就不会有输出(该程序只供你参考里面有很多因素没有完善你自己可以改正)
       X0是脉冲发送启动 X2是输出复位键 Y2是Y0脉冲发送和预定值一致时动作反之就不动作 D0是发送脉冲的脉冲量。
    [ 此帖被z4131246在2011-05-30 10:29重新编辑 ]
    z4131246
    华铭工控
    级别: 工控侠客
    精华主题: 0
    发帖数量: 582 个
    工控威望: 2562 点
    下载积分: 23788 分
    在线时间: 521(小时)
    注册时间: 2010-10-22
    最后登录: 2022-08-19
    查看z4131246的 主题 / 回贴
    4楼  发表于: 2011-05-31 08:10
    你非得用X0检测Y0的脉冲输出吗,用内部的特殊寄存器不是更好吗?