=Paper=
{{Paper
|id=Vol-1562/paper4
|storemode=property
|title=3D Printing Process Pipeline on the Internet
|pdfUrl=https://ceur-ws.org/Vol-1562/paper4.pdf
|volume=Vol-1562
|authors=Felix Baumann,Dieter Roller
|dblpUrl=https://dblp.org/rec/conf/zeus/BaumannR16
}}
==3D Printing Process Pipeline on the Internet==
3D Printing Process Pipeline on the Internet 29
3D Printing Process Pipeline on the Internet
Felix Baumann and Dieter Roller
Institut für Rechnergestützte Ingenieursysteme
(baumann|roller)@informatik.uni-stuttgart.de
Abstract. We develop a small and lightweight cloud based service for
the utilization of 3D printer resources within an academic context. This
service consists of user, artefact and printer management and utilizes
existing business process management systems (BPMS) where possible
and extends their functionality. It enables scheduling of printing jobs for
artefacts and high utilization of 3D printer resources. This cloud based
manufacturing (CBM) system enables 3D printers that are non-native
networked to be used remotely by providing easily installable low cost
networked computers. It focuses on the interface between the physical
resources and their representation in software to form a cyber physical
system (CPS). This service requires smart 3D printers and representation
of technical capabilities of physical resources. We discuss the design and
concept of this work in progress service and the distinctions from similar
systems.
Keywords: 3D Printing, Additive Manufacturing, Cloud Based Service, Cloud
Based Manufacturing, CBM, CPS
1 Introduction
3D Printing or Additive Manufacturing (AM) is the process of creating physical
objects from digital models usually layer upon layer [5]. Technologies for AM
include Fused Deposition Modelling (FDM, trademark by Stratasys Inc., also
Fused Filament Fabrication FFF), Laser Sintering (LS), Electron Beam Melt-
ing (EBM), Laminated Object Manufacturing (LOM), Stereolitography (SLA)
and Electron Beam Freeform Fabrication (EBF). Every AM technology brings
restrictions on the materials possible to process. We focus our research on FFF
where thermoplastics like acrylonitrile butadiene styrene (ABS) or polylactid acid
(PLA) are fed from a roll in filament form to a heated extruder that heats the
plastic to a semi-molten state and extrudes it through a nozzle mounted on the
printing head that is moveable in two dimensions (X-Y plane) by electro motors
following a pre-programmed path (Toolpath). With this setup it is possible to
trace contours and interiors of an object slice-wise. After completion of every
layer the printing bed is moved in Z-direction so the following layer can be added
on top. For the generation of the toolpath (slicing) it is necessary to segment the
original digital model into slices that can be analysed for tool movement along
the contours. Various strategies exist for the generation of the toolpath as models
C. Hochreiner, S. Schulte (Eds.): 8th ZEUS Workshop, ZEUS 2016, Vienna, Austria,
27-28 January 2016, Proceedings – published at http://ceur-ws.org/Vol-1562
30 Felix Baumann et al.
are mostly created hollow with a specific infill pattern for reduction of weight
and processing time. The initial focus on FFF technology does not limit this
research to just this technology as the 3D printing process is the same with alter-
ations due to technology used and parameters adapted. It is our understanding
that the following reasons mandate the use of printing services over stand-alone
3D printers at the user’s workplace:(a) High cost of printer (dependent upon
manufacturer and technology) [16] (b) Potential health risks (e.g. fumes, metal
dust) [15] (c) Low utilization for non-shared resources [12] (d) Process knowledge
necessary for high quality results [10]. The 3D printing process consists of five
steps (Fig. 1) that start with the design of the product (also see [5]). For this
3D-Printing
3D Printer
4A.
- Data-Repository
3D Printer
- Model-Repository
- CAD-Repository
- Idea Management
Software Printing
- Requirements
Database
X-Repository User
Software Suite
STL File Printing
Supervision
0..m
1. 2. 3. 4B. 5.
Design Positioning Slicing Postprocessing
User
GCode
Variables: QA
Influences: - Layer Height
CAD Model STL File - Quality - Extrusion Material
- Print Duration - Speed
- Utilization - Fill Density/Pattern
- Support Structures
Fig. 1. 3D Printing Process
work we propose two research questions: (a) What requirements are necessary
to construct a 3D printing service enabling users utilizing existing 3D printer
resources more efficiently (b) How can a 3D printing service be enabled to provide
an infrastructure for research.
This article describes current work in progress and outlines the design and
implementation considerations and methodology. The design phase can be sup-
ported by software using CAD (e.g. Autocad1 or 3D modelling software2 ). The
result of this first step is a CAD model that represents the 3D geometry of the
object.
Step two of this process is the positioning of the model in the virtual space that
represents the 3D printer and its physical restrictions. Positioning can encompass
single objects or multiple objects for increased printer utilization. After the print
object is positioned it is sliced using slicer software. A variety of slicing software
1
http://www.autodesk.com/products/autocad/overview
2
https://www.rhino3d.com
3D Printing Process Pipeline on the Internet 31
exists and they differ in aspects like speed, precision, quality and strategies for
printing support structures.
The following steps include the upload to the printer if it is a networked
device or other means like deployment on memory devices (e.g. SD-Card, USB
Stick) and the start of the print which can either require manual interaction or
be handled from software. During printing the user is often required to supervise
the printing progress as this is error prone especially for consumer grade devices.
Post-processing and Quality Assurance (QA) follow when the object has been
printed and influence each other. Those steps are not part of our service.
We provide support for all steps but the design, post-processing and QA step
within our service. These are omitted for the following reasons 1) The design
process is supported by specialized software and integration is not compatible with
our lightweight approach 2) Post-processing and QA is not reasonable supportable
by soft- or hardware as these steps require intensive human interaction.
The remainder of this article is organized as follows: We display current
research in this area in [Sect. 2] and derive implementation requirements from
established approaches. Then a introduction of the implementation guidelines
[Sect. 3] for the service is given. Following is a summary of requirements [Sect. 3.1]
for our research. Then we introduce an example and discuss problems encountered
with the implementation [Sect. 3.2]. In [Sect. 4] we discuss our approach, its
application and benefits.
2 Related Work
Similar systems or services already exist in form of closed source commercial
services where we will name two of: a) 3D Hubs3 b) 3D Printer OS4 . As commercial
entities their focus is on financial viability. These services allow adding ones
own 3D printer and manage it from within the service with a varying degree
of granularity. They lack an extension mechanism or plug-in architecture. In
contrast to our approach they are not intended as open services. The software
octoprint5 offers remote printing and object management capabilities but does
not provide an interface to a BPMS, user-selectable slicing solutions or support
for consolidated information on printing information. Further research provides
proposals from [18] for CBM systems but our system differs from those approaches
as our focus is the tight integration of business process management (BPM)
and 3D printing as well as the sensory upgrade of this technology. From Dong
et al. [3] we will implement the video supervision approach for the printing
process and its remote error detection. Extensions of CBM in the form of
Cloud Based Design and Manufacturing [19] provide further insight into the
concept of Hardware-as-a-Service (HaaS) and the connection to the broader
concept of flexible manufacturing spanning every phase of product development
and involvement of different stakeholders. While the availability of affordable
3
https://www.3dhubs.com
4
https://www.3dprinteros.com
5
http://octoprint.org
32 Felix Baumann et al.
consumer grade 3D printers certainly has helped the progression of research in and
distribution of 3D printers the scenario where every individual will own a digital
fabricator [9] is debatable as the general direction is to offer and consume services
[2]. Van Moergestel et al. [8] proved the concept of Manufacturing-as-a-Service
(MaaS) on cheap, distributed and reconfigurable production machines (equiplets)
with a focus on interaction in a multi-agent system. Lan [6] names STL viewers
as Java applets or other visualization tools as one of the key issues in his review.
We employ JavaScript embeddable visualization into the service as to alleviate
the dependency on thick clients. Further key issues e.g. a) Remote control and
monitoring b) Job planning and scheduling and c) RP data pre-planning are
addressed in our service.
3 Implementation
Our service follows the software framework proposed by Schulte et al. [14] with a
focus on the action executioner. It acts as the connector between the printing
resources and the printing service in our proposal in contrast to the proposed
functionality by Schulte et al. Further foci are the service registry for keeping
information on production capabilities and the monitoring data manager that
connects the real execution in the 3D printer with the virtual representation.
From CloudMan [11] we incorporate the layered service approach but restrict
our focus to 3D printers and not manufacturing infrastructure in general. See
Fig. 2 for overview of the intended architecture with BPMS supporting the main
service controller.
Fig. 2. Abstract Architecture for 3D Printing Service
As per the definition of NIST (SP 800-145) [7] of cloud computing the
system is set up to provide a user management system by incorporating available
libraries. Besides standard user management information the user is able to store
3D Printing Process Pipeline on the Internet 33
appropriate files6 in his account. For this we define an interchange format for
printing related information consisting of original CAD file(s), resulting STL and
GCode [4] files, conversion and printing protocols as well as imagery (for quality
assessment). The service is accessible in a standard compliant web browser that
supports HTML 57 and JavaScript, both are necessary for rendering purposes
for the phase of positioning. The resources necessary for slicing and preparation
of the models are shared amongst the users based on a scheduling scheme that
reflects first-come first-serve. As the 3D printer is the limiting resource at present
the pooling of the computing resources not regarded as critical. In anticipation
of multiple 3D printers controlled by the system the distribution of computing
resources for the preparatory tasks is becoming queue based with data stored
in associated cloud service storage (e.g. Amazon S38 ). Users will be informed if
the capacity of the 3D printers is depleted and the projected processing time for
an object exceeds a defined threshold. The requirement for “rapid elasticity” is
severely impaired by the physical restrictions set by the geometry of the object
to be printed and the limitations in the speed vs. quality trade-off of a 3D
printer. Basic measurements are intended where the user can track the number
and nature of printed objects as well as associated information and a full audit
trail for research purposes. Utilization of machines and computing resources is
measured and associated with respective user accounts. The systems control
layer resides in the cloud and is expandable by utilizing proven technology (e.g.
Docker9 ) as means of deployment. The interfacing layer consists of gateway
computers that interface directly with 3D printers if they do not support network
access natively. These interface solutions depend on rapidly deployable, cost
sensitive and reliable computer systems. In the first phase these interfaces will
allow direct manipulation of 3D printers via the Internet and limited control
information backflow. Further iterations extend this system to a broader sensorial
back channel ultimately leading to closed loop printing systems.
3.1 Requirements
The requirements for a CBM provided by Wu et al. [17] “(R1) [...] (R2) Should
provide cloud-based distributed file systems that allow users to have ubiquitous
access to manufacturing-related data (R3) Should have an open-source program-
ming framework that manufacturing systems can process and analyse big data
stored in the cloud (R4) Should provide a multi-tenancy environment where
a single software instance can serve multiple tenants (R5) Should be able to
collect real-time data from manufacturing resources (e.g., machines, robots, and
assembly lines), store these data in the cloud, remotely monitor and control
these manufacturing resources (R6) Should provide IaaS, PaaS, HaaS, and SaaS
applications to users (R7) [...] (R8) [...]” are considered in the design of our system.
6
CAD files, STL files, Printing Log files
7
http://www.w3.org/TR/html5
8
http://aws.amazon.com/s3
9
https://www.docker.com
34 Felix Baumann et al.
Due to the design goal of developing a lightweight system the requirements R1,
R7 and the focus on academic settings requirement R8 are not incorporated
in our service. We further define the requirements a) Capability to use BPMN
extension for 3D printers (which is proposed separately) and integration of a
BPMS b) Modular integration of tools for the 3D printing process and c) Modular
and dynamic integration of 3D printing resources.
3.2 Example and Problems
We encounter the problem of defining capabilities of various 3D printers for use
in this service. To our knowledge such a description format or language does
currently not exist. Resource Description Language (RDL [13]) is a proposition
for this issue for the domain of network embedded resources. Capabilities required
for interaction with tools includes a) GCode dialect b) Quality settings c) Pro-
cessing speed and d) Material capabilities. This information is also required for
utilization planning and optimization strategies. As a solution for this problem we
propose a derivative RDL tailored towards additive manufacturing for subsequent
publication. Further problems arise from the firmware of our research printer that
limits the transmission speed (ca. 3.5 KiB/s) over the USB serial connection to
the device storage resulting in long transmission times. Solutions include flashing
a different firmware and utilizing WiFi enabled SD cards.
To clarify the flow of information (see Fig. 2) and data within our proposed
service we discuss this by an example of a user printing an object. The first
process steps of designing and modelling the object with a CAD or modelling tool
are not discussed and we assume the user, which already has an account within
the service, logs in and has an AutoCAD DXF10 file stored on his computer. As
a first action the file is uploaded through the web-interface to the controller that
instructs the data management service to store the file in the database, then the
file is transformed into STL and AMF [1] format for future use and stored in
the database. The user then selects a printer for printing. This information is
provided by the device/service registry. Future implementations can suggest an
appropriate printer to the user. After selecting the printer the user is able to
select slicing parameters and position the object in the virtual build environment.
Future implementations can suggest appropriate parameters based on analysis
of the model file and positioning on optimization criteria to the user. The user
is able to add other tool steps to the processing of the object file which are
orchestrated by the provisioner and associated virtual computing resources. After
the model file is sliced the printing job is instantiated with the scheduler that
checks if the requested printer resource is available and if so sends it to the
executioner. If not a queue is used to store the job until the resource becomes
available. The executioner communicates with the control interface of the 3D
printer in order to transfer and start the print. Sensor data is transmitted back
to the executioner from the sensor interface. Sensor data is then stored in the
database via the scheduler and the controller. BPMS support is intended as to
10
Drawing Interchange Format
3D Printing Process Pipeline on the Internet 35
externalise the logic of the controller to a BPMS that orchestrates the other
services. During the print the user is informed on the progress and possible failure
of the print via web interface. After completion of the print the user is informed
through a notification. Data acquired during the print is stored in the database
for later analysis.
4 Future Work
To the best of our knowledge no open source 3D printing service is published yet.
There are existing solutions that focus on separate parts and provide solutions
to different aspects of the 3D printing process. Our approach is characterized
and differs from other approaches by: a) Focus on 3D printer b) Focus on
communication with manufacturing device c) Interface to BPMS d) Platform for
testing BPMN extension e) Smartifying 3D printer f) Platform for testing sensor
array and g) Interchange format for print related information. This software
service is designed as an open research platform for academic users to embed
experiments and utilize distributed resources. Further projects are aimed at
1. providing means of control of 3D printers from within process models as we are
writing an BPMN extension, based on the work of [20] tailored for 3D printers,
2. utilize sensors for print status observation and as a means for quality research
into 3D printing (see ICRM 201611 ). Those projects are to be incorporated in
the umbrella project described in this work. As a related project we develop
a BPMN extension for 3D printer integration into BPMN where the hardware
resources and data flows can be modelled using the extension. This extension is
out of scope of this work and published separately.
References
1. ASTM ISO: ASTM52915-13, Standard Specification for Additive Manufacturing
File Format (AMF) Version 1.1. Tech. rep., West Conshohocken, PA (2013)
2. Banerjee, P., Friedrich, R., Bash, C., Goldsack, P., Huberman, B., Manley, J.,
Patel, C., Ranganathan, P., Veitch, A.: Everything as a Service: Powering the New
Information Economy. Computer 44(3), 36–43 (2011)
3. Dong, B., Qi, G., Gu, X., Wei, X.: Web service-oriented manufacturing resource
applications for networked product development. Advanced Engineering Informatics
22(3), 282–295 (2008)
4. ISO: 6983-1:2009 Automation systems and integration - Numerical control of
machines - Program format and definitions of address words. Tech. rep. (2009)
5. Kulkarni, P., Marsan, A., Dutta, D.: A review of process planning techniques in
layered manufacturing. Rapid Prototyping Journal 6(1), 18–35 (2000)
6. Lan, H.: Web-based rapid prototyping and manufacturing systems: A review.
Computers in Industry 60(9), 643–656 (2009)
7. Mell, P., Grance, T.: SP 800-145. The NIST Definition of Cloud Computing. Tech.
rep., Gaithersburg, MD, United States (2011)
11
http://icrm-aachen.com
36 Felix Baumann et al.
8. van Moergestel, L., Puik, E., Telgen, D., Meyer, J.J.: Implementing Manufacturing
as a Service: A Pull-Driven Agent-Based Manufacturing Grid
9. Mota, C.: The Rise of Personal Fabrication. In: Proceedings of the 8th ACM
Conference on Creativity and Cognition. pp. 279–288. C&C ’11, ACM, New York,
NY, USA (2011)
10. Petrick, I.J., Simpson, T.W.: 3D printing disrupts manufacturing. Research Tech-
nology Management 56(6), 12 (2013)
11. Qanbari, S., Zadeh, S.M., Vedaei, S., Dustdar, S.: CloudMan: A platform for portable
cloud manufacturing services. In: Big Data (Big Data), 2014 IEEE International
Conference on. pp. 1006–1014 (Oct 2014)
12. Ruffo, M., Tuck, C., Hague, R.: Cost estimation for rapid manufacturing - laser
sintering production for low to medium volumes. Proceedings of the Institution
of Mechanical Engineers, Part B: Journal of Engineering Manufacture 220(9),
1417–1427 (2006)
13. Santos, A.C., Pedrosa, L.D., Kuipers, M., Rocha, R.M.: Resource Description
Language: A Unified Description Language for Network Embedded Resources.
International Journal of Distributed Sensor Networks 2012, 11 (2012)
14. Schulte, S., Hoenisch, P., Hochreiner, C., Dustdar, S., Klusch, M., Schuller, D.:
Towards Process Support for Cloud Manufacturing. In: Enterprise Distributed
Object Computing Conference (EDOC), 2014 IEEE 18th International. pp. 142–149
(Sept 2014)
15. Short, D.B., Sirinterlikci, A., Badger, P., Artieri, B.: Environmental, health, and
safety issues in rapid prototyping. Rapid Prototyping Journal 21(1), 105–110 (2015)
16. Wohlers, T., Gornet, T.: History of Additive Manufacturing. Wohlers Report 2014
24 (2014)
17. Wu, D., Rosen, D.W., Wang, L., Schaefer, D.: Cloud-based Manufacturing: Old
Wine in New Bottles? Procedia CIRP 17, 94–99 (2014)
18. Wu, D., Rosen, D.W., Wang, L., Schaefer, D.: Cloud-based design and manufactur-
ing: A new paradigm in digital manufacturing and design innovation. Computer-
Aided Design 59, 1–14 (2015)
19. Wu, D., Thames, J.L., Rosen, D.W., Schaefer, D.: Towards a Cloud-Based Design
and Manufacturing Paradigm: Looking Backward, Looking Forward. In: Computers
and Information in Engineering Conference, Parts A and B, pp. 315–328. ASME
2012 International Design Engineering Technical Conferences and Computers and
Information in Engineering Conference (2012)
20. Zor, S., Schumm, D., Leymann, F.: A Proposal of BPMN Extensions for the
Manufacturing Domain. In: Proceedings of the 44th CIRP International Conference
on Manufacturing Systems (2011)