Difference between revisions of "Robot Arduiblog"

From Communauté de la Fabrique des Mobilites
Line 196: Line 196:
  
 
'''''pinMode(SENSDROIT, OUTPUT);'''''
 
'''''pinMode(SENSDROIT, OUTPUT);'''''
 +
 +
'''''digitalWrite(SENSGAUCHE, 1);'''''
 +
 +
'''''digitalWrite(SENSDROIT, 1);'''''
  
 
'''''// Arret des moteurs'''''
 
'''''// Arret des moteurs'''''
Line 241: Line 245:
 
'''''moteurDroit.set(0);'''''
 
'''''moteurDroit.set(0);'''''
  
'''''digitalWrite(SENSGAUCHE, 1);'''''
+
'''''digitalWrite(SENSGAUCHE, 0);'''''
  
'''''digitalWrite(SENSDROIT, 1);'''''
+
'''''digitalWrite(SENSDROIT, 0);'''''
  
 
'''''delay(500);'''''
 
'''''delay(500);'''''
  
'''''digitalWrite(SENSGAUCHE, 0);'''''
+
'''''digitalWrite(SENSGAUCHE, 1);'''''
  
'''''digitalWrite(SENSDROIT, 0);'''''
+
'''''digitalWrite(SENSDROIT, 1);'''''
  
 
'''''}'''''
 
'''''}'''''

Revision as of 12:22, 25 July 2021

Nuvola English language flag.svg Nuvola Italy flag.svg


Fabrication d'un robot pédagogique contrôlé par Arduino en recyclant des moteurs de trottinettes électriques

💼 porté par

Trottinette800x600.jpg


  • Récupération des moteurs (et éventuellement d'une batterie) sur les trottinettes usagées
  • Tests des éléments
  • Construction du châssis
  • Branchements
  • Programmation du robot (avec un Arduino)
  • Décoration


Organisations utilisatrice ou intéressée par utiliser la ressource :

Contributeurs : Arduiblog

Tags : Trottinettes électriques, Arduino, recyclage, éducation, Maker, DIY, bricolage, technologie, programmation, codage, éléctronique, microcontrôleur

Catégories : Connaissance, Matériel

Thème : Données ouvertes, Open HardWare, Ecoles et Etudiants

Référent : Arduiblog

Défi auquel répond la ressource : Challenge sur la 2nde vie des électrottinettes

Personnes clés à solliciter :

Autre commun proche : Challenge sur la seconde vie des trottinettes électriques

Richesse recherchée : Expérimentation

Compétences recherchée :

Communauté d'intérêt : Communauté du challenge de seconde vie des trottinettes électriques

Type de licence ? Creative Commons

Conditions Générales d'Utilisation (CGU) :

Niveau de développement :

Lien vers l'outil de gestion des actions :

Lien vers l'outil de partage de fichiers :

Besoins :

Prochaines étapes :

Documentation des expérimentations :



Autres informations :

Liste des Acteurs qui utilisent ou souhaitent utiliser ce Commun Robot Arduiblog : aucun pour le moment

Liste des CR d'atelier en lien avec ce Commun Robot Arduiblog:

Présentation[edit | edit source]

Qui suis-je ?[edit | edit source]

  • Jean-Christophe QUETIN
  • Auteur de livres sur l’Arduino et le micro:bit (aux Éditions ENI)
  • Créateur du site arduiblog.com
  • Maker, passionné d’informatique et de technologies

Mon projet[edit | edit source]

Fabriquer un robot pédagogique géant contrôlé par Arduino à partir de trottinettes électrique usagées.

Trottinette01.jpg

Les 2 roues motrices et la roue libre sont fixées sur un châssis et le microcontrôleur (Arduino) se charge de piloter le robot.

Il est possible d’ajouter différents modules de contrôle (détecteur d’obstacle, module de suivi de ligne, caméra intelligente, récepteur de télécommande, etc…). Et ensuite, de décorer le robot selon ses goûts.

Les variantes sont extrêmement nombreuses, vous pouvez par exemple fabriquer : une valise électrique, un véhicule autonome, un kart, un fauteuil électrique, un accessoire de cinéma SF (ou n’importe quelle autre idée issue de votre imagination).

Matériel nécessaire[edit | edit source]

Pour ce projet vous avez besoin de :

  • 2 moteurs de trottinettes,
  • 1 batterie
  • 1 Arduino
  • 2 contrôleurs moteur
  • 2 potentiomètres numériques
  • 1 module relais
  • De bois, de métal et de vis (pour le châssis)
  • De quelques outils de base (pinces, tournevis, clés plates, clés Allen...)
  • Éventuellement une imprimante 3D

Moteur de trottinette[edit | edit source]

Le moteur est intégré à la roue (avant ou arrière, selon le modèle). Pour le trouver, il suffit d'identifier la roue qui possède un fil électrique. Dans cet exemple, il s'agit de la roue avant. Le démontage est plutôt facile puisqu'il faut simplement dévisser l'écrou situé de chaque coté. Par contre, je n'ai pas réussi à démonter la fourche, pour récupérer le connecteur femelle. Heureusement, la prise s'est débranché assez facilement (en tirant sur le câble). S'il reste coincé, vous pouvez aussi couper le fil (le plus loin possible), puisqu'il faudra de toute façon, refaire le branchement avec le nouveau contrôleur.

Trottinette02.jpg

Batterie[edit | edit source]

La batterie est généralement située sous la trottinette afin de baisser le centre de gravité. Sur ce modèle, elle était simplement fixée par quelques vis (dont la tête était cachée sous le tapis anti dérapant).

Trottinette05.jpg

Arduino[edit | edit source]

C'est le cerveau du robot, il est facile à programmer, possède une grande communauté et peut accueillir de nombreux capteurs ou modules. Avec lui, il sera donc possible de personnaliser le robot à l'infini. Mais d'autres cartes de développement feront également l'affaire (micro:bit, ESP32, Raspberry Pi, Pyboard, PYBStick26...).

Trottinette07.jpg

Si vous avez besoin de plus d'informations, sachez que j'ai écris un livre sur le sujet, n'hésitez donc pas à visiter le site des Éditions ENI.

Trottinette08.jpg

Contrôleur moteur[edit | edit source]

C'est un boîtier électronique spécialisé dans le contrôle des moteurs de trottinettes (de 36 à 48 V et jusqu'à 18 A). Il interprète les instructions envoyées par le microcontrôleur (5V) et modifie en conséquence la vitesse et/ou le sens de rotation du moteur. Cet élément est indispensable puisqu'il est impossible de connecter directement l'Arduino au moteur et à la batterie.

Trottinette06.jpg

Potentiomètre numérique[edit | edit source]

Il permet de simuler la poignée d'accélérateur de la trottinette, qui est constituée d'un simple potentiomètre actionné à la main par l'utilisateur. L’Arduino pourra, grâce à ce module, agir sur le contrôleur et donc modifier la vitesse des moteurs.

Trottinette14.jpg

Module relais[edit | edit source]

J'ai utilisé un module relais pour simuler le bouton poussoir qui inverse le sens de rotation du moteur (en reliant brièvement les 2 fils blancs). J'ai également prévu de contrôler l'alimentation des moteurs en reliant (ou non) le petit fil rouge à la borne + de l'alimentation. Il existe peut être un module plus adapté ou une solutions plus performante à base de transistor ou de MOSFET. Mais en l'absence d'une documentation claire et détaillées sur le contrôleur de moteur, j'ai choisi le relais parce qu'il sépare complètement le circuit de L'Arduino de celui du contrôleur.

Trottinette15.jpg

Test du matériel[edit | edit source]

Puisqu'ils proviennent qu'une trottinette hors d'usage, il est indispensable de vérifier que la batterie et le moteur fonctionnent correctement. Cette étape évite de se creuser la tête pendant des heures en se demandant pourquoi le robot ne fonctionne pas comme prévu alors que tout est bien branché.

La batterie[edit | edit source]

Pour tester la batterie, utilisez un voltmètre relié aux fils rouge et noir.

Attention, ne coupez pas en même temps tous les fils qui sortent directement de la batterie (juste avant le connecteur) parce que vous risquez de faire un court circuit avec votre pince.

Normalement, la tension obtenue doit être autour de 36 V (ça dépend du niveau de charge). Mais là, avec 0,94 V il y a clairement un problème.

Trottinette09.jpg

La batterie n'a manifestement pas été conçue pour être démontée. Elle est parfaitement protégée des chocs dans un solide boîtier métallique (certainement de l’aluminium). Malheureusement, le fabricant a ensuite coulé une sorte de mastic ou de résine qui a définitivement aggloméré tous les éléments. La seule solution pour ouvrir la batterie est d'inciser délicatement le boîtier avec un disque à découper (sur un outil de type Dremel).

Attention, cette opération comporte un risque, il ne faut absolument rester dans l'angle et ne pas aller trop profond pour ne pas toucher les éléments de batterie.

Trottinette17.jpg

La trottinette a peut être fait un petit séjour dans l'eau parce que la carte de contrôle est oxydée (alors qu'elle était extrêmement bien protégée). Mais dans ces conditions, je vais pas tenter de réparer cette batterie.

Trottinette20.jpg

Il est quand même possible de recycler une partie des composants. En effet, la grosse batterie de 36V est constituée d'une quarantaine d’éléments standards (18650) de 3,6 V. Même si certains sont définitivement hors d'usage, j'ai quand même réussi à en récupérer 24 qui fonctionnent encore.

Trottinette19.jpg

Je pourrais les réassembler pour faire une batterie de 20 cellules, mais cette opération est délicate. Elle nécessite du matériel et des connaissances que pour l'instant, je ne possède pas. Toutefois, de nombreux objets utilisent des cellules 18650 (cigarette électronique, batterie externe de téléphone portable, panneaux solaires, robots...), il sera donc très facile de leur trouver une utilité (ne serait-ce que pour alimenter un Arduino).

Trottinette21.jpg

Pour alimenter mon robot, j'ai commandé une nouvelle batterie de trottinette, mais en attendant je vais tester les moteurs avec une batterie 10 cellules d'overboard. Elle est compatible puisque la tension est la même (36V) mais bien sûr, l'autonomie est beaucoup plus faible (surtout avec 2 moteurs).

Trottinette23.jpg

Les moteurs[edit | edit source]

Les contrôleurs de moteurs possèdent de nombreux fils de couleurs et de diamètres différents. Mais on peut les classer par catégorie.

1) Alimentation générale (batterie). Le fil noir est relié à la masse et le gros fil rouge à la borne + 36V. Si le petit fil rouge n'est pas relié au + 36V, l'alimentation du moteur est coupée ce qui peut être intéressant pour être sûr que le robot est arrêté.

2) Alimentation du moteur, à relier aux 3 gros fils (bleu, vert et jaune)

3) Contrôle du moteur, à relier aux 5 petits fils (rouge, noir, bleu, vert et jaune.

4) Vitesse du moteur, à relier au potentiomètre numérique en suivant le schéma (rouge, noir et vert).

5) Inversion du sens de rotation à relier au module relais (blanc et blanc)

Les autres fils ne sont pas utilisés

Trottinette11.jpg

Voilà le schéma de branchement pour le moteur gauche (G) ou droit (D).

Trottinette25.jpg

Et voilà le programme permettant de tester le fonctionnement des moteurs dans un sens, puis dans l'autre. J'ai ajouté une LED témoin (reliée à la borne D11), mais ce n'est pas obligatoire. Vous trouverez la bibliothèque DigiPotX9Cxxx à l'adresse suivante : https://electropeak.com/learn/interfacing-x9c104-100k-ohm-digital-potentiometer-module-with-arduino/).

/*

Challenge : Seconde vie des trottinettes électriques (La fabrique des mobilites)

Projet de Jean-Christophe QUETIN (www.arduiblog.com)

https://wiki.lafabriquedesmobilites.fr/wiki/Robot_Arduiblog

Branchement des potentiomètres X9C104 :

***** Moteur gauche *****

Arduino 5V - VCC

Arduino GND - GND

Arduino pin 2 - INC

Arduino pin 3 - U/D

Arduino pin 4 - CS

Controleur moteur fil rouge - RH

Controleur moteur fil vert - RW

Controleur moteur fil noir - RL

***** Moteur droit *****

Arduino 5V - VCC

Arduino GND - GND

Arduino pin 5 - INC

Arduino pin 6 - U/D

Arduino pin 7 - CS

Controleur moteur fil rouge - RH

Controleur moteur fil vert - RW

Controleur moteur fil noir - RL

*/

// Appel des bibliotheques

#include <DigiPotX9Cxxx.h>

// Definition des ports

DigiPot moteurGauche(2,3,4);

DigiPot moteurDroit(5,6,7);

const int SENSGAUCHE = 8;

const int SENSDROIT = 9;

const int LED = 11;

// Définition des variables

int vitesseGauche = 0;

int vitesseDroite = 0;

void setup() {

pinMode(LED, OUTPUT);

pinMode(SENSGAUCHE, OUTPUT);

pinMode(SENSDROIT, OUTPUT);

digitalWrite(SENSGAUCHE, 1);

digitalWrite(SENSDROIT, 1);

// Arret des moteurs

moteurGauche.reset();

moteurDroit.reset();

}

void loop() {

moteurGauche.set(80);

moteurDroit.set(80);

analogWrite(LED, 70);

delay(3000);

moteurGauche.set(90);

moteurDroit.set(90);

analogWrite(LED, 255);

delay(3000);

moteurGauche.set(0);

moteurDroit.set(0);

analogWrite(LED, 0);

delay(5000);

inversionMoteurs();

}

void inversionMoteurs(){

moteurGauche.set(0);

moteurDroit.set(0);

digitalWrite(SENSGAUCHE, 0);

digitalWrite(SENSDROIT, 0);

delay(500);

digitalWrite(SENSGAUCHE, 1);

digitalWrite(SENSDROIT, 1);

}

Trottinette16.jpg

Pour voir la roue tourner, allez sur ma chaîne Youtube : https://www.youtube.com/watch?v=pjtATH7JCCA

Construction du châssis[edit | edit source]

J'attendais la livraison de la 2ème roue pour commencer la fabrication du châssis et finalement il y a eu un imprévu puisse que j'ai reçu 2 nouvelles roues. Je ne vais pas me plaindre parce qu'elles sont toutes neuves et n'ont pas connu de séjour dans l'eau (de l'eau coulait par le fil du 1er moteur). Mais les roues sont légèrement plus petites (20 cm, au lieu de 25 cm).

Trottinette-28.jpg

J'ai bien fait d'attendre, comme cela je peux adapter le châssis aux nouvelles roues. J'ai choisi une petite planche de MDF (50 X 40 cm) et j'ai fixé les roues (en ajoutant la roue libre) avec chutes de bois, des équerres, des plaques de tôle et beaucoup de vis. Le résultat n'est pas exceptionnel (je ne suis pas menuisier), mais cela devrait être suffisamment solide et je pourrai m'occuper de la déco plus tard.

Trottinette26.jpg

En ce qui concerne la programmation ou les branchements des nouveaux moteurs, cela ne fait aucune différence.

Trottinette29.jpg

(à suivre...)