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

Zeitversetzte Addition

 

rambotnik
Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 15.07.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.07.2011, 12:48     Titel: Zeitversetzte Addition
  Antworten mit Zitat      
Hallo,

ich stehe vor der Aufgabe, eine phasenversetzte Addition einiger Werte in Simlink vorzunéhmen.

Zu meinem Proble: Ein 4Takt-Verbrennungsmotor dreht die Kurbelwelle. Die Ergebnisse sollen um 180° Phasenversetzt addiert werden. Also habe ich einen Wert, zu dem soll der Wert nach 180°, 360° und 720° addiert werden. Nach 720° ist wieder 0°.

Wie könnte ich das anstellen?
Zum Verständnis habe ich mal eine vereinfachte Version angehängt. Der Wert kommt darin aus einem Sinus.

Danke und Gruß

kw.mdl
 Beschreibung:

Download
 Dateiname:  kw.mdl
 Dateigröße:  25.55 KB
 Heruntergeladen:  464 mal
Private Nachricht senden Benutzer-Profile anzeigen


DSP
Forum-Meister

Forum-Meister



Beiträge: 2.117
Anmeldedatum: 28.02.11
Wohnort: ---
Version: R2014b
     Beitrag Verfasst am: 27.07.2011, 13:46     Titel:
  Antworten mit Zitat      
Bin mir noch nicht ganz sicher, ob ich dich richtig verstanden habe. Wenn der Ausgang phi = 180, 360 oder 720 Grad ist, soll dass zu dem Sinussignal addiert werden?

Wie wäre es mit einem If Block... if( u1 == 180) elseif (u1 == 360), (u1 == 720)?
Private Nachricht senden Benutzer-Profile anzeigen
 
rambotnik
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 15.07.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.07.2011, 21:26     Titel:
  Antworten mit Zitat      
ne, bei phi=180grad, soll der wert von 0 grad addiert werden, bei 181 der wert von 1 grad. bei 360 dann der wert von 0, 180 und 360.

0 --> 0
1 --> 1
180-->0+180
181-->1+181
360-->0+180+360
361-->1+181+361
540-->0+180+360+540
541-->1+181+361+541
720-->0+180+360+540+720
1-->1+181+361+541

gruß
Private Nachricht senden Benutzer-Profile anzeigen
 
DSP
Forum-Meister

Forum-Meister



Beiträge: 2.117
Anmeldedatum: 28.02.11
Wohnort: ---
Version: R2014b
     Beitrag Verfasst am: 28.07.2011, 06:44     Titel:
  Antworten mit Zitat      
Ok, das ist nun klar.

Sollen aber jetzt die einzelnen Winkel so addiert werden, oder z.B der
sin(0) + sin(180) zu den beiden Winkeln...oder evtl. die Amplituden sin(2*pi*f + phi) bei den Winkeln? Das Sinussignal war nur ein vereinfachtes Bsp. ...denn wirklich Sinn macht die Addition bei einer Phasenverschiebung von 180 Grad nicht, da die beiden Werte ja identisch sind. Ich nehme mal an, dass dies bei deinem System dann nicht mehr so ist?
Private Nachricht senden Benutzer-Profile anzeigen
 
rambotnik
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 15.07.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.07.2011, 13:21     Titel:
  Antworten mit Zitat      
Hallo,

es sollen die Werte bei dem Kurbelwinkel addiert werden. In meinem Modell ist das natürlich nicht der Sinus:)

Gruß
Private Nachricht senden Benutzer-Profile anzeigen
 
DSP
Forum-Meister

Forum-Meister



Beiträge: 2.117
Anmeldedatum: 28.02.11
Wohnort: ---
Version: R2014b
     Beitrag Verfasst am: 28.07.2011, 14:32     Titel:
  Antworten mit Zitat      
Das ist mir schon klar...wie ja schon schrieb, macht es beim Sinus auch keinen Sinn.

Aber jetzt bezogen auf das vereinfachte Modell mit dem Sinus. Ich habe jetzt schon den Teil, wo wie in deiner gegebenen Tabelle richtig zusammengezählt wird. Ich würde nun gern wissen, wie die Winkel nun mit dem Sinus zusammenhängen sollen Wink
Private Nachricht senden Benutzer-Profile anzeigen
 
DSP
Forum-Meister

Forum-Meister



Beiträge: 2.117
Anmeldedatum: 28.02.11
Wohnort: ---
Version: R2014b
     Beitrag Verfasst am: 28.07.2011, 18:26     Titel:
  Antworten mit Zitat      
Man kann ja auch einfach eine Embedded Matlab Funktion schreiben, und dort die Addition machen. Da hätte ich auch mal früher drauf kommen können, anstatt mit ethlichen if-Blocken zu arbeiten.

Den Winkel müsste man eigentlich vor der Addition der Sinusfktn. ins Bogenmaß umrechnen. Da es dir aber eh nicht um den Sinus geht, sollte das ja als Bsp. reichen.

Ist das was für dich?

kw.mdl
 Beschreibung:

Download
 Dateiname:  kw.mdl
 Dateigröße:  29.53 KB
 Heruntergeladen:  460 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
rambotnik
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 15.07.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.07.2011, 22:49     Titel:
  Antworten mit Zitat      
damit kann man aber nur funktionen berechnen, oder?

n verbrennungsmotor ist aber deutlich komplexer als n polynom oder ne trigonometrische funktion.

er müsste irgendwie den wert von vor 180° (360,540,720) Kurbelwinkel speichern und dazu addieren dauernd

gruß
Private Nachricht senden Benutzer-Profile anzeigen
 
DSP
Forum-Meister

Forum-Meister



Beiträge: 2.117
Anmeldedatum: 28.02.11
Wohnort: ---
Version: R2014b
     Beitrag Verfasst am: 29.07.2011, 07:07     Titel:
  Antworten mit Zitat      
Dann beschreib doch mal bitte genauer, wie die Winkel mit der anderen Größe/n zusammenhängen bzw. addiert werden sollen. Ich nehme mal, sie laufen synchron in Abhängigkeit zu dem Winkel.

Mit dem Sinussignal-Block wäre das doch auch nicht so einfach gegeganen, denn dazu hätte ich ja erstmal dessen Phase bestimmen müssen, oder die Frequenz mit dem Phi-Ausgang synchronisieren müssen.

Wenn man die Größen zu den gesuchten Winkeln z.B. 1 + 181 + 361 nicht berechnen kann, sehe ich da dann eigentlich nur eine Chance. Die Größe/n zu den Winkeln 0...720 in ein Fifo laufen zu lassen. Dazu muss die Schrittgröße (z.B. 1 Grad) aber festgelegt werden, was sie momentan nicht ist. Ansonsten hat man die Werte gar nicht zn den gewünschten Winkeln.
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 - 2024 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.