mcgs台达伺服PR定位
2026/8/29 12:17:20 网站建设 项目流程

台达伺服初始化:

p2.8=10,初始化( 要重新上电 )

p3.0=0x1E, 从站30#,

p3.1=0x201,从站通讯96N82,

p3.2=6, rtu_N82,

p3.3=0, 断网AL20,0_继续转,1_刹车p5.3,

p3.4=0, 断网看门狗,0_关, xxx_秒,

p3.5=1, 伺服A2专用, 0_只用rs232, 1_只用RS485,[需要再重新上电]

启动策略

''从站地址,30#
从站地址 = 0x1E
脚本返回值 = !SetDevice(设备0,6,"SetAddress(从站地址)")


''DI引脚来源,[p3.6=0x1FFF],0x30D=0x1FFF,
''解决急停报警AL13,
寄存器地址 = 1+0x30C
寄存器value = 0x1FFF
脚本返回值 = !SetDevice(设备0,6,"Write(4,寄存器地址,WUB=寄存器value)")

''伺服工作模式:PR + T, [p1.1=h1009], 0x103=0x1009
寄存器地址 = 1+ 0x102
寄存器value = 0x1009
脚本返回值 = !SetDevice(设备0, 6, "Write(4,寄存器地址,WUB=寄存器value)")

''增加DI8_复位功能,P2.36=0x102, 0x249=0x102,
寄存器地址 = 1+ 0x248
寄存器value = 0x102
脚本返回值 = !SetDevice(设备0,6,"Write(4,寄存器地址,WUB=寄存器value)")


''回零配置----力矩回零,P5.04 = h109, 0x509=0x109,改方向0x509=0x10A,
寄存器地址 = 1+ 0x508
寄存器value = 0x109
脚本返回值 = !SetDevice(设备0,6,"Write(4,寄存器地址,WUB=寄存器value)")


''----[重新上电]-----------------------------

''伺服使能-----P4.7=0x51, 0x40F=0x51,--------[使用1号力矩P1.12=100%]
!SetDevice(设备0, 6, "Write(4,1039,WUB=81)")

''--------------------------------------

''开始回零,P5.07 = 0,0x50F=0
''脚本返回值 = !SetDevice(设备0, 6, "Write(4,1295,WUB=0)")

''---------------------------------------

寄存器地址 = 1+ 0x50E
寄存器value = 0
脚本返回值 = !SetDevice(设备0,6,"Write(4,寄存器地址,WUB=寄存器value)")

''DI8_复位,

''复位true[P4.7_8]0x40F=

脚本返回值 = !SetDevice(设备0, 6, "Write(4,1039,BT08=1)")

''复位false

脚本返回值 = !SetDevice(设备0, 6, "Write(4,1039,BT08=0)")

PR#功能

PR#0, 电机回零_( 只能回零 )

PR#1, 相对运动

PR#2, 绝对运动

PR#3, 相对增量_ ( 上次命令终点坐标 + 相对坐标 )

PR#4, 相对探针_ ( 上次探针坐标 + 相对坐标 )

''#0 回零(不可修改),回零方式P5.04 = 0x109, 或者 P5.04 = 0x10A,

''

''#1相对, [p6.2=0x111142],0x605=0x111142,{ 相对 }
脚本返回值 = !SetDevice(设备0, 6, "Write(4,1541,DUB=1118530)")

''
''#2绝对, [p6.4=0x111132],0x609=0x111132,
脚本返回值 = !SetDevice(设备0, 6, "Write(4,1545,DUB=1118514)")

''

''#3相对增量, [p6.6=0x111182],0x60D=0x111182, {相对增量} 上个命令终点坐标 + 相对坐标
脚本返回值 = !SetDevice(设备0, 6, "Write(4,1549,DUB=1118594)")

''

''#4相对探针, [p6.8=0x1111F2],0x611=0x1111F2, 上个探针坐标 + 相对坐标
脚本返回值 = !SetDevice(设备0, 6, "Write(4,1553,DUB=1118706)")

相对运动

''#1坐标, P6.3, 0x607,
脚本返回值 = !SetDevice(设备0, 6, "Write(4,1543,DUB=相对坐标)")


''呼叫#1
脚本返回值 = !SetDevice(设备0, 6, "Write(4,1295,WUB=1)")

绝对定位

''#2绝对坐标p6.5, 0x60B,
脚本返回值 = !SetDevice(设备0, 6, "Write(4,1547,DUB=绝对坐标)")

''呼叫#2
脚本返回值 = !SetDevice(设备0, 6, "Write(4,1295,WUB=2)")

相对增量

''#3相对增量p6.7, 0x60F,
脚本返回值 = !SetDevice(设备0, 6, "Write(4,1551,DUB=相对坐标)")

''呼叫#3
脚本返回值 = !SetDevice(设备0, 6, "Write(4,1295,WUB=3)")

相对探针

''#4相对探针p6.9, 0x613,
脚本返回值 = !SetDevice(设备0, 6, "Write(4,1555,DUB=相对坐标)")

''呼叫#4
脚本返回值 = !SetDevice(设备0, 6, "Write(4,1295,WUB=4)")

电机速度

我用的是1#速度,

P5.61

电机坐标

用RS485 读取电机坐标,读寄存器 P0.09

p0.9(显示), p0.17(配置)

p0.17=1, // 命令坐标值

RS485监视变量

P0.45(配置), P0.44(显示),

复位

''DI8_复位,

''复位true[P4.7_8]0x40F=

脚本返回值 = !SetDevice(设备0, 6, "Write(4,1039,BT08=1)")

''复位false

脚本返回值 = !SetDevice(设备0, 6, "Write(4,1039,BT08=0)")

伺服电机参数:

电子齿轮比: p1.44分子, p1.45分母,

P1.55 电机最高速度

P1.54到位精度( 编码器脉冲数 )默认1%

P2.35 最大误差位置,默认3圈半. AL09, p2.50复位误差坐标

p1.57 防撞开关

p1.56 预过载

P1.02 限扭,限速[ p1.12 p1.09]

刹车: p1.32

p1.42,通电延时ms,

p1.43,断电延时ms,

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询