Outils pour utilisateurs

Outils du site


robotique:r_hasika:propulsion

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
robotique:r_hasika:propulsion [09/01/2015 22:15]
sky99 [Roues/chenilles]
robotique:r_hasika:propulsion [09/01/2015 23:20] (Version actuelle)
sky99 référence complétée
Ligne 43: Ligne 43:
 Un second point important est que le capteur de réflectance doit émettre en continu un faisceau infrarouge. Nous avons deux capteurs de réflectance par capteur de rotation, soit un total de quatre DEL infrarouge qui émettent en permanence, que le robot soit à l'​arrêt ou non. Cela entraîne une consommation de 12mA pour le capteur 5V (soit 60mW) et 24mA pour le capteur 3.3V (soit 80mW) ((voir section "5V and 3.3V versions"​ : [[https://​www.pololu.com/​product/​2590]])) pour chaque capteur de rotation, ce qui est à multiplier par le nombre de moteurs. Un second point important est que le capteur de réflectance doit émettre en continu un faisceau infrarouge. Nous avons deux capteurs de réflectance par capteur de rotation, soit un total de quatre DEL infrarouge qui émettent en permanence, que le robot soit à l'​arrêt ou non. Cela entraîne une consommation de 12mA pour le capteur 5V (soit 60mW) et 24mA pour le capteur 3.3V (soit 80mW) ((voir section "5V and 3.3V versions"​ : [[https://​www.pololu.com/​product/​2590]])) pour chaque capteur de rotation, ce qui est à multiplier par le nombre de moteurs.
  
-Le capteur Hall nécessite une alimentation électrique pour fonctionner mais à priori plus faible. En pratique, les spécifications du capteur donnent une valeur minimale de 2mA et maximale de 6mA, avec une valeur typique de 4mA ((spécifications officielles : [[https://​www.pololu.com/​file/​0J815/​TLE4946-2K.pdf]])). Soit 4 à 12mA par capteur de rotation, avec une valeur typique de 8mA. En 5V, cela fera 40mW, et en 3.3V, 26mW de valeur typique par moteur, soit un gain de 33% à 67% selon la version. Avec la consommation minimale, on passera à une baisse de 83% et 92%, et dans le pire des cas avec la consommation maximale, on obtient 0% et 50% de mieux.+Le capteur Hall nécessite une alimentation électrique pour fonctionner mais à priori plus faible. En pratique, les spécifications du capteur donnent une valeur minimale de 2mA et maximale de 6mA, avec une valeur typique de 4mA ((spécifications officielles ​du capteur hall utilisé pour les capteurs de rotation des moteurs ​: [[https://​www.pololu.com/​file/​0J815/​TLE4946-2K.pdf]])). Soit 4 à 12mA par capteur de rotation, avec une valeur typique de 8mA. En 5V, cela fera 40mW, et en 3.3V, 26mW de valeur typique par moteur, soit un gain de 33% à 67% selon la version. Avec la consommation minimale, on passera à une baisse de 83% et 92%, et dans le pire des cas avec la consommation maximale, on obtient 0% et 50% de mieux.
  
 Enfin, le capteur magnétique propose des vrais trous pour souder les fils, au lieu de demi-trous sur les capteurs optiques. Enfin, le capteur magnétique propose des vrais trous pour souder les fils, au lieu de demi-trous sur les capteurs optiques.
Ligne 87: Ligne 87:
 ===== Contrôleur de moteur ===== ===== Contrôleur de moteur =====
 Le contrôle des moteurs est confié à un DRV8835 sur une carte d'​interface Pololu : [[https://​www.pololu.com/​product/​2135|DRV8835 Dual Motor Driver Carrier]] Le contrôle des moteurs est confié à un DRV8835 sur une carte d'​interface Pololu : [[https://​www.pololu.com/​product/​2135|DRV8835 Dual Motor Driver Carrier]]
 +Le DRV8835 de TI est une puce moderne, capable de délivrer davantage de courant (1.5A max par moteur) qu'un L293D ou qu'​un ​ SN754410, et de contrôler deux moteurs. Cette puce peut donc commuter plus de courant, mais sur également une tension plus faible pour les moteurs. Les deux précédentes sont prévues pour une tension de moteurs d'au moins 4.5V, contre 2V pour le DRV8835. En revanche, le DRV8835 ne permet pas ce commander des moteurs nécessitant une tension de plus de 11V.
 +
 +L'​intérêt de cette puce sera donc de pouvoir commander des moteurs à partir d'une faible tension (par exemple, si on utilise une batterie une cellule lipo, la tension variera entre 3 et 4.2V, ce qui est trop faible pour un L293D ou un SN754410), et/ou avec des courants plus forts. Il est à noter que le DRV8833 permet de monter jusqu'​à 2A en pointe par moteur, au dépens de la plage de tension, puisqu'​il faut au moins 2.7V, et au plus 10.8V.
 +Ces puces sont fabriquées dans un format peu pratique pour ceux qui ne peuvent pas souder des composants de surface, mais heureusement,​ on trouve des cartes permettant d'​utiliser ces puces sur une breadboard ou simplement en soudant des câbles.
 +Voici le schéma de câblage de la carte : 
 +
 +{{http://​a.pololu-files.com/​picture/​0J4058.600.png}}
 +(image de Pololu, tous droits réservés)
 +
 +En pratique, du côté gauche de la carte, tout en haut, nous aurons la masse, puis le VCC (alimentation logique).
 +En dessous, la broche enable du moteur B (même principe que la broche //enable// des deux précédentes puces).
 +Encore en dessous (4 ème broche en partant du haut), nous aurons l'​entrée "//​BPHASE//",​ qui permet de contrôler le sens du moteur : si cette entrée reçoit un signal logique bas, le moteur tournera dans un sens, et si elle reçoit un signal logique haut, le moteur tournera dans l'​autre sens (toujours si la broche enable est active).
 +En dessous, en 5 et 6, nous aurons la broche //enable// du moteur A, et la broche phase du moteur B, qui auront le même rôle que pour le moteur B. Enfin, la broche tout en bas est la broche permettant de régler le mode de contrôle. Pour que l'on puisse utiliser le moteur comme décrit plus haut, il faut que cette broche reçoive un signal logique haut (il suffit de la connecter à VCC). Dans le cas contraire, on contrôlera les moteurs de façon différente,​ avec davantage de possibilités (voir la documentation pour cela).
 +Du coté droit, en partant du haut, nous aurons d'​abord la masse des moteurs, puis le VIN, ou le + des moteurs. En dessous, en 3 et 4, les broches de sortie du moteur B, puis en 5 et 6 les broches de sortie du moteur A. Enfin, la dernière broche, VMM, permet de récupérer le + de l'​alimentation des moteurs, après le circuit de protection contre l'​inversion de tension.
 + 
 +On notera donc ici qu'il suffira de 2 broches par moteur pour contrôler la vitesse et le sens, par rapport à 3 pour les deux précédentes puces.
 + 
 +Comme avec des L293D ou des SN754410, on peut multiplier les puces pour augmenter le courant de sortie, ou refroidir la puce. En pratique, d'​après les tests de pololu, dans une pièce à température ambiante, la puce peut délivrer 1.2A par canal en continu, et  1.5A pendant 15s avant que la protection thermique intégrée ne coupe l'​alimentation.
 +Dans tous les cas, il est à noter que cette protection thermique existe, et donc vous ne grillerez pas votre puce, elle s'​arrêtera avant.
 +Quelques documents utiles :
 +  * La [[http://​www.ti.com/​product/​drv8835|fiche produit du DRV3385 chez TI]];
 +  * Les [[http://​www.ti.com/​lit/​gpn/​drv8835|spécifications officielles (datasheet) ​ du DRV3385 chez TI]];
 +  * La [[http://​www.pololu.com/​product/​2135|fiche produit de la carte DRV3385 utilisée chez Pololu]].
 +
 +Il existe une variante de cette puce, le DRV3383, pour lequel voici les documents équivalents :
 +  * La [[http://​www.ti.com/​product/​drv8833/​description|fiche produit du DRV3383 chez TI]];
 +  * Les [[http://​www.ti.com/​lit/​gpn/​drv8833|spécifications officielles (datasheet) ​ du DRV3383 chez TI]];
 +  * La [[http://​www.pololu.com/​product/​2130|fiche produit de la carte DRV3383 utilisée chez Pololu]].
 +
 +
robotique/r_hasika/propulsion.1420838132.txt.gz · Dernière modification: 09/01/2015 22:15 par sky99