Engel Machine Interface
Engel Machine Interface
Procedia CIRP
journal homepage: www.elsevier.com/locate/procir
a r t i c l e i n f o a b s t r a c t
Keywords: This paper describes architecture and development of an open application programming interface (API)
Injection moulding prototype for injection molding machines (IMMs), useable for sensor and machine/process data logging
Application programming interface
and setting necessary process parameter values. The API is based on PCMEF (presentation, control, do-
Cyber-Physical Systems
main and foundation) architectural framework and OSI 7 layer communication model. The interface al-
Industry 4.0
lows to retrieve values of up to 97 machine and process parameters. It also includes a module for ac-
quisition of data from additional sensors such as pressure and temperature sensors installed in the mold.
Industrial Raspberry Pi (RevPi) is used to perform analog-to-digital signal conversion and makes sen-
sors data accessible via the API. Logging of different parameters from the machine and from sensors is
synchronized and sampling frequency can be adjusted if necessary. Depending on chosen frequency, the
system can provide real-time or soft real-time communication. The interface allows to build a distributed
computer-based system, which gives benefit over the use of a PLC system with respect to Industry 4.0
standards.
© 2020 The Author(s). Published by Elsevier B.V.
This is an open access article under the CC BY-NC-ND license
(http://creativecommons.org/licenses/by-nc-nd/4.0/)
https://doi.org/10.1016/j.procir.2020.07.005
2212-8271/© 2020 The Author(s). Published by Elsevier B.V. This is an open access article under the CC BY-NC-ND license
(http://creativecommons.org/licenses/by-nc-nd/4.0/)
This is a resupply of March 2023 as the template used in the publication of the original article contained errors. The content of the article has remained unaffected.
O. Ogorodnyk, M. Larsen, K. Martinsen et al. Procedia CIRP 97 (2020) 453–458
ing the data in a feasible way. Examples are ARBURG’s “Host com-
puter system (ALS)” (ARBURG. Host computer system (ALS) 2020)
and MES HYDRA (MDPV 2020). These are definitely a step towards
Industry 4.0, but there are still challenges such as real-time data
collection, as many of the MES log parameter data only once per
production cycle, as well as the absence of possibility to synchro-
nize data acquisition from machine built-in and additional sensors
installed, for example, in a mold. One of the main reasons for this
is that the available systems have a closed architecture and pre-
defined functionality without an open API.
In addition, selection of a proper communication protocol to
establish communication between an IMM and a PC or another
data storage and processing unit is important. EUROMAP 63 pro- Fig. 1. API modules.
tocol was developed in 20 0 0 and uses file based data transfer
(EUROMAP 2020). EUROMAP77 was released in 2018 and is based
on OPC/UA but is not directly connected to IMM’s control loop and • Real-time logging for sampling rate slower and equal to 2 Hz.
might not be able to guarantee real-time or soft real-time com- • Logging of up to 97 machine and process IMM parameters.
munication. In addition, some IMM suppliers such as ENGEL pro- • Logging of data from additionally installed sensors.
vide their own data exchange interfaces (ENGEL machine interface • Ensured synchronized acquisition of data from machine built-in
(EMI)). All of these protocols need to be considered if the API or sensors and additionally installed sensors;
an MES is to be used with various types of IMMs. • Option of setting values of machine and process parameters,
Research literature, at the same time, offers examples of data where allowed, without overriding the current value if the en-
acquisition during the injection molding process, such as in-mold tered value is not acceptable due to being too high or too low
force (Tellaeche and Arana, 2013), mold temperature, screw dis- for secure operation of the IMM in use.
placement and velocity data (Zhao et al., 2014, Zhou et al., 2017).
Zhang Y, Mao T (Zhang et al., 2016) are using a hydraulic pressure Python3 programming language was chosen to create a pro-
sensor to estimate nozzle pressure values and increase controlla- totype of the proposed application programming interface. The
bility of the process. In (Charest et al., 2018) pressure transducers, API’s architecture is designed based on PCMEF (Maciaszek and Li-
thermocouples, velocity, position and flow sensors are installed to ong, 2004, Kurose and Ross, 2010) layered architectural framework
acquire IMM data. However, in these examples the data is acquired providing easy interaction with the IMM. Benefit of this frame-
from the sensors additionally installed in the IMM. Ironically, a lot work is its stability and modularity, which is possible since only
of this data could be acquired from sensors already installed in the downward dependencies between the layers are allowed. As a re-
machine by its manufacturer, but due to restriction of commercial sult, “changes in higher layers don’t create a cascade of modifications
software and hardware, new sensors needed to be installed to get in lower layers” (Madeyski and Sochmialek, 2005). The framework
easy access to data and analyze it. consists of four main layers: presentation, control, domain and foun-
In this paper, on the other hand, development and application dation (Maciaszek and Liong, 2004).
of an open API prototype applied to an IMM and in-mold sensors Communication design of the proposed application program-
is presented. Such API can be used for industrial and research ap- ming interface was created following OSI 7 layer model. It is Open
plication in order to address the following tasks: Systems Interconnection model that generally includes the follow-
ing levels: application, presentation, session, transport, network, link
• Ability to use the API with various types of IMMs of different
and physical (Kurose and Ross, 2010). The general communication
manufacturers and communication protocols;
design of ENGEL EMI data exchange protocol used in the API’s
• Acquisition of IMM machine and process parameters data from
server-side is also structured after OSI 7 layer model. The server-
built-in sensors;
side is implemented by ENGEL and includes all 7 layers of the
• Acquisition of IMM machine and process parameters data from
model. The authors of the paper concentrated on the client-side
additional sensors;
implementation which includes layers number 5, 6 and 7 of the
• Synchronized acquisition of data from built-in and additional
OSI model. Our Application layer is with “get and set methods” for
sensors;
machine parameters. Our Presentation layer includes Python’s XML-
• Setting of machine and process parameters on the IMM without
byte stream implementation for data interpretation from the IMM
hindering the IMM operational security;
to construct an XML-byte stream. This layer must guarantee read-
• Possibility to add custom modules on top of the initially avail-
ability of server on the IMM, meaning that server has to react on
able functionality. Such modules might include implementation
request by a method defined in the XML-byte stream. The Session
of various algorithms for data analysis, parameters optimization
layer is based on socket Python library and is multi-client com-
and intelligent process control.
patible. The developed API includes three main modules: IMM in-
terface, Data acquisition system for additional sensors (DAQ Interface)
2. Development of a generic API
and database, as shown on Fig. 1. Here the general API is depicted
as a green block, while three software modules it includes are in
Application programming interface is a software product that
blue blocks, while the orange blocks include hardware that the API
includes number of clearly defined methods for communication
and its modules are connected to. IMM interface is part of the API
between different components, in our case, between an IMM, a PC
that is used for establishment of connection with injection mold-
and a data acquisition system connected to mold sensors. As an
ing machine in use and requesting and setting corresponding pa-
extension to the tasks presented in previous section, the API needs
rameter values. DAQ interface is used for acquisition of data from
to comply with the following requirements:
any additionally installed machine and mold sensors. Database is
• Compatible with personal computers. needed for organized storage and easy access to the sampled data.
• Open with possibility to build on existing functionality. If necessary, additional modules for testing data processing algo-
• Soft real-time logging sampling rate faster than 2 Hz. rithms and IMM control routines can be added.
454
This is a resupply of March 2023 as the template used in the publication of the original article contained errors. The content of the article has remained unaffected.
O. Ogorodnyk, M. Larsen, K. Martinsen et al. Procedia CIRP 97 (2020) 453–458
455
This is a resupply of March 2023 as the template used in the publication of the original article contained errors. The content of the article has remained unaffected.
O. Ogorodnyk, M. Larsen, K. Martinsen et al. Procedia CIRP 97 (2020) 453–458
Table 1
“ParameterList” description.
Table 2
Statistics of overhead measurement for RevPi.
Sampling rate [Hz] Mean [s] Std. dev. [s] Max. [s] Min. [s] Overhead over 0.025 s [%]
proposed API is needed for. However, the API can also be utilized the lowest overhead time and “Overhead over 0.025s” is the per-
with other types of additional sensors. centage of samples with overhead over 0.025 s. The used sampling
As described previously, Industrial Raspberry Pi (RevPi) consist- rate is subtracted from the period between samples, (sample_n + 1
ing of two modules, RevPi Core3 and RevPi AIO, was used as a - sample_n) - sampling_rate in the results to calculate the over-
physical data acquisition system for this purpose. A simple Python head/latency.
programming language script is used to convert sensor signals The results shown in Table 2 and 3, show that real-time re-
from analog to digital and synchronize logging with data acqui- strictions of the system apply. For the test with 100 Hz sampling
sition from the machine built-in sensors to provide data integrity. rate, the mean values are around 0.0154 for sampling on both IMM
This is significantly easier than using DAQs from National Instru- and the RevPi. This means that the system cannot comply with the
ments (NI) or HBM to acquire sensor data, as they require the use given sampling rate. 10 ms logging frequency and an average over-
of commercial “black box” software that needs to be additionally head of 0.015366 provide 39.4 Hz real sampling rate.
purchased such as, for example, LabView or CatMan, while Python Examining results from sampling at 50 Hz, it is possible to see
interpreters are usually open source and free of charge. that the system performs better than with 100 Hz sampling rate.
In this case, the overhead mean value is around 0.0062 s (for both
3.3. Database IMM and the RevPi) which gives a system response at 38.1 Hz.
Even better results can be seen at sampling rate at 33 Hz. Here,
Currently, data from each production cycle is written to a sepa- the average overhead tends to zero, while the number of overhead
rate file of a user-specified type (.csv, .json, .pickle) and is stored values over 0.025% is 1.14 and 1.73 for the RevPi and the IMM’s
in a folder chosen by a user on the PC connected to the IMM. DAQ respectively. This indicates that 33 Hz can be one of the ap-
A proper database management unit needs to be developed and propriate sampling rates for the proposed API.
added to the system in future versions, providing a better way of 2 Hz sampling rate has the overhead mean value for both IMM
storing big amounts of process data. This unit will enable users to and the RevPi at around 0.0 0 06, this is significantly lower than
create, structure and update a database with necessary parameters, with 100 and 50 Hz sampling rates, but slightly higher than with
as well as to structure larger datasets for their further analysis. the 33 Hz sampling rate. Regarding real-time demands, results
show that the API is not completely predictable with a maximum
4. Validation of the developed prototype overhead of 0.14 s and a lowest overhead/latency at −0.139 s on
the IMM when sampling with the 2 Hz rate. This happens because
Before using the API for acquisition of production or experimen- the system tries to compensate for the deviation. On the IMM
tal data, it is necessary to investigate whether the developed API there are 2.34% of samples that have the overhead value higher
prototype complies with the specified real-time and soft real-time than 0.025 s, while on the RevPi there are none. The RevPi demon-
requirements. strates that it is able to perform real-time sampling with 2 Hz or
All modules of the API were installed on the RevPi, where lower sampling rate and soft real-time on higher speeds.
three different processes needed to be handled: handling the IMM, The API’s unpredictability comes, among other things, from
handling Kistler sensors signals and synchronization of data ac- Python’s memory management mechanism. It uses reference
quisition from the injection molding machine and mold sensors. counting collector and generational garbage collector, known as
All tests were conducted at length of 4900 samples for sampling “gc module” for memory reclaim (PythonSoftwareFoundation. gc -
rates at 100, 50, 33 and 2 Hz. The experiments measure the la- Garbage Collector interface 2020). Unlike many other languages, it
tency/overhead compared to the desired sampling rate. does not necessarily release the memory back to the operating sys-
The results of the statistical summaries of the overhead dis- tem, but instead keeps some parts of already allocated memory for
tribution for RevPi are presented in Table 2 and summaries for use in the future. At the same time, it is possible to see that the
IMM’s DAQ in Table 3. In the table, the “Sampling rate” column IMM process is more unpredictable than the RevPi process. This
contains the used sampling rate value, “Mean” is the average of might be caused by necessity to establish the server/client connec-
the overhead in seconds, “Std. dev” is the standard deviation in tion with the IMM, while the RevPi is directly connected to the
seconds, “Max” is the highest overhead time in seconds, “Min” is sensors it acquires the data from.
456
This is a resupply of March 2023 as the template used in the publication of the original article contained errors. The content of the article has remained unaffected.
O. Ogorodnyk, M. Larsen, K. Martinsen et al. Procedia CIRP 97 (2020) 453–458
Table 3
Statistics of overhead measurement for IMM.
Sampl. rate [Hz] Mean [s] Std. dev. [s] Max. [s] Min. [s] Overhead over 0.025 s [%]
4.1. Case study turers. It is of interest to test the API prototype with other types
of IMMs, data acquisition systems and additional sensors. At the
The described API prototype was tested during two experi- same time, the database module needs to be developed further to
ments. The first experiment was injection molding of two dog bone allow storage of all the necessary process data in a corresponding
specimens per cycle with 4 mm thickness. It was based on De- database. Development of a graphical user interface (GUI) for the
sign of Experiment (DOE) created using Latin Hypercube sampling API is also of interest to make it more user friendly. Moreover, in
method (LHS) (Seaholm et al., 1988) that consisted of 32 combina- the following versions the system’s security needs to be considered
tions of the following parameters: holding pressure, holding pres- and extensively worked on. In order to improve functionality and
sure time, backpressure, cooling time, injection speed, screw speed, performance of the open API for IMMs and create a finished prod-
barrel temperature and mold temperature. Each of these combina- uct rather than a prototype, collaboration with IMM manufactur-
tions was launched five times, resulting in 160 machine runs and ers, as well as OPC/UA working group would be highly beneficial.
corresponding production cycles. During this experiment, values of
41 machine and process parameters were logged. The chosen sam- 6. Conclusion
pling rate was 2 Hz.
The second experiment was focusing on molding dog bone This paper has provided requirements, description of the de-
parts with 15 mm thickness. Only one of the sensors in the mold velopment and capabilities of the prototype of an open applica-
was used for logging the data, as part of the cavity was closed to tion programming interface for injection molding machines. The
produce only one specimen per production cycle. Here DOE was interface is open for external interaction with the machine con-
created using the same LHS method and included 24 combinations troller, allowing logging and setting values of process parameters.
of backpressure, cooling time, holding pressure, holding pressure The openness of the prototype API also provides possibilities for
time, injection speed and screw speed parameters. Each combina- rapid algorithm prototyping and testing, when developing control
tion was launched three times, so the experiment consisted of 72 strategies in the laboratory or at a production site. The API’s ca-
production cycles. This time 65 machine and process parameters pability of complying with soft real-time and hard real-time data
were logged, as well as temperature and pressure from one of the acquisition was tested with different sampling rates, and later the
sensors installed in the mold. The data from the first experiment injection molding process data was logged during two different ex-
has then been used in order to test application of ML methods to periments. The data from the first experiment has later been used
create prediction models for the quality of dog bone parts, more for application of ML methods for prediction of the produced parts
information on how this was done is provided in (Ogorodnyk et al., quality.
2018).
Declaration of Competing Interest
5. Limitations and future work
The authors declare that they have no known competing finan-
As it is shown in the previous section the prototype API is cial interests or personal relationships that could have appeared to
able to comply with the defined requirements. Due to its open- influence the work reported in this paper.
ness it allows the user to access the necessary process parame-
ters and log them with a chosen sampling rate. In addition, it pro- Acknowledgements
vides possibility to add the necessary modules and classes for use
of other communication protocols or rapid prototyping of the data This research is funded by Norwegian Research Council as part
analysis algorithms of interest. Anyone familiar with the Python3 of the “MegaMould” Project (project number: 256819) and through
programming language can deploy additional modules to the API the SFI Manufacturing Project (project number: 237900).
prototype using the package provided in the following repository:
https://github.com/SintefManufacturing/IMM_API. References
The current API prototype version includes the following limi-
ARBURG. Host computer system (ALS). 2020 [cited 2020 13.07.2020]; Available
tations: from: https://www.arburg.com/en/products- and- services/injection- moulding/
production-management/host-computer-system-als/.
• Only class for the EMI data exchange protocol is implemented; Charest, M., Finn, R., Dubay, R., 2018. Integration of artificial intelligence in an injec-
• Real-time logging is provided on the speed of 2 Hz or lower, tion molding process for on-line process parameter adjustment. In: 2018 Annual
IEEE International Systems Conference (SysCon),. IEEE, pp. 1–6.
while the faster sampling speeds lead to the soft real-time data
EUROMAP. EUROMAP 77 – data exchange interface between injection moulding
acquisition; machines and MES. 2020 [cited 2020 25.06.2020]; Available from: https://
• The setting function of the API implementation is limited by opcfoundation.org/markets- collaboration/plastics- and- rubber- machinery/.
the available parameter URIs and some of the parameter values Huang, M.-.C., Tai, C.-.C., 2001. The effective factors in the warpage problem of an
injection-molded part with a thin shell feature. J. Mater. Process. Technol. 110
can not be set through the API due to this; (1), 1–9.
• The API prototype doesn’t include any graphical user interface; ISO. ISO 527-2:2017 Plastics – Determination of tensile properties – Part 2: test
• The API does not consider the information security aspects. conditions for moulding and extrusion plastics. 2012 [cited 2020 13.07.2020];
Available from: https://www.iso.org/standard/56046.html.
As a result, future work should include development of classes Kashyap, S., Datta, D., 2015. Process parameter optimization of plastic injection
molding: a review. Int. J. Plast. Technol. 19 (1), 1–18.
for other data exchange protocols, such as EUROMAP77 to facili- Kull, H., 2015. Mass Customization: Opportunities, Methods, and Challenges for
tate use of the interface prototype with IMMs of other manufac- Manufacturers. Apress.
457
This is a resupply of March 2023 as the template used in the publication of the original article contained errors. The content of the article has remained unaffected.
O. Ogorodnyk, M. Larsen, K. Martinsen et al. Procedia CIRP 97 (2020) 453–458
Kurose, J.F., Ross, K.W., 2010. Computer Networking: a Top-Down Approach. Pearson Saldivar, A.A.F., et al., 2016. Attribute identification and predictive customisation us-
Addison Wesley. ing fuzzy clustering and genetic search for industry 4.0 environments. In: 2016
Lee, J., Kao, H.-.A., Yang, S., 2014. Service innovation and smart analytics for industry 10th International Conference on Software, Knowledge, Information Manage-
4.0 and big data environment. Proc. CIRP 16, 3–8. ment & Applications (SKIMA). IEEE, pp. 79–86.
Maciaszek, L., Liong, B.L., 2004. Practical Software Engineering: An Interactive Seaholm, S.K., Ackerman, E., Wu, S.-.C., 1988. Latin Hypercube Sampling and the
Case-Study Approach to Information Systems Development. Pearson Addison sensitivity analysis of a Monte Carlo epidemic model. Int. J. Biomed. Comput.
Wesley. 23 (1–2), 97–112.
Madeyski, L., Sochmialek, M., 2005. Architectural design of modern web applica- Tellaeche, A., Arana, R., 2013. Rapid data acquisition system for complex algo-
tions. Found. Comput. Decis. Sci. 30 (1), 49–60. rithm testing in plastic molding industry. Int. J. Mech., Aerosp., Ind., Mechatron.
MDPV. Manufacturing Execution System HYDRA. 2020 [cited 2020 03.07.2020]; Manuf. Eng. 7 (7), 1391–1395.
Available from: https://www.mpdv.com/en/products- solutions/mes- hydra/ Vrabič, R., Kozjek, D., Butala, P., 2017. Knowledge elicitation for fault diagnostics in
#c2077-1. plastic injection moulding: a case for machine-to-machine communication. CIRP
Negri, E., Fumagalli, L., Macchi, M., 2017. A review of the roles of digital twin in Ann. 66 (1), 433–436.
CPS-based production systems. Proc. Manuf. 11, 939–948. Yin, S., et al., 2014. A review on basic data-driven approaches for industrial process
Ogorodnyk, O., et al., 2018. Application of machine learning methods for prediction monitoring. IEEE Trans. Ind. Electron. 61 (11), 6418–6428.
of parts quality in thermoplastics injection molding. In: International Workshop Zhang, Y., et al., 2016. A statistical quality monitoring method for plastic injection
of Advanced Manufacturing and Automation. Springer, pp. 237–244. molding using machine built-in sensors. Int. J. Adv. Manuf. Technol. 85 (9–12),
Ogorodnyk, O., Martinsen, K., 2018. Monitoring and control for thermoplastics injec- 2483–2494.
tion molding a review. Proc. CIRP 67, 380–385. Zhao, P., et al., 2014. A nondestructive online method for monitoring the injection
PythonSoftwareFoundation. queue — A synchronized queue class. 2020 [cited molding process by collecting and analyzing machine running data. Int. J. Adv.
2020 13.07.2020]; Available from: https://docs.python.org/3/library/queue. Manuf. Technol. 72 (5–8), 765–777.
html#module-queue. Zhou, X., et al., 2017. Monitoring and dynamic control of quality stability for injec-
PythonSoftwareFoundation. gc - Garbage Collector interface. 2020 [cited 2020 tion molding process. J. Mater. Process. Technol. 249, 358–366.
13.07.2020]; Available from: https://docs.python.org/3/library/gc.html.
RevPi - Industrial Raspberry Pi. 2020 [cited 2020 25.06.2020]; Available from: https:
//revolution.kunbus.com/revolution- pi- series/.
458
This is a resupply of March 2023 as the template used in the publication of the original article contained errors. The content of the article has remained unaffected.