Projet IMA3 P5, 2017/2018, TD2
Sommaire
Projet IMA3-SC 2017-2018: La catapulte BeerPong
Cahier des charges
Description du système
Le jeu du Beer-Pong, très répandu chez les jeunes, consiste à envoyer une balle de ping-pong dans un gobelet situé à l'extrémité d'une table. La catapulte BeerPong consiste donc à reproduire ce principe. Grâce à un capteur, la catapulte mesure la distance entre elle même et le gobelet, l'utilisateur peut, grâce à son smartphone, faire pivoter la catapulte jusqu'à obtenir l'angle souhaité. Une fois calibrée, l'utilisateur appuie sur le bouton "lancer". En fonction de la distance mesurée, la catapulte règle sa puissance, le but étant de mettre la balle de ping-pong dans le gobelet.
Matériel nécessaire
- Une carte Arduino
- Une carte Raspberry Pi 3
- Un capteur à ultrasons
- 3 servo moteurs
- Du matériel pour la partie mécanique (Elastiques , pièces imprimées en 3D..)
Séance 1
-Choix du sujet:
Discutant en groupe, plusieurs idées nous sont venues à l'esprit, nous devions donc discuter de la faisabilité des différentes idées. Nos 2 principales idées furent la catapulte choisie, ou bien une robot sur roues qui suivrait une personne, à l'aide d'une caméra. Ce dernier projet reprenait l'idée de la valise qui suit son utilisateur. Nous avons donc décidé d'opter pour une idée amusante et inconnue.
-Élaboration du matériel nécessaire
-Détermination et répartition des tâches à effectuer
Partie Informatique
Grâce à un tutoriel proposé par nos encadrants, nous devions créer un point d'accès wifi via une Raspberry Pi, afin de pouvoir commander notre système via un téléphone intelligent. Pour cela, nous avons dû procéder à plusieurs étapes. Tout d'abord, il a fallut procéder à l'installation du Linux (Raspbian) dans la Raspberry PI 3 via la carte microSD. Ensuite, nous devions s'occuper de l'activation de la connexion ssh à la raspberry. Malgré le tutoriel donné, il nous a été difficile de se connecter. En effet, nous étions incapable de recevoir l'adresse IP de la Raspberry. Malgré plusieurs interventions de l'encadrant (Mr Redon), cette partie du tutoriel fût très laborieuse étant donné que les autres groupes avaient les mêmes soucis que nous.
Partie électronique
Une partie du groupe s'est occupé de la partie FPGA. En effet, lors de cette première séance, nous avons d'abord dû travailler sur un tutoriel fourni sur Altium, dans le but de nous familiariser avec le logiciel. Tutoriel bien expliqué et facilement réalisable. Une fois réalisé, nous devions réfléchir comment mettre en lien le FPGA avec notre projet. Nous avons donc décidé de s'intéresser à un des servo-moteur de la catapulte. La recherche du matériel et les questionnements du fonctionnement nous ont pris la fin de la séance.
Séance 2
Partie Informatique
Lors de cette séance nous avons fait en sorte que notre Raspberry devienne un HotSpot Wi-Fi du nom de : Catapulte PMA. Beaucoup de problèmes sont survenus lors de cette séance, de plus nous n'étions pas encore habitué à l'environnement Debian. Nous avons passé la séance à nous documenter de manière autodidacte afin de mieux nous en sortir. Nous avons appris beaucoup de choses sur le fonctionnement de GNU/LINUX.
En même temps, nous nous sommes attaqués à la programmation de l'arduino. On a commencé par la fonction permettant de mesurer la distance entre la catapulte et le gobelet.
Partie mécanique
La catapulte nécessitant de fabriquer certains éléments nous même, nous avons décider de modéliser les éléments sur Onshape afin de les imprimer ensuite en impression 3D.
Séance 3
Partie Informatique
Toujours du paramètrage de la Raspberry, elle peut enfin communiquer avec l'arduino via la " liaison série " (USB).
On a crée un site web sur le serveur web de la Raspberry qui affichera en temps presque réel des données de l'arduino : Distance avec la cible , catapulte armée ou pas..
Partie Mécanique
Au niveau de la catapulte en elle-même, mettre un servomoteur classique pour tendre l'élastique ne correspondait pas. En effet, le servomoteur ne tournant pas à 360 degrés, nous avons donc décidé d'utiliser un autre moteur, un moteur 360. Ce nouveau moteur permettrait d'effectuer plusieurs tours sur lui même et donc de tendre l'élastique comme il le souhaite. Nous avons donc réalisé une nouvelle pièce en impression 3D afin que l'élastique puisse s'enrouler autour.
Partie électronique
Lors de cette séance, nous sommes retourné en salle d'électronique dans le but de mettre en lien la FPGA et notre projet. Comme notre projet demande plusieurs servomoteurs, nous avons donc décidé de nous focaliser sur un seul servomoteur. Le principe était de pouvoir faire tourner un servomoteur à l'aide du logiciel Altium et de la board électronique. Après discussion avec le prof, le servomoteur que l'on nous a donné nécessitait un mode d’alimentation spécifique avec une tension précise. Après de multiples recherches,nous n'avons pas réussi à brancher correctement le moteur et n'avons pas pu le tester. Cette partie reste encore incomprise pour notre part.
Par rapport à la catapulte, un problème est observé. En effet, le code Arduino étant bien avancé, nous avons décidé d'effectuer quelques tests afin de savoir si notre projet était bien réalisable en l'état. Nous avons donc simulé un jeter de balle, en faisant tendre l'élastique et en le relâchant. L'Arduino se réinitialise par sécurité car asservir les deux servo-moteurs en continu consomme trop de courant. Nous pensons qu'utiliser un condensateur, ou des transistors ou un contrôleur servo-moteur pourraient résoudre le problème !
Après réflexion, le plus simple pour remédier à cela serait d'utiliser une alimentation externe pour les servo-moteurs.
Améliorations possibles
Avec plus de temps et de connaissances, nous aurions pu développer d'avantage notre catapulte. En effet, au début nous voulions pouvoir faire pivoter la catapulte sur elle même afin qu'elle puisse viser différents verres sans la déplacer. De plus, notre capteur reste imprécis. En effet, nous ne pouvons pas savoir si celui-ci détecte le gobelet en son milieu ou sur son coté, ce qui peut varier de plusieurs centimètres. Dû à cela, nous pensons que le lancer de la balle sera toujours approximatif et imprécis.