WO2018020051A1 - Signal flow-based computer program with direct feedthrough loops - Google Patents

Signal flow-based computer program with direct feedthrough loops Download PDF

Info

Publication number
WO2018020051A1
WO2018020051A1 PCT/EP2017/069322 EP2017069322W WO2018020051A1 WO 2018020051 A1 WO2018020051 A1 WO 2018020051A1 EP 2017069322 W EP2017069322 W EP 2017069322W WO 2018020051 A1 WO2018020051 A1 WO 2018020051A1
Authority
WO
WIPO (PCT)
Prior art keywords
component
input
signal
loop
computer program
Prior art date
Application number
PCT/EP2017/069322
Other languages
German (de)
French (fr)
Inventor
Peter Priller
Florian PÖLZLBAUER
Original Assignee
Avl List Gmbh
Kompetenzzentrum - Das Virtuelle Fahrzeug, Forschungsgesellschaft Mbh
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Avl List Gmbh, Kompetenzzentrum - Das Virtuelle Fahrzeug, Forschungsgesellschaft Mbh filed Critical Avl List Gmbh
Priority to EP17749420.0A priority Critical patent/EP3491517B1/en
Priority to US16/321,705 priority patent/US11720722B2/en
Priority to JP2019504848A priority patent/JP7127015B2/en
Publication of WO2018020051A1 publication Critical patent/WO2018020051A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/10Requirements analysis; Specification techniques
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/04Monitoring the functioning of the control system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2117/00Details relating to the type or aim of the circuit design
    • G06F2117/08HW-SW co-design, e.g. HW-SW partitioning

Abstract

The aim of the invention is to provide a method for controlling the course of a signal flow-based computer program on a computing unit of a technical system in order to control, regulate, automate, or simulate a technical function of the technical system, in particular in order to develop a vehicle or a vehicle component, wherein the signal flow-based computer program consists of interconnected software components and has at least one DF loop. According to the invention, this is achieved by the following method steps: a) identifying the at least one DF loop and the DF components which form the at least one DF loop, each said DF component instantaneously imaging at least one DF input signal present at at least one component input onto at least one output signal present at at least one component output, whereby the at least one DF input signal and the at least one output signal are part of the at least one DF loop, b) determining the maximum possible change of the values of the DF input signals for each unit of time from at least one property of the respective DF input signal, c) activating a delay element in front of the component input where a DF input signal is present whose value has the smallest maximum possible change, and d) running the computer program in accordance with the connection of the software components ascertained in steps a) to c).

Description

Signalflussbasiertes Computerprogramm mit Direct-Feedthrough-Schleifen  Signal flow based computer program with direct feedthrough loops
Die gegenständliche Erfindung betrifft ein Verfahren zum Steuern des Ablaufs eines signal- flussbasierten Computerprogramms auf einer Recheneinheit einer technischen Anlage zum Steuern, Regeln, Automatisieren oder Simulieren einer technischen Funktion der techni- sehen Anlage, insbesondere zur Entwicklung eines Fahrzeuges bzw. einer Fahrzeugkomponente, wobei das signalflussbasierte Computerprogramm aus miteinander verbundenen Software-Komponenten besteht und zumindest eine DF-Schleife aufweist. Ferner betrifft die Erfindung ein Verfahren zum Steuern, Regeln, Automatisieren oder Simulieren einer technischen Funktion einer technischen Anlage mittels eines solchen signalflussbasierten Compu- terprogramms und ein Computerprogrammprodukt, das diese Verfahren realisiert und ein computerlesbares Medium mit einem solchen Computerprogrammprodukt.  The subject invention relates to a method for controlling the sequence of a signal-flow-based computer program on a computing unit of a technical system for controlling, regulating, automating or simulating a technical function of the technical see system, in particular for the development of a vehicle or a vehicle component, said Signal flow-based computer program consists of interconnected software components and has at least one DF loop. Furthermore, the invention relates to a method for controlling, regulating, automating or simulating a technical function of a technical installation by means of such a signal flow-based computer program and a computer program product implementing these methods and a computer-readable medium having such a computer program product.
In der Recheneinheit einer technischen Anlage werden in der Regel durch ein signalflussbasiertes Computerprogramm eine oder mehrere Eingangsgrößen der technischen Anlage auf eine oder mehrere Ausgangsgrößen der technischen Anlage abgebildet. Die technische An- läge kann z.B. einen Prüfstand darstellen, der eine technische Funktion, oder einen Teil davon, steuert, regelt, automatisiert oder auch simuliert. Insbesondere eine Simulation der technischen Funktion bringt einige Vorteile: Eine Simulation ist beliebig oft wiederholbar und direkte Messungen am technischen System, also z.B. auf einem Prüfstand, sind nicht notwendig. Bei einem signalflussbasierten Computerprogramm ist es bekannterweise notwendig vor der Ausführung des Computerprogramms vorab die Abarbeitungsreihenfolge von Software-Komponenten des Computerprogramms zu bestimmen. In weiterer Folge werden die Software-Komponenten des Computerprogramms bei der Ausführung des Computerprogramms nach der ermittelten Abarbeitungsreihenfolge abgearbeitet. Dies erfolgt üblicherweise zyklisch und in fest vorgegebenen Intervallen, unter Umständen sogar in Echtzeit. Die einzelnen Software-Komponenten des Computerprogramms bilden in der Regel zumindest ein Eingangssignal an einem Komponenteneingang auf zumindest ein Ausgangssignal an einem Komponentenausgang ab. Es sind natürlich auch Software-Komponenten ohne Komponenteneingang oder ohne Komponentenausgang möglich, derartige Software- Komponenten sind bei der folgenden Problemstellung jedoch nicht relevant. Die Software- Komponenten sind also über deren Komponenteneingänge und/oder Komponentenausgänge miteinander verbunden, sodass sich insgesamt das signalflussbasiertes Computerprogramm, oder ein Teil davon, als Summe der beteiligten Software-Komponenten und deren Verbindung ergibt.  In the arithmetic unit of a technical system, one or more input variables of the technical system are usually mapped to one or more output variables of the technical system by a signal flow-based computer program. The technical equipment may e.g. constitute a test stand that controls, regulates, automates or simulates a technical function, or part of it. In particular, a simulation of the technical function has several advantages: A simulation can be repeated as often as desired and direct measurements on the technical system, eg. on a test bench, are not necessary. In a signal flow-based computer program, it is known that it is necessary to determine in advance the execution order of software components of the computer program prior to the execution of the computer program. Subsequently, the software components of the computer program are executed in the execution of the computer program according to the determined execution order. This is usually done cyclically and at fixed intervals, possibly even in real time. The individual software components of the computer program usually form at least one input signal at a component input to at least one output signal at a component output. Of course, software components without component input or component output are also possible, but such software components are not relevant to the following problem. The software components are thus connected to one another via their component inputs and / or component outputs, so that overall the signal flow-based computer program, or a part thereof, results as the sum of the software components involved and their connection.
Das signalflussbasierte Computerprogramm wird also grundsätzlich in drei Phasen behan- delt: Erstellen der einzelnen Software-Komponenten des Computerprogramms und Verschalten zum Computerprogramm, Bestimmen einer Abarbeitungsreihenfolge der Software- Komponenten, und darauffolgend das Ausführen des Computerprogramms entsprechend der ermittelten Abarbeitungsreihenfolge der Software-Komponenten. Die Phasen der Erstellung der Software-Komponenten und der Ermittlung der Abarbeitungsreihenfolge ebendieser erfolgen normalerweise„offline", also vor der tatsächlichen Ausführung des Computerpro- gramms. The signal flow-based computer program is thus basically treated in three phases: creation of the individual software components of the computer program and connection to the computer program, determination of a processing order of the software program Components, and subsequently the execution of the computer program according to the determined execution order of the software components. The phases of the creation of the software components and the determination of the execution order of these are usually carried out "offline", ie before the actual execution of the computer program.
Es kann bei der Bestimmung der Abarbeitungsreihenfolge der Software-Komponenten jedoch ein Problem entstehen, wenn Software-Komponenten eine Schleife, also eine Rückkopplung, bilden. Bei einer Schleife wird typischerweise ein Komponentenausgang einer betrachteten Software-Komponente direkt oder über andere Software-Komponenten auf ei- nen Komponenteneingang derselben Software-Komponente rückgekoppelt. Eine Schleife stellt also einen zyklischen Signalpfad dar. Wenn also in einer Schleife Software- Komponenten vorhanden sind, die mehrere Komponenteneingänge und Komponentenausgänge aufweisen, so wird die Schleife natürlich nur über je einen Komponenteneingang und je einen zugehörigen Komponentenausgang der jeweiligen Software-Komponenten gebildet. Natürlich können auch mehrere Schleifen vorhanden sein, womit mehrere Komponenteneingänge einer Software-Komponente gemeinsam mit einem Komponentenausgang dieser Software-Komponente mehrere Schleifen bilden können. In diesem Fall bildet die Software- Komponente mehrere Eingangssignale auf ein Ausgangssignal ab. Es können auch mehrere Schleifen über eine Komponenteneingang und mehrere Komponentenausgänge dieser einen Software-Komponente gebildet werden. In diesem Fall bildet die Software-Komponente ein Eingangssignal auf mehrere Ausgangssignale ab. Auch eine Abbildung mehrerer Eingangssignale auf mehrere Ausgangssignale durch eine Software-Komponente und die Bildung von mehreren Schleifen ist denkbar. Für jede einzelne Schleife sind jedoch nur der Komponenteneingang und der Komponentenausgang der Software-Komponente, die die betrachtete Schleife bilden, relevant. Natürlich kann die Abbildung des Komponenteneingangs auf den Komponentenausgang auch durch andere Parameter, z.B. einen weiteren Komponenteneingang derselben Komponente, beeinflusst werden.  However, there may be a problem in determining the execution order of the software components when software components form a loop, that is, a feedback. In a loop, a component output of a considered software component is typically fed back directly or via other software components to a component input of the same software component. Thus, a loop represents a cyclic signal path. Thus, if there are software components in a loop which have multiple component inputs and component outputs, the loop is of course only formed via one component input and one respective component output of the respective software components. Of course, there may also be multiple loops, with which multiple component inputs of a software component together with a component output of this software component can form multiple loops. In this case, the software component maps several input signals to an output signal. It is also possible to form several loops via one component input and several component outputs of this one software component. In this case, the software component maps an input signal to a plurality of output signals. An image of multiple input signals to a plurality of output signals by a software component and the formation of multiple loops is conceivable. However, for each individual loop only the component input and the component output of the software component forming the considered loop are relevant. Of course, mapping of the component input to the component output may also be accomplished by other parameters, e.g. another component input of the same component.
Eine Schleife kann Software-Komponenten aufweisen, die eine sogenannte "non-direct- feedthrough" (NDF) Eigenschaft aufweisen. Das bedeutet, dass sich Änderungen des Ein- gangssignals am betrachteten Komponenteneingang der NDF-Komponente nicht sofort und im gleichen Zyklus der Abarbeitung des Computerprogramms auf das Ausgangssignal am zugehörigen Komponentenausgang dieser Software-Komponente auswirken. Eine NDF- Schleife beinhaltet also zumindest eine Software-Komponente, die als Teil der Schleife ein an zumindest einem Komponenteneingang anliegendes N DF-Eingangssignal auf zumindest ein an zumindest einem Komponentenausgang anliegendes Ausgangssignal abbildet. Es ist also die Softwarekomponente samt dem zumindest einen NDF-Eingangssignal und das zugehörige Ausgangssignal Teil der NDF-Schleife. Es sind einige Methoden zur Behandlung von signalflussbasierten Computerprogrammen mit NDF-Schleifen bekannt. Die bekannte Software Simulink von The MathWorks zur Modellierung von Systemen, beispielsweise, handhabt NDF-Schleifen derart, dass Eingangssignale, welche an einem NDF-Eingang anliegen, bei der Ermittlung der Abarbeitungsreihenfolge der Software-Komponenten schlicht ignoriert werden. Die US 8,849,641 B1 ermöglicht andererseits ein automatisches Bestimmen der Abarbeitungsreihenfolge der Software-Komponenten von NDF-Schleifen. A loop may have software components that have a so-called "non-direct-feedthrough" (NDF) property. This means that changes in the input signal at the considered component input of the NDF component do not immediately and in the same cycle of the execution of the computer program affect the output signal at the associated component output of this software component. An NDF loop thus contains at least one software component which, as part of the loop, maps an N DF input signal present at at least one component input onto at least one output signal present at at least one component output. It is therefore the software component together with the at least one NDF input signal and the associated output signal part of the NDF loop. There are some methods of treatment known from signal flow based computer programs with NDF loops. For example, the well-known Simulink software from The MathWorks for modeling systems handles NDF loops so that input signals present at an NDF input are simply ignored in determining the execution order of the software components. On the other hand, US 8,849,641 B1 makes it possible to automatically determine the execution order of the software components of NDF loops.
Im Gegensatz dazu bedeutet eine DF („direct-feedthrough")-Eigenschaft eines Komponenteneingangs einer Software-Komponente, dass sich Änderungen des Eingangssignals am betrachteten Komponenteneingang im selben Zyklus auf ein Ausgangssignal am zugehöri- gen Komponentenausgang dieser Software-Komponente auswirken, womit sich eine zyklische Datenabhängigkeit ergeben kann. Eine derartige Software-Komponente, die ein DF- Eingangssignal an einem Komponenteneingang unverzögert auf ein Ausgangssignal an einem Komponentenausgang abbildet, wird fortan als DF-Komponente bezeichnet. Eine DF- Schleife liegt dann vor, wenn sämtliche Software-Komponenten, welche die DF-Schleife auf- spannen, DF-Komponenten sind. Teil der DF-Schleife sind nur die DF-Eingangssignale an den Komponenteneingängen und die Ausgangssignale an den Komponentenausgängen der DF-Komponenten die die DF-Schleife aufspannen. Diese Komponenteneingänge mit DF- Eingangssignalen wirken sich direkt und im selben Zyklus auf die Ausgangssignale am zugehörigen Komponentenausgang der betrachteten DF-Komponente aus. Die DF- Komponenten, die zwar DF-Eingangssignale und Ausgangssignale als Teil der Schleife aufweisen, können natürlich auch NDF-Eingangssignale aufweisen oder DF- Eingangssignale, die nicht Teil der betrachteten Schleife sind, sondern Teil einer weiteren DF-Schleife, einer NDF-Schleife oder gar keiner Schleife. Wichtig für die Eigenschaft einer DF-Schleife ist, dass im Signalpfad der DF-Schleife keine NDF-Komponenten als Abbildung von NDF- Eingangssignalen auf Ausgangssignale vorhanden sind.  In contrast, a direct-feedthrough property of a component input of a software component means that changes in the input signal at the considered component input in the same cycle affect an output signal at the associated component output of that software component, resulting in a Such a software component, which instantaneously maps a DF input signal at a component input to an output signal at a component output, is hereafter referred to as a DF component A DF loop exists when all software components, The DF loop contains only the DF input signals at the component inputs and the output signals at the component outputs of the DF components that span the DF loop. Input signals affect the A directly and in the same cycle output signals at the associated component output of the considered DF component. Of course, the DF components, which have DF input signals and output signals as part of the loop, may also have NDF input signals or DF input signals that are not part of the considered loop, but part of another DF loop, an NDF loop or no loop at all. Important for the property of a DF loop is that there are no NDF components in the signal path of the DF loop for mapping NDF input signals to output signals.
Ist im Computerprogramm zumindest eine DF-Schleife, bestehend aus DF-Komponenten, vorhanden, so sind spezielle Methoden zum Auffinden der DF-Komponenten der DF-Schleife anzuwenden. Zu diesem Zweck seien insbesondere die Methoden der "depth-first search" (DFS) oder "breadth-first search" (BFS) zu nennen. Diese Methoden stellen bekannte Algo- rithmen aus der Graphen-Theorie dar. Im Falle der DFS-Methode werden ausgehend von einem Start-Knoten alle Vorgängerknoten besucht. Vorgängerknoten sind Knoten von welchem der betreffende Knoten abhängig ist (z.B. durch den notwendigen Datenfluss), die sich also in einer ersten Vorebene befinden. Ausgehend von den ersten Vorgänger-Knoten in der ersten Vorebene weitersuchend, geht man zu dessen Vorgängerknoten (zweite Vorebene) über. Dies wird so lange wiederholt bis es keinen Vorgänger-Knoten mehr gibt, oder man zu einem Knoten gelangt, welcher im Zuge der Suche schon einmal besucht wurde. In diesem Fall gilt eine zyklische Abhängigkeit als gegeben. Der durchlaufene Suchpfad enthält somit jene Knoten welche die Schleife darstellen. Bei der DFS-Methode wird immer jeweils ein Vorgängerknoten der Vorebene besucht, man geht somit zuerst "in die Tiefe", bis kein Vorgängerkoten existiert. Bei der BFS-Methode werden zuerst alle Vorgänger-Knoten der aktuellen Vorebene besucht (man geht also "in die Breite"), bevor man anschließend einen weite- ren Schritt in die Tiefe geht. If at least one DF loop consisting of DF components is available in the computer program, special methods must be used to find the DF components of the DF loop. For this purpose, the methods of "depth-first search" (DFS) or "breadth-first search" (BFS) should be mentioned in particular. These methods represent known algorithms from Graphene theory. In the case of the DFS method, all predecessor nodes are visited starting from a start node. Predecessor nodes are nodes of which the respective node is dependent (eg, by the necessary data flow), which are thus located in a first pre-level. Proceeding further from the first predecessor nodes in the first pre-level, one goes to its predecessor node (second pre-level). This is repeated until there is no predecessor node left, or one arrives at a node which has already been visited in the course of the search. In this case, a cyclic dependency is considered given. The traversed search path thus contains those nodes that represent the loop. The DFS method always visits a predecessor node of the vertex, so you first go "deep" until no predecessor exists. In the BFS method, all predecessor nodes of the current pre-level are first visited (one goes "wide"), and then one more step into the depth.
Es gibt auch Algorithmen welche das Auffinden von Schleifen etwas effizienter als soeben genannte Methoden lösen, wobei auf D.B.Johnson (1975), "Finding all the elementary cir- cuits of a directed graph" in Siam J. Comput, Vol.4, No1 und H.Lui and J.Wang (2006), "A new way to enumerate cycles in graph", State Key Lab of Intelligent Technology and System Department of Computer Science and Technology, Tsinghua University Beijing 100084, China verwiesen sei.  There are also algorithms which solve loop finding somewhat more efficiently than just mentioned methods, with DBJohnson (1975), "Finding all the elementary cocktails of a directed graph" in Siam J. Comput, Vol.4, No1 and H. Lui and J. Wang (2006), "A New Way to Enumerate Cycles in Graph", State Key Lab of Intelligent Technology and Systems Department of Computer Science and Technology, Tsinghua University Beijing 100084, China.
Methoden zur Identifikation von DF-Schleifen sind somit bekannt, die Auflösung der DF- Schleifen benötigt allerdings meist einen Eingriff durch den Benutzer. In der US  Methods for identifying DF loops are thus known, but the resolution of the DF loops usually requires intervention by the user. In the US
2005/0060129 A1 wird die Abarbeitungsreihenfolge der Software-Komponenten geändert, um damit die DF-Schleife zu lösen. Dabei handelt es sich um Schleifen, die durch hierarchische Modelle innerhalb der Software-Komponenten zustande kommen und nach Transformation in ein flaches Modell nicht mehr existieren - das heißt, dass es sich nicht um reale DF-Schleifen handelt und die in der US 2005/0060129 A1 beschriebene Lösung auf DF- Schleifen im herkömmlichen Sinn nicht anwendbar ist. 2005/0060129 A1, the execution order of the software components is changed in order to solve the DF loop. These are loops that come about through hierarchical models within the software components and no longer exist after transformation into a flat model - that is, that they are not real DF loops and that in US 2005/0060129 A1 solution is not applicable to DF loops in the conventional sense.
In M.Benedikt und F. R. Holzinger (2016),„Automated Configuration for Non-Iterative Co- Simulation" wird die automatisierte Konfiguration einer nicht-iterativen Co-Simulation beschrieben. Hierbei wird jede Software-Komponente innerhalb eines eigenen Solver gerechnet. Dadurch hat jede Software-Komponente ihre eigene lokale Simulationszeit. Die Abarbeitungsreihenfolge der Software-Komponenten wird dynamisch zur Laufzeit der Co-Simulation ermittelt und adaptiert. Es wird jeweils immer jene Software-Komponente gerechnet, dessen lokale Simulationszeit die älteste ist. Ist die lokale Simulationszeit ident (wie z.B. zum Simulationszeitpunkt t=0) wird jene Software-Komponente gerechnet, welche die geringste Anzahl von Komponenteneingängen aufweist. Dieses Verfahren ist jedoch nicht anwendbar, wenn alle Software-Komponenten in derselben Recheneinheit laufen, und dieselbe Simulationszeit haben. In M.Benedikt and FR Holzinger (2016), "Automated Configuration for Non-Iterative Co-Simulation" describes the automated configuration of a non-iterative co-simulation, where each software component is calculated within its own solver Software component is its own local simulation time The execution order of the software components is dynamically determined and adapted at runtime of the co-simulation, always calculating the software component whose local simulation time is the oldest eg at the simulation time t = 0), the software component which has the least number of component inputs is calculated, but this method is not applicable if all software components run in the same processor and have the same simulation time.
Wenn DF-Schleifen eines signalflussbasierten Computerprogramms nicht behandelt werden, so ist die Abarbeitungsreihenfolge der Software-Komponenten aufgrund der zyklischen Abhängigkeit der DF-Komponenten in der DF-Schleife nicht eindeutig und das Computerprogramm kann nicht ausgeführt werden. Für die Abarbeitung des signalflussbasierten Compu- terprogramms mit einer DF-Schleife muss daher die DF-Schleife aufgelöst werden, um die Abarbeitungsreihenfolge der Software-Komponenten, einschließlich der DF-Komponenten, eindeutig ermitteln zu können. If DF loops of a signal flow based computer program are not handled, the execution order of the software components is not unique due to the cyclic dependency of the DF components in the DF loop and the computer program can not be executed. For the processing of the signal flow-based computer program with a DF loop, therefore, the DF loop must be resolved in order to obtain the Processing order of the software components, including the DF components.
Es ist daher die Aufgabe der vorliegenden Erfindung ein Verfahren zur Abarbeitung eines signalflussbasierten Computerprogramms, das zumindest eine Direct-Feedthrough-Schleife aufweist, zu realisieren.  It is therefore the object of the present invention to realize a method for processing a signal flow-based computer program which has at least one direct feedthrough loop.
Diese Aufgabe wird durch ein Verfahren zum Steuern des Ablaufs eines signalflussbasierten Computerprogramms auf einer Recheneinheit einer technischen Anlage zum Steuern, Regeln Automatisieren oder Simulieren einer technischen Funktion der technischen Anlage, insbesondere zur Entwicklung eines Fahrzeuges bzw. einer Fahrzeugkomponente wobei das Computerprogramm aus miteinander verbundenen Software-Komponenten besteht und zumindest eine DF-Schleife aufweist, bestehend aus folgenden Schritten, gelöst:  This object is achieved by a method for controlling the sequence of a signal flow-based computer program on a computing unit of a technical installation for controlling, automating or simulating a technical function of the technical installation, in particular for developing a vehicle or a vehicle component. Components and has at least one DF loop, consisting of the following steps, solved:
a) Identifizieren der zumindest einen DF-Schleife und der DF-Komponenten, die die zumindest eine DF-Schleife bilden, wobei die DF-Komponenten jeweils zumindest ein an zumindest einem Komponenteneingang anliegendes DF-Eingangssignal auf zumindest ein an zumindest einem Komponentenausgang anliegendes Ausgangssignal unverzögert abbilden, womit das zumindest eine DF-Eingangssignal und das zumindest eine Ausgangssignal Teil der zumindest einen DF-Schleife sind, b) Bestimmen der maximal möglichen Änderung pro Zeiteinheit der Werte der DF- Eingangssignale aus zumindest einer Eigenschaft des jeweiligen DF- Eingangssignals,  a) identifying the at least one DF loop and the DF components that form the at least one DF loop, the DF components each having at least one DF input signal applied to at least one component input undelayed on at least one output signal applied to at least one component output whereby the at least one DF input signal and the at least one output signal are part of the at least one DF loop, b) determining the maximum possible change per unit time of the values of the DF input signals from at least one property of the respective DF input signal,
c) Hinzuschalten eines Verzögerungsglieds vor jenen Komponenteneingang, an welchem ein DF-Eingangssignal anliegt, dessen Wert die geringste maximal mögliche Änderung aufweist,  c) adding a delay element in front of those component input to which a DF input signal is applied whose value has the least possible maximum change,
d) Ausführen des Computerprogramms nach der in Schritt a) bis c) ermittelten Verbindung der Software-Komponenten.  d) executing the computer program after the connection of the software components determined in step a) to c).
Weiters wird die Aufgabe durch ein Verfahren zum Steuern, Regeln, Automatisieren oder Simulieren einer technischen Funktion einer technischen Anlage, insbesondere zur Entwicklung eines Fahrzeuges bzw. einer Fahrzeugkomponente, mittels eines signalflussbasierten Computerprogramms, wobei das Computerprogramm aus miteinander verbundenen Software-Komponenten besteht, zumindest eine DF-Schleife aufweist und auf einer Recheneinheit der technischen Anlage ausgeführt wird, bestehend aus folgenden Schritten gelöst: a) Identifizieren der zumindest einen DF-Schleife und der DF-Komponenten, die die zumindest eine DF-Schleife bilden, wobei die DF-Komponenten jeweils zumindest ein an zumindest einem Komponenteneingang anliegendes DF-Eingangssignal auf zumindest ein an zumindest einem Komponentenausgang anliegendes Ausgangs- signal unverzögert abbilden, womit das zumindest eine DF-Eingangssignal und das zumindest eine Ausgangssignal Teil der zumindest einen DF-Schleife sind, b) Bestimmen der maximal möglichen Änderung pro Zeiteinheit der Werte der DF- Eingangssignale aus zumindest einer Eigenschaft des jeweiligen DF- Eingangssignals, c) Hinzuschalten eines Verzögerungsglieds vor jenen Komponenteneingang, an welchem ein DF-Eingangssignal anliegt, dessen Wert die geringste maximal mögliche Änderung aufweist, d) Ausführen des Computerprogramms nach der in Schritt a) bis c) ermittelten Verbindung der Software-Komponenten, um die technische Funktion der technischen Anlage zu steuern, regeln, automatisieren oder simulieren. Furthermore, the object is achieved by a method for controlling, regulating, automating or simulating a technical function of a technical installation, in particular for developing a vehicle or a vehicle component, by means of a signal flow-based computer program, wherein the computer program consists of interconnected software components, at least one Comprising DF loop and is executed on a computing unit of the technical system, comprising the following steps: a) identifying the at least one DF loop and the DF components forming the at least one DF loop, the DF components respectively at least one DF input signal applied to at least one component input to at least one output signal applied to at least one component output. instantaneously map the signal with which the at least one DF input signal and the at least one output signal are part of the at least one DF loop, b) determining the maximum possible change per unit time of the values of the DF input signals from at least one property of the respective DF input signal, c) adding a delay element in front of those component input to which a DF input signal is applied whose value has the least possible maximum change, d) executing the computer program after the connection of the software components determined in step a) to c) in order to obtain the technical Control, regulate, automate or simulate the function of the technical system.
Jede DF-Komponente weist zumindest einen Komponenteneingang und zumindest einen Komponentenausgang auf. An jeder DF-Komponente liegt an zumindest einem Komponenteneingang zumindest ein DF-Eingangssignal an und an zumindest einem Komponenten- ausgang dieser DF-Komponente zumindest ein Ausgangssignal. Durch Verbindung dieser Komponenteneingänge und Komponentenausgänge wird das Ausgangssignal einer DF- Komponente an eine weitere DF-Komponente geführt, wo es als DF-Eingangssignal anliegt und wiederum auf ein Ausgangssignal abgebildet wird. Dies erfolgt so lange, bis eine DF- Schleife gebildet ist. Mehrere DF-Komponenten, bzw. jeweils ein Komponenteneingang und ein Komponentenausgang der DF-Komponenten spannen also eine DF-Schleife auf. Sind mehrere DF-Schleifen vorhanden, so können DF-Komponenten, bzw. deren Komponenteneingang und/oder Komponentenausgang auch Teil mehrerer Schleifen sein.  Each DF component has at least one component input and at least one component output. At least one DF input signal is applied to each DF component on at least one component input, and at least one output signal is present on at least one component output of this DF component. By connecting these component inputs and component outputs, the output of a DF component is fed to another DF component where it is applied as a DF input signal and again mapped to an output signal. This is done until a DF loop is formed. Several DF components, or one component input and one component output of the DF components, thus span a DF loop. If there are multiple DF loops, DF components or their component input and / or component output can also be part of multiple loops.
Es werden die im signalflussbasierten Computerprogramm enthaltenen Software- Komponenten, insbesondere DF-Komponenten also in den Schritten a) bis c) bereits vor Beginn der Abarbeitung des signalflussbasierten Computerprogramms erstellt, bzw. modifiziert und die Abarbeitungsreihenfolge der Software-Komponenten samt DF-Komponenten ermittelt.  The software components contained in the signal flow-based computer program, in particular DF components, are thus already created or modified in steps a) to c) before the processing of the signal flow-based computer program and the execution order of the software components including DF components is determined.
Die durch das Verzögerungsglied erzeugte Verzögerung stellt somit in der im Schritt d) folgenden Abarbeitung des signalflussbasierten Computerprogramms für den jeweilig aktuellen Taktschritt ein Auftrennen der zugehörigen DF-Schleife vor dem Komponenteneingang des betreffenden DF-Eingangssignals dar. Damit ist die betreffende DF-Schleife für den aktuellen Taktschritt an dieser Stelle aufgelöst und wurde quasi zu einer NDF-Schleife umgeändert. Durch das Einfügen von Verzögerungsgliedern an der ermittelten Stelle wird also eine DF- Schleife in eine NDF-Schleife umgewandelt. Das Ausgangssignal, das von der davor liegen- den DF-Komponente erzeugt wird, wird der danach folgenden DF-Komponente erst verzögert als DF-Eingangssignal zur Verfügung gestellt. Die dabei entstandene NDF-Schleife kann dann mit bewährten Verfahren gehandhabt werden. Durch die erzeugte Verzögerung wird während des Ablaufs des Computerprogramms im aktuellen Taktschritt der Wert des DF-Ausganssignals der davor liegenden DF-Komponente eines vorherigen Taktschritt eingelesen - beispielsweise im Falle der Verzögerung um einen Taktschritt der Wert des vorheri- gen Taktschritts. Essentiell für die Bestimmung welcher Komponenteneingang mit einem Verzögerungsglied versehen wird, ist dabei die Ermittlung der innerhalb einer Zeiteinheit, z.B. eines Taktschritts, maximal möglichen Änderung des Werts des zumindest einen (un- verzögerten) DF-Eingangssignals dieses Komponenteneingangs aus zumindest einer Eigenschaft des DF-Eingangssignals. Die Stärke, mit der sich der Wert eines DF-Eingangssignals an einer DF-Komponente ändern könnte, wird gemeinhin als maximale Signaldynamik des DF-Eingangssignals bezeichnet, weswegen in weiterer Folge die Bezeichnung Signaldynamik für„maximal mögliche Änderung des Werts" verwendet wird. Ist im signalflussbasierten Computerprogramm nur eine DF-Schleife mit einer DF-Komponente, deren DF-Ausgang auf den DF-Eingang der selben DF-Komponente rückgekoppelt ist, vorhanden, so wird trivialer- weise dieser eine Komponenteneingang mit einem Verzögerungsglied versehen, woraufhin das signalflussbasierten Computerprogramm keine DF-Schleifen mehr aufweist. Sind jedoch mehrere DF-Komponenten mit DF-Eingangssignalen in einer DF-Schleife vorhanden, so wird die Signaldynamik der vorhandenen DF-Eingangssignale ermittelt. Jener Komponenteneingang, an dem ein DF-Eingangssignal mit der geringsten Signaldynamik anliegt ist mit einem Verzögerungsglied zu versehen und damit die eine DF-Schleife zu einer NDF-Schleife gewandelt. Treten in der einen Schleife mehrere DF-Eingangssignale mit derselben Signaldynamik auf, so wird ein Komponenteneingang, der eines dieser DF-Eingangssignale aufweist, mit dem Verzögerungsglied versehen. The delay generated by the delay element thus represents in the processing of the signal flow-based computer program for the respective current clock step in step d) a separation of the associated DF loop before the component input of the relevant DF input signal. Thus, the relevant DF loop for the current clock step resolved at this point and was virtually changed to a NDF loop. By inserting delay elements at the position determined, a DF loop is thus converted into an NDF loop. The output signal that is generated by the preceding DF component is provided to the subsequent DF component only after a delay as a DF input signal. The resulting NDF loop can then be handled using best practices. During the execution of the computer program in the current clock step, the generated delay reads in the value of the DF output signal of the preceding DF component of a previous clock step - for example in the case of the delay by one clock step, the value of the previous clock step. Essential for the determination of which component input is provided with a delay element, is the determination of the maximum possible change of the value of the at least one (undelayed) DF input signal of this component input from at least one property of the DF within a time unit, eg a clock step. input signal. The strength with which the value of a DF input signal could change on a DF component is commonly referred to as the maximum signal dynamic of the DF input signal, which is why the term signal dynamics is used for "maximum possible change in value" In the signal flow-based computer program, only one DF loop with a DF component, the DF output of which is fed back to the DF input of the same DF component, is trivially provided with a delay element, whereupon the signal flow-based computer program However, if there are multiple DF components with DF input signals in a DF loop, the signal dynamics of the existing DF input signals will be determined, the component input to which a DF input signal with the lowest signal dynamics will be applied provided with a delay element and thus the one DF loop to egg NDF loop changed. If several DF input signals with the same signal dynamics occur in one loop, a component input having one of these DF input signals is provided with the delay element.
Die Signaldynamik des zumindest einen DF-Eingangssignals kann jeweils mit einem Penal- ty-Wert bewertet werden, woraufhin die Penalty-Werte verglichen werden.  The signal dynamics of the at least one DF input signal can each be evaluated with a penalty value, after which the penalty values are compared.
Im Prinzip sollte zum Lösen einer DF-Schleife jenes DF-Eingangssignal verzögert werden, welches durch die Verzögerung den geringsten Fehler am Ausgang des signalflussbasierten Computerprogramms hervorruft. Um diese jeweiligen durch das Verzögern der einzelnen DF-Eingangssignale am Ausgang des signalflussbasierten Computerprogramms verursach- ten Fehler zu bestimmen, können theoretisch die Komponenteneingänge, an denen die DF- Eingangssignale der DF-Komponenten, die die DF-Schleifen bilden, während der Ausführung des signalflussbasierten Computerprogramms testweise einzeln unterbrochen werden. Daraufhin könnten die DF-Eingangssignale bestimmt werden, welche den geringsten Fehler am Ausgang verursachen. Als Fehler würde also beispielsweise die Abweichung des Signals am Ausgang ohne Verzögerung des der DF-Eingangssignale vom Signal am Ausgang mit Unterbrechung des betrachteten DF-Eingangssignals bezeichnet. So würde also bestimmt werden, wie groß der Fehler am Ausgang werden könnte, wenn das DF- Eingangssignalsignal am Komponenteneingang der betrachteten DF-Komponente um zumindest einen Taktschritt verzögert wird, also wie erwähnt die DF-Schleife am betrachteten Komponenteneingang im aktuellen Taktschritt als aufgeschnitten gilt. Nachteilig ist jedoch, dass mit dieser Methode die Signaldynamik der DF-Eingangssignale an den Komponenten- eingängen erst während der Ausführung des Computerprogramms ermittelt werden könnte. Da diese Information zur Bestimmung der Abarbeitungsreihenfolge der Software- Komponenten, insbesondere der DF-Komponenten im signalflussbasierten Computerprogramm bereits vor der eigentlichen Durchführung des signalflussbasierten Computerprogramms benötigt wird, muss vor dem Ausführen des Computerprogramms eine Schätzung (bzw. Näherung) der Signaldynamik der DF-Eingangssignale der DF-Komponenten erfolgen. Daraufhin wird der Komponenteneingang, an dem das DF-Eingangssignal mit der geringsten geschätzten Signaldynamik anliegt, ausgewählt, und vor den Komponenteneingang ein Verzögerungsglied 1/z eingesetzt. Sofern Penalty-Werte verwendet werden, ist der Penalty-Wert dabei umso höher, je größer die geschätzte Signaldynamik ist. Eine hohe geschätzte Signal- dynamik würde im Falle einer Verzögerung einen großen Fehler ergeben. In principle, to release a DF loop, that DF input signal should be delayed, causing the delay to produce the least error at the output of the signal flow-based computer program. In order to determine these respective errors caused by delaying the individual DF input signals at the output of the signal flow based computer program, theoretically, the component inputs at which the DF input signals of the DF components forming the DF loops during execution of the DF loop can signal flow-based computer program can be interrupted individually. Thereupon, the DF input signals causing the least error at the output could be determined. For example, the deviation of the signal at the output without delay of the DF input signals from the signal at the output with interruption of the considered DF input signal would be referred to as an error. So it would be determined how big the error could be at the output if the DF Input signal at the component input of the considered DF component is delayed by at least one clock step, so as mentioned, the DF loop applies to the considered component input in the current clock step as cut open. The disadvantage, however, is that with this method the signal dynamics of the DF input signals at the component inputs could only be determined during the execution of the computer program. Since this information is needed to determine the execution order of the software components, in particular the DF components in the signal flow-based computer program before the actual execution of the signal flow-based computer program, before the execution of the computer program, an estimate (or approximation) of the signal dynamics of the DF input signals the DF components take place. Subsequently, the component input to which the DF input signal with the lowest estimated signal dynamics is applied is selected, and a delay element 1 / z is inserted before the component input. If penalty values are used, the greater the estimated signal dynamics, the higher the penalty value. High estimated signal dynamics would result in a large error in the event of a delay.
Indem die DF-Schleife an der Stelle des Komponenteneingangs mit dem DF-Eingangssignal, das die geringste Signaldynamik aufweist, mit einem Verzögerungsglied versehen ist, wurde diese DF-Schleife zu einer NDF-Schleife gewandelt. Sofern noch weitere DF-Schleifen im Computerprogramm vorhanden sind, können diese auch mit dem erfindungsgemäßen Ver- fahren, oder aber mit anderen Verfahren (z.B. manuell) behandelt werden.  By having a DF element at the location of the component input with the DF input signal having the least signal dynamic, the DF loop has been converted to an NDF loop. If further DF loops are present in the computer program, these can also be treated by the method according to the invention or by other methods (for example manually).
Es kann jedoch auch der Verfahrensschritt c), also das Hinzuschalten des Verzögerungsglieds vor das DF-Eingangssignal, dessen Wert die geringste Signaldynamik aufweist, wiederholt werden, um eine weitere DF-Schleife zu einer NDF-Schleife zu wandeln. Die DF- Schleifen werden also nacheinander an der Stelle der DF-Eingangssignale mit der gerings- ten Signaldynamik aufgetrennt. Dies kann so lange durchgeführt werden, bis keine DF- Schleife im Computerprogramm vorhanden ist, womit auch beliebig verschachtelte DF- Schleifen gelöst werden können. Das bedeutet, dass jegliche DF-Schleifen aufgelöst, d.h. zu NDF-Schleifen umgewandelt, wurden, und damit alle zyklischen Datenabhängigkeiten beseitigt wurden. Die Auflösung der DF-Schleifen ist abermals von der Signaldynamik der (unver- zögerten) DF-Eingangssignale innerhalb eines Taktschritts abhängig. Es ist natürlich auch möglich die weiteren DF-Schleifen auf andere Art, als soeben beschrieben zu lösen. Zu beachten ist, dass die DF-Eingangssignale die vormals zu einer DF-Schleife gehörten, welche jedoch aufgelöst, d.h. zur NDF-Schleife gewandelt wurden, und daraufhin kein Teil einer (weiteren) DF-Schleife sind, keine DF-Eingangssignale mehr darstellen. Damit ist die Signal- dynamik dieser vormaligen DF-Eingangssignale für eine weitere Behandlung, bzw. Auflösung der ggf. noch vorhandenen DF-Schleifen nicht von Relevanz. Wenn in mehreren DF- Schleifen jeweils DF-Eingangssignale mit derselben Signaldynamik auftreten, so wird in ei- nem ersten Schritt ein Komponenteneingang, der eines dieser DF-Eingangssignale mit derselben Signaldynamik aufweist, mit dem Verzögerungsglied versehen. In einem weiteren Schritt wird ein weiterer Komponenteneingang (einer weiteren noch vorhandenen DF- Schleife), der eines dieser DF-Eingangssignale (mit derselben Signaldynamik) aufweist, mit einem Verzögerungsglied versehen - natürlich nur, sofern das DF-Eingangssignal nach dem ersten Schritt noch ein DF-Eingangssignal ist. Es wäre natürlich auch möglich zwei voneinander unabhängige DF-Schleifen gleichzeitig aufzutrennen, indem in der jeweiligen DF- Schleife jeweils der Komponenteneingang mit dem DF-Eingangssignale mit der geringsten Signaldynamik innerhalb der betreffenden Schleife mit einem Verzögerungsglied versehen wird. Die Abarbeitungsreihenfolge des Computerprogramms ergibt sich schlussendlich aus der Verbindung der Software-Komponenten und enthält nun lediglich Signale in NDF- Schleifen. However, it is also possible to repeat the method step c), that is to say the addition of the delay element before the DF input signal whose value has the lowest signal dynamics, in order to convert another DF loop into an NDF loop. The DF loops are thus successively separated at the location of the DF input signals with the lowest signal dynamics. This can be done until there is no DF loop in the computer program, which can be used to solve arbitrarily nested DF loops. This means that any DF loops have been resolved, ie converted to NDF loops, and thus all cyclic data dependencies have been eliminated. The resolution of the DF loops is again dependent on the signal dynamics of the (non-delayed) DF input signals within a clock step. Of course it is also possible to solve the other DF loops in a different way than just described. It should be noted that the DF input signals that previously belonged to a DF loop, but which were resolved, ie converted to the NDF loop, and then are not part of a (further) DF loop, no longer represent DF input signals. Thus, the signal dynamics of these former DF input signals are not relevant for further treatment or resolution of the possibly still present DF loops. If DF input signals with the same signal dynamics occur in several DF loops in each case, In the first step, a component input having one of these DF input signals with the same signal dynamics is provided with the delay element. In a further step, a further component input (another remaining DF loop) having one of these DF input signals (with the same signal dynamics) is provided with a delay element - of course only if the DF input signal is still active after the first step DF input signal is. Of course, it would also be possible to separate two independent DF loops simultaneously by providing in each DF loop the component input with the DF input signals with the lowest signal dynamics within the respective loop with a delay element. The execution order of the computer program results ultimately from the connection of the software components and now only contains signals in NDF loops.
Es wird bei Verwendung von Penalty-Werten also nachdem die DF-Eingangssignale der DF- Komponente mit Penalty-Werten versehen wurden das DF-Eingangssignal mit dem gerings- ten Penalty-Wert ermittelt und der zugehörige Komponenteneingang mit einem Verzögerungsglied versehen, womit die betreffende DF-Schleife aufgetrennt ist. Nach Ermittlung des nächsten unverzögerten DF-Eingangssignals (das noch Teil einer weiteren DF-Schleife ist) mit dem nächsthöherem Penalty-Wert wird abermals der zugehörige Komponenteneingang mit einem Verzögerungsglied versehen und damit die weitere DF-Schleife aufgetrennt, usw. Der Verfahrensschritt b) wird im Verfahren vorteilhafterweise einmalig durchgeführt. Eine Neu-Bestimmung der Signaldynamik der noch vorhandenen unverzögerten DF- Eingangssignale ist nicht erforderlich, jedoch auch möglich. Es ist jedoch zu beachten, dass durch eine Neu-Bestimmung der Signaldynamik die Optimalität der Lösung ggf. nicht mehr garantiert werden könnte. Es kann jedoch zu beliebigen Zeitpunkten das Vorhandensein von DF-Schleifen und DF-Komponenten wie im Verfahrensschritt a) beschrieben, überprüft werden. Gerade nach dem Behandeln eines DF-Eingangssignals nach dem erfindungsgemäßen Verfahren kann es (insbesondere bei verschachtelten DF-Schleifen) hilfreich sein, die noch vorhandenen DF-Schleifen, DF-Komponenten und DF-Eingangssignale des Computerprogramms erneut zu identifizieren.  When using penalty values, ie after the DF input signals of the DF component have been provided with penalty values, the DF input signal with the lowest penalty value is determined and the associated component input is provided with a delay element, whereby the relevant DF Loop is split. After determining the next undelayed DF input signal (which is still part of another DF loop) with the next higher penalty value, the associated component input is again provided with a delay element, thus separating the further DF loop, etc. Method step b) becomes advantageously carried out once in the process. It is not necessary to redetermine the signal dynamics of the still undelayed DF input signals, but it is also possible. However, it should be noted that the optimality of the solution could possibly no longer be guaranteed by redetermining the signal dynamics. However, the presence of DF loops and DF components as described in method step a) can be checked at arbitrary times. Especially after handling a DF input signal according to the method according to the invention, it may be helpful (especially in the case of interleaved DF loops) to re-identify the remaining DF loops, DF components and DF input signals of the computer program.
Bei der Bestimmung der Signaldynamik des zumindest einen DF-Eingangssignals wird zusätzliche Information zum betrachteten DF-Eingangssignal verwendet. Ein DF- Eingangssignal repräsentiert im Allgemeinen eine physikalische Größe. Aus dieser kann somit in vielen Fällen die zu erwartende Signaldynamik des DF-Eingangssignals geschätzt werden. Vorteilhafterweise wird die Signaldynamik des jeweiligen DF-Eingangssignals an- hand der physikalischen Einheit (z.B. Temperatur, Stromstärke, Distanz, etc.) des jeweiligen DF-Eingangssignals bestimmt. Die Verwendung einer physikalischen Einheit ist insbesondere vorteilhaft, da die physikalische Einheit statisch ist, d.h. schon vor dem Abarbeiten des Computerprogramms bekannt ist und zudem in vielen Computerprogrammen gleichermaßen verwendet wird. Jeder physikalischen Einheit (welche beispielsweise aus den Sl-Einheiten abgeleitet sind) werden hierbei vorteilhafterweise geschätzte Fehler, bzw. Signaldynamiken hinterlegt, welche wiederum einen geschätzten Fehler ergeben, falls jenes Eingangssignal verzögert werden würde. Diese Zusammenhänge ergeben sich aus der Tatsache, dass sich gewisse Größen (wie z.B. Temperatur, Distanz) langsam ändern, wohingegen sich andere Größen (wie z.B. Stromstärke, Lichtintensität) schnell ändern können. Weiters kann die Signaldynamik des jeweiligen DF-Eingangssignals anhand des Datentyps des jeweiligen DF- Eingangssignals geschätzt werden. Dies ist vor allem dann anzuwenden, wenn für DF- Eingangssignale keine physikalische Einheit definiert ist, bzw. wenn das DF-Eingangssignal keine Einheit hat (z.B. eine Enum-Variable). Der Datentyp des DF-Eingangssignals kann beispielsweise durch Boolean, Integer oder Float repräsentiert sein, wobei die Signaldynamik von Boolean größer ist als Integer und Float die geringste Dynamik aufweist. Weiters könnte die Datentyp-Bandbreite (z.B. 8, 16, 32, 64 bit) in die Schätzung der Signaldynamik einflie- ßen. In einem Prüfstand ist möglicherweise noch mehr Information zu den DF-In determining the signal dynamics of the at least one DF input signal, additional information about the considered DF input signal is used. A DF input signal generally represents a physical quantity. From this can be estimated in many cases, the expected signal dynamics of the DF input signal. Advantageously, the signal dynamics of the respective DF input signal are determined on the basis of the physical unit (eg temperature, current intensity, distance, etc.) of the respective DF input signal. The use of a physical unit is particularly advantageous since the physical unit is static, ie even before the execution of the Computer program is known and also used in many computer programs alike. Each physical unit (which is derived, for example, from the SI units) is hereby advantageously provided with estimated errors or signal dynamics, which in turn results in an estimated error if that input signal were to be delayed. These relationships arise from the fact that certain quantities (such as temperature, distance) change slowly, whereas other quantities (such as current intensity, light intensity) can change rapidly. Furthermore, the signal dynamics of the respective DF input signal can be estimated from the data type of the respective DF input signal. This is to be used especially if no physical unit is defined for DF input signals, or if the DF input signal has no unit (eg an enum variable). For example, the data type of the DF input signal may be represented by Boolean, Integer, or Float, where the signal dynamics of Boolean is greater than Integer and Float has the least dynamics. Furthermore, the data type bandwidth (eg 8, 16, 32, 64 bit) could be included in the estimation of the signal dynamics. In a test bench, there may be even more information about the DF
Eingangssignalen vorhanden, beispielsweise welchen physikalischen Bereich ein Signal annehmen kann. Auch aus diesem Signalbereich kann eine maximale Änderungsgeschwindigkeit abgeschätzt und zur Berechnung der Signaldynamik des zumindest einen DF- Eingangssignals herangezogen werden. Input signals available, for example, which physical area can accept a signal. Also from this signal range, a maximum rate of change can be estimated and used to calculate the signal dynamics of the at least one DF input signal.
Vorteilhafterweise wird ein Mix aus Einheit und Datentyp der DF-Eingangssignale für die Bestimmung der Signaldynamik des zumindest einen DF-Eingangssignals verwendet, da damit eine genauere Näherung möglich ist. Advantageously, a mix of unit and data type of DF input signals is used to determine the signal dynamics of the at least one DF input signal, since this allows a more accurate approximation.
NDF-Schleifen werden vorteilhafterweise berücksichtigt, indem NDF-Eingangssignale an einem NDF-Komponenteneingang ignoriert werden. Damit sind nur noch die DF-Schleifen von Relevanz und müssen erfindungsgemäß behandelt werden.  NDF loops are advantageously taken into account by ignoring NDF input signals at an NDF component input. Thus, only the DF loops of relevance and must be treated according to the invention.
Die gegenständliche Erfindung wird nachfolgend unter Bezugnahme auf die Figuren 1 bis 3d näher erläutert, die beispielhaft, schematisch und nicht einschränkend vorteilhafte Ausgestaltungen der Erfindung zeigen. Dabei zeigt  The subject invention will be explained in more detail below with reference to Figures 1 to 3d, which show by way of example, schematically and not by way of limitation advantageous embodiments of the invention. It shows
Fig.1 eine beispielhafte Direct-Feedthrough-Schleife  1 shows an exemplary direct feedthrough loop
Fig.2 ein signalflussbasiertes Computerprogramm mit einer Non-Direct-Feedthrough- 2 shows a signal flow-based computer program with a non-direct feedthrough
Schleife loop
Fig.3a ein signalflussbasiertes Computerprogramm mit zwei verschachtelten Direct- Feedthrough-Schleifen  3a shows a signal flow-based computer program with two nested direct feedthrough loops
Fig.3b das signalflussbasierte Computerprogramm, deren Direct-Feedthrough- Schleifen mit Penalty-Werten versehenen sind Fig.3c das signalflussbasierte Computerprogramm mit einer zu einer Non-Direct - Feedthrough-Schleife gewandelten Direct-Feedthrough-Schleife FIG. 3b shows the signal flow-based computer program whose direct feedthrough loops are provided with penalty values 3 c shows the signal flow-based computer program with a direct feedthrough loop converted to a non-direct feedthrough loop
Fig.3d das signalflussbasierte Computerprogramm mit beiden zu einer Non-Direct - Feedthrough-Schleife gewandelten Direct-Feedthrough-Schleifen  3d shows the signal flow-based computer program with both direct feedthrough loops converted to a non-direct feedthrough loop
Fig.1 zeigt beispielhaft eine technische Anlage 3 mit einer Recheneinheit 2, die ein konkretes Ausführungsbeispiel eines signalflussbasiertes Computerprogramms 1 ausführt. Die technische Anlage 3 ist beispielsweise ein Prüfstand für ein Fahrzeug oder eine Fahrzeugkomponente (Verbrennungsmotor, Antriebsstrang, etc.) als Prüfling mit einer Recheneinheit 2, beispielsweise als Teil einer elektronischen Steuerung des Prüfstandes, auf der das signal- flussbasierte Computerprogramm 1 ausgeführt wird, um eine technische Funktion des Prüfstandes zu steuern, zu regeln, zu automatisieren oder zu simulieren, insbesondere zur Durchführung eines definierten Prüflaufes am Prüfstand mit dem Prüfling. 1 shows by way of example a technical system 3 with a computing unit 2, which executes a concrete exemplary embodiment of a signal flow-based computer program 1. The technical system 3, for example, a test stand for a vehicle or a vehicle component (internal combustion engine, powertrain, etc.) as a DUT with a computing unit 2, for example, as part of an electronic control of the test stand on which the signal-flow-based computer program 1 is executed to to control, regulate, automate or simulate a technical function of the test bench, in particular to carry out a defined test run on the test bench with the test object.
Die Recheneinheit 2 weist einen Eingang E auf, über den dem signalflussbasierten Computerprogramm 1 eine Solldrehzahl n_soll zugeführt wird. Weiters weist die Recheneinheit ei- nen Ausgang A auf, über den das Computerprogramm 1 eine Ist-Drehzahl nj'st ausgibt. Das signalflussbasierte Computerprogramm 1 weist die Software-Komponenten P-Regler KP, Regelstrecke KR, Drehzahlsensor KS und Konvertierkomponente KK auf, die eine DF- Schleife bilden. Das signalflussbasierte Computerprogramm 1 bildet in diesem Ausführungsbeispiels also einen geschlossenen Regelkreis zur Regelung der Regelstrecke KR ab. Die Solldrehzahl n_soll wird dem P-Regler KP zugeführt. Der P-Regler gibt einen Strom I als Stellgröße aus, welcher der Regelstrecke KR als Eingangssignal zur Verfügung stellt. Die Regelstrecke KR liefert die Ist-Drehzahl n_ist, die am Ausgang A anliegt. Zudem wird der Komponentenausgang der Regelstrecke KR über den Drehzahlsensor KS und die Konvertierkomponente KK auf den Komponenteneingang des P-Reglers KP und damit auf den Ein- gang E rückgekoppelt. Der Drehzahlsensor KS erhält am Komponenteneingang somit die Ist- Drehzahl n_ist und gibt eine zur Ist-Drehzahl njst proportionale Spannung U aus, welche am Komponenteneingang der Konvertierkomponente KK anliegt. Die Konvertierkomponente KK wiederum konvertiert die Spannung U zu einer Drehzahl n, welche auf den Eingang E und damit den Komponenteneingang des P-Reglers KP rückgekoppelt wird. Damit liegen am P-Regler KP die Solldrehzahl n_soll und die Drehzahl n an. Da keine der Komponenten KP, KR, KS, KK ein Verzögerungselement 1/z (in zeitdiskreter Schreibweise nach z- Transformation) aufweisen, liegt eine DF-Schleife vor. The arithmetic unit 2 has an input E via which the signal flow-based computer program 1 is supplied with a nominal rotational speed n_setpoint. Furthermore, the arithmetic unit has an output A, via which the computer program 1 outputs an actual rotational speed nj ' st. The signal flow-based computer program 1 has the software components P-controller KP, controlled system KR, speed sensor KS and conversion component KK, which form a DF loop. The signal flow-based computer program 1 thus forms a closed control loop for regulating the controlled system KR in this exemplary embodiment. The target speed n_soll is supplied to the P-controller KP. The P controller outputs a current I as manipulated variable, which provides the controlled system KR as an input signal. The controlled system KR supplies the actual rotational speed n_act, which is present at the output A. In addition, the component output of the controlled system KR is fed back via the rotational speed sensor KS and the conversion component KK to the component input of the P controller KP and thus to the input E. The rotational speed sensor KS thus receives the actual rotational speed n_act at the component input and outputs a voltage U proportional to the actual rotational speed njst which is applied to the component input of the converter component KK. The conversion component KK in turn converts the voltage U to a speed n, which is fed back to the input E and thus the component input of the P-controller KP. Thus, the setpoint speed n_setpoint and the speed n are applied to the P controller KP. Since none of the components KP, KR, KS, KK have a delay element 1 / z (in discrete-time notation after z-transformation), a DF loop is present.
Fig.2 stellt eine technische Anlage 3 mit einer Recheneinheit 2, auf dem ein abstrakteres, verallgemeinertes signalflussbasiertes Computerprogramm 1 ausgeführt wird, dar. Darin sind einige Ausgangssignale A1 , A2, A3, A4 an den Komponentenausgängen der Software- Komponenten K1 , K2, K3, K4 jeweils mit Eingangssignalen E2, E2', E3, E4 an den Kompo- nenteneingängen der Software-Komponenten K1 , K2, K3, K4 über die als Pfeile dargestellten Signalpfade verbunden. Ein Ausgangssignal A1 , A2, A3, A3', A4 einer Software- Komponente K1 , K2, K3, K4 kann also, je nach Verbindung, ein Eingangssignal E1 , E2, E2', E3, E4 einer anderen Software-Komponente K1 , K2, K3, K4 sein. Eine Software- Komponente K1 , K2, K3, K4 bildet einen Teil des signalflussbasierten Computerprogramms 1 und alle Software-Komponenten K1 , K2, K3, K4 zusammen und deren Verschaltung über die Signalpfade bilden das signalflussbasierte Computerprogramm 1. Eine Software- Komponente K1 , K2, K3, K4 kann ein beliebiges mathematisches, analytisches, empirisches oder physikalisches Modell in beliebiger Codierung oder ein beliebiger Softwarecode sein und bildet den zumindest einen Komponenteneingang auf den zugehörigen zumindest einen Komponentenausgang der Software-Komponente K1 , K2, K3, K4 ab. Beim Ablauf des signalflussbasierten Computerprogramms 1 wird in einem Taktschritt der Abarbeitung von jeder Software-Komponente K1 , K2, K3, K4 ein Eingangssignal E1 , E3, E4, bzw. auch zwei oder mehr Eingangssignale E2, E2' auf ein Ausgangsignal A1 , A2, A4, oder auch auf mehrere Ausgangssignale A3, A3', abgebildet. Wie erwähnt kann die Anzahl der Eingangssignale E1 , E2, E2', E3, E4 und Ausgangssignale A1 , A2, A3, A3', A4 pro Software-Komponente K1 , K2, K3, K4 beliebig sein. Das signalflussbasierte Computerprogramm 1 erhält über den Eingang E der Recheneinheit 2 das Eingangssignal E1 an der ersten Software-Komponente K1 , und gibt über einen Komponentenausgang der letzten Software-Komponente K3 ein Ausgangs- signal A3' an den Ausgang A der Recheneinheit 2 aus. Der Komponentenausgang der Software-Komponente K1 ist mit dem Komponenteneingang der Software-Komponente K2 verbunden, wodurch die Software-Komponente K2 von der Software-Komponente K1 ein Ausgangssignal A1 als Eingangssignal E2 empfängt. Der Komponentenausgang der Software- Komponente K2 ist weiter mit dem Eingang der Software-Komponente K3 verbunden, wodurch die Software-Komponente K3 ein Ausgangssignal A2 als Eingangssignal E3 empfängt. Wie ersichtlich ist, wird über die Software-Komponente K4 eine NDF-Schleife als Rückkopplung zwischen den Komponenten K3 und K2 gebildet, was durch das Verzögerungssymbol 1/z angedeutet wird. Ein Ausgangssignal A3 der Software-Komponente K3 wird also um einen Taktschritt t der Abarbeitung des signalflussbasierten Computerprogramms 1 verzögert. Als Eingangssignal E4 der Software-Komponente K4 dient somit nicht das Ausgangssignal A3 der Software-Komponente K3 im aktuellen Taktschritt t sondern aus dem vorherigen Taktschritt t-1 , womit die Abbildung des Eingangssignals E4 auf das Ausgangssignal A4 durch die Software-Komponente K4 verzögert wird. Die Abbildung basiert also auf dem Ausgangssignal A3 der Software-Komponente K3 aus dem vorherigen Takt t-1 . Dies ist die Eigenschaft einer NDF-Schleife. Die Abarbeitungsreihenfolge der Eingangssignale E1 , E2, E2', E3, E4, und Ausgangssignale A1 , A2, A3, A3', A4 der Software-Komponenten K1 , K2, K3, Κ4 nach dem Muster Ausgangssignal zum Zeitpunkt t A(t) = Abbildung durch Software-Komponenten des Eingangssignals zum Zeitpunkt t K{E(t)} wäre also: 2 represents a technical system 3 with a computer unit 2 on which a more abstract, generalized signal flow-based computer program 1 is executed. Therein are some output signals A1, A2, A3, A4 at the component outputs of the software components K1, K2, K3 , K4 in each case with input signals E2, E2 ', E3, E4 to the component nenteneingängen the software components K1, K2, K3, K4 connected via the signal paths shown as arrows. An output signal A1, A2, A3, A3 ', A4 of a software component K1, K2, K3, K4 can thus, depending on the connection, an input signal E1, E2, E2', E3, E4 another software component K1, K2 Be K3, K4. A software component K1, K2, K3, K4 forms part of the signal flow-based computer program 1 and all software components K1, K2, K3, K4 and their interconnection via the signal paths form the signal flow-based computer program 1. A software component K1, K2 , K3, K4 may be any mathematical, analytical, empirical or physical model in arbitrary coding or any software code and maps the at least one component input to the associated at least one component output of the software component K1, K2, K3, K4. In the course of the signal flow-based computer program 1, an input signal E1, E3, E4, or even two or more input signals E2, E2 'to an output signal A1, A2, is processed in a clock step of the processing of each software component K1, K2, K3, K4. A4, or even on several output signals A3, A3 ', shown. As mentioned, the number of input signals E1, E2, E2 ', E3, E4 and output signals A1, A2, A3, A3', A4 per software component K1, K2, K3, K4 can be arbitrary. The signal flow-based computer program 1 receives the input signal E1 at the first software component K1 via the input E of the arithmetic unit 2 and outputs an output signal A3 'to the output A of the arithmetic unit 2 via a component output of the last software component K3. The component output of the software component K1 is connected to the component input of the software component K2, whereby the software component K2 receives an output signal A1 as an input signal E2 from the software component K1. The component output of the software component K2 is further connected to the input of the software component K3, whereby the software component K3 receives an output signal A2 as an input signal E3. As can be seen, an NDF loop is formed via the software component K4 as a feedback between the components K3 and K2, which is indicated by the delay symbol 1 / z. An output signal A3 of the software component K3 is therefore delayed by one clock step t of the processing of the signal flow-based computer program 1. Thus, the output signal A3 of the software component K3 is not used as the input signal E4 of the software component K4 in the current clock step t but from the previous clock step t-1, whereby the mapping of the input signal E4 to the output signal A4 is delayed by the software component K4 , The mapping is therefore based on the output signal A3 of the software component K3 from the previous clock t-1. This is the property of an NDF loop. The execution order of the input signals E1, E2, E2 ', E3, E4, and output signals A1, A2, A3, A3', A4 of the software components K1, K2, K3, Κ4 according to the pattern output signal at time t A (t) = mapping by software components of the input signal at time t K {E (t)} would be:
A1 (t)=K1 {E1 (t)}  A1 (t) = K1 {E1 (t)}
E2(t)=A1 (t)  E2 (t) = A1 (t)
A2(t)=K2{[E2(t),E2'(t)]}  A2 (t) = K2 {[E2 (t), E 2 '(t)]}
E3(t)=A2(t)  E3 (t) = A2 (t)
E2'(t)=A4(t)  E2 '(t) = A4 (t)
A3(t)=K3'{E3(t)}  A3 (t) = K3 '{E3 (t)}
E4(t)=A3(t-1 )  E4 (t) = A3 (t-1)
A4(t)=K4{E4(t)}  A4 (t) = {K4 E4 (t)}
A=K3'{E3(t)}  A = K3 '{E3 (t)}
Die gültige sequentielle Abarbeitungsreihenfolge der Softwarekomponenten K1 , K2, K3, K4 wäre also K1 , 1/z, K4, K2, K3 oder alternativ auch 1/z, K4, K1 , K2, K3. Es ist in diesem Fall lediglich wichtig, dass das Verzögerungsglied 1/z vor der Software-Komponente K4 abgear- beitet wird und dass weiterhin die Software-Komponente K1 und die Software-Komponente K4 vor der Software-Komponente K2 abgearbeitet wird. Trivialerweise wird die Software- Komponente K3 in diesem Beispiel als letztes abgearbeitet.  The valid sequential execution order of the software components K1, K2, K3, K4 would therefore be K1, 1 / z, K4, K2, K3 or alternatively also 1 / z, K4, K1, K2, K3. In this case, it is only important that the delay element 1 / z is processed before the software component K4 and that furthermore the software component K1 and the software component K4 are processed before the software component K2. Trivially, the software component K3 is processed last in this example.
Wäre die Software-Komponente K4 hingegen eine DF-Komponente, dann würde das Ausgangssignal A3 der Software-Komponente K3 nicht durch das Verzögerungsglied 1/z verzö- gert werden. Damit würde im selben Taktschritt t das dem Ausgangssignal A3 der Software- Komponente K3 entsprechende Eingangssignal E4 an der Software-Komponente K4 anliegen. Das Ausgangssignal A2 der Software-Komponente K2, das das Eingangssignal E3 der Software-Komponente K3 entspricht, wird aber benötigt, um das Ausgangssignal A3 der Software-Komponenten K3 zu ermitteln, was zu einer zyklischen Abhängigkeit führt und wo- mit eine DF-Schleife vorliegt. Damit wären die Software-Komponenten K2, K3 und K4 DF- Komponenten, da als Teil einer DF-Schleife an deren Komponenteneingängen, die DF- Eingangssignale Ε2', E3 und E4 und an deren Komponentenausgängen die DF- Ausgangssignale A2, A3, A4 anliegen würden. Man beachte, dass der Komponenteneingang mit dem Eingangssignal E2 kein Teil der DF-Schleife ist, da darüber keine DF-Schleife auf- gespannt wird.  If, on the other hand, the software component K4 were a DF component, then the output signal A3 of the software component K3 would not be delayed by the delay element 1 / z. Thus, in the same clock step t, the input signal E4 corresponding to the output signal A3 of the software component K3 would be applied to the software component K4. However, the output signal A2 of the software component K2, which corresponds to the input signal E3 of the software component K3, is required to determine the output signal A3 of the software components K3, which leads to a cyclic dependency and thus a DF loop is present. Thus, the software components K2, K3 and K4 would be DF components, since the DF input signals A2, A3, A4 are present as part of a DF loop at their component inputs, the DF input signals Ε2 ', E3 and E4 and at their component outputs would. Note that the component input with the input signal E2 is not part of the DF loop, since it does not span a DF loop.
Eine solche DF-Schleife wird erfindungsgemäß aufgetrennt, indem die maximal mögliche Änderung pro Zeiteinheit der Werte der DF-Eingangssignale der DF-Komponenten (die die Schleife bilden) aus zumindest einer Eigenschaft des jeweiligen DF-Eingangssignals ermittelt wird. Es wird ein Verzögerungsglieds1/z vor den Komponenteneingang, an dem das zumin- dest eine DF-Eingangssignal, dessen Wert die geringste maximal mögliche Änderung pro Zeiteinheit aufweist, anliegt, geschaltet. Damit wird die DF-Schleife zu einer NDF-Schleife gewandelt. Such a DF loop is separated according to the invention by determining the maximum possible change per unit time of the values of the DF input signals of the DF components (forming the loop) from at least one property of the respective DF input signal. There is a delay element 1 / z before the component input to which the input at least one DF input signal whose value has the lowest maximum possible change per unit time, applied, switched. This converts the DF loop to an NDF loop.
Treten jedoch mehrere DF-Schleifen auf, so müssen im Allgemeinen mehrere Signalpfade an den geeigneten Stellen verzögert werden. Fig.3a zeigt ein auf einer Recheneinheit 2 ausgeführtes signalflussbasiertes Computerprogramm 1 mit den Software-Komponenten K1 , K2, K3, K4, K5, K6, wobei zwei verschachtelte DF-Schleifen gebildet werden. Die Eingänge E', E" des Computerprogramms 1 sind jeweils mit den Komponenteneingängen der Software- Komponenten K1 , K2 verbunden, die somit die Eingangssignale E1 , E2 erhalten. Die Kom- ponentenausgänge der Software-Komponenten K1 , K2 sind mit den Komponenteneingängen der Software-Komponenten K4, K3 verbunden, welche somit die Ausgangssignale A1 und A2 als Eingangssignale E3 und E4 erhalten. Der Komponentenausgang der Software- Komponente K3 ist wiederum mit dem Komponenteneingang der Software-Komponente K4 verbunden, womit die Software-Komponente K4 das Ausgangssignal A3 der Software- Komponente K3 als weiteres Eingangssignal E4' erhält. Der Komponentenausgang der Software-Komponente K4 ist mit dem Komponenteneingang der Software-Komponente K5 verbunden, wodurch dieser das Ausgangssignal A4 der Software-Komponente K4 das Eingangssignal E5 erhält. Über eine nicht verzögerte Rückkopplung sind die Komponentenausgänge der Software-Komponente K5 wiederum mit weiteren Eingängen der Komponenten K3, K4 verbunden, womit diese die Ausgangssignale A5, A5' der Software-Komponente K5 als weitere Eingangssignale Ε3', E4" erhalten. Damit werden durch diese unverzögerten Rückkoppelungen zwei DF-Schleifen A und B gebildet. Die DF-Schleife A wird von den DF- Komponenten K3, K4 und K5 mit den DF-Eingangssignalen Ε3', E4' und E5 gebildet. Die DF-Schleife B wird von den DF-Komponenten K4 und K5 mit den DF-Eingangssignalen E5 und E4" gebildet. Das DF-Eingangssignal E3', das Ausgangssignal A3, das DF- Eingangssignal E4', das Ausgangssignal A4, das DF-Eingangssignal E4", das DF- Eingangssignal E5, das Ausgangssignal A5 und das Ausgangssignal A5' spannen somit zwei DF-Schleifen auf, sind also Teil der zwei DF-Schleifen. Die Eingangssignale E3 und E4 beispielsweise bilden keine DF-Schleife, und sind somit kein Teil der DF-Schleife, obwohl sie Teil der DF-Komponenten K3 und K4 sind. Natürlich können Eingangssignale, die nicht Teil der DF-Schleife in diesem Sinne sind, Einfluss auf Ausgangssignale einer DF-Komponente haben, sind jedoch für die erfindungsgemäße Bestimmung der Signaldynamik bzw. Auftrennung von DF-Schleifen nicht wesentlich. Zudem ist ein Komponentenausgang der Software- Komponente K5 mit dem Komponenteneingang der Software-Komponente K6 verbunden, womit die Software-Komponente K6 das Ausgangssignal A5" der Software-Komponente K5 als Eingangssignal E6 erhält. Weiters ist der Komponentenausgang der Software- Komponente K6 mit dem Ausgang A der Recheneinheit 2 verbunden. Um nun zu ermitteln, welche der Signalpfade der DF-Schleifen A und B (zuerst) aufgeschnitten werden sollen, werden die Werte der DF-Eingangssignale E3', E4', E5, E4" der DF- Komponenten K3, K4, K5 der DF-Schleifen A und B, erfindungsgemäß auf Signaldynamik untersucht, d.h. auf die größtmögliche Änderung pro Zeiteinheit des Werts des DF- Eingangssignals, in diesem Fall innerhalb eines Taktschrittes t, und mit einer Penalty bewertet. Ein geringer Penalty-Wert bedeutet z.B. eine geringe Signaldynamik. Beispielsweise ergeben sich die Werte für die Penalty wie in Fig. 3b bei den Signalpfaden dargestellt, wobei das DF-Eingangssignal E4' am Komponenteneingang der DF-Komponent K4 offensichtlich gegenüber dem DF-Eingangssignal E4" an einem Komponenteneingang der DF- Komponente K4, dem DF-Eingangssignal E3' des Komponenteneingangs der DF-However, when multiple DF loops occur, multiple signal paths generally need to be delayed at the appropriate locations. 3a shows a signal flow-based computer program 1 executed on a computer 2 with the software components K1, K2, K3, K4, K5, K6, wherein two interleaved DF loops are formed. The inputs E ', E "of the computer program 1 are respectively connected to the component inputs of the software components K1, K2, which thus receive the input signals E1, E2 The component outputs of the software components K1, K2 are connected to the component inputs of the software The component output of the software component K3 is in turn connected to the component input of the software component K4, whereby the software component K4 receives the output signal A3 of the software components K4, K3, K3 The component output of the software component K4 is connected to the component input of the software component K5, whereby the latter receives the output signal A4 of the software component K4, the input signal E5, via a non-delayed feedback the component outputs of the software component K5 in turn with further inputs n of the components K3, K4 connected, with which they receive the output signals A5, A5 'of the software component K5 as further input signals Ε3', E4 ". Thus, two DF loops A and B are formed by these undelayed feedbacks. The DF loop A is formed by the DF components K3, K4 and K5 with the DF input signals Ε3 ', E4' and E5. The DF loop B is formed by the DF components K4 and K5 with the DF input signals E5 and E4 ", the DF input signal E3 ', the output signal A3, the DF input signal E4', the output signal A4, the DF Input signal E4 ", the DF input signal E5, the output signal A5 and the output signal A5 'thus span two DF loops, ie they are part of the two DF loops. For example, input signals E3 and E4 do not form a DF loop, and thus are not part of the DF loop, although they are part of DF components K3 and K4. Of course, input signals that are not part of the DF loop in this sense may affect output signals of a DF component, but are not essential to the inventive determination of the signal dynamics or separation of DF loops. In addition, a component output of the software component K5 is connected to the component input of the software component K6, with which the software component K6 receives the output signal A5 "of the software component K5 as the input signal E6 Furthermore, the component output of the software component K6 with the Output A of the arithmetic unit 2 connected. In order to determine which of the signal paths of the DF loops A and B are to be cut (first), the values of the DF input signals E3 ', E4', E5, E4 "of the DF components K3, K4, K5 of the DF Loops A and B, according to the invention, are examined for signal dynamics, ie, the maximum possible change per unit time of the value of the DF input signal, in this case within one clock step t, and valued with a penalty A low penalty value means eg a low signal dynamic. For example, the values for the penalty as shown in Fig. 3b in the signal paths, wherein the DF input signal E4 'at the component input of the DF component K4 obviously compared to the DF input signal E4 "at a component input of the DF component K4, the DF input signal E3 'of the component input of the DF
Komponente K3, sowie des DF-Eingangssignals E5 des Komponenteneingangs der DF- Komponente K5 eine geringe Signaldynamik aufweisen, da das DF-Eingangssignal E4' den Penalty-Wert von Eins (gegenüber Penalty-Werten von Zwei, Drei, bzw. Fünf) aufweist.Component K3, as well as the DF input signal E5 of the component input of the DF component K5 have low signal dynamics, since the DF input signal E4 'has the penalty value of one (versus penalty values of two, three, and five, respectively).
Die Penalty-Werte können sich beispielsweise aus dem Datentyp der Werte des DF- Eingangssignals ergeben, z.B. mit der Definition der Penalty-Werte: Boolean: 9, Byte: 7, Integer: 5, Float: 1. Der Hintergrund hierfür ist der, dass sich der Wert eines Float-Wertes pro Zeiteinheit deutlich geringer verändern kann, als der Wert eines Boolean-Wertes, womit die mögliche Signaldynamik eines Float-Wertes kleiner ist. Die Penalty-Werte können auch nach der physikalischen Einheit der DF-Eingangssignale ermittelt werden, z.B. mit der Definition der Penalty-Werte: Temperatur: 1 , Massenfluss: 3, Umdrehungen pro Minute: 5, Druck: 7. Dabei nutzt man eine physikalische Interpretation der DF-Eingangssignale. Die Temperatur wird sich in einem technischen System deutlich langsamer ändern können, als der Druck, womit man mit einer geringeren Signaldynamik rechnen kann. Man kann verschiedene Kriterien zu Ermittlung der Penalty-Werte auch kombinieren. Also beispielsweise zuerst die Be- Stimmung der physikalischen Einheit und dann innerhalb einer physikalischen Einheit eine weitere Unterteilung gemäß des Datentyps. For example, the penalty values may result from the data type of the values of the DF input signal, e.g. with the definition of the Penalty values: Boolean: 9, Byte: 7, Integer: 5, Float: 1. The reason for this is that the value of a float value per unit of time can change significantly less than the value of a Boolean Value, whereby the possible signal dynamics of a float value is smaller. The penalty values may also be determined by the physical unit of the DF input signals, e.g. with the definition of the Penalty values: Temperature: 1, mass flow: 3, revolutions per minute: 5, pressure: 7. A physical interpretation of the DF input signals is used. In a technical system, the temperature will be able to change much more slowly than the pressure, which means that the signal dynamics can be reduced. It is also possible to combine various criteria for determining the penalty values. So, for example, first the mood of the physical unit and then within a physical unit a further subdivision according to the data type.
Der Signalpfad mit dem geringsten Penalty-Wert von Eins, also das DF-Eingangssignal E4', wird somit aufgetrennt, hier also zwischen der DF-Komponente K3 und K4. Das heißt, dass das Ausgangssignal A3 der DF-Komponente K4 um einen Taktschritt t verzögert als Ein- gangssignal E4' zur Verfügung steht. Damit wird das DF-Eingangssignal E4' zu einem NDF- Eingangssignal, womit die vormalige DF-Schleife A nun eine NDF-Schleife ist. Das DF- Eingangssignal E5 bleibt jedoch ein DF-Eingangssignal, das weiterhin die DF-Schleife B bildet.  The signal path with the lowest penalty value of one, ie the DF input signal E4 ', is thus separated, in this case between the DF component K3 and K4. This means that the output signal A3 of DF component K4 is delayed by one clock step t and is available as input signal E4 '. Thus, the DF input signal E4 'becomes an NDF input signal, whereby the former DF loop A is now an NDF loop. However, the DF input signal E5 remains a DF input signal which continues to form the DF loop B.
Die DF-Schleife B kann nun in einem weiteren Schritt behandelt werden, vorzugsweise ebenso nach dem Verfahrensschritt 1 c). So wird in der noch vorhandenen DF-Schleife B der Signalpfad mit dem geringsten Penalty-Wert, bestimmt - in Fig.3c also der Penalty-Wert von Zwei am Signalpfad vom Ausgangssignal A5 zum DF-Eingangssignal E4" gegenüber dem höheren Penalty-Wert von Fünf am Signalpfad vom DF-Ausganssignal A4 zum DF- Eingangssignal E5. Demnach wird das Ausgangssignal A5 um einen Taktschritt t verzögert und steht der DF-Komponente K4 um diesen verzögerten Taktschritt t als NDF- Eingangssignal E4" zur Verfügung. Damit stellt die vormalige DF-Schleife B nun ebenfalls eine NDF-Schleife dar. Man beachte, dass das Eingangssignal E4 der DF-Komponente K4 nicht aufgetrennt werden muss, da es nicht mit der DF-Schleife verknüpft ist bzw. nicht Teil der DF-Schleife ist. Daher muss auch die Signaldynamik des Eingangssignals E4 gar nicht bestimmt werden. The DF loop B can now be treated in a further step, preferably also after process step 1 c). Thus, in the remaining DF loop B, the signal path with the lowest penalty value is determined-in FIG. 3c, therefore, the penalty value of two on the signal path from the output signal A5 to the DF input signal E4 " higher penalty value of five on the signal path from the DF output signal A4 to the DF input signal E5. Accordingly, the output signal A5 is delayed by one clock step t and is available to the DF component K4 as an NDF input signal E4 "at this delayed clock step t. Thus, the former DF loop B now likewise represents an NDF loop. that the input signal E4 of the DF component K4 does not have to be separated because it is not linked to the DF loop or is not part of the DF loop, so the signal dynamics of the input signal E4 need not be determined at all.
Es ist zu beachten, dass das Auftrennen einer DF-Schleife nicht bedeutet, dass die DF- Komponenten, die die DF-Schleifen gebildet hatten, automatisch NDF-Komponenten hinsichtlich aller Komponenteneingänge und Komponentenausgänge werden, wie auch in Fig. 3b i.V.m. Fig. 3a anhand der DF-Komponente K4 mit den DF-Eingangssignalen E4, E4' und E4" ersichtlich. Dies wäre lediglich der Fall, wenn diese DF-Komponenten keine weitere DF- Schleife bilden, also keine weiteren Komponenteneingänge mit DF-Eingangssignalen, die Teil einer anderen DF-Schleife sind, aufweisen. Falls eine DF-Schleife aufgetrennt wurde, werden lediglich die DF-Eingangssignale, die die DF-Schleife gebildet hatten, zu NDF- Eingangssignalen - weitere DF-Eingangssignale, die eine andere DF-Schleife bilden, bleiben DF-Eingangssignale, da diese andere DF-Schleife (bis zu einem eventuellen weiteren Auflösen ebendieser) bestehen bleibt.  Note that splitting a DF loop does not mean that the DF components that formed the DF loops will automatically become NDF components with respect to all component inputs and component outputs, as shown in Fig. 3b i.V.m. 3a with reference to the DF component K4 with the DF input signals E4, E4 'and E4. "This would only be the case if these DF components do not form another DF loop, ie no further component inputs with DF input signals, If a DF loop has been split, only the DF input signals that had formed the DF loop will become NDF input signals - other DF input signals being another DF loop remain DF input signals, as this other DF loop will remain (pending any further resolution thereof).
Laut Fig.3d liegen nach Auftrennen der Signalpfade keine DF-Schleifen mehr vor. Wenn weitere DF-Schleifen vorhanden wären, so würden als nächstes die Signalpfade mit der nächsthöheren Dynamik durch Einfügen eines Verzögerungsglieds 1/z aufgetrennt werden. Auf diese Weise werden die zyklischen Abhängigkeiten aufgelöst und das signalflussbasierten Computerprogramm kann gemäß der damit feststehenden Abarbeitungsreihenfolge abgear- beitet werden. Dabei ist es selbstverständlich, dass von der verzögerten Eingangssignalen die vergangenen Werte zwischengespeichert werden müssen. Das Verfahren kann zum Auflösen aller DF-Schleifen des signalflussbasierten Computerprogramms 1 verwendet werden. Dazu wird die Signaldynamik des zumindest einen DF-Eingangssignals E3', E4', E4", E5 ermittelt und daraufhin vor den Komponenteneingang, an dem das DF-Eingangssignal E3', E4', E4", E5, das die geringste Signaldynamik aufweist, anliegt ein Verzögerungsglied 1/z geschaltet und damit um zumindest einen Taktschritt t verzögert, bis keine DF-Schleife im signalflussbasierten Computerprogramm 1 mehr vorhanden ist. According to FIG. 3d, no DF loops are present after the signal paths have been separated. If there were more DF loops, next the signal paths with the next higher dynamic would be separated by inserting a delay 1 / z. In this way, the cyclic dependencies are resolved and the signal flow-based computer program can be processed according to the order of execution fixed thereby. It is self-evident that the past values of the delayed input signals must be buffered. The method can be used to resolve all DF loops of the signal flow-based computer program 1. For this purpose, the signal dynamics of the at least one DF input signal E3 ', E4', E4 ", E5 is determined and then before the component input, at which the DF input signal E3 ', E4', E4", E5, which has the lowest signal dynamics, is applied a delay element 1 / z connected and thus delayed by at least one clock step t until no DF loop in signal flow-based computer program 1 longer exists.
Für das signalflussbasierte Computerprogramm 1 ist es wichtig, dass alle DF-Schleifen aufgelöst werden, um die Abarbeitungsreihenfolge festzulegen. Für die gegenständliche Erfin- dung ist es aber ausreichend, wenn zumindest eine dieser DF-Schleifen mit dem oben beschriebenen Verfahren aufgelöst wird. Die anderen DF-Schleifen können auch mit anderen Methoden aufgelöst werden. Vorzugsweise werden aber natürlich alle DF-Schleifen mit dem erfindungsgemäßen Verfahren aufgelöst. For the signal flow based computer program 1, it is important that all DF loops be resolved to determine the execution order. For the present invention, however, it is sufficient if at least one of these DF loops is resolved by the method described above. The other DF loops can work with others as well Methods are resolved. Preferably, however, of course, all DF loops are resolved by the method according to the invention.
Ebenso muss nicht unbedingt immer um einen Taktschritt t (1/z) verzögert werden, sondern es kann auch eine andere Verzögerung gewählt werden. Allgemein wird also ein Verzöge- rungsglied 1/zN eingefügt, um eine DF-Schleife aufzulösen. Likewise, it is not always necessary to delay by one clock step t (1 / z), but another delay can also be selected. In general, therefore, a delay element 1 / z N is inserted in order to resolve a DF loop.

Claims

Patentansprüche claims
1 . Verfahren zum Steuern des Ablaufs eines signalflussbasierten Computerprogramms (1 ) auf einer Recheneinheit (2) einer technischen Anlage (3) zum Steuern, Regeln Automatisieren oder Simulieren einer technischen Funktion der technischen Anlage (3), insbesondere zur Entwicklung eines Fahrzeuges bzw. einer Fahrzeugkomponente wobei das Computerprogramm (1 ) aus miteinander verbundenen Software-Komponenten (K1 , K2, K3, K4, K5, K6) besteht und zumindest eine DF-Schleife aufweist, bestehend aus folgenden Schritten: a) Identifizieren der zumindest einen DF-Schleife und der DF-Komponenten (K3, K4, K5), welche die zumindest eine DF-Schleife bilden, wobei die DF-Komponenten (K3, K4, K5) jeweils zumindest ein an zumindest einem Komponenteneingang anliegendes DF-Eingangssignal auf zumindest ein an zumindest einem Komponentenausgang anliegendes Ausgangssignal unverzögert abbilden, womit das zumindest eine DF-Eingangssignal und das zumindest eine Ausgangssignal Teil der zumindest einen DF-Schleife sind, 1 . Method for controlling the sequence of a signal flow-based computer program (1) on a computer unit (2) of a technical system (3) for controlling, regulating or automating a technical function of the technical system (3), in particular for developing a vehicle or a vehicle component the computer program (1) consists of interconnected software components (K1, K2, K3, K4, K5, K6) and has at least one DF loop, comprising the following steps: a) identifying the at least one DF loop and the DF Components (K3, K4, K5) which form the at least one DF loop, the DF components (K3, K4, K5) each having at least one DF input signal applied to at least one component input on at least one applied to at least one component output Imaging the output signal without delay, whereby the at least one DF input signal and the at least one output signal part of the at least one DF loop s ind,
b) Bestimmen der maximal möglichen Änderung pro Zeiteinheit der Werte der DF- Eingangssignale (Ε3', Ε4', E4", E5) aus zumindest einer Eigenschaft des jeweiligen DF-Eingangssignals (Ε3', Ε4', E4", E5),  b) determining the maximum possible change per unit time of the values of the DF input signals (Ε3 ', Ε4', E4 ", E5) from at least one property of the respective DF input signal (Ε3 ', Ε4', E4", E5),
c) Hinzuschalten eines Verzögerungsglieds (1/zN) vor jenen Komponenteneingang, an welchem ein DF-Eingangssignal (Ε3', Ε4', E4", E5) anliegt, dessen Wert die geringste maximal mögliche Änderung aufweist, c) adding a delay element (1 / z N ) before that component input to which a DF input signal (Ε3 ', Ε4', E4 ", E5) is applied whose value has the least possible maximum change,
d) Ausführen des Computerprogramms 1 nach der in Schritt a) bis c) ermittelten Verbindung der Software-Komponenten.  d) executing the computer program 1 after the connection of the software components determined in step a) to c).
2. Verfahren zum Steuern, Regeln, Automatisieren oder Simulieren einer technischen Funktion einer technischen Anlage (3), insbesondere zur Entwicklung eines Fahrzeuges bzw. einer Fahrzeugkomponente, mittels eines signalflussbasierten Computerprogramms (1 ), wobei das Computerprogramm (1 ) aus miteinander verbundenen Software- Komponenten (K1 , K2, K3, K4, K5, K6) besteht, zumindest eine DF-Schleife aufweist und auf einer Recheneinheit (2) der technischen Anlage (3) ausgeführt wird, bestehend aus folgenden Schritten:  2. Method for controlling, regulating, automating or simulating a technical function of a technical system (3), in particular for developing a vehicle or a vehicle component, by means of a signal flow-based computer program (1), wherein the computer program (1) consists of interconnected software Components (K1, K2, K3, K4, K5, K6), has at least one DF loop and on a computing unit (2) of the technical system (3) is executed, consisting of the following steps:
a) Identifizieren der zumindest einen DF-Schleife und der DF-Komponenten (K3, K4, K5), welche die zumindest eine DF-Schleife bilden, wobei die DF-Komponenten (K3, K4, K5) jeweils zumindest ein an zumindest einem Komponenteneingang anliegendes DF-Eingangssignal auf zumindest ein an zumindest einem Komponentenausgang anliegendes Ausgangssignal unverzögert abbilden, womit das zumindest eine DF-Eingangssignal und das zumindest eine Ausgangssignal Teil der zumindest einen DF-Schleife sind, a) identifying the at least one DF loop and the DF components (K3, K4, K5) forming the at least one DF loop, wherein the DF components (K3, K4, K5) each comprise at least one at least one component input instantaneously map applied DF input signal to at least one output signal applied to at least one component output, whereby the at least one DF input signal and the at least one output signal are part of the at least one DF loop,
b) Bestimmen der maximal möglichen Änderung pro Zeiteinheit der Werte der DF- Eingangssignale (Ε3', Ε4', E4", E5) aus zumindest einer Eigenschaft des jeweiligen DF-Eingangssignals (Ε3', Ε4', E4", E5),  b) determining the maximum possible change per unit time of the values of the DF input signals (Ε3 ', Ε4', E4 ", E5) from at least one property of the respective DF input signal (Ε3 ', Ε4', E4", E5),
c) Hinzuschalten eines Verzögerungsglieds (1/zN) vor jenen Komponenteneingang, an welchem ein DF-Eingangssignal (Ε3', Ε4', E4", E5) anliegt, dessen Wert die geringste maximal mögliche Änderung aufweist, c) adding a delay element (1 / z N ) before that component input to which a DF input signal (Ε3 ', Ε4', E4 ", E5) is applied whose value has the least possible maximum change,
d) Ausführen des Computerprogramms 1 nach der in Schritt a) bis c) ermittelten Verbindung der Software-Komponenten um die technische Funktion der technischen Anlage (3) zu steuern, regeln, automatisieren oder simulieren.  d) execution of the computer program 1 according to the determined in step a) to c) connection of the software components to control the technical function of the technical system (3), regulate, automate or simulate.
3. Verfahren nach Anspruch 1 oder 2, wobei der Schritt c) wiederholt wird, bis keine DF- Schleife im Computerprogramm (1 ) vorhanden ist.  3. The method of claim 1 or 2, wherein the step c) is repeated until no DF loop in the computer program (1) is present.
4. Verfahren nach Anspruch 2, wobei vor jedem Wiederholen des Schritts c) auch der Schritt a) wiederholt wird.  4. The method of claim 2, wherein before each repetition of step c), the step a) is repeated.
5. Verfahren nach einem der Ansprüche 1 bis 4, wobei die mögliche Änderung des Werts des zumindest einen DF-Eingangssignals (Ε3', Ε4', E4", E5) jeweils mit einem Penalty-Wert bewertet und die Penalty-Werte verglichen werden.  5. The method according to any one of claims 1 to 4, wherein the possible change in the value of the at least one DF input signal (Ε3 ', Ε4', E4 ", E5) each evaluated with a penalty value and the penalty values are compared.
6. Verfahren nach einem der Ansprüche 1 bis 5, wobei die mögliche Änderung des Werts der DF-Eingangssignale (Ε3', Ε4', E4", E5) anhand einer physikalischen Einheit der jeweiligen DF-Eingangssignale (Ε3', Ε4', E4", E5) bestimmt werden.  6. The method according to any one of claims 1 to 5, wherein the possible change in the value of the DF input signals (Ε3 ', Ε4', E4 ", E5) based on a physical unit of the respective DF input signals (Ε3 ', Ε4', E4 ", E5).
7. Verfahren nach einem der Ansprüche 1 bis 6, wobei die mögliche Änderung des Werts der DF-Eingangssignale (Ε3', Ε4', E4", E5) anhand eines Datentyps der jeweiligen DF- Eingangssignale (Ε3', Ε4', E4", E5) bestimmt werden.  7. The method according to any one of claims 1 to 6, wherein the possible change in the value of the DF input signals (Ε3 ', Ε4', E4 ", E5) based on a data type of the respective DF input signals (Ε3 ', Ε4', E4" , E5).
8. Computerprogrammprodukt, das Anweisungen enthält, die, wenn sie auf einer Steuereinrichtung, insbesondere einer elektronischen Steuerung eines Prüfstands ausgeführt werden, ein Verfahren nach einem der Ansprüche 1 bis 7 durchführen.  8. Computer program product containing instructions that, when executed on a control device, in particular an electronic control of a test bench, perform a method according to one of claims 1 to 7.
9. Computerlesbares Medium, auf welchem ein Computerprogrammprodukt nach Anspruch 8 gespeichert ist.  9. A computer readable medium on which a computer program product according to claim 8 is stored.
PCT/EP2017/069322 2016-07-29 2017-07-31 Signal flow-based computer program with direct feedthrough loops WO2018020051A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP17749420.0A EP3491517B1 (en) 2016-07-29 2017-07-31 Signal flow-based computer program with direct feedthrough loops
US16/321,705 US11720722B2 (en) 2016-07-29 2017-07-31 Signal flow-based computer program with direct feedthrough loops
JP2019504848A JP7127015B2 (en) 2016-07-29 2017-07-31 A computer program based on signal flow with a direct feedthrough loop.

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
ATA50693/2016A AT518909A2 (en) 2016-07-29 2016-07-29 Signal flow based computer program with direct feedthrough loops
ATA50693/2016 2016-07-29

Publications (1)

Publication Number Publication Date
WO2018020051A1 true WO2018020051A1 (en) 2018-02-01

Family

ID=59564163

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2017/069322 WO2018020051A1 (en) 2016-07-29 2017-07-31 Signal flow-based computer program with direct feedthrough loops

Country Status (5)

Country Link
US (1) US11720722B2 (en)
EP (1) EP3491517B1 (en)
JP (1) JP7127015B2 (en)
AT (1) AT518909A2 (en)
WO (1) WO2018020051A1 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7167817B2 (en) * 2003-09-17 2007-01-23 The Mathworks, Inc. Automated approach to resolving artificial algebraic loops
JP4348546B2 (en) 2005-01-20 2009-10-21 ソニー株式会社 Signal processing apparatus, signal processing program, and recording medium
US8756562B2 (en) 2008-12-11 2014-06-17 The Mathworks, Inc. Subgraph execution control in a graphical modeling environment
JP4931978B2 (en) 2009-10-06 2012-05-16 インターナショナル・ビジネス・マシーンズ・コーポレーション Parallelization processing method, system, and program
US8849641B1 (en) 2011-03-07 2014-09-30 The Mathworks, Inc. Eliminating spurious algebraic loops
US10318653B1 (en) * 2015-02-26 2019-06-11 The Mathworks, Inc. Systems and methods for creating harness models for model verification

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "Algebraic Loops - MATLAB & Simulink - MathWorks Deutschland", 1 July 2016 (2016-07-01), pages 1 - 15, XP055424845, Retrieved from the Internet <URL:https://web.archive.org/web/20160701112004/http://de.mathworks.com/help/simulink/ug/algebraic-loops.html> [retrieved on 20171114] *
MAO ZIFANG: "MODELING AND SIMULATION OF ELECTRIC VEHICLE ALGEBRAIC LOOP PROBLEMS REGARDING BATTERY AND FUEL CELLS", 1 August 2014 (2014-08-01), XP055424940, Retrieved from the Internet <URL:https://etda.libraries.psu.edu/files/final_submissions/9620> [retrieved on 20171114] *

Also Published As

Publication number Publication date
JP7127015B2 (en) 2022-08-29
EP3491517A1 (en) 2019-06-05
EP3491517B1 (en) 2023-01-11
US20200380182A1 (en) 2020-12-03
JP2019526853A (en) 2019-09-19
US11720722B2 (en) 2023-08-08
AT518909A2 (en) 2018-02-15

Similar Documents

Publication Publication Date Title
EP2302516B1 (en) Method to perform tasks for calculating a signal to be simulated in real time
AT512977B1 (en) Method for determining a model of an output of a technical system
WO2011134764A1 (en) Control device and method for calculating an output parameter for a controller
WO2017114883A1 (en) Method for configuring a co-simulation for a total system
EP2442248B1 (en) Coupling method for non-iterative co-simulation
EP2897011B1 (en) Method and simulation assembly for the simulation of an automated industrial plant
DE112012006178T5 (en) parameter setting
WO2021058223A1 (en) Method for applying automated driving functions efficiently and in a simulated manner
DE102014207683A1 (en) Method and device for creating a data-based function model
EP2706421A1 (en) Method for the computer-controlled generation of at least a portion of an executable control program
WO2004102291A1 (en) Configuration of tools and processes for metal forming
DE102018110020A1 (en) A method for generating a model of a technical system executable on a test device and test device
DE102013206264A1 (en) Method and apparatus for performing a calculation of a data-based function model
DE102019134053A1 (en) Process for the continuous validation of automated driving functions applied in driving tests
EP2433185B1 (en) Apparatus and method for editing a process simulation database for a process
EP2876512A1 (en) Method for automatically connecting components of a model of a technical system
EP2592504B1 (en) Method for estimating resource consumption in the generation of a control device program code
EP3491517B1 (en) Signal flow-based computer program with direct feedthrough loops
DE202016008563U1 (en) Configuration system for configuring a test device set up to test a controller
WO2016198046A1 (en) Method for selecting a simulation model for modelling at least one functional process of a drivetrain component from an optimized set of models
DE102017118996B3 (en) Method for determining influencing parameter combinations of a physical simulation model
DE102016115331A1 (en) Method and device for determining a model of a technical system
DE102020211931A1 (en) Determination of a transfer function of a technical system
DE102018217139A1 (en) Method and device for configuring a characteristic function of a control device of a motor vehicle
DE102021133786A1 (en) Configuration of a SIL simulation of an ECU running on a computer

Legal Events

Date Code Title Description
DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17749420

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019504848

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2017749420

Country of ref document: EP

Effective date: 20190228