This is a fully 3D printed Rack and Pinion (RAP) based Computerized Numerical Controlled (CNC) Plotter of which serves as a proof of concept for a 3d printed Rack and Pinion CNC milling Machine and was designed entirely in Fusion 360.
The aim of this project will be to design and develop a Fully 3D printed Rack and Pinion Driven CNC Plotter, as to evaluate such a design concept's feasibility to be adapted into a Fully 3D printed Rack and Pinion Driven CNC Router of Larger size, whilst developing a workflow for concurrent and subsequent projects of which will utilize a similar manner of image processing.
This Plotter is driven by 3 28BYJ-48 5V stepper motors of which have been modified to operate as Bi-pole stepper motors. There are 2 of these motors on the x-axis and 1 on the y axis.
The motion of the Tool head is facilitated by a Rack And Pinion Motion System, in which the frame of the machine is composed of an integrated spur gear rack of which interacts with the stepper motors via a spur gear. The stepper motors are mounted to a carriage of which moves along the rail of the frame of the machine. This system is employed along both the X-axis and Y-axis.
The tool head operates on the Y-axis and its carriage is stabilized by 2 8mm aluminium rods. mounted above the gear rack, to the X carriage.
The tool is held in place along a rail and is actuated via a servo motor with a rack and pinion gear system. The pen mount possesses a spring-loaded tensioning system to ensure proper plotting in spite of any minute changes in height due to an uneven canvas.
The system is modular and a wide variety of tool heads such as a soldering tool can be added to the gantry stably.
The system is controlled by a GRBL CNC Shield Board on top of an Arduino Uno Microcontroller of which is loaded with custom GRBL plotter firmware. Installed onto the board are DRV8825 stepper motor drivers and the Board is set up with 3 limit switches, along each rail of motion.
The Machine receives commands from Universal G-Code Sender (UGS) Platform Software, which enables us of the plotter. https://github.com/winder/Universal-G-Code-Sender.
The workflow for this plotter is as follows. Firstly, Images are imported into Inkscape Graphic Editing software, where the outlines of the images are converted to vector paths and saved in the form of an SVG vector file.
Images in a Png or Jpeg can be defined by a collation of grid squares or pixels, of which each can be filled with one colour, cumulatively representing an image. Due to such, on scaling an image, the overall quality and definition of such image is degraded as the sizes of these pixels are also scaled proportionally, making these formats of images unsuitable for tool path or design generation as they are at their best quality at their native size, whilst scaling will be required in the adaptation of the image for use.
As such the outlines of these images are converted into a vector format via Inkscape's path function, in which instead of via pixels, the image is characterized by a cumulation of point, where the distance and direction (vector displacement) of each point from the subsequent point in the path is stored in the SVG file. Upon being scaled linearly, the displacement of each point within the image path is also scaled linearly, preserving the quality of the image upon adaptation within a design.
Hence such a method of file conversion to SVG is utilized within this workflow and within other workflows where graphics must be imported into a modelling software such as Fusion 360 for use in a design. Examples of this can be seen on the Custom Designs Page.
Next. the Vector SVG can be processed using a custom GRBL G-code Plugin for Inkscape where the SVG is used to generate a toolpath and instructions for the Plotter to later execute.
The G-code File can now be imported into Universal G-Code Sender (UGS) Platform Software of which relays the G-code to the Arduino Microcontroller of the RAP CNC.
A piece of paper is then placed unto the workpiece of the CNC and held in place with binder clips, the tool head is homed using the limit switches, the ink primed via a plotting a starter strip and then the G-code executed.
This is the full unedited video below
This machine was designed as a prototype to test various design techniques and to act as a proof of concept for a fully 3D printed Rack And Pinion CNC Router, however, this project has revealed some shortcomings of this concept.
Firstly it is costly and time-consuming to manufacture the large rack and pinion rails of the machine, whose length is limited by both cost and the built area of the 3D printer it was made on.
Next, the 3d printed nature of the rack and pinion gears translated to the gear teeth being large to support the durability of the teeth, hence leading to loss of machine accuracy, at least on this scale of design.
The utilized 28BYJ-48 are unsuitable for the driving of this machine due to their low torque and low stalling load, even in their Bipolar configuration, hence necessitating larger Nema Stepper motors in future CNC projects.
In conclusion, it was decided that a fully 3d printed Rack and Pinion CNC Router is not feasible to be constructed in a time and cost-efficient manner, when compared to belt-driven or lead screw driven CNC machines.
However via this project, a satisfactory Workflow was generated for future CNC projects, and the potential design improvements of this system and lessons learned in the construction of this machine will influence the next CNC of which will be constructed