Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Robotersystem zur Erkennung von Menschen mit Arduino Uno

Komponenten und Verbrauchsmaterialien

Arduino UNO
× 1
Entwicklungsplatine, Motorsteuerungsschild
× 1
SG90 Micro-Servomotor
× 1
DC-Motor, 12 V
× 4
Ultraschallsensor - HC-SR04 (Generic)
× 1
DHT11 Temperatur- und Feuchtigkeitssensor (4 Pins)
× 1
9-V-Batterie (generisch)
× 1
Jumper (generisch)
× 1
PIR-Sensor, 7 m
× 1

Notwendige Werkzeuge und Maschinen

Multitool, Schraubendreher
Lötkolben (generisch)
Lötflussmittel, Löten
Lötdraht, bleifrei
Heißklebepistole (generisch)

Apps und Onlinedienste

Arduino-IDE
Microsoft Windows 10
Kontrollzentrum-Android-App

Über dieses Projekt

Dieses System entwickelt ein mobiles Rettungsroboter-Fahrzeugsystem auf Basis von Arduino, um den Menschen, die in Naturkatastrophen wie Katastrophen, Erdbeben, Überschwemmungen usw. gefangen sind, rechtzeitig zu helfen in den Kontrollraum, damit das Rettungsteam aus Experten und Ärzten zur Erstversorgung an den Ort des Opfers und an einen sicheren Ort oder ins Krankenhaus geschickt werden kann. Der gesamte Vorgang erfolgt innerhalb weniger Sekunden, da das System von einer Arduino-Einheit gesteuert wird. PIR-Sensoren sind Passiv-Infrarot-Sensoren, die die Bewegung von Personen anhand von Veränderungen der Infrarot-(Wärme-)Werte von umgebenden Objekten erkennen. Der menschliche Körper sendet Wärmestrahlung mit einer Wellenlänge von etwa 10 Mikrometern aus. Es wird vom PIR-Sensor empfangen und manipuliert, um Menschen zu erkennen. Es arbeitet mit 5V DC. Die Bewegung des Menschen kann erkannt werden, indem auf eine plötzliche Änderung der umgebenden IR-Muster überprüft wird. Hindernissensor erkennt das Hindernis und sendet die analogen Signale an den Arduino. Arduino ist so programmiert, dass es den Roboter automatisch je nach erkanntem Hindernis führt und die Informationen des Menschen über die Bluetooth-Technologie an die Fernbedienung sendet. Die Daten werden in der Basisstation (Kontrollzentrum) empfangen. Durch die Analyse der Daten kann das Rettungsteam die notwendigen Schritte unternehmen, um die gefangenen Menschen zu retten.

Code

  • Menschliche Erkennung.ino
Menschliche Erkennung.inoArduino
#include  // #include  // Sie können die Codebibliothek unten herunterladen#include  // // Ultranic Pin Configuration #define TRIG_PIN A0#define ECHO_PIN A1 #define MAX_DISTANCE 400#define MAX_SPEED 255#define MAX_SPEED_OFFSET -8 #define COLL_DIST 20#define TURN_DIST COLL_DIST+10#define ACT_TIME 250 int CalibrationTime =30; // die Zeit, in der der Sensor einen niedrigen Impuls ausgibt, unsigned int lowIn; // die Anzahl der Millisekunden, die der Sensor niedrig sein muss // bevor wir davon ausgehen, dass alle Bewegungen gestoppt wurdenlong unsigned int pause =5000; boolesches lockLow =true;boolesches takeLowTime; int pirPin =A3; // der digitale Pin, der mit dem Ausgang des PIR-Sensors verbunden istint ledPin =A2; NewPing Sonar (TRIG_PIN, ECHO_PIN, MAX_DISTANCE); AF_DCMotor motorR(1, MOTOR12_1KHZ); // Motor #1 einstellen, 1kHz PWMAF_DCMotor motorL (4, MOTOR12_1KHZ); // Motor #2 einstellen, 1kHz PWM Servo Myservo; // Servo-Objekt zur Steuerung eines Servos einstellen String motorSet =""; int curDist =0, pos, speedSet =0; //int pos; //int speedSet =0; Void setup () { Serial.begin (9600); pinMode (pirPin, EINGANG); pinMode (ledPin, AUSGANG); digitalWrite (pirPin, NIEDRIG); // Geben Sie dem Sensor etwas Zeit, um Serial.print zu kalibrieren ("kalibrierender Sensor"); for(int i =0; i  pause) { // stellt sicher, dass dieser Codeblock erst wieder ausgeführt wird, nachdem // eine neue Bewegungssequenz erkannt wurde lockLow =true; Serial.print ("Bewegung endete um"); // Ausgabe Serial.print ((millis() - Pause)/1000); Serial.println("sec"); Verzögerung (50); } } } Void checkPath () { Int curLeft =0; int curRight =0; int curFront =0; curDist =0; checkForward(); myservo.write(135); Verzögerung (100); für (pos =135; pos>=45; pos -=45) { myservo.write (pos); Verzögerung (170); curDist =readPing(); if (curDist  90) {veerRight(); aufrechtzuerhalten. aufrechtzuerhalten. Void veerRight () { motorR.run (BACKWARD); motorL.run(FORWARD); Verzögerung(ACT_TIME); motorR.run(FORWARD); motorL.run(FORWARD); motorSet ="FORWARD";} void veerLeft() { motorL.run(BACKWARD); motorR.run(FORWARD); Verzögerung(ACT_TIME); motorL.run(FORWARD); motorR.run(FORWARD); motorSet ="FORWARD";} void checkCourse() { moveBackward(); Verzögerung(ACT_TIME); moveStop(); setCourse();} void setCourse() { if (pos <90) { turnRight(); } if (pos> 90) { turnLeft(); }} Void moveBackward () { motorSet ="BACKWARD"; motorR.run(RÜCKWÄRTS); // Rechten Motor rückwärts drehen motorL.run (BACKWARD); // Linken Motor rückwärts drehen für (speedSet =0; speedSet  

Schaltpläne

Dieses Blockdiagramm zeigt die Schnittstelle zwischen den Sensoren und dem Arduino Board Dieser Schaltplan zeigt die Anschlusskonfigurationen zwischen verschiedenen Sensoren mit dem Arduino Uno Board Dieses Flussdiagramm zeigt, wie das System funktioniert

Herstellungsprozess

  1. SONBI ROBOTER MENSCHLICHE ERKENNUNG MIT KINECT UND HIMBEE PI
  2. Squid Games Doll-Build mit Arduino UNO
  3. Senden Sie Sensordaten von einem Arduino zu einem anderen mit Firebase
  4. Anwesenheitssystem mit Arduino und RFID mit Python
  5. DIY Infrarot-Herzschlagsensor mit Arduino
  6. Android-gesteuertes Spielzeug mit Raspberry Motor Shield
  7. IOT - Smart Jar mit ESP8266, Arduino und Ultraschallsensor
  8. WebServerBlink mit Arduino Uno WiFi
  9. Waldbrandüberwachungs- und -erkennungssystem (mit SMS-Warnungen)
  10. Verwenden des tragbaren Pulssensors MAX30100 mit Arduino