Sadržaj:

Sprječavanje sudara- Pokreće Pi: 6 koraka
Sprječavanje sudara- Pokreće Pi: 6 koraka

Video: Sprječavanje sudara- Pokreće Pi: 6 koraka

Video: Sprječavanje sudara- Pokreće Pi: 6 koraka
Video: ПРИВОЗ. ОДЕССА МАМА. Рецепт САЛО. ОБЗОР НОЖЕЙ 2024, Juli
Anonim
Sprječavanje sudara- Pokreće Pi
Sprječavanje sudara- Pokreće Pi

Ovaj Instructable će vam dati korak-po-korak vodič za izgradnju sistema za sprječavanje sudara. Za početak morate nabaviti sljedeću listu materijala:

Raspberry PI 3 (sa napajanjem i Ethernet akordima), 1 GPIO produžna ploča i vrpčani kabel (GPIO), 1 velika pločica sa dijagramom, 2 male ploče s dijagramom, 14 kratkospojnih kabela, 3 220 ohmskih otpornika, 1 RGB LED, 3 prekidača s gumbima, 1HB-SR04 Ultrazvučni senzor

Korak 1: GPIO proširenje

GPIO proširenje
GPIO proširenje
GPIO proširenje
GPIO proširenje

Priključite GPIO produžnu ploču na veliku ploču. GPIO bi trebao biti okrenut vertikalno isto kao i matična ploča. Dodijelite lijevu stranu GPIO-a priključcima za matičnu ploču D1-D20 koristeći priloženi dijagram. Desna strana bi se tada spojila na H1-H20. Spojite vrpčani kabel na Raspberry Pi 3 i GPIO ploču za proširenje. Cijela ova komponenta sada će se nazivati GPIO ploča (GPIO)

Korak 2: Ultrazvučni senzor

Ultrazvučni senzor
Ultrazvučni senzor
Ultrazvučni senzor
Ultrazvučni senzor

Pomoću druge manje matične ploče povežite ultrazvučni senzor HR-SR04 s manjim priključcima matične ploče A2-5 pomoću priloženog dijagrama. Spojite kratkospojni kabel na manju matičnu ploču (BB) E2, drugi kraj umetnite u priključak ploče za proširenje GPIO J1. Na isti način spojite još tri kratkospojnika na sljedeći način. (BB E3, GPIO B17) (BB E4, GPIO B18) (BB E5, GPIO B20)

Korak 3: LED i otpornici

LED i otpornici
LED i otpornici
LED i otpornici
LED i otpornici
LED i otpornici
LED i otpornici

Na istu malu matičnu ploču koja je korištena u prethodnim uputama, spojite tri otpornika od 220 ohma na sljedeći način. (E10, H10) (E12, H12) (E14, H14) Zatim spojite kratkospojnik s iste matične ploče E13 na uzemljenu vodilicu na GPIO ploči. Spojite četiri zupca LED diode na manje priključke za matičnu ploču (B13) (D14) (D12) (D10). Zatim spojite tri kratkospojnika s manje matične ploče na GPIO ploču na dodijeljeni način. (BB J10, GPIO J9) (BB J12, GPIO J8) (BB J14, GPIO J6). Ova ploča je sada potpuna.

Korak 4: Uzemljenje

Ground
Ground

Upotrijebite drugi kratkospojnik za povezivanje GPIO ploče J7 sa uzemljenjem.

Korak 5: Dugmad

Buttons
Buttons

Pomoću druge matične ploče postavite gornji prekidač s gumbima na priključke E1 i D1, postavite drugu na E5 i D5, a treću na E9 i D9. Spojite tri kratkospojnika s pozitivne razvodne ploče na GPIO ploči sa sljedećim priključcima za matičnu ploču (D3) (D7) (D11). Koristeći još tri kratkospojna kabela, priključite matičnu ploču na GPIO produžnu ploču u sljedećem dvorištu: (BB D1, GPIO J16) (BB D5, GPIO J18) (BB D9, GPIO J20). Konačno, koristeći posljednji kratkospojnik, spojite GPIO A1 na pozitivnu vodilicu. Fizičko postavljanje je sada završeno.

Korak 6: Kodirajte

Kod
Kod
Kod
Kod

Priključite Ethernet kabel i kabel za napajanje na Pi i u njihove odgovarajuće položaje. Otvorite MATLAB i pokrenite sljedeću skriptu za inicijalizaciju mikrokontrolera:

rpi = raspi ('169.254.0.2', 'pi', 'malina');

Zatim kopirajte i zalijepite sljedeće u novu skriptu, koja se zove Ping, da biste pokrenuli sistem za sprječavanje sudara:

funkcija dist = ping () trig = 19; echo = 13; test = 21; configurePin (rpi, trig, 'DigitalOutput'); configurePin (rpi, echo, 'DigitalInput'); configurePin (rpi, test, 'DigitalInput');

disp ("Mjerenje udaljenosti u toku");

dok true writeDigitalPin (rpi, trig, 0); disp ("Puštanje senzora da se slegne"); pauza (2);

writeDigitalPin (rpi, trig, 1); pauza (0,002); writeDigitalPin (rpi, trig, 0);

dok je readDigitalPin (rpi, echo) == 0 tički kraj

dok je readDigitalPin (rpi, echo) == 1 T = toc; kraj

puls_duration = T; udaljenost = puls_duration * 17150;

open = "Udaljenost ="; close = "cm"; string = [otvaranje, udaljenost, zatvaranje]; disp (niz); dist = udaljenost; end end

U novoj skripti pokrenite sljedeći kodni naziv status:

configurePin (rpi, 21, 'DigitalInput'); configurePin (rpi, 16, 'DigitalInput'); configurePin (rpi, 12, 'DigitalInput');

status = 2; d = 10; %Status: 0-crveno/zaustavi 1-plavo/sporo 2-zeleno/trči = tačno; dok radi %d = ping (); ako je readDigitalPin (rpi, 21) == 1 status = 0; elseif readDigitalPin (rpi, 16) == 1 status = 1; elseif readDigitalPin (rpi, 12) == 1 status = 2; elseif d

Preporučuje se: