vendredi 12 avril 2013

Ajout sélection Alimentation

Lorsque je suis à l'atelier, je préfère utiliser une alim plutôt que la batterie. Alors plutôt que brancher/débrancher la batterie j'ai ajouté un double inverseur capable de soutenir 10A (il y a de la marge) et 2 bornes 4 mm pour raccordement de l'alim.

Pointer le bug

J'ai passé 2 jours à tenter de résoudre un bug (CCS C sur PIC 16F ) : je voulais qu'une valeur transmise en paramètre d'une fonction (par défaut transmission par valeur) est sa valeur modifiée par cette fonction.Une solution facile et éprouvée était de créer une variable globale, visible de la fonction appelante et appelée. Mais j'ai voulu faire autrement en utilisant un pointeur de façon à transmettre le paramètre non pas par valeur mais par référence (adresse).

j'ai donc déclaré :
int8 *PtrVal;

Par la suite je découvrais que ça ne fonctionnait pas: la fonction appelée qui essayait simplement de resetter la variable :
*PtrVal = 0;

A la fin j'ai posé le problème sur le forum de CCS et obtenu la réponse de PCM Programmer  :
The key thing you need to remember is that just simply creating a pointer doesn't create or allocate any RAM storage locations for data. You have a pointer, but you don't have anything for it to point to.
So to make the pointer be useful, you need to declare a variable, or an array, and load the pointer with the address of that variable or array. 



Il n'y a donc pas d'allocation mémoire lors de la déclaration du pointeur; il faut déclarer la variable :
int8 x;         //Déclaration de la variable et allocation de mémoire
int8 *Ptr;    //Déclaration du pointeur vers un byte


Ptr = &x;     // affectation de l'adresse de x au pointeur

il est alors possible d'accéder/modifier x via le pointeur :
*Ptr = 12;

Certainement très basique mais complétement oublié voire jamais connu!

jeudi 4 avril 2013

Test Nouveau moteur de coupe pour La Poulette

Le moteur de coupe actuel Turnigy G25 est très performant voire trop, très puissant voire trop. Depuis la mise en place de l'asservissement de vitesse du moteur de coupe, la surpuissance de ce moteur est manifeste.
L'autonomie de la tondeuse est de l'ordre de 1h10. 
J'ai donc décidé d'en essayer un autre, j'avais acheté il y a quelques mois un Turnigy Park 450 .
Ce moteur nécessite comme l'autre une protection complète que j'ai réalisé comme suit :
2 disques ALU
 Le moteur est fixé sur celui ci:
 Usina de l'axe en acier à partir d'un rond de 10mm; l'axe moteur est de 4mm, Serrage sur l'axe par 2 vis de 3mm; en sortie l'axe est de 6mm.

L'ensemble avant montage: il y a un roulement inséré dans le disque de sortie.
 Au final avec le capteur de vitesse. C'est lui qui ma posé le plus de problème car la réflexion d'une simple bande réfléchissante n'était pas suffisant. Les résultats satisfaisant n'ont été obtenus qu'avec de l'alu collé sur la cage du moteur.
Pas de robot sans mécanique!
La mise en place sur la Poulette n'a pas posé de gros problèmes et le résultat mesuré ce jour est très positif : l'autonomie est passée à 1h45 soit 35 minutes de plus avec il est vrai assez peu à couper.

mardi 26 mars 2013

CHOIX BATTERIE

Les premières batteries équipant le robot tondeuse étaient des batteries au plomb, je voulais faire simple et avec ce que je connaissais.
Cette année, dans le cadre de la version 6 de La Poulette, je voulais supprimer cette batterie au plomb qui cumule plusieurs inconvénients:
  •  trop lourde (6Kg  pour 17Ah) 
    • La structure doit supporter ce poids
    •  la déplacer dans de l'herbe nécessite couple important et consommation plus importante
  • Charge très longue mais qui nécessite quand même un bon chargeur car mon chargeur de base (forte tendance à la surcharge) a vite fait de la détruire!
 Bref  j'ai cherché des infos et finalement j'ai acheté chez HOBBYKING quelques LIPO  4S (8000mAh et 5000mAh) et un chargeur B6AC: très bons résultats, gain énorme de poids, rapidité de la charge même sans forcer (charge à 0.5C voire moins). Seul bémol : la charge nécessite un chargeur en mesure de vérifier chaque élément , les LIPOs n'aiment pas( mais à priori pas du tout)  les surcharges.

En cherchant un peu j'ai découvert les LIFEPO4 (parfois dénommées A123). Les avantages:
  • les avantages des batteries au Lithium (poids, charge rapide...)
  • mais moins sensibles que les les LIPO au déséquilibre
  • moins toxiques pour l'environnement
  • Existe sous une forme robuste, quasiment compatible avec les batteries au plomb lorsque équipées d'un module PCM. Ce module gère la batterie en charge et en décharge. Il suffit alors d'envoyer une tension max de 14.6V (max théorique de 14.8V pour 3.7V/Cell) et de limiter le courant à moins de  1C.
J'ai donc choisi le modèle EV_POWER  12V 7.5Ah PCM
Les premiers résultats sont très bons, vu la demande faible en cette saison la charge est lente (max 1.5A)

vendredi 1 mars 2013

Poulette V6

L'herbe pousse déjà alors coup d'accélérateur sur la nouvelle version de la Poulette, le robot tondeuse, pilotée par un PIC 16F737, un PCF8574 (donc piloté par I2C),un module SABERTOOTH (piloté par une liaison série) pour les motoreducteurs et un moteur brushless piloté par un ESC via un signal servo pour la coupe, une autre liaison série est utilisée pour la liaison radio pour communication avec le PC.
Le programme PIC fonctionne sous le RTOS de CCS et gère les interruptions suivantes:
  • timer 0 pour le RTOS
  • EXT pour le PCF8574
  • RDA pour la liaison radio
 les capteurs :
  • pare-choc par effet hall
  • fil entéré signal de 48Khz
  • sonar ultra son pour obstacles
  • mesure courant de coupe et du courant de la motrice
  • impulsions odomètre sur les axes des roues
Manque encore le montage du retour base, émetteur et récepteur sont réalisés






mardi 27 novembre 2012

Variateur Tour EMCO

Réalisation d'un variateur pour un petit tour EMCO (superbe machine) basé sur un U210B

La poulette V6

cette année encore la poulette V5 a fait le taf mais ça reste encore perfectible; en effet il lui arrive encore de se bloquer à cause de sa surface rectangulaire. . Le retour base n'est pas non plus opérationnel.
 V6  à une forme modifiée (arrondie ), cadre alu, passe en LIPO, continue avec Brushless .La carte principale reste basée sur le 16F737 mais j'ai ajouté un PCF8574 pour ajouter quelques entrées