Duplicating signals
26 Jul 2017 03:26 #96445
by dberndt
Duplicating signals was created by dberndt
Soo, you read the title, you've read the documentation, you've probably hand ended many a hal file, and you say "no you dummy, you can't duplicate signals, what's wrong with you?". Well tough bananas, I'm asking the question anyways.
Why are you oppressing me this way LinuxCNC? My freedom of expression is being crushed....
So 2 of the 3 amps on my machine have a Ready line and a Warning line.
So I bring those in something like
X-Amp-NoWarnings <= someCard.SomePin.In0-Not
X-Amp-Ready <= someCard.SomePin.In1
Y-Amp-NoWarnings <= someCard.SomePin.In2-Not
Y-Amp-Ready <= someCard.SomePin.In3
But the 3rd amp has no output for warnings. Everything is just an Ready. Fine you say. Maybe... But it ruins the symmetry. If you're looking with the halmeter or anything else at all the axis, there is a symmetry in the listings, it's beautiful, until this axis, that has no Z-Amp-NoWarnings input, because there is just nothing to bring in. Horrible. It's the sort of thing I know I'd wonder about 5 years from now, why is that signal not there? All the others have it? Why did whomever configured this not provide a consistent interface out of the amps, even if only for appearance sake?
So to restore some symmetry and overcome my OCD, lets just assign that ready pin to the noWarning signal.
net Z-Amp-NoWarnings <= someCard.SomePin.In4
net Z-Amp-Ready <= someCard.SomePin.In4
... Nope, can't do that, can't assign that pin to 2 signals.
Ok, well lets just bring in the first signal and then assign it to the second signal or something
net Z-Amp-Ready <= someCard.SomePin.In4
net Z-Amp-NoWarnings <= Z-Amp-Ready
Nope, you can't do that. LinuxCNC doesn't like you enough to allow that either.
Well lets get dumb, bring in a not or two
net Z-Amp-NoWarnings <= someCard.SomePin.In4-not -> not.0.in
net Z-Amp-Ready <= not.0.out
Well that works, but now I feel cheap.
So Linuxcnc crowd, why...? Why does it seem to have to be done this way? Why can't I just copy, duplicate, alias, somethingOrOther a signal? Would it really bring the world to an end? Surely having a more self-documenting configuration would be a bonus more so than people accidentally creating duplicated signals would be?
Why are you oppressing me this way LinuxCNC? My freedom of expression is being crushed....
So 2 of the 3 amps on my machine have a Ready line and a Warning line.
So I bring those in something like
X-Amp-NoWarnings <= someCard.SomePin.In0-Not
X-Amp-Ready <= someCard.SomePin.In1
Y-Amp-NoWarnings <= someCard.SomePin.In2-Not
Y-Amp-Ready <= someCard.SomePin.In3
But the 3rd amp has no output for warnings. Everything is just an Ready. Fine you say. Maybe... But it ruins the symmetry. If you're looking with the halmeter or anything else at all the axis, there is a symmetry in the listings, it's beautiful, until this axis, that has no Z-Amp-NoWarnings input, because there is just nothing to bring in. Horrible. It's the sort of thing I know I'd wonder about 5 years from now, why is that signal not there? All the others have it? Why did whomever configured this not provide a consistent interface out of the amps, even if only for appearance sake?
So to restore some symmetry and overcome my OCD, lets just assign that ready pin to the noWarning signal.
net Z-Amp-NoWarnings <= someCard.SomePin.In4
net Z-Amp-Ready <= someCard.SomePin.In4
... Nope, can't do that, can't assign that pin to 2 signals.
Ok, well lets just bring in the first signal and then assign it to the second signal or something
net Z-Amp-Ready <= someCard.SomePin.In4
net Z-Amp-NoWarnings <= Z-Amp-Ready
Nope, you can't do that. LinuxCNC doesn't like you enough to allow that either.
Well lets get dumb, bring in a not or two
net Z-Amp-NoWarnings <= someCard.SomePin.In4-not -> not.0.in
net Z-Amp-Ready <= not.0.out
Well that works, but now I feel cheap.
So Linuxcnc crowd, why...? Why does it seem to have to be done this way? Why can't I just copy, duplicate, alias, somethingOrOther a signal? Would it really bring the world to an end? Surely having a more self-documenting configuration would be a bonus more so than people accidentally creating duplicated signals would be?
Please Log in or Create an account to join the conversation.
26 Jul 2017 07:30 #96449
by aleksamc
Replied by aleksamc on topic Duplicating signals
I've read only few sentences. You've written to much.
As for me, On my machine I duplicated signals externally the software - in electrical circuits.
I merely connect wires that connect Dir and Pulse in parallel to drivers.
And on drivers I changed supply of motor coils in such condition that they turn in oposit directions. And it's all. Everything work perfectly.
As for me, On my machine I duplicated signals externally the software - in electrical circuits.
I merely connect wires that connect Dir and Pulse in parallel to drivers.
And on drivers I changed supply of motor coils in such condition that they turn in oposit directions. And it's all. Everything work perfectly.
Please Log in or Create an account to join the conversation.
26 Jul 2017 08:57 #96453
by rodw
Replied by rodw on topic Duplicating signals
When you adopt a software platform, you must also adopt the paradigm the developers envisaged. If you fight the paradigm, life will always be uncomfortable. Embrace the paradigm and your life is beautiful!
All of us were a bit uncomfortable while we learnt the paradigm of LinuxCNC. Bust as we learnt the paradigm, we came to embrace it. If you can't do the same, my best advice to you is to adopt a different motion controller so you are not fighting the paradigm!
All of us were a bit uncomfortable while we learnt the paradigm of LinuxCNC. Bust as we learnt the paradigm, we came to embrace it. If you can't do the same, my best advice to you is to adopt a different motion controller so you are not fighting the paradigm!
Please Log in or Create an account to join the conversation.
27 Jul 2017 14:31 #96568
by andypugh
Alias you say?
linuxcnc.org/docs/2.7/html/man/man1/halcmd.1.html
Does that help?
HAL nets actually work by moving pointers about. Once you realise that many of the limitations make more sense.
Replied by andypugh on topic Duplicating signals
So Linuxcnc crowd, why...? Why does it seem to have to be done this way? Why can't I just copy, duplicate, alias,
Alias you say?
linuxcnc.org/docs/2.7/html/man/man1/halcmd.1.html
Does that help?
HAL nets actually work by moving pointers about. Once you realise that many of the limitations make more sense.
Please Log in or Create an account to join the conversation.
Time to create page: 0.062 seconds