3D Printer

February 16th, 2009

printer_bladeThe objective of this project is to construct an apparatus that carves symmetric circular shapes, such as a simple chess piece. The carving will be done by a mechanical arm with a blade attached scraping away material, which is spun on a rotating disk. The user will have the option of controlling the arm manually using the keypad or have an object automatically carved from the material by sending the system a graphic file. This file will be converted into a set of data points at the PC that will correspond to the desired shape. This converted data set is then sent to the system only during the automated carving process. The act of carving will be accomplished with stepper motors and external peripheral devices controlled by a Motorola MCORE™ digital microprocessor.

This project was chosen based on its unique idea and suitability for the project requirements. The concept is simple but has implementation challenges. It has complexity in both the mechanical hardware and the embedded software, or firmware, which operates the mechanical apparatus. Challenges exist in ensuring real-time capability and precision during the automated carving process.

printer_candlecarveProject Overview

This system was built around the Axiom CMD-2001 Development Board, which contains the Motorola MMC2001 MCORE Microcontroller, a variable speed direct-current (DC) motor, two stepper motors, and several limit switches. In addition, the system receives input from a personal computer (PC).

System Input

The primary feature of this system, which is the automated carving process, beings with an input image that illustrates the contour of the desired object. This image is translated into a data file by MATLAB and the data file is then downloaded to the MCORE. The data is transformed after the user provides the system with some input parameters based on the initial size of the material and the desired size of the finished carving. Carving begins after the input is confirmed by the user. The cutting head is moved by a control system that interprets the transformed data.

User Interface

This project interfaced with the user via a series of menu and wizards system to display and prompt for information. The input and output of information required a substantial amount of code to be written. Therefore, a User Interface API was written to make project coding easier for the developers. The API consisted of different commands for display and input with features such as 2 line display and input as well as time delays.

The system also offers a main mode for the user to control the lathe manually from a keypad. Numbers on the keypad correspond to directions that the lathe can move. They can carve using this mode and also set desired maximum and minimum radiuses for carving.

printer_apparatus