Mehr Informationen über TargetLink

TargetLink generiert hocheffizienten C-Code direkt aus MathWorks® Simulink®/Stateflow®. Automatische Code-Generierung bedeutet auch, dass TargetLink bei Änderungen, die sich auf mehr als eine Code-Zeile auswirken, alle diese Zeilen automatisch aktualisiert. So können Sie sich nun auf die eigentliche Anwendung konzentrieren. Die frühzeitige Verifizierung durch die integrierten Simulations- und Testfunktionen führt zu schnelleren Durchlaufzeiten und geringeren Kosten.

Hochwertige Seriencode-Generierung

Weshalb es auf Code-Qualität ankommt

Im Vergleich zu Code für Rapid Control Prototyping, wo Entwickler viel Freiraum beim Testen neuer Konzepte brauchen, muss Seriencode für Steuerungen in Fahrzeugen, Flugzeugen und vielen weiteren industriellen Anwendungen höchste Qualitätsanforderungen erfüllen. So müssen Entwickler zum Beispiel sicherstellen, dass der Code hochgradig optimiert ist, dass er sich leicht mit anderer Software integrieren lässt, dass er sowohl heute als auch in Zukunft lesbar ist, um seine Wartbarkeit zu garantieren, dass alle Verbindungen zwischen Anforderungen, Modell und Code klar und verständlich sind und dass er relevante Standards erfüllt. Kurz gesagt: Der Code muss maximal zuverlässig, effizient, sicher, wartbar, nachverfolgbar und in Bezug auf den Generierungsprozess reproduzierbar sein, so dass dasselbe Modell stets zum selben Code führt.

TargetLink für hochwertigen Seriencode

Der Seriencode-Generator dSPACE TargetLink ist ein äußerst leistungsstarkes Software-System, das sicherstellt, dass Ihr Code immer höchste Qualität erreicht – unter Berücksichtigung Ihrer individuellen Anforderungen und relevanter Standards. Trotz der umfassenden TargetLink-Funktionalitäten sind die typischen Schritte bei der Generierung von Seriencode leicht durchzuführen. Zudem bietet TargetLink auch viele Optionen, um den Prozess an Ihre individuelle Umgebung anzupassen. Zu den typischen Schritten gehören der Reglerentwurf, die interative Absicherung und Verifikation (simulationsbasiert) und die Code-Integration auf dem Steuergerät. Des Weiteren arbeitet TargetLink reibungslos mit Werkzeugen von dSPACE und von Drittanbietern zusammen, die gemeinsam das TargetLink Ecosystem bilden.

Control and Software Design

Entwerfen von Reglermodellen direkt mit TargetLink

Die Simulink®-Blockbibliothek ist sehr leistungsstark bei der Simulation und stellt alle notwendigen Spezifikationsfunktionen zur Verfügung. Geht es um die Seriencode-Generierung, benötigt jeder Block weitergehende Informationen. Zum Beispiel brauchen die Blöcke zusätzliche Funktionen für die Festkommasimulation. Daher bietet TargetLink die TargetLink Block Library mit einem Block für jeden unterstützten Simulink-Block.

Dialog eines TargetLink-Blocks zum Eingeben implementierungsspezifischer Informationen wie Datentyp, Variablennamen, Skalierungsdaten etc.

Die TargetLink-Blöcke reichern die Funktionalität der unterstützten Simulink-Blöcke an und verfügen über einen erweiterten Dialog, mit dem Sie die implementierungsspezifischen Informationen, die für die Code-Generierung notwendig sind, eingeben können. Jeder Block bietet zudem Möglichkeiten zur Datenaufzeichnung und Überlauferkennung. Durch Erweitern der Simulink-Blöcke bereitet eine spezielle Routine die Simulink-Modelle automatisch auf die Code-Generierung mit TargetLink vor. So ist das Modell bereit für die Seriencode-Generierung und das On-Target Bypassing.

Wenn Sie die Eigenschaften eines größeren Modells ändern möchten, geht dies mit dem grafisch orientierten Property Manager in TargetLink schneller als die Eigenschaften in den Blockdialogen manuell zu ändern. Der Property Manager zeigt die Eigenschaften von TargetLink-Blöcken und Stateflow-Objekten in Ihrem Modell an und erlaubt das Anzeigen, Filtern und Ändern mehrerer Eigenschaften gleichzeitig.

Built-In Verification and Validation Support

Drei Simulationsmodi für Tests

Obwohl automatische Code-Generatoren im Vergleich zu manueller Programmierung quasi fehlerlose Ergebnisse liefern, müssen sowohl der generierte Code als auch die zugrunde liegende Spezifikation getestet werden. Um den generierten Code abzusichern, bietet TargetLink leistungsstarke und intuitive Funktionen. Die Code-Tests werden in derselben Simulationsumgebung durchgeführt, die auch für die Spezifikation der zugrunde liegenden Simulationsmodelle eingesetzt wurde. Wenn die Simulationsergebnisse übereinstimmen, ist die Funktionsweise identisch. TargetLink bietet einen dreistufigen Absicherungsprozess, der auf Knopfdruck zeigt, ob die Spezifikation (das Modell) und die Implementierung (der generierte Code) funktional identisch sind.

Model-in-the-Loop-Simulation Daten werden für Referenzplots aus dem Simulationsmodell aufgezeichnet. TargetLink protokolliert Signale ausgewählter Blöcke und Zustandsgrößen automatisch.
Die Model-in-the-Loop-Simulation erfasst das spezifische Verhalten des Modells, das später in C-Code implementiert werden soll. Die aufgezeichneten Signalplots dienen als Referenz für die nächsten Absicherungsschritte.
Die Model-in-the-Loop-Simulation kann auch für die Überlauferkennung von Integer-Variablen verwendet werden und die Ergebnisse kommen für die simulationsbasierte Autoskalierung zum Einsatz.
Software-in-the-Loop-Simulation Der Code wird generiert und ersetzt die Regelblöcke im Simulationsmodell (zum Beispiel dieselbe Regelstrecke und Stimulussignale). Diese Aufgabe wird von TargetLink automatisch im Hintergrund durchgeführt.
Obwohl Ihnen noch die Regelblöcke angezeigt werden, ist es der Code, der stattdessen auf dem Host-PC ausgeführt wird. Die Signaplots sollten weitestgehend identisch sein, wenn sie mit den Ergebnissen der Model-in-the-Loop-Simulation verglichen werden. Wenn sie nicht identisch sind, können die Plots analysiert werden, um den Grund für die Abweichung herauszufinden und die Festkommaeinstellungen zu justieren.
Processor-in-the-Loop-Simulation Der generierte Code wird auf einem Embedded-Prozessor ausgeführt; aber da Code, der auf dem Host-PC korrekt ausgeführt wird, trotzdem Fehler verursachen kann, muss er näher betrachtet werden.
Eine Standard-Evaluierungskarte wird mit dem Host-PC verbunden, der generierte Code wird mit dem Target-Compiler kompiliert und auf die Evaluierungskarte heruntergeladen.
TargetLink verwaltet die Kommunikation zwischen dem Host-PC und der Evaluierungskarte. All diese Vorgänge sind automatisiert und gehen ohne Eingriffe des Benutzers von statten. Für die Simulation auf einer Evaluierungskarte sind nur zwei Mausklicks notwendig.
TargetLink führt die drei verschiedenen Simulationsmodi aus, ohne dabei das Modell oder den generierten Code zu ändern. Diese Aufgabe wird von TargetLink automatisch im Hintergrund durchgeführt.

Funktionen und Vorteile des Simulationskonzepts

Leistungsmerkmale Beschreibung Vorteil
MIL/SIL/PIL-Simulation auf Knopfdruck Wechsel von MIL- zu SIL- oder PIL-Simulation mit nur einem Klick Leistungsstarke Simulationsumgebung
Kein Bedarf an separaten Testmodellen, Generierung von S-Funktionen oder manuellem Einfügen in Testumgebungsmodelle
Integrierte Datenaufzeichnung Integrierte Datenaufzeichnung und Ergebnisdarstellung für alle Simulationsmodi Keine Modelländerungen erforderlich
Verfügbar für alle Simulationsmodi
Direkter Vergleich der MIL/SIL/PIL-Ergebnisse Automatisches Plotten aller Simulationsergebnisse im gleichen Plotfenster Ergebnisse von Simulationen in verschiedenen Modi direkt anzeigen und Abweichungen analysieren
Direkte Rückmeldung, ob der Code mit der Modellsimulation übereinstimmt
Detaillierte Signalanalyse und Abweichungsdiagramme Signale zoomen, um Abweichungen visuell zu prüfen, Einschränkungen anzeigen (z. B. definierte Bereiche), mit dem Cursor durch Signalverläufe blättern, Signalwerte numerisch anzeigen oder Signalabweichungen darstellen Verschaffen Sie sich ein klares Bild über das Signalverhalten
Besonders nützlich für die Umwandlung von Gleitkomma- in Festkommawerte
Integrierte Datenaufzeichnung und -plotting Eingebaute TargetLink-Blöcke verfügen über eine integrierte Datenaufzeichnungsfunktion. In den Blockdialogen können Sie angeben, ob die Ausgangssignale des Blocks aufgezeichnet werden sollen.
Laufzeitanalyse zur Profilerstellung des Codes Mit der Processor-in-the-Loop (PIL)-Simulation kann zudem ein Profil des generierten Codes erstellt werden. Während der PIL-Simulation misst TargetLink automatisch die Ausführungszeit und den Stack-Bedarf direkt auf dem Zielprozessor.
Code-Abdeckungsanalyse Wie umfassend die Tests sind, können Sie mit Hilfe der Codeabdeckungsanalyse beurteilen. TargetLink unterstützt die C0- und C1-Abdeckungsanalyse, auch Statement Coverage und Decision Coverage genannt.
Rückverfolgbarkeit des Modellcodes Zur besseren Rückverfolgbarkeit und zur Vereinfachung von Code-Reviews können Code-Dateien optional im HTML-Format generiert werden, mit Hyperlinks für die Navigation vom Modell zum Code und umgekehrt.

Excellent Code Properties

High Code Efficiency


Regardless of the application type (fixed-point or floating point), TargetLink generates highly efficient production code for your embedded system. Multiple scaling properties give ample choices to fine-tune fixed-point code to the conflicting requirements of low execution time, high computational precision, and overflow avoidance. If an overflow occurs, TargetLink’s overflow detection shows the exact location in the block diagram. The problem can be corrected right away.  

Dialogs to carry out automatic scaling.

Scaling Variables


To shorten the time-consuming and error-prone manual scaling process, TargetLink provides an Autoscaling Tool. It supports you in finding suitable ranges and calculating appropriate scaling parameters. A scaling task that took days and weeks in the past can now be done in minutes and hours. 

As a scaling method, TargetLink offers the two-coefficient linear scaling, which is widely used in embedded control applications. The properties for specifying fixed-point scalings in TargetLink are:

  • Data type
  • Power-of-two scaling factor or arbitrary scaling factor
  • Offset value
  • Constraint values
  • Bit safety margins
  • Saturation options


While fixed-point scaling can be done manually by a software engineer, in most instances it is left to TargetLink’s autoscaling tools. Two autoscaling procedures are available:

  • Simulation-based autoscaling – benefit from maximum computational precision
  • Worst-case autoscaling – no plant model required and overflows automatically prevented
     

Moreover, TargetLink also supports scaling with scaling formulas and type definitions.

Powerful Code Optimization


TargetLink generates highly optimized ANSI C code that is just as efficient as optimized handwritten code. This is achieved by various optimization techniques, such as standard optimization techniques that are also used by modern C compilers. TargetLink’s interblock optimization gives the generated code a human touch, because it combines code in a very similar way to what a skilled software engineer would do. For more complex blocks, TargetLink uses code from an internal code pattern library during the code generation process, ensuring that the code for complex blocks is also highly efficient.  

Weitere Abischerungsfunktionen in TargetLink

Feature Description
  • Integrated data logging and plotting
  • Built-in TargetLink blocks come with an integrated data logging functionality. In the block dialogs, you can specify whether to log the block output signals.
  • Run-time analysis for profiling the code
  • Processor-in-the-loop (PIL) simulation can also be used to profile the generated code. During PIL simulation, TargetLink automatically measures execution time and stack consumption directly on the target processor.
  • Code coverage analysis
  • You can assess how comprehensive tests are by using code coverage analysis. TargetLink offers C0 and C1 coverage analysis, also called statement coverage and decision coverage.
  • Model-code traceability
  • For improved traceability and simplified code reviews, code files can optionally be generated in HTML format, with hyperlinks for navigation from model to code and vice versa.

Mehr Informationen über TargetLink

Treiben Sie Innovationen voran. Immer am Puls der Technologieentwicklung.

Abonnieren Sie unser Expertenwissen. Lernen Sie von erfolgreichen Projektbeispielen. Bleiben Sie auf dem neuesten Stand der Simulation und Validierung. Jetzt dSPACE direct und dSPACE direct aeropace & defense abonnieren.

Formularaufruf freigeben

An dieser Stelle ist ein Eingabeformular von Click Dimensions eingebunden. Dieses ermöglicht es uns Ihr Newsletter-Abonnement zu verarbeiten. Aktuell ist das Formular ausgeblendet aufgrund Ihrer Privatsphäre-Einstellung für unsere Website.

Externes Eingabeformular

Mit dem Aktivieren des Eingabeformulars erklären Sie sich damit einverstanden, dass personenbezogene Daten an Click Dimensions innerhalb der EU, in den USA, Kanada oder Australien übermittelt werden. Mehr dazu in unserer Datenschutzbestimmung.