stepgen for dummies

More
7 years 4 months ago #137655 by felixcnc
stepgen for dummies was created by felixcnc
Hello,

As usual I am asking the very basic questions (sorry about this), but LinuxCNC is so vast that sometimes I feel overwhelmed about the amount of information I found but my lack of knowledge makes difficult to get to the right answer.

I've been reading : linuxcnc.org/docs/html/hal/rtcomps.html#...tcomps.html#_stepgen and even though it's very clear it does not fit exactly what I need to do.

Basically what I want to do is to create ONE very simple stepgen that takes a float and encodes that into two pins, I have created this very simple HAL code:
Code:
loadrt threads name1=probando period1=1000000 loadrt stepgen step_type=0 net direccion stepgen.0.dir net paso stepgen.0.step setp stepgen.0.position-scale 10000 setp stepgen.0.enable 1 addf stepgen.update-freq probando addf stepgen.make-pulses probando start

I was able to start halscope and retrieve information from stepgen.0.dir and stepgen.0.step however I am not 100% if I am things right.

For example if I write:

setp stepgen.0.position-cmd 1

I see the stepgen.0.dir and stepgen.0.step to change its value (if I set the value to other values sometimes it changes the values sometimes it doesnt).

So my question is.... if I use net to wire the setp stepgen.0.position-cmd 1 with a Joint position output from any of the kinematic examples , is that the right way to OUTPUT the movement through the step generator?

p.s. I hope I was clear, otherwise, please ask me and I'll be happy to clarify myself. And again, please forgive if I ask the obvious things, but I'm still ramping up on this.

Thank you very much

Kind regards

Please Log in to join the conversation.

More
7 years 4 months ago #137658 by PCW
Replied by PCW on topic stepgen for dummies
Yes, something like

net some_appropriate_signal_name joint.0.motor-pos-cmd stepgen.0.position-cmd


Note
1. signal names are arbitrary (but chosen for readability)
2. you can use stepconf created hal files as examples

Please Log in to join the conversation.

More
7 years 4 months ago #137664 by felixcnc
Replied by felixcnc on topic stepgen for dummies
Ahhh, yes, I saw that "net" is not only to wire things , but also since it creates a virtual pin when you use it, it is used to "alias" other pins as well.

Thanks for the advise.

Please Log in to join the conversation.

More
7 years 4 months ago #137665 by PCW
Replied by PCW on topic stepgen for dummies
Right though strictly, its not really a pin but rather a signal
I think of signals as "wires"

so
net blue_wire out_pin_a
...
net blue_wire in_pin_b

connects the pins out_a and in_b with the wire blue_wire

or the equivalent

net blue_wire out_pin_a in_pin_b

or

net blue_wire out_pin_a => in_pin_b

The => is just for looks to give the person reading the hal file a hint about the direction of data flow.
in fact its really just a special inline comment.

Please Log in to join the conversation.

Time to create page: 0.337 seconds
Powered by Kunena Forum