limit3 component question

More
03 Jun 2022 10:29 #244496 by robertspark
Anyone using / used the limit3 component receintly?

Application: router speed ramping
LinuxCNC 2.8.2-11.g6a3d0a434

Issue: basically I can't seem to get an output from the component output pin

I have tried changing limit3.load from FALSE to TRUE... no change in output.

I can confirm that I have an input (tried 5000, 10000 and 30000), and no change on the output.

Yes I am probably being a muppet and not seeing the obvious.... pointing out the error of my ways would be most helpful, thanks.

Oh, using Hal Meter to inspect the I/O's state

just trying to smooth out my spindle (router) speed change, as it had soft start and is now running with a Super-PID
#SINDLE RAMP CONTROL
loadrt limit3 names=spindleramp
# settings
setp spindleramp.maxv 2
setp spindleramp.maxa 10
setp spindleramp.max [SPINDLE_0]OUTPUT_MAX_LIMIT
setp spindleramp.min [SPINDLE_0]OUTPUT_MIN_LIMIT
setp spindleramp.load 1
# input & output
net spindle-vel-cmd-rpm-abs => spindleramp.in
net spindleramped <= spindleramp.out

[SPINDLE_0]OUTPUT_MAX_LIMIT = 30000
[SPINDLE_0]OUTPUT_MIN_LIMIT = 5000


I'm going to give limit2 a shot in the meantime.... maybe the error of my ways will become apparent

Note:  I have flipped LOAD from False to True and no change on output (I thought this was a pass through function)

Minor thing....

Noticed the documentation (2.8 / stable or master) did not list the pin
limit3.time FLOAT OUT

linuxcnc.org/docs/stable/html/man/man9/limit3.9.html
 

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

More
03 Jun 2022 10:45 #244498 by phillc54
Replied by phillc54 on topic limit3 component question
I don't see an addf to a thread.
The following user(s) said Thank You: robertspark

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

More
03 Jun 2022 10:55 #244503 by robertspark
..... head slap moment !!!!

I figured that out after trying limit 2 and limit1......

addf spindleramp servo-thread

hey ho....

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

More
03 Jun 2022 11:01 - 03 Jun 2022 11:22 #244506 by robertspark
Maybe the below will help someone out in the future.....

choose ONE ( limit3 , limit2 or limit1 ) and modify to your needs

#SPINDLE RAMP CONTROL LIMIT 3
loadrt limit3 names=spindleramp
addf spindleramp          servo-thread
# settings
setp spindleramp.maxv 6000
setp spindleramp.maxa 6000
setp spindleramp.max [SPINDLE_0]OUTPUT_MAX_LIMIT
setp spindleramp.min [SPINDLE_0]OUTPUT_MIN_LIMIT
#setp spindleramp.load 1
setp spindleramp.enable 1
# input & output
net spindle-vel-cmd-rpm-abs => spindleramp.in
net spindleramped <= spindleramp.out

#SPINDLE RAMP CONTROL LIMIT 2
#loadrt limit2 names=spindleramp
#addf spindleramp          servo-thread
# settings
#setp spindleramp.maxv 1000
#setp spindleramp.max [SPINDLE_0]OUTPUT_MAX_LIMIT
#setp spindleramp.min [SPINDLE_0]OUTPUT_MIN_LIMIT
#setp spindleramp.load 0
# input & output
#net spindle-vel-cmd-rpm-abs => spindleramp.in
#net spindleramped <= spindleramp.out

#SPINDLE RAMP CONTROL LIMIT 1
#loadrt limit1 names=spindleramp
#addf spindleramp          servo-thread
# settings
#setp spindleramp.max [SPINDLE_0]OUTPUT_MAX_LIMIT
#setp spindleramp.min [SPINDLE_0]OUTPUT_MIN_LIMIT
# input & output
#net spindle-vel-cmd-rpm-abs => spindleramp.in
#net spindleramped <= spindleramp.out
Last edit: 03 Jun 2022 11:22 by robertspark.
The following user(s) said Thank You: phillc54

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

More
03 Jun 2022 11:11 #244508 by phillc54
Replied by phillc54 on topic limit3 component question

..... head slap moment !!!!

Haha, I have those all the time.

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

More
03 Jun 2022 14:05 #244521 by robertspark
bit of an adjustment to the above / earlier posted code.

Added the mux2 component to act as a signal switch which prevents the minimum output of the limit3 component being sent to the PWM signal output pin.
#SPINDLE RAMP CONTROL LIMIT 3
loadrt limit3 names=spindleramp
loadrt mux2   names=spindlesw
addf spindleramp          servo-thread
addf spindlesw            servo-thread
# settings
setp spindleramp.maxv 6000
setp spindleramp.maxa 6000
setp spindleramp.max [SPINDLE_0]OUTPUT_MAX_LIMIT
setp spindleramp.min [SPINDLE_0]OUTPUT_MIN_LIMIT
setp spindlesw.in0 0
# input & output
net spindle-vel-cmd-rpm-abs => spindleramp.in
net spindle-vel-cmd-rpm-abs-sw <= spindleramp.out
net spindle-cw => spindlesw.sel
net spindle-vel-cmd-rpm-abs-sw => spindlesw.in1
net spindleramped <= spindlesw.out

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

Time to create page: 0.103 seconds
Powered by Kunena Forum