Inhaltsverzeichnis:

180°-Kamera mit Kugelverfolgung - Gunook
180°-Kamera mit Kugelverfolgung - Gunook

Video: 180°-Kamera mit Kugelverfolgung - Gunook

Video: 180°-Kamera mit Kugelverfolgung - Gunook
Video: Настоящие мужья и жены актеров сериала Чёрная любовь (Kara Sevda). Бесконечная любовь 2024, November
Anonim
Balltracking 180° Kamera
Balltracking 180° Kamera

Willkommen zu meinem ersten Projekt! Ich freue mich darauf, Ihnen zu zeigen, was ich gemacht habe, und Ihnen die Schritte zum Bau Ihrer eigenen Tracking-Kamera zu zeigen. Dieses Projekt wurde durch die OpenCV-Bibliothek in Verbindung mit Python ermöglicht.

Schritt 1: Materialien sammeln

  • Raspberry Pi Modell B 2 (oder ein anderes Modell)
  • L298N H-Brücken-Motortreiber
  • Motor mit Getriebegehäuse
  • USB-Webcam
  • Überbrückungsdrähte
  • Maschinenschrauben mit Muttern
  • Getriebe
  • Epoxid / Heißkleber
  • Optional: Laser

Schritt 2: Mechanik

Mechanik
Mechanik
Mechanik
Mechanik
Mechanik
Mechanik

Montieren Sie den Motor mit einem Schrottstück (das, das ich habe, ziemlich verprügelt, was in Ordnung ist) an einer Stelle, die nicht in der Mitte ist. Befestigen Sie dann ein kleines Zahnrad am Motor. Das Loch am Getriebe muss möglicherweise vergrößert werden, damit es über das Anschlussstück des Motors passt.

Der nächste Schritt besteht darin, das große Zahnrad (das lose ist) so zu montieren, dass seine Zähne mit den Zähnen des kleinen Zahnrads verbunden sind. Dies wurde mit Heißkleber auf das Brett montiert, nachdem das Holz mit Schleifpapier für eine bessere Bindung aufgerauht wurde.

Nachdem die Zahnräder angebracht sind, ist es an der Zeit, die Webcam an der großen Ausrüstung zu befestigen. Hier habe ich die Webcam aus ihrem Gehäuse entfernt und zur einfacheren Montage nur die Kernplatine der Webcam verwendet. Die Webcam wurde mit Epoxidkleber für eine starke Verbindung befestigt.

Die letzte zu montierende Komponente ist optional - für die L298N H-Brücke. Dies kann durch einfaches Bohren von vier Löchern in die Platine und Montage der Platine mit Maschinenschrauben und Sechskantmuttern montiert werden.

Schritt 3: Verkabelung

Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung

Jetzt alles zusammenstecken. Die beiden Drähte des Motors werden direkt mit der L298N H-Brücke in einem der beiden Anschlussstecker auf der linken oder rechten Seite der Platine verbunden (ich habe links gewählt). Zwei Drähte werden benötigt, um die 5V und Masse des L298N mit den 5V und Masse des Raspberry Pi für die Stromversorgung zu verbinden. Dann werden zwei weibliche-weibliche Überbrückungsdrähte benötigt, um den L298N mit den Pins 17 und 18 des Pi zu verbinden. Die Webcam wird einfach an einen der USB-Ports des Pi angeschlossen. Das ist die ganze Verkabelung!

Schritt 4: Code

Nun zum schwierigsten Aspekt dieses Projekts.

Ich habe die OpenCV-Bibliothek mit Python verwendet, um den Ball in Echtzeit zu verfolgen. Das Programm verwendet auch die mit dem Pi gelieferte gpiozero-Bibliothek, um den Motor gemäß den x-Koordinaten der Kugel zu drehen, die OpenCV bestimmt. Der Code ist in der Lage, die Position des Balls anhand seiner gelben Farbe zu bestimmen, die sich vom Hintergrund unterscheiden sollte, um wirksam zu sein. Dem Programm wird ein unterer und oberer Farbbereich zur Verfügung gestellt, um zu bestimmen, wo sich der Ball befindet. OpenCV ruft dann die Funktion.inRange() mit den Parametern auf: das aktuelle Bild (von der Webcam) und die unteren und oberen Farbgrenzen. Nachdem die Koordinaten des Balls auf dem Rahmen bestimmt wurden, weist das Programm den Motor an, sich zu drehen, wenn sich der Ball nicht in der Mitte befindet (x-Koordinate im Bereich von 240 - 400 in einem 640 Pixel breiten Rahmen). Der Motor dreht sich mehr, wenn der Ball weiter außermittig ist, und weniger, wenn sich der Ball näher an der Mitte befindet.

Und so funktioniert der Code.

Hinweis: Wenn Sie den Code verwenden möchten, muss OpenCV installiert sein. Wenn sich der Motor in die falsche Richtung dreht, vertauschen Sie einfach die Drähte, die in den L289N führen, oder vertauschen Sie die an den Pi angeschlossenen steuernden gpio-Drähte.

Empfohlen: