“我用DMC2280控制转盘,转盘每转一周后都会有约0.6度的偏差”
这个,我觉得先要清楚这0.6度是从哪里来的,是机械误差还是控制误差,是固定的还是随即的,是一次性的还是会累计的。
如果是固定会累计的误差,一般来说,是机械和控制配合不好,一圈对应的脉冲数错了,那么修正就好。有的时候,使用了减速机会有这样的问题。我曾经碰到过类似的情况,客户告诉我减速比是3:1,跑下来位置不对,反复问了很多次,才确认是100:33的(大概是这样的数字,具体是什么数字已经忘记了)。
如果是固定的但不累计的误差,可能是传动间隙,galil自己有背隙补偿功能,但那是一个特殊版本的固件,理论上要额外收费。具体情况您可以咨询您的供应商。
如果是随机的误差,就比较麻烦了。可能是传动打滑,也可能是控制信号干扰,这个没有办法单纯从软件上补偿。
CT
功能:误差补偿表
说明:
CT指令用于定义每轴的非线性误差补偿表。每轴的误差补偿表最多包括257个数据,这些数据表明各自的补偿系数和与其它轴的关系。误差补偿表上每个数据的间隔通过CU指令在256至32768之间设定。在两个数据之间的部分,控制器会进行线性补偿。
格式:
CTx[i]=m,n
x = 被补偿的轴(A-H)
i = 数据索引(0-256)
m = 与轴指令位置相关的补偿量
n = 与其它相关轴(由CX指令定义)指令位置相关的补偿量
应用范围:
运动中 可使用
命令行 可使用
在程序中 可使用
控制器类型 特定固件
操作数应用:
CTx[i]=?,? 返回x轴表上第i点的补偿值
_IPx 返回x轴实际的编码器值
TPx 返回x轴修正后的值
相关指令:
CX 相关补偿轴
CU 数据间隔
TO 偏移量
示例:
TOA=0;TOB=0 误差补偿表的起点在A、B两轴的0点
CXA=B 定义B轴为A轴的相关修正轴
CUA=1 定义A轴误差补偿表的数据间隔为512
CUB=2 定义B轴误差补偿表的数据间隔为1024
CTA[10]=10,-5 当RPA=2560时对A轴位置修正10个计数单位,当RPB=5120时对A轴位置修正-5个计数单位