Ethercat drive configuration woes

More
3 years 10 months ago #258370 by db1981
hmm,

you can do a step by step test.

first insert the lcec_conf line in your sim hal -> test
-> next at the loadrt lcec -> test
-> add the addf lcec lines -> test
-> add the hal connections

Please Log in or Create an account to join the conversation.

More
3 years 10 months ago #258376 by mwc
I've just spent some time trying a few things.

I gradually removed all the ethercat realted lines from my Hal file until there were no ethercat related lines left, but the gui was still slow.

So I created a new profile using stepconf, gradually added all the ethercat lines, and the slow response problem has not returned.

I still don't have any movement and get following errors, so I now need to work out why the drives aren't fully enabling.
It's possibly a configuration issue, but the driver software is wrong, so I can't see if they are configured correctly or not. I'm told the correct software should be available on Monday.

I might try setting the SDOs via the xml over the weekend, to see if I can get them to fully enable and move.
Is there any way to read out values from slave registers and have them displayed somewhere?

Please Log in or Create an account to join the conversation.

More
3 years 10 months ago #258458 by mwc
Can somebody clarify something for me?

I'm just checking a few things, and have been watching various variables in HAL Configuration screen.
When I enable the drives, (Pins)cia402.0.controlword goes from 4 to 6.
6 (binary 0110 - aka Bits 1 and 2 set), are the bits for power on and quick stop (quick stop is inverted, so needs to be 1 to allow operation), so that appears to be OK.

However statusword, and opmode remain at 0.
Looking further, (Pins)cia402.0.opmode-cyclic-position/velocity/homing are unset and cia402.0.opmode-no-mode is set.
Digging through the values, I see (Parameters)cia402.0.csp-mode is set.

From my understanding of the driver manual, opmode is the value sent to the slave (via idx 6060h in the XML), which for CSP mode, should be 8.

Why is the correct opmode not being set?

Please Log in or Create an account to join the conversation.

More
3 years 10 months ago #258465 by db1981
opmode is only set after the drive responds cia-state "switched on" .

Controlword = 6 is the firststate from the enable state machine, like the cia-protocol there are two stages left till enabled...

I think there is no feedback from your drives, statusword should have an value after power on, is there action on the pos-feedback if you turn the motor shaft?

Are your slaves in op state after starting linuxcnc?

please post actual config files again.
The following user(s) said Thank You: mwc

Please Log in or Create an account to join the conversation.

More
3 years 10 months ago #258467 by mwc
I did wonder if there were more steps that had to happen.

The drives are all entering OP state, but I'm not sure if they are correctly configured, as the software supplied differs from the manual.
There is no pos-feedback from the motor, but I suspect this may be due to configuration. The motors don't even enable/energise.

I should be getting sent the correct software on Monday, so I might wait until then before trying anything else.

Please Log in or Create an account to join the conversation.

More
3 years 10 months ago #258535 by mwc
So I had another try with this today, and added some extra lines to the ethercat xml to read individual values in Hal Configuration.
None of the values asked for from the driver ever show a value. They all remain as 0/not set.

To me, it's like the ethercat master isn't receiving anything valid back from the drives, but if I change the pdo idx for syncManager 2 to 1601, the drive goes into a watchdog timeout error (going by the flashing on the drive), and the ethercat debug reports Timeout when setting state OP.

Changing the pdo idx for syncManager 3 (to 1a00 or 1a01), doesn't have any noticeable effect.
I did try setting it to 1a02 (not listed in the manual), and ethercat debug shows a Failed to receive AL state diagram: Datagram initialized error ,which is what I'd expect for a non-existent register.

I've attached a few files if anybody wants to see if there is anything that stands out as a problem.

EC_output xmls are from ethercat xml -p2. One with the drives just powered on, and one once LinuxCNC has loaded.
The termin-EC text files are what shows with ethercat debug level 1. One as LinuxCNC loads, then the one as LinuxCNC is closed.
The conf.xml is my ethercat config xml.

Please Log in or Create an account to join the conversation.

Time to create page: 0.172 seconds
Powered by Kunena Forum