CIA402 Homing module - a start
07 Apr 2024 10:17 #297741
by rodw
CIA402 Homing module - a start was created by rodw
Well, an undefined bug put me in hospital so I have had a bit of time on my hands but limited in the tools I have ( A chromebook and a crappy captive portal wifi that won't let me clone linuxcnc or access my Google Drive).
So I decided to revisit cia402 homing and redo what I had started once before seeing there is so much ethercat activity at the moment. unfortunately, I can't compile or test anything here. Still working on that.
I also found that marcoreps had done a pretty good job building a homecomp for a Leadshine EL8 CIA402 drive
github.com/marcoreps/linuxcnc_leadshine_EL8
He used the default code provided by Dewey Garrett which is in the linuxcnc repo here
github.com/LinuxCNC/linuxcnc/blob/master...onents/homecomp.comp
But to my mind the choice of enums and pin names (and unused states) made a complicated process even more obfuscated so I worked through marcoreps component and referenced it back to Dewey's template and made it more cia402 like given my hard won understanding from earlier bruising experiences.
I also put some fairly detailed notes in the read.me to help you understand what is going on.
So here it is:
github.com/rodw-au/cia402_homecomp
Its my hope that some of you advanced users will clone and build this, debug any syntax errors while I am laid up and send me some PR's.
Long term, I would like to see this deployed with @scottlaird's ethercat driver.
But also, we may be able to compress the final cia402 package so it just needs Scotts driver and the homing component. If you compare the structure of dominic's cia402.comp, there are similarities
So if Dewey or any other experienced developers see this and can see a way to set the homecomp's load order with addf, please let us know.
So I decided to revisit cia402 homing and redo what I had started once before seeing there is so much ethercat activity at the moment. unfortunately, I can't compile or test anything here. Still working on that.
I also found that marcoreps had done a pretty good job building a homecomp for a Leadshine EL8 CIA402 drive
github.com/marcoreps/linuxcnc_leadshine_EL8
He used the default code provided by Dewey Garrett which is in the linuxcnc repo here
github.com/LinuxCNC/linuxcnc/blob/master...onents/homecomp.comp
But to my mind the choice of enums and pin names (and unused states) made a complicated process even more obfuscated so I worked through marcoreps component and referenced it back to Dewey's template and made it more cia402 like given my hard won understanding from earlier bruising experiences.
I also put some fairly detailed notes in the read.me to help you understand what is going on.
So here it is:
github.com/rodw-au/cia402_homecomp
Its my hope that some of you advanced users will clone and build this, debug any syntax errors while I am laid up and send me some PR's.
Long term, I would like to see this deployed with @scottlaird's ethercat driver.
But also, we may be able to compress the final cia402 package so it just needs Scotts driver and the homing component. If you compare the structure of dominic's cia402.comp, there are similarities
- Both have a read_all function
- Both have a write_all function
So if Dewey or any other experienced developers see this and can see a way to set the homecomp's load order with addf, please let us know.
Please Log in or Create an account to join the conversation.
- scottlaird
- Offline
- Premium Member
Less
More
- Posts: 136
- Thank you received: 155
07 Apr 2024 15:56 #297752
by scottlaird
Replied by scottlaird on topic CIA402 Homing module - a start
Thanks for the work, but I wish the circumstances were better. Hopefully the bug resolves soon.
I read the README, and it looks like a great start. I'd love to see CiA homing working, and long-term finding ways to keep the complexity as low as possible (by merging components, removing pieces, standardizing naming, etc) is important.
I'll try to take a look at the code later today and see what it takes to get it to compile .
I read the README, and it looks like a great start. I'd love to see CiA homing working, and long-term finding ways to keep the complexity as low as possible (by merging components, removing pieces, standardizing naming, etc) is important.
I'll try to take a look at the code later today and see what it takes to get it to compile .
The following user(s) said Thank You: besriworld
Please Log in or Create an account to join the conversation.
- scottlaird
- Offline
- Premium Member
Less
More
- Posts: 136
- Thank you received: 155
08 Apr 2024 00:10 - 08 Apr 2024 00:10 #297769
by scottlaird
Replied by scottlaird on topic CIA402 Homing module - a start
Surprisingly close to compiling, considering . One missing line that breaks `halcompile`'s parser, and a conflict with naming in `custom_home_local_data`. I sent a PR with the simple fix and filed a bug with the compile errors.
Last edit: 08 Apr 2024 00:10 by scottlaird.
Please Log in or Create an account to join the conversation.
08 Apr 2024 01:14 #297772
by rodw
Replied by rodw on topic CIA402 Homing module - a start
Thanks Scott. I merged your changes. The change to homebase is fine with me and the workflow is an awesome addition.
Keep up the good work.
If you load the homecomp as outlined, it should publish some additional pins for each joint. It would be good to test it that far.
There may be some mods required to the cia402.comp to hook it up but I think marcoreps might have a version with those changes.
Keep up the good work.
If you load the homecomp as outlined, it should publish some additional pins for each joint. It would be good to test it that far.
There may be some mods required to the cia402.comp to hook it up but I think marcoreps might have a version with those changes.
The following user(s) said Thank You: besriworld, am-i-go
Please Log in or Create an account to join the conversation.
Time to create page: 0.133 seconds