For many technological processes and information processing it is important to get certain results in a specific period of time. In this case the term real-time is used. What are real-time capable systems? How “quick” do they have to be and where are they needed? These are the questions we want to answer with this article.
Real-time unequal to speed
Real-time capable systems are characterized by the capability to deliver results guaranteed, respectively mostly, in a specific period of time. This does not mean that a real-time capable system has to process its data very fast. A standard thermometer, for instance, does not need to measure the temperature of a room every second, because the temperature does not change that fast. A period of 10 seconds would be fine. An example where a shorter period of time is needed, is a word processing program like OpenOffice or Microsoft Word. Just a few milliseconds after the user has pressed a button there has to be a reaction on the monitor. Only this way the user gets the impression of fluent processing.
Quality of real-time
Both of the examples can be called real-time applications although their processing time is relatively slow. What is really important is, how the results relate to the given period of time. If it is always met and if an exceeding would lead to a failure of the system we refer to it as “hard real-time”. An example for this would be the control system that triggers the airbag of vehicles. It has to detect a crash within a split second, process the data and decide if it has to trigger the airbag or not. Here the response time is about one millisecond and an exceeding would lead to a delayed triggering of the airbag so that the protective effect would be affected.
When it is not guaranteed that the given period of time is met we speak of “soft real-time” respectively of “solid real-time”. At “soft real-time” the bigger part of the computation is processed in the given period of time. But from time to time there are exceedings. However, these do not lead to a failure of the system. An example for this would be the earlier mentioned word processing program. If the period of time is not met, the reaction on the monitor appears delayed and the systems hangs for a short time. Speaking of “solid real-time” an exceeding does not lead to a failure, too. But the gathered data gets useless because it is not up-to-date and therefore has to be discarded.
Nowadays “hard real-time” capability is an important requirement for automation technology and robotics. Especially when it comes to motor controls, other actuators, process engineering, process plants or means of travel, certain results have to be available in a specific period of time to realize suitable controls and regulations. Building an entirely real-time capable system, it is important that all used components fulfill the needed real-time requirements. Otherwise a single component could slow down the whole system. Therefore the Robot Makers Company sets high value on deploying only components – from the operating system to the bus system to the power electronics – that harmonize with each other. This holds for general, but especially for real-time capable systems.