INHOUDSOPGAWE:

Raspberry Pi 3 FPV Lego Tank: 5 stappe (met foto's)
Raspberry Pi 3 FPV Lego Tank: 5 stappe (met foto's)

Video: Raspberry Pi 3 FPV Lego Tank: 5 stappe (met foto's)

Video: Raspberry Pi 3 FPV Lego Tank: 5 stappe (met foto's)
Video: Build a Raspberry Pi RC Tank driven by an 8BitDo Controller - GoBILDA Outlaw Chassis Kit Assembly 2024, November
Anonim
Framboos Pi 3 FPV Lego Tank
Framboos Pi 3 FPV Lego Tank

Lego is ideaal om kinders te leer hoe dinge werk, terwyl hulle terselfdertyd pret kan hê. Ek weet ek het nog altyd daarvan gehou om met lego te "speel" as 'n kind. Hierdie instruksies beskryf hoe ek 'n FPV (First Person View) tenk uit lego en 'n Raspberry Pi 3 (Raspi 3) gebou het. Ek het probeer om dit so eenvoudig as moontlik te hou, slegs die stap waarin u die motors aanpas om met lego te werk, benodig gereedskap en 'n bietjie vaardigheid.

Die tenk gebruik basies twee motors, dus as u nie 'n tenk wil hê nie, kan u 'n robot van die Romba -tipe maak, die konstruksie sal anders wees, maar die bedrading en programme sal presies dieselfde wees.

### Hierdie projek is basies 'n weergawe 1, so lewer 'n opmerking as u dit wil verbeter (waarvan daar genoeg ruimte is om te doen). Alle kode is ook beskikbaar, op my Github -bladsy is daar skakels in die stappe

Dinge wat u benodig:

  • Sommige Lego, ek het 'n Lego Technic Arctic Truck gebruik wat ek rondgelê het. Gebruik u verbeelding, maar hierdie stel het spore en alles om die werk te laat werk, so dit was goed vir hierdie projek.
  • As 'n Raspberry Pi, het ek 'n Raspberry Pi 3 gebruik, want dit was wat ek gehad het; as u 'n ander model het, kan u dit moontlik laat werk, maar die GPIO -penne sal verskil.
  • 'N Micro SD -kaart met Raspian geïnstalleer vir die Raspi 3.
  • As 'n Pi -kamera verkoop Adafruit 'n paar sowel as verskillende lintkabels van verskillende lengtes. Dit is 'n gekoopte myn van Aliexpress, dit het 'n visooglens en was goedkoop. U kan moontlik 'n webkamera gebruik, maar 'n Pi -kamera werk uit die boks.
  • 'N USB -kragbank om die Raspi 3 aan te dryf, ek dink myne kos $ 8, sy 2000 mAh, dus loop die Raspi 3 'n rukkie.
  • As 'n battery om die motors aan te dryf, gebruik ek 'n battery wat ek uit 'n goedkoop RC -motor gehaal het, dit is 7,2 volt, 500 mah en herlaaibaar, sodat dit redelik goed werk. 'N 9V -battery is goed, maar u benodig dan ook 'n aansluiting.
  • Springkabels om GPIO -penne aan mekaar te verbind, ten minste 5 wyfies op wyfies.
  • L298N Motorbestuurdersbord, dit is redelik goedkoop en stel u in staat om afsonderlik na motors te bestuur. Dit is ook redelik standaard vir hierdie tipe toepassings.
  • 2 x DC -ratkasmotor, hierdie van Adafruit is goed, presies dieselfde kan ook by Aliexpress gekoop word

Diverse

  • Dubbelzijdige skuimband
  • draad
  • hitte krimp
  • band
  • rekkies
  • mikro -USB -kabel

As u die GS -ratkas -motors soos ek gaan aanpas, benodig u:

  • boks snyer
  • dremel met sirkelsaaglem
  • mini lêers
  • 5 minute epoksie

U benodig ook u eie rekenaar/skootrekenaar om die Raspi 3 te beheer en te programmeer.

Stap 1: Bou die tenk

Bou die tenk
Bou die tenk
Bou die tenk
Bou die tenk
Bou die tenk
Bou die tenk

Dit is dus nie regtig instruksies nie, want hierdie stap behoort regtig u eie ontwerp te wees. Ek sal praat oor 'n paar dinge wat ek moes oorweeg wanneer ek dit bou, maar die ware plesier lê daarin om self uit te vind (baie soos die werklike Lego). Gebruik die foto's as dit nuttig is; dit het my jare geneem om hierdie ontwerp te ontwikkel. Uiteindelik was die eenvoudige pad die beste.

  1. Bou eers die agterasse

    1. en sorg dat daar genoeg ruimte vir die motors is en dat hulle wyd genoeg is sodat u komponente daarin kan pas. Ek wou hê myne moet redelik breed wees, want ek wil hê dat alles binne -in die asse sit. Dit het die tenk redelik laag geplaas en die kat agtervolg.
    2. Die wiele op die spore hier het 'n gat wat by 'n Lego -kruisas pas, dus hou in gedagte dit is waar u motors gaan ry.
    3. Jy benodig genoeg speling vir die baan agter en voor. U kan op foto 2 sien dat die "L" -blare nie halfmetries is nie, dit is om die spoorkamer toe te laat. Ek het hulle oorspronklik halfmetries gehad, maar die baan het aanhou vryf en het op 'n stadium vasgery en die motoradapter gebreek.
  2. Sodra u die asse laat bou het, kan u dit verbind

    1. met gereelde tussenposes lang stukkies met kruissteunen gebruik. Maak seker dat u die kruissteun sodat die komponente tussen hulle pas, dit help om 'n lae profiel te hou.
    2. die lengte sal bepaal word deur hoeveel snit jy het. Hierdie baan het geen rek nie, so 'n bietjie slap is nodig. As u 'n rubberbaan het, kan u dit stywer maak. 'N Lopende wiel is ook 'n goeie idee, maar oor die algemeen is dit nie nodig nie.
    3. Hierdie stap was eenvoudig en behels net 'n bietjie proef en fout.
  3. Die motors sit in wese vas met dubbelzijdige skuimband, so bied 'n groot oppervlak om aan vas te sit.
  4. Die kamera -houer wat ek gemaak het, is redelik rommel, jy moet beslis probeer om jou eie te maak. Ek hou nie daarvan nie, want dit lyk asof jy vinnig met die kamera reis. Dit sal 'n goeie plek wees om op te gradeer met 'n servo of twee om die kamera beweegbaar te maak.

Hopelik is hierdie notas nuttig. Ek het hierdie ding gebou voordat ek die instruksies geskryf het, en ek is 'n bietjie huiwerig om dit uitmekaar te trek noudat dit gaan. Ek glo regtig dat 'n beter ontwerp gemaak kan word, so ek dink dat u eie ontwikkeling die beste sou wees. Gee 'n opmerking as u wil hê dat ek 'n volledige gids moet maak; as daar genoeg vraag is, sal ek dit doen.

Stap 2: DC -ratkas -motor na Lego -adapter

DC -ratkas -motor na Lego -adapter
DC -ratkas -motor na Lego -adapter
DC -ratkas -motor na Lego -adapter
DC -ratkas -motor na Lego -adapter
DC -ratkas -motor na Lego -adapter
DC -ratkas -motor na Lego -adapter

Ek het dit weer gemaak voor ek geskryf het, en ek het geen foto's geneem nie. Ek dink daar is 'n klomp verskillende tutoriale wat dit doen. Adafruit verkoop eintlik 'n adapter, dit is die beste manier, en u hoef nie u motorhouers te vernietig nie. Ek is wel in NZ, so Adafruit is nie beskikbaar nie, maar DIY is:-). Dit is wat ek gedoen het (jammer oor die slegte diagramme):

  1. Maak al u gereedskap gereed, ons gaan plastiek sny, so dit sal nie moeilik wees nie. Ek het 'n paar werkswinkelbrille gebruik, want ek haat persoonlik klein stukke plastiek oor my oogballe. Ek het ook een van die groen snyplate gebruik, sodat ek nie my tafel kon deurmekaar maak nie.
  2. Die diagram toon dus 'n voor- en syaansig. Die grys is basies die klein wit deel van die GS -ratkasmotor, en die rooi is waar ons sny. Die rooi bo -aansig is eintlik veronderstel om 'n deursnit vir 'n Lego -dwarsas te wees. Ons gaan die materiaal verwyder sodat die as lekker binne pas. Probeer om dit so na as moontlik aan die middel te sny en amper tot onder. Ek het eers begin om die sirkelzaag op my dremel grof te sny, en daarna met 'n boks snyer om te sny totdat ek perfek pas.
  3. Sodra u die stukkie gesny het en die as min of meer reguit pas (dit lyk soos 'n vreemde, gevoude halwe vurk), kan u die Lego -kruisas epoksiseer. Voordat u 'n epoksie aanbring, moet u 'n maskeerband oor die geel omhulsel aanbring van die motor, sodat u nie die as by die omhulsel vassteek nie. Meng die 5 minute epoksie goed en smeer 'n dik laag oor die wit bietjie en die dwarsas, ons soek 'n laag van 1-2 mm dik. Die epoksie van 5 minute word taai en onbruikbaar, so werk vinnig hier.
  4. As u eers 'n afgedekte jas aangetrek het en die epoxy nie werk nie, moet u klaar wees. Dit loop 'n bietjie, maar wees versigtig. Sodra dit 'n rubberagtige konsistensie het, kan u enige oortollige epoksie maklik afsny; so kry ek 'n mooi plat punt op myne.
  5. Laat dit oornag droog word, en u moet 'n Lego DC -ratkasmotor teen die oggend hê

Stap 3: Verbind dit

Bedraad dit
Bedraad dit
Bedraad dit
Bedraad dit
Bedraad dit
Bedraad dit

Die bedrading vir hierdie projek is redelik eenvoudig. Ons gebruik die 4 vroulike tot vroulike springkabels om ons GPIO -penne aan die L298N -motorbeheerder te koppel en 'n manlike na vroulike springkabel om die grond van die Raspi 3 aan die grond van die L298N -motorbeheerder te koppel. Ons sal ook 'n draad gebruik om die motors aan te sluit op die L298N -motorbeheerder.

Ek kies om hierdie kombinasie van penne op die Raspi te gebruik omdat dit saamgevoeg is. Gebruik gerus enige stel GPIO -penne en GND. Onthou net om dit in die kode te verander.

U kan die bedradingsdiagram gebruik of die onderstaande stappe volg:

Raspi 3 L298N

GND (pen 14) GND

GPIO27 (pen 13) IN1

GPIO22 (pen 15) IN2

GPIO23 (pen 16) IN3

GPIO24 (pen 18) IN4

Vir die motors en die manier waarop hulle gemonteer is, het ek hulle op hierdie manier bedraad.

Out2, Out3 negatief

Out1, Out4 positief

In wese was die negatiewe agterkant positief en vorentoe. As u dit andersom kry, ry die tenk net in die teenoorgestelde rigting, wat maklik in sagteware reggemaak kan word.

Stap 4: Die programmering

Dus, vir hierdie stap, sal ons 'n paar dinge moet opstel as u dit nog nie gedoen het nie.

  • Raspian
  • Python 2 of 3
  • Git
  • MJPG-Streamer

Die installering van Raspian

Eerstens moet ons Raspian op 'n mikro -SD -kaart hê, dus moet u 'n geformateerde SD van minstens 8 GB gereed hê (u kan NOOBS lite ook installeer as u slegs 'n 4GB -kaart het).

Om Raspian te installeer, beveel ek aan om NOOBS te gebruik. Die amptelike skakel is hier. Laai die zip -lêer af op u rekenaar en pak die lêers uit op die sd -kaart. Maak seker dat die lêers en gidse daar is en nie in 'n noobs -lêergids nie.

As u dit gedoen het, steek u die SD -kaart in die Raspi 3, verbind 'n skerm ('n TV met HDMI werk goed as u nie 'n monitor het nie) en 'n sleutelbord en muis.

U moet die laai van die installeringsskerm sien, koppel aan wifi (wifi is nodig om hierdie projek te laat werk) en installeer; ek gebruik net die standaardinstellings, aangesien dit goed werk.

Konfigureer vir koplose modus

Sodra Raspian geïnstalleer is en u by die Raspi 3 aangemeld is, kan u die Raspi 3 begin instel om in 'n koplose modus te werk (dit wil sê, gebruik SSH in plaas van 'n skerm en sleutelbord). Net 'n nota wat u nodig het om sudo te gebruik, dus maak seker dat u die wortelwagwoord ken.

Maak 'n terminale oop en tik 'sudo raspi-config'; u moet 'n blou en grys skerm hê, soos op die beelde. Gaan na 'Interfacing options', druk op enter, dan na 'P2 SSH', druk enter en voer weer in vir 'ja', weer vir 'ok'.

Gaan nou terug na 'koppelvlakopsies' en aktiveer die kamera.

Druk in die spyskaart regs en gaan in om 'afwerking' te kies.

Vervolgens moet ons ons IP -adres vind; u kan dit doen deur 'ifconfig' in die terminaal te tik. Soek die blok wat begin met wlan0 (gewoonlik die laaste een) en skryf u IP -adres neer. Dit behoort op die tweede reël te wees en lyk ongeveer 192.168.1. XX as u tuis wifi gebruik.

Groot, dit is die einde van die opset

Die installering van addisionele sagteware

Om die scripts wat ek het te laat loop, moet u python 2 of 3 geïnstalleer het. As u luislang wil leer, beveel ek aan dat u luislang 3 leer, die verskille is gering, maar luislang 3 word nou meer algemeen gebruik. Dit moet vooraf met Raspian geïnstalleer word, maar ons moet net kyk.

Tik 'python --version', u moet 'n uitset kry soos 'Python 2.7.13', wat beteken dat u python 2 geïnstalleer het. Tik 'python3 --version' om te sien of u python 3 het, en u moet 'n soortgelyke uitset kry. As u nie python 2 of 3 het nie, kan u respekvol 'sudo apt-get install python' of 'sudo apt-get install python3' tik.

U sal ook Git nodig hê om die kode te kry; dit moet weer vooraf geïnstalleer word. Tik 'git --version' om 'sudo apt-get install git' na te gaan en gebruik dit as u dit nie het nie.

Die installering van MJPG-Streamer

MJPG-Streamer is een van die maniere waarop ek toegang tot die Picamera gekry het. Hiermee kan u via 'n blaaier toegang tot die kamera kry en die beeld manipuleer. Dit is waarskynlik die mooiste en makliker manier om die kamera te gebruik as u ongemaklik voel met kode.

  1. Weereens gaan ons Git gebruik. Tik 'git clone https://github.com/jacksonliam/mjpg-streamer.git' in die Raspi 3-terminale. Die sagteware sal afgelaai word, dit neem nie te lank nie.
  2. Waarskynlik die beste ding om op hierdie punt te doen, is om na die 'README.md' -lêer te kyk en die installasie -instruksies te volg. Hulle het naatloos vir my gewerk. As u enige vrae het, laat dit dan in die kommentaar, en ek sal help

Sodra dit geïnstalleer is, kan u dit uitvoer. Ek sal hieronder kyk hoe ek dit doen.

Alles bymekaar te sit

Goed, nou moet ons gereed wees om te gaan. Maak seker dat u Raspi 3 aangeskakel is. Maak 'n terminale op u rekenaar/skootrekenaar oop (ek neem aan dat u Linux of Mac gebruik, as u stopverf moet aflaai. Daar is baie tutoriale aanlyn oor hoe u dit moet gebruik, moenie bekommerd wees nie, dit is maklik) en tik 'ssh [email protected]. XX (as u nie die standaard gebruikersnaam verander het nie) of wat u IP -adres ooit was, wat ons vroeër gevind het. Tik u wagwoord in (dit moet beslis nie die standaard wees nie). Goed, nou is u op 'n terminale sessie op die Raspi 3 via u rekenaar/skootrekenaar.

Dus, in die terminale tipe 'git-kloon https://github.com/astrobenhart/Raspi-3-FPV-Lego-T… Dit behoort slegs 'n paar sekondes te neem, aangesien die lêers regtig klein is. U kan dan na die gids gaan met 'cd Raspi-3-FPV-Lego-Tank', tik nou 'ls' en maak seker dat u hierdie 5 lêers sien: 'demo.py', 'drive.py', 'Picamera_tank. py, 'klear.jpg' en 'README.md'. Kyk na die leesbrief vir opdaterings.

demo.py

Hierdie py -skrif is ideaal om te toets of u bedrading werk. Dit gaan net deur verskillende kombinasies om die motors agteruit en vorentoe te ry.

gebruik 'python demo.py' om uit te voer. Dit neem ongeveer 'n halfminuut om dit te voltooi.

ry.py

Dit is die py -skrif wat u sal gebruik om die tenk te beheer. Dit stel die GPIO -penkartering op en skep defs om te beweeg. Dit vang ook sleuteldrukke om die tenk te beheer.

Gebruik 'python drive.py' om uit te voer. Gee dit 'n oomblik, u terminale moet leeg wees.

gebruik 'w, a, s, d' om te beweeg en spasiebalk om te stop. As u gereed is om die program te sluit, druk 'n '.

Picamera_tank.py

Dit is my weergawe van 'n streamer vir die kamera. Dit werk slegs met python 3 (dws gebruik 'python3 Picamera_tank.py' om uit te voer). Dit kan uitgevoer word in 'n tweede terminale venster of u kan op ctrl-z druk en bg tik om dit op die agtergrond op dieselfde terminaal uit te voer. Persoonlik hou ek daarvan om 'n aparte terminaal te gebruik.

U hoef niks ekstra te installeer nie, maar as u wel pip gebruik. Skryf 'n opmerking as u probleme ondervind.

Sodra dit op die Raspi 3 werk, meld u aan by die brower van u rekenaar/skootrekenaar en gaan na 192.168.1. XX: 8000 (die IP wat ons vroeër gevind het). U moet die uitset van die kamera sien. As die prent gedraai moet word, moet u die py -script wysig. Aan die onderkant is 'n opmerking, voer die rotasie -grade hieronder in wat u benodig. Vir my was dit 180, want my kamera is onderstebo.

Om MJPG-Streamer uit te voer

Om-j.webp

Sodra dit loop, gaan na 192.168.1. XX: 8080 (die IP wat ons vroeër gevind het) en klik op streaming. Speel met die ander opsies, dit kan nuttig wees vir jou.

En dit is dit. U behoort nou u eie FPV -tenk te kan vervoer waar u ook al u wifi kan kry. Hê pret.

Stap 5: Klaar produk

En hier is 'n video van alles wat werk.

Net 'n opmerking dat ek die Raspi 3 op my skootrekenaar ingeprop het om dit in die video aan te skakel terwyl die kragbank tydens 'n paar toetse opraak. Dit het amper 'n uur geduur, waaroor ek baie bly was.

Lewer kommentaar as u enige het, en ek hoop dat u dit geniet om hierdie Raspberry Pi 3 FPV Lego Tank te maak as u dit probeer.

Dankie, Ben

Aanbeveel: