我遇到了类似的问题。这是我所看到的:
我正在使用GoTo命令来控制驱动旋转晶圆开关的步进电机。旋转开关以30度旋转增量转位,我使用的是1.8度步进电机,因此我必须使用略微变化的GoTo步进增量,以使开关始终步进到正确的开关位置(+/- 0.6度) )。
当我将以下命令发送到L6470时,步进电机顺时针步进到每个指定的旋转位置,并且每个步骤都正确编入索引(即,旋转开关触点在固定开关触点上正确居中):
- GoTo(144)
- GoTo(272)
- GoTo(400)
- GoTo(536)
- GoTo(672)
- GoTo(808)
- GoTo(944)接下来,我想逆时针退回到每个开关位置,所以我发送以下命令:
- GoTo(808)
- GoTo(672)
- GoTo(536)
- GoTo(400)
- GoTo(272)
- GoTo(144)
- GoTo(0)当执行这些命令时,开关索引在除了最后一步(开关的0位置)之外的每一步都偏离中心约3-8度,该步骤总是完全索引。
我认为由于开关的旋转扭矩负载,步进器可能会失步,所以我取下旋转开关并将10转电位器连接到步进电机(极低的扭矩负载)。观察电动机每一步的电位计电阻读数,我看到了相同的行为,当转向CCW方向时,每个中间步骤的分度略微偏离,但总是在0位置完全转位。
我发现的唯一解决方案是使用GoTo命令顺时针步进到所需的开关位置,但如果我想将CCW步进到前一个开关位置,我必须通过发出GoTo(0)将开关重置为0 )命令然后发出GoTo(X)命令以步进到所需的开关位置。
此外,我已经确认L6470认为在执行每个步骤命令后通过读取ABS_POS寄存器将电机步进到正确的位置。
任何人都可以提供一些关于我为什么看到这种行为的想法以及我能做些什么来纠正它?
谢谢,
查理
以上来自于谷歌翻译
以下为原文
I am experiencing a similar problem. Here is what I am seeing:
I am using the GoTo commands to control a stepper motor that is driving a rotary wafer switch. The rotary switch is indexed at 30 degree rotational increments and I am using a 1.8 degree stepper motor, so I have to use slightly varying GoTo step increments in order to get the switch to always step to the proper switch position (+/- 0.6 degrees).
When I send the following commands to the L6470, the stepper motor steps clockwise to each specified rotational position and each step is indexed properly (i.e., the rotating switch contact is properly centered on the fixed switch contact):
- GoTo(144)
- GoTo(272)
- GoTo(400)
- GoTo(536)
- GoTo(672)
- GoTo(808)
- GoTo(944)Next, I want to step back counterclockwise to each switch position, so I send the following commands:
- GoTo(808)
- GoTo(672)
- GoTo(536)
- GoTo(400)
- GoTo(272)
- GoTo(144)
- GoTo(0)When these commands are executed, the switch indexing is off of center by approximately 3-8 degrees on every step except the last step (the 0 position of the switch) which is always perfectly indexed.
I thought the stepper might be losing steps due to the rotational torque load of the switch, so I removed the rotary switch and connected a 10 turn potentiometer to the stepper motor ( a very low torque load). Looking at the resistance readings of the potentiometer at each step of the motor, I see the same behavior, with the indexing being slightly off at each intermediate step when turning in the CCW direction but always perfectly indexed at the 0 position.
The only solution I have found that works is to use the GoTo commands to step clockwise to the desired switch position, but if I want to step CCW to a previous switch position, I have to reset the switch to 0 by issuing a GoTo(0) command and then issue a GoTo(X) command to step to the desired switch position.
Also, I have verified that the L6470 thinks it has stepped the motor to the proper position by reading the ABS_POS register after each step command has executed.
Can anyone provide some ideas about why I am seeing this behavior and what I can do to correct it?
Thanks,
Charlie
我遇到了类似的问题。这是我所看到的:
我正在使用GoTo命令来控制驱动旋转晶圆开关的步进电机。旋转开关以30度旋转增量转位,我使用的是1.8度步进电机,因此我必须使用略微变化的GoTo步进增量,以使开关始终步进到正确的开关位置(+/- 0.6度) )。
当我将以下命令发送到L6470时,步进电机顺时针步进到每个指定的旋转位置,并且每个步骤都正确编入索引(即,旋转开关触点在固定开关触点上正确居中):
- GoTo(144)
- GoTo(272)
- GoTo(400)
- GoTo(536)
- GoTo(672)
- GoTo(808)
- GoTo(944)接下来,我想逆时针退回到每个开关位置,所以我发送以下命令:
- GoTo(808)
- GoTo(672)
- GoTo(536)
- GoTo(400)
- GoTo(272)
- GoTo(144)
- GoTo(0)当执行这些命令时,开关索引在除了最后一步(开关的0位置)之外的每一步都偏离中心约3-8度,该步骤总是完全索引。
我认为由于开关的旋转扭矩负载,步进器可能会失步,所以我取下旋转开关并将10转电位器连接到步进电机(极低的扭矩负载)。观察电动机每一步的电位计电阻读数,我看到了相同的行为,当转向CCW方向时,每个中间步骤的分度略微偏离,但总是在0位置完全转位。
我发现的唯一解决方案是使用GoTo命令顺时针步进到所需的开关位置,但如果我想将CCW步进到前一个开关位置,我必须通过发出GoTo(0)将开关重置为0 )命令然后发出GoTo(X)命令以步进到所需的开关位置。
此外,我已经确认L6470认为在执行每个步骤命令后通过读取ABS_POS寄存器将电机步进到正确的位置。
任何人都可以提供一些关于我为什么看到这种行为的想法以及我能做些什么来纠正它?
谢谢,
查理
以上来自于谷歌翻译
以下为原文
I am experiencing a similar problem. Here is what I am seeing:
I am using the GoTo commands to control a stepper motor that is driving a rotary wafer switch. The rotary switch is indexed at 30 degree rotational increments and I am using a 1.8 degree stepper motor, so I have to use slightly varying GoTo step increments in order to get the switch to always step to the proper switch position (+/- 0.6 degrees).
When I send the following commands to the L6470, the stepper motor steps clockwise to each specified rotational position and each step is indexed properly (i.e., the rotating switch contact is properly centered on the fixed switch contact):
- GoTo(144)
- GoTo(272)
- GoTo(400)
- GoTo(536)
- GoTo(672)
- GoTo(808)
- GoTo(944)Next, I want to step back counterclockwise to each switch position, so I send the following commands:
- GoTo(808)
- GoTo(672)
- GoTo(536)
- GoTo(400)
- GoTo(272)
- GoTo(144)
- GoTo(0)When these commands are executed, the switch indexing is off of center by approximately 3-8 degrees on every step except the last step (the 0 position of the switch) which is always perfectly indexed.
I thought the stepper might be losing steps due to the rotational torque load of the switch, so I removed the rotary switch and connected a 10 turn potentiometer to the stepper motor ( a very low torque load). Looking at the resistance readings of the potentiometer at each step of the motor, I see the same behavior, with the indexing being slightly off at each intermediate step when turning in the CCW direction but always perfectly indexed at the 0 position.
The only solution I have found that works is to use the GoTo commands to step clockwise to the desired switch position, but if I want to step CCW to a previous switch position, I have to reset the switch to 0 by issuing a GoTo(0) command and then issue a GoTo(X) command to step to the desired switch position.
Also, I have verified that the L6470 thinks it has stepped the motor to the proper position by reading the ABS_POS register after each step command has executed.
Can anyone provide some ideas about why I am seeing this behavior and what I can do to correct it?
Thanks,
Charlie
举报