Laser Engraver
This project was conceived around a laser module I found on Amazon. The development process was iterative, after a working hardware prototype was achieved I focused on improving the software architecture and adding features.
The Laser Engraver is controlled by an ESP32 which provides a web interface over WIFI. Vector graphics files are transmitted in chunks over WIFI, this allows arbitrarily large or complex vector files to be processed by the ESP32 without file size or memory constraints.
The web interface includes these features:
- Graphics engraving with SVG vector graphics files, client-side processing using Raphael JavaScript library.
- Text engraving with custom font files, client-side processing using OpenType JavaScript library.
- Operational overrides (e.g. travel speed, laser beam intensity, microstepping).
The hardware was built with these components:
- ESP32 MCU
- 28BYJ-48 stepper motors
- ULN2003 stepper motor drivers
- 2300mw 445nm laser module
Early prototypes were handmade construction as featured in this demo video.
The laser beam is directed along the X and Y axis using a pair of mirrors that are driven directly by stepper motors. This control scheme produced low resolution engravings so a better solution was required. To improve resolution, I designed and 3D printed a tensioned pulley mechanism that reduces the step angle and eliminates backlash.
Laser Engraver v5.0 using this improved mechanism is presented below.