(Page créée avec « {{Item |Main_Picture=Item-micro-servo___rotation_continue_micro-servo-a-rotation-continue-fs90r.jpg |Description=Ce petit moteur peut être alimenté directement depuis un... ») |
|||
(3 révisions intermédiaires par un autre utilisateur non affichées) | |||
Ligne 5 : | Ligne 5 : | ||
|Cost=5 | |Cost=5 | ||
|Currency=EUR (€) | |Currency=EUR (€) | ||
− | |ItemLongDescription=Il existe deux types de servomoteurs : | + | |ItemLongDescription=Il existe deux types de servomoteurs : |
− | * "'''classiques'''", qui permettent de se positionner à un angle entre 0 et 180° | + | * "'''classiques'''", qui permettent de se positionner à un angle entre 0 et 180°, |
− | * "'''à rotation continue'''", tel que celui-ci, où l'angle est remplacé par une vitesse. | + | * et "'''à rotation continue'''", tel que celui-ci, où l'angle est remplacé par une vitesse (et un sens de rotation). |
− | Ces servomoteurs ont trois connexions : 2 pour l'alimentation (GND et 5V), et la troisième est utilisée pour définir l'angle ou la vitesse de rotation, qui va dépendre du signal reçu. Celui-ci est de type PWM (Pulse-Width Modulation = modulation de largeur d'impulsion). Cela signifie qu'on utilise simplement une des sorties numériques ('pins') du microcontrôleur, où l'on va alterner les 0 et les 1. C'est la durée pendant laquelle on reste en position 1, qui donnera la valeur considérée par le servomoteur : | + | Ces servomoteurs ont trois connexions : 2 pour l'alimentation (GND et 5V), et la troisième est utilisée pour définir l'angle ou la vitesse de rotation, qui va dépendre du signal reçu. Celui-ci est de type PWM (Pulse-Width Modulation = modulation de largeur d'impulsion). Cela signifie qu'on utilise simplement une des sorties numériques ('pins') du microcontrôleur, où l'on va alterner les 0 et les 1. C'est la durée pendant laquelle on reste en position 1, qui donnera la valeur considérée par le servomoteur :<br />{{#annotatedImageLight:Fichier:Item-micro-servo a rotation continue Signal servomoteur.jpg|0=1094px|hash=|jsondata=|mediaClass=Image|type=frameless|alt=(image Signal PWM servomoteur)|align=center|src=https://www.wikidebrouillard.org/images/4/4f/Item-micro-servo_a_rotation_continue_Signal_servomoteur.jpg|href=./Fichier:Item-micro-servo a rotation continue Signal servomoteur.jpg|resource=./Fichier:Item-micro-servo a rotation continue Signal servomoteur.jpg|caption=Signal PWM servomoteur|size=1094px}} |
− | <br />{{#annotatedImageLight:Fichier:Item-micro-servo a rotation continue Signal servomoteur.jpg|0=1094px|hash=|jsondata=|mediaClass=Image|type=frameless|alt=(image Signal PWM servomoteur)|align=center|src=https://www.wikidebrouillard.org/images/4/4f/Item-micro-servo_a_rotation_continue_Signal_servomoteur.jpg|href=./Fichier:Item-micro-servo a rotation continue Signal servomoteur.jpg|resource=./Fichier:Item-micro-servo a rotation continue Signal servomoteur.jpg|caption=Signal PWM servomoteur|size=1094px}} | ||
Ligne 17 : | Ligne 16 : | ||
− | '''MAIS PAS DE PANIQUE ! :-)''' .. | + | '''MAIS PAS DE PANIQUE ! :-)''' ... |
+ | La bibliothèque "Servo.h" du logiciel Arduino, facilite grandement l'utilisation d'un servomoteur. | ||
− | ' | + | Une fois déclaré, l'activation du servomoteur se fait via |
+ | [nom du servo].write(A/V); | ||
− | + | où A/V est une valeur entre 0 et 180, et qui donne l'angle (servo classique), ou la vitesse (servo à rotation continue). | |
− | |||
− | + | '''Caractéristiques techniques :'''<br /> | |
− | (...) | + | *Dimensions : 23,2 x 12,5 x 22 mm |
+ | *Poids : 9 g | ||
+ | *Vitesse de fonctionnement : 110 RPM (4,8 V) / 130 RPM (6 V) | ||
+ | *Couple : 1,3 kg.cm/18,09 oz.in (4,8 V) / 1,5 kg.cm/20,86 oz.in (6 V) | ||
+ | *Tension de fonctionnement : 4,8 à 6 V | ||
+ | *Système de contrôle : Analogique | ||
+ | *Direction : CCW (sens inverse de l'aiguille d'une montre) | ||
+ | *Amplitude : 360° | ||
+ | *Impulsion requise : 900 us à 2 100 us | ||
+ | *Type de roulement : Aucun | ||
+ | *Type de roue dentée : Plastique | ||
+ | *Type de moteur : Métal | ||
+ | *Longueur du fil : 20 cm | ||
− | + | == Code Minimal == | |
− | |||
− | + | Le servomoteur à rotation continu se pilote en fonction de la valeur de l'angle qu'on lui donne, comme ceci : | |
+ | * à 90 il est immobile. | ||
+ | * entre 0 et 90 il tourne dans un sens | ||
+ | * entre 90 et 180 il tourne dans l'autre sens. | ||
− | |||
− | |||
− | + | {| class="wikitable" cellspacing="0" border="0" | |
− | + | | height="17" bgcolor="#999999" align="left" | | |
− | + | | valign="middle" bgcolor="#999999" align="center" | | |
− | + | | bgcolor="#999999" align="center" |Servo moteur | |
− | + | |- | |
− | + | | rowspan="2" valign="middle" height="49" bgcolor="#999999" align="center" |Avant le Setup | |
− | + | | valign="middle" bgcolor="#999999" align="center" |Importation de la bibliothèque | |
− | + | | valign="middle" align="left" |#include <Servo.h> | |
− | + | |- | |
− | + | | valign="middle" bgcolor="#999999" align="center" |Création de l’objet | |
− | + | | valign="middle" align="left" |Servo monservo; | |
− | + | |- | |
− | + | | valign="middle" height="17" bgcolor="#999999" align="center" |Dans le Setup | |
+ | | valign="middle" bgcolor="#999999" align="center" |Démarrage de l’objet | ||
+ | | valign="middle" align="left" |monservo.attach(broche du servo); | ||
+ | |- | ||
+ | | valign="middle" height="28" bgcolor="#999999" align="center" |Dans le Loop | ||
+ | | valign="middle" bgcolor="#999999" align="center" |Utilisation | ||
+ | | valign="middle" align="left" |monservo.write(180);<br /> | ||
+ | |}<br /><syntaxhighlight lang="arduino" line="1"> | ||
+ | #include <Servo.h> //importation de la bibliothèque servo | ||
+ | |||
+ | Servo monservo; // Création de l'objet monservo | ||
+ | |||
+ | void setup() { | ||
+ | monservo.attach(12); //Démarrage de l'objet | ||
+ | |||
+ | } | ||
+ | |||
+ | void loop() { | ||
+ | monservo.write(180); // En avant toute ! | ||
+ | delay(1000); // pendant une seconde | ||
+ | monservo.write(0); // En arrière toute ! | ||
+ | delay(1000); // pendant une seconde | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | |||
+ | Pour les servomoteur ordinaires, voir [[Item:Servomoteur]] | ||
}} | }} | ||
{{Tuto Status | {{Tuto Status | ||
− | |Complete= | + | |Complete=Published |
}} | }} |
Ce petit moteur peut être alimenté directement depuis un microcontrôleur de type Arduino ou D1 mini, à l'aide de la bibliothèque "servo.h".
Il existe deux types de servomoteurs :
(les graphiques ne sont pas à l'échelle, la durée du "1" va de 2ms à 10 ms sur un cycle de 20 ms)
MAIS PAS DE PANIQUE ! :-) ...
La bibliothèque "Servo.h" du logiciel Arduino, facilite grandement l'utilisation d'un servomoteur.
Une fois déclaré, l'activation du servomoteur se fait via
[nom du servo].write(A/V);
où A/V est une valeur entre 0 et 180, et qui donne l'angle (servo classique), ou la vitesse (servo à rotation continue).
Caractéristiques techniques :
Le servomoteur à rotation continu se pilote en fonction de la valeur de l'angle qu'on lui donne, comme ceci :
Servo moteur | ||
Avant le Setup | Importation de la bibliothèque | #include <Servo.h> |
Création de l’objet | Servo monservo; | |
Dans le Setup | Démarrage de l’objet | monservo.attach(broche du servo); |
Dans le Loop | Utilisation | monservo.write(180); |
1 #include <Servo.h> //importation de la bibliothèque servo
2
3 Servo monservo; // Création de l'objet monservo
4
5 void setup() {
6 monservo.attach(12); //Démarrage de l'objet
7
8 }
9
10 void loop() {
11 monservo.write(180); // En avant toute !
12 delay(1000); // pendant une seconde
13 monservo.write(0); // En arrière toute !
14 delay(1000); // pendant une seconde
15 }
Pour les servomoteur ordinaires, voir Item:Servomoteur
Item-micro-servo___rotation_continue_micro-servo-a-rotation-continue-fs90r.jpg Published
Vous avez entré un nom de page invalide, avec un ou plusieurs caractères suivants :
< > @ ~ : * € £ ` + = / \ | [ ] { } ; ? #