Modul II
ADC dan PWM
1. Jurnal [kembali]
Alur kerjanya:
Pembacaan data oleh komponen input > data dikirim ke pin input > data masuk ke mikrokontroler > data diproses > data keluar dari Arduino >data dikirim ke pin output > data diteruskan ke komponen output.Berdasarkan gambar dan keterangan di atas, kita bisa menyimpulkan bahwa cara kerja Arduino yaitu:
Tahap 1: Pembacaan data oleh komponen input
Hal pertama yang berlangsung adalah komponen input yang dihubungkan ke Arduino akan melakukan pembacaan atau pengukuran data yang jadi pemicu.Misalnya berupa jarak, cahaya, getaran, atau suara.
Apa saja yang termasuk komponen input? Yaitu semua komponen yang dapat melakukan pengukuran maupun pembacaan data.
Termasuk semua jenis sensor. Entah itu sensor jarak, cahaya, maupun yang lainnya.
Tahap 2: Data dikirim ke pin input Arduino
Pin input adalah perantara yang menghubungkan antara Arduino dan komponen input.Jadi, data yang didapatkan dari pengukuran dan pembacaan komponen input akan dikirim ke pin input Arduino.
Tahap 3: Data masuk ke mikrokontroler (inti Arduino)
Nantinya, data yang ada pada pin input Arduino akan dibawa ke mikrokontroler atau inti Arduino untuk masuk ke tahapan berikutnya. Yaitu tahap pemrosesan data.Data yang masuk ke mikrokontroler akan diproses berdasarkan perintah atau program yang diberikan. Dalam tahapan ini pulalah diberikan instruksi akan seperti apa perintah yang akan dijalankan perangkat output nantinya.
Untuk memberikan perintah pada mikrokontroler Arduino, menggunakan bahasa pemrograman C dan melalui Software Arduino IDE.
Tahap 4: Data dikirim ke pin output Arduino
Setelah data diproses, maka selanjutnya data akan dikirim ke pin output Arduino.Layaknya pin input, pin output Arduino juga berperan sebagai perantara yang menghubungkan antara Arduino dan perangkat output.
Perlu kamu ketahui bahwa rata-rata Arduino memiliki 14 pin yang dapat digunakan sebagai pin input maupun pin output.
Tahap 5: Data disalurkan ke komponen output
Data yang ada pada pin output Arduino, selanjutnya akan disalurkan ke komponen output.Jadi, semua instruksi yang diberikan oleh mikrokontroler akan langsung dijalankan oleh komponen output seperti relay, lampu LED, buzzer, dan sebagainya.
16x2 LCD Pinout Configuration
Pin No:
Pin Name:
Description
1
Vss (Ground)
Ground pin connected to system ground
2
Vdd (+5 Volt)
Powers the LCD with +5V (4.7V – 5.3V)
3
VE (Contrast V)
Decides the contrast level of display. Grounded to get maximum contrast.
4
Register Select
Connected to Microcontroller to shift between command/data register
5
Read/Write
Used to read or write data. Normally grounded to write data to LCD
6
Enable
Connected to Microcontroller Pin and toggled between 1 and 0 for data acknowledgement
7 - 14
Data Pin 0 - 7
Data pins 0 to 7 forms a 8-bit data line. They can be connected to Microcontroller to send 8-bit data.
These LCD’s can also operate on 4-bit mode in such case Data pin 4,5,6 and 7 will be left free.
15
LED Positive
Backlight LED pin positive terminal
16
LED Negative
Backlight LED pin negative terminal
ServoSudut dari servo akan berubah-ubah tergantung pada PWM yang diberikanUntuk cara kerjanya, servo motor dikendalikan dengan memberikan Pulse Wide Modulation / PWM melalui kabel kontrol. Durasi “denyut” (pulse) yang diberikan akan menentukan posisi sudut putaran dari poros motor servo. Contohnya nih, durasi “denyut” dengan waktu 1,5 ms (mili detik) akan memutar poros motor servo ke posisi sudut 90⁰. Bila pulsa lebih pendek dari 1,5 ms maka akan berputar ke arah posisi 0⁰ atau ke kiri (berlawanan dengan arah jarum jam). Sementara itu, bila pulsa yang diberikan lebih lama dari 1,5 ms maka poros motor servo akan berputar ke arah posisi 180⁰ atau ke kanan (searah jarum jam).
Ketika durasi “denyut”nya telah diberikan, maka poros motor servo akan bergerak dan bertahan di posisi yang telah diperintahkan. Jika ada yang mencoba memutar atau mengubah posisi tersebut, maka motor servo akan mencoba menahan atau melawan dengan besarnya kekuatan torsi yang dimilikinya (rating torsi servo). Namun posisi motor servo tidak akan seterusnya diam saja, karena sinyal “denyut”nya harus diulang setiap 20 ms (mili detik) untuk menginstruksikan agar ia tetap pada posisinya.
Pin No: | Pin Name: | Description |
1 | Vss (Ground) | Ground pin connected to system ground |
2 | Vdd (+5 Volt) | Powers the LCD with +5V (4.7V – 5.3V) |
3 | VE (Contrast V) | Decides the contrast level of display. Grounded to get maximum contrast. |
4 | Register Select | Connected to Microcontroller to shift between command/data register |
5 | Read/Write | Used to read or write data. Normally grounded to write data to LCD |
6 | Enable | Connected to Microcontroller Pin and toggled between 1 and 0 for data acknowledgement |
7 - 14 | Data Pin 0 - 7 |
Data pins 0 to 7 forms a 8-bit data line. They can be connected to Microcontroller to send 8-bit data. These LCD’s can also operate on 4-bit mode in such case Data pin 4,5,6 and 7 will be left free. |
15 | LED Positive | Backlight LED pin positive terminal |
16 | LED Negative | Backlight LED pin negative terminal |
Untuk cara kerjanya, servo motor dikendalikan dengan memberikan Pulse Wide Modulation / PWM melalui kabel kontrol. Durasi “denyut” (pulse) yang diberikan akan menentukan posisi sudut putaran dari poros motor servo. Contohnya nih, durasi “denyut” dengan waktu 1,5 ms (mili detik) akan memutar poros motor servo ke posisi sudut 90⁰. Bila pulsa lebih pendek dari 1,5 ms maka akan berputar ke arah posisi 0⁰ atau ke kiri (berlawanan dengan arah jarum jam). Sementara itu, bila pulsa yang diberikan lebih lama dari 1,5 ms maka poros motor servo akan berputar ke arah posisi 180⁰ atau ke kanan (searah jarum jam).
Ketika durasi “denyut”nya telah diberikan, maka poros motor servo akan bergerak dan bertahan di posisi yang telah diperintahkan. Jika ada yang mencoba memutar atau mengubah posisi tersebut, maka motor servo akan mencoba menahan atau melawan dengan besarnya kekuatan torsi yang dimilikinya (rating torsi servo). Namun posisi motor servo tidak akan seterusnya diam saja, karena sinyal “denyut”nya harus diulang setiap 20 ms (mili detik) untuk menginstruksikan agar ia tetap pada posisinya.
Pertama Kita tambahkan library LCD ,lalu kita Deklarasikan Pin pada Arduino yang akan kita gunakan,yaitu pin digital (2 - 7)yang dihubungkan ke LCD dan pin PWM yaitu pin 9 dihubungkan ke servo serta Analog pada Arduino(A0) Terhubung ke kaki Potensiometer seperti pada gambar rangkaian.
pada Void Setup,lalu kita tentukan tipe LCD yang kita pakai dan letak cursornya. tipe LCD nya adalah 16x2 (kolom x baris),pinMode,dan cursor dari LCD tersebut
Pada Void loop, lakukan perulangan membaca nilai potensiometer menggunakan analogRead() dan outputnya adalah hasil konversi nilai analog (10 bit / 1024) menjadi nilai PWM yang (8 bit/256).kemudian data dari PWM tadi disalurkan ke servo sehingga servo bergerak. selama proses gerakan tersebut nilai besarnya PWM ditampilkan kepada LCD
Tidak ada komentar:
Posting Komentar