penplotter
The Project
This project, penplotter converts any given image on a computer to a physical drawing on a piece of paper. We used no imaging libraries for filters that convert an image into a line drawing; all images are filtered with our own code. We developed the CAD model ourselves entirely in Onshape. Our image processing pipeline: • resizing • luminosity greyscale • Gaussian blur • Sobel edge detection • greyscale thresholding • Zhang-Suen thinning • artifact and pixel cleanup • convert to components We now have a clean line drawing which we can convert component by component to the stepper motors as commands. We deliberately avoided AI for programming as we wanted to ensure a deep understanding of the code, especially the image processing. We watched 3Blue1Brown and Computerphile videos to help us deeply understand concepts to use in the code such as Gaussian distribution, convolution and other related concepts. The biggest challenges were with the hardware/electronics: working with power ratings, avoiding motor overheating and calibrating stepper distance. We solved this by using smaller steps increments and using a separate power supply for the servo that controls pen up/pen down to avoid drawing excessive current from the main power supply. We were inspired by the growing use case of CNC precision machines such as 3D printers and even surgery robots. Our penplotter is an example of a functional CNC machine demonstrated with drawing capabilities but could be altered to complete more complex tasks in the future. We have open-sourced it on GitHub: https://github.com/Ewan-Dev/penplotter
About the team
Team members
More cool Hardware projects
The Smart Wheelchair
Hardware


Tweet Treat
Hardware
