Az Arduino platform az egyik legjobb a különféle automatizált rendszerek felépítéséhez. Sőt, sok egyetem és főiskola használja az Arduino-t, hogy megismertesse a hallgatókkal a robotika területét. Valójában az Arduino egy nagyon könnyű, de ugyanakkor nagy teljesítményű platform különféle robotok és intelligens rendszerek felépítéséhez. És persze, hogy mindez kevesebb időt vesz igénybe, kész érzékelőket árulnak. Nagyon sok van belőlük az üzletekben, így elég nehéz összezavarodni a megfelelő kiválasztásában. Ebben a cikkben megvizsgálunk néhány fő Arduino érzékelőt és azok működését.
Hol lehet vásárolni
Az a tény, hogy üzleteinkben az érzékelők sok pénzbe kerülnek. És ha elkezdi felfedezni az Arduino platformot, akkor csak azt kell tudnia, hol vásárolhatja meg őket alacsony áron. A válasz egyszerű - kínai üzletek. Lehet, hogyAliexpress, Joom, Pandao és mások. Szinte minden üzlet ott vásárol érzékelőket, és hatalmas árréssel értékesíti őket, amely eléri a 300%-ot. Természetesen várnia kell egy ideig, és nem lehet biztos az áru minőségében, de háromszor többet fizetni ugyanazért az érzékelőért szintén nem éri meg. Példa: Az Aliexpress 36 érzékelőt tartalmaz, amelyek ára 800 rubel. Ugyanezt a készletet egy orosz boltban értékesítik 3,5 ezer rubelért. Tehát rajtad múlik.
Szervomeghajtó
A szervóhajtást robotok és különféle intelligens rendszerek tervezésében használják. Egy szervó segítségével ajtókat nyithat, megtudhatja a forgás mértékét és még sok mást. De leginkább a robotok létrehozására használják. A szervo maximális elfordulási szöge: 180 fok. De néha az Aliexpress nyitott tereiben 360 fokos elforgatási szöggel rendelkező lehetőségeket is láthat. Ez egy meglehetősen alapvető elem, szinte minden szenzoros Arduino lecke ezzel kezdődik. A szervót könnyű csatlakoztatni, a vezérlőkód nagyon egyszerű.
A szervó csatlakoztatásához csak három vezetéket használnak: test, táp, logika. A jelvezeték (általában sárga vagy barna) az Arduino bármely PWM-re (impulzus széles moduláció) engedélyezett érintkezőjéhez csatlakozik.
Példa a kódra:
include // tartalmazza a könyvtárat a Servo servo1 használatához; // deklarál egy "servo1" típusú szervováltozót void setup() // procedúra beállítás { servo1.attach(11); //bind szervo az analóg kimenethez 11 } void loop() // procedúra ciklus { szervo1.write(0); // forgatási szög beállítása 0-ra delay(2000); // várj 2 másodpercet servo1.write(90); // az elforgatási szög beállítása 90 -ra delay(2000); // várjon 2 másodpercet servo1.write(180); // forgatási szög beállítása 180-ra delay(2000); // várjon 2 másodpercet }
Először is hozzáadjuk a kódhoz azt a könyvtárat, amely már az Arduinóban van, majd jelezzük, hogy a szervo melyik pinhez csatlakozik. Amint látja, a szervóval való munkavégzés nagyon egyszerű, a vezérlés csak egy kezelő.
Ár az Aliexpressen: 80–100 rubel.
DHT-11
A DHT-11 a hőmérséklet és a páratartalom mérésére szolgál. Ez az Arduino hőmérséklet-érzékelő a legnépszerűbb az ára és a jellemzői miatt. Hőmérsékletet 0 és 50 fok között, páratartalmat 20 és 80% között mér. Szintén eladó ennek a szenzornak egy másik változata, a DHT-22, ennek nagyobb a mérési tartománya, de ennek is többszöröse. Egyszerű projekteknél nem tanácsos a használata, így mindenki a DHT-11-et részesíti előnyben, ami kiválóan teljesít a mérésben. A tápellátás 3,3-5 V között lehetséges. Általánosságban elmondható, hogy magának az érzékelőnek 4 csatlakozó érintkezője van, de vannak eladó DHT-11 modulok, sokkal kényelmesebb velük dolgozni, mivel a csatlakozás 3 tűn keresztül történik, és nem kell az ellenállásokkal szenvednie.
Kapcsolat. Ez a hőmérséklet-érzékelő három érintkezővel csatlakozik az Arduinohoz: test, táp és logikai.
Példa a kódra:
tartalmazza"DHT.h" define DHTPIN 2 // A fent említett PIN-kód DHT dht(DHTPIN, DHT11); void setup() { Serial.begin(9600); dht.begin(); } void loop() { delay(2000); // 2 másodperces késleltetési lebegés h=dht.readHumidity(); //Nedvesség mérése úszó t=dht.readTemperature(); //Mérje meg a hőmérsékletet, ha (isnan(h) || isnan(t)) { // Ellenőrizze. Ha az olvasás sikertelen, a "Read Failed" kinyomtatásra kerül, és a program kilép Serial.println("Read Failed"); Visszatérés; } Serial.print("Nedvesség: "); Sorozatnyomat(h); Serial.print("%\t"); Serial.print("Hőmérséklet: "); Sorozatnyomat(t); Serial.println("C"); //Jelzők megjelenítése a képernyőn }
A legelején, mint amikor szervóval dolgozunk, a könyvtár csatlakoztatva van. Egyébként a könyvtárról. Kezdetben nincs benne az Arduino csomagban, ezt a könyvtárat le kell tölteni. Ennek a könyvtárnak több verziója is létezik, példánkban a legszokványosabbat használjuk. Legyen óvatos a letöltéskor, mert a szintaxis eltérő lehet, és a kód nem fog működni. Továbbá az is meg van írva, hogy melyik érintkezőhöz csatlakozik az érzékelő és annak verziója (DHT11 vagy DHT22). Csakúgy, mint egy szervo esetében, ezzel az Arduino-érzékelővel is nagyon egyszerű dolgozni, csak néhány operátort kell használni. Egyébként gyakran a szervo és a dht11 együtt működik, például automatikus ablakok létrehozásakor, amelyek kinyílnak, ha a helyiségben vagy az üvegházban túl meleg van.
Ár az Aliexpressen: 80–100 rubel.
Talajnedvesség-érzékelő
Ezt az érzékelőt akkor használják, haautomata öntözés tervezése. Ezzel mérheti a talaj nedvességtartalmát, majd ezeket az adatokat feldolgozhatja, és ha szükséges, öntözi a növényt. Ennek az érzékelőnek számos változata kapható az Arduino számára, de az FC-28 modell népszerű. Meglehetősen költségvetési lehetőség, így mindenki szereti, és használja projektjeiben. Az érzékelőnek két szondája van, amelyek a földön keresztül vezetik az elektromosságot. Száraz talajnál nagyobb az ellenállás, nedves talajnál kisebb. Alapvetően ezt az érzékelőt csak kis projektekben használják, ez annak köszönhető, hogy a szondák rossz anyagból készülnek, és előbb-utóbb aktív munkavégzés során korrodálódnak, ami után az érzékelő leáll. Az érzékelő élettartama növelhető, ha csak a földről veszi az adatokat, például 6 óránként. Egyes kézművesek a szondákat is jobbra cserélik, saját készítésűekre, vagy akár a semmiből állítanak össze páraérzékelőt az Arduino számára.
A talajnedvesség-érzékelő csatlakoztatása meglehetősen egyszerű. Általában egy potenciométerrel és egy komparátorral érkezik az érzékelő érzékenységének szabályozására. Összesen három érintkezője van: logikai, teljesítmény és föld. Digitális és analóg érintkezőkhöz is csatlakoztatható. Mellesleg kényelmesebb analóg módban dolgozni.
Példa a kódra:
int sensor_pin=A0; int kimeneti_érték; void setup() { Serial.begin(9600); Serial.println("Adatok olvasása az érzékelőből"); késleltetés (2000); } void loop() { output_value=analógRead(sensor_pin);kimeneti_érték=térkép(kimeneti_érték, 550, 0, 0, 100); Serial.print("Nedvesség: "); Serial.print(kimeneti_érték); Serial.println("%"); késleltetés (1000); }
Először is meghatározzuk azokat az érintkezőket, amelyekhez az érzékelő csatlakozik az Arduino-hoz. Majd kiolvassuk belőle az adatokat és megjelenítjük. A többi érzékelőhöz hasonlóan az FC-28-al is könnyű dolgozni. És mindez a kész könyvtáraknak és érzékelőknek köszönhetően.
Ár az Aliexpressen: 30–50 rubel.
PIR-érzékelő
Ezt az Arduino-hoz készült mozgásérzékelőt különféle biztonsági rendszerek felépítésében használják. Érzékeli a mozgó elemeket 0 és 7 méter között. Nem fogjuk figyelembe venni a működési elvet, térjünk tovább az érzékelőnek az Arduinohoz való csatlakoztatására.
A vélemények alapján három érintkezővel is csatlakozik: logikai, táp és test. Digitális kimeneteken keresztül működik.
Példa a kódra:
define PIN_PIR 2 define 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)); //Ha mozgás észlelhető if (pirVal) { digitalWrite(PIN_LED, HIGH); Serial.println("Mozgás észlelve"); késleltetés (2000); } else { //Serial.print("Nincs mozgás"); digitalWrite(PIN_LED, LOW); } }
Meghatározzuk az érintkezőket, amelyekhez az érzékelő csatlakozik, majd ellenőrizzük a mozgást. A vele való munkavégzés nagyon kényelmes és egyszerű, de előfordulnak téves pozitív eredmények.
ÁrAliexpress: 30-50 rubel.
következtetések levonása
A fentiekben az Arduino fő szenzorait vettük figyelembe, amelyek az elsők, amelyeket a kezdő rádióamatőrök tanulmányoztak. Mint látható, meglehetősen olcsók, könnyen csatlakoztathatók, és az adatok kiolvasása csak néhány sort vesz igénybe. Rajtuk kívül még mindig rengeteg egyéb érzékelő található, még az impulzus mérésére is! A legjövedelmezőbb az Aliexpressen készletekben vásárolni, így még olcsóbbak lesznek. Könnyű létrehozni, a lényeg, hogy emlékezz a robotika három alapszabályára!