Beruflich Dokumente
Kultur Dokumente
1. Architecture
1.1. Système de commande
Eléments Image Description constructeur
MKR1000 is one of the Arduino
boards, based on the Atmel
ATSAMW25 SoC, it has prominent
Le Rover est commandé par une
features such as Wi‐Fi connectivity
carte Arduino modèle MKR1000
and a Li‐Po charging circuit. It is an
effective board for projects
concerning the Internet of Things
The IMU (Inertial Measurement Unit)
shield is specially tailored for the MKR
Une carte d’acquisition pour une
family of boards, though it has a
centrale inertielle permettant de
connector to use it with other boards
mesurer des accélérations (et donc
over I2C. The integrated 3‐axis gyro
vitesses et positions)
and accelerometer sensor provides
Non utilisée dans ce projet
orientation and velocity inputs to the
MKR board.
1.2. Actionneurs
Eléments Image Description constructeur
Deux moteurs à courant continu The DC Motor with Encoder can spin in
associé à un réducteur ainsi qu’un both directions with a control over the
codeur incrémental pour actionner angle of rotation and rotation step
les deux roues arrières counts.
1.3. Capteurs
Eléments Image Description constructeur
Les deux codeurs associés aux The DC Motor with Encoder can spin in
moteurs des roues pour permettre both directions with a control over the
d’asservir ceux‐ci en position ou en angle of rotation and rotation step
vitesse counts.
2. Moyens de programmation
Nous allons commander le rover à l’aide du logiciel Matlab et des bibliothèques de fonction pour Arduino.
Dans un premier temps nous travaillerons en rentrant du code avec des fichiers au format « .mlx »
Dans un second temps nous travaillerons sous Simulink afin de faire de la programmation graphique
avec des fichiers « .slx »
Attention à lancer le logiciel Matlab en mode Administrateur (appeler le prof si besoin)
Choisir comme « Current folder » le dossier (dézipper) contenant tous les modèles
Ouvrir le modèle « a_avancer_rover.mlx »
Activité 1. Expérimenter :
a. Connecter le rover en USB à l’ordinateur
b. Mettre l’interrupteur de la carte de puissance à ON
c. Renseigner le bon port com
d. Placer le rover sur un support pour éviter que les roues ne soient en contact avec le sol
e. Choisir un rapport cyclique pour chacun moteurs
f. Exécuter le code
Activité 2. Renouveler l’expérience en posant le moteur sur la table et en cherchant à aller en ligne
droite. Que remarquez‐vous ?
a. Connecter le rover en USB à l’ordinateur
b. Mettre l’interrupteur de la carte de puissance à ON
c. Renseigner le bon port com
d. Renseigner deux (ou plus) positions pour faire évoluer la fourche
e. Exécuter le code
Activité 4. Expliquer brièvement la différence de commande entre vos deux expérimentations ainsi
que la différence de comportement des moteurs
Soient 𝑉 , _ /
⃗ et 𝑉 , _ /
⃗ vitesses des points situés sur l’axe de rotation des
roues dans le mouvement de la roue par rapport au sol
Soient Ω _ /
⃗ et Ω _ /
⃗ vitesses de rotations des roues par rapport au rover
Soient 𝑉 , /
⃗ vitesse du point situé sur l’axe de rotation des roues dans le mouvement du rover
par rapport au sol
Soient Ω /
⃗ vitesse de rotation du rover par rapport au sol
Hypothèse :
On supposera un mouvement de roulement sans glissement entre les roues et le sol
𝑉 , /
⃗
𝑦⃗
𝑉 , _ /
⃗
Ω /
⃗
𝐼 /
𝑂 𝑧⃗ 𝑥⃗
𝑂
𝑂 𝑉 ⃗
𝛺 _ /
⃗ 𝐼 , _ /
𝐼
𝛺 _ /
⃗
Activité 5. Ecrire une relation entre le rayon de virage, 𝛀𝑹𝒐𝒗𝒆𝒓/𝒔𝒐𝒍⃗ et 𝑽𝑶𝑹 ,𝑹𝒐𝒗𝒆𝒓/𝒔𝒐𝒍⃗
Activité 6. Montrer que l’on peut écrire les deux relations :
𝑉 , _ / 𝑉 , _ / 𝛺 _ / 𝛺 _ /
Ω / 𝑟.
𝐿 𝐿
𝛺 _ / 𝛺 _ /
𝑉 , / 𝑟.
2
Activité 7. En déduire l’expression des vitesses de rotation des moteurs en fonction des paramètres
géométriques et de la cinématique du rover par rapport au sol
Activité 8. Montrer que l’on peut écrire ces relations sous la forme matricielle :
𝛺 _ / 1 𝑉 , /
. .
𝛺 _ / 1 Ω /
Activité 9. Montrer que l’on peut écrire les relations géométriques suivantes :
𝜃 𝜃 𝜃 𝜃
𝐷 / 𝑟. 𝐷 𝜃 / 𝑟. 𝜃
2 𝐿
Activité 10. Proposer une loi linéaire permettant de relier la vitesse de la roue au rapport cyclique.
a. Connecter le rover en USB à l’ordinateur
b. Vous pouvez modifier l’allure des courbes de commande de chaque rapport cyclique (droit
et gauche) en cliquant sur les blocs rouges
c. Deux procédures possibles :
Tester le programme Vérifier le comportement réel
i. Mettre l’interrupteur de la carte de puissance à i. Mettre l’interrupteur de la carte de puissance à
ON OFF
iii. Dans l’onglet « Hardware », cliquer sur « build, iii. Une fois le programme chargé, débrancher le
deploy,start » câble USB et poser le Rover par terre
v. Observer le comportement du rover
Activité 12. Essayer de commander le rover pour aller en ligne droite. Qu’en pensez‐vous ?
Activité 13. Essayer de répondre aux différents « défis » discuter avec le prof
a. Avancer en ligne droite sur 1m
b. Suivre un virage de rayon 1m sur ¼ de cercle
c. Avancer en ligne droite, faire ½ tour autour d’un tabouret et revenir au point de départ
Activité 14. Compléter le modèle en rentrant les bonnes données pour le système matricielle calculé
précédemment dans le bloc « conversion en vitesse moteur »
Activité 15. Proposer des lois de commandes pour répondre aux mêmes défis que précédemment.
Pour chaque défi, observer la simulation, une fois satisfaits, ouvrir le modèle suivant et
programmer le rover.
a. Avancer en ligne droite sur 1m
b. Suivre un virage de rayon 1m sur ¼ de cercle
c. Avancer en ligne droite, faire ½ tour autour d’un tabouret et revenir au point de départ
Ouvrir le modèle « e_Commande_Rover_BO.slx »
Activité 16. Compléter le modèle en rentrant les bonnes données pour le système matricielle calculé
précédemment dans le bloc « conversion en vitesse moteur »
Activité 17. Utiliser les lois définies par simulation et expérimenter en suivant les procédures de
l’activité 10. Conclure
8. Commande séquentielle
Ouvrir le modèle « g_Simul_stateflow.slx »
9. Capteur à ultrasons