"Tiger" drawn by polar drawing machine


The drawing paper is stuck on the rotary plate. By rotating the plate, the angle phi can be adjusted. The rotary plate is driven by a NEMA 17 stepper motor, which allows fast and accurate positioning.

Exploded view of the rotary plate


The linear axis is predominantely built of fischertechnik parts. This measure saves 3D printing costs and time. Moreover, fischertechnik parts can be reused in other projects.

The linear axis is driven by a NEMA 14 stepper motor. Unlike the NEMA 17 motor, it has less torque but a higher rotational speed, which is essential due to the high gear redcution at the screw. Although the stepper motor allows precise positioning, a limit switch is required to set a reference point for calibration purposes.


The pen lift mechanism is designed to lift the pen up and down quickly. Instead of using a servo motor which often causes jitter and lacks stability, I prefer using a simple DC Motor, which rotates a cam disk. The cam disk either pushes the pen down or lets the return spring push the pen up. There is a limit switch to set the end position.


The microcontroller could be a project on its own as it is a plug-and-play controller with integrated motor drivers. It focuses on controlling fischertechnik hardware, such as DC Motors and a variety of different sensors.

Plug-and-play microcontroller for fischertechnik hardware


How to get a plot from a bitmap?

Step1: Open the bitmap in Inkskape, vectorize it and export it as.dxf file

Step 2: Generate G-code with an CAM processor

Step 3: Consisting of Cartesian coordinates, the G-code has to be transferred to polar coordinates. Therefore, I have written a Java applet.

Step 4: Transfer the polar G-code to the drawing machine. The Arduino runs a G-code interpreter in order to execute the commands. It controls the stepper motors so that the plot is drawn on the peace of paper.