Servus, beschäftige mich derzeit etwas intensiver mit Simulink und bin u.a. auf die ganze Geschichte mit dem Real Time Workshop und der direkten Code-generierung für diverse Targets gestoßen. Wäre doch ne super Sache, wenn man auf diese Weise auch einen AVR uC programmieren könnte! Hat einer von Euch damit schon Erfahrung gesammelt? Bzw. gibt es irgendwo schon Toolboxes etc? Freu mich auf rege Antworten! Gruß Vinz
Hast du denn alle Toolboxen dazu? Die Kosten ja ne menge. Ich wollte auch mal in der Schule so was machen aber da fehlten diese und die waren zu teuer. Deshalb von hand erledigt (Digitale Relger ja nur ein paar Konstanten Kopieren Einfügen etc.). Wäre aber sicher ne super sache. mgiaco
Toolboxen sind einige bei meiner Firma vorhanden. Aber mir fehlt einfach die Grundlage, das Zeug einzurichten. Suche zwar die ganze Zeit rum, aber fündig bin ich leider noch nicht geworden. Wunsch wäre, dass ich z.B. einen Analogeingang als Block in Simulink zur Verfügung habe, das dann in C code umwandele und dann mit ponyprog etc auf den uC jage ... Haben nur wir beide uns dadrüber Gedanken gemacht? Kennt keiner noch weitere Infos zu dieser Schnittstelle?
Na ja das wäre auch mein Wunsch gewesen => Aber eben nur ein Wunsch. :-) Mathworks hat so was für die ARM´s mit Tasking Compiler soweit ich weiß und für die mpc555 mit Metroworks Compiler aber für die AVR´s keine Ahnung, glaube ich nicht das die das haben. >Aber mir fehlt einfach >die Grundlage, das Zeug einzurichten. >Suche zwar die ganze Zeit rum, aber fündig bin ich leider noch nicht >geworden. Übrigens genau das war auch mein Problem. Ich habe mir mal von meinem Digitalen Relger den Code erzeugen lassen und da waren etliche Methoden drin von denen ich nicht wusste wo die zu finden sind etc. => Ich hätte mehr Anpassen müssen als das Zeit gekostet hat von Hand zu schreiben. Also wenn ihr in deiner Firma solche Toolboxen habt, dann würde ich mich ohne weiters trauen mal bei Mathworks anzufragen wo und wie man solche Anpassungen machen kann. Da bist du bestimmt am schnellsten. Ich weiß ja nicht was du vor hast aber wenn es um Regler geht, dann bist du von Hand auf jedenfalls schneller glaube ich. Dann weißt du was der Code genau macht etc. Wo du was wie anpassen kannst etc.
Danke schon mal. Gut zu hören, dass sich doch noch einer über dasselbe Thema Gedanken gemacht hat! Wahrscheinlich hast Du Recht und ich werd erstmal versuchen das Zeug selbst zu schreiben. Aber für die Zukuft ??? Oder ich steig einfach auf den MCP555 um ...
Wir nutzen in der Arbeit auch Simulink für die Reglerentwicklung von einem Industriehubschrauber. Wir nutzen neben dem RTW (Real Time Workshop) auch den Embedded Real Time Coder. Dort kannst du dann einstellen was Dein Target System ist und 8-Bitter wie die AVRs werden hier auch unterstützt. Wenn du fertige Blöcke haben willst um z.B. den ADC auszulesen wirst Du leider enttäuscht sein, denn die gibts nicht, aber so nen ADC per Hand auszulesen und die Werte dann in den von Matlab generierten Code zu schieben sollte kein Problem sein! Die Werte die in Deinen Simulink - Block laufen sollten als Busse definiert sein, genauso wie die Ausgabe - Werte. Wenn du den Code dann von Matlab erzeugen läßt, dann laßt Dir auch die Main (ert_main.c) ausgeben. Hierbei gibts dann meist eine rt_onestep() - Funktion, die Funktionalität aus dem Simulink - Block enthält. Der Eingangsbus (wird in C als struct abgebildet) ist mit dem Kürzel U versehen und der Ausgangsbus mit Y. Vor dem Aufruf der Funktion rt_onestep() musst Du nur Deinen Eingangsbus mit den Werten belegen (z.B. vom ADC) und nach dem Aufruf der Funktion stehen die Ausgabewerte im Ausgangsbus. 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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.