Senzori "Arduin": opis, karakteristike, veza, pregledi

Arduino platforma je jedna od najboljih za projektiranje raznih automatiziranih sustava. Štoviše, Arduinov se na mnogim sveučilištima i fakultetima koristi za upoznavanje studenata s područja robotike. Doista, Arduino je vrlo lagana ali ujedno i moćna platforma za konstruiranje raznih robota i pametnih sustava. I prirodno je da sve to traje manje vremena, već se prodaju gotovi senzori. Prodavaonice imaju ogroman broj njih, tako da je prilično teško zaplesti se u odabiru pravog. U ovom članku, pogledajmo neke od glavnih Arduino senzora i kako oni rade.

Gdje kupiti

Činjenica je da su senzori u našim trgovinama vrijedni mnogo novca. A ako ćete početi učiti Arduino platformu, onda samo trebate znati gdje ih možete kupiti po niskoj cijeni. Odgovor je jednostavan - kineske trgovine. To mogu biti Aliexpress, Joom, Pandao i drugi. Gotovo sve trgovine kupuju senzore upravo tamo i prodaju ih s ogromnom marginom koja doseže i do 300%. Naravno, morate čekati neko vrijeme, a kao proizvod ne možete biti sigurni, ali platiti za isti senzor tri puta više, također, nije vrijedno toga. Primjer: Aliexpress ima skup od 36 senzora koji koštaju 800 rubalja. Isti skup u ruskoj trgovini prodati za 35 tisuća rubalja. Zato odlučite za sebe.


Servo pogon

Servo pogon se koristi pri izradi robota i raznih inteligentnih sustava. S servo pogonom možete ga otvoritivrata, učiti kut okretanja i još mnogo toga. Ali u osnovi se koristi pri stvaranju robota. Maksimalni kut zakretanja servomotora: 180 stupnjeva. Ali ponekad u području Aliexpress također možete vidjeti varijante s 360 stupnjeva okretanja kut. To je sasvim osnovni element, gotovo sve lekcije o Arduinu s senzorima počinju s njom. Servo se lako povezuje, programski kod je vrlo jednostavan za upravljanje. Za spajanje servo pogona koriste se samo tri žice: uzemljenje, napajanje, logika. Signalna žica (obično žuta ili smeđa) povezana je s bilo kojim kontaktom s PWM podrškom (široko-zaslonska impulsna modulacija) na Arduinu.


Primjer koda:

#include //povezivanje poslužitelja za servo upravljanje
Servo servo1; //deklariramo varijablu servo tipa "servo1"
void setup () //procedure setup
{
servo1.attach
; //vežu servo na analogni izlaz 11
}
void loop () //postupak petlje
{
servo1.write

; //postavimo kut zakretanja na 0
kašnjenje (2000); //pričekajte 2 sekunde
servo1.write ; //postaviti kut zakretanja na 90
kašnjenje (2000); //pričekajte 2 sekunde
servo1.write (180); //postaviti kut zakretanja na 180
kašnjenje (2000); //pričekajte 2 sekunde
}

Prvo, dodamo kodu knjižnicu koja već postoji u Arduinu, a zatim označavamo na koji je kontaktni servo povezan. Kao što možete vidjeti, rad sa servo uređajem je vrlo jednostavan, upravljanje je samo jedan operater.

Cijena za Aliexpress: 80-100 rubalja.

DHT-11

DHT-11 služi za mjerenje temperature i vlažnosti. Ovaj senzor temperature za Ardouine je najpopularnijizbog svoje cijene i mogućnosti. Mjeri temperaturu u rasponu od 0 do 50 stupnjeva, a vlažnost od 20 do 80%. Tu je i drugačija verzija ovog senzora u prodaji, DHT-22 opseg mjerenja ima više, ali košta nekoliko puta skuplje. Za jednostavne projekte njegova uporaba nije svrsishodna, stoga svatko više voli DHT-11 koji savršeno odgovara mjerenjima. Napajanje se može napajati od 3,3 do 5V. Općenito, sam senzor ima 4 priključka, ali u prodaji DHT-11 moduli rade s njima mnogo praktičnije, budući da se spajaju preko 3 kontakta i ne moraju trpjeti s otpornicima.


& lt; script type = "text /javascript" & gt;
može blockSettings2 = {blockId: "R-A-271049-5", renderTo: "yandex_rtb_R-A-70350-39", async: 0};
if (document.cookie.indexOf ("abmatch =") & gt; = 0) blockSettings2.statId = 70350;
Funkcija (a, b, c, d, e) {a [c] = a [c] || [], a [c] .push (funkcija () {Ya.Context.AdvManager.render (blockSettings2)}), e = b.getElementsByTagName ("script") , d = b.createElement ("script"), d.type = "text /javascript", d.src = "//an.yandex .ru /system /context.js ", d.async =! 0e.parentNode.insertBefore (d, e)} (ovaj, ovaj.dokument," yandexContextAsyncCallbacks ");

Povezivanje. Ovaj osjetnik temperature priključen je na "Arduino" pomoću tri kontakta: uzemljenja, snage i logike.

Primjer koda:

# uključiti "DHT.h"
#define DHTPIN 2 //Isti broj pjene spomenutih gore
DHT dht (DHTPIN, DHT11);
void setup () {
Serijski broj (9600);
dht. Početak ();
}
kašnjenje void () {
(2000); //2 sekunde odgode
float h = dht.readHumidity (); //mjerimo vlažnost
float t = dht.readTemperature (); //Izmjerite temperaturu
ako (isnan (h) || isnan (t)) {//Provjerite. Ako se certifikat ne može uzeti u obzir, prikazuje se "Read Error" i program se isključuje
Serial.println ("Read Error");
povratak;
}
Serial.print ("Vlažnost:");
Serial.print (h);
Serial.print ("% t");
Serial.print ("Temperatura:");
Serial.print (t);
Serial.println ("C"); //Izlaz indikatora na zaslon
}

Na početku, kao i kod servo pogona, knjižnica je povezana. Usput, o knjižnici. Prvo, u njemu nema Arduina, ova knjižnica se mora preuzeti. Postoji nekoliko verzija ove knjižnice, u našem primjeru koristimo standardnu. Budite oprezni pri preuzimanju jer sintaksa može biti različita, a kod neće raditi. Zatim se također piše koji je kontakt povezan sa senzorom i njegovom verzijom (DHT11 ili DHT22). Kao i kod servo pogona, vrlo je lako raditi s ovim senzorom za Arduin, samo nekoliko operatora je potrebno. Usput, najčešće servo i dht11 rade zajedno, na primjer, pri izradi automatskih prozora koji će se otvoriti kada je u sobi ili u stakleniku previše vruće.


& lt; script type = "text /javascript" & gt;
može blockSettings3 = {blockId: "R-A-271049-6", renderTo: "yandex_rtb_R-A-70350-44", async: 0};
if (document.cookie.indexOf ("abmatch =") & gt; = 0) blockSettings3.statId = 70350;
Funkcija (a, b, c, d, e) {a [c] = a [c] || [], a [c] .push (funkcija () {Ya.Context.AdvManager.render (blockSettings3)}), e = b.getElementsByTagName ("script") , d = b.createElement ("script"), d.type = "text /javascript", d.src = "//an.yandex .ru /system /context.js ", d.async =! 0e.parentNode.insertBefore (d, e)} (ovaj, ovaj.dokument," yandexContextAsyncCallbacks ");

Cijena za Aliexpress: 80-100 rubalja.

Senzor vlage u tlu

Ovaj se senzor koristi u dizajnu automatskog zalijevanja. To vam omogućuje da izmjerite sadržaj vlage u tlu, a zatim obradite ove podatke i ako je potrebno biljka biljka. Postoje mnoge varijante ovog senzora za "Ardouinov", ali je popularanmodel FC-28. Prilično proračunska opcija, tako da je svi vole i koriste u svojim projektima. Senzor ima dvije sonde koje prenose struju kroz zemlju. Kod suhog tla otpornost je veća, a kada je mokra - manje. U osnovi, ovaj se senzor koristi samo u malim projektima, zbog činjenice da su sonde izrađene od lošeg materijala i prije ili kasnije, kada su izložene, prekrivene su korozijom, nakon čega senzor prestaje raditi. Trajanje usluge senzora može se povećati ako se aktivira samo kada se podaci uklanjaju iz tla, na primjer svakih 6 sati. Neki obrtnici potpuno mijenjaju sonde za kvalitetnije, vlastite ruke, pa čak i od nule skupljaju senzor vlažnosti za "Arduino".

& lt; skript async = "//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js">

& lt; skripta & gt; (adsbygoogle = window.adsbygoogle || []). push ({});

Senzor vlage u tlu je dovoljno spojen. Tipično, potenciometar i komparator za kontrolu osjetljivosti senzora su uključeni u njega. Ukupno ima tri kontakta: logiku, hranu i zemlju. Mogu se spojiti i digitalni i analogni kontakti. Usput, rad u analognom načinu rada je praktičniji.

Primjer koda:

int sensor_pin = A0;
int output_value;

void setup () {
Serijski broj (9600);
Serial.println ("očitavanje podataka sa senzora");
kašnjenje (2000);
}

void loop () {
output_value = analogRead (sensor_pin);
output_value = map (output_value, 55000100);
Serial.print ("Vlažnost:");
Serial.print (output_value);
Serial.println ("%");
kašnjenje (1000);
}

Prije svega, definiramo kontakte na koje je senzor spojen na "Arduino". Nakon toga čitamo podatke izi izvedite ih. Kao i kod drugih senzora, lako je raditi s FC-28. A sve zahvaljujući gotovim knjižnicama i senzorima.

Cijena za Aliexpress: 30-50 rubalja.

BENKET senzor

Ovaj senzor pokreta za "Arduin" koristi se u projektiranju raznih sigurnosnih sustava. Otkriva elemente koji se kreću od 0 do 7 metara. Nećemo uzeti u obzir princip rada, nastavimo odmah spojiti ovaj senzor na "Arduino".


& lt; script type = "text /javascript" & gt;
može blockSettings = {blockId: "R-A-70350-45", renderTo: "yandex_rtb_R-A-70350-45", async: 0};
ako (document.cookie.indexOf ("abmatch =")) = 0) blockSettings.statId = 70350;
Funkcija (a, b, c, d, e) {a [c] = a [c] || [], a [c] .push (funkcija () {Ya.Context.AdvManager.render (blockSettings}), e = b.getElementsByTagName ("script") , d = b.createElement ("script"), d.type = "text /javascript", d.src = "//an.yandex .ru /system /context.js ", d.async =! 0e.parentNode.insertBefore (d, e)} (ovaj, ovaj.dokument," yandexContextAsyncCallbacks ");

Sudeći prema pregledima, on se također povezuje s tri kontakta: logikom, hranom i zemljom. Djeluje putem digitalnih izlaza.

Primjer koda:

#define PIN_PIR 2
#define PIN_LED 13

void setup () {
Serijski . započeti (9600);
PinMode (PIN_PIR, INPUT);
PinMode (PIN_LED, IZLAZ);

}

void loop () {
int pirVal = digitalRead (PIN_PIR);
Serial.println (digitalRead (PIN_PIR));

//Ako je gibanje detektirano
ako (pirVal)
{
digitalWrite (PIN_LED, HIGH);
Serial.println (otkrivanje pokreta);
kašnjenje (2000);
}
else
{
//Serial.print ("Nema kretanja");
digitalWrite (PIN_LED, LOW);
}
}


Odredite kontakte na koje je senzor povezan, nakon čega provodimo provjeru prisutnosti gibanja. Rad s njim je vrlo zgodan i jednostavan, ali postoje slučajevi lažno pozitivnih rezultata. Cijena za Aliexpress: 30-50 rubalja.

RadimoZaključci

Glavni senzori za "Ardouine" razmatrani su gore, koji su prvi proučavali amateri početnici. Kao što možete vidjeti, oni su prilično jeftini, lako se povezuju i čitaju podatke, a uopće traje samo nekoliko redaka. Osim njih, još uvijek postoji veliki broj drugih senzora, čak i za pulsno mjerenje! To je najbolje kupiti ih na Aliexpress setove, tako da će koštati još manje. To je lako stvoriti, glavna stvar - da zapamtite tri osnovna pravila robotike!

Povezane publikacije