Difference between revisions of "ElectiveMMM2016-1"
Line 132: | Line 132: | ||
* [https://www.youtube.com/watch?v=sJKJruSAT_Q 3D Systems printing process] | * [https://www.youtube.com/watch?v=sJKJruSAT_Q 3D Systems printing process] | ||
* [https://www.youtube.com/watch?v=Favha1-8RXY Print iPhone in full colour] | * [https://www.youtube.com/watch?v=Favha1-8RXY Print iPhone in full colour] | ||
+ | |||
+ | == GCode == | ||
+ | From [https://en.wikipedia.org/wiki/G-code Wikipedia on G-Code]: | ||
+ | <blockquote style="background-color: lightgrey; border: solid thin grey;"> | ||
+ | G-code (also RS-274), which has many variants, is the common name for the most widely used numerical control (NC) programming language. It is used mainly in computer-aided manufacturing to control automated machine tools. G-code is sometimes called G programming language, not to be confused with LabVIEW's G programming language. | ||
+ | G-code is a language in which people tell computerized machine tools how to make something. The "how" is defined by instructions on where to move, how fast to move, and what path to move. The most common situation is that, within a machine tool, a cutting tool is moved according to these instructions through a toolpath and cuts away material to leave only the finished workpiece. The same concept also extends to noncutting tools such as forming or burnishing tools, photoplotting, additive methods such as 3D printing, and measuring instruments.</blockquote> | ||
+ | |||
+ | Simply put, G-Code is the language that tells the machine what to do, which movements to make, when to deposit material, when to stop etc. etc.. | ||
+ | For example, a simple G-Code line that tells the machine to move to position X:10mm, Y:10mm could be: | ||
+ | G1 X10 Y10 | ||
+ | Here the code G1 is the code for ''move to''. | ||
+ | To draw a square with the 3D printer would require four such movements. Assuming we start from location X0 Y0 Z0 and want to draw a square of 10 by 10 mm: | ||
+ | G1 X0 Y10 | ||
+ | G1 X10 Y10 | ||
+ | G1 X10 Y0 | ||
+ | G1 X0 Y0 | ||
+ | |||
+ | For a list of G-Code commands an Ultimaker 3D printer understands (or a printer running Marlin) see: https://github.com/ErikZalm/Marlin/blob/Stable/Marlin/Marlin_main.cpp | ||
+ | Scrolling down will reveal the G-Code list. | ||
+ | |||
+ | An easy way to manually control your printer and send G-Codes by hand is Pronterface/Printrun: http://www.pronterface.com |
Revision as of 22:41, 16 November 2016
Contents
Schedule
Week | Group | Time | Location | Subject |
---|---|---|---|---|
1 | 1 | 8:30 - 10:10 | Prototyping space | Intro & 3D Printing |
1 | 2 | 10:30 - 12:10 | Prototyping space | Intro & 3D Printing |
2 | 1 & 2 | 8:30 - 12:10 (Teacher presence between 9:30 - 12:00) | Prototyping space | Work |
3 | 1 | 9:30 - 11:00 | Prototyping space | The Mill and Lasercutter |
3 | 2 | 11:00 - 12:30 | Prototyping space | The Mill and Lasercutter |
4 | 1 & 2 | 8:30 - 12:10 (Teacher presence between 9:30 - 12:00) | Prototyping space | Work |
5 | 1 | 9:30 - 11:00 | Prototyping space | Printing and Plotting |
5 | 2 | 11:00 - 12:30 | Prototyping space | Printing and Plotting |
6 | 1 & 2 | 8:30 - 12:10 (Teacher presence between 9:30 - 12:00) | Prototyping space | Work |
7 | 1 | 9:30 - 11:00 | Prototyping space | Human power machine project |
7 | 2 | 11:00 - 12:30 | Prototyping space | Human power machine project |
8 | 1 & 2 | 8:30 - 12:10 (Teacher presence between 9:30 - 12:00) | Prototyping space | Work |
9 | 1 & 2 | 8:30 - 12:10 (Teacher presence between 9:30 - 12:00) | Prototyping space | Work |
10 | 1 | 9:30 - 11:00 | Prototyping space | Judgement day |
10 | 2 | 11:00 - 12:30 | Prototyping space | Judgement day |
3D printing
3D printing is a widely used additive manufacturing technique. In this block you learn about the different 3D printing techniques, the advantages and disadvantages. We will also look at the language used to control many 3D printing (and many other computer controlled machines). You will see this is actually a very simple technique, however making a good 3D print is not necessarily easy. As for all techniques, experimenting is key in learning how get the most out of 3D printing
Fused Deposition Modeling (FDM)
FDM is, due to the consumer 3D printers of this type, the most widely known 3D printing technique. With FDM a layers of material are stacked on top of each other. In this way the object is build up layer by layer. This technique can be used with almost any material that can be extruded. This holds for most plastics when heated to just below the melting point. But also other materials like clay, chocolate, bee wax etc. can be used.
* FDM example * Daniel de Bruin: Analog 3D printer * Dirk Vander Kooij: Creating an Endless Chair, Dirk Vander Kooij * Interview Unfold about their installation L'Artisan Electronique featuring ceramic 3d printing * DUS Architects: Kamermaker II * RooieJoris: Real 3D printing
Stereo Litography (SLA)
SLA uses a UV laser to harden a special resin at specific points. The 3D object, in a way, grows out of the resin.
* Formlabs Form2
Selective Laser Sintering (SLS)
Laser sintering uses a laser to melt/sinter particles together. This technique can be used to print in metals.
* How metal 3D printing works * Markus Kayser: Solar Sinter
Powder bed and inkjet 3D printing (binder-jetting)
Inkjet 3D printing is a technique very similar to SLS where a laser melts small particles of material together. With inkjet 3D printing a binder is used instead of a laser. The material can be metal particles but also some type of plaster. The printer uses standard inkjet printing cardridges for printing in full colour. After printing the part is very brittle and usually needs to be impregnated with a solidifying material like epoxy or cyanoacrylate.
* 3D Systems printing process * Print iPhone in full colour
GCode
From Wikipedia on G-Code:
G-code (also RS-274), which has many variants, is the common name for the most widely used numerical control (NC) programming language. It is used mainly in computer-aided manufacturing to control automated machine tools. G-code is sometimes called G programming language, not to be confused with LabVIEW's G programming language.
G-code is a language in which people tell computerized machine tools how to make something. The "how" is defined by instructions on where to move, how fast to move, and what path to move. The most common situation is that, within a machine tool, a cutting tool is moved according to these instructions through a toolpath and cuts away material to leave only the finished workpiece. The same concept also extends to noncutting tools such as forming or burnishing tools, photoplotting, additive methods such as 3D printing, and measuring instruments.
Simply put, G-Code is the language that tells the machine what to do, which movements to make, when to deposit material, when to stop etc. etc.. For example, a simple G-Code line that tells the machine to move to position X:10mm, Y:10mm could be:
G1 X10 Y10
Here the code G1 is the code for move to. To draw a square with the 3D printer would require four such movements. Assuming we start from location X0 Y0 Z0 and want to draw a square of 10 by 10 mm:
G1 X0 Y10 G1 X10 Y10 G1 X10 Y0 G1 X0 Y0
For a list of G-Code commands an Ultimaker 3D printer understands (or a printer running Marlin) see: https://github.com/ErikZalm/Marlin/blob/Stable/Marlin/Marlin_main.cpp Scrolling down will reveal the G-Code list.
An easy way to manually control your printer and send G-Codes by hand is Pronterface/Printrun: http://www.pronterface.com