I want to make my own CNC machine from scratch because it's cheaper to make than buy one already made. I noticed that some machines go for US$10,000s and I cannot understand how they can cost that much to build. I am not afraid to learn what I need to learn to make one.
I can do basic Arduino programming and stuff. I understand the concept of G-Code, its not that hard. The thing I cannot understand is how you go from G-Code to moving the stepper motors.
How does a controller translate a move $x$ 20 units to moving the stepper $x$ amount of steps and keep dimensional accuracy? If the CAD g-code says move 200 mm in the $x$ direction, how to you translate the g code to tell the stepper motor that 200 mm?
Any help is greatly appreciated. If you need clarification, please ask in the comments.