FAB LAB IN A BOX¶
Hero Shot¶
Summary¶
During Machine Week, we designed and built FabLab in a Box—a compact, articulated robotic arm capable of plotting, laser engraving, and pick-and-place operations. Inspired by open-source projects like the “20 Square Feet Factory,” we extended the concept to develop a versatile robotic platform using articulated kinematics, salvaged components, and custom 3D-printed parts. The system was integrated using RAMPS 1.4 electronics, Marlin firmware, and multiple toolheads including a gripper, pen holder, and laser module. Through calibration, inverse kinematics programming, and practical testing, we were able to simulate real-world robotic tasks and prepare for future add-ons such as a 3D printing head and 4th-axis control.
Work Process Detail¶
1. Brainstorming & Project Selection¶
- Initiated team discussion to choose a creative and technically challenging idea for Machine Week.
- Considered three robotic kinematics: Articulated, SCARA, and Cartesian.
- Selected Articulated kinematics for its mechanical advantages and unique motion profile.
2. Research & Reference Design¶
- Studied the open-source project 20 Square Feet Factory.
- Decided to build an enhanced version tailored for multifunctional use (plotting, engraving, gripping).
- Named the system FabLab in a Box to reflect its modular, compact, all-in-one capability.
3. Design Finalization & Planning¶
- Defined a 3 DoF articulated arm structure.
- Planned multi-toolhead support: pen plotter, laser, gripper, and future 3D printer.
- Delegated tasks across the team: mechanical, electronics, programming, and integration.
4. 3D Modeling & Printing¶
- Modeled parts in Fusion 360.
- Printed components in PLA with reinforced infill for stability.
5. Local Sourcing & Salvage¶
- Purchased required mechanical parts locally: bearings, screws, nuts, washers.
- Recycled motors and belts from unused 3D printer kits.
6. Mechanical Assembly¶
- Labeled and organized all parts for efficient assembly.
- Resolved bearing mismatch using tape shimming.
- Fully assembled arm in 2 days.
7. Electronics Setup & Testing¶
- Installed RAMPS 1.4 board with A4988 stepper drivers.
- Used 12V power supply, verified voltage and current with a multimeter.
- Pre-tested motors and limit switches separately.
8. Firmware & Serial Communication¶
- Uploaded Arduino-based firmware.
- Tested movement via Serial Monitor and YAT.
9. Calibration & Base Setup¶
- Built a flat MDF base plate with coordinate grid.
- Added aluminum rails for rigidity.
- 3D printed calibration jigs to align joints.
- Tuned joint positions and updated kinematic values in firmware.
10. Gripper Design & Pick-and-Place¶
- Designed and printed a dual-finger gripper.
- Controlled with stepper motor connected to RAMPS.
- Stacked blocks labeled A, B, and C using YAT-based serial commands.
11. Frame Enclosure¶
- Constructed aluminum cube frame to support future acrylic enclosure.
12. Plotting System Integration¶
- Flashed Marlin firmware with robot-specific configuration.
- Used Pronterface to control motion.
- Converted SVGs to G-code using Inkscape Laser Tool plugin jtech laser gcode.
- Successfully plotted images like the Fab Foundation logo.
13. G-Code Coordinate Adjustments¶
- Used G92 commands to manually define origin.
- Corrected homing offsets dynamically via G-code commands.
14. Laser Engraving Setup¶
- Laser-cut a custom laser mount for the toolhead.
- Calibrated Z-offset and tested laser focus.
- Engraved logos on paper using Marlin + Pronterface.
15. Final Testing & Evaluation¶
- Completed testing of gripper, plotting, and engraving functions.
- Validated full motion and command precision.
16. Extension (Work-in-Progress)¶
- Designed and prototyped a 4th axis rotary head using SolidWorks.
- Exploring integration of 3D printing functionality.
Learning Outcome¶
This project gave us hands-on experience in full-cycle machine development—from mechanical design and fabrication to electronics integration, firmware customization, and motion control programming. We deepened our understanding of robot kinematics, serial communication,firmware behavior, and tool-path generation using open-source tools. The collaboration also enhanced our team dynamics, problem-solving, and prototyping skills. Most importantly, it proved that with resourcefulness and a clear vision, it’s possible to build a multi-functional robotic system within a short time using accessible materials.
Digital Files¶
Resources¶
- 20sffactory - 3D Printed Robot Arm
- GitHub - ftobler/robotArm
- Marlin WSL Setup - YouTube
- Nema 17 with Gearbox
- Robotic Arm as 3D Printer - Thingiverse
- Community Robot Arm GitHub
- 2L-Robot-Arm-Marlin GitHub
- Arduino Forum - RAMPS 1.4
- Robot ARM with ESP32 - YouTube