As we mentioned on our previous article, cyber-physical systems (CPS) are a type of systems that integrates computational and physical elements to perform tasks that involve both the physical world and the digital world. These systems are used in various applications, from manufacturing and transportation to healthcare and energy production. We are surrounded by them.
A quick review of the concepts with some examples:
One of the key characteristics of cyber-physical systems is that they are embedded in the physical/hardware world. This means they are integrated with sensors, actuators, and other physical devices (hardware) that can collect environmental data and control physical systems.
For example, a CPS in a manufacturing plant might be integrated with sensors that monitor the temperature and pressure of the manufacturing process and actuators that control the flow of materials and the operation of machinery.
CPS are also intelligent in the sense that they can process data, make decisions, and take actions based on that data. This allows CPS to adapt to changing conditions and to perform complex tasks that would be difficult or impossible for humans to do.
One of our contributors, Nimbl'bot, is currently working on a system to help people automate and secure their jobs, for example in a power plant to perform certain technical interventions. These systems improve worker safety in complex or hazardous environments. Another example in the medical field is the company Enchanted Tools, a partner of one of our contributors Pollen Robotics who is currently developing a robot to distribute medicine to patients in hospitals. It could eventually allow us to follow the treatment of each hospitalized patient in real time.
Another key characteristic of CPS is that they network with each other. This means they are connected to other systems and devices through wired or wireless connections. These connections allow CPS to exchange data with other systems and devices and coordinate their actions to achieve a common goal. For example, a cyber-physical system in a transportation system might be connected to traffic lights, road signs, and vehicles to coordinate traffic flow and avoid accidents.
Cyber-physical systems (CPS) are complex and pose unique challenges when it comes to security. CPS have this connection with the physical world (hardware) making them vulnerable to physical attacks, such as tampering with sensors and actuators, or disrupting the power supply. CPS also have a network, which means that they are connected to other systems and devices, and this makes them vulnerable to cyber-attacks.
In order to ensure the security of CPS, it is important to implement robust security measures, such as encryption, authentication, or intrusion detection, and to monitor and maintain the security of CPS on an ongoing basis.
By dividing the code into several parts, security is increased in terms of the impact an attack could have on the overall system. Dividing the functionality of a cyber-physical system can help it to gain flexibility and security. Some may argue that it will be more difficult to maintain because it is divided into several pieces of code, but being equipped with a monitoring tool and precise test scenarios can solve the problem.
With Pyluos, this monitoring is possible natively. We have developed it so that you can quickly see what is happening on your system in real-time. We found some articles referring to the "Digital Twin" and its problems during development, Pyluos ensures these tasks. Pyluos creates a representation of the embedded services in python and updates all the values in real time to have a digital twin on the computer.
Improving cyber-physical systems
With Luos, we are working on the continuous improvement of these cyber-physical systems to make them more agile. All this using the microservices concepts.
Many researchers still don't see the possibilities of microservices in the embedded and edge space. Sometimes called "Pre-Integrated Architectures" as mentioned in the CPS4EU project, the microservices philosophy allows to develop services independently so that no component of the system is dependent on any other.
CPS are changing with the use of microservices, which are small, independent, and modular units of software that can be easily combined to create complex applications.
Microservices are changing CPS by making them more flexible, scalable, and interoperable.
CPS were often monolithic, with a single large codebase containing all of the system's functionality. This made it difficult to change the system, as any modifications would require modifying the entire codebase. Every day we see and talk to developers who are fbrought sad examples of a lot of inflexible projects that had to stop abruptly.
However, with the use of microservices, cyber-physical systems can be built using a collection of small, independent services that can be easily combined and modified.
It's a new future we are trying to build with Luos. To be part of the adventure, you can check out our open-source library on GitHub or join our community of developers who are currently exchanging new ways of developing. A platform of exchange and mutual help to allow developers to learn and advance the approach.Get started with Luos