Tool changer with "binary" input
What would happen if the pin fired at the instant that the strip pulse was seen and the motor remained powered for a few tens of mS after?
I suppose the first question is: How did it operate previously?
Is there any chance the strobe sensor can be re-aligned.
For any practical purposes, the non-computer electronics are the same as in the old system. I'm using the same physical relay and solenoid controlled hydraulic valves. I assumed the Fanuc control logic had a correction factor they could program but that's just a guess.
I've thought about adjusting the sensor. That would require fabricating a new mount with adjustment. Not a big deal (I have a machine shop after all!) but it's only going to work in one direction since it overshoots going one way and under shoots going the other. That would be a solution, don't much care about being able to rotate both directions from a practical point of view.
I also thought about seeing if I can reduce the pressure in the hydraulic system or otherwise adjust the speed of rotation.
To your question about working if it fired the instant the sensor came into view, I could try and adjust the sensor, how close it is to the pin, that might be it. Will look and report back.
eriksalo wrote: I've thought about adjusting the sensor. That would require fabricating a new mount with adjustment. Not a big deal (I have a machine shop after all!) but it's only going to work in one direction since it overshoots going one way and under shoots going the other.
Actually, it is that asymmetry that made me wonder if moving the sensor was the answer.
Does the carousel only move at one speed?
I moved the sensor a bit and now it stops close enough to the alignment hole for the pin to drop in, regardless of direction.
So I have the whole thing working! Loads a tool and then parks it, loads a new one. I had to add a few pauses, etc that I will optimize to make it fast but overall, I couldn't be happier with it.
A few stumbles like:
1) Python not loading (was the directory callouts in my ini file)
2) Not knowing that the "o" routine line numbers were "o100" instead of "0100" (Reminds me of Fortran in college)
3) Not having the tool-prep-loop and tool-change-loop callouts in the .hal file
4) Learning about (debub, xxx) was critical
Just like everything LinuxCNC for me, it's impossibly hard until I've done it then looking back it was actually pretty easy.
I think I'll write up a LinuxCNC customization for dummies tutorial on this, there were a lot of things that I didn't understand going in that are hard to know about until you have done it once. Then those are hard to remember because they were so darn easy in retrospect.
I do have a follow up question, I want to make sure the Z axis is homed before starting the tool change procedure. Tried...
"net is-z-homed motion.digital-in-XX halui.joint.2.is-homed"
but got an error. How do I do this? I'll start a new thread....
Also, my config files attached so others can see them. Note that these configs have all the references to my pendant commented out for debug, I turned them back on and they did not effect the system.