» Elektronika » Arduino »Diapazona meklētājs Arduino platformā!

Diapazona meklētājs Arduino platformā!


Laba diena visiem! Šajā rakstā es gribētu pastāstīt, kā izmantojot Arduino, gaismas diožu komplekts un ultraskaņas sensors, jūs varat salikt ierīci, kas nosaka attālumu no novērotāja līdz objektam, citiem vārdiem sakot, diapazona meklētājs. Un tāpēc iesim!
Kas mums vajadzīgs:
Vienkāršs kaste. Vēlams, lai tas būtu mazs, jo tajā būs tikai viens mikrokontrollers.

Izmantojot ultraskaņas pārveidotājs HC-SR04 mēs varam noteikt attālumu.

Četru ciparu indikators mums jāizvada iegūtās vērtības.

Komplekts Gaismas diodes jebkuras krāsas (es izmantoju zaļu, jo tās ir gaišākas), rezistori pie 220 omi vadi vai arī džemperi maizes dēlis.





Lai mūsu ierīces komponenti būtu droši nostiprināti, es tos lodēšu.
Tas mums ir vajadzīgs lodāmurs, plūsma, lodēšanakā arī maizes dēlis lodēšanai.

Un, protams, bez Arduino mēs nevaram darīt! (Jūs varat izvēlēties jebkuru mikrokontrolleri, es labāk devu Arduino Leonardo vai tam līdzvērtīgu Iskra Neo)

Kā jau es teicu, no instrumentiem, kas mums nepieciešami lodāmurs, nazis un knaibles.

Tagad sāksim ierīces montāžu.
1. darbība
Lai sāktu, izmantojot maizes dēli, mēs saliksim savas nākotnes ierīces prototipu. Tas izskatīsies kaut kas līdzīgs šim ..

Neuztraucieties! Šajā vadu putrā nav nekā briesmīga!
HC-SR04 sensoram ir četri kontakti: plus, mīnus (ko mēs iestiprinām kontroliera 5 V un GND), Trig un Echo (mēs ievietojam arduino tapas attiecīgi 12 un 11).
Četrciparu indikatoram ir 3 vadi: jauda, ​​zeme un signāls. Pēdējais ir savienots ar 9 kontaktu Arduino.
Mēs savienojam trīs gaismas diodes ar regulatora 6, 5 un 4 kontaktiem virknē ar rezistoriem. Neaizmirstiet par polaritāti. Strāva plūst no garākas kājas uz īsāku.
Tas ir viss, kad mēs salikām savu ierīci uz maizes tāfeles, augšupielādējām skici (tā būs raksta beigās) un pārliecinājāmies, ka viss darbojas, jūtieties brīvi sākt lodēt.
2. solis
Vispirms pielodējiet ultraskaņas sensoru pie maizes paneļa. Es izmērā izmantoju nelielu maizes dēli, jo elementu skaits nepārsniedz 7.

Pēc tam ar nipeļu palīdzību nokož kājas (atvainojos par tautoloģiju), padarot tās īsākas, lai tās netraucētu un izskatās glītākas!

Pēc tam pielodējiet četrus vadus pret sensora kontaktiem.


Neaizmirstiet arī par nipeļiem!


3. solis
Sensors ir vietā, paliek jālodē trīs gaismas diodes kopā ar rezistoriem.


Otrā pusē tas izskatās šādi:

4. solis
Kastes sānos nogrieziet apaļu caurumu pārtikai.

Uz vāka jums jāizgriež dobums līdz maizes tāfeles izmēram (nedaudz mazākam garumā), kā arī jāizurbj caurumi skrūvēm.


Tagad, ja mēs ieskrūvējam tukšu maizes dēli bez elementiem (es to izdarīju tikai demonstrēšanai ..), mēs iegūstam kaut ko līdzīgu:

5. darbība
Tāpēc, lai to padarītu ērtāku, es ierosinu vispirms savienot vadus arduino un tikai pēc tam pieskrūvēt maizes dēli pie kastes vāka. Tāpat neaizmirstiet par mūsu indikatoru, kuru es ievietoju virs izkārtojuma.

Viss šajā ierīcē ir pabeigts!
Atliek tikai lejupielādēt nākamo skice un izbaudi rotaļlietu!
# iekļaut
# iekļaut
NewPing hidrolokatoru (12.11., 400);
int a, j, b;
neparakstīts garš t = 0;
int masiv [] = {1,0,0,0,1,0,0,0,1};
iestatīšana nav spēkā ()
{
 priekš (int i = 4; i & lt; 7; i ++)
 {
   pinMode (i, OUTPUT);
 }
 displayClear (9);
 priekš (int i = 4; i & lt; 7; i ++)
 {
   digitalWrite (i, 0);
 }
  }
tukšs cilpa ()
{
  j = 7;
  par (int i = 0; i100) tonim (2,70);
    digitalWrite (j, masiv [i]);
    savukārt (milisi () & lt; = t + b)
    {
    kavēšanās (50);
    a = hidrolokatoru.ping_cm ();
    displayInt (9, a);
    b = a;
    }
    t = milisi ();
    ja (j == 4) j = 7;
    ja (i == 8)
    {
     digitalWrite (4.1);
     savukārt (milisi () & lt; = (t + b) + (b * 2))
     {
    kavēšanās (50);
    a = hidrolokatoru.ping_cm ();
    displayInt (9, a);
    b = a;
     }
     digitalWrite (4.0);
     t = milisi ();
    }
  }



Daži vārdi programmas kods. Pateicoties viņam, mūsu trīs gaismas diodes mirgos pārmaiņus viena pēc otras, un to mirgošanas ātrums būs atkarīgs no attāluma līdz objektam, ko aprēķina ultraskaņas sensors. Bet, lai gaismas diodes mirgo, nav gluži loģiski izmantot kavēšanās () funkciju, jo, kad to izmanto, kontrolieris sasalst un netiek veikti aprēķini. Šīs problēmas risināšanai ir vairāki veidi. Jo īpaši viens no tiem ir funkcijas millis () izmantošana, kas atgriež skaitli milisekundēs no brīža, kad kontrolieris darbojas. Un kā mēs atliksim nosacīto 100 milisekundes? Lai to izdarītu, es izveidoju būtībā tukšu ciklu, kura izeja būs tikai pēc šīm 100 milisekundēm, un pēc tam programma darbosies, lai ieslēgtu / izslēgtu gaismas diodes.

Nu tas arī viss! Paldies, ka lasījāt šo rakstu līdz galam. Es ceru, ka jūs viņai ne tikai iepatikāties, bet arī iedvesmojāt jaunu jūru amatniecība un izgudrojumi!
6
5
5

Pievienojiet komentāru

    • smaidismaidaxaxalabinezinuYahoonea
      priekšniekssaskrāpētmuļķisjājā-jāagresīvsslepeni
      žēldejotdeja2deja3apžēlošanapalīdzētdzērieni
      apstātiesdraugilabilabsirdīgssvilpegulbismēle
      smēķētaplaudēkrauklispaziņodrausmīgsdon-t_mentionlejupielādēt
      karstumsdrausmīgssmieties1mdasapulceņirgāšanāsnegatīvs
      not_ipopkornssodītlasītnobiedētbiedēmeklēt
      ņurdētpaldiesšoto_clueumņikakūtapiekrītu
      sliktibēmelnā acsblum3sarktlielītiesgarlaicība
      cenzētspleasantryslepens2draudētuzvarajusun_bespectacled
      šoksrespektlolprevedlaipni gaidītikrutojsya_za
      ya_dobryipalīgsne_huliganne_othodifludsaizliegumstuvu
7 komentāri
Autore
Čau)
Varbūt jums joprojām ir skice, kas strādā? Šajā izrādās, ka pat zīme "<" tika aizstāta ar "& lt;")
Labdien Kad es ielādēju jūsu skici, tas kaut kādu iemeslu dēļ rada daudz sintakses kļūdu. Protams, es sintaksē īsti nekaunos, taču dažās vietās es nespēju saprast, kas jālabo. Piemēram, gabalā:
par (int i = 0; i100) tonim (2,70);
digitalWrite (j, masiv [i]);
, ko nozīmē apvienotais i100? kāpēc ne palielinājums? Vai jums ir nepieciešami cirtaini stiprinājumi, lai nākamās divas funkcijas pēc piederētu tai pašai cilpai, vai arī es kļūdos? Tātad kompilators zvēr visā kodā. Vai es varu kaut kā sazināties ar jums, noskaidrot kodu? Es cenšos izveidot kursa projektu, pamatojoties uz jūsu rakstu.

Arī kodā vietā, kur bibliotēkas ir savienotas, to nosaukumi nav norādīti. Protams, jūs varat uzminēt, bet tomēr šī skice nav īsti piemērota tūlītējai pārbaudei, jums tas ir jāpārdomā)
Autore
Jā, tas ir iespējams)
Tas ir, priekšpēdējais fotoattēls (kurā 77) ir vienkārši neveiksmīgs dažu augšējo segmentu parazītiskā apgaismojuma dēļ, kas rodas nepareizas dinamiskā displeja darbības rezultātā? Arī sešniekam ir nepatiess fona apgaismojums, kaut arī tas nav tik acīmredzams.
Autore
Ivan, rādījumi 6cm un 11cm ir attālums no sensora līdz plaukstai)
Lūdzu, paskaidrojiet, kāpēc tik dīvaina liecība pēdējās divās fotogrāfijās.

Mēs iesakām izlasīt:

Nododiet to viedtālrunim ...