» elektronika » Arduino »Távolságmérő az Arduino platformon!

A távolságmérő az Arduino platformon!


Jó napot mindenkinek! Ebben a cikkben szeretném elmondani, hogyan kell használni Arduino, egy LED-készlet és egy ultrahangos érzékelő, összeállíthat egy eszközt, amely meghatározza a megfigyelő és a tárgy közötti távolságot, vagyis távolságmérő. És hát menjünk!
Mire van szükségünk:
szokásos mezőbe. Kívánatos, hogy kicsi legyen, mivel csak egy mikrovezérlőt tartalmaz.

Az ultrahangos jeladó HC-SR04 meg tudjuk határozni a távolságot.

Négy számjegyű jelző ki kell adnunk a kapott értékeket.

készlet LED bármilyen szín (zöldként használtam, mivel világosabbak), ellenállások 220 ohm mellett vezetékek vagy jumpers is Breadboard.





Annak érdekében, hogy eszközünk alkatrészei biztonságosan rögzüljenek, forrasztom őket.
Ehhez szükségünk van forrasztópáka, fluxus, forraszthatóis kenyérlemez forrasztáshoz.

És természetesen anélkül Arduino nem tudjuk csinálni! (Választhat bármilyen mikrovezérlőt, én inkább az Arduino Leonardo-t vagy annak megfelelő Iskra Neo-t választottam)

A szerszámokhoz, amire fentebb mondtam, forrasztópáka szükséges, kés és fogók.

Most kezdjük el az eszköz összeszerelését.
1. lépés
Az induláshoz kenyértartó táblával össze fogjuk állítani a jövőbeni eszközünk prototípusát. Valami így néz ki ..

Ne aggódj! Semmi szörnyű ebben a vezetékek rendetlenségében!
A HC-SR04 érzékelőnek négy érintkezője van: plusz, mínusz (amelyeket a vezérlő 5 V-os és GND-jébe ragasztunk), Trig és Echo (az arduino csapokat a 12-es, illetve a 11-esbe helyezzük).
A négy számjegyű jelzőfénynek három vezetéke van: áramellátás, föld és jel. Ez utóbbi csatlakozik a 9 tűs Arduino-hoz.
Három LED-et összekötünk a vezérlő 6, 5 és 4 érintkezőjével sorba az ellenállásokkal. Ne felejtsük el a polaritást. Az áram hosszabb lábról rövidebbre áramlik.
Ez minden, amikor összeállítottuk készülékünket egy kenyérdeszkára, feltöltöttük a vázlatot (ez a cikk végén lesz) és meggyőződtünk arról, hogy minden működik, nyugodtan kezdje el forrasztani.
2. lépés
Először forrasztja az ultrahangos érzékelőt a kenyérpultra. Kisméretű kenyérlemezt használtam, mivel az elemek száma nem haladja meg a 7-et.

Ezután harapók segítségével harapd le a lábakat (elnézést kérek a tautológiáért), tegyük rövidebbé, hogy ne zavarjanak, és szebb legyen!

Ezután forgassa a négy vezetéket az érzékelő érintkezőihez.


Ne felejtsd el a fogókat sem!


3. lépés
Az érzékelő a helyén van, a három LED-et meg kell forrasztani az ellenállásokkal együtt.


A hátoldalon ez a következőképpen néz ki:

4. lépés
A doboz oldalán vágjon le egy kerek lyukat az élelmiszer számára.

A fedélnél vágjon egy üreget a kenyérlemez méretéhez (kissé kisebb), és fúrjon lyukakat a csavarokhoz.


Ha egy üres kenyérdeszkát csavarozunk elemek nélkül (csak demonstráció céljából csináltam ..), akkor az alábbiakat kapjuk:

5. lépés
Tehát, hogy ez kényelmesebb legyen, azt javaslom, hogy először csatlakoztassa a vezetékeket az arduino-hoz, és csak ezután csavarja rá a kenyérdeszkát a doboz fedelére. Ezenkívül ne felejtsük el a mutatót, amelyet az elrendezés fölé helyeztem.

Az eszköz összeszerelése kész!
Csak a következő letöltés marad vázlat és élvezze a játékot!
#include
#include
NewPing szonár (12.11, 400);
int a, j, b;
alá nem írt hosszú t = 0;
int masiv [] = {1,0,0,0,1,0,0,0,1};
érvénytelen beállítás ()
{
 for (int i = 4; i <7; i ++)
 {
   pinMode (i, OUTPUT);
 }
 displayClear (9);
 for (int i = 4; i <7; i ++)
 {
   digitalWrite (i, 0);
 }
  }
üres hurok ()
{
  j = 7;
  (int i = 0; i100) hanghoz (2,70);
    digitalWrite (j, masiv [i]);
    míg (millis () <= t + b)
    {
    késleltetés (50);
    a = szonar.ping_cm ();
    displayInt (9, a);
    b = a;
    }
    t = millis ();
    ha (j == 4) j = 7;
    ha (i == 8)
    {
     digitalWrite (4.1);
     míg (millis () <= (t + b) + (b * 2))
     {
    késleltetés (50);
    a = szonar.ping_cm ();
    displayInt (9, a);
    b = a;
     }
     digitalWrite (4.0);
     t = millis ();
    }
  }



Néhány szó programkód. Hála neki, három LEDünk felváltva villog egymás után, és villogásuk sebessége függ a tárgytól való távolságtól, amelyet az ultrahangos érzékelő kiszámít. Annak érdekében, hogy a LED-ek villogjanak, nem teljesen logikus a késleltetés () függvény használata, mivel amikor azt használják, a vezérlő lefagy, és nem történik számítás. A probléma megoldására többféle mód van. Különösen az egyik a millis () függvény használata, amely számot milliszekundumban ad vissza a vezérlő működésének pillanatától kezdve. És hogyan lehet késleltetni egy feltételes 100 milliszekundumot? Ehhez alapvetően üres ciklust készítettem, amelyből csak ez a 100 milliszekundum után lehet kilépni, majd a program folytatja a LED-ek be- és kikapcsolását.

Hát ennyi! Köszönjük, hogy végül elolvasta ezt a cikket. Remélem, nem csak tetszett neki, hanem új tengert inspirált iparművészet és találmányok!
6
5
5

Adj hozzá egy megjegyzést

    • smilemosolyogxaxarendbendontknowjehunea
      főnökkarcolásbolondigenigen-igenagresszívtitok
      Bocsánattáncdance2dance3megbocsátássegítségitalok
      megállásbarátokjógoodgoodsípájulásnyelv
      füsttapsolóCrayállapítsagúnyosdon-t_mentionletöltés
      hőségingerültlaugh1MDAtalálkozómoskingnegatív
      not_ipopcornbüntetolvasmegijesztijesztkeresés
      gúnyolódásthank_youeztto_clueumnikakutegyetért
      rosszbeeeblack_eyeblum3pírdicsekvésunalom
      cenzúrázottvidámságsecret2fenyegetgyőzelemyusun_bespectacled
      ShokRespektlolprevedfogadtatáskrutoyya_za
      ya_dobryisegítőne_huliganne_othodiFLUDtilalomközel
7 megjegyzés
A szerző
szia)
Talán még mindig működik egy vázlat? Ebben kiderül, hogy még a "<" jel helyébe "& lt;")
Üdvözlünk! Amikor betölti a vázlatot, valamilyen oknál fogva egy csomó szintaxis hibát okoz. Természetesen nem vagyok nagyon boldogan a szintaxis, de bizonyos helyeken nem tudom kitalálni, mit kell javítani. Például egy darabban:
(int i = 0; i100) hanghoz (2,70);
digitalWrite (j, masiv [i]);
, mit jelent az egyesített i100? miért nem növekmény? Szüksége van göndör tartóra, hogy a következő két funkció ugyanahhoz a hurokhoz tartozik, vagy tévedek? Így a fordító esküszik az egész kódra. Kapcsolatba léphetek valamivel, tisztázhatom a kódot? Próbálok kurzus projektet készíteni az Ön cikke alapján.

Ezenkívül a könyvtárak csatlakozási helyének kódjában a nevüket sem tüntetik fel. Természetesen kitalálhatja, de ez a vázlat nem igazán alkalmas a működőképesség azonnali ellenőrzésére, ezt át kell gondolni)
A szerző
Igen, lehetséges)
Vagyis az utolsó előtti fénykép (amelyben 77) egyszerűen sikertelen a felső szegmensek bizonyos parazita megvilágítása miatt, a dinamikus kijelző helytelen működésének eredményeként? A hatnak van hamis háttérvilágítása is, bár nem olyan nyilvánvaló.
A szerző
Iván, a 6 és 11 cm leolvasások az érzékelő és a tenyér közötti távolság)
Magyarázza meg, miért ilyen furcsa bizonyság az elmúlt két fényképben.

Azt javasoljuk, hogy olvassa el:

Adja át az okostelefon számára ...