Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Elmo Gold Drive profiled position bug? #103

Open
MartynStaalsen opened this issue Sep 14, 2023 · 0 comments
Open

Elmo Gold Drive profiled position bug? #103

MartynStaalsen opened this issue Sep 14, 2023 · 0 comments

Comments

@MartynStaalsen
Copy link

I've been working on commissioning some elmo gold drives far a control application using fastcat, and have encountered some issues using egd_prof_pos commands. Currently, it seems the prof_pos handling state machine in jsd_egd.c does not reset bits 4 and 5 of the control word after handling a new move command. Based on my testing, it seems like these bits act as edge-triggered inputs, and thus need to be reset to 0 before a new command can be processed.

The effect is that I'm only able to execute a single prof_pos command before having to restart my ethercat master. Even resetting the drive doesn't seem to let me execute another prof_pos command.

However, it's also possible that I'm not using the egd interface, and some other piece of code I've overlooked should be handling these resets...

Also of note, I think the logic to reset the relative move bit is also faulty:
state->rxpdo_prof.controlword |= (cmd.prof_pos.relative << 6);. Seems like this only has the ability to set the relative bit to True, but would never be able to set it back to False if prof_pos.relative was False.
This line and the above bug make think that either this egd positioning code was never tested on a real drive, I've missed a more recent release that fixes these, or I'm doing something terribly wrong...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant