AUTO-SPOTTER
El Morabit Mohamed Said
SCEI : 1
2
Non sécurisé Peu sécurisé sécurisé
3
-Comment peut-on détecter la fatigue, le déséquilibre et la chute
de la barre ?
-Et comment le système permettra une assistance instantanée ?
4
Cahier des Charges
Figure 1 : Diagramme de cas d’utilisation du système 6
Figure 2 : Diagramme des exigences du système 7
Figure 3 : Principe de fonctionnement 8
Figure 4: Diagramme ibd 9
Asservissement Détecter le
Prévoir la chute Réaliser un
de vitesse des déséquilibre de
de la barre prototype
deux bras la barre
10
Objectif 1:
Asservissement de vitesse des deux bras
Barre de
musculation
cte
Figure 5.2 : Modèle réel
Les deux bras
Figure 5.1 : Modèle SolidWorks
MPU-6050
Figure 6 : Schéma d’asservissement
13
Alimentation 3V - 5V
courant nominal pour le gyroscope 3,6mA
Courant nominal pour l’accéléromètre 500µA
CAN 16bits
Sortie numérique 0-32750
La gamme programmable de ±2g, ±4g, ±8g et 16g
l’accéléromètre
La gamme programmable du gyroscope ±250, ±500, ±1000 et
±2000°/sec
14
Référence inertielle
Base du Gyro
Gamme programmable: ±2g | ±250°/sec
Sortie attendu :
Accéléromètre X:0 Y:0 Z : 16375
Gyroscope X:0 Y:0 Z:0 Figure 7 : Montage expérimental
15
Conclusion :
On place les offsets dans le code principal
Offsets
Sortie proche à ce qui est attendu
Figure 8 : Résultat de l’expérience
16
FIFO Buffer Librairie DMP6
Quaternion Gyro Accel
w x y z x y z x y z
&q &aa
v = at +v0
17
Figure 9.2 : Codeur Incrémental (LM393)
6V
Figure 9.1 : Montage expérimental Figure 9.3 : Montage réel
18
Après lissage
Figure 10 : Le tracé réel de la vitesse de rotation en fonction du temps
Notre Moteur + la charge est assimilable à un système de premier ordre
Ω(𝑝) 𝐻0
𝐻 𝑝 = =
𝑈(𝑝) 1+τ 𝑝
19
Vérification par la visualisation de la sortie analogue du codeur incrémental
2π𝑓
Ω= rad/s
𝑛
Ω ~ 18,26 rad/s
𝑛: 𝑙𝑒 𝑛𝑜𝑚𝑏𝑟𝑒 𝑑𝑒 𝑓𝑒𝑛𝑡𝑒𝑠 𝑑𝑒 𝑑𝑖𝑠𝑞𝑢𝑒
f : 𝑙𝑎 fréquence 𝑑𝑢 𝑠𝑖𝑔𝑛𝑎𝑙
~ 17,5 rad/s
Figure 11.1 : Visualisation de A0 par l’oscilloscope
Conclusion :
La vitesse donnée par le codeur est réelle
Figure 11.2 : Courbe de vitesse donnée par le capteur
20
H0 = 2,9 rad.s-1.V-1
Figure 12.1 : Vitesse de rotation en régime permanent Ω(U)
τ = 0,21s
Figure 12.2 : Temps caractéristique τ(U) 21
Validation de la fonction de transfert par simulation d’un modèle mathématique
Vitesse de rotation en rad/s
6V
Figure 13.1 : Modèle Xcos
Conclusion :
La fonction de transfert est Validée. temps
D’où : 𝐻0 2,9 Figure 13.2 : Visualisation de la courbe réel et le modèle trouvé
𝐻 𝑝 = = 22
1+τ 𝑝 1+0,21𝑝
Hacheur (L298N)
Arduino Mega 2560
Multimètre
Figure 14 : Montage expérimental
23
consigne numérique donnée au tension en V à la sortie du
hacheur en inc hacheur
50 2,4
100
150
4,2
6,94
Conclusion :
200 8,91
250 11,96
Le gain du hacheur est :
Kh = 0,0477
24
Figure 15 : Linéarisation de la tension V(PWM)
Echelon de 1m/s Rampe de 1m/s
Figure 16 : Réponse avant la correction 25
Figure 17.1 : Réponse indicielle de 1 m/s Figure 17.2 : Réponse d’une rampe de 1 m/s
Erreur statique εr ≠ 0 Erreur de trainage εt → ∞
Conclusion : D’où la nécessité d’une correction
26
Ki
𝐶(𝑝) = Kp + 𝑝
Figure 18 : Schéma d’asservissement
➢Choix de Ki :
10
Ki = → Ki = 47.619
τ
27
➢ Choix de Kp :
Figure 19.2 : Zoom
On choisi Kp = 10
Figure 19.1 : La vitesse asservie V(t) pour différentes valeurs de Kp 28
Echelon de 1m/s Rampe de 1m/s
Figure 20 : Réponse après la correction 29
Figure 21 : Réponse après la correction + perturbation 30
εr
Figure 22.2 : Réponse après correction
Erreur statique nul
Figure 22.1 : Extrait du cahier des charges εr = 0
31
Figure 22.3 : Erreur temporel Figure 22.4 : Erreur de vitesse
retard de trainage Erreur de trainage
∆T = 152 ms εt = 5,07 %
32
Figure 22.5 : Montage en boucle ouverte
Marge de gain
𝑀𝑔 → ∞
Marge de phase
𝑀𝜑 = 90º
33
Figure 22.6 : Diagramme de Bode
Objectif 2:
Détecter le déséquilibre de la barre
α < 10°
35
Figure 23 : Extrait du cahier des charges
Angles d’Euler
MPU-6050
Processeur de mouvement numérique (DMP)
En programme:
Tampon Buffer
Quaternion Gyro Accel
dmpGetEuler( ) Angles d’Euler
w x y z x y z x y z
à partir du quaternion
q(q0,q1,q2,q3)
36
Figure 24.1 : Montage expérimental (réel) Figure 24.2 : Montage expérimental (simulé)
37
Figure 25 : Vérification des données 38
39
Figure 26 : Simulation réelle
|∆F| < |∆F|max
40
➢ Détermination de |∆F|max
Figure 27.1 : Montage expérimental (simulé) Figure 27.2 : Montage expérimental (réel)
41
➢ Détermination de |∆F|max
Figure 28.2 : Capteur de poids
Figure 28.3 : Triceps
Figure 28.4 : Participants
Figure 28.1 : Concentrer le poids de la barre sur une main 42
➢ Détermination de |∆F|max
Sportif F1 (N) F2 (N) F1-F2 (N)
1 48,08 38,16 9,92
2 49,78 39,58 10,2 9,818
3 44,69 35,35 9,34
4 45,61 36,04 9,57
5 48,94 38,88 10,06
Figure 29 : Résultat de l’expérience
|∆F|max = 9,818 N
43
Objectif 3:
Prévoir la chute de la barre
F F1 ≈ F2
F1 F2
F= F1 + F2
P
P : Poids de la barre
F : Force résultante
appliquée par le sportif
𝑎 : Pourcentage d’effort
appliqué pour vaincre la
F barre
𝑎= × 100 < 𝑎max
p 45
𝑎max
masse soulevée
Sportif (Kg) F (N) P (N) 𝒂 (%)
1 5 50,48 49 111,02
115,954
2 6 68,29 58,8 116,14
3 6 66,32 58,8 112,8
4 8 95,22 78,4 121,45
5 6 69,59 58,8 118,36
Figure 30 : Résultat de l’expérience
𝑎max = 115,954 N
46
Figure 31.2 : Affichage pour 𝑎 > 𝑎max
Figure 31.1 : Montage expérimental (simulé) 47
Figure 31.3 : Demander au sportif la masse soulevée
Objectif 4:
Réaliser un prototype
Figure 32.1 : Solution pneumatique Figure 32.2 : Solution proposée
49
Figure 32.3 : Modèle utilisé 50
Figure 33.2 : Zoom
Figure 33.1 : Prototype 51
Conclusion
52