Compact representation of mathematical functions for control applications by piecewise linear approximations

ContentsThe exact calculation of a lot of mathematical functions frequently used in connection with digital control or simulation needs much time or very quick and expensive processors. In most real-time applications such an exact calculation is therefore not applicable. One possibility to solve this problem is given by the approximation of complicated and time-consuming functions using simple functions, which are easy to calculate.Functions which are linear in sections (composed of straight stretches) are well suited for such an approximation, because they can be calculated without much effort and very quickly on virtually any processor and with any programming language. A very compact way to realize a function which is linear in sections is by summing up a suitable number of absolute value functions. A simple method to derive the parameters of such an approximation for an arbitrary base function is presented.ÜbersichtDie exakte Berechnung vieler für digitale Steuerungen, Regelungen und Simulationen benötigter mathematischer Funktionen benötigt viel Rechenzeit oder sehr schnelle und daher teure Prozessoren. Daher ist eine solche exakte Berechnung in vielen Echtzeitanwendungen überhaupt nicht möglich. Eine Möglichkeit, diese Problem zu lösen, besteht in der Annäherung schwierig und langwierig zu berechnender Funktionen durch einfache Funktionen, die schnell berechnet werden können.Streckenzüge sind sehr gut für eine solche Näherung geeignet, denn sie können mit einem beliebigen Prozessor und mit Hilfe einer beliebigen Programmiersprache einfach und schnell berechnet werden. Eine besonders kompakte Darstellung von Streckenzügen ergibt sich aus der Summation einer geeigneten Anzahl von Betragsfunktionen. Eine einfache Möglichkeit, die Parameter einer solchen Näherung zu berechnen, wird im folgenden vorgestellt.