DE10324594A1 - Verfahren zum Bereitstellen einer verbesserten Simulationsfähigkeit eines dynamischen Systems außerhalb der ursprünglichen Modellierungsumgebung - Google Patents

Verfahren zum Bereitstellen einer verbesserten Simulationsfähigkeit eines dynamischen Systems außerhalb der ursprünglichen Modellierungsumgebung Download PDF

Info

Publication number
DE10324594A1
DE10324594A1 DE10324594A DE10324594A DE10324594A1 DE 10324594 A1 DE10324594 A1 DE 10324594A1 DE 10324594 A DE10324594 A DE 10324594A DE 10324594 A DE10324594 A DE 10324594A DE 10324594 A1 DE10324594 A1 DE 10324594A1
Authority
DE
Germany
Prior art keywords
software
model
software model
preliminary
generating
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
DE10324594A
Other languages
English (en)
Inventor
Richard Craig Union City Allen
Randy A. Newark Coverstone
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agilent Technologies Inc
Original Assignee
Agilent Technologies Inc
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 Agilent Technologies Inc filed Critical Agilent Technologies Inc
Publication of DE10324594A1 publication Critical patent/DE10324594A1/de
Ceased legal-status Critical Current

Links

Classifications

    • 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
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Stored Programmes (AREA)

Abstract

Ein Verfahren zum Erzeugen eines Softwaremodells eines dynamischen Systems nimmt ein vorläufiges Softwaremodell des Systems als einen Eingang. Normalerweise basiert das vorläufige Softwaremodell auf einem Systemmodell, das durch einem Systementwerfer innerhalb einer Modellierungsumgebung erzeugt wird. Allgemein ausgedrückt ermöglicht das vorläufige Softwaremodell keinen Zugriff auf die internen Variablen des Systemmodells von außerhalb der Modellierungsumgebung, kann jedoch trotzdem auf einer Computerplattform in der Abwesenheit der Modellierungsumgebung ausgeführt sein. Eine Schnittstellensoftware wird dann erzeugt, die die internen Variablen des Systemmodells freilegt. Das resultierende Softwaremodell, aus sowohl dem vorläufigen Softwaremodell als auch der Schnittstellensoftware gebildet, ermöglicht einen Programmzugriff auf seine internen Variablen und möglicherweise eine Ausführungssteuerung von außerhalb der Modellierungsumgebung, wobei so üblicherweise eine detaillierte Simulation des Systemmodells über die Fähigkeiten hinaus, die durch die Modelierungsumgebung geliefert werden, verbessert wird.

Description

  • Dynamische Systeme, die vom Menschen entwickelte Systeme sind, die auf eine bestimmte vorteilhafte Weise auf sich ändernde Bedingungen innerhalb ihrer Umgebung ansprechen, stellen aufgrund der Vielzahl von und der verschiedenen Bedingungen, die derartige Systeme wirksam handhaben können müssen, eine wesentliche Herausforderung für die Entwerfer derartiger Systeme dar. Elektrische und elektronische Schaltungen zum Beispiel, die nur einen Typ eines dynamischen Systems darstellen, müssen oft auf sich ständig ändernde Eingangssignale reagieren, indem sie Ausgangssignale basierend auf den Eingangssignalen liefern, wodurch eine bestimmte vorteilhafte Aktion in der Umgebung bewirkt wird, in der das System wirkt. Elektrische und elektronische Schaltungen werden mit großem Vorteil in einer Überfülle von Anwendungen von alltäglichen Verbrauchergeräten, wie zum Beispiel Mikrowellenöfen und Personalcomputern, bis hin zu hochtechnologischen Militärwaffen eingesetzt. Zusätzlich umfassen dynamische Systeme außerdem einen Typ von Software, die geschrieben ist, um eine spezifische nützliche Funktion durchzuführen. Ferner können dynamische Systeme diejenigen umfassen, die auf elektrischen, Software-, mechanischen, pneumatischen oder chemischen Prinzipien oder einer Kombination derselben basieren, sind jedoch nicht darauf beschränkt.
  • Die Aufgabe eines Entwerfens dynamischer Systeme wurde stark durch fortdauernde Verbesserungen in der Technologie einer Systemsimulation verbessert. Eine derartige Simulation ermöglicht es, daß Modelle von Dynamiksystementwürfen zu Beginn ohne den Bedarf teurer Prototypen getestet werden, die sowohl schwierig zu bauen als auch beibehalten sind.
  • Durch eine Simulation kann jeder vorstellbare Satz von Testbedingungen eingesetzt werden, um einen vorläufigen Systementwurf gründlich auszutesten. Die Ergebnisse dieser Tests können dann durch den Systementwerfer verwendet werden, um die Leistung des Systems zu analysieren. Üblicherweise werden dann Veränderungen basierend auf den Ergebnissen der Tests durchgeführt, die Tests werden erneut durchgeführt und die Ergebnisse werden noch einmal analysiert, um die positive oder die negative Auswirkung der Veränderungen zu bestimmen. So ermöglicht es eine Simulation, daß der Entwurf des dynamischen Systems mittels eines iterativen Verfahrens vor dem tatsächlichen Aufbau des zu testenden Systems verbessert wird, was zu einer schnelleren und produktiveren Systementwicklung führt.
  • Ein spezifisches Beispiel einer derartigen Modellierungsumgebung ist die Simulink®-Systemdefinition und das -Simulationswerkzeug bzw. -tool von The Mathworks, Inc. Wie in 2 gezeigt ist, ermöglicht es eine Modellierungsumgebung 210 einem Systementwerfer, ein dynamisches System, ob es elektrisch, mechanisch oder anders ist, mittels eines Systemmodels 1 zu spezifizieren, das Charakteristika besitzt, die durch den Entwerfer bestimmt sind. Ein Beispiel des Systemmodels 1 ist in 1 gezeigt. Das Systemmodel 1 besteht aus mehreren Funktionsblöcken 2, wobei jeder derselben eine bestimmte identifizierbare Aufgabe innerhalb des Systemmodels 1 durchführt. Normalerweise werden eines oder mehrere Eingangssignale 3 und Ausgangssignale 4 (oder kollektiv interne Variablen) durch das dynamische System, das durch das Model 1 dargestellt ist, verwendet, um mit der umliegenden Umgebung zu kommunizieren und dieselbe zu beeinflussen. Jedem Block 2 kann einer oder mehrere Blockparameter 5 zugeordnet sein, die beeinflussen, wie der Funktionsblock 2 seine bestimmte Funktion durchführt. Zusätzlich ermöglichen es interne Signale 6 des Systemmodels 1, daß die Funktionsblöcke 2 kommunizieren, wodurch eine Kooperation unter den Funktionsblöcken 2 ermöglicht wird, um die Gesamtfunktion des dynamischen Systems durchzufüh ren. Die meisten Modellierungsumgebungen 210, wie zum Beispiel Simulink, ermöglichen außerdem einen hierarchischen Entwurf, da jeder Block 2 des Systemmodels 1 ferner aus Unterblöcken (nicht gezeigt) bestehen kann, die verschiedene Funktionen innerhalb des zugeordneten Blocks 2 auf höherer Ebene darstellen.
  • Wie in 2 zu sehen ist, kann das Systemmodel 1, das in der Simulink-Umgebung spezifiziert ist, dann innerhalb dieser gleichen Umgebung unter Verwendung von Eingangssignalen 3 simuliert werden, die durch den Systementwickler entwickelt werden. Die Analyse, nachfolgende Entwurfsveränderungen und eine weitere Simulation des Models treten normalerweise alle innerhalb des Gebietes des Simulink-Tools auf. Um diesen Prozeß zu verbessern, ermöglicht Simulink einen Zugriff auf die internen Signale 6, Blockparameter 5 und andere wichtige interne Variablen des Systemmodels 1, die das Verhalten des vorgeschlagenen Systems definieren. Die internen Signale 6 ermöglichen dem Entwerfer einen größeren Einblick in die Operationen des Systemmodels, während eine Modifizierung der Parameterblöcke 5 ein Verfahren liefert, durch das der Entwerfer die Operation des Models 1 während einer Simulation verändern kann. So macht ein Zugriff auf diese internen Variablen den gesamten Simulations- und Analyseprozeß effizienter.
  • Ein verwandtes Codeerzeugungstool 220, wie zum Beispiel das, das von The Mathworks bereitgestellt wird, Real-Time Workshop® (RTW) genannt, nimmt Systemmodelle, die ursprünglich innerhalb der Modellierungsumgebung 210 entworfen wurden, als einen Eingang und erzeugt eine Code oder eine Software, der/die das Systemmodel (230 aus 2) darstellt. Der Code 230 kann in einer von mehreren unterschiedlichen Programmierungssprachen, einschließlich C, Ada und anderer, erzeugt sein. Dieser Code 230 kann dann zu einer anderen Plattform übertragen und auf derselben ausgeführt werden, wobei die Ausführung des Codes 230 möglicherweise abhängig von der Natur der Plattform in Echtzeit ab läuft. In dem Fall von Elektroniksteuerungssystemen kann die Plattform die Zielplattform sein, die letztendlich verwendet wird, um das Steuerungssystem zu implementieren, wobei so ein nahezu nahtloser Fortgang von einer Systemmodelerzeugung zu einem Produktebenencode bereitgestellt wird.
  • Leider sind die systeminternen Variablen, wie zum Beispiel die internen Signale 6 und Blockparameter 5 aus 1, die zu Beginn in der Simulationsumgebung 210 zugänglich sind, oft ohne eine zusätzliche modellspezifische Software, die speziell durch den Entwerfer erzeugt wurde, nicht mehr auf der Plattform zugänglich, die den Modellcode 230 ausführt. In einer Bemühung, diese Situation innerhalb der Mathworks-Umgebung zu beheben, liefert das RTW-Tool eine „Externmodus"-Option, die es dem Entwerfer ermöglicht, auf die internen Variablen des RTW-erzeugten Codes zuzugreifen, wenn auf denselben über die Simulink-Umgebung zugegriffen wird. Bei einem Verwenden eines externen Modus, ist ein derartiger Zugriff auf interne Variablen über Simulink möglich, ob der RTW-erzeugte Code nun auf der gleiche Plattform ausgeführt wird, die Simulink ausführt, oder auf einer anderen Plattform, die mit der Simulink-Plattform mittels einer Kommunikationsverbindung, wie z. B. Übertragungssteuerungsprotokoll/Internetprotokoll (TCP/IP), verbunden ist. In jedem Fall jedoch liegt eine Steuerung der Simulation dennoch vollständig bei der Simulink-Modellierungsumgebung. Als ein Ergebnis ist die Fähigkeit, den RTW-erzeugten Code auszuführen, sowie auf denselben zuzugreifen und ihn möglicherweise zu verändern, wobei die internen Variablen dieses Codes auf einer separaten Plattform laufen, abhängig von den Fähigkeiten von Simulink sowie der Verfügbarkeit einer Kommunikationsverbindung zwischen der Simulink-Plattform und der Plattform, die den RTW-erzeugten Code unterbringt. Anders ausgedrückt ist die Fähigkeit, mittels eines Softwareclienten, der sich außerhalb der ursprünglichen Modellierungsumgebung befindet, auf die internen Variablen eines ausführenden Softwaremodells zuzugreifen, sowie möglicher weise die Ausführung des Softwaremodells in derartigen Fällen zu steuern, gegenwärtig nicht verfügbar.
  • Deshalb wären aus dem Vorangegangenen Verfahren, die einem Softwareclienten außerhalb der ursprünglichen Modellierungsumgebung automatisch die Fähigkeit ermöglichen, auf die internen Variablen eines Softwaremodells zuzugreifen, sowie möglicherweise die Ausführung eines Softwaremodells zu steuern, von Vorteil. Derartige Verfahren würden dem Systementwerfer eine große Flexibilität bei dem Typ und dem Ausmaß einer Ausführung des und eines Zugriffs auf das Softwaremodell, verfügbar in Abwesenheit der ursprünglichen Modellierungsumgebung, ermöglichen.
  • Es ist die Aufgabe der vorliegenden Erfindung, ein Verfahren, ein Computersystem oder ein Programmspeichermedium zu schaffen, die einen Zugriff auf interne Variablen im Rahmen einer Systemsimulation vereinfachen.
  • Diese Aufgabe wird durch ein Verfahren gemäß Anspruch 1 oder 22, ein Computersystem gemäß Anspruch 8 oder ein Programmspeichermedium gemäß Anspruch 15 gelöst.
  • Ausführungsbeispiele der vorliegenden Erfindung, die unten detailliert erläutert sind, stellen ein Verfahren zum Erzeugen eines Softwaremodells eines dynamischen Systems aus einem vorläufigen Softwaremodell dar. Normalerweise wird ein Systemmodell, das innerhalb einer Modellierungsumgebung spezifiziert ist, verwendet, um das vorläufige Softwaremodell, das die Aktionen des Systemmodells darstellt, zu erzeugen. Das vorläufige Softwaremodell ist außerhalb der Modellierungsumgebung ausführbar, die verwendet wird, um das ursprüngliche Softwaremodell zu erzeugen, wobei die internen Variablen des Modells üblicherweise nicht durch einen Softwareclienten zugänglich sind, der der Modellierungsumgebung zugeordnet ist.
  • Um diese Situation zu lindern, wird gemäß Ausführungsbeispielen der Erfindung eine Schnittstellensoftware erzeugt, die zumindest eine der internen Variablen der vorläufigen Softwaremodells freilegt. Das Softwaremodell wird dann aus dem vorläufigen Softwaremodul und der Schnittstellensoftware aufgebaut. Dieses resultierende Softwaremodell ermöglicht so einen Programmzugriff auf die internen Variablen und möglicherweise eine Steuerung der Ausführung des Softwaremodells von außerhalb der Modellierungsumgebung.
  • Ein derartiges Softwaremodell ermöglicht eine detaillierte Simulation und Analyse von Softwaremodellen, die dynamische Systeme darstellen, mittels Softwareclienten mit potentiell größeren Simulations- und Analysefähigkeiten, als innerhalb der ursprünglichen Modellierungsumgebung verfügbar wären. Ferner wäre mit einer erlaubten Modellausführungssteuerung ein derartiger Softwareclient in der Lage, die Ausführung mehrerer Softwaremodelle zu steuern, was es ermöglicht, daß diese Softwaremodelle miteinander über den Softwareclienten in Wechselwirkung stehen. Zusätzlich könnten Softwaremodelle, die eine derartige Programmschnittstelle verwenden, durch die Verwendung ungleicher, inkompatibler Modellierungsumgebungen erzeugt werden, wobei diese Softwaremodelle dennoch in der Lage wären, miteinander mittels des Softwareclienten in Wechselwirkung zu stehen.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
  • 1 ein Blockdiagramm eines Systemmodells, das innerhalb der Simulink-Modellierungsumgebung, sowie anderen Modellierungsumgebungen dargestellt sein kann;
  • 2 ein Flußdiagramm eines Verfahrens des Stands der Technik zum Entwickeln einer Software, die ein Modell eines dynamischen Systems darstellt;
  • 3 ein Flußdiagramm eines Verfahrens gemäß einem Ausführungsbeispiels der Erfindung zum Entwicklung eines Softwaremodells eines dynamischen Systems; und
  • 4 ein Blockdiagramm, das eine Mehrzahl ungleicher Softwaremodelle darstellt, die miteinander durch einen Softwareclienten in Wechselwirkung stehen.
  • Ausführungsbeispiele der Erfindung, die unten detailliert beschrieben sind, verwenden als einen Ausgangspunkt ein Softwaremodell (unten als ein vorläufiges Softwaremodell bezeichnet), das innerhalb der Simulink®-Modellierungsumgebung von Mathworks erzeugt wird. Zusätzlich sind die folgenden Ausführungsbeispiele als Software zu finden, die innerhalb der Real-Time Workshop®-(RTW-)Codeerzeugungstool-Umgebung von Mathworks integriert ist, um einen Code mit einer verbesserten Fähigkeit demgegenüber, was normalerweise innerhalb RTW erzielbar ist, zu erzeugen. Andere Simulationsmodelle und entsprechende Entwicklungstool-Umgebungen können jedoch auf eine ähnliche Weise als die Basis für andere Ausführungsbeispiele der vorliegenden Erfindung verwendet werden.
  • Ferner kann die Software anderer Ausführungsbeispiele der Erfindung in variierenden Integrationspegeln mit der zugeordneten Modellierungsumgebung erscheinen. Andere Ausführungsbeispiele können zum Beispiel eine getrennte Folgesoftware umfassen, die separat von dem Codeerzeugungstool installiert ist. Andere Ausführungsbeispiele, wie zum Beispiel diejenigen, die hierin insbesondere erläutert sind, können eine Software beinhalten, die unabhängig von dem Codeerzeugungstool entwickelt ist, jedoch innerhalb des Codeerzeugungstools als eines mehrerer Sprachziele, die durch das Tool angeboten werden, integriert ist. Außerdem können andere Ausführungsbeispiele einen Code darstellen, der stark innerhalb des Codeerzeugungstools bis zu dem Punkt integriert ist, daß ein derartiger Code durch einen äußeren Betrachter nicht von dem unterscheidbar ist, der den Rest des Tools aufweist.
  • 3 zeigt ein Flußdiagramm, das ein Ausführungsbeispiel eines Verfahrens 300 der vorliegenden Erfindung darstellt. Als ein Eingang durch das Verfahren 300 empfangen wird ein vorläufiges Softwaremodell 230, das zum Beispiel der Code 230 sein kann, der durch das Codeerzeugungstool 202 erzeugt wurde, wie zum Beispiel RTW, wie in 2 gezeigt ist. Das vorläufige Softwaremodell 230 ist von einem Systemmodell 1 hergeleitet, das innerhalb der Modellierungsumgebung 210, ebenso aus 2, erzeugt ist. Als ein Ergebnis kann das Codeerzeugungstool 220 entweder alleine oder in Kombination mit der Modellierungsumgebung 210 in anderen Ausführungsbeispielen der vorliegenden Erfindung enthalten sein.
  • Wie oben angegeben ist, ist das vorläufige Softwaremodell 230 in der Lage, die in dem ursprünglichen Systemmodell beschriebenen Funktionen durchzuführen. Abhängig von dem Ausführungsbeispiel kann die Zielprogrammiersprache, die verwendet wird, um das Softwaremodell 230 zu implementieren, C, Ada oder jede andere Programmiersprache, einschließlich objektorientierter Programmiersprachen, wie zum Beispiel C++, sein. Bei dem Ausführungsbeispiel aus 3 wird das vorläufige Softwaremodell 230 als ein generisches Win32-Ziel erzeugt, das üblicherweise durch das RTW-Tool von Mathworks geliefert wird. Allgemein ausgedrückt erlaubt das vorläufige Softwaremodell 230 vor einer weiteren Verarbeitung durch Ausführungsbeispiele der vorliegenden Erfindung keinen Zugriff auf die internen Variablen, wie zum Beispiel Blockparameter und interne Signale, außerhalb der Simulink-Modellierungsumgebung. Alternativ sind in Fällen, in denen ein Zugriff auf die internen Variablen erlaubt ist, diese Variablen nur mittels der Modellierungsumgebung zugänglich, die ebenso im wesentlichen eine vollständige Steuerung der Ausführungen des vorläufigen Softwaremodells 230 behält.
  • Um eine gleichzeitige Ausführungssteuerung und einen Zugriff auf interne Variablen des Modells zu ermöglichen, bewirken die Schritte des Verfahrens 300 die Erzeugung einer Schnittstellensoftware 370 (aus 2), die diejenigen internen Variablen, die sich innerhalb des vorläufigen Softwaremodells 230 befinden, außerhalb der ursprünglichen Modellierungsumgebung freilegt. Bei dem Ausführungsbeispiel aus 3 werden C++-Umhüller- bzw. Wrapper-Klassen 340, die die internen Variablen des Systems mittels Name und Datentyps beschreiben, sowie die Funktionen, die einen Zugriff auf diese Variablen regeln, zuerst erzeugt (Schritt 310). Die Verwendung von C++, wie anderen objektorientierten Sprachen, ermöglicht eine Freilegung einiger oder aller der internen Variablen auf eine gesteuerte Weise, während ein Zugriff auf andere Aspekte des vorläufigen Softwaremodells 230, von denen ein Entwerfer normalerweise wünscht, daß sie versteckt bleiben, vermieden wird. Während C++ die Sprache ist, die für die hierin offenbarten Ausführungsbeispiele ausgewählt ist, wird die Verwendung jeder anderen Sprache, die geeignet für andere Anwendungen ist, ebenso erwogen.
  • Bei dem Ausführungsbeispiel aus 3 werden die C++-Wrapper-Klassen 340 dann verwendet, um eine Software 350 zu erzeugen, die, wenn sie ausgeführt wird, einen Komponentenobjektmodell-(COM-)Server aufgebaut (Schritt 320). COM ist eine weit verbreitete Softwarearchitekturdefinition, die durch die Microsoft Corporation spezifiziert ist, die es ermöglicht, daß Software-„Komponenten" oder Abschnitte von Software, die durch separate Softwareentwickler in einer Vielzahl von Sprachen geschrieben wurden, miteinander kommunizieren können. Grundlegend erleichtert die COM-Architektur eine Integration ungleicher Stücke von Software zur Durchführung einer integrierten Funktion durch ein Definieren einer Grundstruktur, die verwaltet, wie diese Stücke miteinander kommunizieren. Ein Hauptvorteil der Verwendung einer COM-Technologie bei dem Ausführungsbeispiel aus 3 besteht darin, daß die Technologie über im wesentli chen alle Plattformen auf Win32-Basis verwendet wird, was die Aufgabe einer Übertragung und Ausführung des resultierenden Softwaremodells auf einer derartigen Plattform relativ elementar macht. Die Verwendung der COM-Technologie für andere Ausführungsbeispiele der vorliegenden Erfindung wird jedoch nicht benötigt, da andere Verfahren, die einen Zugriff auf die internen Variablen des vorläufigen Softwaremodells 230 ermöglichen, verwendet werden können. Eine umfassendere Schnittstellentechnologie, wie zum Beispiel „.NET" von Microsoft, die einen Satz von Erweiterbare-Markierungssprache-(XML-)Web-Diensten verwendet, um eine Verbindbarkeit zwischen Abschnitten einer Software zu ermöglichen, kann ebenso verwendet werden. Alternativ kann eine Win32-Konsolenanwendung direkt aus den C++-Wrapper-Klassen 340 und dem vorläufigen Softwaremodell 230 erzeugt werden, wodurch ein ausführbares Simulationsprogramm erzeugt wird, das spezifisch für das bestimmte Systemmodell erzeugt wird.
  • Als nächstes wird eine Dynamikverbindungsbibliothek (DLL) 360 unter Verwendung des vorläufigen Softwaremodells 230, der C++-Wrapper-Klassen 340 und der COM-Serveraufbausoftware 350 aufgebaut. Allgemein ausgedrückt ist eine DLL eine Softwaredatei, die mit einem ausführbaren Programm zur Laufzeit, anstelle zu der Zeit, zu der das ausführbare Programm aufgebaut wird, verbunden werden kann. DLLs werden häufig bei Win32-Systemen verwendet, um eine Flexibilität bei Programmkonfigurationen zu schaffen, indem sie es ermöglichen, daß Entscheidungen hinsichtlich dessen, welche Abschnitte von Software durch ein ausführbares Programm betrieben werden sollen, während der Ausführung des Programms getroffen werden können. Wie bei der COM-Technologie werden DLLs weit verbreitet durch Win32-Anwendungen verwendet.
  • Der gesamte Prozeß eines Umwandelns des innerhalb Simulink erzeugten Systemmodells in die DLL 360 findet automatisch innerhalb der RTW-Umgebung mittels Softwarescripten statt, die durch den Systementwerfer als Teil des Codeerzeugungs verfahrens eingeleitet werden. Üblicherweise weist der Entwerfer eine Auswahl eines von mehreren Codezielen auf, die das Simulink-erzeugte Systemmodell in Software beschreiben. Diese Ziele umfassen normalerweise eine Software, die in C, C++, Ada geschrieben ist, und verschiedene Typen eingebetteter Ziele für verschiedene Echtzeitprozessorarchitekturen. Die Ausführungsbeispiele dieser Erfindung stellen eine weitere Auswahl eines Ziels dar, das für den Entwerfer verfügbar ist, wobei dieses Ziel die zuvor nicht verfügbare Fähigkeit eines Zugriffs auf die internen Variablen des Systemmodells mittels eines Softwareclienten, der sich außerhalb der ursprünglichen Systemmodellierungsumgebung befindet, liefert. Wenn dieses Ziel ausgewählt ist, wird eine Sammlung von Softwarescripten innerhalb RTW ausgeführt, die die oben erläuterten Schritte für das bestimmte Systemmodell durchführen. Insbesondere wird gemäß dem Ausführungsbeispiel aus 3 eine Visual C++-Projektdatei erzeugt und C++ Visual Studio (auch durch Microsoft® entwickelt) wird aufgerufen, um das Projekt aufzubauen, was zu der DLL 360 führt, die dann durch das Betriebssystem gefragt wird, sich selbst in die Systemregistrierung als einen COM-Server zu registrieren. Zusätzlich können auch andere Verfahren zur Erzeugung der DLL 360 verwendet werden.
  • Sobald die DLL 360 aufgebaut ist, kann sie zu jeder Win32-Computerplattform übertragen werden, einschließlich derer, die die Simulink-Entwicklungsumgebung nicht unterbringen. Alle Informationen, die benötigt werden, um das Systemmodell auszuführen und auf internen Variablen dieses Modells zuzugreifen, sind in der DLL 360 enthalten. So liefert die DLL 360 eine große Menge an Flexibilität hinsichtlich der Typen und Anzahl von Plattformen, auf denen das resultierende Systemmodell simuliert werden kann.
  • Um die DLL 360 zu verwenden, wird ein Softwareclient (nicht gezeigt) oder ein ausführbares Programm auf der ausgewählten Plattform, die mit der DLL 360 verbunden ist, durch den Systementwerfer eingeleitet. Mittels der COM-Technologie stellt die DLL 360 eine standardisierte Schnittstellendefinition dar, auf die der Softwareclient entworfen sein kann, so daß alle internen Variablen des Systemmodells durch den Clienten zugänglich sind. Üblicherweise weist der Client die Fähigkeit auf, Simulationen auf dem Modell laufenzulassen, sowie das Modell periodisch zu stoppen, so daß der Entwerfer eine „Momentaufnahme" der Eingangssignale, Ausgangssignale und internen Variablen des Systemmodells zu einem bestimmten Punkt betrachten kann. Außerdem können ein Lese- und normalerweise ein Schreibzugriff auf jedes dieser Signale und Variablen sowie nützliche Identifizierungsinformationen, wie zum Beispiel die Identität des Blocks, dem jedes/jede der Signale oder Variablen zugeordnet ist, bereitgestellt werden. Zusätzlich können graphische Darstellungen der Signale und Variablen bereitgestellt werden, um dem Entwerfer eine andere Weise zum Analysieren der für jedes Signal und jede Variable erfaßten Werte zu liefern.
  • Der Softwareclient kann jeder einer Anzahl von Formen annehmen. Das ausführbare Programm könnte zum Beispiel ein „Modellbrowser" sein, der eine Spezialanwendung ist, die insbesondere entwickelt ist, um dem Benutzer einen Zugriff auf ein Softwaremodell und seine internen Variablen zu ermöglichen. Der Browser ist üblicherweise eine Win32-Anwendung, die mit der DLL 360 verbunden ist, und erfaßt alle internen Variablen und externen Signalinformationen, die dem durch die DLL 360 dargestellten Modell zugeordnet sind. Diese Informationen sind dann über den Browser zum Überwachen und eine mögliche Modifizierung dieser Werte zugänglich. Der Browser würde sehr wahrscheinlich dem Benutzer auch die Fähigkeit liefern, Anfangsbedingungen für das Modell zu setzen, eine Ausführung des Modells zu starten und zu stoppen und auf sowohl eine numerische als auch graphische Darstellung der verschiedenen Signale und internen Variablen, die betroffen sind, zuzugreifen.
  • Alternativ kann der Softwareclient eine spezifische Instanzierung eines universaleren Programms, wie zum Beispiel ei nes Microsoft Excel-Arbeitsbuchs bzw. -Workbooks, sein. Ein derartiges Programm würde den gleichen Typ von Zugriff auf das Modell und seine Signale und Variablen ermöglichen. Unterschiedliche Tabellen bzw. Spreadsheets des Arbeitsbuches könnten außerdem eine unterschiedliche Ansicht des Betriebs des Modells liefern. Eine Tabelle könnte zum Beispiel jede der internen Variablen, ihre Datentypen und gegenwärtigen Werte darstellen. Andere Blätter können eine graphische Darstellung spezifischer Variablen von Interesse anzeigen.
  • Unabhängig von der spezifischen Form, die der Softwareclient annimmt, ist ein wesentlicher potentieller Vorteil von Ausführungsbeispielen der Erfindung die Fähigkeit mehrerer ungleicher DLLs 360, wobei jede möglicherweise einen Abschnitt eines größeren Softwaremodells darstellt, miteinander mittels des Softwareclienten in Wechselwirkung zu stehen. Wie in 4 gezeigt ist, steuert ein Softwareclient 400 die Ausführung vier separater DLLs 360A, 360B, 360C und 360D. Jede der DLLs 360A-D wurde unter Umständen innerhalb unterschiedlicher Modellierungsumgebungen modelliert. Ein derartiger Umstand ist nicht ungewöhnlich, da Systementwerfer eine Modellierungsumgebung gegenüber einer anderen zum Modellieren eines bestimmten Abschnitts eines Systems bevorzugen können. Zusätzlich können die DLLs 360A-D auf separaten Hardwareplattformen betrieben werden, wobei jede derselben mit dem Softwareclienten 400 mittels einer Kommunikationsverbindung kommunizieren kann. Da der Softwareclient 400 die Ausführung jeder DLL 360A-D steuern kann, sowie einen Zugriff auf die internen Variablen und äußeren Signale jeder derselben, weist der Softwareclient 400 die Fähigkeit auf, es den DLLs 360A-D zu ermöglichen, miteinander durch den Softwareclient 400 in Wechselwirkung zu stehen, wobei es den DLLs 360A-D so ermöglicht wird, als ein einzelnes System in Wechselwirkung zu stehen, während der Softwareclient 400 ein Programmzugriff auf jede DLL 360A-D beibehält. Deshalb können verschiedene Softwaremodelle, ausgeführt als DLLs 360A-D, die gemäß Ausführungsbeispielen der vorliegenden Erfindung erzeugt werden, mit einander in Wechselwirkung stehen, während der Softwareclient höhere Analysefähigkeiten über das gesamte System mittels eines Zugriffs des Clienten auf die internen Variablen jeder separaten DLL 360A-D beibehält.
  • Ein weiterer Vorteil der Verwendung mehrerer DLLs 360A-D besteht darin, daß Systeme, die mehrere unabhängige Taktdomänen (in dem Fall von Modellen auf Elektronik- oder Softwarebasis) verwenden, genauer simuliert werden können. Eine derartige Simulation kann durch ein Organisieren des Gesamtsystems in separate DLLs 360A-D erzielt werden, wobei jede derselben einen Abschnitt des Gesamtsystems darstellt, der innerhalb seiner eigenen autonomen Taktdomäne betrieben wird. Die DLLs 360A-D können dann auf separaten Hardwareplattformen oder innerhalb der gleichen Plattform auf eine Multi-Tasking-Weise ausgeführt werden. Wie oben beschrieben ist, würde eine Wechselwirkung zwischen den separat laufenden DLLs 360A-D dann mittels des Softwareclienten 400 ermöglicht.
  • Aus dem Vorangegangenen haben die Ausführungsbeispiele der Erfindung, die oben erläutert sind, gezeigt, daß sie ein Verfahren zum Erzeugen eines Softwaremodells eines dynamischen Systems liefern, das mittels eines Softwareclienten ausführbar ist, der sich außerhalb der Modellierungsumgebung befindet, in der das ursprüngliche Systemmodell spezifiziert wurde. Ferner sind auch andere spezifische Systeme und Verfahren, die die Erfindung ausführt, möglich. Deshalb soll die vorliegende Erfindung nicht auf die so beschriebenen und dargestellten spezifischen Formen eingeschränkt sein; die Erfindung ist nur durch die Ansprüche eingeschränkt.

Claims (22)

  1. Verfahren zum Erzeugen eines Softwaremodells (360) eines dynamischen Systems, mit folgenden Schritten: Erzeugen (310, 320) einer Schnittstellensoftware (370), die konfiguriert ist, um zumindest eine interne Variable, die sich innerhalb eines vorläufigen Softwaremodells (230) des dynamischen Systems befindet, freizulegen, wobei das vorläufige Softwaremodell (230) innerhalb einer Modellierungsumgebung erzeugt wird; und Bilden (330) des Softwaremodells (360) mittels des vorläufigen Softwaremodells (230) und der Schnittstellensoftware (370), wobei das Softwaremodell (360) es einem Benutzer ermöglicht, auf die zumindest eine interne Variable des dynamischen Systems von außerhalb der Modellierungsumgebung zuzugreifen.
  2. Verfahren gemäß Anspruch 1, das ferner den Schritt eines Erzeugens (220) des vorläufigen Softwaremodells (230) vor einem Erzeugen der Schnittstellensoftware (370) aufweist.
  3. Verfahren gemäß Anspruch 2, das ferner den Schritt eines Erzeugens (220) eines Systemmodells vor einem Erzeugen des vorläufigen Softwaremodells (230) aufweist, wobei das vorläufige Softwaremodell (230) auf dem Systemmodell (1) basiert.
  4. Verfahren gemäß einem der Ansprüche 1 bis 3, bei dem das Softwaremodell (360) es dem Benutzer auch ermöglicht, eine Ausführung des Softwaremodells (360) von außerhalb der Modellierungsumgebung zu steuern.
  5. Verfahren gemäß einem der Ansprüche 1 bis 4, bei dem der Erzeugungsschritt ferner folgende Schritte aufweist: Erzeugen (310) von C++-Umhüller- bzw. Wrapper-Klassen (340), die konfiguriert sind, um einen Zugriff auf die zumindest eine interne Variable zu regeln; und Erzeugen (320) einer Komponentenobjektmodell-(COM-) Serveraufbausoftware (350), die konfiguriert ist, um einen COM-Server aufzubauen, der die C++-Wrapper-Klassen (340) verwendet, um die zumindest eine interne Variable des vorläufigen Softwaremodells (230) freizulegen.
  6. Verfahren gemäß einem der Ansprüche 1 bis 5, bei dem das Softwaremodell (360) eine Dynamikverbindungsbibliothek (DLL) ist, die konfiguriert ist, um durch einen Softwareclienten ausführbar zu sein.
  7. Verfahren gemäß einem der Ansprüche 1 bis 5, bei dem das Softwaremodell (360) eine Konsolenanwendung ist.
  8. Computersystem zum Erzeugen eines Softwaremodells (360) eines dynamischen Systems, mit folgenden Merkmalen: einer Einrichtung zum Erzeugen (310, 320) einer Schnittstellensoftware (370), die konfiguriert ist, um zumindest eine interne Variable, die sich innerhalb eines vorläufigen Softwaremodells (230) des dynamischen Systems befindet, freizulegen, wobei das vorläufige Softwaremodell (230) innerhalb einer Modellierungsumgebung erzeugt wird; und einer Einrichtung zum Bilden (330) des Softwaremodells (360) mittels des vorläufigen Softwaremodells (230) und der Schnittstellensoftware (370), wobei es das Softwaremodell (360) einem Benutzer ermöglicht, auf die zumindest eine interne Variable des dynamischen Systems von außerhalb der Modellierungsumgebung zuzugreifen.
  9. Computersystem gemäß Anspruch 8, das ferner eine Einrichtung zum Erzeugen des vorläufigen Softwaremodells (230) aufweist.
  10. Computersystem gemäß Anspruch 9, das ferner eine Einrichtung zum Erzeugen (210) eines Systemmodells (1) vor einem Erzeugen des vorläufigen Softwaremodells (230) aufweist, wobei das vorläufige Softwaremodell (230) auf dem Systemmodell (1) basiert .
  11. Computersystem gemäß einem der Ansprüche 8 bis 10, bei dem das Softwaremodell (360) es dem Benutzer außerdem ermöglicht, eine Ausführung des Softwaremodells (360) von außerhalb der Modellierungsumgebung zu steuern.
  12. Computersystem gemäß einem der Ansprüche 8 bis 11, bei dem die Einrichtung zum Erzeugen ferner folgende Merkmale aufweist: eine Einrichtung zum Erzeugen (310) von C++-Umhüller- bzw. Wrapper-Klassen (340), die konfiguriert sind, um einen Zugriff auf die zumindest eine interne Variable zu regeln; und eine Einrichtung zum Erzeugen (320) einer Komponentenobjektenmodell-(COM-)Serveraufbausoftware (350), die konfiguriert ist, um einen COM-Server aufzubauen, der die C++-Wrapper-Klassen (340) verwendet, um die zumindest eine interne Variable des vorläufigen Softwaremodells (230) freizulegen.
  13. Computersystem gemäß einem der Ansprüche 8 bis 12, bei dem das Softwaremodell (360) eine Dynamikverbindungs- Bibliothek (DLL) ist, die konfiguriert ist, um durch einen Softwareclienten ausführbar zu sein.
  14. Computersystem gemäß einem der Ansprüche 8 bis 12, bei dem das Softwaremodell (360) eine Konsolenanwendung ist.
  15. Programmspeichermedium, das durch ein Computersystem lesbar ist, das ein Programm ausführt, das durch das Computersystem ausführbar ist, um Verfahrensschritte zum Erzeugen eines Softwaremodells (360) eines dynamischen Systems durchzuführen, wobei die Verfahrensschritte folgende Schritte aufweisen: Erzeugen einer Schnittstellensoftware (370), die konfiguriert ist, um zumindest eine interne Variable, die sich innerhalb eines vorläufigen Softwaremodells (230) des dynamischen Systems befindet, freizulegen, wobei das vorläufige Softwaremodell (230) innerhalb einer Modellierungsumgebung erzeugt wird; und Bilden des Softwaremodells (360) mittels des vorläufigen Softwaremodells (230) und der Schnittstellensoftware (370), wobei das Softwaremodell (360) es einem Benutzer ermöglicht, auf die zumindest eine interne Variable des dynamischen Systems von außerhalb der Modellierungsumgebung zuzugreifen.
  16. Programmspeichermedium gemäß Anspruch 15, bei dem die Verfahrensschritte ferner den Schritt eines Erzeugens (220) des vorläufigen Softwaremodells (230) vor einem Erzeugen der Schnittstellensoftware (370) aufweisen.
  17. Programmspeichermedium gemäß Anspruch 16, bei dem die Verfahrensschritte ferner den Schritt eines Erzeugens (210) eines Systemmodells (1) vor einem Erzeugen des vorläufigen Softwaremodells (230) aufweisen, wobei das vorläufige Softwaremodell (230) auf dem Systemmodell (1) basiert.
  18. Programmspeichermedium gemäß einem der Ansprüche 15 bis 17, bei dem das Softwaremodell (360) es dem Benutzer außerdem ermöglicht, eine Ausführung des Softwaremodells (360) von außerhalb der Modellierungsumgebung zu steuern.
  19. Programmspeichermedium gemäß einem der Ansprüche 15 bis 18, bei dem der Erzeugungsschritt ferner folgende Schritte aufweist: Erzeugen (310) von C++-Umhüller- bzw. Wrapper-Klassen (340), die konfiguriert sind, um einen Zugriff auf die zumindest eine interne Variable zu regeln; und Erzeugen (320) einer Komponentenobjektmodell-(COM-) Serveraufbausoftware (350), die konfiguriert ist, um einen COM-Server aufzubauen, der die C++-Wrapper-Klassen (340) verwendet, um die zumindest eine interne Variable des vorläufigen Softwaremodells (230) freizulegen.
  20. Programmspeichermedium gemäß einem der Ansprüche 15 bis 19, bei dem das Softwaremodell (360) eine Dynamikverbindungsbibliothek (DLL) ist, die konfiguriert ist, um durch einen Softwareclienten ausführbar zu sein.
  21. Programmspeichermedium gemäß einem der Ansprüche 15 bis 19, bei dem das Softwaremodell (360) ein Konsolenprogramm ist.
  22. Verfahren zum Erzeugen einer Dynamikverbindungsbibliothek (DLL) (360), die ein Softwaremodell (360) eines dynamischen Systems darstellt, wobei das Verfahren folgende Schritte aufweist: Erzeugen (310) von C++-Umhüller- bzw. Wrapper-Klassen (340), die konfiguriert sind, um einen Zugriff auf zumindest eine interne Variable, die sich innerhalb eines vorläufigen Softwaremodells (230) des dynamischen Systems befindet, zu regeln, wobei das vorläufige Softwaremodell (230) innerhalb einer Modellierungsumgebung erzeugt wird; Erzeugen (320) einer Komponentenobjektmodell-(COM-) Serveraufbausoftware (350), die konfiguriert ist, um einen COM-Server aufzubauen, der die C++-Wrapper-Klassen (340) verwendet, um die zumindest eine interne Variable des vorläufigen Softwaremodells (230) freizulegen; und Bilden (330) der DLL (360) unter Verwendung des vorläufigen Softwaremodells (230), der C++-Wrapper-Klassen (340) und der COM-Serveraufbausoftware (350), wobei die DLL (360) durch einen Softwareclienten außerhalb der Modellierungsumgebung ausführbar ist, und wobei die DLL (360) einem Benutzer einen Zugriff auf die zumindest eine interne Variable des dynamischen Systems mittels des Softwareclienten ermöglicht.
DE10324594A 2002-09-24 2003-05-30 Verfahren zum Bereitstellen einer verbesserten Simulationsfähigkeit eines dynamischen Systems außerhalb der ursprünglichen Modellierungsumgebung Ceased DE10324594A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/253,764 US7340717B2 (en) 2002-09-24 2002-09-24 Method for providing enhanced dynamic system simulation capability outside the original modeling environment
US10/253764 2002-09-24

Publications (1)

Publication Number Publication Date
DE10324594A1 true DE10324594A1 (de) 2004-04-01

Family

ID=31977808

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10324594A Ceased DE10324594A1 (de) 2002-09-24 2003-05-30 Verfahren zum Bereitstellen einer verbesserten Simulationsfähigkeit eines dynamischen Systems außerhalb der ursprünglichen Modellierungsumgebung

Country Status (3)

Country Link
US (1) US7340717B2 (de)
JP (1) JP2004118842A (de)
DE (1) DE10324594A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102903291A (zh) * 2012-10-12 2013-01-30 中国南方电网有限责任公司超高压输电公司广州局 高压直流输电换流阀冷却系统仿真平台

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7565660B2 (en) * 2002-09-26 2009-07-21 Siemens Energy & Automation, Inc. System and method for universal extensibility that supports a plurality of programmable logic controllers
US20050251796A1 (en) * 2004-05-07 2005-11-10 International Business Machines Corporation Automatic identification and reuse of software libraries
US8214799B2 (en) * 2004-07-08 2012-07-03 Microsoft Corporation Providing information to an isolated hosted object via system-created variable objects
US7743361B2 (en) * 2004-09-20 2010-06-22 The Mathworks, Inc. Providing block state information for a model based development process
US20060122820A1 (en) * 2004-12-03 2006-06-08 The Mitre Corporation Scripting language for domain-specific modification of a simulation model
US8756561B2 (en) * 2006-12-05 2014-06-17 International Business Machines Corporation Software model normalization and mediation
US8930890B2 (en) * 2006-12-05 2015-01-06 International Business Machines Corporation Software model skinning
US20130125093A1 (en) * 2011-11-11 2013-05-16 General Electric Company Generating object-oriented programming language code from a multi-domain dynamic simulation model
US20130125092A1 (en) * 2011-11-11 2013-05-16 General Electric Company Generating deployable code from simulation models
CN102637224A (zh) * 2012-03-19 2012-08-15 西北工业大学 一种采用iosem接口方式的紧耦合仿真通用模型实现方法
CN103699704A (zh) * 2012-09-27 2014-04-02 简式国际汽车设计(北京)有限公司 机械系统仿真分析方法
CN106569827B (zh) * 2016-11-10 2020-02-21 中国人民解放军空军航空大学军事仿真技术研究所 一种采用动态链接库进行仿真系统硬件控制隔离的方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US79199A (en) * 1868-06-23 Improvement in sewees
US6762A (en) * 1849-10-02 Mode of operating brakes for cars
US5287511A (en) * 1988-07-11 1994-02-15 Star Semiconductor Corporation Architectures and methods for dividing processing tasks into tasks for a programmable real time signal processor and tasks for a decision making microprocessor interfacing therewith
US5572437A (en) * 1990-04-06 1996-11-05 Lsi Logic Corporation Method and system for creating and verifying structural logic model of electronic design from behavioral description, including generation of logic and timing models
US5546562A (en) * 1995-02-28 1996-08-13 Patel; Chandresh Method and apparatus to emulate VLSI circuits within a logic simulator
US5884078A (en) * 1997-01-31 1999-03-16 Sun Microsystems, Inc. System, method and article of manufacture for creating an object oriented component having multiple bidirectional ports for use in association with a java application or applet
US6144377A (en) * 1997-03-11 2000-11-07 Microsoft Corporation Providing access to user interface elements of legacy application programs
US5966532A (en) * 1997-07-10 1999-10-12 National Instruments Corporation Graphical code generation wizard for automatically creating graphical programs
US6038393A (en) * 1997-09-22 2000-03-14 Unisys Corp. Software development tool to accept object modeling data from a wide variety of other vendors and filter the format into a format that is able to be stored in OMG compliant UML representation
JP3222821B2 (ja) * 1997-12-25 2001-10-29 株式会社東芝 プログラマブルコントローラ
US6167564A (en) * 1998-09-17 2000-12-26 Unisys Corp. Software system development framework
US6629123B1 (en) * 1998-10-02 2003-09-30 Microsoft Corporation Interception of unit creation requests by an automatic distributed partitioning system
US6405364B1 (en) * 1999-08-31 2002-06-11 Accenture Llp Building techniques in a development architecture framework
US6871346B1 (en) * 2000-02-11 2005-03-22 Microsoft Corp. Back-end decoupled management model and management system utilizing same
US20040044988A1 (en) * 2002-08-29 2004-03-04 Schene Christopher Robin Generation of compiled code for simulator speed up

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102903291A (zh) * 2012-10-12 2013-01-30 中国南方电网有限责任公司超高压输电公司广州局 高压直流输电换流阀冷却系统仿真平台
CN102903291B (zh) * 2012-10-12 2014-12-24 中国南方电网有限责任公司超高压输电公司广州局 高压直流输电换流阀冷却系统仿真平台

Also Published As

Publication number Publication date
US20040059556A1 (en) 2004-03-25
JP2004118842A (ja) 2004-04-15
US7340717B2 (en) 2008-03-04

Similar Documents

Publication Publication Date Title
DE102005026040B4 (de) Parametrierung eines Simulations-Arbeitsmodells
DE19781804B4 (de) Vorrichtung zur Simulation einer Echtzeit-Prozesssteuerung
EP2799983B1 (de) Flexible Aufteilung der I/O Kanäle einer Hardware Komponente
DE112016003949T5 (de) Webbasierte programmierumgebung für eingebettete geräte
DE10333087A1 (de) Verfahren zum automatischen Zerlegen von dynamischen Systemmodellen in Teilmodelle
DE102008048478A1 (de) Probenermittlungsstrategie unter Verwendung genetischer Algorithmen bei der Optimierung eines technischen Entwurfs
DE102005055133A1 (de) System für den maschinengestützten Entwurf technischer Vorrichtungen
EP3451202B1 (de) Verfahren zum erzeugen eines auf einem testgerät ausführbaren modells eines technischen systems und testgerät
DE102016100383A1 (de) Verfahren und System zum Testen eines mechatronischen Systems
DE10324594A1 (de) Verfahren zum Bereitstellen einer verbesserten Simulationsfähigkeit eines dynamischen Systems außerhalb der ursprünglichen Modellierungsumgebung
DE102016119320A1 (de) Verfahren zum Konfigurieren eines realen oder virtuellen elektronischen Steuergerätes
DE102017120016A1 (de) Verfahren zur Konfiguration eines zum Testen eines elektronischen Steuergeräts eingerichteten Testgeräts sowie Konfigurationssystem
DE102008006648A1 (de) Simulatorentwicklungssystem und Simulatorentwicklungsverfahren
EP3188053A1 (de) Verfahren zum konfigurieren einer co-simulation für ein gesamtsystem
DE10333088A1 (de) Verfahren zum Liefern von Zugriff auf die internen Signale eines dynamischen Systemmodells von außerhalb bezüglich der Modellierungsumgebung
EP3306295B1 (de) Verfahren und vorrichtung zum testen elektronischer steuerungen, insbesondere zum testen von automobilsteuerungen
DE10048941A1 (de) Zeitdiagramm-Compiler und Laufzeitumgebung für die interaktive Erzeugung von ausführbaren Testprogrammen zur Logiküberprüfung
DE10038499A1 (de) Verfahren und System für die verbesserte Entwicklungsprüfung mittels angepasster Ablaufverfolgung
DE102021116315A1 (de) Verfahren zum Zusammenführen von Architekturinformationen
DE102019008598A1 (de) Identifikation und Visualisierung von Assoziationen zwischen Code, der von einem Modell generiert ist, und Quellen, welche die Codegeneration beeinflussen
DE10057575A1 (de) Verfahren zur automatischen Softwaregenerierung
WO2004003798A2 (de) Informationserzeugungssystem für die produktentstehung
DE10325513B4 (de) Verfahren und Vorrichtung zum Erstellen eines Verhaltensaspekts einer Schaltung zur formalen Verifikation
DE102017212612A1 (de) Verfahren zum automatischen Erzeugen von Tests für die Software eines Fahrzeugs
EP3491517B1 (de) Signalflussbasiertes computerprogramm mit direct-feedthrough-schleifen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection