Platform Arduino adalah salah satu yang terbaik untuk membangun berbagai sistem otomatis. Apalagi banyak universitas dan perguruan tinggi yang menggunakan Arduino untuk mengenalkan mahasiswanya pada bidang robotika. Memang, Arduino adalah platform yang sangat ringan, tetapi pada saat yang sama kuat untuk membangun berbagai robot dan sistem pintar. Dan tentu saja, agar semuanya memakan waktu lebih sedikit, sensor yang sudah jadi dijual. Ada banyak sekali di toko-toko, jadi cukup sulit untuk bingung memilih yang tepat. Pada artikel ini, kita akan melihat beberapa sensor utama Arduino, dan cara kerjanya.
Beli dimana
Faktanya adalah bahwa sensor di toko kami menghabiskan banyak uang. Dan jika Anda akan mulai menjelajahi platform Arduino, maka Anda hanya perlu tahu di mana Anda dapat membelinya dengan harga murah. Jawabannya sederhana - toko Cina. Bisa jadiAliexpress, Joom, Pandao, dan lainnya. Hampir semua toko membeli sensor di sana dan menjualnya dengan margin besar, yang mencapai hingga 300%. Tentu saja, Anda harus menunggu beberapa saat, dan Anda tidak dapat memastikan kualitas barangnya, tetapi membayar tiga kali lebih banyak untuk sensor yang sama juga tidak sepadan. Contoh: Aliexpress memiliki satu set 36 sensor yang harganya 800 rubel. Set yang sama dijual di toko Rusia seharga 3,5 ribu rubel. Jadi terserah kamu.
Servo drive
Servo drive digunakan dalam desain robot dan berbagai sistem pintar. Dengan bantuan servo, Anda dapat membuka pintu, mengetahui tingkat rotasi, dan banyak lagi. Tetapi sebagian besar digunakan dalam pembuatan robot. Sudut maksimum rotasi servo: 180 derajat. Namun terkadang di ruang terbuka Aliexpress Anda juga dapat melihat opsi dengan sudut rotasi 360 derajat. Ini adalah elemen yang cukup mendasar, hampir semua pelajaran tentang Arduino dengan sensor dimulai dengannya. Servo mudah dihubungkan, kode kontrolnya sangat sederhana.
Untuk menghubungkan servo, hanya tiga kabel yang digunakan: ground, power, logic. Kabel sinyal (biasanya kuning atau coklat) terhubung ke pin yang mengaktifkan PWM (modulasi lebar pulsa) di Arduino.
Contoh kode:
include // sertakan perpustakaan untuk bekerja dengan Servo servo1; // mendeklarasikan variabel servo tipe "servo1" void setup() // procedure setup { servo1.attach(11); //mengikat servo ke output analog 11 } void loop() // prosedur loop { servo1.write(0); // atur sudut rotasi ke 0 delay(2000); // tunggu 2 detik servo1.write(90); // setel sudut rotasi ke 90 delay(2000); // tunggu 2 detik servo1.write(180); // setel sudut rotasi ke 180 delay(2000); // tunggu 2 detik }
Pertama, kita tambahkan library yang sudah ada di Arduino ke kode, lalu kita tunjukkan pin mana yang terhubung dengan servo. Seperti yang Anda lihat, bekerja dengan servo sangat sederhana, kontrolnya hanya 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 populer karena harga dan fiturnya. Mengukur suhu dalam kisaran dari 0 hingga 50 derajat, dan kelembaban dari 20 hingga 80%. Juga dijual adalah versi lain dari sensor ini, DHT-22, ia memiliki rentang pengukuran yang lebih besar, tetapi harganya juga beberapa kali lebih mahal. Untuk proyek sederhana, penggunaannya tidak disarankan, jadi semua orang lebih menyukai DHT-11, yang melakukan pekerjaan pengukuran yang sangat baik. Daya dapat disuplai dari 3,3 hingga 5V. Secara umum, sensor itu sendiri memiliki 4 pin koneksi, tetapi ada modul DHT-11 yang dijual, jauh lebih nyaman untuk bekerja dengannya, karena koneksi melalui 3 pin dan Anda tidak perlu menderita resistor.
Koneksi. Sensor suhu ini terhubung ke Arduino menggunakan tiga kontak: ground, power dan logic.
Contoh kode:
sertakan"DHT.h" define DHTPIN 2 // Nomor pin yang sama yang disebutkan di atas DHT dht(DHTPIN, DHT11); void setup() { Serial.begin(9600); dht.mulai(); } void loop() { delay(2000); // 2 detik penundaan float h=dht.readHumidity(); //Mengukur kelembaban float t=dht.readTemperature(); //Mengukur suhu jika (isnan(h) || isnan(t)) { // Cek. Jika pembacaan gagal, "Read Failed" akan dicetak dan program keluar dari Serial.println("Read Failed"); kembali; } Serial.print("Kelembaban: "); Cetak serial(h); Serial.print("%\t"); Serial.print("Suhu: "); Cetak serial(t); Serial.println("C"); //Menampilkan indikator di layar }
Pada awalnya, seperti saat bekerja dengan servo, perpustakaan terhubung. Ngomong-ngomong, tentang perpustakaan. Awalnya tidak ada dalam paket Arduino, perpustakaan ini perlu diunduh. Ada beberapa versi perpustakaan ini, dalam contoh kami yang paling standar digunakan. Hati-hati saat mengunduh, karena sintaksnya mungkin berbeda dan kodenya tidak akan berfungsi. Selanjutnya, juga ditulis ke kontak mana sensor terhubung dan versinya (DHT11 atau DHT22). Seperti halnya servo, bekerja dengan sensor ini untuk Arduino sangat mudah, hanya menggunakan beberapa operator. Omong-omong, sering kali servo dan dht11 bekerja sama, misalnya saat membuat jendela otomatis yang akan terbuka jika ruangan atau rumah kaca terlalu panas.
Harga di Aliexpress: 80–100 rubel.
Sensor kelembaban tanah
Sensor ini digunakan saatdesain irigasi otomatis. Dengan itu, Anda dapat mengukur kelembaban tanah, dan kemudian memproses data ini dan, jika perlu, menyirami tanaman. Ada banyak varian sensor ini untuk Arduino yang dijual, tetapi model FC-28 sangat populer. Pilihan anggaran yang cukup, jadi semua orang menyukainya dan menggunakannya dalam proyek mereka. Sensor memiliki dua probe yang menghantarkan listrik melalui tanah. Dengan tanah kering, resistensi lebih besar, dan dengan tanah basah, lebih sedikit. Pada dasarnya, sensor ini hanya digunakan dalam proyek-proyek kecil, ini disebabkan oleh fakta bahwa probe terbuat dari bahan yang buruk dan cepat atau lambat, selama pekerjaan aktif, mereka menjadi berkarat, setelah itu sensor berhenti bekerja. Masa pakai sensor dapat ditingkatkan dengan mengaktifkannya hanya saat mengambil data dari tanah, misalnya setiap 6 jam sekali. Beberapa pengrajin bahkan mengubah probe menjadi yang lebih baik, dibuat sendiri, atau bahkan merakit sensor kelembaban untuk Arduino dari awal.
Menghubungkan sensor kelembaban tanah cukup sederhana. Biasanya dilengkapi dengan potensiometer dan komparator untuk mengontrol sensitivitas sensor. Secara total, ia memiliki tiga kontak: logika, daya, dan ground. Itu dapat dihubungkan ke kontak digital dan analog. Omong-omong, lebih nyaman bekerja dalam mode analog.
Contoh kode:
int sensor_pin=A0; int keluaran_nilai; void setup() { Serial.begin(9600); Serial.println("Membaca data dari sensor"); penundaan(2000); } void loop() { output_value=analogRead(sensor_pin);keluaran_nilai=peta(nilai_keluaran, 550, 0, 0, 100); Serial.print("Kelembaban: "); Serial.print(nilai_keluaran); Serial.println("%"); penundaan (1000); }
Pertama-tama, kami menentukan kontak yang terhubung dengan sensor ke Arduino. Kemudian kami membaca data darinya dan menampilkannya. Seperti sensor lainnya, FC-28 mudah digunakan. Dan semua berkat perpustakaan dan sensor yang sudah jadi.
Harga di Aliexpress: 30–50 rubel.
sensor PIR
Sensor gerak untuk Arduino ini digunakan dalam pembangunan berbagai sistem keamanan. Mendeteksi elemen bergerak dari 0 hingga 7 meter. Kami tidak akan mempertimbangkan prinsip operasi, mari beralih ke menghubungkan sensor ini ke Arduino.
Dilihat dari ulasannya, itu juga terhubung menggunakan tiga kontak: logika, daya, dan ground. Ia bekerja melalui keluaran digital.
Contoh kode:
menentukan PIN_PIR 2 menentukan PIN_LED 13 membatalkan pengaturan() { Serial.begin(9600); pinMode(PIN_PIR, INPUT); pinMode(PIN_LED, OUTPUT); } void loop() { int pirVal=digitalRead(PIN_PIR); Serial.println(digitalRead(PIN_PIR)); //Jika gerakan terdeteksi if (pirVal) { digitalWrite(PIN_LED, HIGH); Serial.println("Gerakan terdeteksi"); penundaan(2000); } else { //Serial.print("Tidak ada gerakan"); digitalWrite(PIN_LED, RENDAH); } }
Kami menentukan kontak yang terhubung dengan sensor, setelah itu kami memeriksa pergerakannya. Bekerja dengannya sangat nyaman dan mudah, tetapi ada kasus positif palsu.
Harga untukAliexpress: 30-50 rubel.
mengambil kesimpulan
Di atas, sensor utama Arduino dipertimbangkan, yang pertama kali dipelajari oleh amatir radio pemula. Seperti yang Anda lihat, mereka cukup murah, mereka terhubung dengan mudah, dan membaca data hanya membutuhkan beberapa baris. Selain mereka, masih ada sejumlah besar sensor lain, bahkan untuk mengukur denyut nadi! Paling menguntungkan untuk membelinya di Aliexpress dalam set, sehingga harganya lebih murah. Bikinnya gampang, yang penting ingat tiga aturan dasar robotika!