Il a maintenant un nom...!


Il s'appelle robot CutFlowers !

Essai terrain...


Essai avec les 2 cartes de gestion des MEGs, bon conportement et plus facile à
programmer que l'ancienne. Modif du prog pour essayer de gérer les réactions du robot
en cas d'enlisement de la caisse et augmentation de la vitesse de coupe, la fonction recul alterne maintenant le coté de dégagement pour mieux se sortir des impasses.

 
J'ai fait des test avec un pack d'accus maison (SUB ni-mh en 12V 6A), les réactions sont
beaucoup plus fluide qu'avec la batterie au plomb à l'avant qui fait piquer du nez le robot
lors des marches AR, mais au niveau autonomie rien à voir avec la grosse batterie au plomb...

Carte de puissance et H-bridges


après avoir grillé la moitié de ma carte driver moteur, je m'en suis procuré une autre sur ebay,
qui doit tenir jusque 43A ! (une par moteur)

Double BTS7960B 43A Motor Driver High-power module/smart car driver Arduino


voici un bout de code pour tester 2 cartes pour 2 moteurs :
câbler VCC (5v) et GND.


const int RL_EN=6;   // relier tous les R_EN et L_EN ensemble
const int PWM1D=5;  //moteur D
const int PWM2D=4;  //moteur D
const int PWM1G=3;  //moteur G
const int PWM2G=2;  //moteur G

void setup()  
{
pinMode(RL_EN, OUTPUT);
pinMode(PWM1D, OUTPUT);
pinMode(PWM2D, OUTPUT);
pinMode(PWM1G, OUTPUT);
pinMode(PWM2G, OUTPUT);

digitalWrite(RL_EN, HIGH); // mets tous les R_EN et L_EN à un niveau HAUT
}

void loop()
{
analogWrite(PWM1D,255);  // moteur D avant à fond
analogWrite(PWM2D,0);      // moteur G avant à fond
 
analogWrite(PWM1G,0);       // moteur G avant à fond
analogWrite(PWM2G,255);   // moteur G avant à fond
} 

pour la marche arrière, inverser les valeurs 0 et 255.


Correctifs...

     Démontage et renforcement du support de moteur de coupe et réglage du
disque à lames afin qu'il soit bien à plat. Vérification de l'équilibrage du disque.

Modification du programme pour:

-- la mise en marche du brushless à haute vitesse pour être sûr qu'il s'initialise correctement 
( le frottement de l'herbe ralenti le démarrage et il risque de ne pas se lancer ), puis réduction
de la vitesse pour limiter la consommation et le bruit...
-- modification du comportement lors d'un obstacle de face...
-- marche arrière progressive, pour que le robot ne lève pas la roue AR...

Touchdown !!!


Essai !!! sur la pelouse de l'hiver, dur dur !!! et, encore des petits réglages...


Problème : à la fin de l'essai, le robot a reculé contre un mur et la carte de driver
des moteurs a griller à moitier...
Avec l'utilisation de transistor Darlington du type TIP120 et TIP 125 on ne recupère pas
en sortie 100% de la puissance contrerement à l'utilisation de Mosfet où le rendement est meilleur.
Ce qui explique pourquoi le robot se déplace plus vite quand les moteurs sont branchés en
directe sur la batterie, plutot que quand ils sont gérés par la carte de puissance...

Serrage des vis !!!


Premier essai avec le système de coupe ! Toutes les vis se sont dévissés et
le moteur est tombé !



Support du brushless...


Le remède: la Loctite !



Remontage du moteur sur le chassis...



Tests ...


Premier test avec les MEG, et une batterie au plomb de 7A, détection calibrée à 40cm...





Montage...



Montage et cablage...

Now, rectification du programme afin de régler les news moteurs et tests...

Démontage ...

Démontage de toute la partie électronique de l'ancien chassis...


Découpage de la nouvelle caisse plus haute pour recevoir les MEG...




... suite ...

... suite du test au sol, la ligne droite et bien gérée par les codeurs, mais un new problème !
Les moteurs tournent à 500 tr/mn et je dois donc les ralentir pour tourner aux environs de 100tr/mn
( no prob avec la prog sur l'arduino!), mais vu le ralentissement, les moteurs perdent beaucoup de
couple et deviennent trop faible pour promener correctement le robot !!! GRRRR!!!!!
Mise en place de new moteurs: des MEG ! Moteur d'essuie-glace de Kangoo
( et chui pas trop voiture française !!! lol )
J'ai donc bricolé avec mon filleul Hugo (un futur grand bricoleur)
une caisse bidon avec 2 MEG plus la batterie et un peu de poids,
le tout à l'arrache pour voir si les moteurs se comportent bien !!!
et surprise, jusque-là ça marche plutôt bien et pas besoin de réguler la vitesse,
 c'est pas beau ça !!!


Premier test au sol...



Premier test au sol avec les moteurs codés, et la batterie de 284Kg!
Merci mon pote Nico pour le code de dingo des codeurs !!

Codage des moteurs...

Après un premier test au sol, il faut absolument créer un asservissement
pour gérer les vitesses des 2 motoréducteurs et la trajectoire...


Découpage de rondelle en plastique...


Impression de roue de codage...




Découpe à la meuleuse des encoches...




Montage sur l'axe de la roue...


Test d'un optocoupleur récupéré dans une imprimante...


Installation sur le chassis du robot...





Mise en place des composants...


Conception du sonar monté sur tourelle...


Réalisation de la carte de puissance...


Insertion des 2 motoréducteurs et du moteur brushless pour la coupe...

 
exemple de code pour tester le moteur brusless:
 
// lignes de code pour demarrer un moteur brushless...

#include <Servo.h>                                       // librairie pour servomoteur
const int BRUSHLESS=3;                           //declaration constante de broche
Servo cont_brushless;                                  // crée un objet servo pour contrôler le servomoteur
 
void setup()  
{
cont_brushless.attach(BRUSHLESS);        // attache l'objet servo à la broche de cmd du servo
pinMode(BRUSHLESS, OUTPUT);          //met la broche en sortie

 cont_brushless.writeMicroseconds(1470);        // génère milieu servo
 delay (2000);                                                     //attente de 2 secondes pour initialisation du controleur
 
int robcuton;
  for(robcuton = 1470 ; robcuton <= 2200; robcuton+=1)  //acceleration vitesse max à 2200
  {
        cont_brushless.writeMicroseconds(robcuton);
  }
}
 
void loop()
{ // debut de la fonction loop()
}



Fabrication d'une boite autour de la carte de puissance pour faire un système " air forcé "...



Création de la caisse...


Découpe des roues dans de l'alu...


Corps en PVC et Plexi...