Table des matières:

556 Servo Driver : 5 étapes (avec photos)
556 Servo Driver : 5 étapes (avec photos)

Vidéo: 556 Servo Driver : 5 étapes (avec photos)

Vidéo: 556 Servo Driver : 5 étapes (avec photos)
Vidéo: Complete guide to PCA9685 16 channel Servo controller for Arduino with code Version of 5 ( V1) 2024, Novembre
Anonim
556 servomoteur
556 servomoteur

Les servomoteurs (également les servomoteurs RC) sont de petits servomoteurs bon marché fabriqués en série et utilisés pour la radiocommande et la robotique à petite échelle. Ils sont conçus pour être facilement contrôlés: la position du potentiomètre interne est continuellement comparée à la position commandée par l'appareil de commande (c'est-à-dire la radiocommande). Toute différence donne lieu à un signal d'erreur dans le sens approprié, qui entraîne le moteur électrique soit vers l'avant, soit vers l'arrière, et déplace l'arbre vers la position commandée. Lorsque le servo atteint cette position, le signal d'erreur diminue puis devient nul, moment auquel le servo s'arrête de bouger.

Les servos de radiocommande sont connectés via une connexion standard à trois fils: deux fils pour une alimentation CC et un pour le contrôle, transportant un signal de modulation de largeur d'impulsion (PWM). La tension standard est de 4,8 V CC, mais 6 V et 12 V sont également utilisés sur quelques servos. Le signal de commande est un signal PWM numérique avec une fréquence d'images de 50 Hz. Dans chaque période de 20 ms, une impulsion numérique active haute contrôle la position. L'impulsion va nominalement de 1,0 ms à 2,0 ms, 1,5 ms étant toujours le centre de la plage.

Vous n'avez pas besoin d'un microcontrôleur ou d'un ordinateur pour contrôler un servo. Vous pouvez utiliser le vénérable circuit intégré de minuterie 555 pour fournir les impulsions requises à un servo.

De nombreux circuits basés sur des microcontrôleurs sont disponibles sur le net. Il existe également quelques circuits disponibles pour tester les servos basés sur des 555 simples, mais je voulais une synchronisation précise sans que la fréquence ne varie du tout. Pourtant, il devait être bon marché et facile à construire.

Étape 1: PWM Quoi ?

PWM Quoi ?
PWM Quoi ?

Comme son nom l'indique, le contrôle de la vitesse de modulation de largeur d'impulsion fonctionne en entraînant le moteur avec une série d'impulsions « ON-OFF » et en faisant varier le cycle de service, la fraction de temps pendant laquelle la tension de sortie est « ON » par rapport au moment où elle est « OFF”, des impulsions tout en gardant la fréquence constante.

Le concept derrière ce circuit est qu'il utilise deux minuteries pour générer le signal de sortie PWM (modulation de largeur d'impulsion) pour piloter le servo avec.

Le premier temporisateur fonctionne comme un multivibrateur astable et il génère la "fréquence porteuse", ou la fréquence des impulsions. Cela semble déroutant ? Eh bien, bien que la largeur d'impulsion de la sortie puisse varier, nous voulons que le temps entre le début de la première impulsion et le début de la deuxième impulsion soit le même. Il s'agit de la fréquence des occurrences d'impulsions. Et c'est là que ce circuit surmonte la fréquence variable de la plupart des circuits 555 simples.

La deuxième minuterie agit comme un multivibrateur monostable. Cela signifie qu'il doit être déclenché pour générer sa propre impulsion. Comme indiqué ci-dessus, la première minuterie déclenchera la seconde à un intervalle fixe et définissable par l'utilisateur. Cependant, la deuxième minuterie a un pot externe qui est utilisé pour régler la largeur d'impulsion de sortie, ou en fait pour déterminer le rapport cyclique et à son tour la rotation du servo. Venons-en au schéma…

Étape 2: Un peu de maths… Fréquence

Un peu de maths… Fréquence
Un peu de maths… Fréquence

Le circuit utilise un LM556 ou un NE556, qui peut être remplacé par deux 555. Je viens de décider d'utiliser le 556 car il s'agit d'un double 555 dans un seul paquet. Le circuit de minuterie gauche, ou générateur de fréquence, est configuré comme un multivibrateur astable. L'idée est de lui faire produire une fréquence porteuse d'environ 50 Hz, à partir de laquelle un rapport cyclique sera ajouté par la minuterie de droite ou le générateur de largeur d'impulsion.

C1 se charge via R1, R4 (utilisé pour régler la fréquence) et R2. Pendant ce temps, la sortie est élevée. Ensuite, C1 se décharge à travers R1 et la sortie est faible.

F = 1,44 / ((R2+R4 + 2*R1) * C1)

F= 64Hz pour R1 = 0

F= 33Hz pour R1 = 47k

Sur le circuit simulé simplifié, cependant, R1 est omis et la fréquence est fixée à 64 Hz.

Très important! Nous voulons que le temps pendant lequel la sortie est faible soit plus court que la largeur d'impulsion minimale du générateur de largeur d'impulsion.

Étape 3: Un peu de maths… Pulse

Un peu de maths… Pulse
Un peu de maths… Pulse

Le générateur de largeur d'impulsion, ou minuterie de droite, est configuré en mode monostable. Cela signifie que chaque fois que le temporisateur est déclenché, il donne une impulsion de sortie. Le temps d'impulsion est déterminé par R3, R5, R6 et C3. Un potentiomètre externe (100k LIN POT) est connecté pour déterminer la largeur d'impulsion, qui déterminera la rotation et l'extension de rotation sur le servo. R5 et R6 sont utilisés pour régler finement les positions les plus à l'extérieur du servo, en évitant qu'il ne vibre. La formule utilisée est la suivante:

t = 1,1 * (R3 + R5 + (R6 * POT)/(R6 + POT)) * C4

Ainsi, le temps d'impulsion minimum lorsque toutes les résistances variables sont mises à zéro est:

t = 1,1 * R3 * C4

t = 0,36 ms

Notez que ce temps de largeur d'impulsion minimum est plus long que l'impulsion de déclenchement pour garantir que le générateur de largeur d'impulsion ne génère pas constamment des impulsions de 0,36 ms l'une après l'autre, mais à une fréquence constante de +-64 Hz.

Lorsque les potentiomètres sont réglés au maximum, le temps est

t = 1,1 * (R3 + R5 + (R6 * POT)/(R6 + POT)) * C4

t = 13 ms

Cycle de service = largeur d'impulsion / intervalle.

Ainsi, à une fréquence de 64 Hz, l'intervalle d'impulsion est de 15,6 ms. Ainsi, le cycle de service varie de 2% à 20%, le centre étant de 10% (rappelez-vous que l'impulsion de 1,5 ms est la position centrale).

Par souci de clarté, les potentiomètres R5 et R6 ont été supprimés de la simulation et remplacés par une seule résistance et un seul potentiomètre.

Étape 4: Assez avec les maths ! Maintenant, jouons

Assez avec les maths ! Maintenant, jouons !
Assez avec les maths ! Maintenant, jouons !

Vous pouvez jouer la simulation ICI: il suffit de cliquer sur le bouton "Simuler", d'attendre que la simulation se charge puis de cliquer sur le bouton "Démarrer la simulation": d'attendre que la tension se stabilise, puis de cliquer et de maintenir le bouton gauche de la souris sur le potentiomètre. Faites glisser la souris et déplacez le potentiomètre pour contrôler le servo.

Vous pouvez noter que la largeur d'impulsion change sur l'oscilloscope supérieur, tandis que la fréquence de l'impulsion reste la même sur le deuxième oscilloscope.

Étape 5: Last but not least… la vraie chose

Last but not least… la vraie chose !
Last but not least… la vraie chose !
Last but not least… la vraie chose !
Last but not least… la vraie chose !

Si vous voulez aller plus loin et construire le circuit lui-même, vous pouvez trouver ici le schéma, la disposition du PCB (c'est un PCB simple face que vous pouvez facilement fabriquer à la maison), la disposition des composants, la disposition du cuivre et la liste des pièces.

Un petit mot sur les tondeuses:

  • le trimmer bleu règle la fréquence du signal
  • le trimmer noir du milieu définit la limite de rotation inférieure
  • le trimmer noir restant fixe la limite de rotation supérieure

Une note rapide utile pour calibrer le circuit pour un servo particulier:

  1. mettre le potentiomètre principal à zéro
  2. ajustez le trimmer noir du milieu jusqu'à ce que le servo soit régulièrement réglé à la limite inférieure sans bavarder
  3. maintenant régler le potentiomètre principal au maximum
  4. ajustez le trimmer noir restant jusqu'à ce que le servo soit régulièrement réglé à la limite supérieure sans bavarder

Si vous avez apprécié cette instructable, veuillez voter pour moi dans le concours !:)

Défi de trucs et astuces électroniques
Défi de trucs et astuces électroniques
Défi de trucs et astuces électroniques
Défi de trucs et astuces électroniques

Prix des juges dans le défi des trucs et astuces électroniques

Conseillé: