Arduinina – Final Project Progress

7–10 minutes

read

Part I

Di part kali ini, kita akan bahas progress dari proyek akhir Arduino ku bersama tim, Cat Feeder! Progress kali yaitu yang kita lakukan pada hari Rabu tanggal 13 April 2016. Pada hari itu kita fokus ke percobaan setiap modulnya untuk Cat Feeder.

Alat dan Bahan

Alat dan bahan yang digunakan pada percobaan kali ini simple kok. Ini bahan-bahan yang digunakan

picture11

Alat-alat yang digunakan:

  1. Gunting
  2. Lakban Hitam
  3. Cutter
  4. Solatip kertas
  5. Duplex

Alat bahan yang digunakan sebenernya kebanyakan kita udah punya. Tapi khusus motor servo, kita beli baru. Sebenernya Airen udah punya 1 biji, tapi kita butuh 2biji. Jadi beli 1 lagi. Eh ternyata…. Mahal banget coooy. Kita beli yang murahnya, 45rebu di toko Anam. Kalo harga yang aslinya, 200rebu.

What Steps should We do?

Langsung saja ya ke langkah-langkah pengerjaan. Dalam mengerjakan proyek ini, kita coba per komponen. Ya u know lah ya kita newbee mainan Arduino. Selain itu, biar paham juga cara kerja per komponen dengan Arduino tuh kaya gimana. Kalo udah oke, baru kita assemble semua komponen.

Motor Servo

Hallo kenalan dulu yuk sama komponen yang satu ini. Motor servo itu di dalemnya ada motor DC, gear untuk penggerak, dan sistem kontrol. Penampakannya seperti gambar di bawah ini ya.

servo-motor

Motor servo punya 3 penghubung ke Arduino. Biasanya, dibedakan dengan warna kabelnya, yaitu merah, cokelat/hitam, dan kuning.

Merah :Penghubung motor servo ke tegangan 5V pada board Arduino. Fungsinya untuk memberikan power untuk motor servonya

Cokelat/Hitam : Penghubung motor servo ke ground di board Arduino

Kuning : Penghubung ke pin 9 di board Arduino, fungsinya untuk memberikan Signal servo yang nantinya dikendalikan oleh program Arduino kita

Rangkaian Servo

Ini rangkaian Arduino dengan motor servo nya

rangkaian20arduino20motor20servo

Sketching

Kode yang kami gunakan bisa download disini

Kita coba untuk menggerakan satu motor servo nih untuk menggerakan penutup botol penampung makanan kucingnya. Hasilnya si motor servo bergerak 180derajat dan kembali lagi ke posisi semula.

LDR

ldr

“Seandainya… jarak tiada berarti, akan kuarungi ruang dan waktu dalam sekejap saja”
Eits jangan baper gitu dong. Wkwkwk LDR disini bukan Long Distance Relationship kayak judul lagunya Raisa yak, tapi LDR yang dimaksud disini adalah Light Dependet Resistor yaitu salah satu jenis resistor yang biasa digunakan sebagai detector cahaya atau pengukur besaran konversi cahaya.
Nah, salahnya aku dan Dewi malah beli sensor cahaya yang sudah terpasang pada sebuah PCB kecil dan trimpotnya. Mungkin sudah terprogram sesuatu, dan harganya Rp 27.000. Jauh banget sama LDR yang harganya Rp 1.500 (di toko Anam). Ya sebenernya gapapa sih. Cuman masalahnya, kita gak punya referensi yang pas untuk make sensor cahaya yang salah beli itu. Awalnya sosoan ngoprek kan, cuman ya wasting time gitu. Jadi ya kita beli LDR aja.
Kita coba pasangin rangkaian LDR dengan Arduino seperti gambar di bawah ini.

led ldr

Jadi, si LDR itu menangkap berapa intensitas cahaya yang tertangkap olehnya. LED akan menyala jika output yang dihasilan dari sensor kurang dari 10. Kode yang kami gunakan bisa di download disini

Hasilnya bisa di lihat di serial monitor seperti pada gambar di bawah ini.

hasil_ldr

RTC

27198

Sekarang kita move on yuk ke RTC. RTC (Real Time Clock) merupakan sebuah jam elektronik yang dapat menghitung waktu dari detik hingga ke tahun dengan akurat dan menyimpan data waktu tersebut secara real time. Chip RTC yang kita gunakan adalah DS1307. Kita pilih chip itu karena yang paling mudah digunakan. Baca lebih lanjut mengenai RTC. Dibawah ini adalah rangkaian yang kami gunakan.

Sebelum kita menggunakan fasilitas RTC, kita harus satur waktu RTC nya terlebih dahulu. Ini caranya.

cara set time

File setTime dapat diunduh di sini

Hasilnya, dapat dilihat di serial monitor berupa waktu komputer kita.

hasil set time

RTC juga perlu loh membaca waktu setiap saat sampai batas yang menghentikan. Nah caranya bisa dilihat di gambar.

read test RTC.png

Kode readTest bisa diunduh disini.
Hasilnya dapat dilihat di serial monitor yang akan menampilkan waktu pada setiap detiknya.

read test RT hasil

Kontrol 2 Servo

AHAYDEUH… Sekarang kita mulai coba-coba merangkai kombinasi dari beberapa komponen. Salah satunya 2 motor servo yang akan dikendalikan bersama. Kita beri nama motor servoLeft dan servoRight. Ada 5 fungsi gerakan servo yang kami coba, yaitu:

  1. forward untuk memutar servoRight 180 derajat sesuai arah jarum jam
  2. reverse memutar servoLeft 180 derajatt sesuai arah jarum jam
  3. turnRight untuk memutar servoRight dan servoLeft 180 derajat sesuai arah jarum jam
  4. turnLeft untuk memutar servoRight dan servoLeft 180 derajat berbalik arah jarum jam
  5. stopRobot untuk memutar servoRight dan servoLeft 90 derajat sesuai arah jarum jam

Rangkaiannya pada gambar di bawah ini

Kode dapat diunduh disini

Sekian progress kita kalo ini, yang memanfaatkan waktu dari pukul 13.00-16.00. Ini ada beberapa dokumentasi yang sempat kami ambil.

Semoga bermanfaat
Wassalam

Referensi:

servo : https://tutorkeren.com/artikel/tutorial-lengkap-mengontrol-motor-servo-dengan-arduino.htm
ldr : http://www.boarduino.web.id/2015/06/saklar-lampu-otomatis-dengan-sensor.html
rtc : http://www.boarduino.web.id/2016/01/membuat-jam-digital-dengan-arduino-dan.html
video 2 servo : https://youtu.be/PlTGSvBkHjo

Pada part kedua ini akan membahas progress kedua , yaitu membuat Cat Feeder case nya. Jadi, khusus kali ini kita ga akan pegang Arduino dulu. Yeay asek! (lho?)

Alat dan Bahan

Alat dan bahan yang digunakan sama kaya sebelumnya sih cuman tanpa komponen elektroniknya sih hehe.

What Steps Should We Do?

Jadi, kita hanya mengandalkan kelihaian tangan kita untuk berkreativitas membuat kerajinan tangan. Dan inilah hasilnya!

tampak depan

Detail benda:

  1. Botol bekas sebagai penampung stok makanan
  2. Duplex sebagai media distribusi makanan
  3. Tempat mie instan bekas sebagai media takaran makanan yang nantinya menumpahkan makanan ke piring kucing

Arduino dan rangkaian elektronikanya, kita simpan di balik infrabordnya.

Part III

Di part ini kita mau menjelaskan how to ESP8266 kita udah bisa send data dengan sempurna. Tapi masih manual sih. Setelah kita dengerin presentasi dari kelompok temen di kelas, kita baru ngeuh ada sesuatu yang kita skip. Langsung aja ya kita ceritakan.. Taraaat

Alat dan Bahan

tanpa potentiometer ya guyzzzz

Components
 Komponen

What Steps should we do

  1. Merangkai Circuit ESP8266 dengan Arduinonya
    Seperti pada postingan sebelumnya, rangkaiannya seperti di bawah ini
  2. Menyiapkan Access Point
    Kita mennggunakan Connectify sebagai access point nya dan akan terkoneksi dengan ESP8266 dalam jaringan lokal
    access point
  3. Mengaktifkan Apache di XAMPP sebagaiweb server di localhost
  4. Upload sketch kosong
    Kode yang digunakan adalah berupa sketch kosong seperti pada gambar di bawah ini.
kosong
 Kode Kosong

Dan pada saat membuka serial monitor, ubah tampilan “Both NL&CR” dan baudrate menjadi 115200 seperti pada gambar di bawah ini.

bith nl
 Pengaturan Both NL & CR dan baudrate menjadi 115200

Command AT+CWLAP
Dilakukan untuk melihat daftar access point yang terdeteksi

cwlap
 CWLAP Command

Command AT+CWJAP = “<nama access point>”,”<password access point>”
Meminta koneksi kepada access point yang terdapat pada list sebelumnya

cwjap
 CWJAP Command

Command AT+CIPSTART=”<Socket connection>”,”<IP address jaringan>”,<port web server>
Untuk menunggu respon koneksi dari server lokal

cipstart
 CIPSTART Command

Command AT+CIPSEND=<data-length>
Data length adalah panjang bytes syntax request. Info: agar mudah menghitung bytes nya dengan mengunakan bytes counter seperti yang ditunjukkan gambar berikut.

panjang bytes
 Panjang Bytes dan data yang akan dikirim

Jangan lupa untuk enter 2kali  untuk menggantikan \r\n yang sudah dialokasikan sebelumnya

2x enter
 Panjang bytes setelah enter 2 kali

“Send OK”. Send Ok tersebut menunjukkan bahwa ESP telah berhasil mengirimkan data ke server. Selanjutnya, menunggu respon dari Server. 400 untuk Bad Request (Request tidak dipahami). 408 Request Timeout (Kelamaan menunggu waktu respon dari server). 200 Ok (Respon baik bahwa server menerima data request dari kita).

200 0k
 200 OK

Source code untuk Tess ESP bisa diunduh disini.

Alhamdulillah akhirnya sudah bisa mengirim data menggunakan ESP8266 walaupun masih manual, belum dimasukkan ke dalam kodingan.

Part IV

Jadi progress kali ini mengenai kombinasi RTC dan motor servo, dan juga mulai membuat website.

Alat dan Bahan

Sama seperti biasa… Bisa dilihat di part sebelumnya yaa.

What sould We Do?

  • Kombinasi Motor Servo dan RTC
  • Rangkai Circuit

Untuk rangkaiannya, merupakan gabungan dari rangkaian motor servo dengan RTC seperti di bawah ini.

Sketching

Kode yang kita gunakan merupakan upgrading dari kode TimeAlarms yang ada di library. Kode bisa dicek disini.

Percobaan kali ini mengendalikan motor servo sesuai dengan yang dijadwalkan menggunakan RTC. Kita mencoba mengatur waktu awal RTC pada 15.13 di kodingannya dan kita mencoba menjadwalkan 15.15. Serial monitor akan menunjukan waktu pada setiap detiknya.

Website

Nah, kita juga udah bikin web interaksi untuk user menggunakan Cat Feeder ini. Ini tampilannya ya

Database CatFeeder

database
Database Cat Feeder

Tampilan Home

web
Tampilan Home

Mendaftar ke Sistem Cat Feeder

05
Sign Up

Pendaftaran ke Sistem Cat Feeder BERHASIL

04
Berhasil sign up

Database pengguna bertambah

06
Database Pengguna Bertambah

Source code bisa diunduh disini.

Part V

Assalamualaikum…
Sampurasuuuun

Hallo fellas!!!! Jumpa lagi di acara… Ceileh maksudnya jumpa lagi di progres tugas besar IMKA yeay!!!

Nah, kali ini ada kabar baik mengenai progress dari tanggal 24 April 206 pukul 01.00 – 05.30 a.m. Wohooo its d first time kita mengerjakan progres dini hari. Dengan alasan agar karena Airen masih punya kuota paket internet malam 27GB… Hahaha.

Progress kali ini seputar….
— Send Data ke web server menggunakan ESP8266 secara otomatis
— Send data hasil pembacaan sensor LDR ke file

Yaps so, tadi pagi kita mengerjakan bagaimana send data mengunakan ESP8266 dengan semua AT command otomatis dijalankan Arduino dengan memasukannya ke dalam kodingan. Dan setelah itu berhasil kita coba pake sensor LDR dan hasilnya dimasukkan ke dalam myFile.txt. Check it out!

Sesungguhnya… dulu itu kita sempat di PHP-in sama yang namanya “TCP/UDP Connection…” maafkan ku tak update tentang hal itu. Jadi kita pernah coba mencoba untuk send data secara otomatis, barengan sama progress 4 kemaren… Cuman, kelupaan untuk ceritain huhu So Sorry. So, waktu itu kita di php-in gitu sama serial monitor. Jadi terus aja tampilannya kayak di bawah ini.

auto_esp_1_gagal

Eh ternyata eh ternyata ada kesalahan di penempatan  TX dan RX di sketch nya kan… Nah kita sempet denger Andra presentasi kan, mereka pun sempat salah di bagian TX, RX gitu. Terus kita ganti juga deh hehe dari (RX,TX) menjadi (TX,RX). Begitu

Sudah diganti… kita mencoba upload lagi kodingannya, dan inilai hasilnya, taraaaaaaaaaaaaaaat!!!auto_esp_1_suksessauto_esp_2_suksesauto_esp_3_suksesauto_esp_4_suksesESPx1ESPx2ESPx3

That’s it cerita progress kita membuat Cat Feeder, semoga bermanfaat yaa.

Leave a comment