[西门子] TwinCAT运动控制的位置反馈

[复制链接]
查看86506 | 回复0 | 2024-1-18 15:36:26 | 显示全部楼层 |阅读模式
保持对技术的好奇心,拓宽知识的边界,提高认识的分辨率

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的对比

见闻:初识锂电行业

使用倍福系统做项目开发的检查清单

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则