【TRIO-Basic从入门到精通教程五】直线、圆弧插补的指令使用

本文介绍了运动控制编程中的关键参数设置及几种基本的运动指令用法,包括相对移动MOVE、绝对移动MOVEABS和平面圆弧插补MOVECIRC,并提供了详细的示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前面文章讲了轴参数含义的使用!接下来就到了实战环节,废话少说代码!

'Start Standard Section
' Axis Parameters
BASE(0)
UNITS=10000

'Gains
P_GAIN=1
I_GAIN=0
D_GAIN=0
OV_GAIN=0
VFF_GAIN=0

'Velocity profile
ACCEL=500
CREEP=1
DECEL=ACCEL
JOGSPEED=1
SPEED=2

'Limits
DATUM_IN=0
FE_LIMIT=0.5
FHOLD_IN=1

FS_LIMIT=1000
FWD_IN=2
REP_DIST=10000
REV_IN=3

RS_LIMIT=-1000
'Axis output
SERVO=0

'Stop Standard Section

WDOG=1

增益参数在速度控制或扭矩控制才能使用,位置控制采用驱动器内部增益控制!上述代码相信各位问题不大,接下需要学习我们今天的内容!

MOVE相对移动,语法:

MOVE(distance1 [,distance2 [,distance3 [,distance4...]]]) 

举例:

WHILE TRUE
TRIGGER
ACCEL=2
DECEL=2
MOVE(1)
WAIT IDLE
WA(100)
MOVE(-1)
WAIT IDLE
WA(100)
WEND


MOVEABS绝对移动,语言:

MOVEABS(position1[, position2[, position3[, position4...]]]) 

举例:

WHILE TRUE
TRIGGER
ACCEL=10
DECEL=10
MOVEABS(1)
WAIT IDLE
WA(100)
MOVEABS(0)
WAIT IDLE
WA(100)
WEND


MOVECIRC平面圆弧插补,语法:

MOVECIRC(end1, end2, centre1, centre2, direction [,ta [,output]])  

举例:

LIMIT_BUFFERED=32

BASE(0)
UNITS=1000
SPEED=100
ACCEL=10*SPEED
DECEL=ACCEL
JOGSPEED=1
FS_LIMIT=1000
RS_LIMIT=-1000
FE_LIMIT=1
FE_RANGE=0.6*FE_RANGE
FWD_IN=-1
REV_IN=-1
SERVO=0


BASE(1)
UNITS=1000
SPEED=100
ACCEL=10*SPEED
DECEL=ACCEL
JOGSPEED=1
FS_LIMIT=1000
RS_LIMIT=-1000
FE_LIMIT=1
FE_RANGE=0.6*FE_RANGE
FWD_IN=-1
REV_IN=-1
SERVO=0

WDOG=1
BASE(0,1)
DEFPOS(0,0)

WAIT UNTIL OFFPOS=0
TRIGGER

MOVE(0,6) 'move A -> B
MOVECIRC(3,3,3,0,1) 'move B -> C
MOVE(2,0) 'move C -> D
MOVECIRC(3,-3,0,-3,1) 'move D -> E
MOVE(0,-6) 'move E -> F
MOVECIRC(-3,-3,-3,0,1)'move F -> G
MOVE(-2,0) 'move G -> H
MOVECIRC(-3,3,0,3,1) 'move H -> A




亲爱的朋友,今天的文章就到这里!赶快装起软件一起来测试吧,插补就是如此简单!请多多关注博客,我们将坚持发布技术文章给朋友们借鉴!





评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值