SlideShare a Scribd company logo
3D Print with Delphi 
Yes, we scan… 
http://en.wikipedia.org/wiki/Web_of_Things 
Max Kleiner 
Script: 362_maxon3D_EKON18.TXT
Agenda 
(3D Printing Web of Things) 
2 
• What is 3D with physics / elements (xyz) 
• 3D Printing Overview, History 
• Programming in G-Code or Turtle 
• G-Code Motor Firmware ex. Servo 
• Doodle 3D API 
• NC Code Examples Test 
http://scholz2000.com/ 
A Short History of Time 
1991 Application Program 
1995 Application 
1998 Applet 
2010 App 
2015 A (Scholz2000, Android, Arduino, ARM)
Some Theory and Practise 
• Digital Printing World is build on Analog World 
• 
• 
• 
•• 
• 
3 
070_pas_functionplotter_digital2.txt, 
Ex. OpenGL Robot, Landscape Flight
33DD VVeeccttoorrss 
• 
4 
Ex. 530_3DLab.txt
Need Printer Things 
Printing technology: FFF (Fused Filament Fabrication) 
Printing volume: 170x170x160m 
Layer resolution: 100μ (0.1mm) 
X-Y-Z precision: 20μ (0.02mm) 
Filament diameter: 1.75mm 
Heated bed: No 
Bed autoleveling: Yes 
Printing material: PLA (any material that does not require 
a heated bed) 
Time to first print-out: <1m 
Injector diameter: 0.4mm 
Filament capacity: 500gr 
Dimensions: 275x275x360 
Approx. weight: 7Kg 
Chassis: Unibody aluminum 
5 
Ex. 3DDrucken_auf_dem_Weg_zur_Massen.pdf
Proof of Concept - Lord of the Prints 
6
Case Study Simulation 
7 
import httprocessing.*; TurtleSim 
String boxIP = "10.0.0.188"; 
PostRequest post = new PostRequest("http://"+boxIP+"/d3dapi/printer/print"); 
void setup() { 
post.addData("gcode", "G28 X0.0 Y0.0 Z0.0"); //Send printer to the x0 and y0 position 
post.addData("start", "true"); 
post.send(); 
size(100, 100);
Use Case Diamond Print - Shine 
on you crazy… 
void draw() { 
//press a key to activate 
if (keyPressed) { 
point(mouseX,mouseY); 
//makes the printer move to the mouse location. 
//Note that the X and Y will expand if you expand the size() and it is possible that you 
make the printer move outside of its border! 
//This can do harm or damage to your 3D printer!! 
post.addData("gcode", "G1 X"+mouseX+" Y"+mouseY+" F5000"); 
post.addData("start", "true"); 
post.send(); 
} 
8 
var idHTTP, http1: TIDHTTP; 
idHTTP2: TIDHTTPRequest; 
zipStream: TFileStream; 
Send a command over http to COM on board to move ServoM
Solution Arduino G-Code 
9 
G-Code firmware 
void setup() { 
// initialize digital pin as an output. 
pinMode(ledPin11, OUTPUT); 
Serial.begin(9600); 
void loop () { 
val = Serial.read(); //read serial port 
if (val !=-1){ 
if (val=='1'){ 
digitalWrite(ledPin1,HIGH); 
} 
else if (val=='A'){ 
digitalWrite(ledPin1,LOW); 
} 
Tutor: http://www.softwareschule.ch/download/maxbox_starter18_3.pdf
Solution Doodle3D Rest G-Code 
http://www.softwareschule.ch/examples/306_SPS_doodle3Dhttp_command.txt 
http://www.softwareschule.ch/examples/443_webserver_arduino_light4motor.txt 
10 
G-Code is a commonly use language to control CNC machines. G-Code is a 
light-weight, simple to parse format, designed to be able to run on modest 
hardware, such as the Arduino loaded with this firmware (in this case). It is a 
format that is prepared in advance and created from the digital design files 
(CAD files). 
The G-Code firmware source is available from SourceForge as part of the 
RepRap Arduino firmware package. 
http://www.doodle3d.com/help/g-code
11 
Arduino G-Code Interpreter 
1.1 Introduction 
1.2 Files 
1.2.1 Installation 
1.3 Usage 
1.3.1 Firmware Configuration 
1.3.1.1 X_STEPS_PER_INCH 
1.3.1.2 X_STEPS_PER_MM 
1.3.1.3 X_MAX_SPEED 
1.3.1.4 X_MOTOR_STEPS 
1.3.1.5 Y_*, Z_* 
1.3.1.6 FAST_XY_FEEDRATE and FAST_Z_FEEDRATE 
1.3.2 Sending Commands 
1.4 Implementation 
1.4.1 G-Codes 
1.4.2 M Codes 
1.5 TODO 
1.6 Bugs 
356_3D_printer.txt 
http://en.wikipedia.org/wiki/Household_appliances
Test the Print 
http://192.168.1.40:8080/R 
12 
Its heavy duty unibody aluminum chassis, along with its light extruder, allow for high printing speeds. 
The materials the printer parts are made of have been carefully selected to be both strong 
and lightweight, and were tested for structural resistance in our manufacturing facilities.l... ;).
Thanks! Links to Rights 
the source is the code 
http://www.softwareschule.ch/maxbox.htm 
http://sourceforge.net/projects/maxbox 
http://sourceforge.net/apps/mediawiki/maxbox/ 
http://en.wikipedia.org/wiki/Arduino 
http://www.softwareschule.ch/download/webofthings2013.pdf 
Book Patterns konkret 
http://www.amazon.de/Patterns-konkret-Max-Kleiner/dp/3935042469 
maXbox 
https://github.com/maxkleiner/maXbox3/releases 
http://www.cnc-arena.com/de/forum/gcode-programmierung-fuer-3d-in-c--22109.html 
http://www.doodle3d.com/help/api-documentation 
http://replicat.org/mcodes 
http://www.doodle3d.com/help/g-code 
http://simplegcoder.com/js_editor/ 
13
Questions? Print a World 
hack the earth 
14 
Yes, we hack… 
https://github.com/maxkleiner/maXbox3/releases

More Related Content

Similar to A 3D printing programming API

Tutorial 38 3D Print Coding
Tutorial 38 3D Print CodingTutorial 38 3D Print Coding
Tutorial 38 3D Print Coding
Max Kleiner
 
Computer graphics
Computer graphicsComputer graphics
Computer graphics
amitsarda3
 
Deep Learning Edge
Deep Learning Edge Deep Learning Edge
Deep Learning Edge
Ganesan Narayanasamy
 
Static analysis of C++ source code
Static analysis of C++ source codeStatic analysis of C++ source code
Static analysis of C++ source code
PVS-Studio
 
Static analysis of C++ source code
Static analysis of C++ source codeStatic analysis of C++ source code
Static analysis of C++ source code
Andrey Karpov
 
Gdc09 Minigames
Gdc09 MinigamesGdc09 Minigames
Gdc09 Minigames
Susan Gold
 
Computer graphics
Computer graphics Computer graphics
Computer graphics
shafiq sangi
 
Parallel Futures of a Game Engine
Parallel Futures of a Game EngineParallel Futures of a Game Engine
Parallel Futures of a Game Engine
Johan Andersson
 
Starting Raspberry Pi
Starting Raspberry PiStarting Raspberry Pi
Starting Raspberry Pi
LloydMoore
 
Vectorization on x86: all you need to know
Vectorization on x86: all you need to knowVectorization on x86: all you need to know
Vectorization on x86: all you need to know
Roberto Agostino Vitillo
 
Getting started with Intel IoT Developer Kit
Getting started with Intel IoT Developer KitGetting started with Intel IoT Developer Kit
Getting started with Intel IoT Developer Kit
Sulamita Garcia
 
Lab Practices and Works Documentation / Report on Computer Graphics
Lab Practices and Works Documentation / Report on Computer GraphicsLab Practices and Works Documentation / Report on Computer Graphics
Lab Practices and Works Documentation / Report on Computer Graphics
Rup Chowdhury
 
426 lecture 4: AR Developer Tools
426 lecture 4: AR Developer Tools426 lecture 4: AR Developer Tools
426 lecture 4: AR Developer Tools
Mark Billinghurst
 
3d printer manual
3d printer manual3d printer manual
3d printer manual
9601865455
 
Programar para GPUs
Programar para GPUsProgramar para GPUs
Programar para GPUs
Alcides Fonseca
 
Intel galileo gen 2
Intel galileo gen 2Intel galileo gen 2
Intel galileo gen 2
srknec
 
Intro to GPGPU Programming with Cuda
Intro to GPGPU Programming with CudaIntro to GPGPU Programming with Cuda
Intro to GPGPU Programming with Cuda
Rob Gillen
 
CNC 3-Axis Stepper Motor Shield
CNC 3-Axis Stepper Motor ShieldCNC 3-Axis Stepper Motor Shield
CNC 3-Axis Stepper Motor Shield
handson28
 
.Net Gadgeteer
.Net Gadgeteer .Net Gadgeteer
.Net Gadgeteer
Wade Zhu
 
Android Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NC
Android Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NCAndroid Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NC
Android Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NC
Jim Tochterman
 

Similar to A 3D printing programming API (20)

Tutorial 38 3D Print Coding
Tutorial 38 3D Print CodingTutorial 38 3D Print Coding
Tutorial 38 3D Print Coding
 
Computer graphics
Computer graphicsComputer graphics
Computer graphics
 
Deep Learning Edge
Deep Learning Edge Deep Learning Edge
Deep Learning Edge
 
Static analysis of C++ source code
Static analysis of C++ source codeStatic analysis of C++ source code
Static analysis of C++ source code
 
Static analysis of C++ source code
Static analysis of C++ source codeStatic analysis of C++ source code
Static analysis of C++ source code
 
Gdc09 Minigames
Gdc09 MinigamesGdc09 Minigames
Gdc09 Minigames
 
Computer graphics
Computer graphics Computer graphics
Computer graphics
 
Parallel Futures of a Game Engine
Parallel Futures of a Game EngineParallel Futures of a Game Engine
Parallel Futures of a Game Engine
 
Starting Raspberry Pi
Starting Raspberry PiStarting Raspberry Pi
Starting Raspberry Pi
 
Vectorization on x86: all you need to know
Vectorization on x86: all you need to knowVectorization on x86: all you need to know
Vectorization on x86: all you need to know
 
Getting started with Intel IoT Developer Kit
Getting started with Intel IoT Developer KitGetting started with Intel IoT Developer Kit
Getting started with Intel IoT Developer Kit
 
Lab Practices and Works Documentation / Report on Computer Graphics
Lab Practices and Works Documentation / Report on Computer GraphicsLab Practices and Works Documentation / Report on Computer Graphics
Lab Practices and Works Documentation / Report on Computer Graphics
 
426 lecture 4: AR Developer Tools
426 lecture 4: AR Developer Tools426 lecture 4: AR Developer Tools
426 lecture 4: AR Developer Tools
 
3d printer manual
3d printer manual3d printer manual
3d printer manual
 
Programar para GPUs
Programar para GPUsProgramar para GPUs
Programar para GPUs
 
Intel galileo gen 2
Intel galileo gen 2Intel galileo gen 2
Intel galileo gen 2
 
Intro to GPGPU Programming with Cuda
Intro to GPGPU Programming with CudaIntro to GPGPU Programming with Cuda
Intro to GPGPU Programming with Cuda
 
CNC 3-Axis Stepper Motor Shield
CNC 3-Axis Stepper Motor ShieldCNC 3-Axis Stepper Motor Shield
CNC 3-Axis Stepper Motor Shield
 
.Net Gadgeteer
.Net Gadgeteer .Net Gadgeteer
.Net Gadgeteer
 
Android Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NC
Android Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NCAndroid Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NC
Android Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NC
 

More from Max Kleiner

EKON26_VCL4Python.pdf
EKON26_VCL4Python.pdfEKON26_VCL4Python.pdf
EKON26_VCL4Python.pdf
Max Kleiner
 
EKON26_Open_API_Develop2Cloud.pdf
EKON26_Open_API_Develop2Cloud.pdfEKON26_Open_API_Develop2Cloud.pdf
EKON26_Open_API_Develop2Cloud.pdf
Max Kleiner
 
maXbox_Starter91_SyntheticData_Implement
maXbox_Starter91_SyntheticData_ImplementmaXbox_Starter91_SyntheticData_Implement
maXbox_Starter91_SyntheticData_Implement
Max Kleiner
 
Ekon 25 Python4Delphi_MX475
Ekon 25 Python4Delphi_MX475Ekon 25 Python4Delphi_MX475
Ekon 25 Python4Delphi_MX475
Max Kleiner
 
EKON 25 Python4Delphi_mX4
EKON 25 Python4Delphi_mX4EKON 25 Python4Delphi_mX4
EKON 25 Python4Delphi_mX4
Max Kleiner
 
maXbox Starter87
maXbox Starter87maXbox Starter87
maXbox Starter87
Max Kleiner
 
maXbox Starter78 PortablePixmap
maXbox Starter78 PortablePixmapmaXbox Starter78 PortablePixmap
maXbox Starter78 PortablePixmap
Max Kleiner
 
maXbox starter75 object detection
maXbox starter75 object detectionmaXbox starter75 object detection
maXbox starter75 object detection
Max Kleiner
 
BASTA 2020 VS Code Data Visualisation
BASTA 2020 VS Code Data VisualisationBASTA 2020 VS Code Data Visualisation
BASTA 2020 VS Code Data Visualisation
Max Kleiner
 
EKON 24 ML_community_edition
EKON 24 ML_community_editionEKON 24 ML_community_edition
EKON 24 ML_community_edition
Max Kleiner
 
maxbox starter72 multilanguage coding
maxbox starter72 multilanguage codingmaxbox starter72 multilanguage coding
maxbox starter72 multilanguage coding
Max Kleiner
 
EKON 23 Code_review_checklist
EKON 23 Code_review_checklistEKON 23 Code_review_checklist
EKON 23 Code_review_checklist
Max Kleiner
 
EKON 12 Running OpenLDAP
EKON 12 Running OpenLDAP EKON 12 Running OpenLDAP
EKON 12 Running OpenLDAP
Max Kleiner
 
EKON 12 Closures Coding
EKON 12 Closures CodingEKON 12 Closures Coding
EKON 12 Closures Coding
Max Kleiner
 
NoGUI maXbox Starter70
NoGUI maXbox Starter70NoGUI maXbox Starter70
NoGUI maXbox Starter70
Max Kleiner
 
maXbox starter69 Machine Learning VII
maXbox starter69 Machine Learning VIImaXbox starter69 Machine Learning VII
maXbox starter69 Machine Learning VII
Max Kleiner
 
maXbox starter68 machine learning VI
maXbox starter68 machine learning VImaXbox starter68 machine learning VI
maXbox starter68 machine learning VI
Max Kleiner
 
maXbox starter67 machine learning V
maXbox starter67 machine learning VmaXbox starter67 machine learning V
maXbox starter67 machine learning V
Max Kleiner
 
maXbox starter65 machinelearning3
maXbox starter65 machinelearning3maXbox starter65 machinelearning3
maXbox starter65 machinelearning3
Max Kleiner
 
EKON22_Overview_Machinelearning_Diagrams
EKON22_Overview_Machinelearning_DiagramsEKON22_Overview_Machinelearning_Diagrams
EKON22_Overview_Machinelearning_Diagrams
Max Kleiner
 

More from Max Kleiner (20)

EKON26_VCL4Python.pdf
EKON26_VCL4Python.pdfEKON26_VCL4Python.pdf
EKON26_VCL4Python.pdf
 
EKON26_Open_API_Develop2Cloud.pdf
EKON26_Open_API_Develop2Cloud.pdfEKON26_Open_API_Develop2Cloud.pdf
EKON26_Open_API_Develop2Cloud.pdf
 
maXbox_Starter91_SyntheticData_Implement
maXbox_Starter91_SyntheticData_ImplementmaXbox_Starter91_SyntheticData_Implement
maXbox_Starter91_SyntheticData_Implement
 
Ekon 25 Python4Delphi_MX475
Ekon 25 Python4Delphi_MX475Ekon 25 Python4Delphi_MX475
Ekon 25 Python4Delphi_MX475
 
EKON 25 Python4Delphi_mX4
EKON 25 Python4Delphi_mX4EKON 25 Python4Delphi_mX4
EKON 25 Python4Delphi_mX4
 
maXbox Starter87
maXbox Starter87maXbox Starter87
maXbox Starter87
 
maXbox Starter78 PortablePixmap
maXbox Starter78 PortablePixmapmaXbox Starter78 PortablePixmap
maXbox Starter78 PortablePixmap
 
maXbox starter75 object detection
maXbox starter75 object detectionmaXbox starter75 object detection
maXbox starter75 object detection
 
BASTA 2020 VS Code Data Visualisation
BASTA 2020 VS Code Data VisualisationBASTA 2020 VS Code Data Visualisation
BASTA 2020 VS Code Data Visualisation
 
EKON 24 ML_community_edition
EKON 24 ML_community_editionEKON 24 ML_community_edition
EKON 24 ML_community_edition
 
maxbox starter72 multilanguage coding
maxbox starter72 multilanguage codingmaxbox starter72 multilanguage coding
maxbox starter72 multilanguage coding
 
EKON 23 Code_review_checklist
EKON 23 Code_review_checklistEKON 23 Code_review_checklist
EKON 23 Code_review_checklist
 
EKON 12 Running OpenLDAP
EKON 12 Running OpenLDAP EKON 12 Running OpenLDAP
EKON 12 Running OpenLDAP
 
EKON 12 Closures Coding
EKON 12 Closures CodingEKON 12 Closures Coding
EKON 12 Closures Coding
 
NoGUI maXbox Starter70
NoGUI maXbox Starter70NoGUI maXbox Starter70
NoGUI maXbox Starter70
 
maXbox starter69 Machine Learning VII
maXbox starter69 Machine Learning VIImaXbox starter69 Machine Learning VII
maXbox starter69 Machine Learning VII
 
maXbox starter68 machine learning VI
maXbox starter68 machine learning VImaXbox starter68 machine learning VI
maXbox starter68 machine learning VI
 
maXbox starter67 machine learning V
maXbox starter67 machine learning VmaXbox starter67 machine learning V
maXbox starter67 machine learning V
 
maXbox starter65 machinelearning3
maXbox starter65 machinelearning3maXbox starter65 machinelearning3
maXbox starter65 machinelearning3
 
EKON22_Overview_Machinelearning_Diagrams
EKON22_Overview_Machinelearning_DiagramsEKON22_Overview_Machinelearning_Diagrams
EKON22_Overview_Machinelearning_Diagrams
 

Recently uploaded

Digital Twins Computer Networking Paper Presentation.pptx
Digital Twins Computer Networking Paper Presentation.pptxDigital Twins Computer Networking Paper Presentation.pptx
Digital Twins Computer Networking Paper Presentation.pptx
aryanpankaj78
 
Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...
Prakhyath Rai
 
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student MemberIEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
VICTOR MAESTRE RAMIREZ
 
Rainfall intensity duration frequency curve statistical analysis and modeling...
Rainfall intensity duration frequency curve statistical analysis and modeling...Rainfall intensity duration frequency curve statistical analysis and modeling...
Rainfall intensity duration frequency curve statistical analysis and modeling...
bijceesjournal
 
Computational Engineering IITH Presentation
Computational Engineering IITH PresentationComputational Engineering IITH Presentation
Computational Engineering IITH Presentation
co23btech11018
 
Gas agency management system project report.pdf
Gas agency management system project report.pdfGas agency management system project report.pdf
Gas agency management system project report.pdf
Kamal Acharya
 
一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理
一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理
一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理
upoux
 
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
IJECEIAES
 
Welding Metallurgy Ferrous Materials.pdf
Welding Metallurgy Ferrous Materials.pdfWelding Metallurgy Ferrous Materials.pdf
Welding Metallurgy Ferrous Materials.pdf
AjmalKhan50578
 
Embedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoringEmbedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoring
IJECEIAES
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
MDSABBIROJJAMANPAYEL
 
CEC 352 - SATELLITE COMMUNICATION UNIT 1
CEC 352 - SATELLITE COMMUNICATION UNIT 1CEC 352 - SATELLITE COMMUNICATION UNIT 1
CEC 352 - SATELLITE COMMUNICATION UNIT 1
PKavitha10
 
132/33KV substation case study Presentation
132/33KV substation case study Presentation132/33KV substation case study Presentation
132/33KV substation case study Presentation
kandramariana6
 
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
ecqow
 
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
IJECEIAES
 
Design and optimization of ion propulsion drone
Design and optimization of ion propulsion droneDesign and optimization of ion propulsion drone
Design and optimization of ion propulsion drone
bjmsejournal
 
1FIDIC-CONSTRUCTION-CONTRACT-2ND-ED-2017-RED-BOOK.pdf
1FIDIC-CONSTRUCTION-CONTRACT-2ND-ED-2017-RED-BOOK.pdf1FIDIC-CONSTRUCTION-CONTRACT-2ND-ED-2017-RED-BOOK.pdf
1FIDIC-CONSTRUCTION-CONTRACT-2ND-ED-2017-RED-BOOK.pdf
MadhavJungKarki
 
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
171ticu
 
Mechanical Engineering on AAI Summer Training Report-003.pdf
Mechanical Engineering on AAI Summer Training Report-003.pdfMechanical Engineering on AAI Summer Training Report-003.pdf
Mechanical Engineering on AAI Summer Training Report-003.pdf
21UME003TUSHARDEB
 
morris_worm_intro_and_source_code_analysis_.pdf
morris_worm_intro_and_source_code_analysis_.pdfmorris_worm_intro_and_source_code_analysis_.pdf
morris_worm_intro_and_source_code_analysis_.pdf
ycwu0509
 

Recently uploaded (20)

Digital Twins Computer Networking Paper Presentation.pptx
Digital Twins Computer Networking Paper Presentation.pptxDigital Twins Computer Networking Paper Presentation.pptx
Digital Twins Computer Networking Paper Presentation.pptx
 
Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...
 
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student MemberIEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
 
Rainfall intensity duration frequency curve statistical analysis and modeling...
Rainfall intensity duration frequency curve statistical analysis and modeling...Rainfall intensity duration frequency curve statistical analysis and modeling...
Rainfall intensity duration frequency curve statistical analysis and modeling...
 
Computational Engineering IITH Presentation
Computational Engineering IITH PresentationComputational Engineering IITH Presentation
Computational Engineering IITH Presentation
 
Gas agency management system project report.pdf
Gas agency management system project report.pdfGas agency management system project report.pdf
Gas agency management system project report.pdf
 
一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理
一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理
一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理
 
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
 
Welding Metallurgy Ferrous Materials.pdf
Welding Metallurgy Ferrous Materials.pdfWelding Metallurgy Ferrous Materials.pdf
Welding Metallurgy Ferrous Materials.pdf
 
Embedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoringEmbedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoring
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
 
CEC 352 - SATELLITE COMMUNICATION UNIT 1
CEC 352 - SATELLITE COMMUNICATION UNIT 1CEC 352 - SATELLITE COMMUNICATION UNIT 1
CEC 352 - SATELLITE COMMUNICATION UNIT 1
 
132/33KV substation case study Presentation
132/33KV substation case study Presentation132/33KV substation case study Presentation
132/33KV substation case study Presentation
 
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
 
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
 
Design and optimization of ion propulsion drone
Design and optimization of ion propulsion droneDesign and optimization of ion propulsion drone
Design and optimization of ion propulsion drone
 
1FIDIC-CONSTRUCTION-CONTRACT-2ND-ED-2017-RED-BOOK.pdf
1FIDIC-CONSTRUCTION-CONTRACT-2ND-ED-2017-RED-BOOK.pdf1FIDIC-CONSTRUCTION-CONTRACT-2ND-ED-2017-RED-BOOK.pdf
1FIDIC-CONSTRUCTION-CONTRACT-2ND-ED-2017-RED-BOOK.pdf
 
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
 
Mechanical Engineering on AAI Summer Training Report-003.pdf
Mechanical Engineering on AAI Summer Training Report-003.pdfMechanical Engineering on AAI Summer Training Report-003.pdf
Mechanical Engineering on AAI Summer Training Report-003.pdf
 
morris_worm_intro_and_source_code_analysis_.pdf
morris_worm_intro_and_source_code_analysis_.pdfmorris_worm_intro_and_source_code_analysis_.pdf
morris_worm_intro_and_source_code_analysis_.pdf
 

A 3D printing programming API

  • 1. 3D Print with Delphi Yes, we scan… http://en.wikipedia.org/wiki/Web_of_Things Max Kleiner Script: 362_maxon3D_EKON18.TXT
  • 2. Agenda (3D Printing Web of Things) 2 • What is 3D with physics / elements (xyz) • 3D Printing Overview, History • Programming in G-Code or Turtle • G-Code Motor Firmware ex. Servo • Doodle 3D API • NC Code Examples Test http://scholz2000.com/ A Short History of Time 1991 Application Program 1995 Application 1998 Applet 2010 App 2015 A (Scholz2000, Android, Arduino, ARM)
  • 3. Some Theory and Practise • Digital Printing World is build on Analog World • • • •• • 3 070_pas_functionplotter_digital2.txt, Ex. OpenGL Robot, Landscape Flight
  • 4. 33DD VVeeccttoorrss • 4 Ex. 530_3DLab.txt
  • 5. Need Printer Things Printing technology: FFF (Fused Filament Fabrication) Printing volume: 170x170x160m Layer resolution: 100μ (0.1mm) X-Y-Z precision: 20μ (0.02mm) Filament diameter: 1.75mm Heated bed: No Bed autoleveling: Yes Printing material: PLA (any material that does not require a heated bed) Time to first print-out: <1m Injector diameter: 0.4mm Filament capacity: 500gr Dimensions: 275x275x360 Approx. weight: 7Kg Chassis: Unibody aluminum 5 Ex. 3DDrucken_auf_dem_Weg_zur_Massen.pdf
  • 6. Proof of Concept - Lord of the Prints 6
  • 7. Case Study Simulation 7 import httprocessing.*; TurtleSim String boxIP = "10.0.0.188"; PostRequest post = new PostRequest("http://"+boxIP+"/d3dapi/printer/print"); void setup() { post.addData("gcode", "G28 X0.0 Y0.0 Z0.0"); //Send printer to the x0 and y0 position post.addData("start", "true"); post.send(); size(100, 100);
  • 8. Use Case Diamond Print - Shine on you crazy… void draw() { //press a key to activate if (keyPressed) { point(mouseX,mouseY); //makes the printer move to the mouse location. //Note that the X and Y will expand if you expand the size() and it is possible that you make the printer move outside of its border! //This can do harm or damage to your 3D printer!! post.addData("gcode", "G1 X"+mouseX+" Y"+mouseY+" F5000"); post.addData("start", "true"); post.send(); } 8 var idHTTP, http1: TIDHTTP; idHTTP2: TIDHTTPRequest; zipStream: TFileStream; Send a command over http to COM on board to move ServoM
  • 9. Solution Arduino G-Code 9 G-Code firmware void setup() { // initialize digital pin as an output. pinMode(ledPin11, OUTPUT); Serial.begin(9600); void loop () { val = Serial.read(); //read serial port if (val !=-1){ if (val=='1'){ digitalWrite(ledPin1,HIGH); } else if (val=='A'){ digitalWrite(ledPin1,LOW); } Tutor: http://www.softwareschule.ch/download/maxbox_starter18_3.pdf
  • 10. Solution Doodle3D Rest G-Code http://www.softwareschule.ch/examples/306_SPS_doodle3Dhttp_command.txt http://www.softwareschule.ch/examples/443_webserver_arduino_light4motor.txt 10 G-Code is a commonly use language to control CNC machines. G-Code is a light-weight, simple to parse format, designed to be able to run on modest hardware, such as the Arduino loaded with this firmware (in this case). It is a format that is prepared in advance and created from the digital design files (CAD files). The G-Code firmware source is available from SourceForge as part of the RepRap Arduino firmware package. http://www.doodle3d.com/help/g-code
  • 11. 11 Arduino G-Code Interpreter 1.1 Introduction 1.2 Files 1.2.1 Installation 1.3 Usage 1.3.1 Firmware Configuration 1.3.1.1 X_STEPS_PER_INCH 1.3.1.2 X_STEPS_PER_MM 1.3.1.3 X_MAX_SPEED 1.3.1.4 X_MOTOR_STEPS 1.3.1.5 Y_*, Z_* 1.3.1.6 FAST_XY_FEEDRATE and FAST_Z_FEEDRATE 1.3.2 Sending Commands 1.4 Implementation 1.4.1 G-Codes 1.4.2 M Codes 1.5 TODO 1.6 Bugs 356_3D_printer.txt http://en.wikipedia.org/wiki/Household_appliances
  • 12. Test the Print http://192.168.1.40:8080/R 12 Its heavy duty unibody aluminum chassis, along with its light extruder, allow for high printing speeds. The materials the printer parts are made of have been carefully selected to be both strong and lightweight, and were tested for structural resistance in our manufacturing facilities.l... ;).
  • 13. Thanks! Links to Rights the source is the code http://www.softwareschule.ch/maxbox.htm http://sourceforge.net/projects/maxbox http://sourceforge.net/apps/mediawiki/maxbox/ http://en.wikipedia.org/wiki/Arduino http://www.softwareschule.ch/download/webofthings2013.pdf Book Patterns konkret http://www.amazon.de/Patterns-konkret-Max-Kleiner/dp/3935042469 maXbox https://github.com/maxkleiner/maXbox3/releases http://www.cnc-arena.com/de/forum/gcode-programmierung-fuer-3d-in-c--22109.html http://www.doodle3d.com/help/api-documentation http://replicat.org/mcodes http://www.doodle3d.com/help/g-code http://simplegcoder.com/js_editor/ 13
  • 14. Questions? Print a World hack the earth 14 Yes, we hack… https://github.com/maxkleiner/maXbox3/releases