Modul 4
Dapat mengimplementasikan dan menguji sistem sortasi otomatis berdasarkan warna dan berat jeruk.
-
Memahami cara kerja sensor PIR, Load Cell, dan sensor warna dalam proses sortasi otomatis.
-
Dapat merancang dan membuat rangkaian untuk sistem sortasi dengan pengontrol STM32 dan Raspberry Pi Pico.
-
Dapat menampilkan data jumlah jeruk secara real-time pada LCD dengan akurasi yang tinggi.
- Sensor Load Cell
Sebuah sensor load cell adalah perangkat elektronik yang dirancang
khusus untuk mengukur gaya atau beban secara akurat. Sensor ini bekerja
berdasarkan prinsip perubahan resistansi listrik pada elemen strain
gauge yang terdapat di dalamnya ketika diberikan beban. Ketika beban
diterapkan pada sensor load cell, elemen strain gauge mengalami regangan
yang mengubah nilai resistansinya. Perubahan ini kemudian dikonversi
menjadi sinyal listrik yang proporsional dengan besar gaya atau beban
yang diterapkan. Sensor load cell digunakan dalam berbagai aplikasi,
mulai dari industri manufaktur untuk mengukur berat benda hingga dalam
sistem kontrol proses yang membutuhkan monitoring beban secara
real-time. Keunggulan utama sensor load cell adalah kemampuannya dalam
memberikan hasil pengukuran yang sangat akurat dan stabil, sehingga
sangat berguna dalam situasi di mana presisi pengukuran sangat penting.
Modul HX711 adalah sebuah modul penguat (amplifier) yang dirancang
khusus untuk mengolah sinyal dari sensor berat atau load cell. Modul ini
memiliki kemampuan untuk meningkatkan sinyal analog yang sangat lemah
dari load cell menjadi sinyal digital yang dapat diproses oleh
mikrokontroler, seperti Arduino. Modul HX711 bekerja dengan menggunakan
teknik penguat diferensial untuk mendapatkan hasil yang akurat dari
sensor berat. Pada dasarnya, HX711 terdiri dari dua saluran input analog
(A dan B), di mana saluran A memiliki dua pengaturan penguatan yang
berbeda (128 dan 64), sementara saluran B memiliki penguatan tetap
sebesar 32. Modul ini juga dilengkapi dengan konverter analog ke digital
(ADC) dengan resolusi 24-bit yang memungkinkan pengukuran sangat
presisi. HX711 biasanya digunakan dalam aplikasi yang memerlukan
pengukuran berat yang akurat, seperti timbangan digital, karena modul
ini dapat mengeliminasi gangguan dan menghasilkan data yang stabil dan
akurat. Dengan demikian, modul HX711 adalah pilihan yang populer untuk
aplikasi penimbangan dan pengukuran berat yang memerlukan tingkat
presisi tinggi.Gambar 3. Pin Out Modul HX711Z
- Motor Servo

Gambar 4. Motor Servo
Motor servo adalah sebuah perangkat atau aktuator putar (motor) yang dirancang dengan sistem kontrol umpan balik loop tertutup (servo), sehingga dapat di set-up atau di atur untuk menentukan dan memastikan posisi sudut dari poros output motor. motor servo merupakan perangkat yang terdiri dari motor DC, serangkaian gear, rangkaian kontrol dan potensiometer. Serangkaian gear yang melekat pada poros motor DC akan memperlambat putaran poros dan meningkatkan torsi motor servo, sedangkan potensiometer dengan perubahan resistansinya saat motor berputar berfungsi sebagai penentu batas posisi putaran poros motor servo.
Prinsip kerja motor servo:
Motor servo dikendalikan dengan memberikan sinyal modulasi lebar pulsa (Pulse Wide Modulation / PWM) melalui kabel kontrol. Lebar pulsa sinyal kontrol yang diberikan akan menentukan posisi sudut putaran dari poros motor servo. Sebagai contoh, lebar pulsa 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), sedangkan 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). Lebih jelasnya perhatikan gambar dibawah ini.
- LCD (16X2 I2C)

Gambar 3.3 LCD
LCD atau Liquid Crystal Display adalah suatu jenis media display (tampilan) yang menggunakan kristal cair (liquid crystal) untuk menghasilkan gambar yang terlihat. Teknologi Liquid Crystal Display (LCD) atau Penampil Kristal Cair sudah banyak digunakan pada produk-produk seperti layar Laptop, layar Ponsel, layar Kalkulator, layar Jam Digital, layar Multimeter, Monitor Komputer, Televisi, layar Game portabel, layar Thermometer Digital dan produk-produk elektronik lainnya.
Teknologi Display LCD ini memungkinkan produk-produk elektronik dibuat menjadi jauh lebih tipis jika dibanding dengan teknologi Tabung Sinar Katoda (Cathode Ray Tube atau CRT). Jika dibandingkan dengan teknologi CRT, LCD juga jauh lebih hemat dalam mengkonsumsi daya karena LCD bekerja berdasarkan prinsip pemblokiran cahaya sedangkan CRT berdasarkan prinsip pemancaran cahaya. Namun LCD membutuhkan lampu backlight (cahaya latar belakang) sebagai cahaya pendukung karena LCD sendiri tidak memancarkan cahaya. Beberapa jenis backlight yang umum digunakan untuk LCD diantaranya adalah backlight CCFL (Cold cathode fluorescent lamps) dan backlight LED (Light-emitting diodes).
LCD atau Liquid Crystal Display pada dasarnya terdiri dari dua bagian utama yaitu bagian Backlight (Lampu Latar Belakang) dan bagian Liquid Crystal (Kristal Cair). Seperti yang disebutkan sebelumnya, LCD tidak memancarkan pencahayaan apapun, LCD hanya merefleksikan dan mentransmisikan cahaya yang melewatinya. Oleh karena itu, LCD memerlukan Backlight atau Cahaya latar belakang untuk sumber cahayanya. Cahaya Backlight tersebut pada umumnya adalah berwarna putih. Sedangkan Kristal Cair (Liquid Crystal) sendiri adalah cairan organik yang berada diantara dua lembar kaca yang memiliki permukaan transparan yang konduktif.
Bagian-bagian LCD atau Liquid Crystal Display diantaranya adalah:
Lapisan Terpolarisasi 1 (Polarizing Film 1)
Elektroda Positif (Positive Electrode)
Lapisan Kristal Cair (Liquid Cristal Layer)
Elektroda Negatif (Negative Electrode)
Lapisan Terpolarisasi 2 (Polarizing film 2)
Backlight atau Cermin (Backlight or Mirror)
Dibawah ini adalah struktur dasar sebuah LCD:
LCD yang digunakan pada Kalkulator dan Jam Tangan digital pada umumnya menggunakan Cermin untuk memantulkan cahaya alami agar dapat menghasilkan digit yang terlihat di layar. Sedangkan LCD yang lebih modern dan berkekuatan tinggi seperti TV, Laptop dan Ponsel Pintar menggunakan lampu Backlight (Lampu Latar Belakang) untuk menerangi piksel kristal cair. Lampu Backlight tersebut pada umumnya berbentuk persegi panjang atau strip lampu Flourescent atau Light Emitting Diode (LED). Cahaya putih adalah cahaya terdiri dari ratusan cahaya warna yang berbeda. Ratusan warna cahaya tersebut akan terlihat apabila cahaya putih mengalami refleksi atau perubahan arah sinar. Artinya, jika beda sudut refleksi maka berbeda pula warna cahaya yang dihasilkan.
Backlight LCD yang berwarna putih akan memberikan pencahayaan pada Kristal Cair atau Liquid Crystal. Kristal cair tersebut akan menyaring backlight yang diterimanya dan merefleksikannya sesuai dengan sudut yang diinginkan sehingga menghasilkan warna yang dibutuhkan. Sudut Kristal Cair akan berubah apabila diberikan tegangan dengan nilai tertentu. Karena dengan perubahan sudut dan penyaringan cahaya backlight pada kristal cair tersebut, cahaya backlight yang sebelumnya adalah berwarna putih dapat berubah menjadi berbagai warna.
Jika ingin menghasilkan warna putih, maka kristal cair akan dibuka selebar-lebarnya sehingga cahaya backlight yang berwarna putih dapat ditampilkan sepenuhnya. Sebaliknya, apabila ingin menampilkan warna hitam, maka kristal cair harus ditutup serapat-rapatnya sehingga tidak adalah cahaya backlight yang dapat menembus. Dan apabila menginginkan warna lainnya, maka diperlukan pengaturan sudut refleksi kristal cair yang bersangkutan.
Register LCD
LCD 16x2 memiliki dua register seperti register data dan register perintah. RS (register select) atau pilihan daftar terutama digunakan untuk mengubah dari satu register ke register lainnya. Ketika set register adalah '0', maka itu dikenal sebagai register perintah. Demikian pula, ketika set register adalah '1', maka itu dikenal sebagai register data.
Command Register
Fungsi utama dari register perintah adalah untuk menyimpan instruksi perintah yang diberikan ke layar. Di sini pemrosesan perintah dapat terjadi dalam register.
Data Register
Fungsi utama daftar data adalah untuk menyimpan informasi yang akan ditampilkan di layar LCD. Di sini, nilai karakter ASCII adalah informasi yang akan ditampilkan di layar LCD. Setiap kali kita mengirim informasi ke LCD, ia mengirimkan ke daftar data, dan kemudian proses akan mulai di sana. Saat daftar diatur = 1, maka daftar data akan dipilih.
LCD atau Liquid Crystal Display adalah suatu jenis media display (tampilan) yang menggunakan kristal cair (liquid crystal) untuk menghasilkan gambar yang terlihat. Teknologi Liquid Crystal Display (LCD) atau Penampil Kristal Cair sudah banyak digunakan pada produk-produk seperti layar Laptop, layar Ponsel, layar Kalkulator, layar Jam Digital, layar Multimeter, Monitor Komputer, Televisi, layar Game portabel, layar Thermometer Digital dan produk-produk elektronik lainnya.
Teknologi Display LCD ini memungkinkan produk-produk elektronik dibuat menjadi jauh lebih tipis jika dibanding dengan teknologi Tabung Sinar Katoda (Cathode Ray Tube atau CRT). Jika dibandingkan dengan teknologi CRT, LCD juga jauh lebih hemat dalam mengkonsumsi daya karena LCD bekerja berdasarkan prinsip pemblokiran cahaya sedangkan CRT berdasarkan prinsip pemancaran cahaya. Namun LCD membutuhkan lampu backlight (cahaya latar belakang) sebagai cahaya pendukung karena LCD sendiri tidak memancarkan cahaya. Beberapa jenis backlight yang umum digunakan untuk LCD diantaranya adalah backlight CCFL (Cold cathode fluorescent lamps) dan backlight LED (Light-emitting diodes).
LCD atau Liquid Crystal Display pada dasarnya terdiri dari dua bagian utama yaitu bagian Backlight (Lampu Latar Belakang) dan bagian Liquid Crystal (Kristal Cair). Seperti yang disebutkan sebelumnya, LCD tidak memancarkan pencahayaan apapun, LCD hanya merefleksikan dan mentransmisikan cahaya yang melewatinya. Oleh karena itu, LCD memerlukan Backlight atau Cahaya latar belakang untuk sumber cahayanya. Cahaya Backlight tersebut pada umumnya adalah berwarna putih. Sedangkan Kristal Cair (Liquid Crystal) sendiri adalah cairan organik yang berada diantara dua lembar kaca yang memiliki permukaan transparan yang konduktif.
Bagian-bagian LCD atau Liquid Crystal Display diantaranya adalah:
Lapisan Terpolarisasi 1 (Polarizing Film 1)
Elektroda Positif (Positive Electrode)
Lapisan Kristal Cair (Liquid Cristal Layer)
Elektroda Negatif (Negative Electrode)
Lapisan Terpolarisasi 2 (Polarizing film 2)
Backlight atau Cermin (Backlight or Mirror)
Dibawah ini adalah struktur dasar sebuah LCD:
LCD yang digunakan pada Kalkulator dan Jam Tangan digital pada umumnya menggunakan Cermin untuk memantulkan cahaya alami agar dapat menghasilkan digit yang terlihat di layar. Sedangkan LCD yang lebih modern dan berkekuatan tinggi seperti TV, Laptop dan Ponsel Pintar menggunakan lampu Backlight (Lampu Latar Belakang) untuk menerangi piksel kristal cair. Lampu Backlight tersebut pada umumnya berbentuk persegi panjang atau strip lampu Flourescent atau Light Emitting Diode (LED). Cahaya putih adalah cahaya terdiri dari ratusan cahaya warna yang berbeda. Ratusan warna cahaya tersebut akan terlihat apabila cahaya putih mengalami refleksi atau perubahan arah sinar. Artinya, jika beda sudut refleksi maka berbeda pula warna cahaya yang dihasilkan.
Backlight LCD yang berwarna putih akan memberikan pencahayaan pada Kristal Cair atau Liquid Crystal. Kristal cair tersebut akan menyaring backlight yang diterimanya dan merefleksikannya sesuai dengan sudut yang diinginkan sehingga menghasilkan warna yang dibutuhkan. Sudut Kristal Cair akan berubah apabila diberikan tegangan dengan nilai tertentu. Karena dengan perubahan sudut dan penyaringan cahaya backlight pada kristal cair tersebut, cahaya backlight yang sebelumnya adalah berwarna putih dapat berubah menjadi berbagai warna.
Jika ingin menghasilkan warna putih, maka kristal cair akan dibuka selebar-lebarnya sehingga cahaya backlight yang berwarna putih dapat ditampilkan sepenuhnya. Sebaliknya, apabila ingin menampilkan warna hitam, maka kristal cair harus ditutup serapat-rapatnya sehingga tidak adalah cahaya backlight yang dapat menembus. Dan apabila menginginkan warna lainnya, maka diperlukan pengaturan sudut refleksi kristal cair yang bersangkutan.
Register LCD
LCD 16x2 memiliki dua register seperti register data dan register perintah. RS (register select) atau pilihan daftar terutama digunakan untuk mengubah dari satu register ke register lainnya. Ketika set register adalah '0', maka itu dikenal sebagai register perintah. Demikian pula, ketika set register adalah '1', maka itu dikenal sebagai register data.
Command Register
Fungsi utama dari register perintah adalah untuk menyimpan instruksi perintah yang diberikan ke layar. Di sini pemrosesan perintah dapat terjadi dalam register.
Data Register
Fungsi utama daftar data adalah untuk menyimpan informasi yang akan ditampilkan di layar LCD. Di sini, nilai karakter ASCII adalah informasi yang akan ditampilkan di layar LCD. Setiap kali kita mengirim informasi ke LCD, ia mengirimkan ke daftar data, dan kemudian proses akan mulai di sana. Saat daftar diatur = 1, maka daftar data akan dipilih.
- Teori STM32F103C8
STM32F103C8 adalah salah satu mikrokontroler berbasis ARM Cortex-M3 yang diproduksi oleh STMicroelectronics. Mikrokontroler ini banyak digunakan dalam aplikasi embedded system karena memiliki performa yang baik, konsumsi daya rendah, serta fitur yang cukup lengkap. Berikut adalah beberapa fitur utama STM32F103C8:
-
Arsitektur ARM Cortex-M3
-
Menggunakan prosesor ARM 32-bit dengan performa tinggi.
-
Mendukung operasi matematika dan kontrol dengan efisiensi tinggi.
-
Fitur Memori
-
Flash memory sebesar 64 KB atau 128 KB untuk menyimpan program.
-
RAM sebesar 20 KB.
-
GPIO (General Purpose Input Output)
-
Memiliki hingga 37 pin GPIO yang dapat dikonfigurasi untuk berbagai keperluan, seperti PWM, ADC, dan komunikasi serial.
-
Fitur ADC dan PWM
-
ADC (Analog-to-Digital Converter) 12-bit dengan 16 saluran.
-
Kemampuan menghasilkan PWM untuk kontrol motor dan aplikasi lainnya.
-
Komunikasi
-
Mendukung protokol UART, SPI, I2C, dan USB untuk komunikasi dengan perangkat lain.
-
Keunggulan STM32F103C8
-
Dukungan library HAL (Hardware Abstraction Layer) dan CMSIS (Cortex Microcontroller Software Interface Standard).
-
Cocok untuk aplikasi industri, sistem kontrol, dan otomasi.
- Raspberry Pi Pico
Raspberry Pi Pico adalah papan mikrokontroler berbasis chip RP2040 yang dirancang oleh Raspberry Pi Foundation. Papan ini populer di kalangan pengembang karena fleksibilitas, harga yang terjangkau, dan dukungan ekosistem software yang luas.
-
Chip RP2040
-
Prosesor dual-core ARM Cortex-M0+ yang bekerja hingga 133 MHz.
-
Dirancang untuk efisiensi daya dan performa optimal.
-
Fitur Memori
-
RAM sebesar 264 KB.
-
Memiliki flash memory eksternal sebesar 2 MB untuk menyimpan program.
-
GPIO
-
Dilengkapi dengan 26 pin GPIO yang mendukung PWM, ADC, dan fungsi I/O lainnya.
-
Komunikasi
-
Mendukung protokol UART, SPI, dan I2C.
-
Dapat terhubung dengan berbagai perangkat eksternal, seperti sensor, motor, dan modul komunikasi.
-
Fitur Khusus PIO (Programmable I/O)
-
Memungkinkan konfigurasi I/O secara fleksibel untuk aplikasi khusus.
-
Mendukung pengendalian perangkat keras dengan kebutuhan timing yang ketat.
-
Keunggulan Raspberry Pi Pico
-
Kompatibilitas dengan MicroPython dan C/C++.
-
Cocok untuk aplikasi IoT, edukasi, dan sistem otomatisasi sederhana.
- Motor Servo
Gambar 4. Motor Servo
Motor servo adalah sebuah perangkat atau aktuator putar (motor) yang dirancang dengan sistem kontrol umpan balik loop tertutup (servo), sehingga dapat di set-up atau di atur untuk menentukan dan memastikan posisi sudut dari poros output motor. motor servo merupakan perangkat yang terdiri dari motor DC, serangkaian gear, rangkaian kontrol dan potensiometer. Serangkaian gear yang melekat pada poros motor DC akan memperlambat putaran poros dan meningkatkan torsi motor servo, sedangkan potensiometer dengan perubahan resistansinya saat motor berputar berfungsi sebagai penentu batas posisi putaran poros motor servo.
Prinsip kerja motor servo:
Motor servo dikendalikan dengan memberikan sinyal modulasi lebar pulsa (Pulse Wide Modulation / PWM) melalui kabel kontrol. Lebar pulsa sinyal kontrol yang diberikan akan menentukan posisi sudut putaran dari poros motor servo. Sebagai contoh, lebar pulsa 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), sedangkan 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). Lebih jelasnya perhatikan gambar dibawah ini.
- LCD (16X2 I2C)
Gambar 3.3 LCD
LCD atau Liquid Crystal Display adalah suatu jenis media display (tampilan) yang menggunakan kristal cair (liquid crystal) untuk menghasilkan gambar yang terlihat. Teknologi Liquid Crystal Display (LCD) atau Penampil Kristal Cair sudah banyak digunakan pada produk-produk seperti layar Laptop, layar Ponsel, layar Kalkulator, layar Jam Digital, layar Multimeter, Monitor Komputer, Televisi, layar Game portabel, layar Thermometer Digital dan produk-produk elektronik lainnya.
Teknologi Display LCD ini memungkinkan produk-produk elektronik dibuat menjadi jauh lebih tipis jika dibanding dengan teknologi Tabung Sinar Katoda (Cathode Ray Tube atau CRT). Jika dibandingkan dengan teknologi CRT, LCD juga jauh lebih hemat dalam mengkonsumsi daya karena LCD bekerja berdasarkan prinsip pemblokiran cahaya sedangkan CRT berdasarkan prinsip pemancaran cahaya. Namun LCD membutuhkan lampu backlight (cahaya latar belakang) sebagai cahaya pendukung karena LCD sendiri tidak memancarkan cahaya. Beberapa jenis backlight yang umum digunakan untuk LCD diantaranya adalah backlight CCFL (Cold cathode fluorescent lamps) dan backlight LED (Light-emitting diodes).
LCD atau Liquid Crystal Display pada dasarnya terdiri dari dua bagian utama yaitu bagian Backlight (Lampu Latar Belakang) dan bagian Liquid Crystal (Kristal Cair). Seperti yang disebutkan sebelumnya, LCD tidak memancarkan pencahayaan apapun, LCD hanya merefleksikan dan mentransmisikan cahaya yang melewatinya. Oleh karena itu, LCD memerlukan Backlight atau Cahaya latar belakang untuk sumber cahayanya. Cahaya Backlight tersebut pada umumnya adalah berwarna putih. Sedangkan Kristal Cair (Liquid Crystal) sendiri adalah cairan organik yang berada diantara dua lembar kaca yang memiliki permukaan transparan yang konduktif.
Bagian-bagian LCD atau Liquid Crystal Display diantaranya adalah:
Lapisan Terpolarisasi 1 (Polarizing Film 1)
Elektroda Positif (Positive Electrode)
Lapisan Kristal Cair (Liquid Cristal Layer)
Elektroda Negatif (Negative Electrode)
Lapisan Terpolarisasi 2 (Polarizing film 2)
Backlight atau Cermin (Backlight or Mirror)
Dibawah ini adalah struktur dasar sebuah LCD:
LCD yang digunakan pada Kalkulator dan Jam Tangan digital pada umumnya menggunakan Cermin untuk memantulkan cahaya alami agar dapat menghasilkan digit yang terlihat di layar. Sedangkan LCD yang lebih modern dan berkekuatan tinggi seperti TV, Laptop dan Ponsel Pintar menggunakan lampu Backlight (Lampu Latar Belakang) untuk menerangi piksel kristal cair. Lampu Backlight tersebut pada umumnya berbentuk persegi panjang atau strip lampu Flourescent atau Light Emitting Diode (LED). Cahaya putih adalah cahaya terdiri dari ratusan cahaya warna yang berbeda. Ratusan warna cahaya tersebut akan terlihat apabila cahaya putih mengalami refleksi atau perubahan arah sinar. Artinya, jika beda sudut refleksi maka berbeda pula warna cahaya yang dihasilkan.
Backlight LCD yang berwarna putih akan memberikan pencahayaan pada Kristal Cair atau Liquid Crystal. Kristal cair tersebut akan menyaring backlight yang diterimanya dan merefleksikannya sesuai dengan sudut yang diinginkan sehingga menghasilkan warna yang dibutuhkan. Sudut Kristal Cair akan berubah apabila diberikan tegangan dengan nilai tertentu. Karena dengan perubahan sudut dan penyaringan cahaya backlight pada kristal cair tersebut, cahaya backlight yang sebelumnya adalah berwarna putih dapat berubah menjadi berbagai warna.
Jika ingin menghasilkan warna putih, maka kristal cair akan dibuka selebar-lebarnya sehingga cahaya backlight yang berwarna putih dapat ditampilkan sepenuhnya. Sebaliknya, apabila ingin menampilkan warna hitam, maka kristal cair harus ditutup serapat-rapatnya sehingga tidak adalah cahaya backlight yang dapat menembus. Dan apabila menginginkan warna lainnya, maka diperlukan pengaturan sudut refleksi kristal cair yang bersangkutan.
Register LCD
LCD 16x2 memiliki dua register seperti register data dan register perintah. RS (register select) atau pilihan daftar terutama digunakan untuk mengubah dari satu register ke register lainnya. Ketika set register adalah '0', maka itu dikenal sebagai register perintah. Demikian pula, ketika set register adalah '1', maka itu dikenal sebagai register data.
Command Register
Fungsi utama dari register perintah adalah untuk menyimpan instruksi perintah yang diberikan ke layar. Di sini pemrosesan perintah dapat terjadi dalam register.
Data Register
Fungsi utama daftar data adalah untuk menyimpan informasi yang akan ditampilkan di layar LCD. Di sini, nilai karakter ASCII adalah informasi yang akan ditampilkan di layar LCD. Setiap kali kita mengirim informasi ke LCD, ia mengirimkan ke daftar data, dan kemudian proses akan mulai di sana. Saat daftar diatur = 1, maka daftar data akan dipilih.
LCD atau Liquid Crystal Display adalah suatu jenis media display (tampilan) yang menggunakan kristal cair (liquid crystal) untuk menghasilkan gambar yang terlihat. Teknologi Liquid Crystal Display (LCD) atau Penampil Kristal Cair sudah banyak digunakan pada produk-produk seperti layar Laptop, layar Ponsel, layar Kalkulator, layar Jam Digital, layar Multimeter, Monitor Komputer, Televisi, layar Game portabel, layar Thermometer Digital dan produk-produk elektronik lainnya.
Teknologi Display LCD ini memungkinkan produk-produk elektronik dibuat menjadi jauh lebih tipis jika dibanding dengan teknologi Tabung Sinar Katoda (Cathode Ray Tube atau CRT). Jika dibandingkan dengan teknologi CRT, LCD juga jauh lebih hemat dalam mengkonsumsi daya karena LCD bekerja berdasarkan prinsip pemblokiran cahaya sedangkan CRT berdasarkan prinsip pemancaran cahaya. Namun LCD membutuhkan lampu backlight (cahaya latar belakang) sebagai cahaya pendukung karena LCD sendiri tidak memancarkan cahaya. Beberapa jenis backlight yang umum digunakan untuk LCD diantaranya adalah backlight CCFL (Cold cathode fluorescent lamps) dan backlight LED (Light-emitting diodes).
LCD atau Liquid Crystal Display pada dasarnya terdiri dari dua bagian utama yaitu bagian Backlight (Lampu Latar Belakang) dan bagian Liquid Crystal (Kristal Cair). Seperti yang disebutkan sebelumnya, LCD tidak memancarkan pencahayaan apapun, LCD hanya merefleksikan dan mentransmisikan cahaya yang melewatinya. Oleh karena itu, LCD memerlukan Backlight atau Cahaya latar belakang untuk sumber cahayanya. Cahaya Backlight tersebut pada umumnya adalah berwarna putih. Sedangkan Kristal Cair (Liquid Crystal) sendiri adalah cairan organik yang berada diantara dua lembar kaca yang memiliki permukaan transparan yang konduktif.
Bagian-bagian LCD atau Liquid Crystal Display diantaranya adalah:
Lapisan Terpolarisasi 1 (Polarizing Film 1)
Elektroda Positif (Positive Electrode)
Lapisan Kristal Cair (Liquid Cristal Layer)
Elektroda Negatif (Negative Electrode)
Lapisan Terpolarisasi 2 (Polarizing film 2)
Backlight atau Cermin (Backlight or Mirror)
Dibawah ini adalah struktur dasar sebuah LCD:
LCD yang digunakan pada Kalkulator dan Jam Tangan digital pada umumnya menggunakan Cermin untuk memantulkan cahaya alami agar dapat menghasilkan digit yang terlihat di layar. Sedangkan LCD yang lebih modern dan berkekuatan tinggi seperti TV, Laptop dan Ponsel Pintar menggunakan lampu Backlight (Lampu Latar Belakang) untuk menerangi piksel kristal cair. Lampu Backlight tersebut pada umumnya berbentuk persegi panjang atau strip lampu Flourescent atau Light Emitting Diode (LED). Cahaya putih adalah cahaya terdiri dari ratusan cahaya warna yang berbeda. Ratusan warna cahaya tersebut akan terlihat apabila cahaya putih mengalami refleksi atau perubahan arah sinar. Artinya, jika beda sudut refleksi maka berbeda pula warna cahaya yang dihasilkan.
Backlight LCD yang berwarna putih akan memberikan pencahayaan pada Kristal Cair atau Liquid Crystal. Kristal cair tersebut akan menyaring backlight yang diterimanya dan merefleksikannya sesuai dengan sudut yang diinginkan sehingga menghasilkan warna yang dibutuhkan. Sudut Kristal Cair akan berubah apabila diberikan tegangan dengan nilai tertentu. Karena dengan perubahan sudut dan penyaringan cahaya backlight pada kristal cair tersebut, cahaya backlight yang sebelumnya adalah berwarna putih dapat berubah menjadi berbagai warna.
Jika ingin menghasilkan warna putih, maka kristal cair akan dibuka selebar-lebarnya sehingga cahaya backlight yang berwarna putih dapat ditampilkan sepenuhnya. Sebaliknya, apabila ingin menampilkan warna hitam, maka kristal cair harus ditutup serapat-rapatnya sehingga tidak adalah cahaya backlight yang dapat menembus. Dan apabila menginginkan warna lainnya, maka diperlukan pengaturan sudut refleksi kristal cair yang bersangkutan.
Register LCD
LCD 16x2 memiliki dua register seperti register data dan register perintah. RS (register select) atau pilihan daftar terutama digunakan untuk mengubah dari satu register ke register lainnya. Ketika set register adalah '0', maka itu dikenal sebagai register perintah. Demikian pula, ketika set register adalah '1', maka itu dikenal sebagai register data.
Command Register
Fungsi utama dari register perintah adalah untuk menyimpan instruksi perintah yang diberikan ke layar. Di sini pemrosesan perintah dapat terjadi dalam register.
Data Register
Fungsi utama daftar data adalah untuk menyimpan informasi yang akan ditampilkan di layar LCD. Di sini, nilai karakter ASCII adalah informasi yang akan ditampilkan di layar LCD. Setiap kali kita mengirim informasi ke LCD, ia mengirimkan ke daftar data, dan kemudian proses akan mulai di sana. Saat daftar diatur = 1, maka daftar data akan dipilih.
- Teori STM32F103C8
STM32F103C8 adalah salah satu mikrokontroler berbasis ARM Cortex-M3 yang diproduksi oleh STMicroelectronics. Mikrokontroler ini banyak digunakan dalam aplikasi embedded system karena memiliki performa yang baik, konsumsi daya rendah, serta fitur yang cukup lengkap. Berikut adalah beberapa fitur utama STM32F103C8:
-
Arsitektur ARM Cortex-M3
-
Menggunakan prosesor ARM 32-bit dengan performa tinggi.
-
Mendukung operasi matematika dan kontrol dengan efisiensi tinggi.
-
-
Fitur Memori
-
Flash memory sebesar 64 KB atau 128 KB untuk menyimpan program.
-
RAM sebesar 20 KB.
-
-
GPIO (General Purpose Input Output)
-
Memiliki hingga 37 pin GPIO yang dapat dikonfigurasi untuk berbagai keperluan, seperti PWM, ADC, dan komunikasi serial.
-
-
Fitur ADC dan PWM
-
ADC (Analog-to-Digital Converter) 12-bit dengan 16 saluran.
-
Kemampuan menghasilkan PWM untuk kontrol motor dan aplikasi lainnya.
-
-
Komunikasi
-
Mendukung protokol UART, SPI, I2C, dan USB untuk komunikasi dengan perangkat lain.
-
-
Keunggulan STM32F103C8
-
Dukungan library HAL (Hardware Abstraction Layer) dan CMSIS (Cortex Microcontroller Software Interface Standard).
-
Cocok untuk aplikasi industri, sistem kontrol, dan otomasi.
-
- Raspberry Pi Pico
Raspberry Pi Pico adalah papan mikrokontroler berbasis chip RP2040 yang dirancang oleh Raspberry Pi Foundation. Papan ini populer di kalangan pengembang karena fleksibilitas, harga yang terjangkau, dan dukungan ekosistem software yang luas.
-
Chip RP2040
-
Prosesor dual-core ARM Cortex-M0+ yang bekerja hingga 133 MHz.
-
Dirancang untuk efisiensi daya dan performa optimal.
-
-
Fitur Memori
-
RAM sebesar 264 KB.
-
Memiliki flash memory eksternal sebesar 2 MB untuk menyimpan program.
-
-
GPIO
-
Dilengkapi dengan 26 pin GPIO yang mendukung PWM, ADC, dan fungsi I/O lainnya.
-
-
Komunikasi
-
Mendukung protokol UART, SPI, dan I2C.
-
Dapat terhubung dengan berbagai perangkat eksternal, seperti sensor, motor, dan modul komunikasi.
-
-
Fitur Khusus PIO (Programmable I/O)
-
Memungkinkan konfigurasi I/O secara fleksibel untuk aplikasi khusus.
-
Mendukung pengendalian perangkat keras dengan kebutuhan timing yang ketat.
-
-
Keunggulan Raspberry Pi Pico
-
Kompatibilitas dengan MicroPython dan C/C++.
-
Cocok untuk aplikasi IoT, edukasi, dan sistem otomatisasi sederhana.
-
4. Langkah Langkah Percobaan dan Prinsip Kerja [Kembali]
Prinsip Kerja
Langkah-Langkah Percobaan dan Prinsip Kerja
a. Sensor Infrared (IR Sensor untuk Deteksi Jeruk Awal)
Alat dan Bahan:
Sensor IR
Raspberry Pi Pico
Resistor
Ground
Power Supply
Langkah-Langkah:
Sambungkan sensor IR ke Raspberry Pi Pico:
VCC → 3.3V
OUT → GPIO pin (misal, GP7)
GND → GND
Programkan Raspberry Pi Pico untuk membaca sinyal dari sensor IR.
Uji sensor dengan menempatkan jeruk di depan sensor untuk memastikan mendeteksi objek.
Jika objek terdeteksi, kirim sinyal ke STM32 untuk mengaktifkan Load Cell.
Alat dan Bahan:
Sensor IR
Raspberry Pi Pico
Resistor
Ground
Power Supply
Langkah-Langkah:
Sambungkan sensor IR ke Raspberry Pi Pico:
VCC → 3.3V
OUT → GPIO pin (misal, GP7)
GND → GND
Programkan Raspberry Pi Pico untuk membaca sinyal dari sensor IR.
Uji sensor dengan menempatkan jeruk di depan sensor untuk memastikan mendeteksi objek.
Jika objek terdeteksi, kirim sinyal ke STM32 untuk mengaktifkan Load Cell.
Prinsip Kerja:
Sensor IR mendeteksi keberadaan jeruk melalui pantulan sinar inframerah. Ketika jeruk terdeteksi, sensor mengirimkan sinyal ke Raspberry Pi Pico untuk melanjutkan proses ke pengukuran berat.
Sensor IR mendeteksi keberadaan jeruk melalui pantulan sinar inframerah. Ketika jeruk terdeteksi, sensor mengirimkan sinyal ke Raspberry Pi Pico untuk melanjutkan proses ke pengukuran berat.
b. Load Cell dengan HX711 (Pengukuran Berat Jeruk)
Alat dan Bahan:
Load Cell
Modul HX711
STM32
Servo (Servo 1)
Langkah-Langkah:
Sambungkan Load Cell ke modul HX711:
E+ dan E- untuk eksitasi.
A+ dan A- untuk sinyal.
Sambungkan HX711 ke STM32:
DT → GPIO (misal, A0).
SCK → GPIO (misal, A1).
VCC → 3.3V.
GND → GND.
Programkan STM32 untuk membaca berat dari Load Cell.
Hubungkan servo (Servo 1) ke STM32 (misal, A2).
Uji sistem dengan menimbang jeruk dan pastikan servo bergerak untuk memilah berdasarkan berat.
Alat dan Bahan:
Load Cell
Modul HX711
STM32
Servo (Servo 1)
Langkah-Langkah:
Sambungkan Load Cell ke modul HX711:
E+ dan E- untuk eksitasi.
A+ dan A- untuk sinyal.
Sambungkan HX711 ke STM32:
DT → GPIO (misal, A0).
SCK → GPIO (misal, A1).
VCC → 3.3V.
GND → GND.
Programkan STM32 untuk membaca berat dari Load Cell.
Hubungkan servo (Servo 1) ke STM32 (misal, A2).
Uji sistem dengan menimbang jeruk dan pastikan servo bergerak untuk memilah berdasarkan berat.
Prinsip Kerja:
Load Cell mengukur berat jeruk dan mengirimkan data ke STM32 melalui HX711. STM32 memproses data berat dan menggerakkan Servo 1 untuk memilah jeruk sesuai dengan kriteria berat.
Load Cell mengukur berat jeruk dan mengirimkan data ke STM32 melalui HX711. STM32 memproses data berat dan menggerakkan Servo 1 untuk memilah jeruk sesuai dengan kriteria berat.
c. Sensor Warna (TCS3200 untuk Deteksi Warna)
Alat dan Bahan:
Sensor TCS3200
STM32
Servo (Servo 2)
Langkah-Langkah:
Sambungkan TCS3200 ke STM32:
S0, S1, S2, S3 → GPIO (misal, A3-A6).
OUT → GPIO (misal, A7).
VCC → 3.3V.
GND → GND.
Programkan STM32 untuk membaca nilai RGB dari TCS3200.
Hubungkan servo (Servo 2) ke STM32 (misal, A8).
Uji sistem dengan mendeteksi warna jeruk dan pastikan servo bergerak untuk memilah berdasarkan warna.
Alat dan Bahan:
Sensor TCS3200
STM32
Servo (Servo 2)
Langkah-Langkah:
Sambungkan TCS3200 ke STM32:
S0, S1, S2, S3 → GPIO (misal, A3-A6).
OUT → GPIO (misal, A7).
VCC → 3.3V.
GND → GND.
Programkan STM32 untuk membaca nilai RGB dari TCS3200.
Hubungkan servo (Servo 2) ke STM32 (misal, A8).
Uji sistem dengan mendeteksi warna jeruk dan pastikan servo bergerak untuk memilah berdasarkan warna.
Prinsip Kerja:
Sensor TCS3200 mendeteksi warna jeruk dengan membaca nilai RGB. Data warna diproses oleh STM32, yang kemudian menggerakkan Servo 2 untuk memilah jeruk sesuai warna.
Sensor TCS3200 mendeteksi warna jeruk dengan membaca nilai RGB. Data warna diproses oleh STM32, yang kemudian menggerakkan Servo 2 untuk memilah jeruk sesuai warna.
d. IR Sensor Kedua (Penghitungan Jeruk)
Alat dan Bahan:
Sensor IR
Raspberry Pi Pico
LCD (16x2)
Langkah-Langkah:
Sambungkan sensor IR ke Raspberry Pi Pico untuk mendeteksi jeruk yang telah disortasi.
VCC → 3.3V.
OUT → GPIO pin (misal, GP8).
GND → GND.
Sambungkan LCD ke Raspberry Pi Pico:
SCL → GP15.
SDA → GP14.
Programkan Raspberry Pi Pico untuk menghitung jumlah jeruk yang lewat menggunakan IR sensor kedua.
Tampilkan jumlah jeruk pada LCD secara real-time.
Alat dan Bahan:
Sensor IR
Raspberry Pi Pico
LCD (16x2)
Langkah-Langkah:
Sambungkan sensor IR ke Raspberry Pi Pico untuk mendeteksi jeruk yang telah disortasi.
VCC → 3.3V.
OUT → GPIO pin (misal, GP8).
GND → GND.
Sambungkan LCD ke Raspberry Pi Pico:
SCL → GP15.
SDA → GP14.
Programkan Raspberry Pi Pico untuk menghitung jumlah jeruk yang lewat menggunakan IR sensor kedua.
Tampilkan jumlah jeruk pada LCD secara real-time.
Prinsip Kerja:
Sensor IR kedua mendeteksi jeruk yang lewat dan mengirimkan sinyal ke Raspberry Pi Pico. Data jumlah jeruk kemudian ditampilkan secara real-time pada LCD.
Sensor IR kedua mendeteksi jeruk yang lewat dan mengirimkan sinyal ke Raspberry Pi Pico. Data jumlah jeruk kemudian ditampilkan secara real-time pada LCD.
Kesimpulan
Dengan integrasi dari sensor IR, Load Cell, TCS3200, dan motor servo, sistem ini mampu:
Mendeteksi keberadaan jeruk.
Memilah jeruk berdasarkan berat dan warna.
Menghitung jumlah jeruk yang telah disortasi dan menampilkannya pada LCD.
Dengan integrasi dari sensor IR, Load Cell, TCS3200, dan motor servo, sistem ini mampu:
Mendeteksi keberadaan jeruk.
Memilah jeruk berdasarkan berat dan warna.
Menghitung jumlah jeruk yang telah disortasi dan menampilkannya pada LCD.
UART (Komunikasi Antara Raspberry Pi Pico dan STM32)
Alat dan Bahan:
Raspberry Pi Pico
STM32
Kabel jumper (untuk koneksi serial)
Ground bersama
Alat dan Bahan:
Raspberry Pi Pico
STM32
Kabel jumper (untuk koneksi serial)
Ground bersama
Langkah-Langkah Koneksi UART:
Hubungkan Pin UART:
Raspberry Pi Pico (UART TX - GP8) → STM32 (UART RX - PA10)
Raspberry Pi Pico (UART RX - GP9) → STM32 (UART TX - PA9)
Raspberry Pi Pico (GND) → STM32 (GND)
Konfigurasi UART pada Raspberry Pi Pico:
Raspberry Pi Pico bertindak sebagai pengirim data ke STM32 untuk menjalankan fungsi tertentu.
Data dikirimkan melalui TX (GP8).
Konfigurasi UART pada STM32:
STM32 membaca data dari RX (PA10) yang dikirim oleh Raspberry Pi Pico.
STM32 juga dapat mengirimkan data balik ke Raspberry Pi Pico melalui TX (PA9).
Sinkronisasi Ground:
Pastikan kedua perangkat memiliki ground yang sama agar komunikasi UART berjalan stabil.
Hubungkan Pin UART:
Raspberry Pi Pico (UART TX - GP8) → STM32 (UART RX - PA10)
Raspberry Pi Pico (UART RX - GP9) → STM32 (UART TX - PA9)
Raspberry Pi Pico (GND) → STM32 (GND)
Konfigurasi UART pada Raspberry Pi Pico:
Raspberry Pi Pico bertindak sebagai pengirim data ke STM32 untuk menjalankan fungsi tertentu.
Data dikirimkan melalui TX (GP8).
Konfigurasi UART pada STM32:
STM32 membaca data dari RX (PA10) yang dikirim oleh Raspberry Pi Pico.
STM32 juga dapat mengirimkan data balik ke Raspberry Pi Pico melalui TX (PA9).
Sinkronisasi Ground:
Pastikan kedua perangkat memiliki ground yang sama agar komunikasi UART berjalan stabil.
Prinsip Kerja UART dalam Sistem:
Proses Pengiriman Data:
Raspberry Pi Pico mengirimkan data berupa sinyal hasil deteksi IR kedua (misalnya, jumlah jeruk yang telah dihitung) ke STM32. STM32 memproses data tersebut untuk logika kontrol servo berdasarkan berat dan warna jeruk.
Proses Penerimaan Data:
STM32 mengirimkan kembali status sistem (misalnya, data hasil sortasi berat dan warna) ke Raspberry Pi Pico untuk ditampilkan pada LCD.
- Listing Program
1. UART Pi Pico
from machine import Pin, UARTimport timefrom hx711 import HX711
# UART setupuart = UART(0, baudrate=9600, tx=Pin(8), rx=Pin(9))
# HX711 setuphx = HX711(d_out=Pin(14), pd_sck=Pin(15))hx.zero() # Set nol
# Threshold berat (dalam gram)threshold = 100
# Simulasi warna dari TCS3200# (kamu bisa ganti nanti dengan deteksi warna asli)def deteksi_warna(): # return "merah", "kuning", "biru", dll return "kuning"
while True: # Deteksi berat berat = hx.read() print("Berat:", berat)
if berat > threshold: uart.write("servo1\n") # Load cell aktif print("Kirim: servo1") time.sleep(1)
# Deteksi warna warna = deteksi_warna() print("Warna:", warna)
if warna == "kuning": uart.write("servo2\n") # TCS aktif print("Kirim: servo2") time.sleep(1)
time.sleep(0.5)
2. STM32
from machine import Pin, UARTfrom hx711 import HX711 # Pastikan kamu sudah punya hx711.pyimport time
# UART setup (TX: GP8, RX: GP9)uart = UART(0, baudrate=9600, tx=Pin(8), rx=Pin(9))
# Load Cell HX711 setup (DT: GP14, SCK: GP15)hx = HX711(d_out=Pin(14), pd_sck=Pin(15))hx.tare() # Kalibrasi awal (tanpa beban)
# TCS3200: input dari pin OUTwarna_pin = Pin(16, Pin.IN)
# Fungsi deteksi warna kuningdef warna_kuning(r, g, b): return r > 250 and g > 200 and b < 200
# Fungsi dummy baca RGB (ganti dengan pembacaan real dari TCS3200 jika tersedia)def baca_rgb_dummy(): # Simulasikan hasil warna kuning return (303, 261, 159)
# Ambang berat (gram)AMBANG_BERAT = 200 # atur sesuai hasil kalibrasi
while True: # Baca warna r, g, b = baca_rgb_dummy() print("RGB:", r, g, b)
if warna_kuning(r, g, b): uart.write("servo2\n") print("Kuning terdeteksi → servo2")
# Baca berat try: berat = hx.get_units(5) print("Berat:", berat, "gram")
if berat > AMBANG_BERAT: uart.write("servo1\n") print("Berat terdeteksi → servo1") except Exception as e: print("Error HX711:", e)
time.sleep(1)
Video Menjalankan Rangkaian
Proses Pengiriman Data:
Raspberry Pi Pico mengirimkan data berupa sinyal hasil deteksi IR kedua (misalnya, jumlah jeruk yang telah dihitung) ke STM32. STM32 memproses data tersebut untuk logika kontrol servo berdasarkan berat dan warna jeruk.Proses Penerimaan Data:
STM32 mengirimkan kembali status sistem (misalnya, data hasil sortasi berat dan warna) ke Raspberry Pi Pico untuk ditampilkan pada LCD.
- Listing Program
1. UART Pi Pico
Download datasheet IR sensor [klik]
Download datasheet LDR (sensor cahaya) [klik]
Download sensor garis (IR) [klik]
Download sensor LDR [klik]
Download sensor jarak [klik]
Download Datasheet Sensor Load Cell 1 Kg klik disini
Download Datasheet Modul HX711 klik disini
Komentar
Posting Komentar