Nouvele version de Snootor

Un shield de pilotage pour 4 moteurs à courant continu ou 2 moteurs pas à pas, qui permet une alimentation sur 12V et qui n'utilise que 4 sorties Pwm (sur 6) et 2 entrées analogiques (sur 6) de l'Arduino

Nouvele version de Snootor

Message non lude Philippe Martorell » Mar 17 Sep 2013 11:40

Bonjour tous,

J'ai pris l'initiative de modifier/compléter la librairie Snootor sur la partie pas à pas. Elle n'est pas encore publiée car je ne parle pas anglais, donc les choix des noms de fonctions et les commentaires doivent étre traduits. Allez-y, et je suis dispo si il y a besoin d'un coup de main.

Déjà, je pense avoir respecté la compatibilitée ascendante; les croquis écris avec l'ancienne librairie devraient fonctionner et avoir le même comportement.

Ensuite, j'ai rajouté quelques trucs;
    Alimentation ou non du moteur pas à pas en fin de mouvement.
    Comptage du nombre de pas sur plusieurs tours, et possible en négatif.
    Ordre GoTo pouvant également étre sur plusieurs tours.

Je n'ai pas gardé le projet de pouvoir utiliser un moteur à 3 bobines, celui-ci n'aurais plus grand chose de commun avec la structure existante.
Fichiers joints
snootor.zip
(32.67 Kio) Téléchargé 79 fois
Philippe Martorell
 
Messages: 20
Inscription: Ven 14 Jan 2011 09:28

Re: Nouvele version de Snootor

Message non lude Philippe Martorell » Mer 25 Sep 2013 09:40

Je me compléte;

Ce boulot autour de cette bibliothéque est un préambule à une transformation des robots de JF que certains ont vu à PSMP, au TetaLab ou bientôt au Capitole du Libre. La différence essentielle pour notre appli est le comptage de pas absolu, ce qui permet de faire de l’odométrie http://fr.wikipedia.org/wiki/Odom%C3%A9trie . Ce qui implique des moteurs pas à pas à la place des servo-moteurs décérébrés. http://snootlab.com/adafruit/384-petit- ... 2-pas.html

J’espérais donc utiliser la RotoSchied de SnootLab pour driver les moteurs pas à pas.
Malheureusement, elle (la RotoSchied) occupe une certain nombre de pins;
les analogique 4 et 5 pour l’I2C
les 3,5,6,11 pour les PXM des moteurs, pas à pas ou continus.

Et voici une récapitulations des pins réservées pour le robot ( choix logiciel);
Reperage des pins
Servomoteur gauche 9
Servomoteur droit 8
Potentiometre gauche A0
Potentiometre droit A1
PhotoResistance gauche 2
PhotoResistance droit 3
Contact gauche 4
Contact droit 5
#define pinSortie 12
Led verte 3
Led rouge 5
Capteur de Distance A4
Je n’ai pas compris ce qui étais prévu pour la pin 12, je suppose le buzzer mais en suis pas sûr ( JF ?)

Bref, si on veux utiliser la RotoSchied, il faut remanier le brochage logiciel.
Comment procéder intelligemment ?
Perso, j’imaginais regarder le robot d’ Arduino et coller au plus prés pour essayer d’étre compatible logiciellement, donc profiter si possible de leur boulot.
Une autre solution aurait été de faire un schied maison sans les entrées PWM. Mais je ne suis pas sûr d’arriver à cabler correctement le composant I2C.
Je pourrais également modifier sauvagement la carte SnootLab pour libérer ces mêmes pins.

Qu’en pensez-vous ?

Pour le robot Arduino, n’y aura-t-il pas de toutes façons trop de différences pour que cela soit incompatible ?

Pour mener la réflexion plus loin dans le temps, j'envisage un circuit imprimé spécifique supportant tous les composants, y compris piles et moteurs, avec connecteur ICSP pour la programmation. Le prix serais certainement fortement réduit. Dans ce cas les pins 11, 12, 13 doivent-ils étre libres ou peux-on les utiliser pour des entrées ou des sorties? Je suppose que des sorties serais possibles puisque la 12 est déjà une led sur la Arduino de base. J'ai juste?

Votre avis m’est indispensable.
Merci par avance.
Philippe Martorell
 
Messages: 20
Inscription: Ven 14 Jan 2011 09:28


Retourner vers Rotoshield

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

cron