Obsah:
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
Tento návod vám poskytne podrobný návod na konštrukciu systému prevencie kolízií. Na začiatok je potrebné získať nasledujúci zoznam materiálov:
Raspberry PI 3 (s napájacími a ethernetovými akordmi), 1 rozširujúca doska GPIO a plochý kábel (GPIO), 1 veľký Breadboard s diagramom, 2 malé prepojovacie panely s diagramom, 14 prepojovacích káblov, odpor 3 220 ohmov, 1 RGB LED, 3 prepínače tlačidiel, 1HB-SR04 Ultrazvukový senzor
Krok 1: Rozšírenie GPIO
Pripojte rozširujúcu dosku GPIO k veľkému breadboardu. GPIO by malo byť otočené zvisle, rovnako ako je to na doske. Priraďte ľavú stranu GPIO k portom nepájivého poľa D1-D20 podľa priloženého diagramu. Pravá strana by sa potom pripojila k H1-H20. Pripojte plochý kábel k Raspberry Pi 3 aj k rozširovacej doske GPIO. Celý tento komponent bude teraz označovaný ako doska GPIO (GPIO)
Krok 2: Ultrazvukový senzor
Pomocou iného menšieho prepojovacieho panelu prepojte ultrazvukový snímač HR-SR04 s menšími portami A2–5 pomocou dodanej schémy. Pripojte prepojovací kábel k menšej doske (BB) E2, druhý koniec zapojte do portu rozširujúcej dosky GPIO J1. Rovnakým spôsobom prepojte ďalšie tri prepojky nasledujúcim spôsobom. (BB E3, GPIO B17) (BB E4, GPIO B18) (BB E5, GPIO B20)
Krok 3: LED a rezistory
Na rovnakú malú dosku použitú v predchádzajúcej inštrukcii pripojte tri odpory 220 ohmov nasledujúcim spôsobom. (E10, H10) (E12, H12) (E14, H14) Potom prepojte prepojku z rovnakého nepájivého poľa E13 s uzemňovacou napájacou lištou na doske GPIO. Pripojte štyri hroty diódy LED k menším portom nepájivej dosky (B13) (D14) (D12) (D10). Potom priradeným spôsobom prepojte tri prepojky z menšieho prepojovacieho panelu na dosku GPIO. (BB J10, GPIO J9) (BB J12, GPIO J8) (BB J14, GPIO J6). Tento breadboard je teraz kompletný.
Krok 4: Uzemnite
Použite iný prepojovací kábel na pripojenie dosky GPIO J7 k uzemňovacej napájacej lište.
Krok 5: Tlačidlá
Pomocou druhého prepojovacieho panelu umiestnite hornú časť tlačidla na port E1 a D1, ďalší umiestnite na E5 a D5 a tretí na E9 a D9. Pripojte tri prepojky z kladnej napájacej lišty na doske GPIO k nasledujúcim portom (D3) (D7) (D11). Pomocou troch ďalších prepojovacích káblov prepojte prepojovací panel s rozširujúcou doskou GPIO v nasledujúcom poradí: (BB D1, GPIO J16) (BB D5, GPIO J18) (BB D9, GPIO J20). Nakoniec pomocou posledného prepojovacieho kábla pripojte GPIO A1 k kladnej silovej lište. Fyzické nastavenie je teraz dokončené.
Krok 6: Kód
Pripojte ethernetový kábel a napájací kábel k pí a do príslušných polôh. Otvorte MATLAB a spustením nasledujúceho skriptu inicializujte mikrokontrolér:
rpi = raspi ('169.254.0.2', 'pi', 'malina');
Potom skopírujte a prilepte nasledujúce položky do nového skriptu s názvom Ping, aby sa spustil systém prevencie kolízií:
funkcia dist = ping () trig = 19; ozvena = 13; test = 21; configurePin (rpi, trig, 'DigitalOutput'); configurePin (rpi, echo, 'DigitalInput'); configurePin (rpi, test, 'DigitalInput');
disp ("Prebieha meranie vzdialenosti");
zatiaľ čo true writeDigitalPin (rpi, trig, 0); disp ("Nechajte senzor usadiť"); pauza (2);
writeDigitalPin (rpi, trig, 1); pauza (0,002); writeDigitalPin (rpi, trig, 0);
zatiaľ čo readDigitalPin (rpi, echo) == 0 tic end
pri čítaníDigitalPin (rpi, echo) == 1 T = toc; koniec
pulse_duration = T; vzdialenosť = trvanie pulzu * 17150;
otvorený = "Vzdialenosť ="; zavrieť = "cm"; reťazec = [otvorený, vzdialenosť, zatvorený]; disp (reťazec); dist = vzdialenosť; koniec koniec
V novom skripte spustite nasledujúci kód s názvom status:
configurePin (rpi, 21, 'DigitalInput'); configurePin (rpi, 16, 'DigitalInput'); configurePin (rpi, 12, 'DigitalInput');
stav = 2; d = 10; %Stavu: 0-červená/zastávka 1-modrá/pomalá 2-zelená/beží = true; počas behu %d = ping (); ak je prečítanéDigitalPin (rpi, 21) == 1 stav = 0; elseif readDigitalPin (rpi, 16) == 1 stav = 1; elseif readDigitalPin (rpi, 12) == 1 stav = 2; inak d