# Engineering Projects/RepRap/Howard Community College/Fall2012/p1-550-wm
### Problem Statement

The team goal for this project is to install the software for the maker bot, in order to begin making actual 3d objects.

### Team Members

Walke Morgen

### Summary

Our team goal was to install the software for the cupcake cnc onto a PC and to make the 3D printer functional. We successfully installed the software for the Cupcake CNC to print 3D objects. We ran into several obstacles along the way but manages to figure out the many firmware and software issues that we encountered. Overall we accomplished our main objective which can be seen in the storyline below that we actually were able to print out several 3D objects. There are still some improvements that need to be don't to completely perfect the actual print out it creates which comes down to adjusting the settings of heat. Depending on the size of the print out you may need to increase the heat on the heated plate. Also you may need to increase the print out heat for the tool head.

### Story

Here we have listed the problems that we have run into along the way of getting this project working. We accomplished our goal which was to make the Cupcake CNC 3D printer to print 3D objects. Below you can view several of the 3D objects that were printed out by the Cupcake CNC.
Problem 1: error message from computer stating " packet read timed out" Solution: wrong usb cable connected correct cable in image 1.
Problem 2: error message "Toolhead zero: Not found" Solution: Found website (http://wiki.makerbot.com/thingomatic-doc:firmware-installation) that explains how to update the firmware. The extruder controller V3.6 must be directly connected by a usb cable to the computer and disconnected from the motherboard. Once update was completed we reconnected cable from extruder controller back to the motherboard. All communication problems resolved between maker bot and computer. Supposedly ready to print
Problem 3: One of the heating cables needed to be soldered. Heating plate not warm enough to melt the plastic being fed through. Solution: heating cable was soldered back onto connection. The key to getting the extruder head to a high temperature is to let it sit for a long period of time approximately 30 minutes or longer.
Problem 4: The Z axis servo saver was tripping, causing noise and making the print head fail to move vertically. Solution: The position of the four nuts on the four threaded posts were not leveled causing this problem with the Z- axis.
Problem 5: The makerbot will not run g-code directly from the computer, and it executes g-code incorrectly if you upload g-code to an SD card and execute it from there.
NOTE: if you stick a piece of balsa wood b/w the temp sensor and the wire that connects the two heaters it insulates the thermometer and makes is read more accurately.
Problem 6: The makerbot is actually printing the raft but is slightly curling we are currently trying to troubleshoot the curling problem. Solution: increase heat on heated platform. Blew the original power supply replaced externally with extra power supply from class. Plugged new power supply in and maker bot is working again. Did not reconnect the lights in the power source which might reduce power consumption.
Problem 7 The makerbot is now printing objects on the raft, but the raft is fused to the object that is printed, and the object appears to be smushed. Solution: increase the height between layers to prevent the tool head from pushing against the previous layer, and print larger objects to be able to pry the raft off of the finished object.
problem 8 Inaccuracy's in the printing of the objects. we reccomend looking into the finer detail settings for making the g-code

### Material List

    1. List materials used, quantity, size, cost.
    2. Describe what needs to be purchased in the future to continue working on this project.

### Software List

We have currently installed the ReplicatorG 0037 program which is an open source software program from the following website replicat.org/download

## G-Code Tutorial

What is the G Code?
The G-code is a programing language that is used by CNC (computer numerical code) machines to make parts. It is also know as the G-programming language and it is close to being a high level programming language. The G-code is used by the Cupcake CNC to print out three d objects.
History of the G-code: The G-Code was developed in the 1950's at the MIT Servomechanisms Lab. It was mainly developed because of the increase in the manufacturing sector and the use CNC machines.
What is it used for? The G-code tells your computer what to make and how to make a three dimensional object. In order to print a 3D object using the Makerbot cupcake CNC you have two options you can upload a specific design from thingiverse.com which directly converts the file into a gcode and prints using the replicatorg software. The second option is to create your own design by using a three dimensional design program such as googlesketch which creates an STL file and then you use a g-code generator program which converts your STL file into g-code so that you can print the object with the replicatorg software.
How to create G-Code:
You can go to this website to gain a better understanding of how to program using G-code http://www.cnccookbook.com/CCGWizardE.html. Using the G-Wizard G-Code Editor you can begin learning how to program in G-code. These are just a few of the codes that are used to program using G-code.
An example of a g-code script G1 X5 Y-5 Z6 F3300.0 (Move to postion <x,y,z>=<5,-5,6> at speed 3300.0) G21 (set units to mm) G90 (set positioning to absolute) G92 X0 Y0 Z0 (set current position to <x,y,z>=<0,0,0>) Here is an excellent website for learning how to program in G-code http://reprap.org/wiki/G-code There are several generator programs to develop a G-code such as SkeinForge. Skeinforge is a tool that converts a 3D design which is a STL file into G-code so that you can print the 3D design. The advantage of this script is that it is open source meaning it is free and can be found on the internet the disadvantage of this program is that it is prone to slicing errors. This is a website that details how to use the Skeinforge program http://wiki.makerbot.com/skeinforge Then there is SuperSkein which is also open source and is very simple and fast to use.

### Time

Put one number here. Hours. Total hours that everyone worked on the project. Do not estimate. Do not talk about it. ADD.

### Helpful Websites

* http://reprap.org/wiki/G-code
* http://www.cnccookbook.com/CCGWizardE.html
* http://wiki.makerbot.com/skeinforge
* http://wiki.makerbot.com/thingomatic-doc:firmware-installation

### Next Steps

List specific details, advice, describe the current problems that the next team faces associated with the project here.

## Details and information on how to operate the Cupcake

Transfer of knowledge:
How to run the makerbot:
* Turn on the machine
* plug it into the computer
* open ReplicatorG. It should automatically connect. I usually recommend opening the control panel at this point and set the temperature to 200c as it usually takes a while to heat up.
4: To load an object, press File, Open, and then select a ‘.stl’ file
5: Generating functioinal G-code for an object:
The makerbot does not recognize the ‘E’ axis, and hangs on the code when it reaches a command that attempts to use it. If you simply remove all ‘E’ from the program, it ignores the left over numbers and runs normally. You also have to add in the line “M109 S160 T0 (Heated Platform Temperature to 160 Celsius)” under the line that prompts the tool head to heat up.
6: Printing an object: Align the print head so that it is centered a few millimeters above the build platform. slip the calibration sticky note under the print head. Slide the special calibration sticky note, keeping it under the print head while lowering the print head until the print head pinches the special calibration sticky note. Then raise the print head back up until the special calibration sticky note is free. Your print head is now properly positioned. Press the first button in the upper left hand corner of ReplicatorG and the makerbot will rise up, do a test extrusion after reaching the proper temperature, ask you to clear the crap it just made, and start printing!