Erstellen eigener S-Functions: Unterschied zwischen den Versionen
(Änderung 47943 von Phillip Blunck (Diskussion) rückgängig gemacht.) |
|||
(13 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
[[Kategorie:HowTo]] | |||
'''Autor:''' [[Benutzer:Phillip_Blunck|Phillip Blunck]] | '''Autor:''' [[Benutzer:Phillip_Blunck|Phillip Blunck]] | ||
== Einleitung == | == Einleitung == | ||
Zeile 16: | Zeile 18: | ||
=== S-Function-Block === | === S-Function-Block === | ||
Nun fügt man aus dem Library Browser den S-Function Builder in das Modell ein. [[Datei:S fun builder logo.PNG|right]] | Nun fügt man aus dem Library Browser den S-Function Builder in das Modell ein. [[Datei:S fun builder logo.PNG|right|thumb]] | ||
Nachdem der Block eingefügt wurde, öffnet man die Konfiguartionen per Doppelklick. Es öffnet sich ein Fenster welches alle Einstellungen der S-Function enthält. | Nachdem der Block eingefügt wurde, öffnet man die Konfiguartionen per Doppelklick. Es öffnet sich ein Fenster welches alle Einstellungen der S-Function enthält. | ||
<br/> | <br/> | ||
Zeile 27: | Zeile 29: | ||
[[Datei:S fun 5.PNG|400px]] | [[Datei:S fun 5.PNG|400px]] | ||
[[Datei:S fun 6.PNG|400px]] | [[Datei:S fun 6.PNG|400px]] | ||
<br/> | |||
Wenn der Qullecode eingefügt wurde müssen die benötigten Bibliotheken eingebunden werden. Dies geschieht unter folgendem Reiter: | |||
<br/> | |||
[[Datei:S fun 7.PNG|400px]] | [[Datei:S fun 7.PNG|400px]] | ||
Nachdem alle Einstellungen vorgenommen wurden muss die S-Function generiert werden, indem der Button "Build" gedrückt wird. Danach erscheint im Reiter "Build Info" ob die Generierung erfolgreich verlaufen ist. | |||
[[Datei:S fun 8.PNG|400px]] | |||
== Tipps == | |||
*Der Name der S-Function muss zusammenhängend oder mit Unterstrichen verbunden werden | |||
*Die eingebundenen Bibliotheken (Header-Dateien) müssen im Ordner des Simulink Modells liegen | |||
*Compiler für die Genereirung muss isntalliert sein | |||
*Keine doppelte Inkludierung von Bibliotheken bei mehreren S-Functions | |||
== Literaturverzeichnis == | == Literaturverzeichnis == | ||
<references /> | <references /> | ||
http://de.mathworks.com/matlabcentral/fileexchange/39354-device-drivers | |||
Aktuelle Version vom 13. März 2019, 20:42 Uhr
Autor: Phillip Blunck
Einleitung
Wenn man ein Simulink Projekt für einen Arduino umsetzen möchte, kann es vorkommen, dass die bereitgestellten Arduino Bibliotheken nicht ausreichen oder für die Lösung nicht geeignet sind. Um dieses Problem einfach zu lösen, kann mit Hilfe einer eigenen S-Function beispielsweise Arduino Quellcode in Simulink eingebunden werden. Dieses Tutorial erläutert wie eine S-Function erstellt werden kann.
Inhalt
Konfigurieren des Simulink-Modells
Zunächst müssen folgende Einstellungen des Simulink-Modells durchgeführt werden. Dazu klickt man auf den Button "Model Configuration Parameters".
Danach öffnet man die Reiter und stellt folgende Einstellungen ein:
Hier wurde als Beispiel der Arduino Mega 2560 als Zielhardware ausgewählt. Dies muss bei der eigenen Anwendung entsprechend angepasst werden.
S-Function-Block
Nun fügt man aus dem Library Browser den S-Function Builder in das Modell ein.
Nachdem der Block eingefügt wurde, öffnet man die Konfiguartionen per Doppelklick. Es öffnet sich ein Fenster welches alle Einstellungen der S-Function enthält.
Man wählt sich einen Namen der S-Function
Folgende Einstellungen müssen vorgenommen werden:
Wenn der Qullecode eingefügt wurde müssen die benötigten Bibliotheken eingebunden werden. Dies geschieht unter folgendem Reiter:
Nachdem alle Einstellungen vorgenommen wurden muss die S-Function generiert werden, indem der Button "Build" gedrückt wird. Danach erscheint im Reiter "Build Info" ob die Generierung erfolgreich verlaufen ist.
Tipps
- Der Name der S-Function muss zusammenhängend oder mit Unterstrichen verbunden werden
- Die eingebundenen Bibliotheken (Header-Dateien) müssen im Ordner des Simulink Modells liegen
- Compiler für die Genereirung muss isntalliert sein
- Keine doppelte Inkludierung von Bibliotheken bei mehreren S-Functions
Literaturverzeichnis
http://de.mathworks.com/matlabcentral/fileexchange/39354-device-drivers