Forum: Mikrocontroller und Digitale Elektronik aus Matlab erzeugte Bibliothek einbinden


von Poseidonius (Gast)


Lesenswert?

Guten Abend,

ich hoffe ich werde jetzt nicht gleich ausgelacht ...

Ich empfange von einem Messgerät mehrere Vektoren von Messwerten über 
die serielle Schnittstelle. Um diese auszuwerten waren ein paar 
kryptische Vektoroperationen nötig, die ich in Matlab umgesetzt habe. 
Nun funktioniert das ganze und soll auf einen Mikrocontroller portiert 
werden.

Bevor ich manuell loslege dachte ich daran aus den m files mit dem 
Matlab Compiler eine Bibliothek zu erstellen und diese dann in einem AVR 
Programm zu nutzen. Ist sowas möglich? Hat das schon mal jemand gemacht?

Danke für Eure Hilfe

von jimma (Gast)


Lesenswert?

Ist sowas möglich?
Unmöglich vieleicht nicht, aber
a) weder sinnvoll,
b) gibt es imho dafür keine tools (wg. a))

Du kannst zwar Matlab Programme nach C übersetzen lassen, jedoch werden 
dann i.d.R. immer noch die Funktionen des Matlab-Core benutzt und 
benötigt.

von Ing-Dom (Firma: OpenKNX) (sirsydom)


Lesenswert?

Ach warum auslachen?
Am MathWorks Stand auf der Embedded World war das Thema ;) bin aber nur 
kurz vorbeigegangen.

Es gibt doch die Möglichkeit Matlab-Code in C-Code zu übersetzen, ich 
weiß DAS es geht, ich habs aber noch nie gemacht.. Mussu selber suchen.

von Steve (Gast)


Lesenswert?

Könnte gehen, wird aber vermutlich ziemlich langsam. Wenn die Auswertung 
mal steht ist es doch nur ein relativ kleiner Aufwand, das in C 
nachzuprogrammieren. In Sachen Codegenerierung tut sich aber grad 
einiges...

von DiScha (Gast)


Lesenswert?

Hallo,
der Export von Matlab/Simulink funktioniert gut. Habe das schon 
einigemal für PowerPC und ColdFire basierte Systeme gemacht. Der 
generierte Code wird dann mit einem Timer-Interrupt verbunden, richtig 
initialisiert, und alles funktioniert. Der Code selbst ist recht 
effizient. Von Hand geht es in der Regel besser, weil man die aktuellen 
Datentypen kennt. Für Matlab kann alles ein Vektor mit komplexen Werten 
sein - daher etwas overhead. Wird aber zum Teil vom Compiler 
weg-optimiert.

Gruß
Dieter

von Thomas (Gast)


Lesenswert?

Dazu gibt es auf www.mathworks.com ein Webinar "Algorithm Design and 
Code Generation with Embedded MATLAB":
http://www.mathworks.com/cmspro/webconf15626.html

von Michael K. (Gast)


Lesenswert?

Du brauchst den Realtime Workshop. Stichwort ist hier der Embedded real 
time coder. Dem kannst du auch "sagen" für welches Target (Prozessor, 
8bit geht da auch) der code produziert werden soll......

Tolle Sache !

Grüße,
Michael

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.