Projet ENIB2017 mini bot façon bricole

De Les Fabriques du Ponant
Révision datée du 18 janvier 2017 à 16:26 par Lyzzi (discussion | contributions) (Observations)
Aller à : navigation, rechercher

Cette page est une fiche écrite dans le cadre de l'Inter Semestre ENIB 2017

Le contenu de cette fiche est en cours de rédaction, elle va s'étoffer pendant tout le mois de janvier !

Mini Bot

Un petit robot qui se déplace grâce à une connexion WIFI.

Essayez donc d'y accrocher un crayon !

En détails

Le but de ce projet est de réaliser un petit robot qui comporte deux roues, sur lequel est fixé un crayon/feutre/..., et qui va pouvoir réaliser des dessins en étant contrôlé à distance par un ordinateur ou un smartphone/tablette.

Ce projet existe en différentes versions [imprimé en 3D], Ptit Bot Laser[1], et le nôtre, fait sans matériel particulier, c'est à dire avec des matériaux basiques(même pour le support à pile !), des bouchons de bouteille pour les roues etc.

Auteurs

Ont participé à la rédaction de cette fiche :

Outils et matériaux


Matériaux :

Arduino x1
Arduino.jpg
Servomoteur x2
Servomoteur.jpg
Interrupteur x1
Interrupteur.jpg


Outils :
Ciseaux Colle / Pistolet à colle Scotch Mini-Tournevis PC Scie sauteuse

Réaliser le projet

Au préalable, installez les logiciels suivants :
Arduino : [2], pour transférer le code sur la carte
Snap4Arduino : [3], pour donner les instructions au robot


Créer les bloc sous Snap4Arduino

Ouvrir le programme Sanp4Arduino

  • Créer 5 nouvelles variables : avance, recule, à droite, à gauche, stop.
  • Créer les blocs comme sur la photo ci dessous. Les couleurs des catégories correspondent avec les couleurs des blocs
  • Paramétrer les blocs comme sur la photo :

Dans le bloc jaune choississez les touches que vous souhaitez utiliser
Dans le premier onglet du bloc orange, insérez vos variables
Dans le deuxième onglet du bloc jaune, copiez les instructions suivantes :
avance : http://192.168.4.1/avance
recule : http://192.168.4.1/recule
tourne à droite : http://192.168.4.1/droite
tourne à gauche : http://192.168.4.1/gauche
stop : http://192.168.4.1/stop

Snap4arduino modèle création bloc.png
Vous pouvez ensuite appuyer sur le petit drapeau vert, puis sur les touches choisies pour vérifier que l'écran en haut à droite affiche les bonnes instructions.

Connecter la carte Arduino en Wifi

Ouvrez le logiciel Arduino et copiez y le code suivant :
Code Arduino
Appuyez ensuite sur la flèche en haut à gauche "téléverser".

Modifier les servomoteurs pour qu'ils tournent entièrement

voir : http://www.wikidebrouillard.org/index.php?title=Transformer_un_servomoteur_en_servomoteur_%C3%A0_rotation_continue

On utilise des servomoteurs 9g (SG90). Leur rotation est classiquement de 0 à 180° ou encore de 0 à 90°.

Servo360.jpg

Nous pouvons opérer 2 types de transformation :

En moteur simple à courant continu. En servomoteur à rotation continue Mais quelle est la différence entre ces deux modifications ?

Un moteur simple n'est pilotable qu'en changeant le sens du courant. Un servomoteur à courant continue se pilote via les instructions numériques qui lui sont envoyées.

Transformer en moteur simple

Les engrenages
Un des engrenage possède des picots qui bloquent sa rotation complète. Il faut donc couper ces picots.

On ouvre le servo et on accède aux engrenages.
300px-Servo-avec-engrenages.JPG

L'idéal est de poser les engrenages, en notant leurs positions, sur un support clair.

Numeros engrenages.jpg

Ensuite, on coupe les picots

Picots.jpg

Et voilà !


Comment c'est dedans ? On regarde l'intérieur et voici ce qu'on voit.

des engrenages (mais ça on les a enlevés). un petit moteur une carte électronique qui contrôle le servomoteur un potentiomètre rotatif. Ce potentiomètre sert au servo moteur à connaître sa position.

On extrait l'électronique délicatement et on coupe les 3 fils connectés au potentiomètre.

300px-Servo-arriere.JPG 300px-Servo-potar-intact.JPG

Le potentiomètre ne tourne pas complètement, il faut donc le rendre complètement rotatif. Comme il ne servira plus, on détruit la partie "résistance variable".

300px-Servo-potar-extraction1.JPG


On enlève la bague supérieure avec une pince ou un petit tournevis. Il faut faire attention à ne pas tout casser !

300px-Servo-potar-extraction2.JPG

Et voilà notre servomoteur complètement nettoyé.
300px-Servo-potar-propre.JPG


Là, il suffit de remonter le servomoteur en l'état, après avoir remis en place les engrenages. C'est maintenant devenu un simple moteur à courant continu.

Transformer en servomoteur à rotation continue

Pour le transformer en servomoteur à rotation continue, il faut "tromper le servomoteur". Nous allons lui faire croire qu'il est en position médiane.

Pour cela, il faut savoir que le potentiomètre du servo fasse 5kohms. Nous allons souder aux bornes du potentiomètre deux résistance de 2,2kohms.

Le servomoteur croira qu'il est en position médiane (entre 0 et 180°, donc à 90°). Lorsque nous lui demanderons d'aller à 0° il se mettra à tourner continuellement dans un sens et pour l'autre sens il faudra lui demander d'aller à 180°.

Resistances dessus.jpg

Resistances cote.jpg

Construction de la structure du robot

Socle à pile

explications + photos

Roues

explications + photos

Support du stylo

explications + photos

Décoration du robot

explication + photos
Attention dans la décoration de ne pas trop alourdir ou déséquilibrer le robot.

Difficultés de réalisation & contraintes

Bien que nous avons souhaité faciliter au maximum la réalisation de notre robot, certaines difficultés se sont présentées. La manipulation pour transformer les servomoteurs en rotation continue peut être assez contraignante pour quelqu'un de non-initié, pour cela vous pouvez commander directement les servomoteurs les plus adaptés. [lien ?]

Difficultés dues au code Arduino : Le programme donné n'étant pas fait pour Arduino (ce que nous avons mis longtemps à comprendre), nous devions le comprendre, puis le modifier pour l'adapter. Nos expériences en Arduino étant nettement moins techniques que celle ci, nous aurions eu besoin de beaucoup plus de temps afin de prendre en main ce type de code.

Difficultés dues à Snap4Arduino : Le logiciel n'a jamais détecté la carte, même en test avec des programmes simples.

Comment ça marche ?

Observations

Explications

Tout tourne autour de la carte Arduino. Grâce au programme crée, lorsque l'on appuie sur les touches du clavier choisies, la carte Arduino émet des tensions électriques sur certaines sorties. Il suffit alors de relier ces sorties aux commandes des roues, et le robot se dirige.

Plus d'explications

La carte Arduino fonctionne sur un système de 13 sorties qui émettent soit 5V, soit 0V. Les valeurs des sorties sont contrôlées par un programme informatique codé avec le logiciel Arduino. Et voila ! Rien de plus compliqué ! Avec ce système il est ensuite possible de contrôler des roues (en reliant les contrôles des servos moteurs avec les sorties de l'Arduino appropriées), de contrôler des allumages de LEDs, ... Les limites sont celles de l'imagination. Pourquoi pas, par exemple, prévoir une cuisine contrôlée par Arduino. Lorsque vous allumez la lumière la première fois de la journée, la machine à café se lance, puis un robot vous verse celui ci quand il est prêt, pendant qu'un autre passe un coup d'éponges. 4 secondes après, le grille pain s’enclenche.

Et dans la vie de tous les jours ?

Pourquoi ne pas essayer de se passer le sel à table avec le mini bot ?

Vous aimerez aussi

Petit Bot laser : [[4]]

Sources et ressources utiles

Lien pour aller plus loin avec l'arduino : (niveau avancé)
Lien :[5]
Lien vers un tuto du mini bot plus technique :
Lien :[6]