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

2D in 3D

 

wolfman77
Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 24.04.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.09.2008, 23:30     Titel: 2D in 3D
  Antworten mit Zitat      
hallo,
habe vor kurzem ein problem geschildert. nun scheint es so das ich der lösung, hier nochmal ein großes danke an nschlange, mit dem Code,

Code:

clear, close all, clc; disp(['Walzprozess',date])
global a b C ha hb Jw Jz Jges mW mZ mges k r1 r2 s0 tspan ys rho B Z
% Konstanten
a=B/2 + Z/2; % Bandmitte - Zapfenmitte [m]
b=0.8; % Bandbreite [m]
C=1850000000; % Geruestmodul [N/m]
Jw=1/4*mW*r1^2+1/12*mW*B^2
Jz=1/4*mZ*r2^2+2*mZ*((B)/2+(Z)/2)^2
Jges=Jw+2*Jz+2*mZ*((B)/2+(Z)/2)^2
mW=pi*r1^2*B*rho %Ballenmasse [kg]
mZ=pi*r2^2*Z*rho %Zapfenmasse [kg]
mges=mW+2*mZ
k=190000000; %Umformwiderstand [N/m^2]
r1=0.5; %Ballenradius [m]
r2=r1/1.5; %Lagerzapfenradius [m]
s0=0.02; %Voreinstellung [m]
rho=7865; %Dichte von Stahl [kg/m^3]
B=b*2; %Ballenbreite
Z=b/1.5; %Zapfenbreite
%Eingangsparameter
tspan=[0;3]
ys=[0;0;0;0];
%DGL Lösen
options=odeset('OutputFcn',@odeplot,'OutputSel',[1 3]);
[t,x]=ode23(@ma,tspan,ys,options);
%Ausgabe der Ergebnisse
figure, nor=1e+3;
subplot(2,1,1),plot(t,x(:,1)*nor),xlabel('t in [s]'),ylabel('Auffederung in [mm]')
subplot(2,1,2),plot(t,x(:,3)),xlabel('t in [s]'),ylabel('Winkel in [rad]')

function [ dgl ] = ma( t,x )
global b C d hl hr JBallen JLager Jges k mBallen mLager mges r1 s tspan y0 rho r2 B1 B2
% Parameterberechnung
hl = (0.018*(1+sin(100*t)/5));            % Ausgangs-Bandhöhe links       [m]
hr = (0.018*(1+cos(100*t)/5));            % Ausgangs-Bandhöhe rechts      [m]
% DGL

dgl = [x(2) ; ((0.5*sqrt(2)*b*k*sqrt(r*hl*(2*s+2*x(1)-b*sin(x(3)))))-g*m0*g-2*C*x(1)+0.5*sqrt(2)*b*k*sqrt(r*hr*(2*s+2*x(1)+b*sin(x(3)))))/mges ; x(4) ; ((0.25*sqrt(2)*b^2*k*sqrt(r*hl*(2*s+2*x(1)-b*sin(x(3)))))-2*d*x(1)-0.25*sqrt(2)*b^2*k*sqrt(r*hr*(2*s+2*x(1)+b*sin(x(3)))))/jges];

 



näher gekommen bin.
ich würde aber gerne die 2d darstellung in eine 3d darstellung umschreiben und habe mich deswegen auch schon nach den passenden befehlen "surf" und "meshgrid" erkundigt, bräuchte aber dennoch hilfe bei der umsetzung des ganzen. wenn mir jemand helfen könnte wäre ich sehr dankbar. ist halt neuland für mich.
PS habe auch gelesen das es eine art von movie funktion geben soll, daher die frage kann ich in diesem fall so was einbauen oder ist es eher ratsam das ganze einfach auf 3d zu beschränken.
Private Nachricht senden Benutzer-Profile anzeigen


nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.318
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 15.09.2008, 09:47     Titel:
  Antworten mit Zitat      
Hi,

das Programm funktioniert bei mir nicht. Ist das bei Dir so lauffähig?
_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
wolfman77
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 24.04.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.09.2008, 13:48     Titel:
  Antworten mit Zitat      
so läuft das programm natürlich nicht es besteht aus zwei seperaten code teilen d.h.
Code:


clear, close all, clc; disp(['Walzprozess',date])
global a b C ha hb Jw Jz Jges mW mZ mges k r1 r2 s0 tspan ys rho B Z
% Konstanten
a=B/2 + Z/2; % Bandmitte - Zapfenmitte [m]
b=0.8; % Bandbreite [m]
C=1850000000; % Geruestmodul [N/m]
Jw=1/4*mW*r1^2+1/12*mW*B^2
Jz=1/4*mZ*r2^2+2*mZ*((B)/2+(Z)/2)^2
Jges=Jw+2*Jz+2*mZ*((B)/2+(Z)/2)^2
mW=pi*r1^2*B*rho %Ballenmasse [kg]
mZ=pi*r2^2*Z*rho %Zapfenmasse [kg]
mges=mW+2*mZ
k=190000000; %Umformwiderstand [N/m^2]
r1=0.5; %Ballenradius [m]
r2=r1/1.5; %Lagerzapfenradius [m]
s0=0.02; %Voreinstellung [m]
rho=7865; %Dichte von Stahl [kg/m^3]
B=b*2; %Ballenbreite
Z=b/1.5; %Zapfenbreite
%Eingangsparameter
tspan=[0;3]
ys=[0;0;0;0];
%DGL Lösen
options=odeset('OutputFcn',@odeplot,'OutputSel',[1 3]);
[t,x]=ode23(@ma,tspan,ys,options);
%Ausgabe der Ergebnisse
figure, nor=1e+3;
subplot(2,1,1),plot(t,x(:,1)*nor),xlabel('t in [s]'),ylabel('Auffederung in [mm]')
subplot(2,1,2),plot(t,x(:,3)),xlabel('t in [s]'),ylabel('Winkel in [rad]')

zum einen und
Code:


function [ dgl ] = ma( t,x )
global b C d hl hr JBallen JLager Jges k mBallen mLager mges r1 s tspan y0 rho r2 B1 B2
% Parameterberechnung
hl = (0.018*(1+sin(100*t)/5));            % Ausgangs-Bandhöhe links       [m]
hr = (0.018*(1+cos(100*t)/5));            % Ausgangs-Bandhöhe rechts      [m]
% DGL

dgl=[x(2);((1/2)*sqrt(2)*b*k*(sqrt(2*r1*ha-2*s0*r1-4*r1*x(1)+b*r1*sin(x(3)))-2*x(1)+(1/2)*sqrt(2)*b*k*(sqrt(2*r1*hb-2*s0*r1-4*r1*x(1)-b*r1*sin(x(3)))/mges)));x(4);((2*C*a^2*sin(x(3)))+((1/4)*sqrt(2)*b^2*k*sqrt((2*r1*ha)-(2*s0*r1)-(4*r1*x(1))+(b*r1*sin(x(3))))-((1/4)*sqrt(2)*b^2*k*sqrt((2*r1*hb)-(2*s0*r1)-(4*r1*x(1))-(b*r1*sin(x(3)/Jges))))))];
 

zum anderen.

ma.m
 Beschreibung:

Download
 Dateiname:  ma.m
 Dateigröße:  574 Bytes
 Heruntergeladen:  643 mal
Walzprosess.m
 Beschreibung:

Download
 Dateiname:  Walzprosess.m
 Dateigröße:  1001 Bytes
 Heruntergeladen:  587 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.318
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 15.09.2008, 14:59     Titel:
  Antworten mit Zitat      
wolfman77 hat Folgendes geschrieben:
so läuft das programm natürlich nicht es besteht aus zwei seperaten code teilen d.h. (2 m-Files)


Ja, das ist mir schon klar, aber wieder muss man sich mit nicht-definierten Variablen rumärgern.
Z.B.:
Zitat:
??? Undefined function or variable 'ha'.

Error in ==> ma at 8
dgl=[x(2);((1/2)*sqrt(2)*b*k*(sqrt(2*r1*ha-2*s0*r1-4*r1*x(1)+b*r1*sin(x(3)))-2*x(1)+(1/2)*sqrt(2)*b*k*(sqrt(2*r1*hb-2*s0*r1-4*r1*x(1)-b*r1*sin(x(3)))/mges)));x(4);((2*C*a^2*sin(x(3)))+((1/4)*sqrt(2)*
Error in ==> odearguments at 110
f0 = feval(ode,t0,y0,args{:}); % ODE15I sets args{1} to yp0.

Und es geht weiter mit s0 und hb...
_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
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 - 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.