DC_03-scilab_translateur

publicité
Lois de commande d’un
translateur
Pierre Laguillaumie
Philippe Vulliez
Objectifs
• Comparer deux lois de commande :
– Loi trapèze 1/3-1/3-1/3
– Loi à accélération continue
• Calculer le couple moteur entrainant un axe linéaire
2
• Déterminer les caractéristiques du mouvement :
vitesse max, couple max, couple efficace.
Travail à effectuer / à rendre
• PARTIE 1
– À partir des positions de départ et d’arrivée et de la durée
du mouvement et d’un vecteur de temps, créer un script
scilab / matlab permettant de calculer l’accélération, la
vitesse et la position pour les deux lois étudiées.
– Créer une fonction par loi.
• PARTIE 2
Réaliser l’étude dynamique de l’axe. Déterminez les
grandeurs caractéristiques du cycle de fonctionnement en
fonction de la loi de commande retenue.
• Documents à rendre :
3
– Scripts des fonctions de génération des lois +
documentation
– Script d’utilisation des fonctions + graphes positions /
vitesses /accélérations
– Script d’étude mécanique paramétrique + document de
synthèse
Description partie opérative
Système d’entrainement Bosch-Rexroth :
« module pont BKK » qui associe
4
– Un guidage linéaire par billes sur rails
– Un entraînement par vis à billes
5
Exemple d’utilisation
Application : manutention
Cycle de fonctionnement dimensionnant :
Prise de pièce : 0,5s
Déplacement : 0,5m en 1s
Dépose pièce : 0,5s
Retour en position de départ en 1s
6
–
–
–
–
Lois de commande
• Générer des lois de commande en vitesse réalisant
un déplacement entre une position « origine » et
une position finale « posFinale » en une durée « T »
de la forme :
– Trapèze en vitesse avec temps d’accélération =
temps de déplacement à vitesse constante =
temps de freinage
– Loi polynômiale avec départ et arrivée à
accélération et vitesse nulles
7
• Données : vecteur temps, durée du mouvement,
origine, posFinale
• Grandeurs à calculer : sSet : position instantanée,
vFeed : vitesse instantanée, aFeed : acc. instantanée
Scilab / Matlab
• Génération d’un vecteur de points régulièrement
espacés :
t = linspace(0, T, nbPoints)
t = [0:pas:T]
• Remplissage d’un vecteur terme à terme
8
sSet = zeros(t)
for i=1:max(size(t))
if t(i) < t1 then
sSet(i) = v * t(i)
else
sSet(i) = - v * (t(i) – t1) + s1
end
end
Scilab / Matlab
• Remplissage d’un vecteur à partir d’une fonction
sSet2 = cos(t) //sSet2 de même taille que t
sSet3 = t.^2 // .^, .*, ./ : opérateurs
terme à terme
• Tracé de courbes
plot2d(t, [sSet; sSet2]’)
plot(t, [sSet; sSet2]’) //id. Matlab
• Gestion figures (Scilab)
9
scf(5) //sélection / création fenêtre n°5
clf() //effacement fenêtre active
10
Cycle dimensionnant
11
Comparaison des lois
Etude dynamique
• Données :
– Relation vitesse de rotation moteur / vitesse
d’avance du chariot :
avec
, « pas réduit »
– Pas de la vis : 10mm
– Inertie du système d’entraînement : JS = 316.E6kg.m2
– Inertie de la charge utile ramenée sur l’arbre
, m masse de la charge
moteur :
2
– fv : coef. de frottement visqueux, MR : couple de
frottement sec; fv = 10.0N/(m/s), MR = 0.8Nm
• Equation de mouvement
12
?
Etude dynamique
Pour les deux lois de mouvement, déterminez :
La vitesse moteur max
La variation de couple
Le couple maximum
Le couple efficace calculé sur la durée du cycle
dimensionnant.
13
–
–
–
–
Téléchargement