Industrial automation, communication and data management

MSc in Management Engineering

Prof. Matteo Cesana, Paolo Rocco and Letizia Tanca



Thursday 14.15-18.15 (also online)


Learning objectives and course syllabus

The goal of this course is to provide the students with a general view of the current methods and tools offered by the Information Technology for the smart factory. The course covers selected topics in the domains of industrial automation, communication, and data management.

The course fits into the overall program curriculum pursuing some of the defined general learning goals.In particular, the course contributes the development of the following capabilities:

Understand context, functions, processes in a business and industrial environment and the impact of those factors on business performance

Identify trends, technologies and key methodologies in a specific domain (specialization streams)

Design solutions applying a scientific and engineering approach (Analysis, Learning, Reasoning, and Modeling capability deriving from a solid and rigorous multidisciplinary background) to face problems and opportunities in a business and industrial environment.

Specifically, at the end of the course, the student is expected to:

-understand the role of Information Technology tools and methods for the smart factory;

-manage the production, exchange and elaboration of data in a factory;

-identify the role of industrial robots in the factory, why and where they should be used in the production systems;

-understand and master the new trends in industrial robotics, like collaborative robotics;

-use software programs to simulate and to offline program the robots;

-understand complex communication technologies for industrial IoT systems;

-identify IoT system components and their relations;

-use prototyping platforms for the IoT;

-recognize the design space and its degrees of freedom that can be exploited to define communication technologies for the IoT;

-identify the phases of Big Data management and analysis;

-perform the quality assessment of the data sources to be used for data analysis;

-understand and use the principles of data source integration;

-identify and apply the most appropriate data analysis techniques among the best known ones.


Course syllabus is as follows:

1. Introduction: the industry 4.0 paradigm. Production, exchange and management of data. The enabling technologies: robotics, internet of things, big data and analytics.

2. Industrial automation: current and future scenarios of automation. Process automation: the role of feedback control. Discrete automation: action sequencing. The Programmable Logic Controller. Real time systems.

3. Industrial robotics: basic concepts and examples. Selection of a robot based on the application. Elements of robot kinematics, motion planning and control. Tools for robot motion programming.

4. Collaborative robotics: advantages in human-robot collaboration. Safety standards. Examples and applications.

5. Introduction to Industrial Internet of Things (IIoT): building blocks and components.

6. Communication Technologies for IIot: overview of the reference technologies for interconnecting industrial devices and processes (WiFi, industrial Ethernet, ZigBee, ISA 100, WirelessHART, Field BUS, RFID).

7. Communication protocols for the IIoT: overview of the reference protocols to provide services in industrial enviornments (OPC UA, MQTT, HTTP and COAP).

8. Management Platforms for the IIoT: hands on activities with IoT prototyping platforms (NodeRed) and cloud-based management platforms.

9. Introduction to the architectures of modern data management systems.

10. Basics of data integration: model heterogeneity, semantic heterogeneity at the schema level, heterogeneity at the data level.

11. Dynamic data integration: the use of wrappers, mediators, meta-models, ontologies, , etc.

12. Introduction to data analysis and exploration.



The students should be aware of the methodologies and main models for the management of data.



B. Siciliano, L. Sciavicco, L. Villani, G. Oriolo: Robotics: Modelling, Planning and Control, 3rd Ed., Springer, 2009

B. M. Wilamowski, J. D. Irwin: Industrial Communications Systems, 1st Ed. CRC Press, 2017

A. Doan, A. Halevy, Z. Ives: Principles of Data Integration, 1st Ed. Morgan Kaufmann, 2012


Lecture notes

Lecture notes are published during the semester in the BeeP channel



Texts of exercises are published during the semester in the BeeP channel


Lab sessions


In order to participate in the lab activities, students need to bring their own laptop with them.

You need to install your own copy of MATLAB/Simulink. Instructions how to create a Matlab account and download and install your free copy of MATLAB are available here:

Make sure that the Control Systems Toolbox is included in your suite (it should be, unless you deselect it on purpose).

You do not need any internet connection during the lab session.

ABB RobotStudio

RobotStudio is a professional virtual environment for offline programming of robots, interfaced with a virtual controller.

Please install beforehand your own copy of RoboStudio. You can download the software at the following address:


Please notice that it is a somewhat heavy download (1.7 GB). Also the program runs only in a Microsoft Windows PC.

Following the instructions available at the above web page, you should be able to activate a free license (special offer 2020) that is valid until the end of this year.



In order to participate to the lab activities, students shall bring their own laptops with the proper software installed and running. See the following steps to get ready:  

1) install node-js version 12.13.0: go to (if the download section doesn't match with your current Operative System/Architecture, go to and choose the correct one).

2) install node-red: go to and follow the instructions in section "Installing with npm".

3) check if everything is alright: type 'node-red' in the terminal/command prompt (without the '). Something like:

"Welcome to Node-RED
[info] Node-RED version: v1.0.2
[info] Node.js  version: v10.16
[info] Started flows.
[info] Server now running at"
should appear.

If yes, open a browser and go to You are on the node-red editor.

Detailed installation instructions are reported at: 




Students will take a written examination, consisting of open-ended questions.

Texts of exams will be published here.

Results of the exams will be notified to the students through the online services.


Below you can find two examples of exams, with solutions:

Example 1 of exams: text solution

Example 2 of exams: text solution


February 17, 2020

January 29, 2020 SOLUTION