Arduino platforması müxtəlif avtomatlaşdırılmış sistemlərin qurulması üçün ən yaxşılarından biridir. Üstəlik, bir çox universitet və kollec tələbələri robototexnika sahəsi ilə tanış etmək üçün Arduino-dan istifadə edir. Həqiqətən, Arduino çox yüngül, lakin eyni zamanda müxtəlif robotlar və ağıllı sistemlər qurmaq üçün güclü platformadır. Və təbii ki, hər şeyin daha az vaxt aparması üçün hazır sensorlar satılır. Mağazalarda onların çoxu var, buna görə düzgün birini seçməkdə çaşqın olmaq olduqca çətindir. Bu yazıda bəzi əsas Arduino sensorlarına və onların necə işlədiyinə baxacağıq.
Haradan almaq olar
Fakt budur ki, bizim mağazalardakı sensorlar çox pula başa gəlir. Arduino platformasını araşdırmağa başlamaq niyyətindəsinizsə, onda sadəcə onları aşağı qiymətə haradan ala biləcəyinizi bilməlisiniz. Cavab sadədir - Çin mağazaları. Ola bilərAliexpress, Joom, Pandao və s. Demək olar ki, bütün mağazalar orada sensorlar alır və onları 300% -ə çatan böyük bir marja ilə satır. Əlbəttə ki, bir müddət gözləməli olacaqsınız və malların keyfiyyətinə əmin ola bilməzsiniz, lakin eyni sensor üçün üç dəfə çox pul ödəmək də buna dəyməz. Misal: Aliexpress-də qiyməti 800 rubl olan 36 sensor dəsti var. Eyni dəst Rusiya mağazasında 3,5 min rubla satılır. Buna görə də sizdən asılıdır.
Servo sürücü
Servo sürücü robotların və müxtəlif smart sistemlərin dizaynında istifadə olunur. Bir servo köməyi ilə siz qapıları aça, fırlanma dərəcəsini öyrənə və daha çox şey edə bilərsiniz. Lakin daha çox robotların yaradılmasında istifadə olunur. Servonun maksimum fırlanma bucağı: 180 dərəcə. Ancaq bəzən Aliexpress-in açıq yerlərində 360 dərəcə fırlanma bucağı olan variantları da görə bilərsiniz. Bu kifayət qədər əsas elementdir, sensorlu Arduino-da demək olar ki, bütün dərslər onunla başlayır. Servo qoşulmaq asandır, idarəetmə kodu çox sadədir.
Servoyu birləşdirmək üçün yalnız üç naqil istifadə olunur: torpaq, güc, məntiq. Siqnal naqili (adətən sarı və ya qəhvəyi) Arduino-da hər hansı PWM (pulse geniş modulyasiya) aktivləşdirilmiş pininə qoşulur.
Kod nümunəsi:
include // Servo servo1 ilə işləmək üçün kitabxana daxil edin; // "servo1" tipli servo dəyişəni elan et void setup() // prosedur quraşdırma { servo1.attach(11); //servonu analoq çıxışa bağlama 11 } void loop() // prosedur loop { servo1.write(0); // fırlanma bucağını 0 gecikməsinə təyin edin (2000); // 2 saniyə gözləyin servo1.write(90); // fırlanma bucağını 90 gecikməyə təyin edin (2000); // 2 saniyə gözləyin servo1.write(180); // fırlanma bucağını 180 gecikməyə təyin edin (2000); // 2 saniyə gözləyin }
Əvvəlcə Arduino-da olan kitabxananı koda əlavə edirik, sonra isə servonun hansı pinə qoşulduğunu göstəririk. Gördüyünüz kimi, servo ilə işləmək həqiqətən çox sadədir, idarəetmə sadəcə bir operatordur.
Aliexpress-də qiymət: 80–100 rubl.
DHT-11
DHT-11 temperatur və rütubəti ölçmək üçün istifadə olunur. Arduino üçün bu temperatur sensoru qiymətinə və xüsusiyyətlərinə görə ən populyardır. Temperaturu 0 ilə 50 dərəcə, rütubəti 20 ilə 80% arasında ölçür. Həmçinin satışda bu sensorun başqa bir versiyası, DHT-22 var, daha böyük ölçü diapazonuna malikdir, həm də bir neçə dəfə baha başa gəlir. Sadə layihələr üçün onun istifadəsi məqsədəuyğun deyil, buna görə də hər kəs əla ölçmə işi görən DHT-11-ə üstünlük verir. Güc 3,3-dən 5V-ə qədər verilə bilər. Ümumiyyətlə, sensorun özündə 4 əlaqə sancağı var, lakin satışda DHT-11 modulları var, onlarla işləmək daha rahatdır, çünki əlaqə 3 pin vasitəsilədir və rezistorlarla əziyyət çəkməyə ehtiyac yoxdur.
Əlaqə. Bu temperatur sensoru üç kontaktdan istifadə edərək Arduino-ya qoşulur: torpaq, güc və məntiq.
Kod nümunəsi:
daxildir"DHT.h" define DHTPIN 2 // Yuxarıda qeyd olunan eyni pin nömrəsi DHT dht(DHTPIN, DHT11); void setup() { Serial.begin(9600); dht.begin(); } void loop() { gecikmə (2000); // 2 saniyə gecikmə float h=dht.readHumidity(); //Rütubət floatını ölçün t=dht.readTemperature(); //Temperaturu ölçün əgər (isnan(h) || isnan(t)) { // Yoxlayın. Oxuma uğursuz olarsa, "Oxumaq uğursuz oldu" çap olunur və proqram Serial.println("Oxumaq alınmadı") çıxış edir; qayıtmaq; } Serial.print("Rütubət:"); Serial çap (h); Serial.print("%\t"); Serial.print("Temperatur: "); Serial çap(t); Serial.println("C"); //Ekranda göstəricilər göstərilir }
Başlanğıcda, servo ilə işləyərkən olduğu kimi, kitabxana bağlanır. Yeri gəlmişkən, kitabxana haqqında. Əvvəlcə o, Arduino paketində deyil, bu kitabxananı yükləmək lazımdır. Bu kitabxananın bir neçə versiyası var, nümunəmizdə ən standartı istifadə olunur. Yükləyərkən diqqətli olun, çünki sintaksis fərqli ola bilər və kod işləməyəcək. Bundan əlavə, sensorun hansı kontakta qoşulduğu və onun versiyası (DHT11 və ya DHT22) yazılır. Servoda olduğu kimi, Arduino üçün bu sensorla işləmək çox asandır, yalnız bir neçə operatordan istifadə etməklə. Yeri gəlmişkən, tez-tez servo və dht11 birlikdə işləyir, məsələn, otaq və ya istixana çox isti olduqda açılacaq avtomatik pəncərələr yaratarkən.
Aliexpress-də qiymət: 80–100 rubl.
Torpağın nəmlik sensoru
Bu sensor o zaman istifadə olunuravtomatik suvarma dizaynı. Bununla, torpağın nəmini ölçə və sonra bu məlumatları emal edə və lazım olduqda bitkini sulaya bilərsiniz. Satışda Arduino üçün bu sensorun bir çox variantı var, lakin FC-28 modeli məşhurdur. Olduqca büdcə seçimidir, buna görə də hər kəs onu sevir və layihələrində istifadə edir. Sensorda elektrik cərəyanını yerdən keçirən iki zond var. Quru torpaqda müqavimət daha böyük, nəm torpaqda isə daha azdır. Əsasən, bu sensor yalnız kiçik layihələrdə istifadə olunur, bu, zondların zəif materialdan hazırlanması və gec-tez aktiv iş zamanı korroziyaya məruz qalması ilə əlaqədardır, bundan sonra sensor işləməyi dayandırır. Sensorun ömrünü yalnız yerdən məlumat götürərkən, məsələn, hər 6 saatda bir dəfə aktivləşdirməklə artırmaq olar. Bəzi ustalar hətta zondları özləri tərəfindən hazırlanmış daha yaxşılarına dəyişir və ya sıfırdan Arduino üçün rütubət sensoru yığırlar.
Torpağın nəm sensorunu birləşdirmək olduqca sadədir. Adətən o, sensorun həssaslığını idarə etmək üçün potensiometr və komparatorla gəlir. Ümumilikdə üç əlaqə var: məntiq, güc və yer. Həm rəqəmsal, həm də analoq kontaktlara qoşula bilər. Yeri gəlmişkən, analoq rejimdə işləmək daha rahatdır.
Kod nümunəsi:
int sensor_pin=A0; int çıxış_dəyəri; void setup() { Serial.begin(9600); Serial.println("Sensördən verilənlərin oxunması"); gecikmə (2000); } boş döngə() {çıxış_dəyəri=analoqoxu(sensor_pin);çıxış_dəyəri=xəritə(çıxış_dəyəri, 550, 0, 0, 100); Serial.print("Rütubət: "); Serial.print(çıxış_dəyəri); Serial.println("%"); gecikmə (1000); }
İlk növbədə sensorun Arduino-ya qoşulduğu kontaktları müəyyənləşdiririk. Sonra ondan məlumatları oxuyuruq və nümayiş etdiririk. Digər sensorlarda olduğu kimi, FC-28 ilə də işləmək asandır. Və hamısı hazır kitabxanalar və sensorlar sayəsində.
Aliexpress-də qiymət: 30–50 rubl.
PIR sensor
Arduino üçün bu hərəkət sensoru müxtəlif təhlükəsizlik sistemlərinin tikintisində istifadə olunur. 0-dan 7 metrə qədər hərəkət edən elementləri aşkar edir. İş prinsipini nəzərdən keçirməyəcəyik, gəlin bu sensoru Arduino-ya qoşmağa keçək.
Rəylərə əsasən, o, həmçinin üç kontaktdan istifadə etməklə qoşulub: məntiq, güc və torpaq. Rəqəmsal çıxışlar vasitəsilə işləyir.
Kod nümunəsi:
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)); //Hərəkət aşkar edilərsə, əgər (pirVal) { digitalWrite(PIN_LED, HIGH); Serial.println("Hərəkət aşkarlandı"); gecikmə (2000); } else { //Serial.print("Hərəkət yoxdur"); digitalWrite(PIN_LED, LOW); } }
Biz sensorun qoşulduğu kontaktları müəyyənləşdiririk, bundan sonra hərəkəti yoxlayırıq. Onunla işləmək çox rahat və asandır, lakin yanlış müsbət hallar var.
QiymətAliexpress: 30-50 rubl.
nəticələr çıxarmaq
Yuxarıda, Arduino üçün əsas sensorlar nəzərdən keçirilmişdir ki, bunlar ilk dəfə radio həvəskarları tərəfindən öyrənilmişdir. Gördüyünüz kimi, onlar olduqca ucuzdur, asanlıqla qoşulurlar və məlumatları oxumaq yalnız bir neçə sətir çəkir. Onlara əlavə olaraq, nəbzi ölçmək üçün hələ də çox sayda digər sensorlar var! Onları Aliexpress-də dəstlərdə almaq daha sərfəlidir, buna görə də daha ucuz başa gələcək. Yaratmaq asandır, əsas odur ki, robototexnikanın üç əsas qaydasını yadda saxla!