保持对技术的好奇心,拓宽知识的边界,提高认识的分辨率
Version 1.0.0
基于一套位置反馈系统中来描述一个位置和运动,必须确定3个要素:原点、方向和比例,其中方向和比例容易理解和设置,而确定原点的位置,却是一个重要、必要而参数极多的过程,有多种实现方式。本文旨根据10余种驱动硬件和反馈类型,具体描述TwinCAT NC编码器参数的可用组合。
设置位置反馈系统,在TwinCATNC的Axis下的Axis_Enc界面中进行。如图所示:
首先要确定运动的正方向。默认设置时,从电机的轴伸端观察,逆时针旋转为正向,顺时针方向为反向。经过传动以后,或者电机的安装方向不同,电机轴伸逆时针旋转(即正转)时有可能最终机构是在后退。这时就需要将编码器的计数方向取反,即上图中的第2行中“Invert Encoder Counting Direction”设置为True。注意,Axis_Drive参数中的Invert Drive Direction须设置为与此处相同,否则可能飞车。
其次是要设置位置反馈系统的脉冲当量(Scaling Factor)。不论物理轴是什么类型,位置反馈信号来自总线还是来自编码器模块,脉冲当量的计算没有歧义:位置反馈变量的值每增加1,最终机构移动的距离(mm)。
第三就是设置反馈系统的2至7项,来确定原点位置或者找原点的方式以及找原点过程中的各种选项。不同的物理轴,不同的反馈类型,这些参数项有不同的组合。通常情况下,映射好物理轴之后,使用默认参数即可。但是如果参数设置不恰当,有可能当时运行正常,只在某种工况下才表现异常,去查故障分析原因时可能就会忽略这些参数,而走上弯路。所以最好的做法,就是一开始就清楚理解参数的含义并且正确设置。
下面分别描述各种驱动硬件和反馈类型的参数设置。用户使用时,只要找到自己项目中使用的类型即可,不需要通读。
1. Simulation(虚轴):
|
|
①
|
默认值
|
②
|
默认值
|
③
|
默认值
|
④
|
默认值
|
⑤
|
默认值
|
⑥
|
默认值
|
⑦
|
MC指令:MC_Homing
Mode为MC_Direct或者MC_ForceCaliberation
或指令MC_SetPositon
|
2. 总线伺服+单圈绝对编码器:
|
行程超出1圈数
|
行程不超出1圈
|
①
|
每圈距离 / 电机转动一圈的反馈值的增量
其中每圈距离:
皮带/辊子:PAI*直径
丝杠:导程
有减速机时再除以减速比
|
同左
|
②
|
0
|
校准过程:
设置Bias为0,激活重启
机构移至目标原点
显示位置为 x
设置Bias为 x*(-1.0)
保存配置,重新激活
|
③
|
Mask:32位都为1
Sub Mask:单圈n位
则低n位为1
|
同左
|
④
|
Incremental
|
Absolute
|
⑤
|
根据原点开关安装位置
靠负限位:True/False
靠正限位:False/True
|
无
|
⑥
|
Software Sync
含义:找到原点开关后,离开原点开关的第一个编码器反馈为0的点为原点
|
无
|
⑦ C
|
MC指令:MC_Homing
或“伺服寻参模式”
后者5,6项不用设置
|
设置参数2: Bias
|
* 以上第3项,掩码设置的前提是伺服侧使用原始位置反馈作为Process Data中当前位置的输出,而未作自定义的设置。假如有的伺服在内部设置电机转动一圈,输出360,000个位置增量。此时
Sub Mask就要设置为360,000,即16#0005 7E40 而MASK仍然是16#FFFF FFFF
如果Sub Mask设置错了,大于一圈的最大脉冲数,比如2倍,那就可能电机转两圈才找到一个Software Sync信号。
** 所有反馈类型的Reference Mode都可以选择PLC CAM,表示找到原点开关后,离开原点开关时,原点开关信号的下降沿
3. 总线伺服+多圈绝对编码器:
|
行程超出圈数
|
行程不超出圈数
|
①
|
每圈距离 / 电机转动一圈的反馈值的增量
其中每圈距离:
皮带/辊子:PAI*直径
丝杠:导程
有减速机时再除以减速比
|
同左
|
②
|
校准过程:
设置Bias为0,激活重启
机构移至目标原点
显示位置为 x
设置Bias为 x*(-1.0)
保存配置,重新激活
|
同左
|
③
|
Mask:32位都为1
Sub Mask:单圈n位
则低n位为1
|
同左
|
④
|
Incremental
|
Absolute
|
⑤
|
无
|
无
|
⑥
|
无
|
无
|
⑦
|
设置参数2: Bias
并记忆溢出次数
|
设置参数2: Bias
|
4. 总线伺服+增量编码器:
|
带Z相或者C相
|
不带Z相或者C相
|
①
|
每圈距离 / 电机转动一圈的反馈值的增量
其中每圈距离:
皮带/辊子:PAI*直径
丝杠:导程
有减速机时再除以减速比
|
同左
|
②
|
0
|
同左
|
③
|
Mask:32位都为1
Sub Mask:编码器n线
则低n位为1
|
同左
|
④
|
Incremental
|
同左
|
⑤
|
根据原点开关安装位置
靠负限位:True/False
靠正限位:False/True
|
同左
|
⑥
|
Hardware Sync
含义:找到原点开关后,离开原点开关的第一个Z信号为原点
*前提是伺服侧配置的过程变量中,包括了锁存位置。
|
伺服上带Latch点:
Hardware Latch(Pos/Neg)
含义:找到原点开关后,离开原点开关的第一个Latch信号的上升沿(Pos)或者下降沿(Neg)
|
伺服上不带Latch点:
PLC CAM
含义:找到原点开关后,离开原点开关时,原点开关信号的下降沿
|
⑦ C
|
MC指令:MC_Homing
或“伺服寻参模式”
后者5,6项不用设置
|
|
* 以上第3项,掩码设置的前提是伺服侧使用原始位置反馈作为Process Data中当前位置的输出,而未作自定义的设置。假如有的伺服在内部设置电机转动一圈,输出360,000个位置增量。此时
Sub Mask就要设置为360,000,即16#0005 7E40 而MASK仍然是16#FFFF FFFF
如果Sub Mask设置错了,大于一圈的最大脉冲数,比如2倍,那就可能电机转两圈才找到一个Software Sync信号。
** 所有反馈类型的Reference Mode都可以选择PLC CAM,表示找到原点开关后,离开原点开关时,原点开关信号的下降沿
5. 总线伺服+旋转变压器(Resolver)
|
行程超出1圈数
|
行程不超出1圈
|
①
|
每圈距离 / 电机转动一圈的反馈值的增量
其中每圈距离:
皮带/辊子:PAI*直径
丝杠:导程
有减速机时再除以减速比
|
同左
|
②
|
0
|
校准过程:
设置Bias为0,激活重启
机构移至目标原点
显示位置为 x
设置Bias为 x*(-1.0)
保存配置,重新激活
|
③
|
Mask:32位都为1
Sub Mask:伺服旋变接口的分辨率,以AX5000为例,一圈总是220 ,所以Sub Mask值为低20位为1,即0xF FFFF
|
同左
|
④
|
Incremental
|
Absolute
|
⑤
|
根据原点开关安装位置
靠负限位:True/False
靠正限位:False/True
|
无
|
⑥
|
Software Sync
含义:找到原点开关后,离开原点开关的第一个位置反馈为0的点为原点
|
无
|
⑦ C
|
MC指令:MC_Homing
或“伺服寻参模式”
后者5,6项不用设置
|
设置参数2: Bias
|
* 以上第3项,掩码设置的前提是伺服侧使用原始位置反馈作为Process Data中当前位置的输出,而未作自定义的设置。假如有的伺服在内部设置电机转动一圈,输出360,000个位置增量。此时
Sub Mask就要设置为360,000,即16#0005 7E40 而MASK仍然是16#FFFF FFFF
如果Sub Mask设置错了,大于一圈的最大脉冲数,比如2倍,那就可能电机转两圈才找到一个Software Sync信号。
** 所有反馈类型的Reference Mode都可以选择PLC CAM,表示找到原点开关后,离开原点开关时,原点开关信号的下降沿
6. EL252x脉冲模块+伺服(步进)
|
行程超出1圈数
|
①
|
每圈距离 / 要电机转动一圈的伺驱动器需要的脉冲数
其中每圈距离:
皮带/辊子:PAI*直径
丝杠:导程
有减速机时再除以减速比
|
②
|
默认值:0
|
③
|
默认值:0x FFFF
|
④
|
默认值:Incremental
|
⑤
|
根据原点开关安装位置
靠负限位:True/False
靠正限位:False/True
|
⑥
|
PLC CAM
含义:找到原点开关后,离开原点开关时,原点开关信号的下降沿
|
⑦
|
MC指令:MC_Homing
后者5,6项不用设置
|
|
|
7. EL70x1 步进模块
|
带反馈
|
不带反馈
|
①
|
每圈距离 / 电机转动一圈的反馈值的增量
其中每圈距离:
皮带/辊子:PAI*直径
丝杠:导程
有减速机时再除以减速比
|
EL70x1-0000
每圈距离 / 12800
EL70x1-1000
每圈距离/(200*细分)
其中每圈距离:
皮带/辊子:PAI*直径
丝杠:导程
有减速机时再除以减速比
|
②
|
0
|
0
|
③
|
默认值:0xFFFF
|
同左
|
④
|
Incremental
|
同左
|
⑤
|
根据原点开关安装位置
靠负限位:True/False
靠正限位:False/True
|
同左
|
⑥
|
PLC CAM
含义:找到原点开关后,离开原点开关时,原点开关信号的下降沿
|
同左
|
⑦
|
MC指令:MC_Homing
或“伺服寻参模式”
后者5,6项不用设置
|
同左
|
|
|
|
8. EL72x1 伺服模块+多圈绝对编码器,
参考:总线伺服+多圈绝对编码器:
9. EL72x1伺服模块+单圈绝对编码器,
参考:总线伺服+单圈绝对编码器:
10. EL72x1伺服模块+Resolver
参考:总线伺服+Resolver:
11. EL5xxx +多圈绝对编码器
|
行程超出圈数
|
行程不超出圈数
|
①
|
每圈距离 / 电机转动一圈的反馈值的增量
其中每圈距离:
皮带/辊子:PAI*直径
丝杠:导程
有减速机时再除以减速比
|
同左
|
②
|
校准过程:
设置Bias为0,激活重启
机构移至目标原点
显示位置为 x
设置Bias为 x*(-1.0)
保存配置,重新激活
|
同左
|
③
|
按默认设置
|
同左
|
④
|
Incremental
|
Absolute
|
⑤
|
无
|
无
|
⑥
|
无
|
无
|
⑦
|
设置参数2: Bias
并记忆溢出次数
|
设置参数2: Bias
|
|
|
|
** 所有反馈类型的Reference Mode都可以选择PLC CAM,表示找到原点开关后,离开原点开关时,原点开关信号的下降沿
12. EL5xxx +单圈绝对编码器
|
行程超出1圈数
|
行程不超出1圈
|
①
|
每圈距离 / 电机转动一圈的反馈值的增量
其中每圈距离:
皮带/辊子:PAI*直径
丝杠:导程
有减速机时再除以减速比
|
同左
|
②
|
0
|
校准过程:
设置Bias为0,激活重启
机构移至目标原点
显示位置为 x
设置Bias为 x*(-1.0)
保存配置,重新激活
|
③
|
按默认设置
|
同左
|
④
|
Incremental
|
Absolute
|
⑤
|
根据原点开关安装位置
靠负限位:True/False
靠正限位:False/True
|
无
|
⑥
|
Software Sync
含义:找到原点开关后,离开原点开关的第一个位置反馈为0的点为原点
Hardware Latch(Pos/Neg)
含义:找到原点开关后,离开原点开关的第一个Latch信号的上升沿(Pos)或者下降沿(Neg)
|
无
|
⑦
|
MC指令:MC_Homing
或“伺服寻参模式”
后者5,6项不用设置
|
设置参数2: Bias
|
** 所有反馈类型的Reference Mode都可以选择PLC CAM,表示找到原点开关后,离开原点开关时,原点开关信号的下降沿
13. EL5xxx +增量编码器
|
带Z相或者C相
|
不带Z相或者C相
|
①
|
每圈距离 / 电机转动一圈的反馈值的增量
其中每圈距离:
皮带/辊子:PAI*直径
丝杠:导程
有减速机时再除以减速比
|
同左
|
②
|
0
|
同左
|
③
|
Mask:32位都为1
Sub Mask:编码器n线
则低n位为1
|
同左
|
④
|
Incremental
|
同左
|
⑤
|
根据原点开关安装位置
靠负限位:True/False
靠正限位:False/True
|
同左
|
⑥
|
Hardware Sync
含义:找到原点开关后,离开原点开关的第一个Z信号为原点
或者同右
|
有Latch点:
Hardware Latch(Pos/Neg)
含义:找到原点开关后,离开原点开关的第一个Latch信号的上升沿(Pos)或者下降沿(Neg)
|
无Latch点:
PLC CAM
含义:找到原点开关后,离开原点开关时,原点开关信号的下降沿
|
⑦ C
|
MC指令:MC_Homing
或“伺服寻参模式”
后者5,6项不用设置
|
|
** 所有反馈类型的Reference Mode都可以选择PLC CAM,表示找到原点开关后,离开原点开关时,原点开关信号的下降沿
第5步:回原点的程序
基本的回原点步骤。
二次封装过的回原点程序
用户自定义的寻参程序(用PLC切换OPMode)
第6步:磁偏角
什么情况需要校磁偏角,什么时候用Wake and shake
AX5000,从PLC程序校磁偏角
(******************************)
喜欢本文?识别二维码,关注公众号
-技术区
前人趟过的雷
Lizzy Chen的系列教材
TwinCAT与Step 7编程异同
数字输入输出电路
倍福系统的CAN 2.0通讯解决方案
关于EtherCAT和TSN的对比
见闻:初识锂电行业
使用倍福系统做项目开发的检查清单 |