WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Mit Matlab C Code generieren

 

0815gast

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.03.2011, 11:12     Titel: Mit Matlab C Code generieren
  Antworten mit Zitat      
Guten Tag,

erstmal vorweg: Ich arbeite zur Zeit an einem Projekt in der Industrie zur Unterdrückung von Rauschen und Störgeräuschen eines Mikrofonsprachsignals. Dazu benutze ich einen TI C6747 DSP. Dieser läuft bereits (In->ADC->DAC->Out).

In Matlab wollte ich zu Testzwecken einen einfachen Tiefpassfilter in C Code umwandeln und in das DSP Projekt an entsprechender Stelle einfügen.
Es gibt dafür den Mcc Compiler, Embedded Compiler und Real Time Workshop Embedded Compiler.

Ich habe bisher einen Teil meiner Gesamtlösung als M-Datei gelöst. Ich weiß allerdings nicht ob das Gesamtprojekt ein Simulinkmodell wird.

Welche Toolbox ist zur Umwandlung in C Code empfehlenswert?
Spielt es eine Rolle dass die Toolbox RTW zwar für die Prozessorreihe C6000 aber nicht speziell für meinen Prozessor ausgelegt ist?
Erstellt der Matlab Compiler einen verwendbaren C-Code?
(Habe das bereits mit dem Matlab Compiler kurz ausprobiert und keinen Quelltext gefunden der sich in das DSP Projekt einfügen lässt)

Vielend Dank


Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 02.03.2011, 13:12     Titel:
  Antworten mit Zitat      
Der MATLAB Compiler ist nicht dafür geeignet und gedacht C Code zu generieren.

Die beschriebene Toolkette über Simulink und den Real-Time Workshop ist die richtige Lösung und wird von zahlreichen Kunden für derartige Anwendungen benutzt.

Eine derartige Anwendung ist jedoch durchaus komplex und bedarf m.E. der Beratung durch einen (MathWorks) Spezialisten.

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
DSP
Forum-Meister

Forum-Meister



Beiträge: 2.117
Anmeldedatum: 28.02.11
Wohnort: ---
Version: R2014b
     Beitrag Verfasst am: 02.03.2011, 13:19     Titel:
  Antworten mit Zitat      
Ich verstehe den Grund nicht, warum Matlab den C Code erzeugen muss? Ein einfaches Filter z.B FIR lässt sich doch recht schnell in C selber schreiben. Du nutzt dann nur Matlab, um das Filter zu designen und die Filterkoeffizienten berechnen zu lassen(z.B. durch FDATool).
Private Nachricht senden Benutzer-Profile anzeigen
 
0815gast

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.03.2011, 16:51     Titel:
  Antworten mit Zitat      
Danke Andreas

Ich habe bereits vermutet dass die RTW Toolbox das richtige Werkzeug hierfür ist.

Wenn das Produkt derart komplex ist, was ist der beste Weg sich diesem zu nähern?
Spielt es eine Rolle dass das Target Support Package zwar meine Prozessorserie C6000, aber nicht den speziellen Prozessor unterstützt, wenn ich nicht die wenigen Blöcke des Packages (ADC, LED, Switch) benutzen möchte?

Ich denke ich kann darauf verzichten, da ich meinen Matlab C Code zwischen der AD, DA Kette integriere.
Sehe ich das richtig dass nur mit RTW ein C Code erzeugt werden kann den man nachträglich bearbeiten kann (keine dll o.ä.)?

@DSP: Das mag für einen einfachen Filter zutreffen. Schreibt man etwas komplizierteres und merkt hinterher, dass die angedachte Lösung nicht funktioniert, hat man nicht allzuviel Zeit in die C Code Implementierung vergeudet.
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 02.03.2011, 22:06     Titel:
  Antworten mit Zitat      
Hallo,

noch ein Hinweis: wenn es nur um MATLAB-Code geht, kann
Code:

helfen.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Scriptor
Forum-Century

Forum-Century


Beiträge: 217
Anmeldedatum: 22.02.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.03.2011, 23:05     Titel:
  Antworten mit Zitat      
Wenn diese Schritte so teuer sind, kann man da nicht mal ein paar Stunden investieren, eine Faltungsfunktion inc zu schreiben und gut is?

Andere Frage: Kann man denn schon c-Files außerhalb von Matlab schreiben, die die Werte dieses Gerätes auslesen?

Noch eine Frage: Ist das in Echtzeit oder nicht?

Mfg Ich
Private Nachricht senden Benutzer-Profile anzeigen
 
Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 02.03.2011, 23:06     Titel:
  Antworten mit Zitat      
Nun ja, ein Hexenwerk ist nun auch wieder nicht, aber halt auch nicht so einfach, dass es sich durch ein Community-Forum lösen lässt. Ich biete an mich persönlich zu kontaktieren - ich organisiere dann einen Spezialisten, OK?

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.