- Memahami prinsip kerja PWM pada mikrokontroler
- Memahami prinsip kerja ADC pada mikrokontroler
- Menggunakan PWM dan ADC pada Arduino
- Alat
A. PWM Pulse Width Modulation (PWM) secara umum adalah sebuah cara memanipulasi lebar sinyal yang dinyatakan dengan pulsa dalam suatu perioda, untuk mendapatkan tegangan ratarata yang berbeda. Beberapa Contoh aplikasi PWM adalah pemodulasian data untuk telekomunikasi, pengontrolan daya atau tegangan yang masuk ke beban, regulator tegangan, audio effect dan penguatan, serta aplikasi-aplikasi lainnya. Aplikasi PWM berbasis mikrokontroler biasanya berupa, pengendalian kecepatan motor DC, Pengendalian Motor Servo, Pengaturan nyala terang LED. JENIS PWM 1. PWM Analog Pembangkitan sinyal PWM yang paling sederhana adalah dengan cara membandingkan sinyal gigi gergaji sebagai tegangan carrier dengan tegangan referensi menggunakan rangkaian op-amp comparator. Cara kerja dari komparator analog ini adalah membandingkan gelombang tegangan gigi gergaji dengan tegangan referensi seperti yang terlihat pada Gambar dibawah Saat nilai tegangan referensi lebih besar dari tegangan carrier (gigi gergaji) maka output comparator akan bernilai high. Namun saat tegangan referensi bernilai lebih kecil dari tegangan carrier, maka output comparator akan bernilai low. Dengan memanfaatkan prinsip kerja dari komparator inilah, untuk mengubah duty cycle dari sinyal output cukup dengan mengubahubah besar tegangan referensi. Besarnya duty-cycle rangkaian PWM ini : 2. PWM Digital Gambar ADC atau disebut juga dengan Analog to Digital Converter merupakan fitur yang di miliki oleh arduino sebagai mikrokontroler guna membaca sinyal analog kemudian di konversikan menjadi sinyal digital. Sinyal Analog merupakan jenis sinyal kontinyu, biasanya digambarkan dengan bentuk sinyal sinus, karena menggambarkan bahwasanya setiap waktu memiliki nilai sendiri. ilustrasinya pada cahaya lampu, sinyal analog akan mengenal lampu mati, redup, agak terang, terang, terang sekali dan seterus nya. Sinyal Digital merupakan jenis sinyal diskrit, karena tidak setiap waktu memiliki nilai yang berbeda, pada sinyal digital digambarkan seperti sinyal kotak, sinyal digital hanya mengenal dua keadaan yaitu 0 atau 1, hidup atau mati.kembali pada pembahasan judul artikel, yaitu membuat simulasi arduino membaca ADC. kita akan menggunakan potensiometer yang berfungsi sebagai pembagi tegangan sehingga tegangan yang masuk ke pin Analog Arduino dapat kita atur dan dapat di rubah. data yang masuk dari potensiometer berupa tegangan akan tetapi data yang di proses oleh arduino sendiri yaitu bilangan ADC. rumus untuk menentukan nilai ADC berdasarkan tegangan yang masuk sebagai berikut :
ADC = (Vin / Vreff) x 1023
Vin = tegangan yang masuk ke ArduinoVreff = tegangan referensi pembacaan ADC pada Arduino (Default 5V)1023 = arduino menggunakan 10 bit ADCC. TimerSebuah pewaktu, timer, merupakan bagian dari microcontroller yang berperan sebagai clock internal untuk mengukur waktu suatu event. Untuk timer dapat diatur dengan menggunakan beberapa register khusus. Pada firmware Arduino semua timer memiliki konfigurasi frekuensi 1 kHz dengan enable interrupt. Berikut ini timer khusus untuk Arduino.- Timer0, 8 bit, digunakan untuk function seperti delay(), millis(), dan micros(), dengan mengubah konfigurasi Timer0 akan mempengaruhi function lainnya
- Timer1, 16 bit, biasa digunakan untuk aplikasi terkait motor servo
- Timer2, 8 bit, function tone() menggunakan Timer2
Selain tiga pewaktu tersebut, terdapat juga Timer3, Timer4, dan Timer5, semuanya 16 bit, untuk board Arduino Mega.- delay(), digunakan untuk tundaan eksekusi baris program selanjutnya dalam millisecond
- delayMicroseconds(), digunakan untuk tundaan eksekusi baris program selanjutnya dalam microseconds
- millis(), digunakan sebagai pewaktu internal yang (bila tanpa terminate bersyarat) akan terus berjalan hingga terjadi overflow (kembali ke nilai 0) dengan unit dalam millisecond, untuk board Arduino Uno nilai millis() akan terus berjalan hingga sekitar 50 hari
- micros(), digunakan sebagai pewaktu internal yang (bila tanpa terminate bersyarat) akan terus berjalan hingga terjadi overflow (kembali ke nilai 0) dengan unit dalam microsecond, untuk board Arduino Uno nilai millis() akan terus berjalan hingga sekitar 70 jam
Timer RegisterUntuk dapat melakukan manipulasi timer pada Arduino terlebih dahulu harus mengetahui fungsi dari masing-masing register yang terkait timer. Salah satu register timer yang paling penting ialah - TCCRx (Timer/Conter Control Register), dengan x adalah nomor, berikut ini adalah register apa saja yang digunakan untuk timer.
- TCCRx (Timer/Conter Control Register), dimana prescaler dapat dikonfigurasi disini sekaligus mode operasi timer
- TCNTx (Timer/Counter Register), dimana nilai timer disimpan, merupakan register pencacah mulai dari 0 hingga nilai maximum
- OCRx (Output Compare Register), untuk membandingkan OCR yag diberikan dengan nilai TCNT
- ICRx (Input Capture Register), hanya tersedia untuk timer 16 bit, menerima data timer
- TIMSKx (Timer/Counter Interrupt Mask Register), digunakan untuk menjalankan atau mematikan timer interrupt
- TIFRx (Timer/Counter Interrupt Flag Register), menandakan timer interrupt hasil operasi timer
Timer FrekuensiUntuk menghitung frekuensi timer dengan frekuensi yang ditentukan dapat dilakukan dengan cara sebagai berikut.- Menentukan frekuensi pembagi, misal 2 Hz
- Mengetahui frekuensi kerja Arduino, yakni 16 MHz
- Mengetahui prescaler timer, 256 untuk 8 bit, 65536 untuk 16 bit
- Membagi nilai frekuensi kerja Arduino (16 MHz) dengan prescaler (256), hingga diperoleh hasil 62500
- Membagi hasil tersebut (62500) dengan frekuensi ditentukan (2 Hz), hingga diperoleh hasil 31250
- Memastikan bahwa hasil tersebut dapat digunakan dengan membandingkannya nilai maximum prescaler, bila nilai tersebut lebih kecil (dalam hal ini 31250 lebih kecil dari 65536), maka hasilnya tersebut valid, bila tidak valid gunakan nilai prescaler yang lebih besar
PWM dan Timer Terdapat hubungan antara timer dengan output PWM. Dalam data sheet atau pin out microcontroller (Arduino) terdapat PWM pin dengan nama seperti OCRxA, OCRxB, atau OCRxC, dimana x adalah nomor timer. Untuk fungsi pin PWM sering digunakan bersama dengan fungsi lainnya. Untuk board Arduino Uno memiliki 3 timer dan 6 pin output PWM. Kaitan antara timer dengan output PWM sebagai berikut.- Arduino pin 5 dan 6, dikendalikan oleh Timer0
- Arduino pin 9 dan 10, dikendalikan oleh Timer1
- Arduino pin 3 dan 11, dikendalikan oleh Timer2
Sementara itu untuk board Arduino Mega terdapat 6 timer dengan output 15 PWM, dengan konfigurasi sebagai berikut.- Arduino pin 4 dan 13, dikendalikan oleh Timer0
- Arduino pin 11 dan 12, dikendalikan oleh Timer1
- Arduino pin 9 dan 10, dikendalikan oleh Timer2
- Arduino pin 2, 3, dan 5, dikendalikan oleh Timer3
- Arduino pin 6, 7, dan 8, dikendalikan oleh Timer4
- Arduino pin 46, 45, dan 44, dikendalikan oleh Timer5
Mode Operasi TimerAda empat mode operasi timer pada microcontroller, yakni sebagai berikut.- Normal, hanya untuk mencacah, melakukan delay, menghitung selang waktu
- PWM, phase correct, membentuk gelombang PWM resolusi tinggi, berdasarkan operasi dual slope
- CTC (Clear Timer Compare Match), mengembalikan nilai TCNT ke 0, saat nilainya telah sama dengan nilai set point OCR
- Fast PWM, memberikan pulsa PWM frekuensi tinggi, berdasarkan operasi single slope
D. Potensiometer Potensiometer (POT) adalah salah satu jenis Resistor yang Nilai Resistansinya dapat diatur sesuai dengan kebutuhan rangkaian elektronika ataupun kebutuhan pemakainya. Sebuah Potensiometer (POT) terdiri dari sebuah elemen resistif yang membentuk jalur (track) dengan terminal di kedua ujungnya. Sedangkan terminal lainnya (biasanya berada di tengah) adalah Penyapu (Wiper) yang dipergunakan untuk menentukan pergerakan pada jalur elemen resistif (Resistive). Pergerakan Penyapu (Wiper) pada Jalur Elemen Resistif inilah yang mengatur naik-turunnya Nilai Resistansi sebuah Potensiometer. Simbol dan bentuk Potensiometer dapat dilihat pada gambar 9 berikut.1. Potensiometer SliderPotensiometer geser, atau pot geser, dirancang untuk mengubah nilai resistansi kontaknya dengan gerakan linier dan dengan demikian terdapat hubungan linier antara posisi kontak penggeser dan resistansi output. Gambar 10. Potensiometer Geser2. Potensiometer Rotary Potensiometer putar (tipe yang paling umum) memvariasikan nilai resistifnya sebagai hasil dari pergerakan sudut. Memutar kenop atau dial yang terpasang pada poros menyebabkan penyeka internal menyapu sekitar elemen resistif melengkung. Penggunaan potensiometer putar yang paling umum adalah pot kontrol volume.
Gambar 11. Potensiometer Rotary
3. Potensiometer TrimmerPotensiometer preset atau trimmer adalah potensiometer tipe "set-and-forget" kecil yang memungkinkan penyesuaian yang sangat halus atau sesekali mudah dilakukan ke rangkaian, (misalnya untuk kalibrasi). Potensiometer preset putar satu putaran adalah versi mini dari variabel resistor standar yang dirancang untuk dipasang langsung pada papan rangkaian tercetak dan disesuaikan dengan menggunakan obeng berbilah kecil atau alat plastik serupa.
Gambar 12. Potensiometer Trimmer atau Preset
B. Komponen Input a) LM 35
Sensor suhu IC LM 35 merupkan chip IC produksi Natioanal Semiconductor yang berfungsi untuk mengetahui temperature suatu objek atau ruangan dalam bentuk besaran elektrik, atau dapat juga di definisikan sebagai komponen elektronika yang berfungsi untuk mengubah perubahan temperature yang diterima dalam perubahan besaran elektrik. Sensor suhu IC LM35 dapat mengubah perubahan temperature menjadi perubahan tegangan pada bagian outputnya. Sensor suhu IC LM35 membutuhkan sumber tegangan DC +5 volt dan konsumsi arus DC sebesar 60 µA dalam beroperasi. Bentuk fisik sensor suhu LM 35 merupakan chip IC dengan kemasan yang berfariasi, pada umumnya kemasan sensor suhu LM35 adalah kemasan TO-92 seperti terlihat pada gambar dibawah. Gambar 13. LM 35
Dari gambar diatas dapat diketahui bahwa sensor suhu IC LM35 pada dasarnya memiliki 3 pin yang berfungsi sebagai sumber supply tegangan DC +5 volt, sebagai pin output hasil penginderaan dalam bentuk perubahan tegangan DC pada Vout dan pin untuk Ground. Karakteristik Sensor suhu IC LM35 adalah : - Memiliki sensitivitas suhu, dengan faktor skala linier antara tegangan dan suhu 10 mVolt/ºC, sehingga dapat dikalibrasi langsung dalam celcius.
- Memiliki ketepatan atau akurasi kalibrasi yaitu 0,5ºC pada suhu 25 ºC.
- Memiliki jangkauan maksimal operasi suhu antara -55 ºC sampai +150 ºC.
- Bekerja pada tegangan 4 sampai 30 volt.
- Memiliki arus rendah yaitu kurang dari 60 µA.
- Memiliki pemanasan sendiri yang rendah (low-heating) yaitu kurang dari 0,1 ºC pada udara diam.
- Memiliki impedansi keluaran yang rendah yaitu 0,1 W untuk beban 1 mA.
- Memiliki ketidaklinieran hanya sekitar ± ¼ ºC.
- Tegangan output sensor suhu IC LM35 dapat diformulasikan sebagai berikut :
Vout LM35 = Temperature º x 10 mV
-Dip Swtich
DIP switch, atau Dual Inline Package switch, adalah jenis saklar yang terdiri dari beberapa saklar kecil yang terpasang dalam paket berbentuk baris ganda pada rangkaian elektronik terpadu atau modul. Setiap saklar memiliki dua posisi, ON dan OFF, yang digunakan untuk konfigurasi atau pengaturan pada perangkat elektronik, seperti menetapkan alamat atau parameter lainnya. DIP switch umumnya memberikan kemudahan penggunaan tanpa memerlukan keahlian khusus dalam pengaturan, meskipun beberapa pengembang kini beralih ke metode konfigurasi yang lebih canggih.
DIP switch, atau Dual Inline Package switch, bekerja berdasarkan prinsip sederhana saklar elektronik yang dapat berada dalam dua posisi, ON (hidup) atau OFF (mati). Dalam konteks penggunaannya pada rangkaian terpadu atau modul, setiap saklar DIP switch merepresentasikan satu bit informasi. Ketika saklar dalam posisi ON, itu menghubungkan pin terkait, sementara posisi OFF memutuskan hubungan. Pengaturan atau konfigurasi tertentu dapat dicapai dengan mengatur posisi ON atau OFF dari masing-masing saklar DIP switch sesuai dengan kebutuhan aplikasi. DIP switch sering digunakan untuk pengaturan alamat atau parameter lainnya dalam rangkaian elektronik tanpa memerlukan pemrograman atau perangkat lunak tambahan.
-Sensor InfraredSensor infrared (IR) adalah perangkat elektronika yang dirancang untuk mendeteksi radiasi inframerah dalam spektrum elektromagnetik. Radiasi inframerah adalah bentuk radiasi panas yang tidak terlihat oleh mata manusia. Sensor infrared mengonversi energi radiasi inframerah menjadi sinyal listrik yang dapat diukur. Ada dua jenis sensor infrared utama: sensor pasif dan sensor aktif.
1. Sensor Infrared Pasif: Sensor ini mendeteksi radiasi inframerah yang dipancarkan atau dipantulkan oleh objek atau tubuh yang memiliki suhu lebih tinggi daripada nol absolut. Sensor pasif sering digunakan dalam aplikasi deteksi gerak (PIR sensor) untuk mengidentifikasi perubahan suhu yang terkait dengan pergerakan manusia atau objek.
2. Sensor Infrared Aktif: Sensor ini menghasilkan radiasi inframerah sendiri dan kemudian mendeteksi pantulan atau perubahan dalam pantulan tersebut. Sensor ini sering digunakan dalam aplikasi pengukuran jarak (seperti sensor ultrasonik atau lidar) dan komunikasi inframerah.
Sensor infrared memiliki berbagai aplikasi, termasuk di dalam pengendalian jarak jauh, perangkat keamanan, sistem kendali otomatis, dan perangkat medis. Keunggulan sensor infrared termasuk kemampuan bekerja dalam kondisi cahaya rendah atau gelap dan kemampuan mengukur suhu objek tanpa kontak fisik.
Prinsip kerja sensor infrared tergantung pada jenis sensor dan aplikasinya. Secara umum, prinsip kerja sensor infrared melibatkan deteksi radiasi inframerah dan konversi energi inframerah menjadi sinyal listrik yang dapat diukur. Ada dua jenis utama sensor infrared: sensor pasif dan sensor aktif.
1. Sensor Infrared Pasif: - Deteksi Radiasi: Sensor pasif mendeteksi radiasi inframerah yang dipancarkan atau dipantulkan oleh objek atau tubuh yang memiliki suhu lebih tinggi daripada nol absolut. Ini dapat mencakup perubahan suhu yang terkait dengan pergerakan manusia atau objek. -Konversi Menjadi Sinyal Listrik: Ketika radiasi inframerah tertangkap, sensor mengonversinya menjadi sinyal listrik melalui elemen detektor termal atau pyroelektrik. - Aplikasi: Sensor pasif, seperti sensor deteksi gerak PIR (Passive Infrared), sering digunakan dalam sistem keamanan atau otomatisasi rumah untuk mendeteksi perubahan suhu yang diindikasikan oleh pergerakan.
2. Sensor Infrared Aktif: - Pancaran Radiasi: Sensor aktif menghasilkan sendiri radiasi inframerah, kemudian mendeteksi pantulan atau perubahan dalam pantulan tersebut. - Konversi Menjadi Sinyal Listrik: Sinyal pantulan atau perubahan dalam intensitas pantulan diukur dan dikonversi menjadi sinyal listrik oleh elemen detektor seperti fotodioda atau fototransistor. - Aplikasi: Sensor infrared aktif digunakan dalam pengukuran jarak (lidar, sensor ultrasonik) dan komunikasi inframerah.
Prinsip kerja sensor infrared memanfaatkan sifat radiasi inframerah yang tidak terlihat oleh mata manusia dan kemudian mengonversinya menjadi bentuk sinyal yang dapat diolah untuk berbagai aplikasi.
-Sensor LDRSensor LDR (Light Dependent Resistor), juga dikenal sebagai fotoresistor, adalah jenis sensor yang sensitif terhadap intensitas cahaya. Prinsip kerja LDR didasarkan pada perubahan resistansinya tergantung pada tingkat cahaya yang diterimanya. Ketika cahaya mengenai LDR, resistansinya menurun, dan sebaliknya, saat kondisi gelap, resistansinya meningkat.
LDR umumnya terbuat dari semikonduktor yang memiliki resistivitas yang sangat sensitif terhadap tingkat pencahayaan. Ketika cahaya menyinari LDR, energi foton mengeksitasi elektron dalam struktur semikonduktor, sehingga resistansi menurun. Pengukuran resistansi LDR dapat digunakan untuk mengukur intensitas cahaya di sekitarnya.
Aplikasi umum dari sensor LDR termasuk dalam sistem pengaturan otomatis pencahayaan, seperti lampu jalan yang menyala otomatis saat gelap, atau dalam perangkat sensor cahaya untuk kamera atau ponsel pintar. Penggunaan LDR dalam berbagai proyek elektronika memungkinkan respons otomatis terhadap kondisi pencahayaan, menawarkan solusi hemat energi dan efisien.
Prinsip kerja sensor LDR (Light Dependent Resistor) didasarkan pada perubahan resistansinya terhadap intensitas cahaya yang diterimanya. LDR terbuat dari material semikonduktor khusus yang memiliki resistivitas yang sangat sensitif terhadap tingkat pencahayaan. Ketika cahaya mengenai LDR, energi foton dari cahaya tersebut menghasilkan elektron-elektron berenergi tinggi dalam struktur semikonduktor, sehingga meningkatkan konduktivitas dan menurunkan resistansi sensor.
Jadi, pada kondisi cahaya yang cukup, LDR memiliki resistansi yang rendah, memungkinkan arus listrik untuk mengalir dengan mudah melalui sensor. Sebaliknya, pada kondisi gelap, resistansi LDR meningkat, membatasi arus listrik yang dapat mengalir. Pengukuran resistansi LDR dapat digunakan sebagai indikator intensitas cahaya di sekitar sensor.
Aplikasi umum dari prinsip ini adalah dalam rangkaian pengaturan otomatis pencahayaan. Sebagai contoh, ketika lingkungan menjadi gelap, resistansi LDR meningkat, dan ini dapat digunakan untuk mengaktifkan atau mengatur lampu secara otomatis. Penggunaan sensor LDR membuat perangkat dapat merespons secara otomatis terhadap kondisi pencahayaan, menjadikannya berguna dalam berbagai proyek elektronika dan sistem kontrol otomatis. C. Komponen Output a) LCDLiquid Crystal Display (LCD) adalah sebuah peralatan elektronik yang berfungsi untukmenampilkan output sebuah sistem dengan cara membentuk suatu citra atau gambaran pada sebuah layar. Secara garis besar komponen penyusun LCD terdiri dari kristal cair (liquid crystal) yang diapit oleh 2 buah elektroda transparan dan 2 buah filter polarisasi (polarizing filter). Struktur LCD dapat dilihat pada gambar berikut.Gambar 14. Struktur LCD
Keterangan:
1. Film dengan polarizing filter vertical untuk memolarisasi cahaya yang masuk.
2. Glass substrate yang berisi kolom-kolom elektroda Indium tin oxide (ITO).
3. Twisted nematic liquid crystal (kristal cair dengan susunan terpilin).
4. Glass substrate yang berisi baris-baris elektroda Indium tin oxide (ITO).
5. Film dengan polarizing filter horizontal untuk memolarisasi cahaya yang masuk.
6. Reflektor cahaya untuk memantulkan cahaya yang masuk LCD kembali ke mata pengamat.
Sebuah citra dibentuk dengan mengombinasikan kondisi nyala dan mati dari pixel-pixel yang menyusun layar sebuah LCD. Pada umumnya LCD yang dijual di pasaran sudah memiliki integrated circuit tersendiri sehingga para pemakai dapat mengontrol tampilan LCD dengan mudah dengan menggunakan mikrokontroler untuk mengirimkan data melalui pin-pin input yang sudah tersedia.Module circuit dari LCD dan kaki-kakinya dapat dilihat melalui gambar berikut.Gambar 16. Kaki-kaki yang Terdapat pada LCDb) Motor DCMotor DC adalah motor listrik yang memerlukan suplai tegangan arus searah pada kumparan medan untuk diubah menjadi energi gerak mekanik. Kumparan medan pada motor dc disebut stator (bagian yang tidak berputar) dan kumparan jangkar disebut rotor (bagian yang berputar). Motor arus searah, sebagaimana namanya, menggunakan arus langsung yang tidak langsung/direct- unidirectional. Motor DC adalah piranti elektronik yang mengubah energi listrik menjadi energi mekanik berupa gerak rotasi. Pada motor DC terdapat jangkar dengan satu atau lebih kumparan terpisah. Tiap kumparan berujung pada cincin belah (komutator). Dengan adanya insulator antara komutator, cincin belah dapat berperan sebagai saklar kutub ganda (double pole, double throw switch). Motor DC bekerja berdasarkan prinsip gaya Lorentz, yang menyatakan ketika sebuah konduktor beraliran arus diletakkan dalam medan magnet, maka sebuah gaya (yang dikenal dengan gaya Lorentz) akan tercipta secara ortogonal diantara arah medan magnet dan arah aliran arus. Kecepatan putar motor DC (N) dirumuskan dengan Persamaan berikut.
Gambar 17. Rumus Kecepatan Putar Motor DC
Simbol Motor DC
Gambar 18. Simbol Motor DC
Motor DC tersusun dari dua bagian yaitu bagian diam (stator) dan bagian bergerak (rotor). Stator motor arus searah adalah badan motor atau kutub magnet (sikat-sikat), sedangkan yang termasuk rotor adalah jangkar lilitanya. Pada motor, kawat penghantar listrik yang bergerak tersebut pada dasarnya merupakan lilitan yang berbentuk persegi panjang yang disebut kumparan.
Prinsip Kerja Motor DC
Gambar 19. Prinsip Kerja Motor DC
Kumparan ABCD terletak dalam medan magnet serba sama dengan kedudukan sisi aktif AD dan CB yang terletak tepat lurus arah fluks magnet. Sedangkan sisi AB dan DC ditahan pada bagian tengahnya, sehingga apabila sisi AD dan CB berputar karena adanya gaya lorentz, maka kumparan ABCD akan berputar. Hasil perkalian gaya dengan jarak pada suatu titik tertentu disebut momen, sisi aktif AD dan CB akan berputar pada porosnya karena pengaruh momen putar (T). Setiap sisi kumparan aktif AD dan CB pada gambar diatas akan mengalami momen putar sebesar :
T = F.r
Dimana :
T = momen putar (Nm) F = gaya tolak (newton)
r = jarak sisi kumparan pada sumbu putar (meter)
Pada daerah dibawah kutub-kutub magnet besarnya momen putar tetap karena besarnya gaya lorentz. Hal ini berarti bahwa kedudukan garis netral sisi sisi kumparan akan berhenti berputar. Supaya motor dapat berputar terus dengan baik, maka perlu ditambah jumlah kumparan yang digunakan. Kumparan- kumparan harus diletakkan sedemikian rupa sehingga momen putar yang dialami setiap sisi kumparan akan saling membantu dan menghasilkan putaran yang baik. Dengan pertimbangan teknis, maka kumparan-kumparan yang berputar tersebut dililitkan pada suatu alat yang disebut jangkar, sehingga lilitan kumparan itupun disebut lilitan jangkar. Struktur Motor DC dapat dilihat pada gambar berikut ini.Gambar 20. Struktur Motor DCc) Motor ServoMotor servo adalah jenis motor listrik yang dirancang untuk memberikan output yang presisi dalam menyelesaikan pergerakan tertentu. Motor ini dilengkapi dengan kontroler yang memungkinkan presisi tinggi dalam mengatur posisi atau sudut rotor. Prinsip kerja motor servo didasarkan pada umpan balik atau feedback yang terus-menerus dari posisi rotor.
Prinsip kerja motor servo:
1. Umpan Balik (Feedback): Motor servo menggunakan sensor umpan balik, seperti potensiometer, enkoder, atau resolver, untuk terus memonitor posisi atau sudut rotor.
2. Kontroler: - Kontroler servo menerima sinyal perintah untuk mencapai posisi tertentu. - Kontroler membandingkan posisi aktual (yang diberikan oleh sensor umpan balik) dengan posisi yang diminta.
3. Error Signal: - Jika terdapat perbedaan antara posisi aktual dan yang diminta, tercipta sinyal kesalahan (error signal).
4. Sinyal Penggerak (Drive Signal): - Kontroler menghasilkan sinyal penggerak yang disesuaikan berdasarkan error signal. - Sinyal penggerak mengontrol daya yang disuplai ke motor untuk mengoreksi perbedaan posisi.
5. Pergerakan Presisi: - Motor servo merespons dengan mengubah posisi rotor untuk mengurangi error posisi. - Proses ini berlanjut sampai posisi yang diminta tercapai.
Motor servo sering digunakan dalam aplikasi yang membutuhkan presisi tinggi, seperti robotika, peralatan CNC (Computer Numerical Control), peralatan audio profesional, dan banyak lagi. Keunggulan motor servo meliputi kemampuan untuk mengontrol kecepatan, torsi, dan posisi dengan sangat presisi, membuatnya ideal untuk aplikasi yang memerlukan akurasi dan kontrol yang tinggi.
C. Komponen Lainnya a) Arduino Uno Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan dalam praktikum ini adalah Arduino Uno yang menggunakan chip AVR ATmega 328P. Dalam memprogram Arduino, kita bisa menggunakan komunikasi serial agar Arduino dapat berhubungan dengan komputer ataupun perangkat lain. Adapun spesifikasi dari Arduino Uno ini adalah sebagai berikut :
Sinyal Digital merupakan jenis sinyal diskrit, karena tidak setiap waktu memiliki nilai yang berbeda, pada sinyal digital digambarkan seperti sinyal kotak, sinyal digital hanya mengenal dua keadaan yaitu 0 atau 1, hidup atau mati.kembali pada pembahasan judul artikel, yaitu membuat simulasi arduino membaca ADC. kita akan menggunakan potensiometer yang berfungsi sebagai pembagi tegangan sehingga tegangan yang masuk ke pin Analog Arduino dapat kita atur dan dapat di rubah. data yang masuk dari potensiometer berupa tegangan akan tetapi data yang di proses oleh arduino sendiri yaitu bilangan ADC. rumus untuk menentukan nilai ADC berdasarkan tegangan yang masuk sebagai berikut :
ADC = (Vin / Vreff) x 1023
- Timer0, 8 bit, digunakan untuk function seperti delay(), millis(), dan micros(), dengan mengubah konfigurasi Timer0 akan mempengaruhi function lainnya
- Timer1, 16 bit, biasa digunakan untuk aplikasi terkait motor servo
- Timer2, 8 bit, function tone() menggunakan Timer2
- delay(), digunakan untuk tundaan eksekusi baris program selanjutnya dalam millisecond
- delayMicroseconds(), digunakan untuk tundaan eksekusi baris program selanjutnya dalam microseconds
- millis(), digunakan sebagai pewaktu internal yang (bila tanpa terminate bersyarat) akan terus berjalan hingga terjadi overflow (kembali ke nilai 0) dengan unit dalam millisecond, untuk board Arduino Uno nilai millis() akan terus berjalan hingga sekitar 50 hari
- micros(), digunakan sebagai pewaktu internal yang (bila tanpa terminate bersyarat) akan terus berjalan hingga terjadi overflow (kembali ke nilai 0) dengan unit dalam microsecond, untuk board Arduino Uno nilai millis() akan terus berjalan hingga sekitar 70 jam
- TCCRx (Timer/Conter Control Register), dengan x adalah nomor, berikut ini adalah register apa saja yang digunakan untuk timer.
- TCCRx (Timer/Conter Control Register), dimana prescaler dapat dikonfigurasi disini sekaligus mode operasi timer
- TCNTx (Timer/Counter Register), dimana nilai timer disimpan, merupakan register pencacah mulai dari 0 hingga nilai maximum
- OCRx (Output Compare Register), untuk membandingkan OCR yag diberikan dengan nilai TCNT
- ICRx (Input Capture Register), hanya tersedia untuk timer 16 bit, menerima data timer
- TIMSKx (Timer/Counter Interrupt Mask Register), digunakan untuk menjalankan atau mematikan timer interrupt
- TIFRx (Timer/Counter Interrupt Flag Register), menandakan timer interrupt hasil operasi timer
- Menentukan frekuensi pembagi, misal 2 Hz
- Mengetahui frekuensi kerja Arduino, yakni 16 MHz
- Mengetahui prescaler timer, 256 untuk 8 bit, 65536 untuk 16 bit
- Membagi nilai frekuensi kerja Arduino (16 MHz) dengan prescaler (256), hingga diperoleh hasil 62500
- Membagi hasil tersebut (62500) dengan frekuensi ditentukan (2 Hz), hingga diperoleh hasil 31250
- Memastikan bahwa hasil tersebut dapat digunakan dengan membandingkannya nilai maximum prescaler, bila nilai tersebut lebih kecil (dalam hal ini 31250 lebih kecil dari 65536), maka hasilnya tersebut valid, bila tidak valid gunakan nilai prescaler yang lebih besar
- Arduino pin 5 dan 6, dikendalikan oleh Timer0
- Arduino pin 9 dan 10, dikendalikan oleh Timer1
- Arduino pin 3 dan 11, dikendalikan oleh Timer2
- Arduino pin 4 dan 13, dikendalikan oleh Timer0
- Arduino pin 11 dan 12, dikendalikan oleh Timer1
- Arduino pin 9 dan 10, dikendalikan oleh Timer2
- Arduino pin 2, 3, dan 5, dikendalikan oleh Timer3
- Arduino pin 6, 7, dan 8, dikendalikan oleh Timer4
- Arduino pin 46, 45, dan 44, dikendalikan oleh Timer5
- Normal, hanya untuk mencacah, melakukan delay, menghitung selang waktu
- PWM, phase correct, membentuk gelombang PWM resolusi tinggi, berdasarkan operasi dual slope
- CTC (Clear Timer Compare Match), mengembalikan nilai TCNT ke 0, saat nilainya telah sama dengan nilai set point OCR
- Fast PWM, memberikan pulsa PWM frekuensi tinggi, berdasarkan operasi single slope
Dari gambar diatas dapat diketahui bahwa sensor suhu IC LM35 pada dasarnya memiliki 3 pin yang berfungsi sebagai sumber supply tegangan DC +5 volt, sebagai pin output hasil penginderaan dalam bentuk perubahan tegangan DC pada Vout dan pin untuk Ground.
- Memiliki sensitivitas suhu, dengan faktor skala linier antara tegangan dan suhu 10 mVolt/ºC, sehingga dapat dikalibrasi langsung dalam celcius.
- Memiliki ketepatan atau akurasi kalibrasi yaitu 0,5ºC pada suhu 25 ºC.
- Memiliki jangkauan maksimal operasi suhu antara -55 ºC sampai +150 ºC.
- Bekerja pada tegangan 4 sampai 30 volt.
- Memiliki arus rendah yaitu kurang dari 60 µA.
- Memiliki pemanasan sendiri yang rendah (low-heating) yaitu kurang dari 0,1 ºC pada udara diam.
- Memiliki impedansi keluaran yang rendah yaitu 0,1 W untuk beban 1 mA.
- Memiliki ketidaklinieran hanya sekitar ± ¼ ºC.
- Tegangan output sensor suhu IC LM35 dapat diformulasikan sebagai berikut :
Vout LM35 = Temperature º x 10 mV
Keterangan:
1. Film dengan polarizing filter vertical untuk memolarisasi cahaya yang masuk.
2. Glass substrate yang berisi kolom-kolom elektroda Indium tin oxide (ITO).
3. Twisted nematic liquid crystal (kristal cair dengan susunan terpilin).
4. Glass substrate yang berisi baris-baris elektroda Indium tin oxide (ITO).
5. Film dengan polarizing filter horizontal untuk memolarisasi cahaya yang masuk.
6. Reflektor cahaya untuk memantulkan cahaya yang masuk LCD kembali ke mata pengamat.
Sebuah citra dibentuk dengan mengombinasikan kondisi nyala dan mati dari pixel-pixel yang menyusun layar sebuah LCD. Pada umumnya LCD yang dijual di pasaran sudah memiliki integrated circuit tersendiri sehingga para pemakai dapat mengontrol tampilan LCD dengan mudah dengan menggunakan mikrokontroler untuk mengirimkan data melalui pin-pin input yang sudah tersedia.
Simbol Motor DC
Gambar 18. Simbol Motor DC
Motor DC tersusun dari dua bagian yaitu bagian diam (stator) dan bagian bergerak (rotor). Stator motor arus searah adalah badan motor atau kutub magnet (sikat-sikat), sedangkan yang termasuk rotor adalah jangkar lilitanya. Pada motor, kawat penghantar listrik yang bergerak tersebut pada dasarnya merupakan lilitan yang berbentuk persegi panjang yang disebut kumparan.
Gambar 19. Prinsip Kerja Motor DC
Kumparan ABCD terletak dalam medan magnet serba sama dengan kedudukan sisi aktif AD dan CB yang terletak tepat lurus arah fluks magnet. Sedangkan sisi AB dan DC ditahan pada bagian tengahnya, sehingga apabila sisi AD dan CB berputar karena adanya gaya lorentz, maka kumparan ABCD akan berputar.
T = F.r
Dimana :
T = momen putar (Nm) F = gaya tolak (newton)
r = jarak sisi kumparan pada sumbu putar (meter)
Pada daerah dibawah kutub-kutub magnet besarnya momen putar tetap karena besarnya gaya lorentz. Hal ini berarti bahwa kedudukan garis netral sisi sisi kumparan akan berhenti berputar. Supaya motor dapat berputar terus dengan baik, maka perlu ditambah jumlah kumparan yang digunakan. Kumparan- kumparan harus diletakkan sedemikian rupa sehingga momen putar yang dialami setiap sisi kumparan akan saling membantu dan menghasilkan putaran yang baik. Dengan pertimbangan teknis, maka kumparan-kumparan yang berputar tersebut dililitkan pada suatu alat yang disebut jangkar, sehingga lilitan kumparan itupun disebut lilitan jangkar. Struktur Motor DC dapat dilihat pada gambar berikut ini.-Power USB
Digunakan untuk menghubungkan Papan Arduino dengan komputer lewat koneksi USB.
Digunakan untuk menghubungkan Papan Arduino dengan komputer lewat koneksi USB.
-Power jack
Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5 - 12 V.
Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5 - 12 V.
-Crystal Oscillator
Kristal ini digunakan sebagai layaknya detak jantung pada Arduino. Jumlah cetak menunjukkan 16000 atau 16000 kHz, atau 16 MHz.
Kristal ini digunakan sebagai layaknya detak jantung pada Arduino. Jumlah cetak menunjukkan 16000 atau 16000 kHz, atau 16 MHz.
-Reset
Digunakan untuk mengulang program Arduino dari awal atau Reset.
-Digital Pins I / O
Papan Arduino UNO memiliki 14 Digital Pin. Berfungsi untuk memberikan nilai logika ( 0 atau 1 ). Pin berlabel " ~ " adalah pin-pin PWM ( Pulse Width Modulation ) yang dapat digunakan untuk menghasilkan PWM.
Digunakan untuk mengulang program Arduino dari awal atau Reset.
-Digital Pins I / O
Papan Arduino UNO memiliki 14 Digital Pin. Berfungsi untuk memberikan nilai logika ( 0 atau 1 ). Pin berlabel " ~ " adalah pin-pin PWM ( Pulse Width Modulation ) yang dapat digunakan untuk menghasilkan PWM.
-Analog Pins
Papan Arduino UNO memiliki 6 pin analog A0 sampai A5. Digunakan untuk membaca sinyal atau sensor analog seperti sensor jarak, suhu dsb, dan mengubahnya menjadi nilai digital.
Papan Arduino UNO memiliki 6 pin analog A0 sampai A5. Digunakan untuk membaca sinyal atau sensor analog seperti sensor jarak, suhu dsb, dan mengubahnya menjadi nilai digital.
-LED Power Indicator
Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik dengan baik.
Bagian - bagian pendukung:
Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik dengan baik.
Bagian - bagian pendukung:
-RAM
RAM (Random Access Memory) adalah tempat penyimpanan sementara pada komputer yang isinya dapat diakses dalam waktu yang tetap, tidak memperdulikan letak data tersebut dalam memori atau acak. Secara umum ada 2 jenis RAM yaitu SRAM (Static Random Acces Memory) dan DRAM (Dynamic Random Acces Memory).
RAM (Random Access Memory) adalah tempat penyimpanan sementara pada komputer yang isinya dapat diakses dalam waktu yang tetap, tidak memperdulikan letak data tersebut dalam memori atau acak. Secara umum ada 2 jenis RAM yaitu SRAM (Static Random Acces Memory) dan DRAM (Dynamic Random Acces Memory).
-ROM
ROM (Read-only Memory) adalah perangkat keras pada computer yang dapat menyimpan data secara permanen tanpa harus memperhatikan adanya sumber listrik. ROM terdiri dari Mask ROM, PROM, EPROM, EEPROM.
Block Diagram Mikrokontroler ATMega 328P pada Arduino UNO
Adapun block diagram mikrokontroler ATMega 328P dapat dilihat pada gambar berikut:
Block diagram dapat digunakan untuk memudahkan / memahami bagaimana kinerja dari mikrokontroler ATMega 328P.
Pin-pin ATMega 328P:
Rangkaian Mikrokontroler ATMega 328P pada Arduino UNO
b) Driver Motor L293D IC L293D adalah IC yang didesain khusus sebagai driver motor DC dan dapat dikendalikan dengan rangkaian TTL maupun mikrokontroler. Motor DC yang dikontrol dengan driver IC L293D dapat dihubungkan ke ground maupun ke sumber tegangan positif karena di dalam driver L293D sistem driver yang digunakan adalah totem pool. Dalam 1 unit chip IC L293D terdiri dari 4 buah driver motor DC yang berdiri sendiri sendiri dengan kemampuan mengalirkan arus 1 Ampere tiap drivernya. Sehingga dapat digunakan untuk membuat driver H-bridge untuk 2 buah motor DC. Konstruksi pin driver motor DC IC l293D adalah sebagai berikut.Konstruksi Pin Driver Motor DC IC L293D
Fungsi Pin Driver Motor DC IC L293D
· 1. Pin EN (Enable, EN1.2, EN3.4) berfungsi untuk mengijinkan driver menerima perintah untuk menggerakan motor DC.
2. Pin In (Input, 1A, 2A, 3A, 4A) adalah pin input sinyal kendali motor DC 3. Pin Out (Output, 1Y, 2Y, 3Y, 4Y) adalah jalur output masing-masing driver yang dihubungkan ke motor DC 4. Pin VCC (VCC1, VCC2) adalah jalur input tegangan sumber driver motor DC, dimana VCC1 adalah jalur input sumber tegangan rangkaian kontrol dirver dan VCC2 adalah jalur input sumber tegangan untuk motor DC yang dikendalikan. 5. Pin GND (Ground) adalah jalu yang harus dihubungkan ke ground, pin GND ini ada 4 buah yang berdekatan dan dapat dihubungkan ke sebuah pendingin kecil.Feature Driver Motor DC IC L293D Driver motor DC IC L293D memiliki feature yang lengkap untuk sebuah driver motor DC sehingga dapat diaplikasikan dalam beberapa teknik driver motor DC dan dapat digunakan untuk mengendalikan beberapa jenis motor DC. Feature yang dimiliki driver motor DC IC L293D sesuai dengan datasheet adalah sebagai berikut :
· - Wide Supply-Voltage Range: 4.5 V to 36 V
· - Separate Input-Logic Supply
· - Internal ESD Protection
· - Thermal Shutdown
· - High-Noise-Immunity Inputs
- Functionally Similar to SGS L293 and SGS L293D
· - Output Current 1 A Per Channel (600 mA for L293D)
· - Peak Output Current 2 A Per Channel (1.2 A for L293D)
· - Output Clamp Diodes for Inductive Transient Suppression (L293D)
Rangkaian Aplikasi Driver Motor DC IC L293D
Pada gambar driver IC L293D diatas adalah contoh aplikasi dari keempat unit driver motor DC yang dihubungkan secar berbeda sesuai dengan keinginan dan kebutuhan.
ROM (Read-only Memory) adalah perangkat keras pada computer yang dapat menyimpan data secara permanen tanpa harus memperhatikan adanya sumber listrik. ROM terdiri dari Mask ROM, PROM, EPROM, EEPROM.
Block Diagram Mikrokontroler ATMega 328P pada Arduino UNO
Adapun block diagram mikrokontroler ATMega 328P dapat dilihat pada gambar berikut:
Konstruksi Pin Driver Motor DC IC L293D
Fungsi Pin Driver Motor DC IC L293D
· 1. Pin EN (Enable, EN1.2, EN3.4) berfungsi untuk mengijinkan driver menerima perintah untuk menggerakan motor DC.
Feature Driver Motor DC IC L293D Driver motor DC IC L293D memiliki feature yang lengkap untuk sebuah driver motor DC sehingga dapat diaplikasikan dalam beberapa teknik driver motor DC dan dapat digunakan untuk mengendalikan beberapa jenis motor DC. Feature yang dimiliki driver motor DC IC L293D sesuai dengan datasheet adalah sebagai berikut :
· - Wide Supply-Voltage Range: 4.5 V to 36 V
· - Separate Input-Logic Supply
· - Internal ESD Protection
· - Thermal Shutdown
· - High-Noise-Immunity Inputs
- Functionally Similar to SGS L293 and SGS L293D
· - Output Current 1 A Per Channel (600 mA for L293D)
· - Peak Output Current 2 A Per Channel (1.2 A for L293D)
· - Output Clamp Diodes for Inductive Transient Suppression (L293D)
Rangkaian Aplikasi Driver Motor DC IC L293D
Pada gambar driver IC L293D diatas adalah contoh aplikasi dari keempat unit driver motor DC yang dihubungkan secar berbeda sesuai dengan keinginan dan kebutuhan.