So I said (5/5/2012 10:05 AM):
> On 5/4/2012 10:41 PM, gene heskett wrote:
>> Greetings;
>>
>> As I read the hal manuals getting started section, where the keywords
>> loadrt, setp, addf, and net are defined, I didn't understand at first 
>> that
>> arg[3], arg[4] arg[5] etc of a "net" commend can be repeated to add 
>> sending
>> something from arg[2] to more than one load.  But I can't name a 
>> previously
>> used output and send it to the 2nd place it needs to go.  Its s show
>> stopper error.
>>
>> Is this intentional, or do I likely have a deeper miss-understanding?
>>
>> What I am trying to do is incorporate the
>> "Closed_Loop_Spindle_Speed_Control" hal bits&  pieces into an 
>> existing hal
>> file that already controls the speed just fine from the gui or in an 
>> .ngc
>> program.  The existing speed control however isn't that 'stiff' down 
>> at the
>> ranges one uses for threading, so the speed control needs more low speed
>> gain.
>>
>> I am assuming of course that the 'net' is arg[0] for that line of 
>> hal, and
>> that the next argument, arg[1] is an arbitrary name for the 'net' 
>> signal,
>> arg[2] then is the source of the signal or data, arg[3] is the first 
>> of a
>> list of places to send that signal.  No mention of a "fanout" limit if
>> there is one.
> Gene:
>
> I'm not sure I understand what you are asking here. I'm a tad confused 
> by the arg[x] notation.
>
> "But I can't name a previously used output and send it to the 2nd 
> place it needs to go."  - huh?
>
> Look at:
>     net sig1 someout somein
>     net sig1 someotherin
>
> Here I've connected the output pin "someout" to both "somein" and 
> "someotherin" input pins using the signal "sig1". Is this what you mean?
>

OOPS I was in a hurry to get to the store and left out an important 
thought. The order of the pins in a net command is not significant. 
Their mode is defined elsewhere, not by their order of occurrence in the 
net command. halcmd has to sort out whether an utterance is legal based 
on its knowledge of components.

If you look through some of the hal configurations distributed with 
LinuxCNC (or least with older EMC2 dists; I  haven't looke recently) 
you'll see usage like

net somesig pina <= pinb => pinc

which *implies* pinb is an output and pina and pinc are inputs, although 
the direction of the arrows is actually irrelevant since they are 
ignored by halcmd. Another broad hint is the frequent use of "in" and 
"out" in the names of pins, although that can confuse the unwary who use 
parports.

Only halcmd knows for sure, which is why my context-free parser was a 
challenge.

Regards,
Kent


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to