IMPLEMENTASI DAN PEMBAHASAN IV.1 Implementasi Perancangan Mekanik
IV.2 Implementasi Perancangan Elektronik
IV.3.1 Tampilan LCD Nextion
Tampilan LCD Nextion yang dibuat menggunakan aplikasi perangkat lunak Nextion Editor. Tampilan LCD Nextion terdapat menu setting time, start¸ reset, dan proses alat. Menu setting time untuk mengatur timer dalam pemrosesan jaringan.
pada menu setting time terdapat tombol up down untuk menambah atau mengurangi angka menit (waktu) pada tampilan. Selain itu pada tampilan setting time terdapat tombol yang dapat menyimpan data waktu yanga sudah diatur. Pada menu START terdapat tampilan waktu yang sudah disimpan. Dan pada tampilan proses terdapat progress bar dan suhu yang terbaca. Berikut hasil dari display LCD Nextion.
Gambar IV.14 Tampilan awal LCD Nextion
Gambar IV.15 Tampilan Set Time LCD Nextion
38 Gambar IV.16 Tampilan save LCD Nextion
Gambar IV.17 Tampilan menu START yang terdapat data yang sudah disimpan
Gambar IV.18 Tampilan proses alat LCD Nextion
39 IV.3.2 Pengaturan Pulsa pada Arduino
Setelah melakukan pengujian pada motor stepper dan driver motor akhirnya menggunakan pengaturan DIP Switch pulsa 800 karena pergerakan cepat dan halus.
Dan pada Arduino juga harus diberikan pulsa. Pada pengujian DIP Switch pulsa 800 melakukan 4 kali pengujian dengan pulsa yang berbeda dan kenaikan setiap 200 pulsa. Hasil pengujian pengaturan DIP Switch seperti berikut.
Tabel IV.3 Uji Coba Pengaturan DIP Switch pulsa 800 dan pulsa Arduino PULSA HARDWARE 800
PULSA ARDUINO UJI Jarak (mm) bergerak sejauh 14 cm dan 8 cm pada pergerakan motor. Data yang diambil adalah pulsa Arduino 1000 yang menghasilkan jarak 10 mm atau 1 cm (bergerak CW/CCW) yang ditandai warna kuning pada tabel IV.2. Untuk mendapatkan jarak
40 14000. Sedangkan motor sumbu Y dapat bergerak sejauh 8 cm membutuhkan pulsa 8000. Namun pada akhirnya motor sumbu Y menggunakan pulsa Arduino 50 untuk bergerak 8 cm karena menggunakan limit switch pada Linear Axis sumbu Y. Maka untuk mencapai jarak 8 cm, motor stepper Y akan bergerak dengan pulsa Arduino 50 dan akan berhenti jika limit switch tertekan.
int pul1 = 7;
int dir1 = 8;
int ena1 = 9;
void setup() {
// put your setup code here, to run once:
41
pinMode(pul1, OUTPUT);
pinMode(dir1, OUTPUT) pinMode(ena1, OUTPUT);
digitalWrite (ena1, LOW);
}
void loop() {
digitalWrite(dir1, HIGH);
for (int x = 0; x <14000; x++) { digitalWrite(pul1, HIGH);
delayMicroseconds(500);
digitalWrite(pul1, LOW);
delayMicroseconds(500);
}
delay(1000);
digitalWrite(dir1, LOW);
for (int x = 0; x <14000; x++) { digitalWrite(pul1, HIGH);
delayMicroseconds(500);
digitalWrite(pul1, LOW);
delayMicroseconds(500);
}
delay(1000);
}
42 IV.4 Troubleshooting
Pada saat perancangan desain hingga pembuatan alat tentu banyak mengalami permasalahan yang telah dialami, seperti berikut.
1. Motor NEMA 23 dan Driver Motor Microstep TB6600 tidak dapat bergerak.
a. Permasalahan : Motor NEMA 23 yang sudah dihubungkan dengan driver motor microstep TB6600 dan Arduino tidak dapat bergerak.
b. Analisis : Setelah dianalisis ternyata wiring dari Motor NEMA 23 ke driver motor microstep TB6600 dan wiring Motor NEMA 23 ke Arduino salah.
Kesalahan ini terjadi karena mengikuti sumber yang salah.
c. Solusi : Mengubah wiring Motor NEMA 23 ke driver motor microstep TB6600 dan wiring Motor NEMA 23 ke Arduino seperti pada gambar III.16
2. Motor NEMA 23 sumbu X gerak motor menjadi berat jika diputar manual.
a. Permasalahan : Motor NEMA 23 sumbu X jika diputar secara manual gerak motor menjadi berat.
b. Analisis : Setelah seluruh sistem dapat bekerja dengan baik, seluruh rangkaian dilepas termasuk kabel motor NEMA 23 dan akan dihubungkan ke Board PCB. Yang menyebabkan Motor NEMA 23 sumbu X geraknya menjadi berat saat diputar manual karena secara tidak sengaja kabel coil A- dan B- motor NEMA 23 saling bersentuhan dan menjadi satu.
43 c. Solusi : Melepas kabel coil A- dan B- motor NEMA 23
yang saling bersentuhan.
3. Motor sumbu Y tidak dapat berhenti jika limit switch tertekan.
a. Permasalahan : Motor sumbu Y yang bergerak sejauh 8 cm dan diberikan pulsa Arduino 8000 tidak dapat berhenti jika limit switch tertekan. Pada program seharusnya jika motor stepper sumbu Y sudah menekan limit switch Y (minimal maupun maksimal), motor akan berhenti dan melanjutkan step selanjutnya.
b. Analisis : Setelah dianalisis, Motor stepper akan berhenti jika sudah pulsa 8000 sudah terekskusi seluruhnya.
c. Solusi : Demi keamanan dan keawetan motor stepper dan limit switch sumbu Y maka ditetapkan pada motor stepper sumbu Y diberikan pulsa Arduino 50. Motor stepper akan bergerak setiap 50 pulsa dan limit switch yang tertekan akan menjalankan program dengan benar.
4. Kabel jumper yang sudah tidak bagus.
a. Permasalahan : Saat menjalankan program, program tidak berjalan dengan baik. Misal pada LCD Nextion yang terkadang dapat berjalan dengan baik namun terkadang koneksi TX RX tidak terdeteksi atau pada RTC DS1307 yang tidak dapat bekerja dengan baik sehingga program tidak dapat berjalan.
b. Analisis : Setelah dianalisis, kabel jumper dicek menggunakan multimeter. Kebanyakan kabel
44 jumper yang digunakan koneksinya sudah tidak bagus.
c. Solusi : Mengganti kabel jumper yang layak pakai.
5. Tampilan LCD Nextion, RTC DS 1307 (Timer), dan DS18B20 (sensor suhu) pada saat di wadah 4 eror (pada saat relay heater ON).
a. Permasalahan : Program yang sudah di-upload pada Arduino Mega 2560 menyatakan bahwa heater dan modul relay akan bekerja jika sampel ada di wadah ke 4. Namun setelah alat dijalankan dan sampel berada di wadah 4, tampilan LCD, timer dan sensor suhu menjadi eror. Selain itu RTC delay sekitar 5 detik setelah terjadi eror.
b. Analisis : Terdapat penurunan tegangan pada Arduino Mega 2560 karena seluruh rangkaian hanya tersambung di satu adaptor 12V.
c. Solusi : Menambah Power Supply 12V 3A khusus untuk Arduino Mega 2560.
6. Library Nextion yang berbeda.
a. Permasalahan : Alat tidak dapat berjalan padahal program sudah di-upload.
b. Analisis : Library Nextion yang digunakan tidak sesuai.
Laptop 1 menggunakan library yang berukuran 3 MB sedangkan laptop 2 menggunakan library yang berukuran 38 MB.
c. Solusi : Menggunakan library yang lebih besar pada di laptop 2.
45 7. Heater tidak dapat menyala.
a. Permasalahan : Saat menjalankan program, heater dan modul relay yang seharusnya menyala pada wadah ke 5 justru tidak menyala sama sekali.
b. Analisis : Wiring heater dan modul relay salah.
c. Solusi : Memperbaiki wiring heater dan modul relay.
8. Penggantian RTC 3231 menjadi RTC 1307.
a. Permasalahan : Pada pengujian komponen RTC 3231 dapat bekerja dengan baik namun pada saat penggabungan program RTC 3231 tidak dapat bekerja sama sekali.
b. Analisis : Library RTC 3231 yang digunakan tidak dapat digabung dengan program yang lain.
c. Solusi : Mengganti RTC 3231 menjadi RTC 1307.
9. Modul Relay tidak berfungsi dengan baik
a. Permasalahan : Pada saat di wadah ke 4, modul relay tidak bekerja yang membuat heater tidak menyala.
b. Analisis : Setelah melakukan analisis, modul relay tidak mendapatkan tegangan 5 V dari Arduino Mega 2560. Saat dicek menggunakan multimeter, Arduino Mega 2560 hanya memberikan tegangan pada modul relay 3,3 V. Maka dapat disimpulkan terdapat penurunan tegangan pada Arduino Mega 2560 karena seluruh rangkaian hanya tersambung di satu adaptor 12V.
c. Solusi : Menambah Power Supply 12V 3A khusus untuk Arduino Mega 2560.
46 10. Limit Switch tidak dapat berfungsi.
a. Permasalahan : Saat limit switch tertekan pada saat alat berproses, limit switch tidak dapat berfungsi dengan baik.
b. Analisis : Setelah melakukan analisis, wiring limit switch salah.
c. Solusi : Melakukan perbaikan pada wiring limit switch.