Kazalo:

Procesor Raspberry PI Vision (SpartaCam): 8 korakov (s slikami)
Procesor Raspberry PI Vision (SpartaCam): 8 korakov (s slikami)

Video: Procesor Raspberry PI Vision (SpartaCam): 8 korakov (s slikami)

Video: Procesor Raspberry PI Vision (SpartaCam): 8 korakov (s slikami)
Video: ComfyUI Tutorial - How to Install ComfyUI on Windows, RunPod & Google Colab | Stable Diffusion SDXL 2024, Julij
Anonim
Procesor Raspberry PI Vision (SpartaCam)
Procesor Raspberry PI Vision (SpartaCam)
Procesor Raspberry PI Vision (SpartaCam)
Procesor Raspberry PI Vision (SpartaCam)

Procesor vidnega sistema Raspberry PI za vašega prvega robota Competition Robotics Competition

O PRVEM

Iz Wikipedije, brezplačne enciklopedije

FIRST Robotics Competition (FRC) je mednarodno srednješolsko tekmovanje v robotiki. Vsako leto ekipe srednješolcev, trenerjev in mentorjev v šesttedenskem obdobju izdelujejo robote za igranje iger, ki tehtajo do 120 kilogramov (54 kg). Roboti opravljajo naloge, kot so točkovanje žog v cilje, letenje diskov v cilje, notranje cevi na stojala, obešanje na palice in uravnoteženje robotov na tehtnicah. Igra se skupaj z zahtevanim naborom nalog vsako leto spreminja. Medtem ko ekipe dobijo standardni nabor delov, jim je dovoljen tudi proračun in jih spodbujajo k nakupu ali izdelavi specializiranih delov.

Letošnja igra (2020) NESKONČNO PONOVILO. Igra Infinite Recharge vključuje dve zvezi po tri ekipe, pri čemer vsaka ekipa nadzoruje robota in opravlja posebne naloge na polju za zbiranje točk. Igra se osredotoča na futuristično temo mesta, ki vključuje dve zvezi, sestavljeni iz treh ekip, od katerih vsaka tekmuje za izvajanje različnih nalog, vključno s streljanjem penastih kroglic, znanih kot Power Cells, v visoke in nizke cilje za aktiviranje generatorja ščita, z manipulacijo nadzorne plošče za aktiviranje tega ščita, in se na koncu tekme vrnejo k generatorju ščitov, da parkirajo ali plezajo. Cilj je aktivirati in aktivirati ščit pred koncem tekme in asteroidi udariti v FIRST City, futuristično mesto po vzoru Vojne zvezd.

Kaj počne procesorski sistem Raspberry PI vision?

Kamera bo lahko skenirala igralno polje in ciljne lokacije, kjer so na voljo deli igre ali jih je treba postaviti za točkovanje. Sklop ima 2 povezavi, napajanje in Ethernet.

Vidne tarče na igralnem polju so označene z odsevnim trakom in svetloba se bo odbijala nazaj v objektiv kamere. Pi, ki izvaja odprtokodno kodo Chameleon Vision (https://chameleon-vision.readthedocs.io/en/latest/…), bo obdelal pogled, ga označil, dodal prekrivne slike in izhodno višino, nagib, konturo in položaj kot vrednosti matrike, razvrščene po x in y v metrih in kotu v stopinjah skupaj z drugimi podatki prek omrežne tabele. Ti podatki bodo uporabljeni v programski opremi za nadzor našega robota v avtonomnem načinu, pa tudi za ciljanje in streljanje našega strelca s kupolo. Na programski opremi Pi lahko izvajate druge programske platforme. Vizijo FRC je mogoče namestiti, če je vaša ekipa že vložila čas programske opreme v to platformo.

Naš proračun je bil letos majhen in nakupa kamere Limelight v višini 399,00 USD (https://www.wcproducts.com/wcp-015) ni bilo v karticah. Nabavo vseh zalog iz Amazona in uporabo 3D tiskalnika Team 3512 Spartatroniks mi je uspelo zapakirati sistem vida po meri za 150,00 USD. Nekateri elementi so prišli v velikem obsegu, za izgradnjo drugega soprocesorja pa bi bili potrebni le še ena Raspberry Pi, PI kamera in ventilator. S pomočjo CAD -a ene od mentorjev ekip (hvala Matt) je bilo ohišje PI ustvarjeno z uporabo Fusion 360.

Zakaj preprosto ne uporabite Pi s poceni ohišjem, priključite kamero USB, dodate obročno luč, namestite Chameleon vision in končate, kajne? No, želel sem več moči in manj kablov ter faktor hladnosti sistema po meri.

Pi 4 uporablja 3 ojačevalnike, če deluje s polno luknjo, to je, če uporablja večino svojih vrat, wifi in zaslon. Tega ne počnemo pri naših robotih, vendar so vrata USB na roboRIO https://www.ni.com/en-us/support/model.roborio.ht… ocenjena na 900 ma, regulator napetosti je modelen (VRM) 5 -voltno napajanje doseže največ 2 ampera, omejitev 1,5 ampera, vendar je to skupni priključek, tako da, če je druga naprava na 5 -voltnem vodilu, obstaja možnost porušitve. VRM napaja tudi 12 voltov pri 2 amperih, vendar uporabljamo obe povezavi za napajanje našega radia s kablom POE in cevno povezavo za redundanco. Nekateri inšpektorji FRC ne bodo dovolili, da se vanj priklopi nič drugega kot tiskano na VRM. Torej je 12 voltov iz PDP -ja na 5 amp amortizerju potrebno napajati Pi.

12 voltov se napaja prek odklopnika 5 amp na razdelilni plošči (PDP), pretvori se v 5,15 voltov z pretvornikom LM2596 DC v DC. Pretvornik Buck napaja 5 voltov pri 3 amperih in ostane v regulaciji do 6,5 voltov na vhodu. To 5 -voltno vodilo nato napaja 3 podsisteme, niz obročev LED, ventilator, Raspberry Pi.

Zaloge

  • 6-paketni pretvornik LM2596 DC v DC pretvornik 3.0-40V do 1.5-35V Napajalni modul za zniževanje napajanja (6 paket) 11,25 USD
  • Noctua NF-A4x10 5V, vrhunski tihi ventilator, 3-polni, 5V različica (40x10 mm, rjava) 13,95 USD
  • SanDisk Ultra 32 GB kartica microSDHC UHS-I z adapterjem-98 MB/s U1 A1-SDSQUAR-032G-GN6MA 7,99 USD
  • Modul kamere Raspberry Pi V2-8 megapikslov, 1080p 428.20
  • Hladilnik GeeekPi Raspberry Pi 4, aluminijasti hladilniki 20 kosov Raspberry Pi s toplotno prevodnim lepilnim trakom za Raspberry Pi 4 model B (plošča Raspberry Pi ni vključena) 7,99 USD
  • Raspberry Pi 4 Model B 2019 Quad Core 64 -bitni WiFi Bluetooth (4 GB) 61,96 USD
  • (Paket 200 kosov) 2N2222 tranzistor, 2N2222 do-92 tranzistor NPN 40V 600mA 300MHz 625mW skozi luknjo 2N2222A 6,79 USD
  • EDGELEC 100 kosov 100 ohmski upor 1/4w (0,25 W) ± 1% toleranca Kovinski film fiksni upor 5,69 USD https://smile.amazon.com/gp/product/B07QKDSCSM/re… Waycreat 100PCS 5 mm zelene LED diode za luči Jasne svetleče diode za Žarnice z visoko intenzivnostjo, svetleče žarnice, elektronske komponente, svetilne diode 6,30 USD
  • J-B Weld Plastic Bonder 5,77 USD

1. korak: Prototip 1

Prototip 1
Prototip 1

Prvi preskus v embalaži:

Ekipa je imela Pi 3 iz prejšnjega leta, ki je bil na voljo za testiranje. Dodana je bila kamera pi, DC-DC buck/boost vezje in Andymarkova obročna luč.

Takrat nisem razmišljal o Pi 4, zato me niso skrbele potrebe po električni energiji. Napajanje je potekalo prek USB iz roboRIO. Kamera se prilega ohišju brez sprememb. Obročna luč je bila vroče prilepljena na pokrov ohišja in ožičena na ojačevalno ploščo. Ojačevalna plošča je bila priključena na vrata GPIO 2 in 6 za 5 voltov, izhod pa je bil nastavljen do 12 voltov za zagon obroča. V notranjosti ohišja ni bilo prostora za povečevalno ploščo, zato je bila tudi vroče lepljena navzven. Programska oprema je bila nameščena in preizkušena s cilji iz igralnega leta 2019. Ekipa programske opreme je dala palec gor, zato smo naročili Pi 4, hladilnike in ventilator. Medtem ko smo na poti ohišje oblikovali in 3D natisnili.

2. korak: Prototip 2

Prototip 2
Prototip 2
Prototip 2
Prototip 2
Prototip 2
Prototip 2

Notranje mere ohišja so bile v redu, vendar so bile lokacije vrat premaknjene, ne pa zamašek.

To je bilo končano tik po razkritju nove igre, da bi se programska oprema lahko preizkusila na novih ciljnih lokacijah.

Dobre in slabe novice. Izhod svetlobe obroča ni bil ustrezen, ko smo bili več kot 15 čevljev od cilja, zato je čas, da premislimo o osvetlitvi. Ker so bile potrebne spremembe, menim, da je ta enota prototip 2.

3. korak: Prototip 3

Prototip 3
Prototip 3
Prototip 3
Prototip 3

Prototip 2 sta ostala skupaj, da bi programska oprema lahko še naprej izpopolnjevala njihov sistem. Medtem je bil najden še en Pi 3 in skupaj sem zložil še eno testno posteljo. Ta je imel Pi3, USB lifecam 3000 neposredno spajkano na ploščo, ojačevalni pretvornik in ročno spajkano niz diod.

Spet dobre novice, slabe novice. Polje bi lahko osvetlilo cilj 50 metrov stran, vendar bi izgubilo cilj, če bi bil kot izklopa večji od 22 stopinj. S temi informacijami bi lahko naredili končni sistem.

4. korak: Končni izdelek

Končni izdelek
Končni izdelek
Končni izdelek
Končni izdelek
Končni izdelek
Končni izdelek

Prototip 3 je imel 6 diod približno 60 stopinj narazen in obrnjene neposredno naprej.

Končne spremembe so bile dodajanje 8 diod, razmaknjenih okoli 45 stopinj okoli leče, s 4 diodami, ki so bile obrnjene naprej, in 4 diodami, odmaknjenimi za 10 stopinj, kar daje vidno polje 44 stopinj. To omogoča tudi namestitev ohišja navpično ali vodoravno na robota. Natisnjeno je bilo novo ohišje s spremembami, ki so ustrezale Pi 3 ali Pi 4. Prednja stran ohišja je bila spremenjena za posamezne diode.

Testiranje ni pokazalo nobenih težav pri delovanju med Pi 3 ali 4, zato so bile odprtine ohišja narejene tako, da so omogočile namestitev katerega koli Pi. Odstranjene so bile zadnje pritrdilne točke in izpušne odprtine na vrhu kupole. Uporaba Pi 3 bo dodatno znižala stroške. Pi 3 deluje hladneje in porabi manj energije. Na koncu smo se odločili uporabiti PI 3 za prihranek stroškov, ekipa programske opreme pa je želela uporabiti neko kodo, ki bi delovala na Pi 3, ki pa ni bila posodobljena za Pi 4.

Uvozite STL v rezalnik 3D tiskalnikov in pojdite. Ta datoteka je v palcih, zato, če imate rezalnik, kot je Cura, boste del verjetno morali pretvoriti v %2540, da ga pretvorite v metriko. Če imate Fusion 360, lahko datoteko.f3d prilagodite svojim potrebam. Želel sem vključiti datoteko.step, vendar navodila ne dovolijo nalaganja datotek.

Osnovna potrebna orodja:

  • Odstranjevalci žice
  • Klešče
  • Spajkalnik
  • Termoskrčljive cevi
  • Rezalniki žice
  • Spajka brez svinca
  • Flux
  • Roke za pomoč ali klešče
  • Toplotna pištola

5. korak: Ožičenje diodnega niza

Ožičenje diodnih nizov
Ožičenje diodnih nizov
Ožičenje diodnih nizov
Ožičenje diodnih nizov
Ožičenje diodnih nizov
Ožičenje diodnih nizov

Varnostno obvestilo:

Spajkalnik Nikoli se ne dotikajte elementa spajkalnika….400 ° C! (750 ° F)

Žice držite za segrevanje s pinceto ali sponkami.

Med uporabo naj bo gobica za čiščenje mokra.

Spajkalnik vedno vrnite na stojalo, ko ga ne uporabljate.

Nikoli ga ne odlagajte na delovno mizo.

Ko naprave ne uporabljate, jo izklopite in izvlecite iz vtičnice.

Spajkanje, fluks in čistila

Nosite zaščito za oči.

Spajkalnik lahko "pljune".

Kadar je le mogoče, uporabite spajkalnike brez kolofonije in svinca.

Čistilna topila hranite v steklenicah za točenje.

Po spajkanju si vedno umijte roke z milom in vodo.

Delajte v dobro prezračenih prostorih.

V redu, pojdimo na delo:

Ohišje ohišja je bilo natisnjeno z diodnimi luknjami pri 0, 90, 180, 270 točkah, nagnjenih pod 10 stopinj. Luknje na 45, 135, 225, 315 točkah so ravne.

Vse diode vstavite v ohišje ohišja, da preverite velikost luknje 5 mm. Tesno prilegajoče se diode držijo pod pravilnim kotom. Dolg kabel na diodi je anoda, na vsako diodo spajkajte 100 ohmski upor. Spajkalni vodi diode in upora se zapreta in pustita dolg kabel na drugi strani upora (glej fotografije). Preden nadaljujete, preizkusite vsako kombinacijo. Baterija AA in 2 preskusna vodila bosta diodo slabo osvetlila in preverila pravilno polariteto.

Kombinirano diodo/upor postavite nazaj v ohišje, kable pa postavite v cik-cak vzorcu, tako da se vsak upor dotika naslednjega upora, da ustvari obroč. Spajkajte vse vodi. Zmešal bi nekaj J-B zvarjenega plastičnega bondera (https://www.amazon.com/J-B-Weld-50133-Tan-1-Pack) in epoksidno kombinacijo diode/upora. Pomislil sem na super lepilo, vendar nisem bil prepričan, ali bo cianoakrilat zameglil diodno lečo. To sem naredil na koncu vsega spajkanja, vendar bi si želel, da bi to storil tukaj, da bi zmanjšal frustracije, ko diode med spajkanjem ne bi ostale na svojem mestu. Epoksid se strdi v približno 15 minutah, zato je primeren za odmor.

Zdaj lahko vse katodne kable spajate skupaj, da ustvarite - ali ozemljitveni obroč. Na svoj diodni obroč dodajte 18 rdečih in črnih žic. Preizkusite dokončano matriko z uporabo 5 -voltnega napajalnika, polnilec USB deluje dobro.

6. korak: Buck/Boost ožičenje

Buck/Boost ožičenje
Buck/Boost ožičenje
Buck/Boost ožičenje
Buck/Boost ožičenje
Buck/Boost ožičenje
Buck/Boost ožičenje
Buck/Boost ožičenje
Buck/Boost ožičenje

Pred ožičenjem v pretvorniku Buck bomo morali nastaviti izhodno napetost. Ker uporabljamo PDP za napajanje 12 voltov, ki sem jih ožičil neposredno na vhod PDP, varovan pri 5 amperih. Pripnite voltmeter na izhod plošče in začnite obračati potenciometer. Preden vidite spremembo, bo trajalo kar nekaj zavojev, saj je plošča tovarniško preizkušena na polno moč in nato levo pri tej nastavitvi. Nastavite na 5,15 voltov. Nastavili smo nekaj milivoltov visoko, da se ujemajo s tem, kar Pi pričakuje od polnilnika USB in vseh obremenitev linij iz ventilatorskega in diodnega polja. (Med prvim preskušanjem smo videli Pi -jeva neprijetna sporočila, ki se pritožujejo zaradi nizke napetosti vodila. Iskanje po internetu nam je dalo informacijo, da Pi pričakuje več kot 5,0 voltov, saj večina polnilnikov oddaja nekoliko več in tipično napajanje za Pi je polnilnik USB.)

Nato moramo primer pripraviti:

Pretvornik in Pi sta pritrjena z uporabo 4-40 strojnih vijakov. #43 Sveder je idealen za ustvarjanje natančnih lukenj za lepljenje 4-40 niti. Pretvornik Pi in Buck držite do odstopanj, označite in nato vrtajte s svedrom #43. Višina odmikov omogoča dovolj globine kopra, ne da bi šla popolnoma čez hrbet. Luknite luknje s slepim dotikom 4-40. Samolepilni vijaki, ki se uporabljajo v plastiki, bi tukaj dobro delovali, vendar sem imel na voljo 4-40 vijakov, zato sem to uporabil. Za dostop do kartice SD so potrebni vijaki (v tem ohišju ni zunanjega dostopa do kartice).

Naslednja luknja za vaš napajalni kabel. Izbral sem točko v spodnjem kotu, da bo potekala vzdolž strani kabla Ethernet navzven in ob strani ter nato pod Pi znotraj. Uporabil sem oklopljen 2 -žilni kabel, saj sem imel pri roki, kateri koli par 14 -palčnih žic bo deloval. Če uporabljate par brez žice, ki ni obložen s plaščem, položite 1 do 2 plasti toplotno skrčenega materiala na žico, kjer vstopi v ohišje, za zaščito in razbremenitev. Velikost luknje določite po izbiri žice.

Zdaj lahko spajkate žice na vhodne linije na DC-DC pretvorniku. Povezave so označene na plošči. Rdeča žica v v+ Črna žica v notranjost. Ko sem prišel iz plošče, sem spajkal 2 kratki goli žici, ki sta služili kot žična opornica, ki bi privezala ventilator, Pi in tranzistor.

7. korak: Končno ožičenje in epoksi

Končno ožičenje in epoksi
Končno ožičenje in epoksi
Končno ožičenje in epoksi
Končno ožičenje in epoksi
Končno ožičenje in epoksi
Končno ožičenje in epoksi

Na Pi so vzpostavljene samo 4 povezave. Ozemljitveni, napajalni, LED krmilni kabel in trak za vmesnik kamere.

Tri zatiči, ki se uporabljajo na Pi, so 2, 6 in 12.

Odrežite rdečo, črno -belo žico na 4 palce. Odstranite izolacijo 3/8 palca z obeh koncev žic, kositrnih koncev žic in kositrnih zatičev na Pi.

  • Spajkanje rdeče žice na pin GPIO 2 zdrsa 1/2 palca toplotno skrčne cevi nanesite toploto.
  • Spajkati črno žico na GPIO pin 6 zdrsa 1/2 palca toplotno skrčljive cevi nanesite toploto.
  • Spajkajte belo žico na pin GPIO 12 zdrsa 1/2 palca toplotno skrčljive cevi nanesite toploto.
  • Spajkajte rdečo žico, da se sprostite+
  • Spajkati črno žico
  • Beli žici dodajte 1 -palčni toplotni skrč in spajkajte do 100 ohmskega upora in od upora do osnove tranzistorja. Izolirajte s toplotno skrčljivo.
  • Oddajnik tranzistorja v Buck -
  • Tranzistorski zbiralnik na katodni strani diodnega niza
  • Diodni niz Anoda/upor proti Buck +
  • Ventilator rdeče žice, da se sprosti+
  • Črna žica ventilatorja za izklop-

Zadnja povezava:

Vstavite vmesniški kabel kamere. Kabelska povezava uporablja zif konektor (sila vstavljanja nič). Črni trak na vrhu priključka je treba dvigniti navzgor, kabel namestiti v vtičnico, nato pa konektor potisniti nazaj, da se zaskoči. Pazite, da kabla ne stisnete, saj se lahko sled v izolaciji zlomi. Tudi konektor je treba vstaviti naravnost za poravnavo traku s kabli.

Preverite svoje delo, če so pramene in žice spajkanja, privežite morebitno odvečno dolžino na stebrih za spajkanje.

Če ste zadovoljni s svojim delom, lahko ventilator in kamero namestite na epoksi. Nekaj kapljic na vogalih je vse, kar potrebujete.

8. korak: Programska oprema

Programska oprema
Programska oprema
Programska oprema
Programska oprema
Programska oprema
Programska oprema
Programska oprema
Programska oprema

Medtem ko se epoksid strdi, lahko vstavite programsko opremo na kartico SD. za priključitev v računalnik potrebujete adapter za kartico SD (https://www.amazon.com/Reader-Laptop-Windows-Chrom….

Pojdi do:

www.raspberrypi.org/downloads/raspbian/ in prenesite Raspbian Buster Lite. Za utripanje kartice SD z raspbian boste potrebovali drugo programsko orodje BalenaEtcher, ki ga najdete tukaj, Epoksid bi se moral do sedaj že dovolj strditi, da lahko namestite kartico SD in privijte ploščo. Preden pritrdite pokrov, preverite, ali nobena žica ne ovira pokrova in da se kabel kamere ne dotika lopatic ventilatorja. Ko je pokrov nameščen, piham na ventilator in opazujem, kako se premika, da se prepričam, da ni motenj žic ali trakovnega kabla.

Čas za vklop:

Pri prvem vklopu boste potrebovali kabel hdmi, če imate Pi 4 kabel mini hdmi, usb tipkovnico in monitor hdmi skupaj z internetno povezavo. Priključite na 12 -voltno napajanje, PDP z odklopnikom 5 amp.

Po prijavi najprej zaženite konfiguracijsko orodje. Tu lahko nastavite SSH skupaj z omogočanjem kamere PI. https://www.raspberrypi.org/documentation/configur… ima navodila za pomoč.

Znova zaženite pred namestitvijo programa Chameleon Vision

Pred uporabo programske opreme obiščite njihovo spletno mesto, saj ima veliko informacij. Ena opomba je, da je na njihovi podprti strojni strani kamera Pi prikazana kot podprta, vendar je z njihovo najnovejšo izdajo. Spletno stran je treba posodobiti.

S spletne strani Chameleon vision:

Chameleon Vision lahko deluje v večini operacijskih sistemov, ki so na voljo za Raspberry Pi. Vendar je priporočljivo, da namestite Rasbian Buster Lite, ki je na voljo tukaj: //www.raspberrypi.org/downloads/raspbian/. Sledite navodilom za namestitev Raspbiana na kartico SD.

Prepričajte se, da je Raspberry Pi povezan z internetom prek etherneta. Prijavite se v Raspberry Pi (uporabniško ime pi in geslo malina) in v terminalu zaženite naslednje ukaze:

$ wget https://git.io/JeDUk -O install.sh

$ chmod +x install.sh

$ sudo./install.sh

$ sudo znova zaženite

Čestitamo! Vaš Raspberry Pi je zdaj nastavljen za izvajanje Chameleon Vision! Ko se Raspberry Pi znova zažene, lahko Chameleon Vision zaženete z naslednjim ukazom:

$ sudo java -jar kameleon -vision.jar

Ko izide nova različica programa Chameleon Vision, jo posodobite tako, da zaženete naslednje ukaze:

$ wget https://git.io/JeDUL -O update.sh

$ chmod +x update.sh

$ sudo./update.sh

Nadzor LED matrike:

Vaša LED dioda ne bo zasvetila brez nadzora programske opreme

Prva letošnja robotika ima pravilo proti svetlim LED lučkam, vendar jim bo omogočila, če jih je mogoče po potrebi izklopiti in vklopiti. Colin Gideon "SpookyWoogin", FRC 3223, je napisal skript Python za nadzor LED -jev, ki ga najdete tukaj:

github.com/frc3223/RPi-GPIO-Flash

Ta sistem bo uporabljal tudi vizijo FRC, če je vaša ekipa že vložila čas programske opreme v to platformo. S FRC Visionom je slikana celotna kartica SD, zato vam ni treba prenesti raspbian. Pridobite ga tukaj

Tako boste dobili sistem vida v hladni obliki. Srečno na tekmovanjih!

Natečaj Raspberry Pi 2020
Natečaj Raspberry Pi 2020
Natečaj Raspberry Pi 2020
Natečaj Raspberry Pi 2020

Podprvak na tekmovanju Raspberry Pi 2020

Priporočena: