I am building a CNC Router for our FIRST Robotics team. It has a full enclosure and I want to limit the motion to very slow speeds from an input if the door is open. This should allow them to position a tool or finder close to a part, then open the door to use a feeler guage but not accidently get crushed by sudden rapid motion.
I am a PLC and CNC programmer in my job. I have the CNC12 PLC programming manual. Can someone point me to the variable controlling Max Rapids and maybe the block of code where this is set?
PLC override of rapids
Moderator: cnckeith
-
- Posts: 10
- Joined: Thu Aug 22, 2019 10:03 pm
- Acorn CNC Controller: No
- Allin1DC CNC Controller: No
- Oak CNC controller: No
- CNC Control System Serial Number: none
- DC3IOB: No
- CNC12: Yes
- CNC11: No
- CPU10 or CPU7: No
PLC override of rapids
(Note: Liking will "up vote" a post in the search results helping others find good information faster)
Re: PLC override of rapids
There is not a variable in the PLC that directly controls the Max Rate (rapid rate) of any axis.
There is a feature in CNC12 which limits axis speed to the Slow Jog rate if a door switch is triggered. See Machine Parameter 85.
Be aware, though, that -- to the best of my knowledge -- the speed change with Parameter 85 is delayed. If you open the door while a rapid move is in progress, that move will complete at the rapid rate, then subsequent moves will run at no more than Slow Jog rate. Likewise, if you close the door while a slowed-down move is in progress, normal speed will not resume until the next move.
The PLC program can control the feedrate override percentage. See SV_PLC_FEEDRATE_KNOB and SV_PLC_FEEDRATE_OVERRIDE.
The attached diagram shows how those variables are used to coordinate speed control among the PLC program; the CNC11 or CNC12 PC software; and the motion controller (MPU11, Oak, Acorn, etc.).
The feedrate override percentage also applies to rapid moves, but only if SV_PLC_FUNCTION_34 ("SelectRapidOverride") is set.
The software version currently under development (v5.07 / v5.08) is slated to add a separate override percentage for rapid moves, independent of SV_PLC_FEEDRATE_OVERRIDE. It will be called SV_PLC_RAPID_FEEDRATE_OVERRIDE, and is the speed fraction (0.01 to 1.00) to apply to rapid moves.
Note, of course, that limiting speed with the override percentage is imperfect, because -- at least in the case of feedrate moves -- you do not know what the programmed feedrate was to begin with. That information is not available to the PLC program.
Your best bet is probably to use Parameter 85 and live with its limitations; and/or to simply trigger an Error condition (which cancels the job and stops the spindle) if the door is seen to be open while a job is running or the spindle is on.
There is a feature in CNC12 which limits axis speed to the Slow Jog rate if a door switch is triggered. See Machine Parameter 85.
Be aware, though, that -- to the best of my knowledge -- the speed change with Parameter 85 is delayed. If you open the door while a rapid move is in progress, that move will complete at the rapid rate, then subsequent moves will run at no more than Slow Jog rate. Likewise, if you close the door while a slowed-down move is in progress, normal speed will not resume until the next move.
The PLC program can control the feedrate override percentage. See SV_PLC_FEEDRATE_KNOB and SV_PLC_FEEDRATE_OVERRIDE.
The attached diagram shows how those variables are used to coordinate speed control among the PLC program; the CNC11 or CNC12 PC software; and the motion controller (MPU11, Oak, Acorn, etc.).
The feedrate override percentage also applies to rapid moves, but only if SV_PLC_FUNCTION_34 ("SelectRapidOverride") is set.
The software version currently under development (v5.07 / v5.08) is slated to add a separate override percentage for rapid moves, independent of SV_PLC_FEEDRATE_OVERRIDE. It will be called SV_PLC_RAPID_FEEDRATE_OVERRIDE, and is the speed fraction (0.01 to 1.00) to apply to rapid moves.
Note, of course, that limiting speed with the override percentage is imperfect, because -- at least in the case of feedrate moves -- you do not know what the programmed feedrate was to begin with. That information is not available to the PLC program.
Your best bet is probably to use Parameter 85 and live with its limitations; and/or to simply trigger an Error condition (which cancels the job and stops the spindle) if the door is seen to be open while a job is running or the spindle is on.
- Attachments
-
- PLCFeedOverrideChart.pdf
- (6.73 KiB) Downloaded 10 times
(Note: Liking will "up vote" a post in the search results helping others find good information faster)
-
- Site Admin
- Posts: 8962
- Joined: Wed Mar 03, 2010 4:23 pm
- Acorn CNC Controller: Yes
- Allin1DC CNC Controller: Yes
- Oak CNC controller: Yes
- CNC Control System Serial Number: none
- DC3IOB: Yes
- CNC11: Yes
- CPU10 or CPU7: Yes
- Contact:
Re: PLC override of rapids
Rapid override is now a standard feature in the CNC12 beta builds that we have been publishing. CNC12 v5.07 rev12 was the last one. we are about to post r14 (tomorrow hopefully)
Need support? READ THIS POST first. http://centroidcncforum.com/viewtopic.php?f=60&t=1043
All Acorn Documentation is located here: viewtopic.php?f=60&t=3397
Answers to common questions: viewforum.php?f=63
and here viewforum.php?f=61
Gear we use but don't sell. https://www.centroidcnc.com/centroid_di ... _gear.html
All Acorn Documentation is located here: viewtopic.php?f=60&t=3397
Answers to common questions: viewforum.php?f=63
and here viewforum.php?f=61
Gear we use but don't sell. https://www.centroidcnc.com/centroid_di ... _gear.html
(Note: Liking will "up vote" a post in the search results helping others find good information faster)