0

Communication FEZ Domino sur le bus CAN en microframework

Carte de test du bus CAN

Premier pas dans la communication entre la carte d’asservissement et la carte mère du robot 2011, la communication sur le bus CAN (cf article sur le fonctionnement de la propulsion 2011).

Pour assurer cette bonne communication, la première étape était de réussir à faire communiquer deux cartes du même type entre elles. Possédant deux exemplaires de notre carte mère, nous cherchions à envoyer et recevoir des messages entre ces 2 cartes pour valider la bonne communication sur le port CAN.

Adapteur SOIC / DIP

Adapteur SOIC / DIP

La carte FEZ Domino comporte un controleur CAN mais pas de transceiver. Il faut donc adjoindre un transceiver CAN pour permettre à la carte de communiquer sur le bus. Nous avons commencé par tester la gamme des transceivers TI VP230. Il nous a été impossible  de trouver ce transceiver en mode DIP et avons donc été obligés de nous tourner vers un packaging SOIC souder sur un adaptateur DIP/SOIC. Le grand intérêt de la gamme TI VP230 est de fonctionner en logique 3.3V ce qui correspond à la logique de la FEZ Domino

… Lire la suite

0

La propulsion du robot 2011

6

Je vais essayer de présenter en quelques lignes le fonctionnement global du robot 2011 tel qu’il est prévu à l’étape ou nous en sommes. Pour l’instant la majorité des choix technologiques et solutions techniques sont faits. Des portes vers certaines solutions mécaniques sont encore ouvertes mais les grandes lignes sont fixées.

Comme Paul l’a présenté dans un article précédent, nous avons prévu l’ensemble de la solution électronique du robot 2011 autour de 2 axes :

  • L’utilisation du micro Framework .net
  • L’utilisation de la carte ESX-IOX (STW) de notre sponsor Manitou

Je vous renvoie à l’article sur le choix de la carte mère qui détaille les raisons qui nous ont poussées à choisir la carte FEZ Domino comme carte micro Framework .net

… Lire la suite

0

Asservissement Etape 2 : Controle de distance sur les 2 roues

Relais C.I. 12V 2RT 8A HF115F

Rappel de l’étape précédente : le robot avancait dans une seule direction, le déplacement était « surveillé » par un codeur sur une seule des roues.

Les nouveautés

Nouvelle étape dans l’asservissement : le robot peut se déplacer avec un controle des pas sur les 2 roues et changement de sens de rotation grace a un relai commandé par la carte d’asservissement (ESX-IOX).

Pour cela nous avons travaillé sur la création de petites cartes de prototype reliant les sorties des codeurs vers les entrées de la carte d’asservissement ainsi que leur alimentation en provenance du 5V de la carte mère. Une deuxième carte permet de rendre plus distribuer les alimentations à chaque carte et de mettre en commun les masses. On évite donc l’amas de pince crocodile de la première étape.
Un relai inverseur a aussi été ajouté entre la sortie PWM de la carte d’asservissement et un des moteurs pour controler son sens de rotation. La commande du relai est faite par une sortie numérique de la carte d’asservissement. Lors de la prochaine étape, on fera la meme chose pour l’autre moteur dès réception du deuxième relai.
1

Utilisation des données en provenance des codeurs avec un LS7084 ou LS7083

screenshot.22.png

L’information en provenance des codeurs est fournie sur 3 signaux dont 2 réellement utiles (le troisième signal étant déduit par le codeur depuis les 2 premiers). L’utilisation des créneaux fournis par un des signaux permet déjà d’avoir une première information sur l’évolution du cycle moteur. Cependant il est indispensable d’étudier les 2 signaux pour connaitre le sens de rotation du moteur (par simple observation du premier front montant entre le signal A et B).

C’est le rôle du LS7084N (http://www.lsicsi.com/pdfs/Data_Sheets/LS7083N_LS7084N.pdf) de LSICSI qui reçoit en entrée le signal A et B et ressort en sortie deux signaux l’un étant un créneau « mixant » les créneaux des entrées A et B et l’autre une indication sur le sens de rotation des moteurs. Il est de plus possible de paramétrer le mode « mixage » des signaux A et B pour récupérer un coefficient multiplicateur entre x1, x2 et x4 entre le nombre de créneau sur une des voies d’entrées A ou B et la sortie.

Le schéma ci-dessous décrit les différents créneaux de sortie (CLK) suivant le mode de multiplication choisi.

screenshot.21

LS7084N Output

Ainsi, chaque codeur est relié à un LS7084N qui est lui-même relié à 2 entrées numériques de la carte d’asservissement. Chaque CLK est relié sur une entrée Fréquence de la carte d’asservissement et les UP/DN sont reliées sur des entrées numériques de la carte d’asservissement. Le paramétrage du mode est fait par une liaison directe au 12V qui permet de sélectionner le mode x4 en continue.

0

Gestion des sources

CodexPlex Logo

Les premières lignes de code sont en train d’être produites. Au programme :  test du bus CAN entre la carte d’asservissement : l’IOX et la carte mère une GHI FEZ Domino. Pour faciliter notre travail en interne, nous avons décidé d’utiliser Codeplex comme gestionnaire de source. Les avantages sont multiples : Gestion de multitples projets, Sauvegarde du source code, référentiel de version pour l’ensemble de l’équipe,… bref tous les avantages d’un serveur de gestion de source. Pour ceux qui veulent en savoir plus sur cette fonction, je vous renvoi vers cet article sur la gestion de sources.

Sans plus de bavardage, vous pouvez vous rendre sur : http://mlrobotic.codeplex.com/ qui contiendra petit à l’ensemble du code nécessaire au projet. Pour l’instant seul quelques exemples de code micro framework sont présents mais tout cela va s’enrichir dans les prochaines semaines.

Astuce : Pour ceux qui essayent d’utiliser Codeplex directement dans Visual Studio (ce qui est mon cas) il y a une astuce qui évite de ressaisir le mot de pass de connexion à Codeplex à chaque ouverture du projet. Différents articles décrivent déjà la solution pour Windows 7/Vista ou Windows XP

Pages ... 1 2 3 4