Cyber-Physical Systems

  • 161
  • 0
  • 1
  • English 
Nov 2, 2018 00:54
By increasing demand of industry, Cyber-Physical Systems (CPS) attract more attention. CPS include a wide range of knowledge from electrical engineering and computer science to mechanical engineering. In this area there are abundant of software and method to help engineer to develop system, but complexity of today’s system is increasing fastly specially in automotive and aerospace domain. In these systems, a bunch of microcomputer are running several million of code to work together to do a special task, function or specification. Since, CPS is multi domain science, probability of existing an error during design process also is increasing. By increasing design complexity, testing also became more difficult. Besides, many of CPSs have a critical rule in human life for example a failure in car’s brake system could kill somebody. So, companies must make sure that their system are work correctly.

In this are dependability comes to play. Dependability analysis is a science of studying of fault and failure in system. System could be a hardware, software or a model. For dependability analysis there are several methods which developer can apply it to every step of design process. Developer can use some statistical method, mathematics and probability or some other method base on machine learning like Support Vector Machine (SVM) and Fault Tree Analysis (FTA). By these methods vendors are test their system robustness and safety. ISO26262 standard which is an automotive standard also emphasize to do these analysis. Moreover, in aerospace standards push vendor to confirm them.

On such a famous method is fault injection. Traditionally, fault injection was a experimental method which vendors do it at end of design process when the final version of hardware and software are ready. They stress their system under a unusual way in order to simulate a hard condition. Then, by monitoring system behavioral the check system’s functions. For instance, vendors put the hardware in a chamber and they increase temperature and decrease it or bombard the hardware with high energy radiation to make it wrong. Furthermore, in software’s source code, developer change some condition or data to see what happen in output. Generally, fault injection divided in three main categories; hardware-based fault injection, software-based fault injection and simulation-based fault injection. There are more categories in the literature, but at the end all of them refers to those three main groups.

First is hardware-based fault injection. In this category the source of fault is harsh environment. Having an unusual temperature in system or cosmic radiation can create a fault in system. This fault can be a changing data in memory or burning a part of hardware or connection link. Because of harsh environment in automotive and aerospace application, this category is very important.