Senzorji "Arduino": opis, značilnosti, povezava, ocene

Kazalo:

Senzorji "Arduino": opis, značilnosti, povezava, ocene
Senzorji "Arduino": opis, značilnosti, povezava, ocene
Anonim

Platforma Arduino je ena najboljših za gradnjo različnih avtomatiziranih sistemov. Poleg tega številne univerze in visoke šole uporabljajo Arduino za seznanjanje študentov s področjem robotike. Pravzaprav je Arduino zelo lahka, a hkrati zmogljiva platforma za konstruiranje različnih robotov in pametnih sistemov. In seveda, da vse skupaj traja manj časa, se prodajajo že pripravljeni senzorji. V trgovinah jih je ogromno, zato se je pri izbiri pravega precej težko zmotiti. V tem članku si bomo ogledali nekaj glavnih Arduino senzorjev in kako delujejo.

Senzorji za arduino
Senzorji za arduino

Kje kupiti

Dejstvo je, da senzorji v naših trgovinah stanejo veliko denarja. In če boste začeli raziskovati platformo Arduino, potem morate le vedeti, kje jih lahko kupite po nizki ceni. Odgovor je preprost - kitajske trgovine. Lahko bi biloAliexpress, Joom, Pandao in drugi. Skoraj vse trgovine tam kupujejo senzorje in jih prodajajo z ogromno maržo, ki sega do 300%. Seveda boste morali počakati nekaj časa in ne morete biti prepričani v kakovost blaga, vendar se za isti senzor tudi ne splača plačati trikrat več. Primer: Aliexpress ima nabor 36 senzorjev, ki stane 800 rubljev. Isti komplet se prodaja v ruski trgovini za 3,5 tisoč rubljev. Torej je odvisno od vas.

Kje kupiti senzorje za arduino
Kje kupiti senzorje za arduino

Servo pogon

Servo pogon se uporablja pri oblikovanju robotov in različnih pametnih sistemov. S pomočjo servo motorja lahko odprete vrata, ugotovite stopnjo vrtenja in še veliko več. Toda večinoma se uporablja pri ustvarjanju robotov. Največji kot vrtenja servo motorja: 180 stopinj. Toda včasih na odprtih prostorih Aliexpressa lahko vidite tudi možnosti s 360-stopinjskim kotom vrtenja. To je dokaj osnovni element, skoraj vse lekcije o Arduinu s senzorji se začnejo z njim. Servo je enostavno povezati, kontrolna koda je zelo preprosta.

Za povezavo servo se uporabljajo samo tri žice: ozemljitev, napajanje, logika. Signalna žica (običajno rumena ali rjava) je povezana s katerim koli zatičem na Arduinu, ki omogoča PWM (široko impulzno modulacijo).

Povezava Servo z Arduinom
Povezava Servo z Arduinom

Primer kode:


include // vključi knjižnico za delo s Servo servo1; // razglasimo servo spremenljivko tipa "servo1" void setup() // nastavitev procedure { servo1.attach(11); //poveži servo na analogni izhod 11 } void loop() // zanka postopka { servo1.write(0); // nastavimo kot vrtenja na 0 delay(2000); // počakaj 2 sekundi servo1.write(90); // nastavimo kot vrtenja na 90 delay(2000); // počakaj 2 sekundi servo1.write(180); // nastavimo kot vrtenja na 180 delay(2000); // počakaj 2 sekundi }

Najprej v kodo dodamo knjižnico, ki je že v Arduinu, nato pa navedemo, na kateri pin je servo povezan. Kot lahko vidite, je delo s servo res zelo preprosto, upravljanje je samo en operater.

Cena na Aliexpressu: 80–100 rubljev.

DHT-11

DHT-11 se uporablja za merjenje temperature in vlažnosti. Ta temperaturni senzor za Arduino je zaradi svoje cene in lastnosti najbolj priljubljen. Meri temperaturo v območju od 0 do 50 stopinj, vlažnost pa od 20 do 80%. V prodaji je tudi druga različica tega senzorja, DHT-22, ima večje merilno območje, stane pa tudi nekajkrat več. Za enostavne projekte njegova uporaba ni priporočljiva, zato imajo vsi raje DHT-11, ki se odlično obnese pri merjenju. Napajanje je možno od 3,3 do 5V. Na splošno ima senzor sam 4 priključne zatiče, vendar so v prodaji moduli DHT-11, veliko bolj priročno je delati z njimi, saj je povezava preko 3 zatičev in vam ni treba trpeti z upori.

Povezava. Ta temperaturni senzor je povezan z Arduinom s tremi kontakti: ozemljitev, napajanje in logika.

Povezava dht11 z arduinom
Povezava dht11 z arduinom

Primer kode:


vključi"DHT.h" define DHTPIN 2 // Ista številka PIN, omenjena zgoraj DHT dht(DHTPIN, DHT11); void setup() { Serial.begin(9600); dht.begin(); } void loop() { zamuda (2000); // 2 sekundni zamik float h=dht.readHumidity(); //Izmerimo vlažnost float t=dht.readTemperature(); //Izmeri temperaturo if (isnan(h) || isnan(t)) { // Preverite. Če branje ne uspe, se natisne "Read Failed" in program zapusti Serial.println("Read Failed"); vrnitev; } Serial.print("Vlaga: "); Serijski tisk (h); Serial.print("%\t"); Serial.print("Temperatura: "); Serijski tisk(t); Serial.println("C"); //Prikaz indikatorjev na zaslonu }

Na samem začetku, kot pri delu s servo, je knjižnica povezana. Mimogrede, o knjižnici. Sprva ni v paketu Arduino, to knjižnico je treba prenesti. Obstaja več različic te knjižnice, v našem primeru je uporabljena najbolj standardna. Pri prenosu bodite previdni, ker je sintaksa lahko drugačna in koda ne bo delovala. Nadalje je zapisano tudi, na kateri kontakt je senzor priključen in njegova različica (DHT11 ali DHT22). Tako kot s servo, je delo s tem senzorjem za Arduino zelo enostavno, z uporabo le nekaj operaterjev. Mimogrede, pogosto servo in dht11 delujeta skupaj, na primer pri ustvarjanju samodejnih oken, ki se odprejo, če je prostor ali rastlinjak prevroč.

Cena na Aliexpressu: 80–100 rubljev.

Senzor vlažnosti tal

Ta senzor se uporablja, konačrtovanje avtomatskega namakanja. Z njim lahko merite vlažnost tal in nato te podatke obdelate in po potrebi zalivate rastlino. V prodaji je veliko variant tega senzorja za Arduino, vendar je model FC-28 priljubljen. Precej proračunska možnost, zato jo imajo vsi radi in jo uporabljajo v svojih projektih. Senzor ima dve sondi, ki vodita elektriko skozi tla. Pri suhih tleh je upor večji, pri mokrih pa manjši. V bistvu se ta senzor uporablja le v majhnih projektih, to je posledica dejstva, da so sonde izdelane iz slabega materiala in prej ali slej, med aktivnim delom, postanejo korodirane, nato pa senzor preneha delovati. Življenjsko dobo senzorja lahko podaljšate tako, da ga aktivirate le, ko jemljete podatke s tal, na primer enkrat na 6 ur. Nekateri mojstri celo zamenjajo sonde z boljšimi, ki jih izdelajo sami, ali celo sestavijo senzor vlažnosti za Arduino iz nič.

Priključitev senzorja vlažnosti tal je precej preprosta. Običajno je priložen potenciometer in primerjalnik za nadzor občutljivosti senzorja. Skupno ima tri kontakte: logiko, moč in ozemljitev. Lahko se poveže tako z digitalnimi kot analognimi kontakti. Mimogrede, bolj priročno je delati v analognem načinu.

Priključitev senzorja vlažnosti tal na arduino
Priključitev senzorja vlažnosti tal na arduino

Primer kode:


int senzor_pin=A0; int izhodna_vrednost; void setup() { Serial.begin(9600); Serial.println("Branje podatkov s senzorja"); zamuda (2000); } void loop() { output_value=analogRead(sensor_pin);izhodna_vrednost=zemljevid(izhodna_vrednost, 550, 0, 0, 100); Serial.print("Vlaga: "); Serial.print(izhodna_vrednost); Serial.println("%"); zamuda (1000); }

Najprej določimo kontakte, na katere je senzor priključen na Arduino. Nato iz nje preberemo podatke in jih prikažemo. Kot z drugimi senzorji je tudi FC-28 enostaven za delo. In vse zahvaljujoč že pripravljenim knjižnicam in senzorjem.

Cena na Aliexpressu: 30–50 rubljev.

PIR senzor

Ta senzor gibanja za Arduino se uporablja pri gradnji različnih varnostnih sistemov. Zazna premikajoče se elemente od 0 do 7 metrov. Načela delovanja ne bomo upoštevali, pojdimo na povezavo tega senzorja z Arduinom.

Sodeč po ocenah je povezan tudi s tremi kontakti: logiko, napajanje in ozemljitev. Deluje preko digitalnih izhodov.

Priključitev senzorja gibanja na arduino
Priključitev senzorja gibanja na arduino

Primer kode:


define PIN_PIR 2 define PIN_LED 13 void setup() { Serial.begin(9600); pinMode(PIN_PIR, INPUT); pinMode(PIN_LED, IZHOD); } void loop() { int pirVal=digitalRead(PIN_PIR); Serial.println(digitalno branje(PIN_PIR)); //Če je zaznano premikanje if (pirVal) { digitalWrite(PIN_LED, HIGH); Serial.println("Zaznano gibanje"); zamuda (2000); } else { //Serial.print("Brez gibanja"); digitalWrite(PIN_LED, LOW); } }

Določimo kontakte, na katere je senzor priključen, nato pa preverimo premikanje. Delo z njim je zelo priročno in enostavno, vendar obstajajo primeri lažno pozitivnih rezultatov.

Cena zaAliexpress: 30-50 rubljev.

ustvarjanje zaključkov

Zgoraj so bili upoštevani glavni senzorji za Arduino, ki so prvi, ki jih preučujejo radijski amaterji začetniki. Kot lahko vidite, so precej poceni, enostavno se povezujejo, branje podatkov pa traja le nekaj vrstic. Poleg njih je še ogromno drugih senzorjev, tudi za merjenje pulza! Najbolj donosno jih je kupiti na Aliexpressu v kompletih, zato bodo stali še ceneje. Ustvarjati je enostavno, glavna stvar je, da se spomnite treh osnovnih pravil robotike!

Priporočena: