Senzory "Arduino": popis, charakteristiky, pripojenie, recenzie

Obsah:

Senzory "Arduino": popis, charakteristiky, pripojenie, recenzie
Senzory "Arduino": popis, charakteristiky, pripojenie, recenzie
Anonim

Platforma Arduino je jednou z najlepších na budovanie rôznych automatizovaných systémov. Okrem toho mnohé univerzity a vysoké školy používajú Arduino na predstavenie študentov v oblasti robotiky. Arduino je skutočne veľmi ľahká, no zároveň výkonná platforma na stavbu rôznych robotov a inteligentných systémov. A samozrejme, aby to všetko trvalo kratšie, predávajú sa už hotové senzory. V obchodoch je ich obrovské množstvo, takže je dosť ťažké zmiasť sa pri výbere toho správneho. V tomto článku sa pozrieme na niektoré z hlavných senzorov Arduino a ako fungujú.

Senzory pre arduino
Senzory pre arduino

Kde kúpiť

Faktom je, že senzory v našich predajniach stoja veľa peňazí. A ak sa chystáte začať skúmať platformu Arduino, potom stačí vedieť, kde ich môžete kúpiť za nízku cenu. Odpoveď je jednoduchá – čínske obchody. To môže byťAliexpress, Joom, Pandao a iné. Takmer všetky obchody tam nakupujú senzory a predávajú ich s obrovskou maržou, ktorá dosahuje až 300 %. Samozrejme, budete musieť nejaký čas počkať a nemôžete si byť istí kvalitou tovaru, ale platiť trikrát viac za rovnaký snímač sa tiež neoplatí. Príklad: Aliexpress má sadu 36 senzorov, ktorá stojí 800 rubľov. Rovnaká sada sa predáva v ruskom obchode za 3,5 tisíc rubľov. Takže je to na vás.

Kde kúpiť senzory pre arduino
Kde kúpiť senzory pre arduino

Servopohon

Servopohon sa používa pri navrhovaní robotov a rôznych inteligentných systémov. Pomocou serva otvoríte dvere, zistíte stupeň otáčania a mnoho ďalšieho. Väčšinou sa však používa pri vytváraní robotov. Maximálny uhol natočenia serva: 180 stupňov. Ale niekedy v otvorených priestoroch Aliexpress môžete vidieť aj možnosti s 360-stupňovým uhlom otáčania. Toto je pomerne základný prvok, takmer všetky lekcie na Arduine so senzormi sa ním začínajú. Servo sa ľahko pripája, ovládací kód je veľmi jednoduchý.

Na pripojenie serva sa používajú iba tri vodiče: zem, napájanie, logika. Signálny vodič (zvyčajne žltý alebo hnedý) je pripojený k akémukoľvek kolíku na Arduine s povolenou PWM (pulznou širokou moduláciou).

Pripojenie serva k Arduinu
Pripojenie serva k Arduinu

Príklad kódu:


include // zahrnie knižnicu na prácu so Servo servo1; // deklaruje premennú serva typu "servo1" void setup() // nastavenie procedúry { servo1.attach(11); //naviazať servo na analógový výstup 11 } void loop() // postupový cyklus { servo1.write(0); // nastavíme uhol natočenia na 0 delay(2000); // počkajte 2 sekundy servo1.write(90); // nastavíme uhol otočenia na 90 delay(2000); // počkajte 2 sekundy servo1.write(180); // nastavenie uhla natočenia na 180 delay(2000); // počkajte 2 sekundy

Najprv do kódu pridáme knižnicu, ktorá je už v Arduine, a potom označíme, ku ktorému pinu je servo pripojené. Ako vidíte, práca so servom je naozaj veľmi jednoduchá, ovládanie je len jedným operátorom.

Cena na Aliexpress: 80–100 rubľov.

DHT-11

DHT-11 sa používa na meranie teploty a vlhkosti. Tento teplotný senzor pre Arduino je najobľúbenejší kvôli jeho cene a vlastnostiam. Meria teplotu v rozsahu od 0 do 50 stupňov a vlhkosť od 20 do 80 %. V predaji je aj ďalšia verzia tohto snímača, DHT-22, má väčší rozsah merania, ale stojí aj niekoľkonásobne viac. Pri jednoduchých projektoch sa jeho použitie neodporúča, preto každý uprednostňuje DHT-11, ktorý meria výborne. Napájanie je možné od 3,3 do 5V. Vo všeobecnosti má samotný snímač 4 pripájacie piny, ale v predaji sú moduly DHT-11, s ktorými je oveľa pohodlnejšie pracovať, keďže pripojenie je cez 3 piny a nemusíte trpieť rezistormi.

Pripojenie. Tento teplotný senzor je pripojený k Arduinu pomocou troch kontaktov: zem, napájanie a logika.

Pripojenie dht11 k arduinu
Pripojenie dht11 k arduinu

Príklad kódu:


zahŕňať"DHT.h" define DHTPIN 2 // Rovnaké číslo PIN ako vyššie DHT dht(DHTPIN, DHT11); void setup() { Serial.begin(9600); dht.begin(); } void loop() { delay(2000); // 2 sekundové oneskorenie float h=dht.readHumidity(); //Zmeranie vlhkosti float t=dht.readTemperature(); //Zmerajte teplotu if (isnan(h) || isnan(t)) { // Skontrolujte. Ak čítanie zlyhá, vytlačí sa "Čítanie zlyhalo" a program sa ukončí Serial.println("Čítanie zlyhalo"); návrat; } Serial.print("Vlhkosť: "); Sériová tlač (h); Serial.print("%\t"); Serial.print("Teplota: "); Sériová tlač (t); Serial.println("C"); //Zobrazenie indikátorov na obrazovke

Na samom začiatku, ako pri práci so servom, je knižnica pripojená. Mimochodom, o knižnici. Spočiatku nie je v balíku Arduino, túto knižnicu je potrebné stiahnuť. Existuje niekoľko verzií tejto knižnice, v našom príklade je použitá najštandardnejšia. Pri sťahovaní buďte opatrní, pretože syntax sa môže líšiť a kód nebude fungovať. Ďalej je napísané, ku ktorému kontaktu je snímač pripojený a jeho verzia (DHT11 alebo DHT22). Rovnako ako v prípade serva, práca s týmto senzorom pre Arduino je veľmi jednoduchá, používa len niekoľko operátorov. Mimochodom, servo a dht11 často spolupracujú, napríklad pri vytváraní automatických okien, ktoré sa otvoria, ak je v miestnosti alebo skleníku príliš teplo.

Cena na Aliexpress: 80–100 rubľov.

Senzor pôdnej vlhkosti

Tento senzor sa používa, keďnávrh automatického zavlažovania. Pomocou neho môžete merať vlhkosť pôdy a následne tieto údaje spracovať a v prípade potreby rastlinu zaliať. V predaji je veľa variantov tohto snímača pre Arduino, no obľúbený je model FC-28. Docela rozpočtová možnosť, takže ju každý miluje a používa ju vo svojich projektoch. Senzor má dve sondy, ktoré vedú elektrinu cez zem. Pri suchej pôde je odpor väčší a pri mokrej menej. V podstate sa tento senzor používa len v malých projektoch, je to spôsobené tým, že sondy sú vyrobené z nekvalitného materiálu a skôr či neskôr pri aktívnej práci dôjde k ich korózii, po ktorej senzor prestane fungovať. Životnosť senzora je možné zvýšiť jeho aktiváciou len pri zbere dát zo zeme, napríklad raz za 6 hodín. Niektorí remeselníci dokonca menia sondy na lepšie, vlastnoručne vyrobené, alebo dokonca zostavujú snímač vlhkosti pre Arduino úplne od začiatku.

Pripojenie snímača pôdnej vlhkosti je celkom jednoduché. Zvyčajne sa dodáva s potenciometrom a komparátorom na ovládanie citlivosti snímača. Celkovo má tri kontakty: logiku, napájanie a uzemnenie. Môže byť pripojený k digitálnym aj analógovým kontaktom. Mimochodom, je pohodlnejšie pracovať v analógovom režime.

Pripojenie snímača pôdnej vlhkosti k arduinu
Pripojenie snímača pôdnej vlhkosti k arduinu

Príklad kódu:


int sensor_pin=A0; int vystupna_hodnota; void setup() { Serial.begin(9600); Serial.println("Čítanie údajov zo senzora"); oneskorenie (2000); } void loop() { output_value=analogRead(sensor_pin);vystupna_hodnota=mapa(vystupna_hodnota, 550, 0, 0, 100); Serial.print("Vlhkosť: "); Serial.print(vystupna_hodnota); Serial.println("%"); oneskorenie(1000);

V prvom rade určíme kontakty, ku ktorým je senzor pripojený k Arduinu. Potom z neho načítame údaje a zobrazíme ich. Rovnako ako s inými snímačmi, aj s FC-28 sa ľahko pracuje. A to všetko vďaka hotovým knižniciam a senzorom.

Cena na Aliexpress: 30–50 rubľov.

PIR senzor

Tento pohybový senzor pre Arduino sa používa pri konštrukcii rôznych bezpečnostných systémov. Detekuje pohybujúce sa prvky od 0 do 7 metrov. Nebudeme uvažovať o princípe fungovania, prejdime k pripojeniu tohto senzora k Arduinu.

Súdiac podľa recenzií, je tiež pripojený pomocou troch kontaktov: logika, napájanie a zem. Funguje cez digitálne výstupy.

Pripojenie snímača pohybu k arduinu
Pripojenie snímača pohybu k arduinu

Príklad kódu:


definovať PIN_PIR 2 definovať PIN_LED 13 void setup() { Serial.begin(9600); pinMode(PIN_PIR, INPUT); pinMode(PIN_LED, OUTPUT); } void loop() { int pirVal=digitalRead(PIN_PIR); Serial.println(digitalRead(PIN_PIR)); //Ak sa zistí pohyb if (pirVal) { digitalWrite(PIN_LED, HIGH); Serial.println("Rozpoznaný pohyb"); oneskorenie (2000); } else { //Serial.print("Bez pohybu"); digitalWrite(PIN_LED, LOW); }

Zisťujeme kontakty, ku ktorým je senzor pripojený, a potom skontrolujeme, či sa nehýbu. Práca s ním je veľmi pohodlná a jednoduchá, existujú však prípady falošných poplachov.

Cena zaAliexpress: 30-50 rubľov.

vyvodzovanie záverov

Vyššie boli zvážené hlavné senzory pre Arduino, ktoré sú úplne prvé, ktoré študujú začínajúci rádioamatéri. Ako vidíte, sú pomerne lacné, ľahko sa pripájajú a čítanie údajov trvá len pár riadkov. Okrem nich stále existuje obrovské množstvo ďalších senzorov, dokonca aj na meranie pulzu! Najvýhodnejšie je kúpiť ich na Aliexpress v súpravách, takže budú stáť ešte lacnejšie. Je ľahké ho vytvoriť, hlavné je zapamätať si tri základné pravidlá robotiky!

Odporúča: