On se propose de modéliser la déformation en traction d'une pale d'éolienne en rotation. On assimile la pale à une poutre homogène de masse , de longueur et de section équivalente tournant autour d'un point fixe avec un taux de rotation .
On découpe la poutre en tronçons de longueur , et de masse . Chacun des tronçons est modélisé par le modèle masse ressort précédent.
* { assemblage d'une matrice à partir de matrice élémentaire }
* fonction assemblage(Ae,N): matrice A(N+1,N+1)
* { calcul matrice A (N+1)^2 en fonction de Ke (2x2) }
definir A(N+1,N+1)0 : matrice de N+1 reels
pour l de 1 à N
pour i de 0 à 1
pour j de 0 à 1
* A(l+i,l+j) A(l+i,l+j)+Ae(i+1,j+1)
finpour
finpour
finpour
* { application d'une C.L. sur la 1ere ligne }
* A(1,.) 0 , A(,1) 0 , A(1,1) 1
* retour(A)
function A=assemblage(Ae,N) % (C) M. BUFFAT, UFR de Mecanique % A=assemblage(Ae,N,cl) assemblage d'une matrice A % a partir de N matrice elementaire Ae A=zeros(N+1,N+1); for l=1:N A(l:l+1,l:l+1)=A(l:l+1,l:l+1)+Ae; end; % application de la C.L. en 1 A(1,:)=0; A(:,1)=0; A(1,1)=1; return;
* { calcul la déformée d'une poutre en traction sous l'effet d'une rotation }
* fonction traction(Ne,w,L,M,K): vecteur U(Ne+1),R(Ne+1) de réels, T0 réel
* { paramètres: Ne nbre d'elements, w rotation instantanée (en tours/min)L longueur, M masse totale, K rigidité totale. On calcule la déformée U en fonction de la position R, et la tension T0 en r=0 }
*
* l L/Ne, m M/Ne, k K*Ne
* { matrices élémentaires }
* Ke k*[[1 -1],[-1 1]] , Me m*[[1 0],[0 1]]
* { assemblage des matrices }
* Ka assemblage(Ke,Ne), Ma assemblage(Me,Ne)
* { calcul du second membre }
* R , F R*R
* B M*F, B(1)0 { condition aux limites }
* { résolution }
* U KaB
* { tension en r=0 }
* T0
* retour (U,R,T0)
function [U,R,T0]=traction(Ne,w,L,M,K) % (C) M. BUFFAT, UFR de Mecanique % [U,R,T0]=traction(Ne,w,L,M,K) calcul d'une poutre en traction % sous l'effet de la rotation % calcul la deformee U en fonction de R et la tension en O T0 % parametres % nbre d'elements Ne de discretisation % rotation w en tour/minute % masse M, longueur L, raideur totale K (ES/L) omega=w*2*pi/60;% rotation en rd/s l=L/Ne; % longueur d'un element m=M/Ne; % masse elementaire k=K*Ne; % raideur elementaire % variable deformation, position U=zeros(Ne+1,1); R=[0:l:L]; F=omega*R.^2; % matrice de masse et de rigidite Ke=k*[1 -1; -1 1]; % matrice de rigidite Me=m/2*[1 0; 0 1]; % et de masse elementaire % assemblage Ka=assemblage(Ke,Ne); Ma=assemblage(Me,Ne); % resolution B=Ma*F'; B(1)=0; % second membre U=Ka\B; % tension en O T0=Ke(1,:)*[U(1) U(2)]'; return;
* { choix des paramètres }
* L=14 m , = 40 tr/min , M=800 kg , = 8000 , E= (acier)
* K E*S/L
* { étude de la précision en fonction du nbre d'éléments Ne }
* Ne=5,10,20
* U1,R1,T1 traction(5,,L,M,K)
* U2,R2,T2 traction(10,,L,M,K)
* U3,R3,T3 traction(20,,L,M,K)
* { tracer de U et de T en fonction de Ne }
% (C) M. BUFFAT, UFR de Mecanique % modelisation d'une pale d'eolienne en traction % sous l'effet de la rotation % calcul la deformee U en fonction de R et la tension en O T0 % caracteristique de la pale L=14; % longueur M=800; % masse rho=8000; % densite S=M/(rho*L); % section equivalente E=200e09; % module d'Young K=E*S/L; % raideur totale % rotation en tours/minute w=40; % etude de la solution en fonction de Ne [U1,R1,T1]=traction(5,w,L,M,K); [U2,R2,T2]=traction(10,w,L,M,K); [U3,R3,T3]=traction(20,w,L,M,K); subplot(2,1,1); plot(R1,U1,'-+',R2,U2,'-x',R3,U3,'-o','LineWidth',1); legend('N=5','N=10','N=20'); title('Deformation en fonction de R'); xlabel('R'); ylabel('U'); subplot(2,1,2); plot([5 10 20],[T1 T2 T3],'x','MarkerSize',16); title('Tension en O'); xlabel('N'); ylabel('T0');
Déformation d'une pale d'éolienne: execution avec Matlab