Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Denne instruksen vil gi deg en trinnvis veiledning for konstruksjonen av The Collision Prevention System. For å starte må man skaffe følgende materialeliste:
Raspberry PI 3 (med strøm- og Ethernet -akkorder), 1 GPIO forlengelseskort og båndkabel (GPIO), 1 stort brødbrett med diagram, 2 små brødbrett med diagram, 14 hoppekabler, 3220 Ohm motstand, 1 RGB LED, 3 knappebrytere, 1HB-SR04 Ultralydsensor
Trinn 1: GPIO -utvidelse
Koble GPIO -forlengelseskortet til det store brødbrettet. GPIO skal vende loddrett akkurat som brødbrettet. Tilordne venstre side av GPIO til brødbrettportene D1-D20 ved hjelp av diagrammet. Høyre side vil deretter koble til H1-H20. Koble båndkabelen til både Raspberry Pi 3 og GPIO -forlengelseskortet. Hele denne komponenten vil nå bli referert til som GPIO -kortet (GPIO)
Trinn 2: Ultralydsensor
Ved å bruke et annet mindre brødbrett, kobler du ultralydsensoren HR-SR04 til de mindre brødbrettportene A2-5 ved hjelp av det medfølgende diagrammet. Koble en startkabel til det mindre brødbrettet (BB) E2, sett den andre enden inn i GPIO forlengelseskortport J1. På samme måte kan du koble til ytterligere tre hoppere på følgende måte. (BB E3, GPIO B17) (BB E4, GPIO B18) (BB E5, GPIO B20)
Trinn 3: LED og motstander
På samme lille brødbrett som ble brukt i forrige instruksjon, kobler du til tre 220 ohm motstander på følgende måte. (E10, H10) (E12, H12) (E14, H14) Koble deretter en jumper fra samme brødbrett E13 til bakkenergiskinnen på GPIO -kortet. Koble de fire pinnene på LED -en til de mindre brødbrettportene (B13) (D14) (D12) (D10). Koble deretter tre hoppere fra det mindre brødbrettet til GPIO -brettet på den tildelte måten. (BB J10, GPIO J9) (BB J12, GPIO J8) (BB J14, GPIO J6). Dette brødbrettet er nå komplett.
Trinn 4: Bakken
Bruk en annen jumper til å koble GPIO -kortet J7 til bakkenergiskinnen.
Trinn 5: Knapper
Ved å bruke det andre brødbrettet plasserer du toppen av en knappbryter på port E1 og D1, plasserer en annen ved E5 og D5, og en tredje ved E9 og D9. Koble tre hoppere fra den positive kraftskinnen på GPIO -kortet til følgende brødbrettsporter (D3) (D7) (D11). Bruk ytterligere tre startkabler til å koble brødbrettet til forlengelseskortet GPIO i følgende herregård: (BB D1, GPIO J16) (BB D5, GPIO J18) (BB D9, GPIO J20). Til slutt, ved hjelp av den siste startkabelen, kobler du GPIO A1 til den positive strømskinnen. Det fysiske oppsettet er nå fullført.
Trinn 6: Kode
Koble Ethernet -kabelen og strømkabelen til Pi og til hver sin posisjon. Åpne MATLAB og kjør følgende skript for å initialisere mikrokontrolleren:
rpi = raspi ('169.254.0.2', 'pi', 'bringebær');
Kopier deretter og lim inn følgende i et nytt skript, kalt Ping, for å kjøre kollisjonsforebyggende system:
funksjon dist = ping () trig = 19; ekko = 13; test = 21; configurePin (rpi, trig, 'DigitalOutput'); configurePin (rpi, echo, 'DigitalInput'); configurePin (rpi, test, 'DigitalInput');
disp ("Avstandsmåling pågår");
mens true writeDigitalPin (rpi, trig, 0); disp ("La sensoren sette seg"); pause (2);
writeDigitalPin (rpi, trig, 1); pause (0,002); writeDigitalPin (rpi, trig, 0);
mens readDigitalPin (rpi, echo) == 0 tic end
mens readDigitalPin (rpi, ekko) == 1 T = toc; slutt
pulse_duration = T; avstand = puls_varighet * 17150;
åpen = "Avstand ="; lukk = "cm"; streng = [åpen, avstand, lukk]; disp (streng); dist = distanse; ende ende
I et nytt skript, kjør følgende kode med navnet status:
configurePin (rpi, 21, 'DigitalInput'); configurePin (rpi, 16, 'DigitalInput'); configurePin (rpi, 12, 'DigitalInput');
status = 2; d = 10; %Status: 0-Rød/Stopp 1-Blå/Sakte 2-Grønn/Gå i gang = sant; mens du kjører %d = ping (); hvis readDigitalPin (rpi, 21) == 1 status = 0; elseif readDigitalPin (rpi, 16) == 1 status = 1; elseif readDigitalPin (rpi, 12) == 1 status = 2; annet hvis d