Innholdsfortegnelse:

Ballsporing 180 ° kamera: 5 trinn (med bilder)
Ballsporing 180 ° kamera: 5 trinn (med bilder)

Video: Ballsporing 180 ° kamera: 5 trinn (med bilder)

Video: Ballsporing 180 ° kamera: 5 trinn (med bilder)
Video: How Wide Range Bars can be the Weakest Link - MasterTrader.com 2024, November
Anonim
Ballsporing 180 ° kamera
Ballsporing 180 ° kamera

Velkommen til mitt første prosjekt! Jeg er spent på å dele det jeg har laget og vise deg trinnene for å bygge ditt eget sporingskamera. Dette prosjektet ble gjort mulig ved bruk av OpenCV -biblioteket i forbindelse med Python.

Trinn 1: Samle materialer

  • Raspberry Pi Model B 2 (eller annen modell)
  • L298N H-Bridge motorfører
  • Motor med girhus
  • USB -webkamera
  • Jumper Wires
  • Maskinskruer med muttere
  • Gears
  • Epoxy / Hot Lim
  • Valgfritt: Laser

Trinn 2: Mekanikk

Mekanikk
Mekanikk
Mekanikk
Mekanikk
Mekanikk
Mekanikk

Bruk et treverk (den jeg har er ganske slått, noe som er ok), monter motoren på et sted som ikke er i midten. Fest deretter et lite gir på motoren. Hullet på giret må kanskje forstørres for å passe over motorens beslag.

Det neste trinnet er å montere det store giret (som vil være løst) slik at tennene kobles til det lille tannhjulets tenner. Dette ble montert på brettet med varmt lim etter grovbearbeiding av treet med sandpapir for en bedre liming.

Etter at girene er på plass, er det på tide å feste webkameraet på det store giret. Her har jeg fjernet webkameraet fra huset og bare brukt kjernekretskortet til webkameraet for enklere montering. Nettkameraet ble festet ved hjelp av epoksylim for en sterk binding.

Den siste komponenten som skal monteres er valgfri - for L298N H -broen. Dette kan monteres ved ganske enkelt å bore fire hull i brettet og montere brettet med maskinskruer og sekskantmutter.

Trinn 3: Kabling

Kabling
Kabling
Kabling
Kabling
Kabling
Kabling
Kabling
Kabling

Nå for å koble alt sammen. Motorens to ledninger kobles direkte til L298N H-broen i en av de to terminalkontaktene på venstre eller høyre side av brettet (jeg valgte til venstre). To ledninger er nødvendig for å koble 5V og bakken på L298N til 5V og bakken til Raspberry Pi for strøm. Deretter er det nødvendig med to hun-hun-jumper-ledninger for å koble fra L298N til Pi-pinnene 17 og 18. Nettkameraet kobles ganske enkelt til en av Pi-USB-portene. Det er alle ledningene!

Trinn 4: Kode

Nå til det mest utfordrende aspektet av dette prosjektet.

Jeg brukte OpenCV -biblioteket med Python for å spore ballen i sanntid. Programmet bruker også gpiozero-biblioteket som følger med Pi til å snu motoren i henhold til x-koordinatene til ballen som OpenCV bestemmer. Koden er i stand til å bestemme ballens posisjon basert på den gule fargen, som skal være unik fra bakgrunnen for å være effektiv. Et lavere og øvre fargeområde leveres til programmet for å bestemme hvor ballen er. OpenCV kaller deretter.inRange () -funksjonen med parameterne for: gjeldende ramme (fra webkameraet), og de nedre og øvre fargegrensene. Etter at koordinatene til ballen på rammen er bestemt, forteller programmet motoren å snu hvis ballen ikke er i midten (x -koordinat i området 240 - 400 i en 640 piksler bred ramme). Motoren vil snu mer hvis ballen er mer utenfor midten, og snu mindre når ballen er nærmere midten.

Og det er slik koden fungerer.

Merk: Hvis du skal bruke koden, må du ha OpenCV installert. Også, hvis motoren svinger feil vei, bare reverser ledningene som går inn i L289N, eller reverserer de kontrollerende gpio -ledningene som er koblet til Pi.

Anbefalt: