Platform Arduino adalah salah satu yang terbaik untuk membina pelbagai sistem automatik. Selain itu, banyak universiti dan kolej menggunakan Arduino untuk memperkenalkan pelajar kepada bidang robotik. Sesungguhnya, Arduino adalah platform yang sangat ringan, tetapi pada masa yang sama berkuasa untuk membina pelbagai robot dan sistem pintar. Dan sudah tentu, supaya semuanya mengambil sedikit masa, sensor siap sedia dijual. Terdapat sejumlah besar daripada mereka di kedai, jadi agak sukar untuk keliru dalam memilih yang betul. Dalam artikel ini, kita akan melihat beberapa penderia Arduino utama, dan cara ia berfungsi.
Di mana hendak membeli
Hakikatnya ialah penderia di kedai kami menelan belanja yang tinggi. Dan jika anda akan mula meneroka platform Arduino, maka anda hanya perlu tahu di mana anda boleh membelinya pada harga yang rendah. Jawapannya mudah - kedai Cina. boleh jadiAliexpress, Joom, Pandao dan lain-lain. Hampir semua kedai membeli sensor di sana dan menjualnya dengan margin yang besar, yang mencecah sehingga 300%. Sudah tentu, anda perlu menunggu beberapa lama, dan anda tidak dapat memastikan kualiti barangan, tetapi membayar tiga kali lebih banyak untuk sensor yang sama juga tidak berbaloi. Contoh: Aliexpress mempunyai satu set 36 sensor yang berharga 800 rubel. Set yang sama dijual di kedai Rusia untuk 3.5 ribu rubel. Jadi terpulang kepada anda.
Pemacu servo
Pemacu servo digunakan dalam reka bentuk robot dan pelbagai sistem pintar. Dengan bantuan servo, anda boleh membuka pintu, mengetahui tahap putaran dan banyak lagi. Tetapi kebanyakannya ia digunakan dalam penciptaan robot. Sudut putaran maksimum servo: 180 darjah. Tetapi kadangkala di ruang terbuka Aliexpress anda juga boleh melihat pilihan dengan sudut putaran 360 darjah. Ini adalah elemen yang agak asas, hampir semua pelajaran pada Arduino dengan sensor bermula dengannya. Servo mudah disambungkan, kod kawalannya sangat mudah.
Untuk menyambungkan servo, hanya tiga wayar digunakan: tanah, kuasa, logik. Wayar isyarat (biasanya kuning atau coklat) disambungkan ke mana-mana pin yang didayakan PWM (modulasi lebar denyut) pada Arduino.
Contoh kod:
termasuk // sertakan perpustakaan untuk berfungsi dengan Servo servo1; // mengisytiharkan pembolehubah servo jenis "servo1" void setup() // procedure setup { servo1.attach(11); //ikat servo kepada output analog 11 } void loop() // procedure loop { servo1.write(0); // tetapkan sudut putaran kepada 0 kelewatan(2000); // tunggu 2 saat servo1.write(90); // tetapkan sudut putaran kepada 90 kelewatan(2000); // tunggu 2 saat servo1.write(180); // tetapkan sudut putaran kepada 180 kelewatan(2000); // tunggu 2 saat }
Pertama, kami menambah perpustakaan yang sudah ada dalam Arduino pada kod, kemudian kami menunjukkan pin mana servo disambungkan. Seperti yang anda lihat, bekerja dengan servo adalah sangat mudah, kawalannya hanyalah satu operator.
Harga di Aliexpress: 80–100 rubel.
DHT-11
DHT-11 digunakan untuk mengukur suhu dan kelembapan. Sensor suhu untuk Arduino ini adalah yang paling popular kerana harga dan cirinya. Mengukur suhu dalam julat dari 0 hingga 50 darjah, dan kelembapan dari 20 hingga 80%. Juga dijual adalah versi lain penderia ini, DHT-22, ia mempunyai julat ukuran yang lebih besar, tetapi ia juga berharga beberapa kali ganda. Untuk projek mudah, penggunaannya tidak digalakkan, jadi semua orang lebih suka DHT-11, yang melakukan kerja pengukuran yang sangat baik. Kuasa boleh dibekalkan dari 3.3 hingga 5V. Secara umum, sensor itu sendiri mempunyai 4 pin sambungan, tetapi terdapat modul DHT-11 yang dijual, lebih mudah untuk bekerja dengannya, kerana sambungan melalui 3 pin dan anda tidak perlu menderita dengan perintang.
Sambungan. Penderia suhu ini disambungkan ke Arduino menggunakan tiga sesentuh: tanah, kuasa dan logik.
Contoh kod:
termasuk"DHT.h" define DHTPIN 2 // Nombor pin yang sama yang disebut di atas DHT dht(DHTPIN, DHT11); void setup() { Serial.begin(9600); dht.begin(); } void loop() { delay(2000); // apungan kelewatan 2 saat h=dht.readHumidity(); //Ukur kelembapan terapung t=dht.readTemperature(); //Ukur suhu jika (isnan(h) || isnan(t)) { // Semak. Jika bacaan gagal, "Read Failed" dicetak dan program keluar dari Serial.println("Read Failed"); kembali; } Serial.print("Lembapan: "); Cetakan bersiri(h); Serial.print("%\t"); Serial.print("Suhu: "); Cetakan bersiri(t); Serial.println("C"); //Memaparkan penunjuk pada skrin }
Pada mulanya, seperti semasa bekerja dengan servo, perpustakaan disambungkan. By the way, tentang perpustakaan. Pada mulanya, ia tidak ada dalam pakej Arduino, perpustakaan ini perlu dimuat turun. Terdapat beberapa versi perpustakaan ini, dalam contoh kami, versi paling standard digunakan. Berhati-hati semasa memuat turun, kerana sintaks mungkin berbeza dan kod tidak akan berfungsi. Selanjutnya, ia juga ditulis kepada kenalan mana penderia disambungkan dan versinya (DHT11 atau DHT22). Seperti servo, bekerja dengan sensor ini untuk Arduino adalah sangat mudah, hanya menggunakan beberapa operator. Ngomong-ngomong, selalunya servo dan dht11 berfungsi bersama, contohnya, apabila mencipta tingkap automatik yang akan terbuka jika bilik atau rumah hijau terlalu panas.
Harga di Aliexpress: 80–100 rubel.
Penderia kelembapan tanah
Penderia ini digunakan apabilareka bentuk pengairan automatik. Dengan itu, anda boleh mengukur kelembapan tanah, dan kemudian memproses data ini dan, jika perlu, menyiram tumbuhan. Terdapat banyak varian sensor ini untuk Arduino yang dijual, tetapi model FC-28 adalah popular. Pilihan bajet yang cukup, jadi semua orang menyukainya dan menggunakannya dalam projek mereka. Penderia mempunyai dua probe yang mengalirkan elektrik melalui tanah. Dengan tanah kering, rintangan lebih besar, dan dengan tanah basah, kurang. Pada asasnya, sensor ini hanya digunakan dalam projek kecil, ini disebabkan oleh fakta bahawa probe diperbuat daripada bahan yang lemah dan lambat laun, semasa kerja aktif, mereka menjadi berkarat, selepas itu sensor berhenti berfungsi. Jangka hayat sensor boleh ditingkatkan dengan mengaktifkannya hanya apabila mengambil data dari tanah, contohnya, sekali setiap 6 jam. Sesetengah tukang menukar kuar kepada yang lebih baik, dibuat sendiri atau memasang penderia kelembapan untuk Arduino dari awal.
Menyambung penderia kelembapan tanah agak mudah. Biasanya ia datang dengan potensiometer dan pembanding untuk mengawal sensitiviti sensor. Secara keseluruhan, ia mempunyai tiga kenalan: logik, kuasa dan tanah. Ia boleh disambungkan kepada kedua-dua kenalan digital dan analog. By the way, ia adalah lebih mudah untuk bekerja dalam mod analog.
Contoh kod:
int sensor_pin=A0; int output_value; void setup() { Serial.begin(9600); Serial.println("Membaca data daripada penderia"); kelewatan(2000); } void loop() { output_value=analogRead(sensor_pin);nilai_keluaran=peta(nilai_keluaran, 550, 0, 0, 100); Serial.print("Kelembapan: "); Serial.print(output_value); Serial.println("%"); kelewatan(1000); }
Pertama sekali, kami menentukan kenalan yang penderia disambungkan ke Arduino. Kemudian kami membaca data daripadanya dan memaparkannya. Seperti penderia lain, FC-28 mudah digunakan. Dan semuanya terima kasih kepada perpustakaan dan penderia siap sedia.
Harga di Aliexpress: 30–50 rubel.
Penderia PIR
Penderia gerakan untuk Arduino ini digunakan dalam pembinaan pelbagai sistem keselamatan. Mengesan elemen bergerak dari 0 hingga 7 meter. Kami tidak akan mempertimbangkan prinsip operasi, mari kita teruskan untuk menyambungkan penderia ini kepada Arduino.
Berdasarkan ulasan, ia juga disambungkan menggunakan tiga kenalan: logik, kuasa dan tanah. Ia berfungsi melalui output digital.
Contoh kod:
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)); //Jika pergerakan dikesan jika (pirVal) { digitalWrite(PIN_LED, HIGH); Serial.println("Pergerakan dikesan"); kelewatan(2000); } else { //Serial.print("Tiada gerakan"); digitalWrite(PIN_LED, RENDAH); } }
Kami menentukan kenalan yang penderia disambungkan, selepas itu kami menyemak pergerakan. Bekerja dengannya sangat mudah dan mudah, tetapi terdapat kes positif palsu.
Harga untukAliexpress: 30-50 rubel.
membuat kesimpulan
Di atas, penderia utama untuk Arduino telah dipertimbangkan, yang merupakan yang pertama dikaji oleh amatur radio pemula. Seperti yang anda lihat, ia agak murah, ia bersambung dengan mudah, dan membaca data hanya memerlukan beberapa baris. Sebagai tambahan kepada mereka, masih terdapat sejumlah besar sensor lain, walaupun untuk mengukur nadi! Adalah paling menguntungkan untuk membelinya di Aliexpress dalam set, jadi harganya akan lebih murah. Ia mudah untuk dibuat, perkara utama ialah mengingati tiga peraturan asas robotik!