5

LS7366 : Compter les pas des codeurs

LS7366

Dans le robot 2011 nous avions décidé d’utiliser des LS8074N pour s’interfacer entre les codeurs et la carte d’asservissement. J’avais d’ailleurs fait un article léger l’année dernière sur ce composant que vous pouvez retrouver ici.

L’utilisation de composant nous a finalement posé bien des problèmes l’année dernière. La problèmatique rencontrée était de réussir à détecter les changements d’états sur la patte compteur du composant. En effet celle-ci suit la vitesse de changement d’état imposée par la CLK qui ne peut pas être supérieure à 30µs. Malheureusement ces changements d’états trop rapides (>33kHz)  étaient indétectable par la carte d’asservissement.  Rappelons quand meme que la fréquence max des impulsion des codeurs de notre robot ne dépasse pas les 5 kHz (1 tour  de roue de codeur par seconde soit 4096 pas par seconde).

L’objectif de cette année était donc de trouver un nouveau composant permettant de compter les pas de nos codeurs et s’interfacant avec notre carte d’asservissement de 2012. Nous nous sommes naturellment tournés vers un autre composant de chez LSI/CSI, le LS7366.

Les avantages de ce composant sur le LS7084N sont nombreux:

  • C’est un compteur, c’est à dire qu’il possède des registres internes permettant de stocker un nombre de pas entre deux interrogations jusqu’a 32 bits en positif ou négatif (soit plus de 2 milliards).
  • Il est inerrogeable à travers un protocol SPI et ne nécessite donc pas de port d’interruption ni d’entrées tout ou rien à vérifier régulièrement.
  • De nombreux modes de fonctionnement pour paramétrables (compteur modulo N, utilisation de l’index du codeur,…)
Il conserve les avantages déjà présents dans le LS7084N de 2011:
  • Détection du sens
  • Décodage en quadrature x1, x2 et x4
  • Filtrage du signal…
Voici ci-dessous un exemple de notre carte de codeurs qui met 2 LS7366 (1 par codeur) commandé par le même SPI.

 

0

Présentation du bus I2C

I2clogo

Cet article n’a pas la prétention de faire un cours sur l’I2C mais juste de poser les points essentiels de ce protocole histoire du bien savoir de quoi on parle. Vous pouvez regardez la documentation de PHILIS ici .

Définition : I²C (pour Inter Integrated Circuit Bus) est le nom du bus historique, développé par Philips pour les applications de domotique et d’électronique domestique au début des années 1980, notamment pour permettre de relier facilement à un microprocesseur les différents circuits d’une télévision moderne. Ce bus porte parfois le nom de TWI

Ce bus est constitué de trois câbles:
- la masse (Vss)
- l’horloge (CLK)
- les données (SDA)

Il permet de commander de nombreux appareils avec un nombre réduit de câbles. Nous pouvons retrouver des commandes d’entrée sortie, des mémoires vives et morte, des commandes d’actionneur. Le tableau ci-dessous liste les composants sortis à ce jour permettant de nombreuses applications faciles à mettre en place.

référence description boitier dimension datasheet prix
PCF8574 Module d’entrées sorties 8bits DIL 20 19,50 x 8,25 mm

PCF8574 datasheet

3,50 euro
ISS Synthétiseur vocal DIL 40 52,50 x 15,80 mm

ISS datasheet

___
SD20 Commande de 20 servomoteur DIL 40 52,50 x 15,80 mm SD20 datasheet 19,50 euro
SD21 Commande de 21 servomoteur sur une carte déjà préparée avec une alimentation, l’environnement de fonctionnement du microcontroleur, et des broches pour venir connecter les servomoteurs dessus. carte électrique ___ SD21 datasheet 49,90 euro
D2000 Carte à puce au format ISO. C’est une carte comprennant de l’EEPROM non-crypté de chez PHILIPS. Elle contient de 2kbits à 8kbits en fonction de la carte carte à puce 53,98 x 85,60 mm 2,10 euro
CMPS03 Ce module est une bousolle électronique d’une précision de 3 à 5° qui sort la position sur 8 ou 16bits carte électrique 32 x 35 mm

CMPS03 datasheet

19,50 euro
SRF08 Ce module permet de mesurer la ditance de 3cm à 6m d’un obstacle par ultra-Sons. carte électrique 43 x 20 x 17 mm

SRF08 datasheet

57,20 euro