projet-arduino-rapport

Transcription

projet-arduino-rapport
Année : 2016
Peip2
Lisa Lastra
Martial Mailloux
1
1
Table des matières
2 Introduction ................................................................................................................................3
3 Présentation du projet .............................................................................................................3
3.1
3.2
3.3
3.4
Description du projet ...................................................................................................................... 3
Répartition du travail ..................................................................................................................... 3
Description du code......................................................................................................................... 4
Montages ............................................................................................................................................. 4
4 Difficultés rencontrées ............................................................................................................7
5 Améliorations et conception finale .....................................................................................7
5.1
5.2
Améliorations .................................................................................................................................... 7
Conception finale .............................................................................................................................. 7
6 Conclusion ....................................................................................................................................8
7 Annexes
2
Année : 2016
Peip2
Lisa Lastra
Martial Mailloux
2 Introduction
Dans le cadre de notre 2ème année de formation PEIP nous avons du imaginer, élaborer
et réaliser un projet en Arduino. Ayant récupéré le squelette d’un planeur nous nous
sommes lancé le défi de le faire voler. Et c’est ainsi que nous avons décidé de réaliser un
système nous permettant de contrôler un planeur à distance. Dans ce rapport nous
allons tout d’abord présenter notre projet à travers 4 grands axes. Puis nous détaillerons
les difficultés que nous avons rencontrées. Et nous parlerons enfin des améliorations
possibles et de la conception finale de notre projet.
3 Présentation du projet
3.1 Description du projet
Nous avons décidé de réaliser un planeur autonome à l’aide de deux puis trois cartes
arduinos (voir figure 1). Une carte présente à l’extérieur du planeur relié à un joystick,
un émetteur et un boitier de piles. Le tout constituant « la manette » permettant de
diriger le planeur (voir figure 2). Et deux autres cartes présentes à « l’intérieur » du
planeur permettant de recevoir les informations transmises par la « manette ». Ainsi
que de contrôler le mouvement des ailes et l’allumage du moteur de l’hélice en fonction
des données transmises (voir figure 3 et 4).
3.2 Répartition du travail
Nous avons tout d’abord, lors de la première semaine de travail essayé de faire marcher
le moteur de l’hélice (Lisa) et la manette de ps2 (Martial). Les résultats n’on pas été très
concluant (voir difficultés rencontrées).
Après avoir résolu les deux problèmes de la première semaine nous nous sommes
attaqués au premier branchement lors de la deuxième. Pendant que l’un s’occupait de
brancher le joystick, de récupérer les informations transmises par celui-ci et de les
envoyer via l’émetteur (lisa), l’autre s’occupait de brancher le moteur de l’hélice et les
« servos » et d’écrire le code relatif au mouvement que nous souhaitions qu’ils aient
(martial).
Pour ce qui est de la troisième semaine de travail nous avons réalisé les branchements
et l’écriture du code relatif à la réception des informations transmises par l’émetteur via
le récepteur (lisa). Ainsi que la mise en place de ce programme sur celui du contrôle des
« servos » et du moteur (martial). La aussi le résultat n’a pas été très concluant (voir
difficultés rencontrées).
Nous avons ensuite travaillé chez nous et ensemble pour pouvoir régler ce problème et
finir dans les temps.
3
3.3 Description du code
Notre code est composé de trois programmes. Le premier programme nommé
« Testemission2 » est téléversé sur la carte faisant partie de la « manette ». Ce
programme permet de récupérer et d’envoyer les données transmises par le joystick à la
deuxième carte. Une fois les données reçues par la deuxième carte, le programme
« Réception » permet de les traiter et de les envoyer vers la troisième carte via un
branchement en série. Le dernier programme « Reception_Planeur_V13 » qui est
téléversé sur la troisième carte permet à celle-ci de les réceptionner et de traiter les
informations envoyées afin de pouvoir contrôler les ailes et l’allumage du moteur de
l’hélice.
Nous utilisons trois librairies différentes dans nos programmes :
-La librairie VirtualWire qui permet d’établir la connexion entre l’émetteur et le
récepteur à 433MHz des deux premières cartes.
-La librairie SoftwareSerial qui permet de réaliser l’émission/réception entre la
deuxième et la troisième carte.
-La librairie Servo qui permet de contrôler les « servos » des ailes.
3.4 Montages
1
9
2
3
4
5
5
6
4
Figure 1 Montage général initial
7
8
Année : 2016
Peip2
Lisa Lastra
Martial Mailloux
Légende de la figure 1 :
-1 : Moteur de l’hélice
-2 : Carte arduino Uno
-3 : Récepteur
-4 : Batterie
-5 : Servos avant et arrière
-6 : Joystick
-7 : Carte arduino nano
-8 : Piles
-9 : Carte arduino Uno que nous avons du rajouter
Montages spécifiques :
-La manette de commande :
La carte arduino (3) est alimenté par les piles (1), elle est reliée au joystick (2) et à
l’émetteur (4).
2
1
3
1
4
1
Figure 2 Montage de la "manette"
5
Le planeur :
Le montage récepteur (1) est relié à la batterie (2) et au moteur (3). La batterie alimente
le tout et donc permet entre autre de faire tourner le moteur qui entraine l’hélice (4).
2
1
1
1
3
4
Figure 3 Montage du planeur
Détail de la réception :
La carte arduino (2) est relié au récepteur (3). Les servos présents sur les ailes et la
queue du planeur (4) (5) sont reliés à la troisième arduino (1). La carte (1) et la carte
(2) sont reliées grâce à une liaison série.
4
1
5
1
1
1
Figure 4 Montage récepteur
6
2
3
Année : 2016
Peip2
Lisa Lastra
Martial Mailloux
4 Difficultés rencontrées
Au cours de ce projet nous avons rencontrés de nombreuses difficultés que nous avons
toutes surmontées.
La première difficulté rencontrée est survenue lorsque nous avons essayé de faire
marcher le moteur de l’hélice. Ne connaissant pas le modèle du moteur ni le module qui
lui était associé nous avons eu quelques problèmes à le contrôler afin de le mettre en
marche. Nous avons finalement réussi à le maitriser grâce à la librairie des servos.
Le deuxième problème auquel nous avons été confronté est venu de la manette de ps2
que nous avions prévu d’utiliser pour contrôler le planeur. Ne pouvant pas télécharger
la librairie propre à celle-ci nous avons finalement décidé de nous rabattre sur un
joystick (plus simple mais moins efficace).
Le dernier problème que nous avons rencontré est celui qui nous a pris le plus de temps
à résoudre. La librairie « VirtualWire » utilisée pour réaliser l’émission/réception et la
librairie « Servo » utilisée pour contrôler les « servos » du planeur n’étant pas
compatibles nous avons du rajouter une troisième carte arduino. Le problème est
survenu lorsqu’il a fallu connecter la deuxième carte avec la troisième. Nous les avons
reliées en série mais les informations reçues sur le port série de la troisième carte
n’étaient pas les mêmes que celle sur le port série de la deuxième. Nous avons
finalement réussi à résoudre ce problème après de nombreuse tentatives et en
remplaçant les deux dernières cartes arduino nano par des cartes arduino uno.
5 Améliorations et conception finale
5.1 Améliorations
Le joystick étant très peu précis nous aurions bien aimé pouvoir utiliser la manette de
ps2 pour avoir une plus grande précision et un meilleur maniement des ailes.
Nous aurions aussi souhaité améliorer la qualité de la transmission entre la « manette »
et le planeur afin de supprimer les mouvements parasites des ailes qui surviennent de
temps à autre.
Nous aurions aussi pu rajouter un accéléromètre permettant de crée un mode « pilote
automatique ».
5.2 Conception finale
Nous voudrions que tout le système de réception qui est actuellement en dehors du
planeur soit à l’intérieur de celui-ci. Pour ce faire il nous faudrait utiliser une seule carte
mini à la place des deux cartes arduino uno. Il faudrait alors recoder les librairies
« VirtualWire » et « Servo » pour qu’elles soient compatibles entre elles.
7
Nous voudrions aussi créer une télécommande ou tout est intégré : les piles, l’émetteur,
les joystciks et la carte arduino. Pour nous permettre d’avoir une meilleure maniabilité
de notre planeur.
Figure 5 La version idéale :)
6 Conclusion
Nous avons réussi malgré de nombreuses difficultés à faire fonctionner notre planeur.
Plus précisément nous avons réussi à contrôler le mouvement des ailes et l’allumage du
moteur de l’hélice grâce à notre « manette ». Bien sur celui-ci ne vole pas mais nous
espérons dans un futur proche réussir à accomplir cette tache. Nous avons pris
beaucoup de plaisir à travailler sur ce projet et nous sommes très fier d’avoir pu faire
quelque chose d’aboutit. Cela nous incite également à aller plus loin dans ce type de
recherche.
Nous tenons également à remercier Mr Masson et notre ami Alexandre Hiltcher qui ont
contribué à la résolution du problème de communication entre les deux dernières
arduinos.
8