Servo driver stuck in ServoOnDisabled? (CTB driver and servo)
07 Mar 2021 16:15 #201305
by thomaseg
Hi,
I'm new to LinuxCNC, HAL configuration and EtherCAT, but i'm trying my best to learn it. I've really been strugling with getting EtherCAT up and running in LinuxCNC. But i'm getting closer! I got a couple of beckhoff modules for testing and a single servodrive in my testbench right now. I got all devices in OP-mode. I can set the outputs on the beckhoff modules. I can read position data from the servo drives when i turn the axel on the servo. But i cannot get past "ServoOnDisable=TRUE" and actually turn on the servo. I'm pretty sure that i'm missing something basic here, but i'm running out of ideas on what i'm doing wrong here...
What are the basics for getting ServoOnDisable to be FALSE?
The driver is an CTB model, but i'm pretty sure this is common along a lot of driver models. At least the generic hal pin configuration is similar to Rexroth and a couple of other examples i've found...so my guess is that there is some basic that i don't know of...a guess could be some sort of security to avoid enabling the servo by mistake...?
Thanks!
I'm new to LinuxCNC, HAL configuration and EtherCAT, but i'm trying my best to learn it. I've really been strugling with getting EtherCAT up and running in LinuxCNC. But i'm getting closer! I got a couple of beckhoff modules for testing and a single servodrive in my testbench right now. I got all devices in OP-mode. I can set the outputs on the beckhoff modules. I can read position data from the servo drives when i turn the axel on the servo. But i cannot get past "ServoOnDisable=TRUE" and actually turn on the servo. I'm pretty sure that i'm missing something basic here, but i'm running out of ideas on what i'm doing wrong here...
What are the basics for getting ServoOnDisable to be FALSE?
The driver is an CTB model, but i'm pretty sure this is common along a lot of driver models. At least the generic hal pin configuration is similar to Rexroth and a couple of other examples i've found...so my guess is that there is some basic that i don't know of...a guess could be some sort of security to avoid enabling the servo by mistake...?
Thanks!
Please Log in or Create an account to join the conversation.
07 Mar 2021 16:28 #201310
by db1981
Replied by db1981 on topic Servo driver stuck in ServoOnDisabled? (CTB driver and servo)
Hi,
this depends on the drive. Probably it is an Can over Ethercat Drive, then you have to implement the usually steps for the DS402 State machine (statusword / controlword).
can you share your ethercat_conf.xml and the exact type of servo drive?
its only an minor step to get the motor turning...
this depends on the drive. Probably it is an Can over Ethercat Drive, then you have to implement the usually steps for the DS402 State machine (statusword / controlword).
can you share your ethercat_conf.xml and the exact type of servo drive?
its only an minor step to get the motor turning...
Please Log in or Create an account to join the conversation.
07 Mar 2021 16:44 #201311
by thomaseg
Yeah, sure thing! I've attached the configuration, but be aware that is just for testing and gobbled together from different sources...
I've also attached a picture of the driver and the ethercat manual that comes with the drive...
Any pointers are really appreciated!
/Thomas
Replied by thomaseg on topic Servo driver stuck in ServoOnDisabled? (CTB driver and servo)
this depends on the drive. Probably it is an Can over Ethercat Drive, then you have to implement the usually steps for the DS402 State machine (statusword / controlword).
can you share your ethercat_conf.xml and the exact type of servo drive?
Yeah, sure thing! I've attached the configuration, but be aware that is just for testing and gobbled together from different sources...
I've also attached a picture of the driver and the ethercat manual that comes with the drive...
Any pointers are really appreciated!
/Thomas
Please Log in or Create an account to join the conversation.
07 Mar 2021 17:32 #201318
by db1981
Replied by db1981 on topic Servo driver stuck in ServoOnDisabled? (CTB driver and servo)
for getting the drive enabled, an sequence of different transitions is necesarry. This is defined in the Can Open CIA402 standard.
i will explain how you can enable the drive manually:
first set the bit "X-cmd-QuickStop" to 1. this is inverted, means false is quick stop enabled..
-After power on the drive is in state "servo on disabled"
set the pin "X-cmd-EnableVoltage" to 1
-> Drive goes to state "ready to switch on" your pin "X-stat-ReadyToSwitchOn" now should be true
set the pin "X-cmd-SwitchOn" to 1
-> Drive goes to state "switched on" your pin "X-stat-SwitchOn" turns to true
set the pin "X-cmd-EnableOperation" to 1
-> now your drive should be in the state "operation enabled", bit "X-stat-OperationEnable" and "X-stat-VoltageEnabled" = 1.
to release power, set X-cmd-EnableVoltage and X-cmd-SwitchOn and X-cmd-EnableOperation back to false.
this should work
i will explain how you can enable the drive manually:
first set the bit "X-cmd-QuickStop" to 1. this is inverted, means false is quick stop enabled..
-After power on the drive is in state "servo on disabled"
set the pin "X-cmd-EnableVoltage" to 1
-> Drive goes to state "ready to switch on" your pin "X-stat-ReadyToSwitchOn" now should be true
set the pin "X-cmd-SwitchOn" to 1
-> Drive goes to state "switched on" your pin "X-stat-SwitchOn" turns to true
set the pin "X-cmd-EnableOperation" to 1
-> now your drive should be in the state "operation enabled", bit "X-stat-OperationEnable" and "X-stat-VoltageEnabled" = 1.
to release power, set X-cmd-EnableVoltage and X-cmd-SwitchOn and X-cmd-EnableOperation back to false.
this should work
Please Log in or Create an account to join the conversation.
07 Mar 2021 18:50 - 07 Mar 2021 18:52 #201324
by thomaseg
Replied by thomaseg on topic Servo driver stuck in ServoOnDisabled? (CTB driver and servo)
....ahhhhhhhh! I totally missed the point about the importance of the transistions....but ofcourse!
And you are totally right, it works! THANKS! However, it only works for a brief moment:-/ I hear something clicks in the driver and i can feel the servo is powered on(it resists me trying to rotate it)...but only for a couple of seconds, then it turns of again...no errors, no warnings, no nothing....strange... something foobar is going on, look at what ethercat-cmd is telling me just before and just after "EnableOperation=1":
...is this supposed to happen? It seems like everything is broken afterwards....actualPositions stops working etc...
I tried multiple times, also only with the driver...also after a restart of everything, the result is the same every time....
/Thomas
And you are totally right, it works! THANKS! However, it only works for a brief moment:-/ I hear something clicks in the driver and i can feel the servo is powered on(it resists me trying to rotate it)...but only for a couple of seconds, then it turns of again...no errors, no warnings, no nothing....strange... something foobar is going on, look at what ethercat-cmd is telling me just before and just after "EnableOperation=1":
...is this supposed to happen? It seems like everything is broken afterwards....actualPositions stops working etc...
I tried multiple times, also only with the driver...also after a restart of everything, the result is the same every time....
/Thomas
Attachments:
Last edit: 07 Mar 2021 18:52 by thomaseg.
Please Log in or Create an account to join the conversation.
07 Mar 2021 19:22 - 07 Mar 2021 19:25 #201334
by db1981
Replied by db1981 on topic Servo driver stuck in ServoOnDisabled? (CTB driver and servo)
nice to hear....
about the next problem:
-Voltage drop at servo power on, 24V Supply to weak..
or what i think:
-hf dispersion or grounding error. At the moment you enable the servo drive. The High Voltage Power Circuit incl. the pwm stage for the servo control gets working. If shielding or ground to the ethercat components is not proper. communication or the networkcard herself fails. backwards hf errors or currents over one signal line could also be a reason. this is definitly no software problem.
-is the shield of the motor cable proper grounded to earth? If its a big servo apply mechanical space between the power components (Servo Drive / Motor) and the control parts
about the next problem:
-Voltage drop at servo power on, 24V Supply to weak..
or what i think:
-hf dispersion or grounding error. At the moment you enable the servo drive. The High Voltage Power Circuit incl. the pwm stage for the servo control gets working. If shielding or ground to the ethercat components is not proper. communication or the networkcard herself fails. backwards hf errors or currents over one signal line could also be a reason. this is definitly no software problem.
-is the shield of the motor cable proper grounded to earth? If its a big servo apply mechanical space between the power components (Servo Drive / Motor) and the control parts
Last edit: 07 Mar 2021 19:25 by db1981.
The following user(s) said Thank You: thomaseg
Please Log in or Create an account to join the conversation.
07 Mar 2021 19:57 #201346
by db1981
Replied by db1981 on topic Servo driver stuck in ServoOnDisabled? (CTB driver and servo)
EK1100 grounded ?
shielded ethernet cable? ....
shielded ethernet cable? ....
Please Log in or Create an account to join the conversation.
10 Mar 2021 15:47 - 10 Mar 2021 15:53 #201654
by thomaseg
Thanks! You were absolutely correct!
I moved the driver/servo futher way(2m instead of 20cm) and added a grounding wire between servodrive and the EK1100 and now the driver stays on...so definitely a EMF problem...In the real setup i will house the drivers in their own chassis to help with noise and have everything grounded properly...
Thanks a million! Your help has really made my day
/Thomas
Replied by thomaseg on topic Servo driver stuck in ServoOnDisabled? (CTB driver and servo)
hf dispersion or grounding error. At the moment you enable the servo drive. The High Voltage Power Circuit incl. the pwm stage for the servo control gets working. If shielding or ground to the ethercat components is not proper. communication or the networkcard herself fails. backwards hf errors or currents over one signal line could also be a reason. this is definitly no software problem.
-is the shield of the motor cable proper grounded to earth? If its a big servo apply mechanical space between the power components (Servo Drive / Motor) and the control parts
Thanks! You were absolutely correct!
I moved the driver/servo futher way(2m instead of 20cm) and added a grounding wire between servodrive and the EK1100 and now the driver stays on...so definitely a EMF problem...In the real setup i will house the drivers in their own chassis to help with noise and have everything grounded properly...
Thanks a million! Your help has really made my day
/Thomas
Last edit: 10 Mar 2021 15:53 by thomaseg.
Please Log in or Create an account to join the conversation.
Time to create page: 0.191 seconds