« Maquette de demonstration actionneurs » : différence entre les versions

De Wiki Clubelek
Thomas.vadebout (discussion | contributions)
intro
 
Thomas.vadebout (discussion | contributions)
servomoteur
 
Ligne 7 : Ligne 7 :
=== Installation de l'environnement de développement Arduino et des librairies nécessaire ===
=== Installation de l'environnement de développement Arduino et des librairies nécessaire ===
Télécharger et installer l'IDE arduino, disponible sur le site officiel Arduino : https://www.arduino.cc/en/software
Télécharger et installer l'IDE arduino, disponible sur le site officiel Arduino : https://www.arduino.cc/en/software
Suivre le tutoriel suivant pour installer les librairies nécessaires pour utiliser le microcontroleur de la maquette, le RP2040 : https://www.upesy.fr/blogs/tutorials/install-raspberry-pi-pico-on-arduino-ide-software?srsltid=AfmBOoqTdEalgX2XGUPj5kofNxmsK-H5_WYeZB_U-ZAHOAWktluv8SyF
Selectionner la board "Raspberry PI Pico"
== Les actionneurs ==
=== Le servomoteur ===
Un servomoteur est un moteur asservi en position ! Néanmoins, celui-ci a souvent une course limitée de 180° ou 360°.
Exemples d'utilisation d'un servomoteur :
* Une pince avec une position ouverte et fermée
* Réaliser une liaison pivot pour un bras articulé
Le servomoteur utilisé sur la maquette est le MG90S.
==== Branchement du servomoteur ====
Le servomoteur a 3 broches :
* Une broche d'alimentation positive (en général +3.3V ou +5V) -> '''fil rouge -> brancher ce fil sur la rail +'''
* Une broche de masse (GND) -> '''fil marron -> brancher ce fil sur le rail -'''
* Une broche de commande -> '''fil orange -> brancher ce fil sur la pin 2 du microcontroleur'''
Le microcontroleur communique les commandes au servomoteur via le fil orange. Dans le cas du servo de la maquette, c'est une commande classique.
Celle-ci est expliquée sur le site suivant : https://arduino.blaisepascal.fr/controle-dun-servomoteur/. Cela n'est pas nécessaire de comprendre comment cela fonctionne. La librairies Servo sur arduino s'occupe de cette partie là pour nous !
==== Code de demonstration ====
Copier ce code dans l'IDE arduino et televerser vers le microcontroleur ( celui doit être branché :') )
Modifier le code pour aller un peu plus loin et comprendre comment utiliser un servo<syntaxhighlight lang="arduino" line="1">
// Inclusion de la bibliothèque Servo pour contrôler le servomoteur
#include <Servo.h> 
// Création d'un objet Servo
Servo servo; 
// Définition du numéro de broche (pin) où le servomoteur est connecté
#define SERVO_PIN 2 
void setup() {
  // Initialisation de la communication série à une vitesse de 115200 bauds
  Serial.begin(115200);
  // Attache l'objet servo à la broche définie (pin 2)
  servo.attach(SERVO_PIN);
}
void loop() {
  // Pause de 1 seconde (1000 ms)
  delay(1000);
  // Commande le servo de se déplacer à 60 degrés et affiche un msg dans le port série
  servo.write(60);
  Serial.println("Servo en position 60°");
  // Pause de 1 seconde
  delay(1000);
  // Commande le servo de se déplacer à 30 degrés et affiche un msg dans le port série
  servo.write(30);
  Serial.println("Servo en position 30°");
}
</syntaxhighlight>

Dernière version du 2 octobre 2024 à 20:05

Introduction

La maquette de demonstration des actionneurs permet de comprendre l'objectif de chaque actionneur et également de voir le code associé à un actionneur.

Environnement de développement

Pour faire fonctionner les actionneurs, un microcontroleur doit être utilisé. Des codes Arduino sont fournis pour faire fonctionner chaque actionneurs. Il faut donc installer l'IDE (environnement de développement) Arduino pou pouvoir modifier le code et le televerser sur le microcontroleur.

Installation de l'environnement de développement Arduino et des librairies nécessaire

Télécharger et installer l'IDE arduino, disponible sur le site officiel Arduino : https://www.arduino.cc/en/software

Suivre le tutoriel suivant pour installer les librairies nécessaires pour utiliser le microcontroleur de la maquette, le RP2040 : https://www.upesy.fr/blogs/tutorials/install-raspberry-pi-pico-on-arduino-ide-software?srsltid=AfmBOoqTdEalgX2XGUPj5kofNxmsK-H5_WYeZB_U-ZAHOAWktluv8SyF

Selectionner la board "Raspberry PI Pico"

Les actionneurs

Le servomoteur

Un servomoteur est un moteur asservi en position ! Néanmoins, celui-ci a souvent une course limitée de 180° ou 360°.

Exemples d'utilisation d'un servomoteur :

  • Une pince avec une position ouverte et fermée
  • Réaliser une liaison pivot pour un bras articulé


Le servomoteur utilisé sur la maquette est le MG90S.

Branchement du servomoteur

Le servomoteur a 3 broches :

  • Une broche d'alimentation positive (en général +3.3V ou +5V) -> fil rouge -> brancher ce fil sur la rail +
  • Une broche de masse (GND) -> fil marron -> brancher ce fil sur le rail -
  • Une broche de commande -> fil orange -> brancher ce fil sur la pin 2 du microcontroleur


Le microcontroleur communique les commandes au servomoteur via le fil orange. Dans le cas du servo de la maquette, c'est une commande classique.

Celle-ci est expliquée sur le site suivant : https://arduino.blaisepascal.fr/controle-dun-servomoteur/. Cela n'est pas nécessaire de comprendre comment cela fonctionne. La librairies Servo sur arduino s'occupe de cette partie là pour nous !

Code de demonstration

Copier ce code dans l'IDE arduino et televerser vers le microcontroleur ( celui doit être branché :') )

Modifier le code pour aller un peu plus loin et comprendre comment utiliser un servo

// Inclusion de la bibliothèque Servo pour contrôler le servomoteur
#include <Servo.h>  

// Création d'un objet Servo
Servo servo;  

// Définition du numéro de broche (pin) où le servomoteur est connecté
#define SERVO_PIN 2  

void setup() {
  // Initialisation de la communication série à une vitesse de 115200 bauds
  Serial.begin(115200);

  // Attache l'objet servo à la broche définie (pin 2)
  servo.attach(SERVO_PIN);
}

void loop() {
  // Pause de 1 seconde (1000 ms)
  delay(1000);

  // Commande le servo de se déplacer à 60 degrés et affiche un msg dans le port série
  servo.write(60);
  Serial.println("Servo en position 60°");

  // Pause de 1 seconde
  delay(1000);

  // Commande le servo de se déplacer à 30 degrés et affiche un msg dans le port série
  servo.write(30);
  Serial.println("Servo en position 30°");
}