Could use some help with a tandem axis homing issue

More
24 Oct 2024 02:51 - 24 Oct 2024 02:52 #313021 by RyanB
Hey, I've had this issue on and off for a while and I am still trying to figure out the reason my system does this every so often:
My Y axis has 2 steppers and 2 limit switches. Y(1) being on the left, Y2 the right. When the limit switch for Y2 triggers the motor backs off the switch and (supposedly) waits for the other axis to finish finding its home.
Y(1) hits the switch, but instead of backing off it pauses for a fraction of a second then continues to push into the switch.
I hit the Estop at that point as the stepper starts skipping when it gets near the end of its travel.

Video of the switch issue


Things I've checked:
Restarting the system entirely doesn't seem to have any effect.
Wiring is all good, I can see the corresponding lights on the mesa board lighting when the switch is pressed
The switches is fine, I switched the 2 axis switches and got the same behavior
Signals are coming through according to the HAL meter with Y and Y2 home both showing true when pressed
The home offset is set for 5.00 mm for both sides, meaning the gantry should move in the negative direction (away from the switches) when correcting (and it does when it occasionally works)

Any help or suggestions would be very welcome.

File Attachment:

File Name: MIDI.ini
File Size:5 KB
 

File Attachment:

File Name: MIDI.hal
File Size:12 KB



On a side note: I'd love to know what the homing subroutine looks like, but I can't find anything online for it. Is it possible to remap it like the M6 tool change in the INI?  
Attachments:
Last edit: 24 Oct 2024 02:52 by RyanB.

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

More
24 Oct 2024 03:07 #313022 by PCW
No homing expert, but if the search and latch velocities are in the same direction
it seem like you would always end up on the switch after homing if the home final
velocity was 0 (and it seem to be set to 0 on all joints) It also seems like to avoid
this you also need home defined.
 

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

More
24 Oct 2024 16:42 #313106 by RyanB
Thank you for the reply.
I took a look at the documentation for the home final vel and found this
  • HOME_FINAL_VEL = 0.0 - Velocity in machine units per second from home latch position to home position. If left at 0 or not included in the axis rapid velocity is used. Must be a positive number.
My INI specifies 0, defaulting to the axis max velocity of 25mm/s. (this comes into effect at the end of the homing search and never gets that far)

The tandem Y2 axis preforms as expected and the settings in the INI are exactly the same for the problem switch.

Lastly, I suspect the when the Y1 axis starts pushing into the sensor, it's still in the homing routine as an Estop brings an error: "cannot unhome while homing joint 1" This is typically after the tandem joint has already hit its switch and stopped its stepper (presumably waiting for the other side to finish its search)

I've tested some changes in the INI such as
  • slowing HOME_LATCH_VEL to .25 (no effect)
  • Inverting Y1's final home (no effect)
  • Slowing HOME_SEARCH_VEL to 0.5 (no effect)
My understanding of the homing process is that it is supposed search for the switch using the search velocity, hit the switch, back off the switch, and then use the latch velocity to get an accurate measurement. Is there a setting for how far the gantry moves after searching and before the latch process?

I really am at a loss on how to proceed from here.
 

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

More
24 Oct 2024 17:18 #313114 by tommylight
Start over, do NOT change stuff at random in the wizard, like:
-servo period, leave it at is,
-input values for your machine for microsteping, type of reduction, etc etc
-input values for distance to suit your machine
-Z axis should be the first to home so it does not hit something when other axis home, almost always should be home sequence 0
-default values will most probably not work as you have them now
-I am pretty sure you have the tandem axis with one motor spinning in the wrong direction, if that is the actual ini you are using.
When you run the new config, press home Y for the tandem axis and KEEP your hand above the ESC key in case one side moves in the wrong direction.

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

More
24 Oct 2024 17:52 #313119 by PCW
I guess it could also be that the switch was overrun if this is possible.
Contact bounce could also be an issue (you could check this easily by setting
the "slow" parameter of the inm bits used for the home switches)
The following user(s) said Thank You: RyanB

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

More
24 Oct 2024 19:31 #313143 by RyanB
This is going to sound so stupid, but might as well own up to it.
I found out the problem was not the switch but the motor connection. I have a nuc and the mesa board in a mobile station I can roll around the shop while the CNC router, drivers, power supply, etc are stationary. The reason I designed it this way was to use the mobile station for testing stuff I intend to convert into CNC (lathe, mill, etc). It looks like my solder job for one of the motor signal connectors was somewhat faulty and allowed it to only be driven in 1 direction. Probably a cold joint, which also explains why it was happening only occasionally.
My guess is that the cnc attempted to hold the motor still after the limit was hit (hence the delay) but only received one direction signal and not the other, there by pushing the motor into the switch.
The following user(s) said Thank You: Clive S

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

Time to create page: 0.107 seconds
Powered by Kunena Forum