Missing link in homing LC10E
- stirra
- Away
- Junior Member
Less
More
- Posts: 23
- Thank you received: 6
02 Jan 2025 20:01 #317882
by stirra
Missing link in homing LC10E was created by stirra
I have my Lichuan LC10E drive and servo successfully doing internal homing, but I can't figure out how to make the Axis "Home All" button trigger it. Setting x-home-request signal in halshow generates a homing cycle, but Axis "Home All" causes the motor to just spin quite independently of the drive homing parameters, and never completes. The x-home-request home cycle completes, and turns on x-homed (cia402.0.stat-homed and joint-0.cia402-homing-finished), but this is also not reflected in Axis.Where does this alternate homing process get linked into Axis? I have been trying to trace it from halui.home_all but get lost in the bowels of emc.Thanks,-- Ralph
Please Log in or Create an account to join the conversation.
- rodw
- Offline
- Platinum Member
Less
More
- Posts: 10820
- Thank you received: 3566
03 Jan 2025 01:20 #317890
by rodw
Replied by rodw on topic Missing link in homing LC10E
Just looking at homing.c source and it has a reminder in a comment.
// docs: 'If HOME_SEQUENCE is not specified then this joint
// will not be homed by the HOME ALL sequence'
Do you have a home_sequence set for all joints?
// docs: 'If HOME_SEQUENCE is not specified then this joint
// will not be homed by the HOME ALL sequence'
Do you have a home_sequence set for all joints?
Please Log in or Create an account to join the conversation.
- stirra
- Away
- Junior Member
Less
More
- Posts: 23
- Thank you received: 6
03 Jan 2025 04:19 #317898
by stirra
Replied by stirra on topic Missing link in homing LC10E
That was "a" problem but not "the" problem. I changed HOME_SEQUENCE to 1 and the behavior remains the same. I commented out all the other HOME_* parameters and still no change. There is still something else I'm missing.
The homecomp.comp file talks about joint._.request-custom-homing as selecting the custom homing process, and the joint.0.request-cia402-homing pin is net'ed to the x-home-request in your cia402_homecomp.comp, but does not get set from Home All, even when HOME_SEQUENCE is positive non-zero.
I tried to attach my files to the last post, but they seem to have vanished. Here is another attempt.
The homecomp.comp file talks about joint._.request-custom-homing as selecting the custom homing process, and the joint.0.request-cia402-homing pin is net'ed to the x-home-request in your cia402_homecomp.comp, but does not get set from Home All, even when HOME_SEQUENCE is positive non-zero.
I tried to attach my files to the last post, but they seem to have vanished. Here is another attempt.
Attachments:
Please Log in or Create an account to join the conversation.
- stirra
- Away
- Junior Member
Less
More
- Posts: 23
- Thank you received: 6
10 Jan 2025 23:32 #318671
by stirra
Replied by stirra on topic Missing link in homing LC10E
After many hours of studying homing.c, cia402.comp, cia402_homecomp.comp and various forum posts, I finally found the last key to making LC10E drive homing work. Here is my summary of all the changes needed to RodW's example custom homing configuration. I can now click "Home All" in Axis and have it do a proper mode 6 home. It still leaves all the axes with "H" in the preview window (rather than the round "survey marker" symbol), but MDI works and everything else seems to function normally.
Changes to get Lichuan LC10E homing working:
1. cia402.comp line 240
change (statusword >> 10) to (statusword >> 12)
2. ethercat-conf.xml
add to pdo 1600 section the lines:
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="home-mode" halType="u32"/>
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="home-hi-speed" halType="u32"/>
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="home-lo-speed" halType="u32"/>
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="home-acc" halType="u32"/>
<pdoEntry idx="2005" subIdx="24" bitLen="16" halPin="home-timeout" halType="u32"/>
3. cia402.hal
after loadrt's add lines:
setp lcec.0.0.home-mode 34
setp lcec.0.0.home-hi-speed 50000
setp lcec.0.0.home-lo-speed 50000
setp lcec.0.0.home-acc 100000
setp lcec.0.0.home-timeout 5000
after # homing signals change nets x-home* to:
net x-home-request joint.0.request-cia402-homing cia402.0.home joint.0.index-enable
net x-homing joint.0.is-cia402-homing cia402.0.stat-homing
net x-homed joint.0.cia402-homing-finished cia402.0.stat-homed
4. cia402.ini
in [joint_0] be sure:
HOME_SEQUENCE = 0 (or whatever sequence number is appropriate)
HOME_USE_INDEX = YES
HOME_SEARCH_VEL = 0
HOME_SEARCH_VEL = 1 (or any non-zero value)
I hope this helps somebody else.
-- Ralph
Changes to get Lichuan LC10E homing working:
1. cia402.comp line 240
change (statusword >> 10) to (statusword >> 12)
2. ethercat-conf.xml
add to pdo 1600 section the lines:
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="home-mode" halType="u32"/>
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="home-hi-speed" halType="u32"/>
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="home-lo-speed" halType="u32"/>
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="home-acc" halType="u32"/>
<pdoEntry idx="2005" subIdx="24" bitLen="16" halPin="home-timeout" halType="u32"/>
3. cia402.hal
after loadrt's add lines:
setp lcec.0.0.home-mode 34
setp lcec.0.0.home-hi-speed 50000
setp lcec.0.0.home-lo-speed 50000
setp lcec.0.0.home-acc 100000
setp lcec.0.0.home-timeout 5000
after # homing signals change nets x-home* to:
net x-home-request joint.0.request-cia402-homing cia402.0.home joint.0.index-enable
net x-homing joint.0.is-cia402-homing cia402.0.stat-homing
net x-homed joint.0.cia402-homing-finished cia402.0.stat-homed
4. cia402.ini
in [joint_0] be sure:
HOME_SEQUENCE = 0 (or whatever sequence number is appropriate)
HOME_USE_INDEX = YES
HOME_SEARCH_VEL = 0
HOME_SEARCH_VEL = 1 (or any non-zero value)
I hope this helps somebody else.
-- Ralph
The following user(s) said Thank You: rodw, onceloved, zmrdko
Please Log in or Create an account to join the conversation.
- stirra
- Away
- Junior Member
Less
More
- Posts: 23
- Thank you received: 6
10 Jan 2025 23:34 #318672
by stirra
Replied by stirra on topic Missing link in homing LC10E
Forgot to say that the lcec.0.0.home-mode 34 should be changed to the home mode you want. 34 is just handy for testing without external switches connected (34 just returns to index).
The following user(s) said Thank You: rodw, onceloved
Please Log in or Create an account to join the conversation.
- dschultz
- Offline
- New Member
Less
More
- Posts: 6
- Thank you received: 0
16 Jan 2025 04:43 #319088
by dschultz
Replied by dschultz on topic Missing link in homing LC10E
Can this arrangement (servo drive internal homing) be used together with absolute multi-turn encoders on a dual motor gantry?
I'd like to use the multi-turn encoders to get away from home switches if possible...
I'd like to use the multi-turn encoders to get away from home switches if possible...
Please Log in or Create an account to join the conversation.
- zmrdko
- Offline
- Elite Member
Less
More
- Posts: 170
- Thank you received: 41
17 Jan 2025 15:52 #319189
by zmrdko
Replied by zmrdko on topic Missing link in homing LC10E
Thank you for sharing findings.
I am trying to achieve the same for Delta B3 drives.
i have questions regarding two points:
1. cia402.comp line 240
change (statusword >> 10) to (statusword >> 12)
- did you download this component from github.com/dbraun1981/hal-cia402/ and manually compiled and installed it?
4. cia402.ini
in [joint_0] be sure:
HOME_SEQUENCE = 0 (or whatever sequence number is appropriate)
HOME_USE_INDEX = YES
HOME_SEARCH_VEL = 0
HOME_SEARCH_VEL = 1 (or any non-zero value)
- here is HOME_SEARCH_VEL stated two times - maybe one should be HOME_LATCH_VEL?
I am trying to achieve the same for Delta B3 drives.
i have questions regarding two points:
1. cia402.comp line 240
change (statusword >> 10) to (statusword >> 12)
- did you download this component from github.com/dbraun1981/hal-cia402/ and manually compiled and installed it?
4. cia402.ini
in [joint_0] be sure:
HOME_SEQUENCE = 0 (or whatever sequence number is appropriate)
HOME_USE_INDEX = YES
HOME_SEARCH_VEL = 0
HOME_SEARCH_VEL = 1 (or any non-zero value)
- here is HOME_SEARCH_VEL stated two times - maybe one should be HOME_LATCH_VEL?
Please Log in or Create an account to join the conversation.
Time to create page: 0.064 seconds