• Aucun résultat trouvé

ARTheque - STEF - ENS Cachan | Aide informatique à la vérification de la durée de vie des roulements à billes à contact oblique ou à rouleaux coniques

N/A
N/A
Protected

Academic year: 2021

Partager "ARTheque - STEF - ENS Cachan | Aide informatique à la vérification de la durée de vie des roulements à billes à contact oblique ou à rouleaux coniques"

Copied!
6
0
0

Texte intégral

(1)

···Pratique'P4ti~gog{qite

-AIDE INFORMATIQUE A LA VERIFICATION

DE LA DUREE DE VIE DES ROULEMENTS

A BILLES A CONTACT OBLIQUE

OU A ROULEAUX CONIQUES

Le Programme qui est donné dans les pages suivantes, et qui est écrit en Turbo-Pascal 6, permet de vérifier la durée de vie des roulements réalisant une liaison pivot à hyper-statisme axial : deux roulements à un rang de rouleaux coniques, ou à un rang de billes à contact oblique montés en "X" ou en "0".

En classe de Mathématique Spéciale Technologique T, lors d'un T.P de 2 heures, l'élève doit compléter certaines procédures et tester la validité des différents chemins du programme à partir de l'organigramme fourni. Enfin, quand il a réalisé le programme complet il peut vérifier la durée de vie de quelques montages proposés.

La trame du programme permet à l'élève d'analyser et d'apprécier quelques procédures intéressantes : par exemple ...

=>En Turbo-Pascal6, l'instruction READ oblige à une entrée numérique au clavier. Lors de l'utilisation de petits logiciels, le nombre de données à entrer peut être important alors que pour des tests, on a souvent besoin de ne chan-ger qu'une seule valeur. Turbo-Pascal 6 oblige à répéter l'entrée de toutes les données à chaque fois, ce qui est long est fastidieux. La procédure ENTRE remédie à cet inconvénient en permettant de conserver la valeur déjà stockée, qu'il suffit de valider par la touche entrée ; c'pst beaucoup plus rapide !

Michel BANGUET est professeur au lycée Baggio à Lille

Par Michel BANGUET

En outre, la procédure ENTRE protège contre les erreurs de frappe et évite ainsi une sortie inopinée du programme, en perdant toutes les valeurs déjà rentrées.

L'initiation à l'utilisation de fenêtres apparaît dans les procédures AFFICHINF (écriture des messages dans une fenêtre infé-rieure), et AFFICHSUP (entrées ou résultats dans la fenêtre supérieure indépendante).

=> La procédure INIT permet simple-ment d'avoir des valeurs initiales stockées, ce qui permet de vérifier rapidement que le programme <<tourne» lors de sa mise au point.

=> La procédure ENTREEDONNEES montre l'intérêt de rappeler l'ancienne valeur stockée (avec formatage de l'écriture : exemple Ka:8:0) avant d'appeler la procédure EN1RE. Un message dans la fenêtre inférieure précise alors : «Validez ou non puis entrez nouvelle valeur>>.

=> Le programme principal par son REPEAT ... UNTIL montre l'intérêt d'avoir un programme qui tourne « en boucle » ... ; pas besoin de le relancer à chaque fois par un RUN ... qui perdrait les données stockées. En outre, on pourra noter l'appel conditionnel de procé-dures utilisant des IF THEN ... ELSE

(2)

{ ROULCONI.PAS }

{

}

PROGRAM ROULCONI; {=version du 12/09/1993 }

{

}

{CALCUL D'UN MONTAGE HYPERSTATIQUE SUR 2 ROULEMENTS}

{ à 1 rang de rouleaux coniques ou 1 rang de billes à contact oblique } Uses Crt;

VAR

Fr1,Fr2,Ka, Y1, Y2,n,X1,X2,e1,e2,P1 ,P2,C1,C2, A1,A2,Kalim,Lh1,Lh2,m,Fa1,Fa2j :real; i,code :integer; choix,touche :char; titre,suite :string[80]; OK :boolean; chain :string; {---} PROCEDURE ENTRE (var entree:real);

begin {procédure permettant de conserver les valeurs déjà entrées en } {appuyant sur "entrée"; toute autre touche permet de modifier } { la valeur stockée - en outre, une entrée }

{différente d'un nombre n'est pas acceptée }

code:=O; {initialisation du code à zéro pour accepter } { directement la première donnée déjà stockée }

REPEAT { à répéter tant que les touches ne correspondent ni à la }

{000000} {touche [entrée] ni à une valeur numérique }

chain:=";

touche:=readkey; { arrête le programme et lit la touche frappée } { sans l'afficher à l'écran }

if(touche <> chr(13)) then {si appui sur touche<> [entrée] alors } begin

while touche<>chr(l3) do {tant qu'on n'appuie pas sur [entrée] } begin

write(touche); {écrit la touche frappée à l'écran }

chain:=chain+touche; { on construit une chaine de caractères } touche:=readkey; { regroupant les touches frappées }

end; { successivement }

val( chain,entree,code ); { convertit la chaine en nombre stocké } {dans la variable "entree" et renvoie }

{ le code 0 si celle-ci est bien un }

{ nombre correct }

aptep-info N° 70 - décembre 1996

(3)

Pratiq#l~pétJ4gQiiquè

-. ·- •·· .' . . ...

if code <>0 then begin

textcolor( 4 ); {rouge} { avertissement si } writeln(' ... Entrez un N 0 M BR E ... '); { "entree" n'est pas}

textcolor(14);{jaune} {un nombre }

end; end;

if (touche= chr(l3)) then writeln; { si appui sur "entrée" alors } { sautez une ligne pour écrire l'entrée suivante} UNTIL code= 0; . {sortie de la boucle repeat..until}

c

0000

} {si on a bien écrit un nombre }

end;

{---} PROCEDURE EFFACEINF; {effacement fenêtre inférieure}

begin

window(1,24,80,25);clrscr; end;

{---} PROCEDURE AFFICBINF; {création d'une fenêtre inférieure }

begin { 2 lignes en bas de l'écran pour affichage des messages } window(1,24,80,25);

end;

{---} PROCEDURE EFFACESUP; {effacement fenêtre supérieure}

begin

window(l, 1,80 ,23);clrscr; end;

{---~---} PROCEDURE AFFICHSUP; { création d'une fenêtre supérieure }

begin

window(1,1,80,23); {23 premières lignes} gotoxy(l,l);

end;

{---} PROCEDURE INIT(var Ka,Frl,Fr2,Cl,C2,Xl,X2,Yl,Y2,el,e2,n:real;var I:integer);

begin

Ka:=l ;Frl:=l ;Fr2:=1 ;Cl :=1 ;C2:=1 ;Xl :=1 ;X2:=1; YI :=1; Y2:=1;el:=l;e2:=1;n:=l;j:=l;

end;

(4)

-;~~..o.~C.::._~c•=·~-~~ ;". :1.: "r.;\:.." .. 1.::_.;::::,..~~~-',~~-. ~ -·--::.:. .. ~,...;~.<~;:~,:.:.~ .:l~>1:·~~;-:

---IPt.~qJie;pei.fif#i!ll!lt'll!e·'

"'';,:;:' .. ,:-..·

PROCEDURE ENTREEDONNEES(var Ka,Frl,Fr2,Cl,C2,Xl,X2,Yl,Y2,

el,e2,n,m,Al,A2,Kalim:real;var I:integer); begin

EFF ACEINF;AFFICHINF;textcolor(9);

write(' [validez] ou [N]on puis entrez nouvelle valeur'); EFF ACESUP;AFFICHSUP;textcolor(l4 );

writeln(titre); writeln( suite);

writeln('Arbre ou moyeu isolé');

writeln('Roulement 1 tel que Fal de même sens que Ka d"où Fa2 = Fal + Ka');

writeln(' ');

write('effort axial extérieur en N Ka= ',Ka:8:0,' N ');ENTRE(Ka); write('effort radial!roul.l en N Frl = ',Frl :8:0,' N ');ENTRE(Frl ); write('effort radial/rou1.2 en N Fr2 = ',Fr2:8:0,' N ');ENTRE(Fr2); write('charge de base dynamique en N Cl= ',Cl:lO:O,' N ');ENTRE( Cl); write('charge de base dynamique en N C2 = ',C2:10:0,' N ');ENTRE(C2); write('coefficient de charge radiale Xl =',Xl :8:3,' ');ENTRE(Xl ); write('coefficient de charge radiale X2 = ',X2:8:3,' ');ENTRE(X2); write('coefficient de charge axiale YI= ',Y1:8:3,' ');ENTRE(Yl); write('coefficient de charge axiale Y2 = ',Y2:8:3,' ');ENTRE(Y2); write('limite Fa/Fr: el= ',el:6:3,' ');ENTRE( el);

write('limite Fa/Fr: e2 = ',e2:6:3,' ');ENTRE(e2);

write('vitesse de rotation en tr/min n = ',n:5:0,' tr/min ');ENTRE(n); repeat

write('entrer <1> si rouleaux coniques ou <2> si billes à contact oblique:< 'j:l:O,' >'); ENTRE(j); until (j=l) or (j=2); ifj=l then m:=l0/3; ifj=2 then m:=3; Al:=Frl/2Nl;A2:=Fr2/2N2;Kalim:=A2-Al; end; {---}

PROCEDURE CALCULAl(var e2,Fal,Al,Fa2,Ka,Pl,Frl,P2,X2,Fr2,Y2:real);

begin

Fal:=Al;Fa2:=Al+Ka;Pl:=Frl;

if (Fa2/Fr2)<=e2 then P2:=Fr2 else P2:=((X2*Fr2)+(Y2*Fa2)); end;

{---}

PROCEDURE CALCULA2(var el,Fa2,A2,Fal,Ka,P2,Fr2,Pl,Xl,Frl,Yl:real);

begin

Fa2:=A2;Fal :=A2-Ka;P2:=Fr2;

if(Fal/Frl)<=el then Pl :=Frl else Pl:=((Xl *Frl)+(Yl *Fal)); end;

{---} aptep-info N° 70 - décembre 1996

(5)

- ··; ., ... ~ ~ .. '". .., ,_ .. ' --· .

•Pr~quepédagf!_gique

PROCEDURE CALCULLh(var Lhl,Cl,Pl,n,Lh2,C2,P2:real); begin

Lhl :=exp(m*ln(Cl/Pl )+ln(le6/60/n)); Lh2 :=exp( m *ln( C2/P2 )+ln( 1 e6/60/n) ); end;

{---} PROCEDURE AFFICHRESULT(var el,e2,Frl,Fal,Al,Xl,Yl,Pl,Cl,Lhl,

Fr2,Fa2,A2,X2, Y2,P2, C2,Lh2 :real;var I:integer ); begin

clrscr;writeln(' RE S U L TA T S'); writeln( titre);

ifj=l then writeln(' à 1 rang de rouleaux coniques');

if j=2 then writeln(' à 1 rang de billes à contact oblique');writeln;

writeln('Roulement 1 tel que Fal de même sens que Ka= ',Ka:6:0,' N soit: Fa2 = Fal + Ka'); writeln;

writeln(' Vitesse de rotation relative des bagues= ',n:5:0,' tr/min');

writeln(' ');

writeln('Frl = ',Frl :6:0,' N Fal = ',Fal:6:0,' N < Fal mini= ',A1:6:0,' N >'); writeln(Xl = ',X1:5:2,' YI= ',Y1:5:2,' el =',e1:5:2);

writeln('Pl =',Pl :6:0,' N et Cl = ',Cl:8:0,' N); writeln;

ifFal =Al then begin

writeln('Roulement 1 <PORTEUR> "voit le jeu axial": durée ',Lh1:12:0,' heures');

writeln(' ');

end;

ifFal <>Al then begin

writeln('Roulement 1 < à priori :MIXTE> fonctionne "calé": durée ',Lhl: 12:0,' heures');

writeln(' ');

end;

writeln('Fr2 = ',Fr2:6:0,' N Fa2 = ',Fa2:6:0,' N < Fa2 mini= ',A2:6:0,' N >'); writeln;

writeln(X2 = ',X2:5:2,' Y2 = ',Y2:5:2,' e2 =',e2:5:2); writeln;

writeln('P2 = ',P2:6:0,' N et C2 = ',C2:8:0,' N'); writeln;

ifFa2=A2 then begin

writeln(Roulement 2 <PORTEUR> "voit le jeu axial": durée ',Lh2:12:0,' heures');

writeln(' ');

(6)

ifFa2<>A2 then begin

writeln('Roulement 2 <à priori MIXTE> fonctionne "calé": durée ',Lh2:12:0,' heures');

w r i t e l n ( ' ' = = = = = = = = = = = = = = = = = = = = = = = = = = = ' ) ; end; end; {---~-} { programme principal } BEGIN INIT(Ka,Frl,Fr2,Cl,C2,Xl,X2,Yl,Y2,el,e2,n,I); REPEAT clrscr;textbackground(O ); AFFICHSUP;textcolor(14);

titre:='V érification de durée d"un montage hyperstatique sur 2 roulements'; suite:='< rouleaux coniques ou billes à contact oblique 1 rang>';

ENTREEDONNEES(Ka,Frl,Fr2,Cl,C2,Xl,X2,Y1,Y2,el,e2,n,m,Al,A2,Kalim,I); if Al>A2 then CALCULAI(e2,Fa1,A1,Fa2,Ka,P1,Fr1,P2,X2,Fr2,Y2)

else ifKa<Kalim then CALCULA2(el,Fa2,A2,Fa1;Ka,P2,Fr2,P1,X1,Fr1,Y1) else CALCULA1(e2,Fa1,A1,Fa2,Ka,P1,Fr1,P2,X2,Fr2,Y2);

CALCULLh(Lh1,Cl,Pl,n,Lh2,C2,P2);

AFFICHRESULT(e1,e2,Fr1,Fa1,A1,X1,Y1,P1,C1,Lh1,Fr2,Fa2,A2,X2,Y2,P2,C2,Lh2,I); EFF ACEINF;AFFICHINF;

gotox.y(30,2);textcolor(9);

writeln('voulez-vous continuer < 0/N > ?');choix:=readkey;

UNTIL ( choix='N')or( choix='n');

END.

{---}

LA COMPRESSION DES DONNEES

(suite de la page 17)

Pour finir, il est possible de dire que les programmes ARJ et PKZIP se valent : le premier est peut-être un peu moins performant en taux de compression (à un fraction de% !)

mais le code ajouté pour rendre une archive auto-extractible est moins important et au final une archive de ce type sera plus compacte qu'avec PKZIP.

Enfin, il faut savoir que les performances des archiveurs sont mesurées par 3 paramètres:

- le ratio de compression : rapport taille des

fichiers originaux 1 taille des fichiers compressés.

- le taux de réduction : l'inverse du ratio. - le gain : 1 moins la réduction

Pour les collègues intéressés , envoyer une disquette 3"5 formatée, avec l'emballage pré-affranchi pour le retour à :

GUILHEM André

18, rue de l'Hôtel de Ville

88430 CORCIEUX

Références

Documents relatifs

Objective: The objective was to evaluate the effects of foliar application of Jatropha and neem aqueous extracts compared to a conventional insecticide treatment

On propose quatre équations de réaction pour la décomposition thermique de l'hydrogénocarbonate de sodium. Il convient de déterminer, à partir de conclusions expérimentales, celle

L’application rigoureuse des règles d’hygiène tout au long du processus de fumage et de la mise en vente réduirait de façon significative la flore microbienne de contamination

Therefore, the present investigation was carried out to study the effect of breed (Uda and Balami) and non-genetic factors (sex of lamb, parity of dam, year

La Ministre confirme sa positon et réaffirme l’exclusivité de l’exercice professionnel rappelé dans le Code de la Santé Publique. Celui-ci permettra de prolonger pour

En per-opératoire, au CHU de Poitiers, l’objectif de pression artérielle est principalement basé sur une valeur de pression artérielle moyenne (PAM) à 65mmHg pour le

(3) Accédez à l’état de santé du patient le plus récent par voie électronique via les codes QR de santé (remarque: tout le monde doit obtenir un code VERT par le système QR

Du fait de la coagulopathie observée dans les HPP sévères, plusieurs experts ont proposé d’étendre les recommandations sur la transfusion chez le polytraumatisé