Sur facebook, nous avons un projet cool gepostet :
https://www.facebook.com/AZDelivery.de/videos/421956858229574/
Comme vous pouvez imiter l'électronique, ou le détecteur nous vous montrons ici.
De ce que nous avons besoin tout :
De microcontrôle, compatible avec Arduino ONU R3
Ultrason le détecteur HC-SR04
Steckbrücken
Servomoteur
Détecteur d'ultrason à Arduino
Logiciel pour Arduino
long entfernung1 = 0; long entfernung2 = 0; long temps=0; int nombre = 15; int valoir[16]; void setup() { #define trigger 3 //Arduino Pin 3 à Trig de HC-SR04 #define répercute-toi 2 //Arduino Pin 2 à l'écho de HC-SR04 Serial.begin(115200); //Serial Baudrate pinMode(LED_BUILTIN, SORTIE); } void loop() { for (int i=0; i <= nombre-1; i++){ temps=0; noInterrupts(); //Désactivent d'Interrupts digitalWrite(trigger, LOW); delayMicroseconds(3); digitalWrite(trigger, HIGH); //Trigger l'impulsion 10 us delayMicroseconds(20); digitalWrite(trigger, LOW); temps = pulseIn(répercute-toi, HIGH); //Mesurent du temps d'écho interrupts(); //Activation d'Interrupts valoir[i] = temps; //delay (1); } entfernung1 = 0; for (int i=0; i <= nombre -1; i++){ entfernung1 = entfernung1 + valoir[i]; } entfernung2 = entfernung1 / nombre; Serial.println(entfernung2); if (entfernung2 > 9550){ digitalWrite(LED_BUILTIN, HIGH); Serial.println("open"); delay(3000); digitalWrite(LED_BUILTIN, LOW); delay(1000); } }
Maintenant, notre Arduino reconnaît avec le détecteur d'ultrason au moins déjà une fois si nous approchent de nous et l'indique avec LED incorporés.
Dans le prochain pas, nous nous dirigeons vers un servomoteur qui doit ouvrir la corbeille à papier.
Maintenant, nous élargissons notre Verdrahtung encore d'un servomoteur.
et adaptent le logiciel :
#include <Servo.h> Servo servo1; long entfernung1 = 0; long entfernung2 = 0; long temps=0; int nombre = 15; int valoir[16]; int à = 5; int sur = 95; void setup() { #define trigger 3 //Arduino Pin 3 à Trig de HC-SR04 #define répercute-toi 2 //Arduino Pin 2 à l'écho de HC-SR04 Serial.begin(115200); //Serial Baudrate pinMode(LED_BUILTIN, SORTIE); servo1.attach(8); servo1.write(à); } void loop() { for (int i=0; i <= nombre-1; i++){ temps=0; noInterrupts(); //Désactivent d'Interrupts digitalWrite(trigger, LOW); delayMicroseconds(3); digitalWrite(trigger, HIGH); //Trigger l'impulsion 10 us delayMicroseconds(20); digitalWrite(trigger, LOW); temps = pulseIn(répercute-toi, HIGH); //Mesurent du temps d'écho interrupts(); //Activation d'Interrupts valoir[i] = temps; //delay (1); } entfernung1 = 0; for (int i=0; i <= nombre -1; i++){ entfernung1 = entfernung1 + valoir[i]; } entfernung2 = entfernung1 / nombre; Serial.println(entfernung2); if (entfernung2 > 9550){ digitalWrite(LED_BUILTIN, HIGH); Serial.println("open"); servo1.write(sur); delay(3000); digitalWrite(LED_BUILTIN, LOW); servo1.write(à); delay(1000); } }
Maintenant, vous pouvez utiliser le détecteur et servomoteur pour les gestions diverses.
Comme dans Facebookvideo est à voir, Iris pourrait être ouverte avec cela.
Nous vous souhaitons beaucoup de plaisir avec Näherungssensor et sommes tendus sur vos fins d'engagement.
3 commentaires
Hartmut Zipper
Habe ich in mein Rasenroborter am Schleifenempfänger eingebaut. Jetzt stop er vor Hindernissen bei 10 cm. Bei mir Aldi Easy Mover ist es Pin 6 am Schleifenempfänger. Bei High Stop zurück (Pip,Pip,Pip) zurück drehen und weiter mähen.
digitalWrite(LED_BUILTIN, HIGH);
digitalWrite(LED, HIGH); // zum Schalten mit Vorwiderstand 100 Ohm oder Testen
Serial.println(“open”);
delay(300);
Serial.println(“LED”);
digitalWrite(LED, LOW);
digitalWrite(LED_BUILTIN, LOW);
delay(5000);
Rudolf Reiber
Guten Tag,
bei mir tat der erste Sketch erst zuverlässig nach dem Einfügen von:
pinMode(echo, INPUT);
pinMode(trigger, OUTPUT);
in der SetUp-Routine.
T.Geffe
Hallo,
ein schoenes Projekt aber wo bekommt man den so einen Papierkorb zu kaufen?
Gruss Toralf