ZDevelop编程软件的SP指令连续插补概述 点击:286 | 回复:0



正运动技术

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:267帖 | 328回
  • 年度积分:50
  • 历史总积分:918
  • 注册:2020年9月10日
发表于:2021-09-01 09:09:34
楼主

ERRSWITCH = 3

'全部信息输出

BASE(0,1,2,3)

'选择

X Y Z U

RAPIDSTOP(2)

WAIT IDLE

DPOS = 0,0,0,0

ATYPE=1,1,1,1

'脉冲方式步进或伺服

UNITS = 100,100,100,100

'脉冲当量,每 mm100 脉冲

SPEED = 200,200,200,200

'此速度会对 FORCE_SPEED 进行限制

ACCEL = 2000,2000,2000,2000

'加速度设置

DECEL = 2000,2000,2000,2000

'减速度设置

MERGE = ON

'启动连续插补

CORNER_MODE = 0

'

不启动自动拐角减速,手动设置 STARTMOVE_SPEEDENDMOVE_SPEED

'DECEL_ANGLE = 15 * (PI/180)

'开始减速的角度 15

'STOP_ANGLE = 45 * (PI/180)

'降到最低速度的角度 45

WHILE 1

'循环运动

IF IN(0) = ON THEN

'输入 0 有效启动运动

TRACE "start movesp"

'走一个方框, 每一段的速度和停止速度都不一样

FORCE_SPEED = 100

'第一段速度 100

ENDMOVE_SPEED = 10

'第一段结束的速度 10

MOVESP(100,0)

FORCE_SPEED = 150

'第二段速度 150

ENDMOVE_SPEED = 15

STARTMOVE_SPEED = 15

'第二段的起始速度 15,因为高于第一段的结束速度 10,因此实际的

起始速度为 10

MOVESP(0,100)

FORCE_SPEED = 200

'第三段速度 200

ENDMOVE_SPEED = 20

STARTMOVE_SPEED = 20

'第三段的起始速度 20 因为高于第二段的结束速度 15,因此实际的

起始速度为 15

MOVESP(-100,0)

FORCE_SPEED = 300

'第四段速度 300,受 SPEED 限制其实为 200

ENDMOVE_SPEED = 30

STARTMOVE_SPEED = 30

'第三段的起始速度 30,因为高于第二段的结束速度 20,因此实际

的起始速度为 20

MOVESP(0,-100)

WAIT IDLE

'等待运动停止

DELAY(100)

'延时

ENDIF

WEND

END 




楼主最近还看过


热门招聘
相关主题

官方公众号

智造工程师