INHOUDSOPGAWE:

Framboos SPy -robot: 8 stappe (met foto's)
Framboos SPy -robot: 8 stappe (met foto's)

Video: Framboos SPy -robot: 8 stappe (met foto's)

Video: Framboos SPy -robot: 8 stappe (met foto's)
Video: Taart in 1 minuut! Je maakt deze cake elke dag #003 2024, Julie
Anonim
Image
Image
Framboos SPy Robot
Framboos SPy Robot

Met hierdie projek kan u 'n robot via 'n webblad bestuur en 'n lewendige stroom sien. Dit kan gebruik word om na troeteldiere te kyk, om seker te maak dat niks in u oond brand nie, en selfs voëlkyk! DFRobot het die Raspberry Pi 3 en die Raspberry Pi -kameramodule verskaf.

Stap 1: Die robotelektronika

Die robotelektronika
Die robotelektronika

Ek het begin met die montering van die 2WD MiniQ -onderstelstel van DFRobot. Ek het die wiele op die motoras gesit, dit dan tussen hakies geplaas en aan die onderstel vasgemaak. Uiteindelik het ek die metaalsteun bygevoeg. Nou was dit tyd om die hoofbord te bou. Die motorbestuurder van die L293d is vasgesoldeer, en drade loop na die GPIO -penne van die Raspberry Pi. Vervolgens het ek 'n aansluiting vir die battery gesoldeer, aangesien dit die krag sal verskaf. Nadat die kragbron bygevoeg is, het ek 'n 5V -reguleerder geïnstalleer.

Stap 2: Die opstel van die Pi

Die opstel van die Pi
Die opstel van die Pi

DFRobot het na my gereageer en hul Raspberry Pi 3 en Raspberry Pi Camera Module gestuur. Nadat ek die bokse oopgemaak het, het ek aan die werk gekom deur die SD -kaart op te stel. Eers het ek na die Raspberry Pi Downloads -bladsy gegaan en die mees onlangse weergawe van Raspbian afgelaai. Ek haal dan die lêer uit en plaas dit in 'n gerieflike gids. U kan nie net 'n.img -lêer na 'n SD -kaart kopieer/plak nie, u moet dit 'op die kaart' brand. U kan 'n brandende program soos Etcher.io aflaai om die OS -prent maklik oor te dra. Nadat die.img -lêer op my SD -kaart was, het ek dit in die Raspberry Pi geplaas en dit krag gegee. Na ongeveer 50 sekondes trek ek die koord uit en verwyder die SD -kaart. Daarna sit ek die SD kaart terug in my rekenaar en gaan na die "boot" gids. Ek het die notaboek oopgemaak en dit as 'n leë lêer met die naam "ssh" gestoor sonder GEEN uitbreiding. Daar was ook 'n lêer wat ek bygevoeg het met die naam "wpa_supplicant.conf" en hierdie teks daarin geplaas:

netwerk = {ssid = psk =}

Toe het ek die kaart gestoor en uitgestoot en teruggeplaas in die Raspberry Pi 3. Dit moet nou voorsiening maak vir die gebruik van SSH en verbinding met WiFi.

Stap 3: Maak die kamera gereed

Maak die kamera gereed
Maak die kamera gereed

Die kamera is standaard op die Pi gedeaktiveer, dus moet u die terminale tipe sudo raspi-config oopmaak om die spyskaart te open. Gaan na "koppelvlakopsies" en aktiveer die kamera. Kies nou 'Voltooi' en steek die lintkabel van die kameramodule in die korrekte area van die Pi.

Stap 4: Installeer sagteware

Daar is verskillende sagteware wat video kan stroom, soos vlc en motion, maar ek het besluit om die mjpeg-streamer te gebruik vanweë die lae vertraging en maklike installasie. Volgens die instruksies op die webwerf, doen 'n git-kloon https://github.com/jacksonliam/mjpg-streamer.git in 'n gids en tik dan sudo apt-get install cmake libjpeg8-dev om die nodige biblioteke te installeer. Verander u gids in die gids wat u afgelaai het en tik dan make, gevolg deur sudo make install om die sagteware saam te stel. Voer uiteindelik uitvoer LD_LIBRARY_PATH = in. en om dit uit te voer, tik./mjpg_streamer -o "output_http.so -w./www" -i "input_raspicam.so" U het toegang tot die stroom deur na https://: 8080/stream.html te gaan om die stroom te sien.

Stap 5: Beheerder

Beheerder
Beheerder
Beheerder
Beheerder

Toe kom die gedeelte oor hoe om 'n Raspberry Pi via WiFi te beheer, omdat Bluetooth te min reikafstand het. Ek het besluit om 'n Flask -bediener op die Raspberry PI en 'n ESP8266 ESP12E -module te gebruik om data daarheen te stuur. Die ESP8266 het slegs een analoog ingang, wat beteken dat ek nie die joystick direk kon gebruik nie, aangesien dit twee analoog insette benodig. Die beste opsie was die ADS1115, 'n I2C -toestel wat analoog seine met 'n resolusie van 16 bis lees. Ek het eenvoudig SDA met 4 en SCL met 5 verbind, saam met VCC en GND. Die joystick X -as maak verbinding met A0 op die ADS1115, en die Y -as maak verbinding met A1. MAAR, ek het per ongeluk die ADS1115 uitgebrand, so ek moes die volgende beste gebruik: knoppies! My opset is dus 'n ESP8266 Sparkfun Thing Dev Board met 3 knoppies- vorentoe, regs en links. Elke keer dat daar ingedruk word, stuur dit data om die wiele in daardie rigting te draai.

Stap 6: Die kode vir die robot

Die kode vir die robot
Die kode vir die robot

Ek het 'n vorige projek gemaak wat die Pi se GPIO PWM-biblioteek gebruik het om motors via json te beheer, so ek het die kode net herontwerp om data via 'n Flask-app te aanvaar. Flask is 'n Python -biblioteek wat jou Pi in wese verander in 'n webserver wat data kan stuur en ontvang. Deur PWM te gebruik, kan die motors met groter akkuraatheid beheer word in vergelyking met tenkaandrywing. Dit beteken ook dat die robot teen veranderlike snelhede kan ry eerder as 'n vaste een. My kolf -app is ingestel om die PWM van die motors te verander sodra dit data ontvang van 'n GET -versoek via http van die ESP12e. Dit gebruik ook die subprocess. Popen -biblioteek om die webstreaming -skrip op die agtergrond uit te voer. Ek het die kode aan die projekbladsy aangeheg, so al wat nodig is, is om af te laai.

Stap 7: Kontroleerkode

Die kode was redelik eenvoudig, neem net die metings uit die 3 penne, voer 'n paar as -stellings om die rigting van die wiel te bepaal, en stuur uiteindelik die waardes na die Raspberry Pi. Die byvoeging van die ESP8266 -bord vir die Arduino IDE kom met die HTTPClient -biblioteek, wat opskrifte hanteer en data stuur. Die Flask -bediener moet data ontvang via 'n POST -oproep, sodat die kode 'n verbinding met die Raspberry Pi -webbediener begin, en dan 'n opskrif by die data voeg wat aandui dat dit JSON -gekodeer is, en uiteindelik stuur dit die data in die vorm van 'n JSON -voorwerp. Ek het 'n vertraging van 40 ms bygevoeg om te voorkom dat die Raspberry Pi oorlaai word met data.

Stap 8: Begin die Framboospioen

Die gebruik van die Framboos SPy
Die gebruik van die Framboos SPy
Die gebruik van die Framboos SPy
Die gebruik van die Framboos SPy

Al wat nodig is, is om sudo python.py te tik! U moet die kamera sien brand, en deur na die webadres van die pi met poort 8080 te gaan, moet die stroom sigbaar wees. Nou kan u die beheerder oral in die huis gebruik en ook 'n lewendige voer hê.

Aanbeveel: