Introduction: Lego CNC/3D Printer/plotter
Anyway, I'll be updating this instructable as I make more progress on it. It won't be entirely done by the time the competition ends, but you should at least able to build the machine and control the axis (axii?)
There are 747 pieces total. The only non-Lego part is the drill bit.
- 2 lego NXT sets along with 4 touch sensors
- Various other lego parts, specifically the gear-track pieces and worm gears, and probably more
- A computer with LDD, or Lego Digital Designer
- A drill bit to sacrifice
- Some green floral foam
- A little bit of time
Anyway, on to the first step!
Step 1: Creating the Parts From the LDD Files
There are 4 parts total:
- Y axis
- X axis
- Z axis
Step 2: Wiring!
So, from here on out, I'll be referencing the two NXT "brains" as nxt1, and nxt2. I actually named the devices the same to not get them confused.
- Motor A: Long cable to the motor on the X axis that drives the drill piece. (Note, that in the model, the drill is replaced by a lego piece) This is the side opposite the gear-track side.
- Motor B: Medium cable to the motor on the base that is sitting on its side. If you are facing the side with the motors, it is the motor on the left.
- Motor C: Medium cable to the motor on the base that is sitting on its side. If you are facing the side with the motors, it is the motor on the left.
- Motor A: Long cable to the motor on the X axis that drives, well, the X axis. This is the one on the side of the worm gear, and is closer to the gear-track side.
- Motor B: Short cable connected to Y motor in center of base part.
- Sensor Port 1: Medium cable connected to touch sensor on the Z axis. This is the one on the right side if you are facing the x axis motor or the motors on the base.
- Sensor Port 2: Medium cable connected to the other touch sensor on the Z axis.
- Sensor Port 3: Medium cable connected to the touch sensor on the far side of the base.
- Sensor Port 4: Short cable connected to the closer of the two touch sensors on the base.
Step 3: The End?
Yay, now that you have the machine built, it's time to control it. Unfortunately, I don't really have much right now. I have attached two programs, both in Java, written in netbeans, that use lejos (http://lejos.sourceforge.net/). Basically, the one for the computer controls it, and the the one for the device has a few functions like auto calibrating the X and Y axis, and manually calibrating the Z axis, but it mostly just accepts commands from the computer program. These were both only test programs.
I'm currently trying to write more advanced software, but I don't have the time to do it all before the competition ends, so I will be updating this accordingly.
Please vote for my contest entry, as I know I can do some pretty awesome things with a 3d printer. Thanks if you've already voted!