Table des matières:
- Étape 1: PWM Quoi ?
- Étape 2: Un peu de maths… Fréquence
- Étape 3: Un peu de maths… Pulse
- Étape 4: Assez avec les maths ! Maintenant, jouons
- Étape 5: Last but not least… la vraie chose
Vidéo: 556 Servo Driver : 5 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
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 ?
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
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
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
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
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:
- mettre le potentiomètre principal à zéro
- ajustez le trimmer noir du milieu jusqu'à ce que le servo soit régulièrement réglé à la limite inférieure sans bavarder
- maintenant régler le potentiomètre principal au maximum
- 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 !:)
Prix des juges dans le défi des trucs et astuces électroniques
Conseillé:
Romeo: Una Placa De Control Arduino Para Robótica Con Driver Incluidos - Robot Seguidor De Luz: 26 Étapes (avec Photos)
Romeo: Una Placa De Control Arduino Para Robótica Con Driver Incluidos - Robot Seguidor De Luz: Que tal amigos, siguiendo con la revisiones de placas y sensores, con el aporte de la empresa DFRobot, hoy veremos una placa con prestaciones muy interesante, oui ideal para el desarrollo de prototipos robóticos y el control de motores y servos, d
Mettre au point l'appareil photo de haute qualité Pi avec Lego et un servo : 4 étapes (avec photos)
Concentrez la caméra de haute qualité Pi avec Lego et un servo : avec une pièce Lego légèrement piratée, un servo continu et du code Python, vous pouvez focaliser votre caméra de haute qualité Raspberry Pi de n'importe où dans le monde ! La caméra Pi HQ est une pièce fantastique de kit, mais comme je l'ai découvert en travaillant sur le récent Merlin
Servo-testeur 16 canaux avec Arduino et impression 3D : 3 étapes (avec photos)
Testeur de servomoteurs à 16 canaux avec Arduino et impression 3D : à peu près tous les projets que j'ai réalisés récemment m'ont obligé à tester certains servos et à expérimenter leurs positions avant de les intégrer à l'assemblage. Je fais généralement un testeur de servo rapide sur une planche à pain et j'utilise le moniteur série dans l'ardui
NIXIE TUBE DRIVER MODULES - Partie I : 8 étapes (avec photos)
MODULES DE PILOTE DE TUBE NIXIE - Partie I: Ce que je cherchais était un moyen de gérer facilement plusieurs chiffres de tube nixie dans divers projets sur lesquels je travaillais. Je voulais vraiment un moyen facile de connecter de nombreux chiffres avec un espacement minimal entre les chiffres et de contrôler les chiffres b
NIXIE TUBE DRIVER MODULES Partie III - ALIMENTATION HV : 14 étapes (avec photos)
NIXIE TUBE DRIVER MODULES Partie III - ALIMENTATION ÉLECTRIQUE HV : Avant d'examiner la préparation du microcontrôleur Arduino/Freeduino pour la connexion aux modules de commande de tube nixie décrits dans les parties I et II, vous pouvez construire cette alimentation pour fournir la tension de tir élevée requise par les tubes nixie. Ce s