• «
  • 1
  • 2
  • 3
  • »
  • Pages: 2/3     Go
xqx666
深圳中级电工
级别: 家园常客
精华主题: 0
发帖数量: 553 个
工控威望: 664 点
下载积分: 1988 分
在线时间: 280(小时)
注册时间: 2009-04-29
最后登录: 2023-07-13
查看xqx666的 主题 / 回贴
12楼  发表于: 2010-07-29 21:39
看了半天都没人肯上程序,楼主,不好意思,小弟来晚了,请看程序
给我加点分吧
附件: 打螺丝程序.rar (11 K) 下载次数:64
网站提示: 请不要用迅雷下载附件,容易出错
本帖最近评分记录:
  • 下载积分:+1(fengbingyuan) 热心助人
  • 电工废话太多,直接上程序才是硬道理。诚交深圳及全国工控低手。
    xqx666
    深圳中级电工
    级别: 家园常客
    精华主题: 0
    发帖数量: 553 个
    工控威望: 664 点
    下载积分: 1988 分
    在线时间: 280(小时)
    注册时间: 2009-04-29
    最后登录: 2023-07-13
    查看xqx666的 主题 / 回贴
    13楼  发表于: 2010-07-29 21:42
    其实你说的要在HMI上设定任意位置来实现程序,那个所谓的传说中的“冒泡程序”我还真写不出来,所以刚刚看了以上版主所说的思路,马上试了一下,这程序还算是比较简单。有空多多交流
    电工废话太多,直接上程序才是硬道理。诚交深圳及全国工控低手。
    yahzubao08
    级别: 略有小成
    精华主题: 0
    发帖数量: 104 个
    工控威望: 414 点
    下载积分: 483 分
    在线时间: 194(小时)
    注册时间: 2009-08-27
    最后登录: 2018-04-24
    查看yahzubao08的 主题 / 回贴
    14楼  发表于: 2010-07-29 22:07
    如果我是楼主,我会给3楼,4楼,6楼,8楼加分。
    fengbingyuan
    合作共赢
    级别: 略有小成
    精华主题: 0
    发帖数量: 219 个
    工控威望: 269 点
    下载积分: 857 分
    在线时间: 430(小时)
    注册时间: 2008-04-03
    最后登录: 2024-10-21
    查看fengbingyuan的 主题 / 回贴
    15楼  发表于: 2010-07-29 22:21
    引用
    引用第13楼xqx666于2010-07-29 21:42发表的  :
    其实你说的要在HMI上设定任意位置来实现程序,那个所谓的传说中的“冒泡程序”我还真写不出来,所以刚刚看了以上版主所说的思路,马上试了一下,这程序还算是比较简单。有空多多交流

    很感谢朋友的热心帮助,但是,你的程序好象还不能实现我要的这个功能,因为PLSY K2000 DXXX Y0中的DXXX脉冲数量应该是根据前后两个位置的会不断变化的.不过很感谢你的指点!
    [ 此帖被fengbingyuan在2010-07-29 22:28重新编辑 ]
    xqx666
    深圳中级电工
    级别: 家园常客
    精华主题: 0
    发帖数量: 553 个
    工控威望: 664 点
    下载积分: 1988 分
    在线时间: 280(小时)
    注册时间: 2009-04-29
    最后登录: 2023-07-13
    查看xqx666的 主题 / 回贴
    16楼  发表于: 2010-07-30 09:14
    引用
    引用第15楼fengbingyuan于2010-07-29 22:21发表的  :

    很感谢朋友的热心帮助,但是,你的程序好象还不能实现我要的这个功能,因为PLSY K2000 DXXX Y0中的DXXX脉冲数量应该是根据前后两个位置的会不断变化的.不过很感谢你的指点!

    再向你讲解一下这个程序,例如:你的位置1=0,(步进电机的原点要装在此处)所以D8140=0
                                           2=100,
                                            3=200,4=300,5=400,6=500,7=600,8=700,意思是说你的每个打螺丝的位置是等距,当然可以不是等距,
    当你在想在HMI上面设定位置流程比如是8,5,4,7,6,1,2,3这几个位置时,对应输入的数据为700,400,300,600,500,0,100,200,
    当M101接通时,            首先D1取绝对值,D8> D8140,所以Y2接通步进电机前进到D1=700的位置,
    这步完成后M102ON,       首先D2取绝对值,D5< D8       ,所以Y2断电步进电机后退到D2=300
    这步完成后M103ON,       首先D3取绝对值,D4< D5       ,所以Y2断电步进电机后退到D3=100
    这步完成后M104ON,       首先D4取绝对值,D7> D4       ,所以Y2接通步进电机前进到D4=300
    这步完成后M105ON,       首先D5取绝对值,D6< D7      ,所以Y2断电步进电机后退到D5=100
    这步完成后M106ON,       首先D6取绝对值,D1< D6      ,所以Y2断电步进电机前进到D6=500
    这步完成后M107ON,       首先D7取绝对值,D2< D1     ,所以Y2断电步进电机前进到D7=100
    这步完成后M106ON,       首先D8取绝对值,D3< D2     ,所以Y2断电步进电机前进到D8=100
    以上位置完成后步进电机ZRN K2000 K200 X3 Y0回原点,D8140清零。
    程序刚刚帮你改过了,取绝对值行走的话不会有问题。
    附件: 取绝对值打螺丝.rar (11 K) 下载次数:54
    网站提示: 请不要用迅雷下载附件,容易出错
    电工废话太多,直接上程序才是硬道理。诚交深圳及全国工控低手。
    xqx666
    深圳中级电工
    级别: 家园常客
    精华主题: 0
    发帖数量: 553 个
    工控威望: 664 点
    下载积分: 1988 分
    在线时间: 280(小时)
    注册时间: 2009-04-29
    最后登录: 2023-07-13
    查看xqx666的 主题 / 回贴
    17楼  发表于: 2010-07-30 09:19
    再向你讲解一下这个程序,例如:你的位置1=0,(步进电机的原点要装在此处)所以D8140=0
                                           2=100,
                                            3=200,4=300,5=400,6=500,7=600,8=700,意思是说你的每个打螺丝的位置是等距,当然可以不是等距,
    当你在想在HMI上面设定位置流程比如是8,5,4,7,6,1,2,3这几个位置时,对应输入的数据为700,400,300,600,500,0,100,200,
    当M101接通时,            首先D1取绝对值,D1> D8140,所以Y2接通步进电机前进到D1=700的位置,
    这步完成后M102ON,       首先D2取绝对值,D2< D1       ,所以Y2断电步进电机后退到D2=300
    这步完成后M103ON,       首先D3取绝对值,D3< D2       ,所以Y2断电步进电机后退到D3=100
    这步完成后M104ON,       首先D4取绝对值,D4> D3       ,所以Y2接通步进电机前进到D4=300
    这步完成后M105ON,       首先D5取绝对值,D5< D4      ,所以Y2断电步进电机后退到D5=100
    这步完成后M106ON,       首先D6取绝对值,D6< D5      ,所以Y2断电步进电机前进到D6=500
    这步完成后M107ON,       首先D7取绝对值,D7< D6     ,所以Y2断电步进电机前进到D7=100
    这步完成后M106ON,       首先D8取绝对值,D8< D7     ,所以Y2断电步进电机前进到D8=100
    以上位置完成后步进电机ZRN K2000 K200 X3 Y0回原点,D8140清零。
    程序刚刚帮你改过了,取绝对值行走的话不会有问题。
    本帖最近评分记录:
  • 下载积分:+1(gumeng) 优秀文章
  • 电工废话太多,直接上程序才是硬道理。诚交深圳及全国工控低手。
    aaweihua
    级别: 家园常客
    精华主题: 0
    发帖数量: 536 个
    工控威望: 894 点
    下载积分: 17631 分
    在线时间: 282(小时)
    注册时间: 2009-11-05
    最后登录: 2022-10-23
    查看aaweihua的 主题 / 回贴
    18楼  发表于: 2010-07-30 11:49
    楼上的朋友很热情,学习了
    张平全
    为国出力的时候到了
    级别: 家园常客
    精华主题: 0
    发帖数量: 955 个
    工控威望: 965 点
    下载积分: 1895 分
    在线时间: 466(小时)
    注册时间: 2008-04-25
    最后登录: 2022-11-19
    查看张平全的 主题 / 回贴
    19楼  发表于: 2010-07-30 16:20
    这种结构当然是非常理想,每打一个产品,就有一个效验原点的机会,我用松下FPG,FPX都做过类似的东西,是用在自动分选系统上的,但我的现场是有可能运行大半天,也只有一个机会会出现在"原点"上,这就会造成累计误差的增大风险
    楼上XQX666是精华!
    fengbingyuan
    合作共赢
    级别: 略有小成
    精华主题: 0
    发帖数量: 219 个
    工控威望: 269 点
    下载积分: 857 分
    在线时间: 430(小时)
    注册时间: 2008-04-03
    最后登录: 2024-10-21
    查看fengbingyuan的 主题 / 回贴
    20楼  发表于: 2010-07-31 10:24
    引用
    引用第16楼xqx666于2010-07-30 09:14发表的  :

    再向你讲解一下这个程序,例如:你的位置1=0,(步进电机的原点要装在此处)所以D8140=0
                                           2=100,
                                            3=200,4=300,5=400,6=500,7=600,8=700,意思是说你的每个打螺丝的位置是等距,当然可以不是等距,
    当你在想在HMI上面设定位置流程比如是8,5,4,7,6,1,2,3这几个位置时,对应输入的数据为700,400,300,600,500,0,100,200,
    .......

    打完第2个螺丝(即5号螺丝)的时候,D2=700-400=300,下一步打第3个螺丝(即4号螺丝)的时候,4号螺丝的绝对距离D3=300,执行SUB D3 D2 D3后,发脉冲PLSY K2000 D3 Y0中的D3=0啊,那怎么会跑到打4号螺丝位呢?请教……
    xqx666
    深圳中级电工
    级别: 家园常客
    精华主题: 0
    发帖数量: 553 个
    工控威望: 664 点
    下载积分: 1988 分
    在线时间: 280(小时)
    注册时间: 2009-04-29
    最后登录: 2023-07-13
    查看xqx666的 主题 / 回贴
    21楼  发表于: 2010-07-31 20:10
    引用
    引用第20楼fengbingyuan于2010-07-31 10:24发表的  :

    打完第2个螺丝(即5号螺丝)的时候,D2=700-400=300,下一步打第3个螺丝(即4号螺丝)的时候,4号螺丝的绝对距离D3=300,执行SUB D3 D2 D3后,发脉冲PLSY K2000 D3 Y0中的D3=0啊,那怎么会跑到打4号螺丝位呢?请教……

    打完第2个螺丝(即5号螺丝)的时候,D2=700-400=300,下一步打第3个螺丝(即4号螺丝)的时候,因为第3个螺丝与第2个螺丝的相对位置等于D3-D2=400-300=100,所以执行SUB D3 D2 D3后,发脉冲PLSY K2000 D3 Y0中的D3=100,所以后退100个脉冲,记住是相对位置,只是打第一个螺丝才是绝对位置。
    本帖最近评分记录:
  • 下载积分:+2(fengbingyuan) 热心助人
  • 电工废话太多,直接上程序才是硬道理。诚交深圳及全国工控低手。
    fengbingyuan
    合作共赢
    级别: 略有小成
    精华主题: 0
    发帖数量: 219 个
    工控威望: 269 点
    下载积分: 857 分
    在线时间: 430(小时)
    注册时间: 2008-04-03
    最后登录: 2024-10-21
    查看fengbingyuan的 主题 / 回贴
    22楼  发表于: 2010-07-31 20:49
    引用
    引用第21楼xqx666于2010-07-31 20:10发表的  :

    打完第2个螺丝(即5号螺丝)的时候,D2=700-400=300,下一步打第3个螺丝(即4号螺丝)的时候,因为第3个螺丝与第2个螺丝的相对位置等于D3-D2=400-300=100,所以执行SUB D3 D2 D3后,发脉冲PLSY K2000 D3 Y0中的D3=100,所以后退100个脉冲,记住是相对位置,只是打第一个螺丝才是绝对位置。

    只是打第一个螺丝才是绝对位置是没错。但是,D3的值你都已经在HMI上输入等于300了,在执行SUB D3 D2 D3前,D300应该是等于300才对啊,D3的值怎么会等于400了呢?哪里来D3-D2=400-300?
    zhidaoshenmo
    虽然我们不是“富二代”,但是我们还有成为“富一代”的机会。
    级别: 家园常客
    精华主题: 0
    发帖数量: 559 个
    工控威望: 638 点
    下载积分: 1175 分
    在线时间: 309(小时)
    注册时间: 2009-04-16
    最后登录: 2017-10-25
    查看zhidaoshenmo的 主题 / 回贴
    23楼  发表于: 2010-07-31 21:47
    用DECO
    本人在厦门..同行的朋友,可以加我QQ:784272323
    厦门鑫趣科技有限公司,主要从事回收、销售、维修和租赁进口仪器仪表及其附件。
    • «
    • 1
    • 2
    • 3
    • »
    • Pages: 2/3     Go