Bonjour Guillaume, pas moi en tous les cas...Guill a écrit:Quelqu'un maitrise-t-il le sujet?
#include <WiFiClient.h>
#include <Servo.h>
Servo panservo; // create servo object to control a pan servo
Servo tiltservo; // create servo object to control a tilt servo
// valeurs servo en ms et duree
int repos = 1487; // valeur neutre par defaut
int stock = 1500 - repos; // ecart par rapport à 1500 qui sera stocke eeprom
int tilt = 1550; // tilt légère plongée
void setup() {
Serial.begin(115200);
if(!panservo.attached() )panservo.attach(D4); // attaches the servo on pin 4 to the servo object
panservo.writeMicroseconds(repos);
tiltservo.attach(D3); // attaches the servo on pin D3 to the servo object
tiltservo.writeMicroseconds(tilt); // environ 0° horizontal // signal de fin de setup
delay(1000);
tiltservo.writeMicroseconds(tilt - 250); // env 40° haut
delay(250);
tiltservo.writeMicroseconds(tilt); // environ 0° horizontal
delay(400);
Serial.println("fin setup ...");// fin setup
delay(100);
}
void loop() {
}
void rotating_RC() { // rotation de la nacelle
int droite = repos +15; // mouvement pour le pan mouvements inverses ??
int gauche = repos -15;
if(!panservo.attached()) panservo.attach(D4); // attaches the servo on pin 4 to the servo object
if (!tiltservo.attached())tiltservo.attach(D3);
Serial.println (" gauche") ;
panservo.writeMicroseconds(gauche);
delay(250);
panservo.writeMicroseconds(repos);
Serial.print("valeur stop = " );
Serial.println(repos);
Serial.print (" gauche + ") ;
panservo.writeMicroseconds(gauche-10);
delay(600);
panservo.writeMicroseconds(repos);
break;
}
delai = millis();
}
Phil78 a écrit:Je complète après une petite recherche au cas où tu ne serais pas passer par là...
mich2e a écrit: (1500 étant de mémoire la position centrale pour un servo bien calé)
Guill a écrit:J'ai encore besoin de recherche pour comprendre le truc, désolé d'avance pour les geeks qui doivent me trouver lourd
tu as été un peu trop gourmand sur ces 2 derniers coups et tu en as mis un peu trop dans les URL, ça déborde et on ne peut pas activer les liens.Guill a écrit:suivanthttps://www.parallax.com/sites/d ... n-v2.2.pdf
Trouver les infos n'est pas évident, surtout quand on n'y comprend rien.
Par ailleurs, il me semble avoir lu qu'il est préférable d'alimenter les servos par une alim séparée (tout en reliant les 2 masses), car l'alim par arduino d'un servo est très limite.
Guill a écrit:il y a quelque temps Etienne avait posté ce lien https://youtu.be/wAvMnoiuRfU. J'aimerais arriver à ce résultat..
#include <Servo.h> // On oublie pas d'ajouter la bibliothèque !
int arret = 1500; // censée être à mi-chemin entre 1000 et 2000, un bon point de départ
int temps = arret;
int ecart = 10;
Servo monServo;
void setup()
{
Serial.begin(115200);
Serial.println("Réglage servo 360");
monServo.attach(2);
// on démarre à une valeur censé être la moitié de
// l'excursion totale de l'angle réalisé par le servomoteur
monServo.writeMicroseconds(arret);
}
void loop()
{
// des données sur la liaison série ? (lorsque l'on appuie sur 'a' ou 'd')
if(Serial.available())
{
char commande = Serial.read(); // on lit
// on modifie la consigne si c'est un caractère qui nous intéresse
if(commande == 'a')
temps = arret;
else if(commande == 'p')
temps += ecart ; // ajout de 10µs au temps HAUT
else if(commande == 'm')
temps -= ecart ; // retrait de 10µs au temps HAUT
// on modifie la consigne du servo
monServo.writeMicroseconds(temps);
// et on fait un retour sur la console pour savoir où on est rendu
Serial.println(temps, DEC);
}
}
Guill a écrit:Quand je serais arrivé là je vous paye le Champagne
Hygrekaile a écrit:Aux 774 membres sont inscrits sur le forum et qui lisent ce sujet?
Guill a écrit:J'ai bien dit quand je serais arrivé à cette étape... de plus il faudra venir en Bretagne.
Retourner vers L'électronique embarquée et au sol
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 19 invités