
Cyber-Physical Systems
Code: 106950Credits: 6
| Degree programme | Type | Course |
|---|---|---|
| Management of Smart and Sustainable Cities | OB | 3 |
Contact lecturer
- Name :
- Lluís Ribas Xirgo
- Email :
- lluis.ribas@uab.cat
Teaching staff
- Ismael Fabricio Chaile Alfaro
Group languages
You can consult this information at the end of the document.
Prerequisites
For a full understanding of the contents of the course, it is convenient to have a basic ability in programming and a good knowledge of how programs execute on computers. For this, you should have completed Computer science, Internet applications’ programming, and Digitalization and microcontrollers courses.
Objectives
This course belongs to the subject of the same name, which considers cities as authentic cyber-physical systems where software and the city are integrated. In this sense, data collected in urban environments is transmitted and processed for decision-making, ultimately resulting in control actions that affect the urban environments themselves.
In this context, the Cyber-physical systems course objective is that students acquire the following competences:
- Know how control loop closes in urban cyber-physical systems.
- Have notions of the usual requirements of cyber-physical systems, including real-time ones.
- Understand the aspects of security, reliability and robustness of the systems.
- Know the software development methodology of the cyber-physical systems.
- Understand the different computational models of the systems.
- Have practical skills with the design and manipulation of state-oriented computational models.
- Know how to estimate implementation costs from the computational models of the systems.
- Have the rudiments of programming for the implementation of control software in cyber-physical systems.
Learning outcomes
- CM15 (Relate the knowledge and skills acquired with those provided by other technicians in interdisciplinary urban management and planning teams.) Relate the knowledge and skills acquired with those provided by other technicians in interdisciplinary urban management and planning teams.
- KM22 (Describe the technologies of data capture and transmission, as well as actuators and robotic systems and the problems associated with their integration into the urban fabric.) Describe the technologies of data capture and transmission, as well as actuators and robotic systems and the problems associated with their integration into the urban fabric.
- SM21 (Use data acquisition systems (e.g. sensors and RFID tags) and their processing as a tool for control (e.g. of instrumentation and robots) and decision-making.) Use data acquisition systems (e.g. sensors and RFID tags) and their processing as a tool for control (e.g. of instrumentation and robots) and decision-making.
Contents
- Introduction to cyber-physical systems
- Modeling of physical systems: continuous and hybrid systems
- Modeling of computer systems and control
- Architecture of cyber-physical systems
- Programming of cyber-physical systems and simulation
- Multi-agent systems
Learning activities and methodology
| Title | Hours | ECTS | Learning outcomes |
|---|---|---|---|
| Problem-solving: Reporting solutions to proposed problems | 24 | 0.96 | SM21 |
| Project: Course project follow-up reporting | 6 | 0.24 | CM15, SM21 |
| Assignment: Project development and report writing | 12 | 0.48 | CM15, SM21 |
| Project: Course project development | 12 | 0.48 | CM15, SM21 |
| Theory: Study | 26 | 1.04 | CM15, KM22 |
| Problem-solving: Problem solution proposals and discussion | 12 | 0.48 | SM21 |
| Theory: Attendance and participation in theory classes | 24 | 0.96 | CM15, KM22 |
| Tutoring: Additional problem-solving activities | 6 | 0.24 | SM21 |
Teaching is structured in the following face-to-face activities:
Theory classes: Presentations of course contents, with a first part that is devoted to the dissemination of the necessary knowledge for the analysis and the design of cyber-physical systems, and to explain cases that situate in context the knowledge and the abilities that are acquired during the course. The second part will be devoted to the discussion of problems that will be dealt with in the corresponding seminars.
Problem-solving seminars: Discussion of small case studies (for example, control of a microwave oven) that serve to consolidate knowledge regarding the analysis, design, and development of cyber-physical systems.
Laboratory practices: Teamwork at the laboratory, following a walk-through guide under the supervision of a teacher. Each session will deal with a specific aspect regarding the implementation of cyber-physical systems.
There is a very important part of teamwork outside the classroom and the laboratory. In this sense, each member of each team will have to assume different roles for each assignment. This also means having to work in an organized way and know how to work autonomously when appropriate.
Assessment
Continuous assessment activities
| Title | Weight | Hours | ECTS | Learning outcomes |
|---|---|---|---|---|
| Midterm exam | 25% | 2 | 0.08 | CM15, KM22 |
| Laboratory | 25% | 12 | 0.48 | SM21 |
| Make-up exam | 50% | 2 | 0.08 | CM15, KM22 |
| Continuous assessment assignments | 25% | 10 | 0.4 | CM15, SM21 |
| Final exam | 25% | 2 | 0.08 | CM15, KM22 |
a) Procedure and assessment activities’ plan
The assessment is continuous with specific activities (exams and assignments) throughout the course. These assessment activities generate a series of grades that determine the final grade.
The calculation of the final grade n follows the following expression:
n = x·50% + p·25% + c·25%
where x is the grade for the exams; p, that for the laboratory project, and c, that for the continuous assessment.
If x < 5 or p < 5, the final grade n is, at most, a 4.5. In other words, the average of the exams and the project must be passed separately.
The exam grade (x) is the average of the midterm and final exam grades, or the final exam grade alone if it is higher. If the final exam grade is below 3.5, a resit exam must be taken.
Project grade p is obtained from the weighted average of the grades corresponding to each lab session. Six are planned. In case of non-attendance, the absent person will receive a 0 as the grade for the corresponding session.
Continuous assessment grade c is obtained from a weighted average of the problem-solving assignments completed throughout the course. There is no minimum and, therefore, the course can be passed with c = 0 as long as x·50% + p·25% ≥ 5.
b) Assessment activities schedule
The dates of all face-to-face activities, including assessment activities, and submission deadlines will be published on the virtual campus (CV) and may be subject to possible changes in programming for reasons of adaptation to possible incidents: they will always be previously informed through the CV since it is the usual mechanism for exchanging information between teachers and students outside the classroom.
In exceptional cases where the affected person receives approval for the rescheduling request of assessment activities (see “Exam Rescheduling” on the School’s website), an alternative will be offered that fits the course schedule.
c) Re-assessment procedure
In accordance with the coordination of the Degree and the deanship of the School of Engineering, the following activities are not recoverable:
- Project, 25% of the final grade
- Continuous assessment, 25% of the final grade
The average grade of the exams can be recovered with a specific make-up exam.
d) Assessment review procedure
Assessment activities can be reviewed any time after corresponding grades are published and before the deadline for the revision of the final exam.
Should the change of a grade be agreed upon, that grade may not be modified in a later review.
No reviews will be done after the closure of the reviews of the final exam, but for the make-up exam.
e) Grading
A “non-assessable” grade is assigned to students that have not participated in any assessment activity. In any other case, not participating in an assessment activity scores 0 in the weighted average computation.
Honors will be awarded to those who obtain grades greater than or equal to 9.0 in each part, up to 5% of those enrolled in descending order of final grades. They may also be granted in other cases if they do not exceed 5% and the final grade is equal to or greater than 9.0.
f) Irregularities, copies and plagiarism
Copies are evidence that the work or the examination has been done in part or in full without the author's intellectual contribution. This definition also includes attempts to copy in exams and reports, and violations of the norms that ensure intellectual authorship. Plagiarisms refer to the works and texts of other authors that are passed on as their own. They are a crime against intellectual property. To avoid plagiarism, quote the sources you use when writing the corresponding work reports or examinations.
In accordance with the UAB regulations, copies or plagiarisms or any attempt to alter the assessment result, for oneself or for others, like e.g. letting other copy, imply a final grade for the corresponding part (exam, continuous assessment or project) of 0 in the computation of the final score and failing the course. This does not limit the right to act against perpetrators, both in the academic field and in the criminal.
The use of Artificial Intelligence (AI) technologies as an integral part of the development of the work is permitted, provided that the result reflects a significant contribution by the student in the analysis and personal reflection. The student must clearly identify which parts have been generated with this technology, specify the tools used and include a critical reflection on how they have influenced the process and the result of the activity. The lack of transparency in the use of AI is considered a lack of academic honesty and entails a penalty in the grade of the activity, or greater sanctions in serious cases.
g) Assessment of repeaters
There is no differentiated treatment for repeaters, but they can take advantage of their own material from the previous year provided it is informed in the corresponding reports.
h) Single assessment
This course does not have a single assessment procedure.
Bibliography
Ribas-Xirgo, Ll. (2026). Simulator-Based Digital Twin of a Robotics Laboratory. Machines, 14(3), 273. https://doi.org/10.3390/machines140302273 (Details the model of the upper layers of the robot controller stack used in the laboratory sessions and as an example in the course.)
Ribas-Xirgo, Ll. (2025). State Machine Model of the Operation Control of a Differential-Drive Mobile Robot. Preprints. https://doi.org/10.20944/preprints202511.0943.v1 (Details the model of the lower layers of the robot controller stack used in the laboratory sessions and as an example in the course.)
Edward A. Lee and Sanjit A. Seshia. (2017). Introduction to Embedded Systems, A Cyber-Physical Systems Approach, Second Edition, MIT Press. https://ptolemy.berkeley.edu/ (A course with similar contents, from a more formal perspective.)
Ll. Ribas Xirgo. (2014). How to code finite state machines (FSMs) in C. A systematic approach. TR01.102791 Embedded Systems. Universitat Autònoma de Barcelona. https://www.researchgate.net/publication/273636602_How_to_code_finite_state_machines_FSMs_in_C_A_systematic_approach (It explains a method for programming finite state machines in C similar to the one used in the course.)
Ll. Ribas Xirgo. (2011). “Basic structure of a computer”, Chapter 5 in Montse Peiron Guàrdia, Lluís Ribas i Xirgo, Fermín Sánchez Carracedo and A. Josep Velasco González: Fundamentals of Computers. Teaching material of the UOC. UOC OpenCourseWare. https://hdl.handle.net/10609/12901 (It covers the model of state machines, algorithmic machines, and the basic architectures of digital systems, aligning with the corresponding topics of the course.)
Tim Wilmshurst. (2010). Designing Embedded Systems with PIC Microcontrollers. Principles and Applications (Second Edition). Elsevier. (Complementary information to the course, presenting a possible embedded system for robot control.)
Brian Bailey, Grant Martin and Andrew Piziali. (2007). ESL Design and Verification. A Prescription for Electronic System-Level Methodology. Elsevier. (It reviews the entire synthesis process of embedded systems and puts the course material into context. Therefore, it is a good complementary resource.)
Software
CoppeliaSim, EDU Version, Coppelia Robotics [https://www.coppeliarobotics.com/]
ZeroBrane Studio, ZeroBrane [https://studio.zerobrane.com/]
Draw.io, diagrams.net [https://app.diagrams.net/]
Course groups and languages
The information provided is provisional until November 30. After this date, you will be able to consult the language of each group through this link. To access the information, you will need to enter the course CODE
| Type of teaching | Group | Language | Semester | Shift |
|---|---|---|---|---|
| (TE) Theory | 61 | Catalan | second semester | afternoon |
| (PAUL) Classroom practices | 611 | Catalan/Spanish | second semester | afternoon |
| (PLAB) Practical laboratories | 611 | Catalan/Spanish | second semester | afternoon |
| (PLAB) Practical laboratories | 612 | Catalan/Spanish | second semester | afternoon |