Ceci est une ancienne révision du document !
Telerobot
(projet démarré le 18 mai 2021)
Humanisons la visioconférence grâce à un avatar élégant.
Avec un photon, des servomoteurs, des leds, du wifi. Juste quelques bases pour le moment…
Interface web : http://lesporteslogiques.net/telerobot/
nb : 2 servomoteurs c'est trop de courant pour la broche ViN, solution élégante : en enlever un, ou ajouter une alim externe
Code photon
#define broche_bouton1 D4
#define broche_bouton2 D5
//servo1 sur D0
//servo2 sur D1
Servo servo1;
Servo servo2;
int position = 0;
void setup() {
servo1.attach(D0);
servo1.write(90); // test
servo2.attach(D1);
servo2.write(90); // test
pinMode(D7, OUTPUT);
pinMode(broche_bouton1, INPUT);
pinMode(broche_bouton2, INPUT);
Particle.function("alarme", declencherAlarme);
}
int declencherAlarme(String commande) {
if (commande == "m1gauche") {
servo1.write(0);
digitalWrite(D7, HIGH);
delay(1000);
servo1.write(90);
digitalWrite(D7, LOW);
} else if (commande == "m1droite") {
servo1.write(180);
digitalWrite(D7, HIGH);
delay(1000);
servo1.write(90);
digitalWrite(D7, LOW);
} else if (commande == "m2gauche") {
servo2.write(0);
digitalWrite(D7, HIGH);
delay(1000);
servo2.write(25);
digitalWrite(D7, LOW);
} else if (commande == "m2droite") {
servo2.write(180);
digitalWrite(D7, HIGH);
delay(1000);
servo2.write(90);
digitalWrite(D7, LOW);
}
}
void loop() {
if (digitalRead(broche_bouton1) == HIGH) {
servo1.write(25);
digitalWrite(D7, HIGH);
delay(100);
servo1.write(90);
digitalWrite(D7, LOW);
delay(500);
}
if (digitalRead(broche_bouton2) == HIGH) {
servo2.write(25);
digitalWrite(D7, HIGH);
delay(100);
servo2.write(90);
digitalWrite(D7, LOW);
delay(1000);
}
}