Skip to content

15. System integration

Overview of week 15 assignment

  1. Individual assignment
    1. Design and document the system integration for your final project

1. Individual assignment

A. Triage

This week, I updated my final project plan. With only three weeks left until the final presentation, I decided to simplify the project. I decided to make a mobile pen plotter with an unlimited print area, not a 3D printer.

Key points:

  • The machine will function as a pen plotter instead of a 3D printer.
  • Firmware like GRBL or Marlin won’t be used, as mecanum wheel control will be managed externally and no extruder or spindle control needed for now.
  • I plan to design and build Mecanum wheels, but will use purchased ones if time is limited.

B. System

This mobile pen plotter robot interprets G-code commands sent via serial from a PC. A Raspberry Pi Pico processes the G-code and outputs motor control signals to five A4988 motor drivers. Five limit switches, mounted on each side and at the base of the arm, send a zero signal when triggered, enabling zeroing. The A4988s are powered by a 12V AC/DC converter.

System diagram

system_diagram

C. Mechanical design and mahine design

This is an updated version of the design from the Week 02 assignment. Some changes were made to meet current requirements, while other parts were kept the same to allow for future modifications, especially for 3D printing.

No. Item Status Note
1 Base dimensions Completed Narrowed to form a square wheel layout
2 Arm mechanism In Progress Shaft for balanced lift, 60:1 worm gear for precision
3 Z-axis motor bracket Not started Repositioned
4 Arm In Progress Designed for 3D printing; assembled with M5 bolts, nuts, and bearings
5 Limit switch mounting Not Started Bumpers on all four sides; Z-axis switch at center of arm for calibration
6 Pen plotter mounting Not Started
7 Frame In Progress Side and bottom made from acrylic; joined with press-fit and bolts, includes handle
8 Top cover Not Started Filament spool space closed with acrylic board
9 PCB mounting and enxlosure Not Started Will be mounted in front side of the frame with a 3D printed enclosure
10 USB / power cable management Not Started Guide and Cord reel

D. Programming

The programming will be based on the Arduino code on Week 14 assignment, with the following enhancements:

  1. Increase the number of motors from 2 to 5
  2. Map four motors to enable mecanum wheel control for omnidirectional movement
  3. Add a Z-axis motor for pen plotter
  4. Extend compatibility to support additional G-code commands (e.g., G28)
  5. Add limit switches and zeroing

E. Electronics design plan

a. components

The basic electronic components and wiring will remain the same as in the Week 10 assignment, but with an increased number of motors and drivers.

No. Item Quantity Note
1 NEMA17 Stepper Motor 5 For mecanum wheels (4) and Z-axis (1)
2 A4988 Stepper Motor Driver 5 One per motor
3 Raspberry Pi Pico 1 Main controller
4 Male/Female Pin Header Set 2 For connecting Pi Pico to the PCB
5 XH2.54-4 Connectors 5 For motor wiring on the PCB
6 XH2.54-4 Cables 5 To connect stepper motors to the PCB
7 Limit Switch 5 For endstop detection (4 sides + Z-axis)
8 Female Pin Headers (Limit Sw.) 5 To connect limit switches to the PCB
9 12V AC/DC Adapter 1 Power supply for motors and controller
10 DC Plug Connector 1 For connecting power adapter to the PCB

b. PCB design

The PCB design should prioritize modularity and expandability, as my "final" project is not the actual final version.

  1. Support for five A4988 motor drivers mounted via pin headers
  2. XH2.54-4 connectors for stepper motor wiring
  3. Pin headers for endstops
  4. Pin headers for Raspberry Pi Pico
  5. Additional pins for:
    1. Future input device testing
    2. Expanding with more motor drivers later

F. Project manegement

Please click "See the board"

2. Files

  • WIP Fusion file in the middle of this page

Afterthoughts

  • "I'm afraid of time"