Inhaltsverzeichnis:

Feuerjagdroboter - Gunook
Feuerjagdroboter - Gunook

Video: Feuerjagdroboter - Gunook

Video: Feuerjagdroboter - Gunook
Video: 24 Stunden KOPFGELD gegen ROBOTER POLIZEI überleben! 2024, Juli
Anonim
Image
Image
Anschließen des Flammensensors an PICO
Anschließen des Flammensensors an PICO

In diesem Projekt werden wir einen Feuerwehrroboter entwickeln, der einer Flamme nachjagt und sie löscht, indem er Luft von einem Ventilator darauf bläst.

Nachdem Sie mit diesem Projekt fertig sind, wissen Sie, wie Sie Flammensensoren mit PICO verwenden, ihren Ausgangswert lesen und darauf reagieren und wie Sie Darlington-Sensoren mit Gleichstrommotoren verwenden und steuern. Das natürlich zusammen mit einem sehr coolen Feuerwehrroboter.

Lieferungen

  • PICO
  • Flammensensor
  • Kleiner Gleichstrommotor
  • Kleiner Propeller
  • L298N H-Brücken-Motortreiber
  • PCA9685 12-Bit-16-Kanal-PWM-Treiber
  • 2WD-Roboter-Chassis-Kit
  • Mini-Steckbrett
  • Überbrückungsdrähte
  • Schrauben und Muttern

Schritt 1: Anschließen des Flammensensors an PICO

Anschließen des Flammensensors an PICO
Anschließen des Flammensensors an PICO

Beginnen wir mit dem wichtigsten Teil unseres Feuerwehrroboters, nämlich der Fähigkeit, Brände zu erkennen, wenn sie auftreten. Deshalb beginnen wir mit den Komponenten, die für die Branderkennung verantwortlich sind, aber bevor wir das tun, bauen wir unser 2WD-Roboter-Chassis-Kit zusammen, da wir unseren Roboter darauf aufbauen werden.

Wir werden in diesem Projekt 3 Flammensensoren verwenden und den Roboter anhand ihrer Messwerte unabhängig bewegen lassen. Wir platzieren diese Sensoren auf der mittleren, linken und rechten Seite des Roboterchassis. Und sie werden so platziert, dass sie die Flammenquelle genau lokalisieren und löschen können.

Bevor wir mit dem Einsatz der Flammensensoren beginnen, lassen Sie uns über ihre Funktionsweise sprechen: Flammensensormodule bestehen hauptsächlich aus Infrarot-Empfänger-LEDs, die das von Flammen ausgestrahlte Infrarotlicht erkennen und die Daten entweder als digitalen oder analogen Eingang in unsere In diesem Fall verwenden wir einen Flammensensor, der einen digitalen Ausgang sendet.

Pinbelegung des Flammensensormoduls:

  • VCC: positive 5 Volt, verbunden mit dem VCC-Pin von PICO.
  • GND: negativer Pin, verbunden mit dem GND-Pin von PICO.
  • D0: der digitale Ausgangspin, verbunden mit dem gewünschten Digital auf PICO.

Verbinden wir es nun mit unserem PICO, um unsere Verdrahtung und Codelogik zu testen, um sicherzustellen, dass alles ordnungsgemäß funktioniert. Das Anschließen der Flammensensoren ist sehr einfach, verbinden Sie einfach VCC und GND der Sensoren mit VCC bzw. GND von PICO und verbinden Sie dann die Ausgangspins wie folgt:

  • D0 (rechter Flammensensor) → A0 (PICO)
  • D0 (mittlerer Flammensensor) → A1 (PICO)
  • D0 (linker Flammensensor) → A2 (PICO)

Schritt 2: Codierung von PICO mit den Flammensensoren

Codierung von PICO mit den Flammensensoren
Codierung von PICO mit den Flammensensoren
Codierung von PICO mit den Flammensensoren
Codierung von PICO mit den Flammensensoren

Nachdem wir unsere Flammensensoren mit PICO verbunden haben, beginnen wir mit der Codierung, damit wir wissen, vor welchem Flammensensor eine Flamme liegt und vor welchem nicht.

Codelogik:

  • Stellen Sie die A0-, A2- und A3-Pins von PICO als INPUT-Pins ein
  • Lesen Sie jeden Sensorausgangswert
  • Drucken Sie jeden Sensorausgangswert auf dem seriellen Monitor aus, damit wir diagnostizieren können, ob alles richtig funktioniert oder nicht.

Bitte beachten Sie, dass unsere Sensoren einen niedrigen Wert von "0" haben, wenn sie Feuer erkennen, und einen hohen Wert von "1", wenn sie kein Feuer erkennen.

Um Ihren Code zu testen, öffnen Sie Ihren seriellen Monitor und sehen Sie sich an, wie er sich ändert, wenn Sie Feuer davor haben, verglichen mit dem, wenn er es tut. Die beigefügten Bilder zeigen die Messwerte für das Fehlen einer Flamme und die Messwerte einer einzelnen Flamme vor dem mittleren Sensor.

Schritt 3: Anschließen des Lüfters

Anschließen des Lüfters
Anschließen des Lüfters

Um einen Feuerwehrroboter effektiv zu machen, muss er die Fähigkeit haben, Feuer zu bekämpfen, und dafür werden wir einen Ventilator entwickeln, mit dem wir auf das Feuer zielen und es löschen. Und wir werden diesen Lüfter herstellen, indem wir einen kleinen Gleichstrommotor mit einem darauf installierten Propeller verwenden.

Beginnen wir also mit dem Anschluss unserer Gleichstrommotoren. Gleichstrommotoren haben eine hohe Stromaufnahme, daher können wir sie nicht direkt an unseren PICO anschließen, da dieser nur 40 mA pro GPIO-Pin bieten kann, während der Motor 100 mA benötigt. Aus diesem Grund müssen wir einen Transistor verwenden, um ihn anzuschließen, und wir verwenden den TIP122-Transistor, da wir ihn verwenden können, um den von unserem PICO gelieferten Strom auf die vom Motor benötigte Menge zu erhöhen.

Wir werden unseren DC-Motor und eine externe "PLACE HOLDER" -Batterie hinzufügen, um den Motor mit der erforderlichen Leistung zu versorgen, ohne unseren PICO zu beschädigen.

Der Gleichstrommotor sollte wie folgt angeschlossen werden:

  • Basisstift (TIP122) → D0 (PICO)
  • Kollektorstift (TIP122) → DC-Motorkabel "DC-Motoren haben keine Polaritäten, daher ist es egal, welches Kabel"
  • Emitterstift (TIP122) → GND
  • Die leere Leitung des Gleichstrommotors → Plus (rote Ader) der externen Batterie

Vergessen Sie nicht, den GND der Batterie mit dem GND des PICO zu verbinden, denn wenn er nicht angeschlossen ist, funktioniert die Schaltung überhaupt nicht

Die Codelogik des Lüfters: Der Code ist sehr einfach, wir ändern nur den Code, den wir bereits benötigen, um den Lüfter einzuschalten, wenn der Messwert des mittleren Sensors hoch ist, und den Lüfter aus, wenn der Messwert des mittleren Sensors niedrig ist.

Schritt 4: Anschließen der Roboterautomotoren

Jetzt kann unser Roboter Brände erkennen und sie mit einem Ventilator löschen, wenn das Feuer direkt davor ist. Es ist an der Zeit, dem Roboter die Möglichkeit zu geben, sich direkt vor dem Feuer zu bewegen und zu positionieren, damit er es löschen kann. Wir verwenden bereits unser 2WD-Roboter-Chassis-Kit, das mit 2 DC-Getrieben geliefert wird, die wir verwenden werden.

Um die Laufgeschwindigkeit und -richtung des Gleichstrommotors steuern zu können, müssen Sie den L298N H-Brücken-Motortreiber verwenden, bei dem es sich um ein Motortreibermodul handelt, das die Laufgeschwindigkeit und -richtung des Motors steuern und die Motoren speisen kann von einer externen Stromquelle.

Der Motortreiber L298N benötigt 4 digitale Eingänge, um die Drehrichtung der Motoren zu steuern, und 2 PWM-Eingänge, um die Drehzahl der Motoren zu steuern. Aber leider hat PICO nur einen einzigen PWM-Ausgangspin, der nicht sowohl die Richtung als auch die Geschwindigkeit der Motordrehung steuern kann. Hier verwenden wir das Erweiterungsmodul PCA9685 PWM-Pins, um die PWM von PICO an unsere Bedürfnisse anzupassen.

Die Verkabelung ist jetzt etwas kniffliger geworden, da wir 2 neue Motoren zusammen mit 2 Modulen anschließen, um sie zu steuern. Dies ist jedoch kein Problem, wenn Sie die bereitgestellten Schaltpläne und Schritte befolgen:

Beginnen wir mit dem PCA9685 PWM-Modul:

  • Vcc (PCA9685) → Vcc (PICO)
  • GND (PCA9685) → GND
  • SDA ((PCA9685) → D2 (PICO)
  • SCL (PCA9685) → D3 (PICO)

Verbinden wir nun das L298N-Motortreibermodul:

Beginnen wir damit, es an unsere Stromquelle anzuschließen:

  • +12 (L298N-Modul) → Positiver roter Draht (Batterie)
  • GND (L298N-Modul) → GND

So steuern Sie die Drehrichtung der Motoren:

  • In1 (L298N-Modul) → PWM 0-Pin (PCA9685)
  • In2 (L298N-Modul) → PWM 1-Pin (PCA9685)
  • In3 (L298N-Modul) → PWM 2-Pin (PCA9685)
  • In4 (L298N-Modul) → PWM 3-Pin (PCA9685)

So steuern Sie die Drehzahl des Motors:

  • enableA (L298N-Modul) → PWM 4-Pin (PCA9685)
  • enableB (L298N-Modul) → PWM 5-Pin (PCA9685)

Der L298N-Motortreiber kann geregelte +5 Volt ausgeben, die wir zum Einschalten unseres PICO verwenden:

+5 (L298N-Modul) → Vin (PICO)

Schließen Sie diesen Pin nicht an, wenn PICO über USB mit Strom versorgt wird

Nachdem wir alles verbunden haben, programmieren wir den Roboter so, dass er sich selbst bewegt, um direkt der Flamme zu begegnen und den Ventilator einzuschalten.

Schritt 5: Fertigstellen des Codes

Jetzt, da wir alles richtig angeschlossen haben, ist es an der Zeit, es zu codieren, damit es auch funktioniert. Und das sind die Dinge, die unser Code erreichen soll:

Wenn er Feuer geradeaus erkennt (der mittlere Sensor erkennt das Feuer), bewegt sich der Roboter direkt darauf zu, bis er die eingestellte Entfernung erreicht hat und schaltet den Ventilator ein

Wenn er Feuer auf der rechten Seite des Roboters wahrnimmt (der rechte Sensor erkennt das Feuer), dann dreht sich der Roboter, bis sich das Feuer direkt vor dem Roboter befindet (der mittlere Sensor) und bewegt sich dann darauf zu, bis er die eingestellte Entfernung erreicht hat und schaltet den Lüfter ein

Wenn er Feuer auf der linken Seite des Roboters wahrnimmt, macht er dasselbe wie oben. Aber es dreht sich nach links statt nach rechts.

Und wenn überhaupt kein Feuer erkannt wird, geben alle Sensoren einen HIGH-Wert aus und stoppen den Roboter.

Schritt 6: Sie sind fertig

In diesem Projekt haben wir gelernt, wie man die Sensorausgabe liest und abhängig davon Maßnahmen ergreift, wie man den Darlington-Transistor mit Gleichstrommotoren verwendet und wie man Gleichstrommotoren steuert. Und wir haben unser ganzes Wissen genutzt, um einen Feuerwehrroboter als Anwendung zu entwickeln. Was ziemlich cool ist x)

Bitte zögern Sie nicht, Ihre Fragen in den Kommentaren oder auf unserer Website mellbell.cc zu stellen. Und wie immer weitermachen:)