Baca Tegangan Analog
Membaca
masukan analog dan mencetak tegangan ke Monitor Serial.
Contoh ini menunjukkan kepada Anda cara membaca input
analog pada pin analog 0, mengubah nilai dari analogRead() menjadi tegangan,
dan mencetaknya ke monitor serial Arduino Software (IDE).
Perangkat Keras yang Diperlukan
·
Potensiometer 10k ohm
Sirkuit
Hubungkan ketiga
kabel dari potensiometer ke papan Anda. Kabel pertama menuju ke ground dari
salah satu pin luar potensiometer. Kabel kedua menuju ke 5 volt dari pin luar
lainnya dari potensiometer. Kabel ketiga menuju dari pin tengah potensiometer
ke input analog 0.
Dengan memutar poros
potensiometer, Anda mengubah jumlah resistansi di kedua sisi wiper yang
terhubung ke pin tengah potensiometer. Ini mengubah tegangan pada pin tengah.
Ketika resistansi antara bagian tengah dan sisi yang terhubung ke 5 volt mendekati
nol (dan resistansi di sisi lain mendekati 10 kilohm), tegangan pada pin tengah
mendekati 5 volt. Ketika resistansi dibalik, tegangan pada pin tengah mendekati
0 volt, atau ground. Tegangan ini adalah tegangan analog yang
Anda baca sebagai input.
Mikrokontroler pada
papan memiliki sirkuit di dalamnya yang disebut konverter analog-ke-digital atau ADC yang
membaca tegangan yang berubah ini dan mengubahnya menjadi angka antara 0 dan
1023 (pada papan dengan ADC resolusi 10 bit). Ketika poros diputar sepenuhnya
ke satu arah, ada 0 volt yang menuju pin, dan nilai inputnya adalah 0. Ketika
poros diputar sepenuhnya ke arah yang berlawanan, ada 5 volt yang menuju pin
dan nilai inputnya adalah 1023. Di antaranya, analogRead () mengembalikan angka
antara 0 dan 1023 yang sebanding dengan jumlah tegangan yang diterapkan ke pin.
Skema
Desain PCB
Kode Contoh
Anda bisa melakukan langkah seperti dibawah ini kode
Kode
Pada program di
bawah ini, hal pertama yang akan Anda lakukan adalah masuk ke fungsi
pengaturan, untuk memulai komunikasi serial pada 9600 bit data per detik,
antara papan dan komputer Anda dengan saluran:
Serial.begin(9600);
Selanjutnya, di loop
utama kode Anda, Anda perlu membuat variabel untuk menyimpan nilai resistansi
(yang akan berada di antara 0 dan 1023, sempurna untuk
Int tipe data ) yang masuk dari potensiometer Anda:
int sensorValue = analogRead(A0);
Untuk mengubah nilai
dari 0-1023 ke rentang yang sesuai dengan tegangan yang dibaca pin, Anda perlu
membuat variabel lain, float, dan lakukan sedikit matematika. Untuk
menskalakan angka antara 0,0 dan 5,0, bagi 5,0 dengan 1023,0 dan kalikan
hasilnya dengan sensorValue :
float voltage= sensorValue * (5.0 / 1023.0);
Harap perhatikan
bahwa contoh ini awalnya dirancang untuk papan 5V. Jika Anda menggunakan papan
3,3V, Anda harus mengubah '5.0' menjadi '3.3' pada kode di atas untuk
memastikannya selaras dengan perangkat keras Anda. Demikian pula, jika Anda
menggunakan papan dengan resolusi ADC default yang berbeda dari 10 bit, Anda
harus mengubah nilai '1023' agar sesuai dengan jumlah level diskrit yang
didukung oleh perangkat keras Anda.
Terakhir, Anda perlu
mencetak informasi ini ke monitor serial Anda. Anda dapat melakukannya dengan
perintah Serial.println()
di
baris kode terakhir Anda:
Serial.println(voltage)
Sekarang, saat Anda membuka
Serial Monitor di Arduino IDE (dengan mengeklik ikon di sisi kanan bilah hijau
atas atau menekan Ctrl+Shift+M), Anda akan melihat serangkaian angka yang
stabil mulai dari 0,0 - 5,0. Saat Anda memutar pot, nilainya akan berubah,
sesuai dengan tegangan yang masuk ke pin A0.
Pelajari lebih lanjut
Anda dapat menemukan
tutorial yang lebih mendasar di bagian contoh
bawaan .
Tidak ada komentar:
Posting Komentar