TRIO运动控制求助 点击:514 | 回复:6



gongkong0408

    
  • 精华:0帖
  • 求助:3帖
  • 帖子:3帖 | 6回
  • 年度积分:0
  • 历史总积分:24
  • 注册:2016年4月04日
发表于:2016-04-10 15:35:32
楼主

想用TRIO运动控制器实现散点控制即运动位置随时间不断变化,但要保证某一位置必须与某一时间点对应,各位有谁知道TRIO中哪条指令可以实现?如何实现?貌似CAM指令可以实现,但是不知怎样编程?请各位指点!感谢




一缕清风88

  • 精华:0帖
  • 求助:4帖
  • 帖子:4帖 | 10回
  • 年度积分:0
  • 历史总积分:32
  • 注册:2015年10月13日
发表于:2016-04-10 16:10:30
1楼

我的是利用vr变量值做出来的,不过不太好。

这段话的意思是获取轴的位置。

BASE(1)
VR(0)=MPOS
x=VR(0)

gongkong0408

  • 精华:0帖
  • 求助:3帖
  • 帖子:3帖 | 6回
  • 年度积分:0
  • 历史总积分:24
  • 注册:2016年4月04日
发表于:2016-04-10 16:13:15
2楼

这个我没太懂   你能说清楚一些吗   谢了

一缕清风88

  • 精华:0帖
  • 求助:4帖
  • 帖子:4帖 | 10回
  • 年度积分:0
  • 历史总积分:32
  • 注册:2015年10月13日
发表于:2016-04-10 16:21:30
3楼


回复内容:base(1)是定义轴1,mpos是轴的位置,vr(0)是个变量,将轴1的位置赋给vr(0)

对: gongkong0408 这个我没太懂   你能说清楚一些吗   谢了 内容的回复!


示教功能

  • 精华:0帖
  • 求助:0帖
  • 帖子:8帖 | 412回
  • 年度积分:0
  • 历史总积分:876
  • 注册:2004年2月03日
发表于:2016-04-11 20:04:45
4楼

REPEAT
IF IN(0)=0 THEN
WA(1)
IF IN(0)=1 THEN
RUN "MOTION",7 
ENDIF
ENDIF
IF IN(0)=1 THEN
WA(1)
IF IN(0)=0 THEN
STOP "MOTION"
RAPIDSTOP
RAPIDSTOP
RAPIDSTOP
ENDIF
ENDIF
UNTIL FALSE
下面相当于运动主程序:
MOTION是程序名,内容可如下:

UNITS=4000

SPEED=1

ACCEL=1000

DECEL=ACCEL

 

TABLE MULTIPLIER是放大系数.
例如:
FOR I=0 TO 360
TABLE(I,SIN(I*PI/180))
NEXT I

REPEAT
CAM(0,360,4000,2)


UNTIL FALSE
在IN(0)从零到1时,启动运动程序.
在IN(1)从零到0时,停止运动程序.
RAPIDSTOP把没完成的运动指令取消.

以上两个程序并行运行,当IN(0)从OFF到ON时,以上正弦函数在2s内完成一个周期运动。

关于CAM 的解释,请看这个链接

http://bbs.gongkong.com/d/201604/665170_1.shtml

gongkong0408

  • 精华:0帖
  • 求助:3帖
  • 帖子:3帖 | 6回
  • 年度积分:0
  • 历史总积分:24
  • 注册:2016年4月04日
发表于:2016-04-11 20:50:46
5楼


回复内容:

对: 示教功能 REPEATIF IN(0)=0 THENWA(1)I... 内容的回复!

请问你有没有用TRIO实现散点控制的方法?保证某一位置必须与某一时间点对应。我现在感觉CAM满足不了这个要求,也不知道用CAM如何实现,因为时间和位置点要进行输入,轨迹都未知

示教功能

  • 精华:0帖
  • 求助:0帖
  • 帖子:8帖 | 412回
  • 年度积分:0
  • 历史总积分:876
  • 注册:2004年2月03日
发表于:2016-04-11 23:17:16
6楼

你TABLE点数如果正好2000,在如上的例子,就是每个毫秒更新一个位置。


热门招聘
相关主题

官方公众号

智造工程师