Suggestion for improvement to SOFT LIMIT feature - DDCSV2.1 - Standalone CNC Motion Controller - Digital Dream Technology support
12Next
Return to List Add thread
View: 13923|Reply: 15
Print Previous Topic Next Topic

Suggestion for improvement to SOFT LIMIT feature

[Copy Link]

10

Threads

24

Posts

116

Credits

Registered member

Rank: 2

Credits
116
Jump to the specified floor
Landlord
Posted at 2018-10-13 00:28:51 | Only Author Replies reward |Positive sequence Browse |Read mode

On a stepper CNC system like DDCSV2.1 it is always good to avoid "emergency stops" as they do not decelerate smoothly and risk losing HOME position calibration.  


As such I admire the SOFT LIMIT feature very much but I think it could be improved:

I have "Soft-limit stop mode" parameter #2030 set to 0 (deceleration) and am running V2018-10-12-102.


Currently when a G01 code orders an axis to travel way-beyond the soft limit it appears that there is no deceleration phase or, perhaps, the deceleration is agressive or perhaps something different from what I have programmed into my axis-specific deceleration parameters #263-#266.

When operating in CONT mode I notice that the deceleration works but DDCSV2.1 only begins decelerating when the soft limit is exceeded.  Because of this I have to put my soft limits more than 25mm away from the hard limit switch point.  With this large 25mm buffer I can approach the limit at full speed using CONT mode and it will decelerate almost exactly to, but slightly before, the hard limit.  This operation is wasteful of table space as if forces me to give up an inch or more on each side of my table.  


Since, for every axis, the DDSCV2.1 "knows" both the "current speed" and "allowed deceleration" I suggest that the soft limit feature always "look ahead" to, regardless of axis speed and operating mode, begin its deceleration in advance so that any axis that is trying to move beyond its soft limits will reliably decelerate, trip the alarm, and arrive exactly at the soft limit position.  


The exact distance required to stop is, at all times, known by DDCSV2.1:
Stop Distance[mm] = 0.5 * (Speed[mm/min]/60)^2 / (deceleration[mm/s^2])


In G-Code operation this would be easy to implement as any command that orders an axis to go beyond its soft-limit could instead just-order that axis smoothly to the soft limit and then trigger soft limit alarm.

In MPG and CONT modes the DDCSV2.1 would have to always look at the "current axis speed" and "allowed deceleration" and intelligently begin deceleration so that both MPG and CONT commands, no matter what axis speed, also arrive exactly, and gracefully, at the soft limit (then trigger the alarm).


If implemented properly this would allow DDCSV2.1 users to put their soft limits very close to the hard limits--like within 1mm or 2mm of the hard limit.

TOM


Reply

Use props Report

15

Threads

139

Posts

517

Credits

Senior Member

Rank: 4

Credits
517
16#
Posted at 2018-10-30 18:19:19 | Only Author
Perhaps we do not understand each other.
I have #45-#48=3 and #99=400. That is, #99 is more than #45-#48 and not less.
In the video, I execute the code:
G1 X30 F600
G1 X0
For manual movements, there must be a low acceleration in order to more accurately position the axes.
For G-code, there should be as much as possible acceleration, because:
-It reduces processing time.
-The axies must accelerate to working speed as quickly as possible, because some materials cannot be cut at low speed. This leads to overheating of the cutter, burning of the material or sticking of the material to the cutter.

If this is the case, please make it disabled. Because such a decision makes it impossible to use this setting in most cases.
Because:
With a low acceleration rate, many materials cannot be cut.
There are many such materials. For example: wood, pure aluminum, thermoplastic plastics, and so on.

Also, if you set a high acceleration speed for axes in manual mode, the axes are difficult to position.
Reply Support Opposition

Use props Report

8

Threads

333

Posts

1040

Credits

Super Moderator

Rank: 8Rank: 8

Credits
1040
15#
Posted at 2018-10-30 06:30:54 | Only Author
When #2031 is set to 1, when the component of acceleration(#99) in each axis is less than #45-#48, the acceleration is determined by #45-#48.

I watched the video, I think there is no problem, the action in the video is consistent with my design idea.
Reply Support Opposition

Use props Report

15

Threads

139

Posts

517

Credits

Senior Member

Rank: 4

Credits
517
14#
Posted at 2018-10-29 22:02:04 | Only Author
Video of malfunction of parameter # 2031.
https://radikal.ru/video/wkq5retOtHU
Reply Support Opposition

Use props Report

10

Threads

24

Posts

116

Credits

Registered member

Rank: 2

Credits
116
13#
 Author| Posted at 2018-10-17 04:32:33 | Only Author
I tested the soft limit changes in version V2018-10-12-102-1 and I like what has been done--a big improvement for STEP, MPG, and CONT modes and I was able to safely move my soft limits much closer to the hard limits.

It is OK with me if soft limit behavior in automatic (G-CODE) operation is updated later.  I am unlikely to write a program that would command to a location outside of the soft limits anyway.  However, in the G-CODE case, it would be OK with me if the offending G-CODE triggered an immediate soft limit error without ever moving the axis at all.  This or maybe go to the soft-limit, stop there, and trigger the alarm--either behavior would be good.
Reply Support Opposition

Use props Report

15

Threads

139

Posts

517

Credits

Senior Member

Rank: 4

Credits
517
12#
Posted at 2018-10-16 18:06:19 | Only Author
ytliu Posted at 2018-10-16 06:15
Please tell me your relevant parameters and provide a simple test gcode . Thank you

Sending my settings and test program.
The fact is that to accelerate-decelerate axes in G-code mode, it uses data from parameters 45-48.

As for the external program for calculating the processing area, I think you can assign another important function to it, which is very lacking in DDCSV:
Calculate the time until the end of the program and until the next tool change. The value will be written at the beginning of the program, in the form of a variable.
And knowing this data, DDCSV will be able to:
-Rightly define the processing area for the soft limit
-Rightly define the processing area for the visualization of the tool path
-Display the time until the end of the program or until the next tool change (this is very important when changing the tool manually)

Most postprocessors can run an exe file with parameters.
Complex postprocessors (such as Powermill and Solidcam) allow you to implement these features without an external program. Only by their own means.

How do you rate this idea? Do you like her?

17.rar

4.96 KB, Down times: 877

Reply Support Opposition

Use props Report

8

Threads

333

Posts

1040

Credits

Super Moderator

Rank: 8Rank: 8

Credits
1040
11#
Posted at 2018-10-16 06:15:09 | Only Author
Please tell me your relevant parameters and provide a simple test gcode . Thank you
Reply Support Opposition

Use props Report

15

Threads

139

Posts

517

Credits

Senior Member

Rank: 4

Credits
517
10#
Posted at 2018-10-16 00:12:36 | Only Author
Thanks Ytliu. I got it.
I would like to adjust the function of the parameter # 2031.
When enabled, the acceleration of the axes varies greatly with G1 / G0.
Reply Support Opposition

Use props Report

8

Threads

333

Posts

1040

Credits

Super Moderator

Rank: 8Rank: 8

Credits
1040
9#
Posted at 2018-10-15 22:11:35 | Only Author
Your advice on the soft limit is very good, I will increase the corresponding processing.
Reply Support Opposition

Use props Report

8

Threads

333

Posts

1040

Credits

Super Moderator

Rank: 8Rank: 8

Credits
1040
8#
Posted at 2018-10-15 22:02:58 | Only Author
#448 is a macro variable, not a parameter. The parser assigns it, if it is in G20 mode, #448=25.4; if it is in G21 mode, #448=1.
Reply Support Opposition

Use props Report

You need to log in before you can reply Login | Register now

This forum Credits Rules

Shenzhen Digital Dream Numerical Technology Co., Ltd. support
Adress:507,A Building,Leibo Industry Zone,No. 22 Jinxiu East Road,Kengzi Street,Pingshan district,Shenzhen City,P.R. of China
Phone:13244704799
E-mail:info@ddcnc.com

TEL

0755-87654321

Wchat

Website designed by DigitalDream Technology Support
Quick Reply Back to top Back to list