Perancangan Bot Pada Discord Untuk Pembacaan Sensor Di Raspberry Pi Dengan Sistem Learning Yang Dinamis

  

Vol. 2, No. 10, Oktober 2018, hlm. 4202-4212 http://j-ptiik.ub.ac.id

Perancangan Bot Pada Discord Untuk Pembacaan Sensor Di Raspberry Pi

Dengan Sistem Learning Yang Dinamis

1 2 3 Rizki Septiansyah , Sabriansyah Rizqika Akbar , Rizal Maulana

  Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya 1 2 3 Email: riseptan@gmail.com, sabrian@ub.ac.id, rizal_lana@ub.ac.id

  

Abstrak

  Pada penelitian ini penulis akan merancang sebuah bot yang berjalan pada raspberry pi dan dapat digunakan untuk melakukan pembacaan sensor yang ada pada raspberry pi dengan menggunakan sistem

  

learning yang dinamis. Pada penggunaan nya bot ini berjalan pada sosial media yang bernama Discord

dan user dapat memberikan beberapa perintah pada kolom chat suatu server agar bot dapat berjalan.

  Pada implementasinya, bot ini telah dilakukan pengujian fungsional dan setiap kasus yang diuji dapat berkerja dengan semestinya dan dinyatakan berhasil. Pada pengujian akurasi, didapatkan rata-rata persensetase error dengan menggunakan sensor LM35 yaitu 0,541% dan pada sensor HY-SRF05 yaitu 3,387%. Pada pengujian waktu pemrosesan dengan menggunakan sensor LM35 memiliki rata-rata waktu eksekusi perintah learn 545,54ms, perintah cmd 8,007ms dan perintah forgot 1,07ms. Pada pengujian waktu pemrosesan dengan menggunakan sensor ultrasonik HY-SRF05 memiliki rata-rata waktu eksekusi perintah learn 661,65ms, perintah cmd 5,42ms dan perintah forgot 1,24ms. Pada pengujian waktu pemrosesan dengan menggunakan sensor LDR memiliki rata-rata waktu eksekusi perintah learn 646,20ms, perintah cmd 5,43ms, dan perintah forgot 1,31ms.

  Kata kunci: discord, kecerdasan buatan, bot, sensor, ultrasonik, suhu, intensitas cahaya.

  

Abstract

On this research, author will design a bot that will run on raspberry pi and can be used to read sensor

value on raspberry pi by using dynamic learning system.On its usage this bot will run on social media

that named Discord and user can give some commands on server chatbox so bot can running. On

implementation, this bot already been tested its function and every case that tested can work properly

and declared successful.On accuracy test, obtained average error pecentage with LM35 sensor 0.541%

and on HY-SRF05 sensor 3.387%. Average execution time test with temperature sensor LM35 on learn

command 545.54ms, cmd command 8.007ms and forgot command 1.07ms. Average execution time test

with ultrasonic sensor HY-SRF05 on learn command are 661.65ms, cmd command 5.42ms and forgot

command 1.24ms. Average execution time test with LDR sensor on learn command are 646.20ms, cmd

command 5.43ms and forgot command 1.31ms.

  Keywords: discord, artificial intelligence, bot, sensor, ultrasonic, temperature, light intensity.

  secara umum internet merupakan sebagai 1. sumber daya informasi dan bahkan internet

   PENDAHULUAN

  merupakan dunia dalam bentuk maya karena Pada era saat ini teknologi selalu banyak aspek di kehidupan nyata terdapat pada mengalami perkembangan dari waktu ke waktu. internet seperti hiburan, bisnis, politik, dan lain

  Internet merupakan suatu contoh teknologi yang sebagainya (Lani Sidharta, 1996). sangat melekat pada kebutuhan manusia saat ini

  Internet of Things (IoT) merupakan suatu

  khususnya di indonesia. Menurut survei istilah dimana internet berperan sebagai media menemukan bahwa 132,7 juta dari 256 juta untuk berbagi data, remote control, dan lain-lain. penduduk di indonesia telah terhubung ke

  IoT adalah teknologi yang memungkinkan untuk internet (Asosiasi Penyelenggara Jaringan menghubungkan peralatan, mesin, dan benda

  Internet Indonesia, 2016). Secara fisik internet fisik lain dengan sensor dan aktuator untuk merupakan interkoneksi antar jaringan dan

  Fakultas Ilmu Komputer Universitas Brawijaya

4202 memperoleh data dan mengelola kinerja secara otomatis. Cara pengendaliannya pun dapat melalui berbagai perangkat, seperti dengan menggunakan ponsel pintar maupun komputer dengan bantuan internet agar dapat dikendalikan dari mana saja dengan praktis (Jacques Bughin dan Michael Chui).

  Raspberry Pi (Raspi) adalah sebuah komputer papan tunggal yang memiliki ukuran kecil dan mudah di peroleh pada pasar. Rasberry Pi memiliki beberapa fungsi yaitu general-

  Users reactions to actions of automated programs in wikipedia

  Pada implementasi alat, hal yang dilakukan adalah menguji apakah sistem yang dibuat berjalan dengan semestinya atau tidak. Langkah yang dilakukan adalah menjalankan service bot pada raspberry pi agar berstatus online pada discord, user dapat menggunakan perintah learn,

  2.3. Implementasi Alat

  Analisis kebutuhan memiliki tujuan agar mendapatkan semua kebutuhan yang diperlukan dalam sistem pada penelitian yang akan di laksanakan. Analisis kebutuhan dilakukan dengan mengidentifikasi apa saja yang dibutuhkan dan terlibat dalam suatu sistem yang akan dibuat. Pada kebutuhan sistem akan di identifikasi apa saja yang di perlukan dalam pelaksanaannya seperti perangkat keras dan perangkat lunak. Dengan adanya analisis kebutuhan maka nantinya akan membantu dalam perancangan perangkat keras dan perangkat lunak serta implementasi alat.

  2.2. Analisis Kebutuhan

  Studi kepustakaan akan mempelajari mengenai pengertian dan penjelasan dari dasar teori yang digunakan dalam penulisan skripsi. Teori pendukung tersebut diperoleh dari jurnal, artikel, e-book, dokumentasi, ataupun buku. Teori pada penelitian ini meliputi : Discord, Python, Raspberry Pi, Sensor Ultrasonik HY- SRF05, Sensor LDR, dan Sensor LM35..

  2.1. Studi Kepustakaan

  2. METODOLOGI

  ” (Clement Maxime, Matthieu J. Guitton, 2015) melakukan penerapan bot agar dapat melakukan sesuatu secara otomatis berdasarkan dari interaksi antara user dan bot.

  ” (Akinori Abe, Moeko Hayashi, 2016) melakukan penerapan bot agar dapat melakukan komunikasi antara user dan bot pada sebuah Social Networking Service (SNS). Yang kedua berjudul “Interacting with bots online:

  purpose computing , learning to program, project platform dan product prototyping. General-purpose computing yaitu dimana Raspi

  towards IDMJ

  Penelitian ini menggunakan dua tinjauan pustaka terdahulu diantaranya yang pertama berjudul “On communication assistance via bots

  nya dapat berupa login pada website tertentu secara aman dengan menggunakan API, menampilkan orang-orang yang sedang online pada website atau forum, serta mengambil beberapa data dari website lain untuk ditampilkan pada Discord. Pada penelitian ini penulis memiliki tujuan untuk membangun sebuah Bot pada Discord yang dapat berfungsi untuk membaca nilai sensor pada Raspberry Pi dengan metode learning yang dinamis dan berdasarkan command yang digunakan untuk user. Sensor yang digunakan dalam penelitian ini adalah adalah sensor suhu LM35, sensor cahaya LDR, dan sensor ultrasonik HY-SRF05.

  platform lain. Beberapa contoh pengembangan

  Berdasarkan pada website official Discord, Discord membuka peluang developer untuk mengembangkan aplikasi pada sosial media khususnya bot. Pengembangan aplikasi pada discord sendiri bertujuan untuk memperluas integrasi layanan pada aplikasi yang dikembangkan agar dapat dipergunakan pada

  dan menjalankan nya pada Raspi. Project platform, selain dapat membangun source code dan menjalankan nya, Raspi juga dapat terintegrasi dengan project elektrik lain nya. Raspi dapat digunakan untuk membuat prototype suatu produk embedded berdasarkan operating system linux (Matt Richardson dan Shawn Wallace pada buku Getting Started With Raspberry Pi, 2016:ix). Raspberry pi dapat dimanfaatkan sebagai server untuk menjalankan task ringan seperti menjalankan bot agar dapat online di suatu sosial media sesuai dengan keinginan user. Selain itu, dengan dukungan pin pada raspberry pi memungkinkan bot agar dapat membaca suatu sensor dan informasi tentang sensor dikirimkan ke user dalam real-time.

  source code

  memiliki fungsi sama halnya seperti komputer pada umum nya, dapat digunakan untuk membuka web browser maupun aplikasi office seperti libre office. Learning to program, yaitu Raspi dapat digunakan sebagai media pembelajaran dalam pemrograman karena dapat membangun sebuah

  user dapat menggunakan perintah pembacaan sensor, user dapat menghapus perintah pembacaan sensor.

  2.4. Pengumpulan Hasil Data

  Dalam pengumpulan hasil data, data yang akan dituliskan adalah kecepatan eksekusi perintah learn, cmd dan forgot dan perbandingan keluaran nilai sensor dan keadaan nyata.

  Gambar 1. Diagram Blok Sistem 4.

  Berikut pada Gambar 1 merupakan diagram blok dari perancangan bot yang akan di implementasikan. Input pada diagram ini berasal dari user, pemrosesan berada pada discord, bot, raspberry pi, dan output berasal dari sensor LM35, Sensor HY-SRF05 dan sensor LDR.

  3.5. Diagram Blok Sistem

  , windows 8.1 sebagai operating system laptop, raspbian jessie sebagai operating system raspberry pi 3, dan library aiohttp.py serta discord.py sebagai library source code.

  sublime text 3 untuk melakukan edit source code

  Pada penelitian ini beberapa perangkat lunak yang dibutuhkan adalah PuTTY yang digunakan untuk remote rapsberry pi, nano editor untuk melakukan edit source code,

  3.4. Kebutuhan Perangkat Lunak

  Pada penelitian ini beberapa perangkat keras yang digunakan adalah Raspberry Pi 3, sensor LDR, sensor ultrasonik HY-SRF05, sensor temperatur LM35 dan satu unit laptop.

  3.3. Kebutuhan Perangkat Keras

  Dalam pemberian perintah untuk remote Raspberry Pi sebaiknya tidak melakukan spam perintah untuk menghindari error karena ketika Bot sedang menjalankan suatu perintah dan diberikan perintah lagi dapat terjadi error atau perintah yang tidak akan di abaikan. Contoh menggunakan perintah learn tidak sesuai dengan instruksi prefix yang dibutuhkan.

  3.2. Kebutuhan Non-Fungsional

  Beberapa kebutuhan fungsional yang dibutuhkan pada penelitian ini adalah bot dapat menerima perintah dari user melalui chat dan dapat membalas command sesuai pada konfigurasi perintah, bot dapat menerima input perintah dari discord untuk mempelajari pembacaan sensor, bot dapat menampilkan nilai sensor ultasonik, sensor LDR dan sensor temperatur, lalu pemberian perintah dilakukan pada discord dengan server privat, dan discord dapat digunakan sebagai cloud yang memfasilitasi bot untuk melakukan implementasi.

  Kesimpulan akan didapatkan setelah melakukan seluruh tahap dari perancangan sistem, implementasi alat, pengumpulan hasil data, dan analisis hasil data. Kesimpulan diambil berdasarkan dari hasil pengujian dan analisis yang telah dilakukan. Isi dari kesimpulan diharapkan dapat dituliskan secara jelas, singkat dan memiliki tujuan untuk acuan pada penelitian yang lain untuk mengembangkan penelitian yang berhubungan dengan penelitian ini. Selain itu, pada akhir penulisan juga terdapat saran yang ditulis secara singkat dengan tujuan memperbaiki kesalahan yang terjadi pada implementasi serta dapat menyempurnakan penulisan serta untuk memberikan suatu pertimbangan atas pengembangan pada sistem selanjutnya.

  2.6. Penarikan Kesimpulan dan Saran

  Dalam analisis hasil data, data yang dianalisa adalah perbandingan pembacaan sensor dengan keadaan nyata yang dihitung persentase error dan rata-rata dari waktu eksekusi perintah yang digunakan.

  2.5. Analisis Hasil data

3. REKAYASA KEBUTUHAN

3.1. Kebutuhan Fungsional

PERANCANGAN DAN

  Gambar 4. Perancangan ADC Converter MCP3008

  IMPLEMENTASI

  4.3.2 Perancangan Sensor Temperatur

  4.1. Gambaran Umum Sistem LM35

  Pada Gambar 2 merupakan gambaran Pada Gambar 5 merupakan perancangan umum dari sistem yang akan dibuat. dari Sensor Temperatur LM35 yang akan dihubungkan ke raspberry pi.

  Gambar 2. Gambaran Umum Sistem

  4.2. Perancangan Sistem

  perancangan sistem ini akan meliputi perancangan perangkat keras dan perancangan perangkat lunak. Perancangan perangkat lunak sistem akan meliputi bahasa pemrograman yang

  Gambar 5. Perancangan Sensor Temperatur LM35

  akan digunakan yaitu python dan menjalankan script dengan melalui PuTTY. Pada perancangan

  4.3.3 Perancangan Sensor LDR

  perangkat keras akan meliputi kebutuhan Pada Gambar 6 merupakan perancangan perangkat keras yang akan digunakan seperti dari Sensor Temperatur LM35 yang akan

  Raspberry Pi sebagai processing dan beberapa dihubungkan ke raspberry pi. sensor. Gambar 3 merupakan diagram blok dari sistem yang akan dirancang.

  Gambar 3. Alur Kerja Sistem

  4.3. Perancangan Perangkat Keras

4.3.1 Perancangan ADC Converter MCP3008

  Gambar 6. Perancangan Sensor LDR

  Pada Gambar 4 merupakan perancangan dari ADC Converter MCP3008 yang akan

  4.3.4 Perancangan Sensor Ultrasonik HY- dihubungkan ke raspberry pi. SRF05

  Pada Gambar 7 merupakan perancangan dari Sensor Ultrasonik HY-SRF05 yang akan dihubungkan ke raspberry pi.

  Gambar 7. Perancangan Sensor Ultrasonik HY- SRF05

4.4. Perancangan Perangkat Lunak

  5.1.3 Hasil dan Analisis Pengujian

  Rata-Rata Persentase Error 0,541%

  0,6% 0,51% 0,51% 0,51% 0,51% 0,61%

  0,61% 0,33% 0,61% 0,61%

  0,18 0,1 0,18 0,18 0,18 0,15 0,15 0,15 0,15 0,18

  29,68 30,0 29,68 29,68 29,68 29,35 29,35 29,35 29,35 29,68

  C) Penguk uran Bot(°C) Perbedaa n Persentase Error 29,5 30,1 29,5 29,5 29,6 29,2 29,2 29,2 29,2 29,5

  Termo meter(°

  Tabel 1. Hasil Perbandingan Pengukuran Pada Sensor Suhu LM35

  Pengujian pertama dilakukan pada sensor LM35 dengan membandingkan nilai yang ditampilkan oleh bot dan pengukuran dengan termometer pada keadaan nyata.

  Prosedur pengujian yang dilakukan untuk menguji akurasi sensor dengan keadaan nyata adalah dengan mengukur suhu menggunakan termometer dan membandingan dengan pembacaan sensor LM35, Mengukur jarak dengan penggaris dan membandingkan dengan pembacaan sensor HY-SRF05 serta mengatur intensitas dan membandingkan dengan pembacaan sensor LDR.

  Pada sistem ini perancangan perangkat lunak meliputi script bot agar dapat berjalan di discord dan dapat menerima perintah serta memproses perintah yang di inputkan oleh user dalam via chat. Perintah ini meliputi learn yang berfungsi agar bot dapat mempelajari pembacaan sensor sesuai dengan parameter yang diberikan oleh user, perintah cmd yang berfungsi sebagai menggunakan perintah yang telah dipelajari menggunakan learn untuk membaca sensor dan perintah forgot untuk menghapus perintah yang telah dipelajari sebelum nya.

  | − | 100%

  Nilai akurasi dari pembacaan sensor dibandingan dengan seberapa jauh jarak perbedaan nilai antara pengukuran di keadaan nyata dengan nilai sensor yang di tampilkan oleh bot. Rumus penghitungan nilai error yang digunakan adalah:

  5.1.2 Prosedur Pengujian

  Tujuan dari dilakukan pengujian akurasi sensor dengan keadaan nyata adalah agar bot dapat menampilkan hasil pembacaan nilai sensor pada chat dan dibandingkan dengan keadaan nyata.

  5.1.1 Tujuan Pengujian

  Pengujian akurasi sensor dengan kejadian nyata dibutuhkan untuk membandingkan antara data yang sesungguhnya dengan hasil pembacaan sensor yang di tampilkan oleh bot.

  5.1 Pengujian Akurasi Sensor Dengan Keadaan Nyata

  Gambar 8. Diagram Alir Perancangan Perangkat Lunak 5.

  Pada Gambar 8 di bawah merupakan diagram alir dari perancangan perangkat lunak:

  Beberapa perintah yang di inputkan user dalam via chat akan dibalas oleh bot dengan keluaran sesuai dengna perintah yang diberikan. Ketika perintah yang di inputkan sesuai dengan ketentuan yang diperlukan seperti prefix yang benar dan nama perintah yang benar, maka bot akan membalas dalam via chat pada channel yang sama.

PENGUJIAN DAN ANALISIS

  1

  9

  2

  3

  4 Lampu Mati Lampu Menyala Cahaya Senter Lampu Mati

  1023 598 90 1022

  5

  6

  7

  8

  10 Lampu Menyala Cahaya Senter Lampu Mati Lampu Menyala

  Cahaya Senter Lampu Menyala 606

  55 1023 586

  86 589

  Berdasarkan data yang didapatkan pada tabel 3, pada pengukuran bot ketika keadaan cahaya mati menunjukan nilai berturut-turut 1023, 1022 dan 1023, dimana nilai yang di tunjukan adalah nilai tinggi dari jarak yang dimiliki oleh nilai pengukuran dan sesuai dengan teori “jika nilai yang di tampilkan semakin tinggi maka keadaan cahaya semakin gelap”. Pada pengukuran bot ketika keadaan lampu menyala menunjukan nilai berturut-turut 598, 606, 586, dan 589 yang merupakan nilai pertengahan dari jarak yang dimiliki oleh nilai pengukuran dan sesuai dengan teori dimana nilai pertengahan adalah keadaan dengan cahaya yang cukup. Sedangkan pada keadaan sensor yang diberikan cahaya senter menunjukan nilai berturut-turut 90, 55 dan 86 yang merupakan nilai rendah dari jarak nilai yang dimiliki oleh nilai pengkuruan dan sesuai dengan teori “jika nilai yang ditampilkan semakin rendah maka keadaan cahaya semakin terang”.

  • – dimana menandakan nilai yang dibaca oleh bot lebih rendah dari pada pembacaan pada termometer.

  5.2 Pengujian Fungsionalitas

  Pengujian fungsionalitas dilakukan untuk menguji fungsi dari sisi perangkat keras sistem yaitu raspberry pi beserta sensor dan perangkat lunak yaitu bot yang berjalan pada discord. Pengujian ini dilakukan dengan menjalankan seluruh perintah yang dimiliki bot yaitu learn, cmd dan forgot.

  5.2.1 Pengujian Perangkat Keras dan Perangkat Lunak

  • – dimana menandakan nilai yang dibaca oleh bot lebih rendah dari pada pengukuran oleh penggaris.

  Pengujian perangkat keras dan perangkat lunak dilakukan dengan pengujian seluruh perintah pada bot dan melakukan pembacaan sensor suhu LM35, sensor ultrasonik HY- SRF05, dan sensor LDR. Penjelasan lebih lanjut akan dijelaskan pada subbab selanjutnya.

  5.2.2 Tujuan

  Nomor Penguji an Keadaan Cahaya Hasil Pengukuran Bot (0-1023)

  Tabel 3. Hasil Perbandingan Pengukuran Pada Sensor LDR

  3

  Berdasarkan data yang didapatkan pada tabel 1 perbedaan pengukuran antara keadaan nyata dengan pengukuran pada bot berdasarkan nilai sensor yang dibaca menunjukan 9 data perbedaan pengukuran menunjukan nilai + yang menandakan nilai yang dibaca oleh bot lebih besar dibanding pembacaan dengan termometer. Terdapat 1 data perbedaan pengukuran yang menunjukan nilai

  Pengujian kedua dilakukan pada sensor HY-SRF05 dengan membandingkan nilai yang ditampilkan oleh bot dan pengukuran dengan penggaris pada keadaan nyata.

  Tabel 2. Hasil Perbandingan Pengukuran Pada Sensor Ultrasonik HY-SRF05

  Penguk uran Pengga ris (cm) Penguk uran Bot(cm) Perbedaa n Persentase Error

  3

  3

  6

  3.5

  3

  Pengujian ketiga dilakukan pada sensor LDR dengan membandingkan nilai yang ditampilkan oleh bot dengan kondisi cahaya pada keadaan nyata.

  6

  6.5

  4

  3.5 3,19 2,93 6,37 3,49 2,90 2,94 5,89 6,58 4,22 3,44 0,69

  0,07 0,37 0,01 0,10 0,06 0,11 0,08 0,22 0,06 6,33%

  2,33% 6,16% 0,28% 3,33%

  2% 1,83% 1,23% 5,5% 1,71% Rata-Rata Persentase Error 3,07%

  Berdasarkan data yang didapatkan pada tabel 2 perbedaan pengukuran antara keadaan nyata dengan pengukuran pada bot berdasarkan nilai sensor yang dibaca menunjukan 4 data perbedaan pengukuran menunjukan nilai + yang menandakan nilai yang dibaca oleh bot lebih besar dibanding pembacaan dengan pengukuran oleh penggaris. Terdapat 6 data perbedaan pengukuran yang menunjukan nilai

  Pada penelitian ini memiliki tujuan untuk mengetahui dan menguji apakah sensor dapat dibaca oleh bot yang menggunakan sistem learning dan menampilkan nilai sensor pada chat discord.

  5.2.3 Prosedur Pengujian

  Pengujian dilakukan dengan menjalankan bot pada discord dan menjalankan beberapa perintah yang ada pada bot. Pada Gambar 9 di bawah merupakan Gambar ketika bot sudah online.

  Gambar 11. Pengujian Perintah cmd

  Selanjutnya, pada pengujian pembacaan nilai sensor yang telah di pelajari bertujuan untuk menampilkan nilai sensor yang telah dipelajari dan mengetahui apakah bot sudah benar atau belum mempelajarinya. Gambar 11 di bawah merupakan hasil dari pengujian yang dilakukan.

  Pada Gambar 10 dalam penggunaan perintah learn dibutuhkan beberapa prefix lain, prefix tersebut antara lain tanda seru (!) yang merupakan nama fungsi pada source code yang di download dan memberikan kembalian nilai suhu, tanda tanya (?) yang merupakan nama file yang akan di download dan disimpan pada raspberry pi, dan titik koma (;) yang merupakan url dari file source code yang akan di download. Jika salah satu prefix tidak terpenuhi maka bot tidak akan mempelajari perintah apapun.

  Gambar 10. Pengujian Perintah Learn

  Selanjutnya adalah melakukan pengujian dengan menjalankan perintah learn agar bot dapat menggunakan perintah untuk pembacaan nilai sensor, perintah yang akan dipelajari adalah pembacaan sensor suhu LM35, pembacaan sensor ultrasonik HY-SRF05, dan pembacaan sensor LDR. Pada Gambar 10 merupakan pengujian.

  Gambar 9. Menjalankan Program bot.py

  5.2.4 Hasil Pengujian

  1. Menyambungkan Raspberry Pi dengan sumber daya agar menyala.

  7. Mengamati hasil dari penggunaan tiap perintah dan melakukan analisis.

  6. Menjalankan perintah cmd untuk melihat apakah perintah sudah terhapus.

  5. Menjalankan perintah forgot.

  4. Menjalankan perintah cmd.

  3. Menjalankan perintah learn.

  2. Menjalankan program bot.py di Raspberry Pi melalui PuTTY agar bot dapat berjalan pada discord.

  Selanjutnya adalah pengujian dengan menggunakan perintah forgot yang memiliki tujuan agar bot dapat menghapus perintah yang telah dipelajari. Contoh dalam penggunaan karena pembacaan nilai sensor yang dilakukan oleh bot dengan perintah cmd bernilai None. perintah ini adalah dengan menuliskan “,forgot

  Pada tabel 4 di bawah menunjukan hasil ldr” untuk menghapus perintah pembacaan nilai sensor LDR. Pada Gambar 12 di bawah dari pengujian fungsionalitas: merupakan hasil dari pengujian dengan

  Tabel 4. Hasil Pengujian Fungsionalitas menggunakan perintah forgot.

  Nomor Penguji Nama Pengujian Keterangan an

  1 Menjalankan program Berhasil bot.py

  2 Menjalankan perintah learn Berhasil

  3 Menjalankan perintah cmd Berhasil

  4 Menjalankan perintah Berhasil forgot

  5 Menjalankan perintah forgot setelah perintah Berhasil dihapus

  5.2.5 Analisis Pengujian

  Berdasarkan hasil pengujian bot dengan menggunakan perintah learn, cmd dan forgot

  Gambar 12. Pengujian Perintah forgot

  didapatkan hasil bahwa fungsi dari masing- masing perintah berjalan dengan baik sesuai Setelah melakukan penghapusan perintah, dengan harapan peneliti berdasarkan dari tujuan pengujian selanjutnya adalah dengan menguji penelitian yang diharapkan. apakah perintah yang sudah dihapus benar-benar sudah tidak bisa digunakan atau belum. Jika perintah sudah terhapus, maka nilai sensor yang

  5.3 Pengujian Waktu Eksekusi Perintah

  dibaca akan ditampilkan dengan “None”. Pada Gambar 13 di bawah merupakan hasil dari

  Pengujian waktu eksekusi perintah atau pengujian penggunaan perintah pembacaan waktu komputasi dari pemprosesan sistem sensor setelah dilakukan perintah forgot. adalah untuk mengetahui waktu yang dibutuhkan oleh sistem untuk melakukan perintah yang diberikan oleh user, perintah yang akan diuiji waktu eksekusi perintahnya adalah learn, cmd dan forgot.

  5.3.1 Tujuan Pengujian

  Tujuan dari dilakukan pengujian waktu eksekusi adalah untuk mengetahui kecepatan sistem untuk melakukan komputasi suatu perintah. Selain itu mengetahui berapa waktu yang dibutuhkan untuk melakukan perintah learn, cmd dan forgot.

  5.3.2 Prosedur Pengujian Prosedur yang dilakukan untuk

  Gambar 13. Pengujian Perintah cmd Setelah pengujian waktu eksekusi perintah

  Menggunakan Perintah Forgot dilakukan secara terpisah sesuai dengan sensor yang digunakan. Prosedur yang akan

  Pada Gambar 13 terbukti bahwa dengan menggunakan perintah forgot maka perintah dijalankan dalam melakukan pengujian ini yang sebelum nya telah dipelajari akan terhapus mempelajari perintah

  yang pertama adalah sensor suhu LM35 dengan menggunakan perintah learn, melakukan pembacaan sensor suhu LM35 dan melakukan perintah forgot untuk menghapus perintah pembacaan sensor suhu LM35. Kedua adalah mempelajari perintah sensor ultrasonik HY-SRF05 dengan menggunakan perintah learn, melakukan pembacaan sensor ultrasonik HY-SRF05 dan melakukan perintah forgot untuk menghapus perintah pembacaan sensor ultrasonik HY- SRF05. Ketiga adalah mempelajari perintah sensor LDR dengan menggunakan perintah learn, melakukan pembacaan sensor suhu LDR dan melakukan perintah forgot untuk menghapus perintah pembacaan sensor suhu LDR.

  Pengujian pertama dilakukan pada sensor LM35 dengan menggunakan perintah learn, cmd dan forgot. Pengujian ini berguna untuk menghitung waktu eksekusi dari setiap perintah yang digunakan. Sampel data yang digunakan ada 10 kali menjalankan setiap perintah. Pada tabel 5 di bawah merupakan pengujian dari waktu eksekusi menggunakan sensor LM35.

  9

  3

  4

  5

  6

  7

  8

  10 479,58 443,56 1929,35 448,79 472,73 569,98 539,40 504,36 505,24 723,57 5,73

  1

  6,04 6,37 3,49 3,51 5,95 5,89 6,19 5,81 5,77 1,21

  1,28 1,41 1,26 1,26 1,29 1,30 1,30 0,76 1,33 Rata-Rata 661,65 5,47 1,24

  Berdasarkan hasil pengujian dengan 10 kali pengujian diatas, rata-rata waktu yang dibutuhkan untuk eksekusi perintah learn adalah 661,65ms, sedangkan rata-rata waktu yang dibutuhkan untuk eksekusi perintah cmd sebagai pembacaan sensor adalah 5,47ms dan rata-rata waktu yang dibutuhkan untuk eksekusi perintah forgot adalah 1,24ms. Pada perintah learn memiliki rata-rata yang lebih tinggi dari pada perintah cmd ataupun forgot karena perintah learn dipengaruhi oleh kecepatan internet peneliti sebab pada perintah learn dibutuhkan waktu untuk mengunggah file untuk pembacaan sensor.

  Pengujian ketiga dilakukan pada sensor LDR dengan menggunakan perintah learn, cmd dan forgot. Pengujian ini berguna untuk menghitung waktu eksekusi dari setiap perintah yang digunakan. Sampel data yang digunakan ada 10 kali menjalankan setiap perintah. Pada tabel 7 di bawah merupakan pengujian dari waktu eksekusi menggunakan sensor LDR.

  Tabel 7. Hasil Pengujian Waktu Pemrosesan Sistem Dengan Sensor LDR

  No Penguji an Waktu Eksekusi learn(ms) Waktu Eksekusi cmd(ms) Waktu Eksekusi forgot(ms) 1 479,15 6,59 1,59

  2

  No Penguji an Waktu Eksekusi learn(ms) Waktu Eksekusi cmd(ms) Waktu Eksekusi forgot(ms)

5.3.3 Hasil dan Analisis Pengujian

  6

  No Penguji an Waktu Eksekusi learn(ms) Waktu Eksekusi cmd(ms) Waktu Eksekusi forgot(ms)

  1

  2

  3

  4

  5

  Tabel 5. Hasil Pengujian Waktu Pemrosesan Sistem Dengan Sensor Suhu LM35

  Tabel 6. Hasil Pengujian Waktu Pemrosesan Sistem Dengan Sensor Suhu HY-SRF05

  8

  9

  10 451,17 737,11 485,81 632,65 465,06 459,98 492,65 463,83 726,85 540,32 4,82

  4,78 8,14 8,45 8,25 8,58 9,31 9,03 10,33 8,38 1,11

  1,13 1,18 1,16 1,17 0,71 1,18 1,18 0,70 1,22 Rata-Rata 545,54 8,007 1,07

  Berdasarkan hasil pengujian dengan 10 kali pengujian diatas, rata-rata waktu yang dibutuhkan untuk eksekusi perintah learn adalah 545,54ms, sedangkan rata-rata waktu yang dibutuhkan untuk eksekusi perintah cmd sebagai pembacaan sensor adalah 8,007ms dan rata-rata waktu yang dibutuhkan untuk eksekusi perintah forgot adalah 1,07ms. Pada perintah learn memiliki rata-rata yang lebih tinggi dari pada perintah cmd ataupun forgot karena perintah learn dipengaruhi oleh kecepatan internet peneliti sebab pada perintah learn dibutuhkan waktu untuk mengunggah file untuk pembacaan sensor.

  Pengujian kedua dilakukan pada sensor ultrasonik HY-SRF05 dengan menggunakan perintah learn, cmd dan forgot. Pengujian ini berguna untuk menghitung waktu eksekusi dari setiap perintah yang digunakan. Sampel data yang digunakan ada 10 kali menjalankan setiap perintah. Pada tabel 6 di bawah merupakan pengujian dari waktu eksekusi menggunakan sensor HY-SRF05.

  7

  2

  6,78 6,47 6,78 6,53 3,92 0,25 3,76 6,66 6,61 1,35

  6.2 Saran

  Berdasarkan hasil yang telah diteliti dalam sistem “Perancangan Bot Pada Discord Untuk Pembacaan Sensor Di Raspberry Pi Dengan Sistem Learning Yang Dinamis” sehingga peneliti memberikan beberapa saran:

  Berdasarkan hasil pengujian dengan 10 kali pengujian diatas, rata-rata waktu yang dibutuhkan untuk eksekusi perintah learn adalah 646,20ms, sedangkan rata-rata waktu yang dibutuhkan untuk eksekusi perintah cmd sebagai pembacaan sensor adalah 5,43ms dan rata-rata waktu yang dibutuhkan untuk eksekusi perintah forgot adalah 1,31ms. Pada perintah learn memiliki rata-rata yang lebih tinggi dari pada perintah cmd ataupun forgot karena perintah learn dipengaruhi oleh kecepatan internet peneliti sebab pada perintah learn dibutuhkan waktu untuk mengunggah file untuk pembacaan sensor.

  Rata-Rata 646,20 5,43 1,31

  1,37 0,78 0,79 1,38 1,42 1,42 1,44 1,62

  10 1766,33 855,50 439,47 432,53 446,86 604,91 564,01 433,51 439,78

  Pada akurasi perhitungan sensor ultrasonik HY- SRF05 terdapat rata-rata persentase error 3,387%. Pada pengujian waktu pemrosesan dengan menggunakan sensor LM35 memiliki rata-rata waktu eksekusi perintah learn 545,54ms, perintah cmd 8,007ms dan perintah forgot 1,07ms. Pada pengujian waktu pemrosesan dengan menggunakan sensor ultrasonik HY-SRF05 memiliki rata-rata waktu eksekusi perintah learn 661.65ms, perintah cmd 5,42ms dan perintah forgot 1,24ms. Pada pengujian waktu pemrosesan dengan menggunakan sensor LDR memiliki rata-rata waktu eksekusi perintah learn 646,20ms, perintah cmd 5,43ms, dan perintah forgot 1,31ms.

  9

  8

  7

  6

  5

  4

  3

6. PENUTUP

6.1 Kesimpulan

  Pada implementasinya bot yang dirancang mampu untuk melakukan beberapa perintah, diantaranya adalah perintah learn digunakan agar bot dapat mempelajari suatu pembacaan sensor berdasarkan perintah yang diberikan oleh user pada discord. Perintah cmd digunakan agar bot dapat menampilkan nilai pembacaan sensor pada Raspberry Pi, nilai di tampilkan dalam teks chat pada discord Perintah forgot digunakan agar bot dapat menghapus sebuah perintah pembacaan sensor yang telah dipelajari sehingga tidak dapat digunakan kembali sampai dipelajari kembali.

  Pada perancangannya, bot diperlukan beberapa perangkat keras diantaranya adalah Raspberry Pi, ADC Converter MCP3008, Sensor Suhu LM35, sensor ultrasonik HY-SRF05, dan sensor LDR. Pada perancangan perangkat lunak diperlukan beberapa source code diantaranya bot.py, belajar.py, tulis.py, hapus.py, perintah.py, LM35.py, LDR.py dan ultrasonik.py

  Dalam penelitian ini, bot hanya bisa mempelajari pembacaan nilai sensor dan belum dapat mempelajari aktuator, untuk penelitian selanjutnya diharapkan bot dapat mempelajari aktuator untuk memberikan sebuah keluaran pergerakan pada Raspberry Pi.

  Penambahan fitur pada bot masih memungkinkan, seperti penambahan fitur voice command yang dapat dilakukan pada voice call. Sampel suara dibutuhkan agar bot dapat mengenali perintah yang akan digunakan.

  Fitur otomatisasi untuk penampilan nilai tiap jam memungkinkan untuk monitorin secara rutin.

  Dalam penggunaan metode learn, untuk penelitian selanjutnya penulis menyarankan untuk dapat melakukan pencarian source code sensor secara otomatis dalam web.

  7. DAFTAR PUSTAKA Discord Developers Introduction. [online]

  Tersedia di: <https://discordapp.com/developers/doc s/intro> [Diakses 9 September 2017]

  Gay, Warren. 2014. Mastering the Raspberry Pi.

  New York: Apress.

  LM35 Precision Centigrade Temperature Sensors. [online] tersedia di:

  <http://www.ti.com/lit/ds/symlink/lm35

  Berdasarkan hasil yang telah diteliti dalam sistem “Perancangan Bot Pada Discord Untuk Pembacaan Sensor Di Raspberry Pi Dengan Sistem Learning Yang Dinamis” sehingga mendapatkan kesimpulan sebagai berikut:

  Pada analisis akurasi perhitungan sensor, terdapat rata-rata persentase error pada pengukuran sensor suhu LM35 adalah 0,541%.

  node for home automation. Amsterdam: Elsevier B.V.

  • – Ultra-Sonic Ranger Technical Specification [online] tersedia di: <

  Wargula, L., Krawiec, P., Adamiec, J. & Walus, K. 2017. The investigations of dynamic characteristics of a stepper motor.

  Poland : Elsevier B.V. Geeetech Wiki. 2016. Stepper Motor 5V 4-Phase 5-Wire & ULN2003 Driver Board.

  Tersedia di: <http://eeshop.unl.edu/pdf/Stepper+Dri ver.pdf> [Diakses 9 September 2017]

  Raman, Anupama C., Raj, Pethuru. 2017. The

  • – LDR [online]

  Internet of Things: Enabling Technologies, Platforms, and Use Cases. Florida: CRC Press.

  Richardson, M., Wallace, S. 2016. Getting Started with Raspberry Pi Third Edition.

  San Francisco: Media Maker. Asosiasi Penyelenggara Jasa Internet Indonesia.

  2016. Survei Internet APJII 2016. Tersedia di: <https://apjii.or.id/content/read/39/264/ Survei-Internet-APJII-2016> [Diakses

  10 September 2017] Sidharta, L. 1996. Internet: informasi bebas

  • Introduction to Python. Amsterdam: Elsevier B.V.

  hambatan, volume 1. Jakarta: Elex Media Komputindo.

  Lee, I. 2017. The Internet of Things in the Modern Business Environment.

  Hershey: IGI Global.

  MCP3004/3008 2.7V 4-Channel/8-Channel 10- Bit A/D Converters with SPI Serial Interface [online] tersedia di: <https://cdn-

  2015. Raspberry Pi as a Sensor Web

  based Biometrics Implementation on Raspberry Pi. Amsterdam: Elsevier

  B.V. Vujovic, Vladimir, dan Mirjana Maksimovic.

  tersedia di: < http://kennarar.vma.is/thor/v2011/vgr40 2/ldr.pdf> [Diakses 1 Januari 2017]

  .pdf> [Diakses 13 November 2017]

  SRF05

  https://www.robot- electronics.co.uk/htm/srf05tech.htm> [Diakses 1 Januari 2017]

  HC-SR05 / HY-SRF05 Precision Ultrasonic Sensor [online] tersedia di: <

  https://www.tindie.com/products/upgra deindustries/hc-sr05--hy-srf05- precision-ultrasonic-sensor/> [Diakses 1 Januari 2017]

  Light Dependant Resistor

  Abe, Akinori. Hayashi, Moeko. 2016. On

  Shah, Dhvani, dan Vinayak Bharadi. 2016. IoT

  Communication Assistance Via Bots Towards IDMJ. Amsterdam: Elsevier

  B.V. Clement, Maxime. Guitton, J., Matthieu. 2015.

  Interacting wtih bots online: Users reactions to actions of automated programs in Wikipedia. Amsterdam: Elsevier B.V.

  Andreas, J., Ryan, L. 2017. Chapter 2

  Norvig, Peter. 2012. Artificial Intelligence: The

  coming superintelligence . Amsterdam: Elsevier B.V.

  shop.adafruit.com/datasheets/MCP3008.p df> [Diakses 4 Januari 2018]