FluidNC icon indicating copy to clipboard operation
FluidNC copied to clipboard

Feature: Backlash Compensation

Open nsiatras opened this issue 3 years ago • 8 comments

Machine Context

Every CNC machine

Feature Description

I often look to see if the backlash compensation feature has been Implemented in FluidNC. But the FluidNC project development says

"Our current position...

We do not support backlash compensation at this time. It requires that the firmware know which side of travel the backlash is at all times. Lightweight machines that are prone to chatter tend to scramble the backlash. Backlash compensation can make things worse. Physical means of limiting backlash like preloading tend to work better. We prefer to spend our time on other features.

If you know of any research papers addressing backlash on lightweight machines, please send them our way."

After a google search for "lightweight cnc machines and backlash compensation" I found nothing. This makes perfect sense as there is no reason to have a lightweight CNC. CNC machines are machines that are built to perform precision movements. No sane person would build a CNC machine with the intention of being "light".

Anyway... The 2 photos I upload were taken by me. As you will see Backlash compensation is something that works. Siemens, Fanuc, Heidenhain and all CNC controller manufacturers worldwide have the same opinion, as they all have Backlash Compensation in their software.

Backlash compensation is a great feature that is still been missing from FluidNC. Hope FluidNC devs can see the photo.

image

PS. My tests are done using GRBL_ESP32. I implemented backlash compensation to GRBL_ESP32 but unfortunately I cannot make it work with Arcs. It only works with G0 and G1 commands.

Other Approaches

There is no other way to solve that problem.

How I Can Help

I can run all tests on my CNC machine and get involved with the code. You can see my CNC machine on the video https://www.youtube.com/watch?v=OFZef09i1mk

nsiatras avatar Dec 26 '22 12:12 nsiatras

In case this is not getting much attention, I believe this would make sense for a lot of reasons. I don't have the time (nor the expertise in this field) to program it myself but I'll see to it to get this to someone that might

Pastitas avatar Aug 04 '23 18:08 Pastitas

In case this is not getting much attention, I believe this would make sense for a lot of reasons. I don't have the time (nor the expertise in this field) to program it myself but I'll see to it to get this to someone that might

I stopped asking for the backlash compensation feature because I implemented it into RabbitGRBL https://github.com/SourceRabbit/RabbitGRBL

Perhaps you can use it. It is compatible with ESP32

nsiatras avatar Aug 04 '23 19:08 nsiatras

This needs to be added because it makes all cnc machines SO much better.... i can't believe this is not implemented yet......

RealTadango avatar Feb 16 '24 07:02 RealTadango

This needs to be added because it makes all cnc machines SO much better.... i can't believe this is not implemented yet......

If you add backlash compensation on a lightweight CNC router you will have no difference. The performance will be exactly the same. Backlash compensation is a feature for machines with rigid structure like milling machines with friction slides. You can change your firmware to Rabbit GRBL (https://github.com/SourceRabbit/RabbitGRBL). I implemented the backlash compensation feature and the results are great Video: https://www.youtube.com/watch?v=-t-U46T7R6s

nsiatras avatar Feb 16 '24 08:02 nsiatras

This needs to be added because it makes all cnc machines SO much better.... i can't believe this is not implemented yet......

If you add backlash compensation on a lightweight CNC router you will have no difference. The performance will be exactly the same. Backlash compensation is a feature for machines with rigid structure like milling machines with friction slides. You can change your firmware to Rabbit GRBL (https://github.com/SourceRabbit/RabbitGRBL). I implemented the backlash compensation feature and the results are great Video: https://www.youtube.com/watch?v=-t-U46T7R6s

I really like the config options from FluidNC and i don't want to get something designed for another machine to run on mine. Does RabiitGRBL have a flexible spindle driver? I need one for pwm with 50hz 1100 of 1900 100% power for my machine.

RealTadango avatar Feb 16 '24 08:02 RealTadango

This is turning into a discussion about another bit of software, inappropriate here. If you want to discuss RabbitGRBL, do it on a RabbitGRBL forum.

MitchBradley avatar Feb 16 '24 17:02 MitchBradley

True. We can discuss the need for backlash compensation and in my opinion it really helps with all machines for doing small detailed work. My Y axes has 0.070mm backlash but is still very stiff and solid. It is more a drive backlash. In small details I see this in the result. Compensation would make this perfect. Think about machining PCBs where you want 0.1mm thin traces... I cannot do that now. I really like the setup of FluidNC with the configuration file and would like to use it but without the compensation it will limit me to much.

RealTadango avatar Feb 16 '24 17:02 RealTadango

This needs to be added because it makes all cnc machines SO much better.... i can't believe this is not implemented yet......

If you add backlash compensation on a lightweight CNC router you will have no difference. The performance will be exactly the same. Backlash compensation is a feature for machines with rigid structure like milling machines with friction slides. You can change your firmware to Rabbit GRBL (https://github.com/SourceRabbit/RabbitGRBL). I implemented the backlash compensation feature and the results are great Video: https://www.youtube.com/watch?v=-t-U46T7R6s

I really like the config options from FluidNC and i don't want to get something designed for another machine to run on mine. Does RabiitGRBL have a flexible spindle driver? I need one for pwm with 50hz 1100 of 1900 100% power for my machine.

You might need to adjust the PWM min value to achieve that. Take a look at the screenshot. It is the Settings editor of Focus (https://www.sourcerabbit.com/Shop/pr-i-91-t-focus-cnc-control-software.htm) Screen

You can join our discord if you need further assistance https://discord.com/invite/nRKETyjJ7E

@MitchBradley sorry for the 'inappropriate' content Mitch.

nsiatras avatar Feb 18 '24 12:02 nsiatras

http://wiki.fluidnc.com/en/development/open_issues

bdring avatar Jan 21 '25 17:01 bdring