Robots Braitenberg

IUT logo-uhaGEII

 20160316_094440

ROBOTS BRAITENBERG

 

 

 

SOMMAIRE:

  • Introduction

  • Présentation du Sujet

  • Cahier des Charges

  • Développement

  • Gestion de Projet

  • Perspectives

  • Bilan

  • Bibliographie

 

Introduction

Les robots Braitenberg, le concept de ses robots, a été crée par Valentino Braitenberg. Les robots sont directement contrôlés par la lumière à l’aide de certains capteurs.

Ce projet a pour but de montrer les compétences des étudiants de première année en GEii.

Présentation du Sujet

Durant ce projet deux étudiants devrons créer des robots Braitenberg, le plus petit que possible. Le fonctionnement des robots sont simples ils agissent en fonction de la lumière, en effet des capteurs permettent aux robots de soit être « attiré ou ré-pulsé par la lumière ».

De plus les robots devront se déplacés sur un plateau lumineux, formé de plusieurs LED, et préalablement programmé par un Raspberry Pi.

Les étudiants en charge du projet sont :

SIVA Victor (chef de projet, partie programmation) et MATTLER Erwan (partie électronique).

Cahier des Charges

bete

pieuvre

FP1/FP2: Fonction Principale.

FC1/FC2/FC3/FC4/FC5: Fonction Contrainte.

Développement

Le plateau lumineux :

Le plateau lumineux, a été mise en place par le groupe d’étudiant qui s’occupait du même projet l’année dernière. Cette année nous avons seulement modifié le programme et tenté de le rendre plus accessible pour le choix du défilement des LEDs à allumées.

Le programme est écrit en python. Pour le choix des LEDs à allumées il suffit de changer les chiffres (X,Y) dans le programme, qui se trouve dans « un tableau ». En effet, le placement des LEDs a été fait de telle sorte, que l’on se trouve dans un repère orthonormé, avec le point (0,0) placé en-bas, à droite.

plateau

L’utilisation du Raspberry est comme un ordinateur sous linux, il est donc très facile à l’utiliser et accessible pour tout débutant.                                                                       ( on le voit sur l’image ci-dessus, la connectique entre les LEDs et le raspberry se trouve à l’arrière)

On utilise seulement les ports GPIO en sortie pour piloter les LEDs.

Pour lancer le programme depuis le Raspberry, il faut entrer les commandes suivantes:

  • cd MesProg
  • sudo python2 ProgLedArray_v1.py

(ProgLedArray_v1.py est le nom du fichier)

 

Le robot BR :

Dans cette partie du projet on a deux parties bien distincte la partie programmation et la partie électronique.

Programmation :

Pour programmer nos robots Braitenberg, nous avons utilisé des microcontrôleurs ATtinty85. Ces microcontrôleurs sont programmer à l’aide d’un arduino UNO qui nous sert de programmeur. Pour cela il faut faire la manipulation suivante :

  • Etape1 : 

Charger tout d’abord le programme ArduinoISP qui se trouve dans les exemples du logiciel, sur l’arduino UNO. Ensuite placer un condensateur de 10µF entre le Reset et Ground de l’arduino pour éviter tout « bug » lors du chargement de notre programme(voir sur l’image de l’étape 3).

 

  • Etape2 :

Placer tout d’abord l’ATtiny85 sur une plaque d’essai et connecter l’alimentation de 5V et le ground de l’arduino à celle-ci(voir sur l’image de l’étape 3).

attiny85

 

  • Etape3 :

Finir avec le câblage suivant et faire très attention : connecter le port 7 / 6 / 5 / 1(Reset) de l’ATtiny85 respectivement avec les pins 13 / 12 / 11 /10 de l’arduino UNO . Ces câblage permet de charger correctement le programme sur l’ATtiny85 à travers l’arduino UNO.

arduino_as_ISP_bb

  • Etape4 :

Dans le logiciel Arduino, dans l’onglet des « outils », choisir l’ATtiny85 si il n’apparaît pas il faut télécharger un fichier (lien dans la bibliographie). Cliquer ensuite sur « graver la séquence d’initialisation » qui se trouve aussi dans l’onglet « outils », cela permet d’effacer tout ce qu’il y a sur le microcontrôleur et il est aussi conseillé de le faire quand l’ATtiny85 est neuf.

  • Etape5 :

Le microcontrôleur doit désormais être prêt a recevoir le programme. On peut faire un test avec le programme de la LED qui clignote qui se trouve dans les exemples du logiciel. Il suffit de le charger, on peut s’assurer que le programme fonctionne bien seulement grâce au microcontrôleur pour cela on peur retirer tout les câbles sauf les câbles d’alimentation.

20160316_092625

(vous pouvez retrouver tous ces étapes expliquer dans une vidéo en lien dans la bibliographie).

Désormais il ne reste plus qu’a charger le programme sur l’ATtiny85.

 

Electronique :

Pour la fabrication des robots, on utilise KiCad pour le circuit imprimé. Nous avons pris modèle pour le circuit imprimé sur ce lien, et nous y avons fait des modification. Cette partie se compose en deux étapes la partie schéma électrique et l’assemblage des différents composants.

  • Etape1 :

Le schéma électriqueschema elec

Le PCB(emplacement des composants), a été fait de telle sorte que la dimension de la plaquette est de 3cm * 5cm.

pcb

 

  • Etape2 :

La liste des composants est la suivante :

-ATtiny85V.10PU;

-Régulateur de tension de 3,3 V;

-2* Capteurs photorésistants;robot1

-2* Résistance de 10kΩ,

-2* Résistance de 470Ω;

-2* Transistor bipolaire, NPN, TO-92 à 3 broches;

-2* Diode 1n4148;

-Condensateur 100nF et 10µF;

-Batterie de 3,7 V;

-2* Module vibreur pour iPhone 3G.

Tous les composants ont été achetés sur RS Composants. Seul les modules vibreur ont été plus dur à trouver.

 

Voici le résultat, notre robot se trouve sur la droite. Sur la gauche il s’agit du robot des étudiants de l’année dernière. L’un de nos objectifs était de faire un robot plus petit que celui de l’année dernière. L’objectif à été accompli.

20160323_092212 20160323_092226

 

Le dernier point sur le robots c’est la partie roue/moteur. Nous avons mis du temps à trouver un bon moyen. Nous avons choisi d’utiliser la tête de vis en plastique où l’on a percé un trou, pour que le rotor s’y fixe et la face tourner.

20160323_103528

Gestion de Projet

GANTT :

 

gantt

PERT :

 

pert

Sur la partie de programmation du « playground »(plateau lumineux), nous avons gagner 4 jours ce qui a permis de commencer plutôt la partie programmation du robot. Sur la partie KiCad nous avons gagner 3 jours ce qui a permis d’avancer sur la partie réalisation du robot et sur les tests.

 

Perspectives

Le semaines de projet étant fini nous avançons sur celui-ci sur nos temps libre. Nous avons un problème avec le fonctionnement des capteurs étant donné que nos test de sont pas totalement concluants.

Il nous reste une semaine de projet à la fin de l’année, durant laquelle on espère résoudre notre problème et faire 2 robots en plus.

Bilan

Ce projet nous a permis de voir nos capacités dans différent domaine de la programmation et de l’électronique, mais aussi de les améliorées grâce aux recherches que l’on a fait mais aussi grâce aux conseils de nos enseignants tuteurs durant ce projet.

Bibliographie