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

Muschelkennfelder

 

Merlin1234

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.04.2011, 14:31     Titel: Muschelkennfelder
  Antworten mit Zitat      
Hallo zusammen,

habe schon ein bißchen hier im Forum gelesen aber bin noch nicht ganz schlau geworden:

Habe folgende Aufgabe:

Ich möchte ein Verbrauchskennfeld mit Matlab plotten.

Als Eingangsgrößen habe ich die Motordrehzahl, Braketroque und den Verbrauch [g/kwh]

Für alle die nicht wissen wie ein Verbrauchskennfeld(Muscheldiagramm aussieht) anbei ein Link

http://de.wikipedia.org/wiki/Verbrauchskennfeld

Folgenden Lösungsansatze habe ich gewählt.

Habe mir 3 Variabeln im Workspace angelegt: Drehmoment, Drehzahl, Verbrauch

dann habe ich die Messungen so ausgewertet:

tx = 500:10:6000
ty=-20:1:180
[xi,yi]=meshgrid(tx,ty)
zi=griddata(drehzahl, drehmoment,verbrauch,xi,yi,'linear')
contour(xi,yi,zi)


Merlin1234

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.04.2011, 14:37     Titel: Teil 2
  Antworten mit Zitat      
Aber ich verstehe folgendes noch nicht,

wenn ich die Schrittweite von tx und ty ändere beeinfluße ich auch meinen plot.

Bei geringer schrittweite bekomme ich relativ ein Verbrauchskennfeld hin, jedoch finde ich fehlen da noch einige Iso Lines.

Habe ein Original Kennfeld als vergleich und das sieht noch viel wilder aus.

Woran liegt das das teilweise nur 10Pkt und teilweise 100pkt geplottet werden an griddatat? oder Meshgrid?

Kann mir jemand sagen wie ich die Aufteilung am besten machen kann?

Wie kann ich nachher die iso Lines beschriften?


Anbei 2 Bilder um mal den Unterschie zwischen den Schrittweiten zu sehen. Woran liegt das

Bild2.png
 Beschreibung:

Download
 Dateiname:  Bild2.png
 Dateigröße:  48.99 KB
 Heruntergeladen:  2201 mal
Bild1.png
 Beschreibung:

Download
 Dateiname:  Bild1.png
 Dateigröße:  48.45 KB
 Heruntergeladen:  1978 mal
 
alpha1408
Forum-Anfänger

Forum-Anfänger


Beiträge: 35
Anmeldedatum: 10.11.11
Wohnort: Braunschweig
Version: ---
     Beitrag Verfasst am: 24.10.2013, 12:22     Titel:
  Antworten mit Zitat      
Hallo,

ich greife das Thema nochmals auf, denn ich stehe vor dem selben Problem!

Ich habe drei Matrizen gleicher Größe:

M_kf als 15x16
n_kf als 15x16
be_kf als 15x16

M (Moment) und n(Drehzahl) bilden quasi die Stützstellen, an denen das jeweilige be ermittelt wurde.

Außerdem ist mir die Volllastline durch zwei Vekoteren 8Drehzahl und Drehmoment) bekannt.

Ich suche jetzt das Muscheldiagramm, in dem unterhalb der Volllastline die be-Werte als Isolinien dargestellt sind.

Ich habe schon ewig mit contour und meshgrid experimentiert, komme aber auf keinen grünen Ast.

Hat jemand eine Idee?

Vielen Dank schonmal!
Private Nachricht senden Benutzer-Profile anzeigen
 
alpha1408
Forum-Anfänger

Forum-Anfänger


Beiträge: 35
Anmeldedatum: 10.11.11
Wohnort: Braunschweig
Version: ---
     Beitrag Verfasst am: 05.02.2014, 11:42     Titel:
  Antworten mit Zitat      
Hallo,

das Kennfeld konnte ich mittlerweile erstellen Smile

Jetzt ist es aber so, dass das "contour"-Diagramm auch überhalb der Volllastlinie dargestellt wird.

Wie stelle ich es an, dass der contour-Plot an der Volllastlinie endet?

Danke für eure Hilfe! Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Seban
Forum-Meister

Forum-Meister


Beiträge: 600
Anmeldedatum: 18.01.12
Wohnort: ---
Version: ab R2014b
     Beitrag Verfasst am: 05.02.2014, 17:07     Titel:
  Antworten mit Zitat      
Hallo,

alpha1408 hat Folgendes geschrieben:

Wie stelle ich es an, dass der contour-Plot an der Volllastlinie endet?

Ich vermute, du kannst die Daten, die über der Volllastlinie liegen einfach auf NaN setzen. Dann werden diese nicht geplottet.

Grüße,
Seban
_________________

Richtig fragen
Debugging
Private Nachricht senden Benutzer-Profile anzeigen
 
alpha1408
Forum-Anfänger

Forum-Anfänger


Beiträge: 35
Anmeldedatum: 10.11.11
Wohnort: Braunschweig
Version: ---
     Beitrag Verfasst am: 06.02.2014, 10:45     Titel:
  Antworten mit Zitat      
Hallo Seban,

die Idee hatte ich auch, aber es hapert etwas an der Umsetzung.

Folgende Daten sind gegeben:

Drehzahl(1x13)
Drehmoment(60x1)
Wirkungsgrad (60x13)

Volllast-Drehzahl (1x60)
Volllastmoment(1x60)

Das Kennfeld wird also von zwei Vektoren aufgespannt und mit einer Matrix gefüllt.

Ich möchte jetzt irgendwie die Bedingung implementieren, dass Wirkungsgrad(n,M)=NaN ist, wenn Wirkungsgrad(n,M) oberhalb von Volllastdrehzahl und -Moment liegt. Ich bekomme es aber nicht wirklich hin. Sad
Private Nachricht senden Benutzer-Profile anzeigen
 
Seban
Forum-Meister

Forum-Meister


Beiträge: 600
Anmeldedatum: 18.01.12
Wohnort: ---
Version: ab R2014b
     Beitrag Verfasst am: 06.02.2014, 12:41     Titel:
  Antworten mit Zitat      
Kannst du Beispieldaten und ggf. deinen Ansatz posten?

Grüße,
Seban
_________________

Richtig fragen
Debugging
Private Nachricht senden Benutzer-Profile anzeigen
 
alpha1408
Forum-Anfänger

Forum-Anfänger


Beiträge: 35
Anmeldedatum: 10.11.11
Wohnort: Braunschweig
Version: ---
     Beitrag Verfasst am: 06.02.2014, 13:02     Titel:
  Antworten mit Zitat      
Hi,

habe es gerade hinbekommen. Habe eine doppelte for-Schleife genommen. Die äußere Schleife für die Wahl der aktuellen Drehzahl und die innere Schleife für die Momentenstützstellen. Den Profis werden sich wahrscheinlich die Fußnägel dabei hochrollen, aber es funktioniert Wink

Trotzdem vielen Dank für deine Hilfe Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
to123

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.02.2014, 19:00     Titel: gleiche Frage
  Antworten mit Zitat      
Hallo,
ich möchte auch gerne ein Verbrauchskennfeld in Matlab plotten.
Kannst du dein Programm bitte einmal posten, bei mir sieht es im Moment so aus, wie bei dir am Anfang!?

Vielen Dank!
Thomas
 
Kaneos
Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 06.12.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2014, 18:26     Titel:
  Antworten mit Zitat      
Hallo

ich klinke mich hier mal kurz mit ein und versuche mal auch ne Frage zu meinem Skript beantwortet zu bekommen.

Hier erstmal mein Skript

Code:

clear all
clc

n=xlsread('MotorDaten.xls','a3:a209');
M=xlsread('MotorDaten.xls','b3:b209');
be=xlsread('MotorDaten.xls','ah3:ah209');

[ni,mi]=meshgrid(700:100:5500,-50:10:300);
beff=griddata(n,M,be,ni,mi);

figure;
contour(ni,mi,beff,[233:10:500,700:100:1200])
xlabel('Drehzahl [1/min]');
ylabel('Drehmoment [Nm]');
 


Hier wird aus einer Exceltabelle die Motordrehzahl, Motordrehmoment und der Kraftstoffverbrauch ausgelesen. Danach mittels meshgrid und griddata interpoliert und mittels contour das Verbrauchskennfeld erzeugt.

Meine Frage bezieht sich auf diese Stelle:
Code:
contour(ni,mi,beff,[233:10:500,700:100:1200])

Was genau macht die Zahlenabfolge? Also was ich durch Try and Error herausbekommen habe, ist das sowas wie die Abtastrate. Die erste scheint in Z-Richtung zu sein, es wird bei 233 angefangen und in 10er Schritten bis 500 geplottet. Aber was macht 700:100:1200 ? Habe das auch mehrfach getestet aber so richtig schlau werde ich daraus nicht.

Vielen Dank für die Hilfe !
Private Nachricht senden Benutzer-Profile anzeigen
 
christ.fabian
Forum-Anfänger

Forum-Anfänger


Beiträge: 34
Anmeldedatum: 13.03.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.03.2014, 14:55     Titel:
  Antworten mit Zitat      
ich stehe vor dem selben Problem wie ihr:)
Private Nachricht senden Benutzer-Profile anzeigen
 
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.