Pelajaran 3 Hardware:
- Komputer / Laptop atau Netbook
- Arduino Mikrokontroler
- USB to Serial Adapter (jika mikrokontroler Anda tidak memiliki port USB)
- USB yang sesuai kabel (Arduino papan menarik daya dari port USB - tidak ada baterai belum)
- Potensiometer (rotary atau linier) Contoh: DFRobot Rotasi Sensor
- LED sekunder opsional.
Buka sampel sketsa "analoginput" di bawah File -> Contoh -> Analog. Bagian komentar telah berkurang di bawah ini untuk membuat kode terlihat jelas.
Kami melihat beberapa baris baru kode di sini:
int sensorPin = A0;
The "int" adalah singkatan dari "integer". Nama "sensorPin" dipilih hanya untuk menggambarkan apa variabel yang mewakili; "Sensor pin". Fakta bahwa 'P' dikapitalisasi membuatnya lebih mudah untuk melihat bahwa itu sebenarnya adalah dua kata, karena ruang tidak dapat digunakan. Integer "sensor pin" adalah sama dengan A0, di mana "A0" adalah Analog pin 0 pada Arduino. Sendiri, "A0" bukan istilah yang dipesan.Namun, bila digunakan dalam konteks, sistem mengenalinya sebagai pin analog 0. Garis harus diakhiri dengan titik koma. Dengan menyatakan variabel di setup, Anda dapat menggunakan istilah, yang dalam hal ini adalah "sensorPin", seluruh kode bukannya "A0". Ada dua manfaat utama untuk ini:
1) Itu membuat kode lebih deskriptif
2) Jika Anda ingin mengubah nilai variabel, Anda hanya perlu melakukannya di satu tempat.
sensorValue = analogRead (sensorPin);
Baris ini menggunakan istilah " analogRead " untuk membaca tegangan dari pin analog. Kebanyakan mikrokontroler Arduino menggunakan 10 bit analog (tegangan) ke digital (numerik) konversi, yaitu 2 10kemungkinan angka = 1024. Oleh karena itu tegangan 0V sesuai dengan nilai numerik dari 0. tegangan 5V sesuai dengan nilai numerik 1024 . Oleh karena itu nilai 3V akan sesuai dengan nilai numerik dari:
3/5 = x / 1024 = 3 * x 1024/5 = ~ 614
Atau Anda bisa menulis: sensorValue = analogRead (A0);
int ledPin = 13;
Sekali lagi, istilah "ledPin" bukan kata reserved di Arduino, itu dipilih untuk menggambarkan yang pin terhubung ke LED. Nilai "13" adalah nilai normal, tetapi hanya seperti "A0", bila digunakan dalam konteks mewakili pin 13.
int sensorValue = 0;
Istilah " sensorValue " bukan istilah yang dipesan baik.
Menghubungkan potensiometer ke pin A0, 5V dan GND. Tengah (wiper) memimpin adalah satu untuk terhubung ke pin analog dan tegangan bervariasi pada pin ini. Orientasi dua pin lainnya tidak masalah.Pilihan lainnya adalah untuk menghubungkan potensiometer ke pin A0, A1 dan A2. Namun, Anda akan perlu menambahkan kode berikut di bawah pengaturan void ():
digitalWrite (A1, LOW);
digitalWrite (A2, TINGGI);
Ini menetapkan sesuai pin untuk 0V (GND) dan 5V (PWR). Setelah potensiometer terhubung, meng-upload sketsa ini untuk papan dan mengubah ke monitor Serial. Saat Anda memutar kenop (atau geser slider), nilai-nilai harus mengubah antara 0 sampai 1023. Sejalan dengan itu, LED akan berkedip dengan penundaan lebih cepat atau lebih pendek.
Anda sekarang dapat membaca nilai-nilai dan menggunakannya dalam kode Anda. Fungsi baru yang digunakan di sini adalah "analogRead ();" di mana pin yang dipilih adalah pin # 2. Jika Anda menggunakan analog pin # 5, Anda akan mengubah kode untuk membaca:
int sensorpin = 5;
Jika sistem tidak bekerja, memeriksa sintaks dan menjamin upload kode dengan benar. Selanjutnya, periksa koneksi ke potensiometer memastikan bahwa memimpin tengah pergi ke pin yang benar, dan pin lainnya yang didukung pada 0V dan 5V. Jika Anda membeli sebuah potensiometer sangat murah atau tua, ada kemungkinan mungkin mekanis rusak. Anda dapat menguji ini menggunakan multimeter dan menghubungkan ujung ke pin tengah dan pin luar. Mengatur multimeter untuk membaca resistensi dan memutar kenop; jika resistance tersebut berubah perlahan-lahan, pot bekerja. Jika resistance ini tidak menentu, Anda memerlukan potensiometer baru.
Sekarang bagaimana jika Anda ingin melihat nilai sendiri? Lihatlah kode di atas dan menuliskannya dalam antarmuka Arduino sebagai sketsa baru. Beberapa kode baru Anda akan lihat adalah:
Serial . Println (sensorValue);
Ini mengirimkan nilai yang terkandung dalam variabel "sensorValue" serial melalui konektor USB dan pin digital 1. Pastikan, kemudian meng-upload sketsa ini untuk Arduino Anda. Setelah itu dilakukan, tekan pada "kaca pembesar" yang terletak di bagian kanan atas jendela. Ini adalah "memantau Serial" dan monitor komunikasi yang dikirim dan diterima oleh Arduino. Di sini Anda harus memverifikasi bahwa tingkat Baud juga 9600, atau yang lain Anda akan melihat sampah.
Jika Anda tidak ingin nilai-nilai muncul pada baris baru setiap kali, Anda bisa menulis
Serial . print (sensorValue);
0 komentar :
Post a Comment