Sedikit Pengenalan
Halo semua, kemarin saya mendapat sebuah project dari teman saya, untuk tugas Skripsi kuliah. Disini dia mengambil sebuah kasus pada Sistem Pinghitung Produksi Pipa Baja yang diambil dari tempat dia bekerja (saya gak akan sebut nama perusahaanya ya, hehe). Alat ini akan dibuat dengan menggunakan mikrokontroler Wifi Arduino mod module yaitu NodeMCU V1.0 (bisa pakai Wemos D1 atau versi lain, yang penting mendukung library ESP8266 Arduino).
Dari sisi Sensor, saya menggunakan Sensor Ultrasonic untuk digunakan mendeteksi pipa yang berjalan di Konveyor. Mengapa memakai sensor ultrasonic mengapa tidak menggunakan sensor Proximity, ya karena pesanannya gitu hehe, jadi ngikuti ordernya. Tentunya kita bisa mengganti sensornya, dengan sensor yang lainya. misalkan Sensor Infra Red, Proximity, dll sesuaikan saja yang ada.
Kemudian terdapat Motor Servo untuk menggerakan / mengeluarkan pipa dari litasan konveyor setelah dihitung. Dalam kondisi nyata, bisa menggunakan motor dengan torsi yang besar. Karena ini masih berupa simulasi, menggunakan servo saja sudahlah cukup.
Module RTC atau Real Time Clock digunakan untuk menyimpan data jam agar tidak tereset setelah alat dimatikan. Jam disini berfungsi untuk mengetahui waktu Shift Kerja pada sistem produksi. Disini saya akan membagi jam kerja menjadi 3 shift (sesuai permintaan teman), dimana ada shift 1, 2 , dan 3. Jumlah pengiriman data akan dikirim berdasarkan shift dan tanggal, kemudian akan dijumlahkan untuk total produksi hari tersebut.
Video Youtube
Jangan lupa Subscibe: https://www.youtube.com/watch?v=-eq94b4VjEk
Desain Tampilan Webserver
Aplikasi website saya bangun menggunakan bahasa pemrograman PHP dengan menggunakan frameword CodeIgniter (biar cepet, hehe). Sedangkan tampilan desainnya saya menggunakan CSS template AdminLTE, yang dibuat dengan Bootstrap 3 (masih belum versi 4), dengan menggunakan bootstrap tampilan web sudah Responsive pada semua perangkat, termasuk diakse dengan perangkat Mobile. Berikut link demo dan user akun untuk login dashboard:
http://tryiot.online/skripsi/fredo
USER : ADMIN | PASSWORD : ADMIN
Berikut ini adalah tampilan dari aplikasi web yang saya buat:
Ilustrasi Pengiriman Data
Berikut ini ilustrasi pengiriman data alat ke server:
Alat akan menghitung produksi sesuai dengan Shift dan Tanggal, data dikirim ke server dan alat akan akan menerima umpan balik berupa data info update atau insert data, serta data update Jam terbaru sesuai dengan server, hal ini ditambahkan karena pin NodeMCU terbatas, sehingga tidak memungkinkan untuk menambahkan Tombol Settingan untuk jam.
Mungkin bagian ini yang akan membuat kalian penasaran, disini saya menggunakan metode GET untuk mengirim data ke server. Mungkin sedikit saya jelaskan terkait metode pengiriman data pada pemrograman PHP secara sederhananya (lengkapnya cari tau sendiri ya :D). Dalam pemrograman PHP, terdapat 2 metode dalam mengirim data, yaitu GET dan POST. Metode GET, pengiriman data melalui link aktif dengan format tertentu, sebagai contoh:
http://www*nama-domain*com/search.php?produk=resistor&kategori=1watt
Dari link diatas, terdapat variabel ke-1 produk yang bernilai resistor dan variable ke-2 kategori yang bernilai 1watt, nah dari data tersebut akan diproses oleh program PHP pada file search.php untuk diolah, misalkan mengambil data produk sesuai pencarian atau bisa juga seperti yang saya pakai, yaitu menyimpan data ke Database.
Sedangkan metode POST, tidak menggunakan link aktif untuk mengirim data. Melainkan semua data dikerjakan oleh server PHP dibalik layar. Sehingga tidak mudah diubah2 oleh orang lain, misal jika ada yang tau link updatenya, jika menggunakan metode GET. Umumnya metode POST digunakan untuk login web atau update data penting, karena lebih aman. Nah semoga kalian sedikit mengerti terkait metode POST dan GET, karena hampir semua pemrograman ada metode ini, walau ada metode lainnya juga, namun saya tidak akan membahasnya disini. Bagi kalian yang penasaran untuk mencoba update data dari website yang saya buat, kalian bisa coba dengan menggunakan link berikut:
http://tryiot.online/skripsi/fredo/update/production?date=2019-06-14&shift=1&value=12
Dari link diatas terdapat 3 variable, yaitu Date, Shift, dan Value. Untuk Date, bisa diisi tanggal produksi dengan format YYYY-MM-DD (2019-06-05). Variable Shift, isi data dengan angka 1, 2 dan 3. Terakhir Value, nilai terakhir dari counter produksi, isi saja terserah dengan angka, kalau gak salah bisa sampek 11 digit (10 miliyar). Pastekan link tersebut ke web browser kalian, bebas pakai apa aja asal ada internet. Gunakan login diatas sebelumnya untuk mengecek datanya diwebsite.
Jika kalian coba akses link diatas, server akan memberikan umpan bali seperiti gambar diatas. Data tersebut akan diparsing oleh mikrokontroler untuk diambil masing2 nilainya, untuk update nilai RTC / jam. Cara ini biasanya saya gunakan untuk mengambil data untuk mengontrol Relay, misal mengendalikan lampu sercara online, kalian bisa memberikan nilai 0 dan 1, dengan urutan data masing2 relay. Jika kalian penasaran pemrogramannya kalian bisa membaca artikel dibawah.
Baca juga: Project Internet of Things Wifi ESP8266 Via Website (PHP, MYSQL)
Nah mungkin itu dia sedikit penjelasan dari project ini, semoga bermanfaat idenya bagi kalian yang mau membuat project tentang IOT. Dukung terus kita dengan klik Subscribe di channel Youtube dan Like FansPage FansElectronics link sudah ada disidebar web ini. Share juga ya ke temen2 kalian agar ilmunya bermanfaat. Ok semua jangan lupa titik koma & salam elektronik :D.
Kalo boleh, minta source code tutorialnya gan buat referensi . Trimakasih
Mohon mas, maaf ini project punya orang. Tidak etis kalau saya share.. walau sebagai referensi saya dibayar untuk kerjakan itu.. kalau mas mau saya bisa bantu bikinkan.