Hochkonfigurierbarer Code
TargetLink-Code ist leicht lesbar und enthält hilfreiche Kommentare. Durch die umfassenden Konfigurationsoptionen haben Sie volle Kontrolle über Variablen, Funktionen und Dateibenennungen. Zudem bleiben Sie bei der Code-Partitionierung in Funktionen und Dateien flexibel, um die Struktur logisch und übersichtlich gestalten zu können.
Für die Integration von externem Code bietet TargetLink eine Vielzahl an Spezifikationsoptionen, zum Beispiel auf Blockdiagrammebene für die leichte Anbindung mit externem Code wie Gerätetreibern oder mit weiteren Routinen, die in C oder Assembler programmiert sind. Unternehmensspezifische Programmierrichtlinien können dank des flexiblen Code-Ausgabeformats von TargetLink leicht angewendet werden, zum Beispiel durch XML-Konfigurationsdateien oder XSL STyle Sheets.
Bedienmodi ‘Modeling Only’ und ‘Full-Featured’
Ab TargetLink 5.0 können Sie zwischen zwei Betriebsmodi wechseln: Modeling Only und Full-Featured. Der Betriebsmodus Modeling Only (nicht lizenzgeschützt) ermöglicht es Funktionsentwicklern, ein Modell vorzubereiten und zu entwerfen, ohne Seriencode dafür zu generieren. Im Laufe der Entwicklung kann dieses Modell mit Software-Entwicklern ausgetauscht werden, die den Betriebsmodus Full-Featured verwenden. Benutzer des Betriebsmodus Full-Featured können Seriencode für das Modell erzeugen. So können verschiedene Gruppen von Entwicklern am gleichen Modell arbeiten, aber unterschiedliche Betriebsmodi verwenden. Durch die Verwendung beider Betriebsmodi lassen sich die Entwicklungsphasen Prototyping und Seriencode-Generierung ideal miteinander verbinden, so dass Entwicklungsiterationen einfacher und weniger fehleranfällig sind.
Software-Entwurf mit dem TargetLink Data Dictionary
Das dateibasierte TargetLink Data Dictionary ist ein zentraler Datencontainer, der die relevanten Informationen zum Modellentwurf, zur Code-Generierung und zur Implementierung auf einem Steuergerät enthält. Data-Dictionary-Objekte können von TargetLink-Modellen referenziert werden. Sie können Variablen und ihre Eigenschaften definieren und verwalten sowie strukturierte Datentypen festlegen und diese zum Deklarieren von Variablen einsetzen. Skalierungsformeln können eingegeben und für das gleichmäßige Skalieren von Festkommasignalen und Parametern im Modell verwendet werden. Standardisierte oder proprietäre Daten lassen sich importieren und exportieren und die Daten mit dem Applikationssystem teilen.
Das TargetLink Data Dictionary ist perfekt, um projektspezifische Code-Eigenschaften zu definieren und damit zu arbeiten, auch für Teams. Es enthält zahlreiche Zusatzinformationen, zum Beispiel Details zu C-Modulen, Funktionsaufrufen, Tasks, Variablenklassen, Datenvarianten und dergleichen. Die Daten sind in einer übersichtlichen Baumstruktur angeordnet und können auch über eine API-Schnittstelle (Application Programming Interface) erreicht werden. Auch unterstützt das Data Dictionary alle herkömmlichen Import- und Exportformate, so dass alle bestehenden und bewährten Definitionen, zum Beispiel Applikationsdateien, als Vorlagen eingesetzt werden können.
Modulare Entwicklung und Code-Generierung
Mit den speziellen TargetLink-Mechanismen können Sie komfortabel mit großen Modellen und Software-Integrationen arbeiten:
- Inkrementelle Code-Generierung
- Modellreferenzierung
- Vereinfachte Software-Integration
- Code-Generierung direkt aus dem TargetLink Data Dictionary
- Diff&Merge-Mechanismus mit TargetLink Data Dictionary
Umfassende TargetLink-API
TargetLink kann leicht in bestehende Entwicklungsumgebungen integriert werden, da es über eine umfassende und vollständig dokumentierte API (Application Programming Interface)-Schnittstelle verfügt. Dadurch ist der Zugriff auf alle Eigenschaften und Einstellungen in TargetLink sowie die Automatisierung der Prozesse möglich, während zur gleichen Zeit Optionen für den Eingriff in einzelnen Prozessphasen zur Verfügung gestellt werden. Zum Beispiel erlauben Hook-Funktionen die Ausführung von Anwenderaufgaben in allen Phasen des Build-Prozesses.
Erzeugung der Kalibrierungsdatei
Eine weitere Pflichtübung eines Code-Generators ist die enge Verknüpfung mit Applikationssystemen. Der Steuergeräte-Code muss für die Parametereinstellung vorbereitet werden, indem kalibrierbare oder messbare Variablen für ein Applikationssystem zugreifbar sind. TargetLink unterstützt über das Data Dictionary die Generierung des standardisierten Dateiformats ASAM MCD-2 MC (vormals ASAP2), um die Variablen und Parameter für die Steuergeräte-Kalibrierung bereitzustellen. Alle wichtigen Applikationssysteme unterstützen diesen Standard. Da der C-Code und die ASAM-MCD-2 MC-Datei mit derselben Datenbasis generiert werden, sind sie immer konsistent. So wird eine weitere Fehlerquelle eliminiert und der Entwicklungsprozess verschlankt. TargetLink bietet mehrere vordefinierte Variablenklassen für kalibrierbare und messbare Variablen. Zudem können Sie eigene Klassen spezifizieren und sicherstellen, dass jede Klasse geeignete Attribute zum Kalibrieren oder Messen enthält.
Automatisch generierte Dokumentation
TargetLink generiert nicht nur Code, sondern dokumentiert auch seine Aktionen – und das konsistent zu Modell und Code. Ein automatisch generiertes Dokument stellt Informationen zu Funktionsschnittstellen und globalen Variablen bereit sowie eine Liste aller messbaren und verstellbaren Variablen, Skalierungsparametern, Code-Generierungsoptionen usw.
Zudem können Screenshots von Modellen, Teilsystemen und Simulations-Plots hinzugefügt werden. Verknüpfungen zum generierten C-Code werden bereitgestellt. Sie können die Dokumentation ganz nach Bedarf spezifizieren, zum Beispiel die gewünschte Detailtiefe festlegen. Die Dokumentation lässt sich in den Formaten HTML, RTF (für Textverarbeitung) und PDF generieren.
Designing Controller Models Directly with TargetLink
The Simulink® block library is very powerful in simulation tasks, providing all necessary specification features. When it comes to code generation, however, more information is needed for each block. For example, the blocks need additional capabilities for fixed-point simulation. That is why TargetLink comes with the TargetLink Block Library which offers a block for each supported Simulink block.
The TargetLink blocks significantly enhance the functionality of the supported Simulink blocks and have an extended dialog that allows you to enter the implementation-specific information necessary for code generation. Each block also provides a means of data logging and overflow detection. A special routine automatically prepares Simulink models for code generation with TargetLink by enhancing the Simulink blocks to TargetLink blocks. As a result, the model is ready for production code generation and on-target bypassing.
If you need to change the properties of a large model, TargetLink’s graphically oriented Property Manager is a quicker alternative to changing the properties in the block dialogs manually. It displays the properties of TargetLink blocks and Stateflow objects in your model, and lets you view, filter, and modify several properties simultaneously.