原旭朋
QQ6710897
级别: 略有小成
精华主题: 0
发帖数量: 93 个
工控威望: 276 点
下载积分: 109 分
在线时间: 53(小时)
注册时间: 2018-07-31
最后登录: 2024-11-14
查看原旭朋的 主题 / 回贴
楼主  发表于: 2019-05-31 10:36
两路私服交替跑六七个位置,A1-B1-A2-B2-A3-B3-A4-B4-A1-B1如此,定位指令用绝对定位DRVA,流程用步进编程,现在关键就在于定位到达信号的选择有三种,这三种按理说都能实现功能,希望大家能指点各位都是用的那种,以及各种的优缺点
1:目标寄存器与私服脉冲当前寄存器比对,相等则进入下一位置。
2:PLC特殊辅助继电器M1029(脉冲执行完毕ON)的常开点,或者M1336(脉冲输出中)的常闭点,条件成立则进入下一位置。
3:利用台达A2私服驱动器的DO数字输出选用目标位置到达给PLC,检测到上升沿则进入下一位置。
补充问题讨论:
1:私服原点回归后,PLC有没有必要给私服驱动器脉冲清除信号,有何作用,因为我这现在有几台设备,是没有清零信号的,也在正常使用。
2:为何DRVA两条指令之间必须滞后一个扫描周期。
流辰沙
级别: 家园常客
精华主题: 0
发帖数量: 313 个
工控威望: 641 点
下载积分: 1068 分
在线时间: 124(小时)
注册时间: 2018-12-27
最后登录: 2024-04-16
查看流辰沙的 主题 / 回贴
1楼  发表于: 2019-05-31 11:02
第三种没试过,常用的是1/2,不管哪个都一样,都是PLC发脉冲给驱动器,发完了1和2都会导通。

补充问题:1、没必要清除,至少1/2没必要。你是用的绝对定位,假设A1是0,最后还是回到了A1。
2、两条DRVA之间滞后一个扫描周期?你是怎么观察到的?正常逻辑不都是用移位M或者步进S去循环吗?每个M或S之间加个最小延时试试。
原旭朋
QQ6710897
级别: 略有小成
精华主题: 0
发帖数量: 93 个
工控威望: 276 点
下载积分: 109 分
在线时间: 53(小时)
注册时间: 2018-07-31
最后登录: 2024-11-14
查看原旭朋的 主题 / 回贴
2楼  发表于: 2019-05-31 11:07
关于两条DRVA指令延时我在做的程序已经加了10ms的延时,之所以这么问,是台达手册规定必须滞后一个扫描周期,但是有没有说原因
宿迁电工
级别: 论坛先锋
精华主题: 0
发帖数量: 1029 个
工控威望: 1169 点
下载积分: 2836 分
在线时间: 393(小时)
注册时间: 2018-11-30
最后登录: 2024-11-16
查看宿迁电工的 主题 / 回贴
3楼  发表于: 2019-05-31 11:12
第三种不能用,容易出现误动作,速度越低越容易出现。
几乎所有的小型PLC都需要暂停一个扫描周期才能继续定位,这个不必死磕,就这样用就行了。
长三角地区,PLC编程,工业机器人编程
吸塑机,轴承合套仪程序开发
专业外协
 TEL:13815796487(微信同号)
原旭朋
QQ6710897
级别: 略有小成
精华主题: 0
发帖数量: 93 个
工控威望: 276 点
下载积分: 109 分
在线时间: 53(小时)
注册时间: 2018-07-31
最后登录: 2024-11-14
查看原旭朋的 主题 / 回贴
4楼  发表于: 2019-05-31 11:14
还好我没用第三种,关于滞后扫描周期的问题,不纠结了。那么清除驱动器脉冲有无必要?
流辰沙
级别: 家园常客
精华主题: 0
发帖数量: 313 个
工控威望: 641 点
下载积分: 1068 分
在线时间: 124(小时)
注册时间: 2018-12-27
最后登录: 2024-04-16
查看流辰沙的 主题 / 回贴
5楼  发表于: 2019-05-31 11:24
三菱没说一个扫描周期只能动一个轴,也可能是扫描周期太短了,看不出来咯。
再者一次DRVA执行的时间应该远远大于扫描周期吧。你是想用一个M通知驱动2个轴吗?用三菱的时候这么试过,没特意去观察。

清除驱动器脉冲一般是在自写回原点的时候用,DRVA不存在剩余脉冲,你又没有中断
hbsylsq
级别: 略有小成
精华主题: 0
发帖数量: 178 个
工控威望: 340 点
下载积分: 1057 分
在线时间: 253(小时)
注册时间: 2011-02-17
最后登录: 2024-11-06
查看hbsylsq的 主题 / 回贴
6楼  发表于: 2019-06-01 11:00
第一 第三或者是第二 第三 组合使用 ,如果你的伺服报警 或者是 出现其他故障 伺服电机实际位置没动 ,而你脉冲发玩 就进入下一位置,机械很可能会发生 碰撞造成无法挽回的损失
流辰沙
级别: 家园常客
精华主题: 0
发帖数量: 313 个
工控威望: 641 点
下载积分: 1068 分
在线时间: 124(小时)
注册时间: 2018-12-27
最后登录: 2024-04-16
查看流辰沙的 主题 / 回贴
7楼  发表于: 2019-06-01 11:11
引用
引用第6楼hbsylsq于2019-06-01 11:00发表的  :
第一 第三或者是第二 第三 组合使用 ,如果你的伺服报警 或者是 出现其他故障 伺服电机实际位置没动 ,而你脉冲发玩 就进入下一位置,机械很可能会发生 碰撞造成无法挽回的损失


实际应用上,基本没人这么做,这相当于把驱动器和PLC之间做成闭环。
伺服报警或者故障,PLC接了驱动器报警信号。机械松动,实际没跑准,你加了第三种也没用。除非被你碰到了伺服驱动器和伺服之间,硬件通讯口异常或者编码线屏蔽不良。
sjbandmm
级别: 略有小成
精华主题: 0
发帖数量: 237 个
工控威望: 407 点
下载积分: 987 分
在线时间: 167(小时)
注册时间: 2008-08-23
最后登录: 2024-05-22
查看sjbandmm的 主题 / 回贴
8楼  发表于: 2019-06-01 20:34
第三种在你定位指令出错后也能产生定位完成信号,肯定是不行的,理论上第一种和第二种是一样的,无非是你编程比较和系统自动比较而已,我一般喜欢用第一种,好处在于方便监控一点,用当前值和目标值比较,然后驱动一个M点,好监控。台达和三菱微型机是一样的,定位指令需要持续驱动,欧姆龙微型机则不会有这个问题,欧姆龙CP系列定位指令是脉冲触发的,如果再次触发一个定位指令,则立即向新地址定位,这是比较好的地方。
原旭朋
QQ6710897
级别: 略有小成
精华主题: 0
发帖数量: 93 个
工控威望: 276 点
下载积分: 109 分
在线时间: 53(小时)
注册时间: 2018-07-31
最后登录: 2024-11-14
查看原旭朋的 主题 / 回贴
9楼  发表于: 2019-06-03 09:12
引用
引用第6楼hbsylsq于2019-06-01 11:00发表的  :
第一 第三或者是第二 第三 组合使用 ,如果你的伺服报警 或者是 出现其他故障 伺服电机实际位置没动 ,而你脉冲发玩 就进入下一位置,机械很可能会发生 碰撞造成无法挽回的损失

私服报警有信号输出给PLC,程序就不动了。
wangnaizhi
级别: 论坛先锋
精华主题: 0
发帖数量: 1273 个
工控威望: 1449 点
下载积分: 5484 分
在线时间: 896(小时)
注册时间: 2015-08-31
最后登录: 2024-11-16
查看wangnaizhi的 主题 / 回贴
10楼  发表于: 2019-06-03 19:05
关于台达的DRVA指令为什么需要间隔一个扫描周期的问题 主要是因为脉冲输出完成位会持续一个扫描周期  所以你在使用的时候需要间隔一个扫描周期 最好的方法应该是第一种方法 第二种有BUG现象的存在  第三种 还没有用过
mk自动化
级别: 论坛先锋
精华主题: 0
发帖数量: 203 个
工控威望: 1389 点
下载积分: 5353 分
在线时间: 191(小时)
注册时间: 2018-03-04
最后登录: 2024-10-14
查看mk自动化的 主题 / 回贴
11楼  发表于: 2019-06-03 19:44
我们都是把三种都做到程序里。除了用步进(本身问题)之外,正常定位没出现偏移过(除了外部干扰)
多学多用!