Étape 4: Tester le PCB et ajouter sur votre contrôleur
Après en regardant le PCB et faire quelques tests, j’ai découvert l’info code pin :
broche 2 - sol
broches 6,7 - contrôles gauche h-bridge motor
broche 10,11 - contrôles à droite moteur h-bridge
broche 13 - Vcc de sortie de la batterie.
Je suis en supposant que les autres broches sont d’ordre administratif et d’obtenir l’entrée des composants récepteur. Bien qu’ayant une entrée sans fil dans le CCI pourrait être utile pour quelque chose dans le futur, en ce moment je suis intéressé aux h-ponts et comment vous les contrôler.
Le pont en h pour chaque côté est composé de 4 transistors de puissance et 2 transistors ordinaires. Sur mon circuit imprimé, les transistors de puissance lorsqu’une paire de H8050 et H8550, contrôlée par un couple de transistors réguliers, C945s. Tous sont dans le package physique TO-92. Je soupçonne que les autres transistors peuvent être utilisés sur les autres PCB, il s’agissait de qui ce qui était en stock à un prix bon marché ce jour-là. J’ai trouvé quelques fiches techniques pour les H8050 et les H8550, et il semble que chaque pont en h est évalué à 1,5 ampères. Encore une fois, il peut y avoir différentes composantes sur les autres PCB sur autres gobelets, mais la base 1. 5 a cote devrait rester le même.
Pour chaque pont en h, il y a une paire d’épingles qu’il contrôle. Broches #6 et #7 pour le côté gauche et #10 et #11 pour le côté droit.
Roue de gauche :
Broche 6: OFF, broche 7: ne OFF - rien, aucun mouvement
BROCHE 6: Sur, broche 7: OFF - roue tourne - vers l’avant
BROCHE 6: OFF, broche 7:-roue tourne - sens inverse
BROCHE 6: Sur, broche 7: ON - non testé, soupçonne que cela pourrait faire frire quelque chose dans un nuage de fumée.
Roue droite :
Broche 10 : OFF, Pin 11 : ne OFF - rien, aucun mouvement
BROCHE 10 : Sur, Pin 11 : OFF - roue tourne - sens inverse
BROCHE 10 : OFF, Pin 11 : ON - roue tourne - vers l’avant
BROCHE 10 : Sur, Pin 11: ON - non testé, soupçonne que cela pourrait faire frire quelque chose dans un nuage de fumée.
Pour les broches sur la position « OFF », N/C ou au sol, les deux semblent fonctionner. Le principe général je suggère de s’en tenir à la terre et pas N/C.
Que signifie tout cela signifie ?
Pour enfoncer un aspect particulier du robot, vous avez besoin de deux sorties numériques, nous l’espérons PWM capable. Pour les deux parties, il faut quatre sorties. Par exemple, si je voulais aller de l’avant à vitesse max 40 % je fixerais mes broches comme ceci :
broche 6: signal PWM à 40 %
Broche 7: sol (PWM 0 %)
broche 10 : sol (PWM 0 %)
broche 11 : signal PWM à 40 %
J’ai été en utilisant la fréquence PWM Arduino standard d’environ 500Hz et qui travaille pour la commutation des h-ponts marche très bien. Je ne serais pas surpris si les composants gérés jusqu'à la plage de 20 KHz.
Où accrocher votre microcontrôleur et utilisation d’une batterie différente pour les signaux de données (comme le 9V, j’ai utilisé), n’oubliez pas de « partager un terrain » fil entre les deux. Si vous regardez mes photos, c’est pourquoi j’ai un fil de la broche #2 sur la douille de IC dans le plan de masse de ma maquette.
J’ai donc utilisé pour ma configuration de test, les signaux PWM Arduino :
Arduino : Tumbler
broche 9---goupille 6
broche 10---broche 7
broche 3---broche 11
broche 11---pin 10
Voici quelques câblé, le code de test laid. Toutefois, il fonctionne et prouve l’idée générale. C’est une boucle qui va comme ceci :
commencer à boucle
en voiture vers l’avant à 50 % de puissance pendant 2 secondes
attendre 2 secondes
conduisez en marche arrière à 50 % de puissance pendant 2 secondes
attendre 2 secondes
boucle en haut
Il me montre que ce n’est pas la moteur/roue plus précise l’alignement que j’ai vu, mais il ne fonctionne pas. Je vais travailler sur le code de contrôle de la meilleure roue au fil du temps - besoin d’obtenir le télémètre de laser, travaillant d’abord !
Tumbler1
par Ray Alderman
//
Connexions à la Tumber PCB
//
Arduino : Tumbler
broche 9---goupille 6
broche 10---broche 7
broche 3---broche 11
broche 11---pin 10
masse---la broche 2 (sol)
//
//
int RightFwd = 3 ; Sortie PWM pour aller Foward sur roue droite
int RightRev = 11 ; Sortie PWM pour aller marche arrière sur la roue droite
int LeftFwd = 9 ; Sortie PWM à aller de l’avant sur la roue gauche
int LeftRev = 10 ; Sortie PWM pour aller retour sur roue gauche
int delaytime = 2000 ; délai entre les étapes
int speedval = 127 ; Vitesse de rotation, à 50 % (de 255 max)
void setup()
{
pinMode (RightFwd, sortie) ;
digitalWrite (RightFwd, basse) ; Assurez-vous de que sortie est initalement à faible
pinMode (RightRev, sortie) ;
digitalWrite (RightRev, basse) ; Assurez-vous de que sortie est initalement à faible
pinMode (LeftFwd, sortie) ;
digitalWrite (LeftFwd, basse) ; Assurez-vous de que sortie est initalement à faible
pinMode (LeftRev, sortie) ;
digitalWrite (LeftRev, basse) ; Assurez-vous de que sortie est initalement à faible
Delay(DelayTime) ;
}
void loop()
{
analogWrite (LeftRev, 0) ;
analogWrite (LeftFwd, speedval) ; tour à tour sur la roue gauche vers l’avant à la valeur de la vitesse
analogWrite (RightRev, 0) ;
analogWrite (RightFwd, speedval) ; tour à tour sur la roue droite vers l’avant à la valeur de la vitesse
Delay(DelayTime) ;
analogWrite (LeftFwd, 0) ; désactive la roue gauche
analogWrite (RightFwd, 0) ; désactive la roue droite
Delay(DelayTime) ;
analogWrite (LeftRev, speedval) ; se met en marche la roue de gauche dans la direction opposée à la valeur de la vitesse
analogWrite (RightRev, speedval) ; se met en marche la roue droite dans la direction opposée à la valeur de la vitesse
Delay(DelayTime) ;
}