Forum: Digitale Signalverarbeitung / DSP / Machine Learning Serielle RX Interrupts mit Simulink Embedded Target


von Florian (Gast)


Lesenswert?

Hallo Leute,

ich verwende die graphische Echtzeitprogrammierung embedded Target mit
Simulink auf einem TI DSP (TMS320c2812) und habe ein kleines Problem.
Ich will über SCI-RX Interrupts informiert werden, wenn seriell ein
Byte empfangen wird. Bisher geht dies im Simulink nur in äquidistanden
Zeitabständen was ziemlich nervig ist. Der Support von Mathworks hat
die Meinung, dass dafür die TLC Files der Modelle angepasst werden
müssten. Hat damit irgendjemand Erfahrungen oder weiss jemand eine
andere Lösung für mein Problem.

Gruss
     Florian

von Florian Schmitt (Gast)


Lesenswert?

Hi Namenskollege,

ich finde eben die Beschreibung Deines Problems - leider kann ich dir -
im Moment - nicht wirklich weiterhelfen (bis auf den nicht wirklich
effizienten Vorschlag, die Matlab-Doku durchzulesen, was aber nicht in
weniger als zwei Monaten zu schaffen ist). Ich schreibe gerade an
meiner Diplomarbeit über Simulink und Realisierungsmöglichkeiten auf TI
DSPs, vielleicht sind wir bei unseren Themen relativ nahe. Mich würden
aber auch Erfahrungen deinereits interessieren, wie gut du mit den
bereitgestellten Funktionen zurechtkommst bzw, welche Probleme Dir der
Weg durch Simulink, RTW, Embedded Coder etc bereiten.
Grüße
Florian

von Markus Schertler (Gast)


Lesenswert?

Hallo Florian,

Hab grad von deiner Dip. gelesen. Ich arbeite ebenfalls auf dem Gebiet
von Rapid Prototyping mit TI-Dsp's. Arbeit mit TMS320..24xx & 28xx.
Ich bin im Bereich der Regelung elektrischer Maschinen und wir machen
gerade den swap von der Handprogrammierung aufs Matlab-level.
Einige Programme laufen schon, jedoch stellt sich das Ganze doch etwas
komplexer dar als erwartet. Komplexere Can-Kommunikationsprogramme sind
weiters kein Problem(zeitunktritisch). Relative einfache, aber
zeitkritische Programme (Regelung kHz Motor) scheinen sich auf dem 24xx
nicht realisieren zu lassen (verwende kein Embedded coder). Ausserdem
ist es notwendig zu wissen, welcher Block wann wie, in welcher
Reihenfolge den optimalen code generiert.
Bin schon gespannt, test jetzt mal den 28xx durch. Hoff der lässt mich
nicht ganz im stich. Übrigens super dass einer eine Doku auf dem Gebiet
schreibt, es gibt nämlich nur sehr wenig und schlechte Lektüre auf dem
Gebiet oder hast du schon mehr gefunden?. Ein Doku hab ich das nicht so
schlecht ist und wenigstens auf ein paar Tüken aufmerksam macht. Sag mir
wenn du's brauchen solltest("Tips for Fixed point modeling").

Gruß Markus

von Florian Schmitt (Gast)


Lesenswert?

Hi zusammen,

meine Dipl ist mittlerweile so gut wie fertig. Jedoch habe ich mich im
Bereich der Kommunikation mit alldem Beschäftigt und weniger der
Steuerung. Ich habe sog. "Device Driver" erstellt, neue
Simulink-Blöcke die dann per TLC Code generieren, dazu habe ich auch
einige tlc-Dateien von Texas Instruments verändert bzw. erweitert (die
durch den Embedded Target bereitgestellt wurden).
Wenn man weiß, welcher Code am Ende bei rauskommen muss, ist das ganze
keni Hexenwerk, vielmehr eine mühselige Suche nach auf den manchmal
verschlungenen Pfaden der tlc-includes.
Der Embedded Coder ist in meinen Augen schwer zu empfehlen. Allein an
der Codeausführungsgeschwindigkeit ist leicht zu erkennen, dass viele
Routinen (FFT, insbesondere Convoultion) erheblich schneller arbeiten,
da im Hintergrund schnelle Routinen in Libraries eingesetzt werden.
Ich denke Simulink ist im ganzen recht gut einsetzbar. Ich habe mich
mangels Zeit aber überhaupt nicht mit Stateflow auseinandergesetzt, von
dem ich annehme, dass damit viel Mühe - die in Simulink umständliche
Modellierung - erspart bleiben kann.
Ebensowenig mit Triggered SubSystems. Hardwareinterrupt lassen sich
meinem Gefühl nach damit womöglich echt gut benutzen.
Markus: Doku gibt es sehr, sehr wenig. Gerade in Bezug auf die eher
systemartige Programmierung schreibt kaum jemand ein Buch, wohl auch
daher, dass Embedded Coder und Embedded Target (TI, Motorola etc)
ziemlich neu sind. Ich hatte mal in die neue Version Matlab 2006a
hineingeschaut und konnte sehen, dass hier schon sehr viel
Weiterentwicklung enthalten ist. (Meine Funktionsblöcke müsste ich hier
bereits dafür weiter anpassen). Gute Doku als Buch oder hilfreiche
Seiten habe ich tatäschlich kaum gefunden. Die Matlab-Doku enthält
bekanntlich echt viel Information, leider nicht immer übersichtlich.
Hat man sich einmal damit abgefunden, dass man Infos immer aus einem
halben Dutzend Dokumenten und ein, zwei Beispielen zusammenfinden muss,
kommt man aber doch recht gut voran. Weiterhin viel Erfolg!
Griuß
Florian

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.