- Posts: 1111
- Thank you received: 0
Ethercat HAL driver
db1981 wrote: -to avoid strange seetings, do a factory reset of the card: "ethercat download -p6 0x1011 0x01 0x64616F6C --type uint32" -> few seconds -> power cycle
After these it work Great. You Know You Are Right :laugh: :laugh: :laugh:
Very thanks
First time on ethercat linuxcnc very great.
Any how I load My hal/ini/xml file
Please Log in to join the conversation.
Sadly we don't know which setting prevent communication, strange that the master gives no errors...
Has this been an brand new card from factory, or has it been used anywhere else before?
We keep in mind: next time, for the first thing do an factory reset
Did you randomly saved an ethercat configurator or twincat file, before the card has been reseted? can you attach this,
i wan't to know what has been the bug.
Please Log in to join the conversation.
db1981 wrote: We keep in mind: next time, for the first thing do an factory reset
Did you randomly saved an ethercat configurator or twincat file, before the card has been reseted? can you attach this,
i wan't to know what has been the bug.
Yes it work and go to OP .... I've attach the signal of el5151 to an eoffset and it work very great ... thanks again and thanks to dgarret for these component (I've mine old one ... but not work so fine like these of dgarret).
unfortunately it was a used piece .... but from ethercat-configurator I hadn't seen anything so abnormal.
I am a beginner with ethercat and I have not saved anything beyond what I have posed here.
Rather .... every now and then during the various configurations (I added an eoffset) every now and then the drives no longer go to OP ... PREOP and then in OP. This INIT-> SAFEOP-> PROP-> OP cycle is obtained by first removing power from the drives and then starting Lcnc. But it is rather inconvenient .... how can I do it from hal and then from the interface? can you?
bkt
Please Log in to join the conversation.
please explain the rest a little bit clearer for me... (may be my english interpreter
i can't detect the problem you have.
you can force the application state with the command "ethercat states (INIT,PREOP,BOOT,SAFEOP,OP)"
Please Log in to join the conversation.
db1981 wrote: please explain the rest a little bit clearer for me... (may be my english interpreter
).
No worry, the same for me .... I also have to read a post written by a US-man 10 times and a post written by a UK-man 8 times before I understand the exact meaning .... but that's how you learn. Usually English written by EU-man or Asia-man is more readable for me.
db1981 wrote: eoffset? external offset comp?
Yes, of course I needed the el5151 to make an external offset. Some time ago I made a similar customized component ... to work it works, but I never liked it because it has problems with the axis limits and with the accelerations once you do a "dynamic" reset. The component that made dgarret on the other hand is fantastic. Just write this:
But of course But without your help I couldn't catch the encoder ....
db1981 wrote: you can force the application state with the command "ethercat states (INIT,PREOP,BOOT,SAFEOP,OP)"
Ok. but is possible inside .hal file? For example with pyvcp.button-reset-fails-drive signal?
Please Log in to join the conversation.
-adding your eoffset part has nothing to do with the field bus behaviour.
-This is an industrial realtime Bus System, under no circumstances any slave should lost its OP State , after you have startet your system. Even with an normal fault the drive should stay op, go to error state, sends error flags etc.
If you not hang off the drives cpu, power it off, or cut the ethernet cable in your running System, all has to stay OP !!
If an slave lost its OP state, there must be fundamental error in the system.
Examble: Power supply, Jitter, dc clock lost, hf disorder, wrong grounding etc.....
What happens at the moment the drive lost its OP State ? What Drives are this?
Please Log in to join the conversation.
Seems I'm a very lucky man.
....... Thanks for the advice and I hope in your or Chimeno help tomorrow.
Good Night
He does not answer you because the user @db1981 knows a lot more than I do, if someone can help you it is him.
Greeting
Chimeno
Please Log in to join the conversation.
I started working with linuxcnc-ethercat installation in May .... in June I started my motors and let them go on the test bench, without gearboxes or mechanical loads, at the end of August. So hundreds of hours of system testing. No anomaly detected. Now that I have the motors installed on the machine I see the same thing so it goes without saying that everything works as you say and I made sure my cpu and my ethernet port held everything up.
Normal usage: These is all ok.
What happens: every now and then, when I turn on the machine or when I re-turn on linuxcnc after closing linuxcnc but not the machine, only on these occasions and never during work .... the drives do not go to OP. Yes, sure for initial communication anomalies ... in fact sometimes drive 0 does not go to OP, sometimes 1, sometimes none. The elxxx modules always work correctly (apart from the episode with el5151 which, however, we said to be my cause, I took it used and did not know it was better to reset). What should I do in these cases:
I turn off the power of the drives and turn them off (I remove the connectors from the drives).
This way when I power up the drives they go into INIT. When I start linuxcnc the drives go to SAFEOP then PREOP and when I press the enable button they finally go to OP so everything works fine.
Now I think this depends on communication problems (grounding ?, spike? ... the pc is powered in 24Vdc with filtered power supply .... I don't think so .... bad filters in the drives? Maybe .... rather it will be due to excessive delay of the ethercat line at power up due to a non-optimal hardware ....).
in any case I was wondering if it was possible to avoid disconnecting the power from the drives and performing the same procedure via software, then putting the drives first in INIT (so they are forced to start a new connection and reset the buffers) and then re-initialize the ignition of linuxcnc ..... if there is a way to always put the drives in INIT before starting linuxcnc it is fine. Can I use a script or a C ++ program to do this I ask.
Very thanks for all.
bkt
Please Log in to join the conversation.
chimeno wrote: Hello @bkt
He does not answer you because the user @db1981 knows a lot more than I do, if someone can help you it is him.
Greeting
Chimeno
Very thanks for reply ... I write your name only because db1981 write " I reply you tomorrow xxxxx" and wrote your name in the post.
I didn't want to pull anyone by the jacket. It was a form of respect.
I may not have made it very clear that I greatly appreciated the help received from db1981.
I'm just sorry to have bothered for such a stupid thing.
Very thanks
bkt
Please Log in to join the conversation.
for clearify : with OP we mean ethercat state OP. (not the drives power enable)
It should been like this:
after you start linuxcnc, all ethercat slaves must be in OP State (our system is running, communcation is established) , with closing linuxcnc the slaves falls back to preop state. Then you can start linuxcnc again and all slaves has to go to op state again.
Linuxcnc Estop or Enable button has no influence on the ethercat state machine!
Pleasy verify this again...
What servodrives are this exactly and is there a manual available?
Please Log in to join the conversation.
