14/09/2019 Mr Touré Project 05 Mood Cue – Programming in Arduino
La programmation en Arduino
Projet 05 contrôle du servomoteur(Mood Cue)
Arriver à ce projet ne signifie pas seulement que vous commencez à vous familiariser avec Arduino,
mais aussi que vous êtes déterminé à pouvoir créer des choses incroyables avec. Alors tout d’abord,
nous voudrions vous féliciter.
Néanmoins, il est probablement vrai de dire que savoir allumer certaines LED ne fera pas la différence.
Mais c'est sur le point de changer. Sur ce post, nous allons expliquer comment me re les choses en
mouvement.
Pour cela, un servomoteur va être utilisé. Comme vous le savez peut-être, il s’agit d’une sorte de moteur
qui se déplace dans une position et le reste si aucun nouvel ordre n’est annoncé. En outre, il convient
de noter qu'un servo peut simplement être tourné à 180 degrés.
Pour que le servo sache quel angle il doit faire pivoter, nous allons utiliser la même technique que celle
utilisée pour le PWM dans le projet précédent. Comme vous devez vous en rappeler, en fonction du
réglage de la largeur d'impulsion, les informations transmises par le servo seraient les unes ou les
autres. Pour cela, une entrée analogique, un potentiomètre va être utilisé. De ce e manière, lors de la
rotation du potentiomètre, le servo fera de même.
Nous utilisons également deux condensateurs afin d'a énuer la chute de tension lors du déplacement
du servomoteur.
Après avoir compris l'objectif principal de ce projet, l'étape suivante consiste à le construire. Pour ce
faire, les éléments nécessaires sont: un potentiomètre, un servomoteur, deux condensateurs et quelques
câbles.
Pour établir les connexions correctement, l’image suivante vous aidera. Néanmoins, n'oubliez pas qu'il
est important de comprendre chaque étape que vous prenez. Si vous avez des doutes, n'hésitez pas à
écrire un commentaire. Notre équipe serait reconnaissante de vous aider.
14/09/2019 Mr Touré Project 05 Mood Cue – Programming in Arduino
Comme indiqué dans l'image précédente, le potentiomètre doit être connecté à une entrée analogique
aussi longtemps que l'entrée 5V et à la terre. Sinon, le servo doit être sur une entrée numérique ainsi
que sur le 5V et le GND. Assurez-vous de connecter les condensateurs correctement car ils ont la
polarité.
Comme toujours, nous incluons le code (contenant quelques explications utiles) utilisé pour réaliser ce
projet. Cependant, dans ce cas, il ne présente aucune différence par rapport au code proposé par le Kit
de démarrage Arduino.
Avant de lire le code, notez qu'une bibliothèque de servomoteurs (h
ps://[Link]/en/Reference/Servo) est utilisée. Après l'avoir importé, vous pouvez utiliser
toutes les fonctions qu'il contient, ce qui facilite grandement le code.
#include < Servo . h > // Importer le Servo lybrary
Servo MyServo ; // Variable se référant à la servo lybrary. Il a toutes les
int const PinPot = A0 ; // Connexion du potentiomètre à un analogue et créa
int ValuePot ; // Création de variable int Angle ; // Création d'une variable
void setup ( ) {
MyServo . attacher ( 9 ) ;// Relier le servo à la broche 9 Série
. commencer ( 9600 ) ; // Initialisation du port série
}
Void loop ( ) {
ValuePot = analogRead ( PinPot ) ; // Lecture du numéro de
14/09/2019 Mr Touré Project 05 Mood Cue – Programming in Arduino
série de PinPot . print ( "Position du potentiomètre:" ) ; // Affichage de l
série Série .print ( ValuePot ) ;
Angle = map ( ValuePot , 0 , 1023 , 0 , 179 ) ; // Modification des valeurs
Série . imprimer (", Angle: ");
[Link](Angle);
}
Apart from the specific functions from the imported library which are clarified in the code. Is to notice
another new function: map(). Don’t forget to use it when changing a numeric scale.
To finish, just connect your Arduino Uno to electricity and move the potentiometer as it were a joystick.
The result should be the following.
Thanks for reading and see you on the next post!
Celui qui a écrit le code a manqué la ligne pour écrire les valeurs mappées sur le servo. Vous
savez, la partie du code qui * fait réellement ce que vous voulez faire. * Vous devez ajouter:
[Link] (Angle);
après le [Link] (Angle); ligne. Pour ceux qui écrivent le code ci-dessus et qui est déçu que