Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer Vol. 1, No. 11, November 2017, hlm. 1206-1213
e-ISSN: 2548-964X http://j-ptiik.ub.ac.id
Sistem Pendeteksi Kebocoran Gas LPG Menggunakan Metode Fuzzy yang Diimplementasikan dengan Real Time Operating System (RTOS) Lavanna Indanus Ramadhan1, Dahnial Syauqy2,Barlian Henryranu Prasetio3 Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email:
[email protected],
[email protected],
[email protected] Abstrak LPG merupakan bahan bakar alternatif yang digunakan masyarakat untuk keperluan sehari hari, selain harganya lebih murah, pengunaannya juga lebih mudah. Akan tetapi, LPG memiliki karakteristik yang mudah terbakar dan memiliki berat jenis yang lebih besar dari udara sehingga sulit untuk mendeteksi gas tersebut apabila terjadi kebocoran. Berdasarkan permasalahan tersebut, diperlukan sebuah sistem yang mampu mendeteksi kebocoran gas dan tingkat bahaya kebocorannya berdasarkan kadar gas dan suhu pada LPG. Pada penelitian ini terdapat 2 sensor yaitu sensor gas modul MQ-6 dan sensor suhu LM35 yang terhubung dengan mikrokontroller arduino uno dan dapat digunakan sebagai fitur untuk mengklasifikasikan kondisi gas menggunakan metode fuzzy sugeno. Output dari sistem ditampilkan menggunakan LCD dan ditandai dengan bunyi buzzer. Pada arduino uno ditanamkan RTOS yang bertugas sebagai penjadwalan task pada sistem. RTOS yang digunakan sudah disediakan pada library Arduino Uno yaitu FreeRTOS. Dari hasil pengujian, sistem dapat menentukan berbagai kondisi pada kebocoran gas dengan keakuratan mencapai 100%. Penjadwalan task yang dilakukan sesuai dengan prioritas yang dibuat. Rata-rata waktu eksekusi sistem dengan menggunakan RTOS adalah 1,8976 ms, sedangkan sistem tanpa RTOS adalah 1,7304 ms. Sistem dengan RTOS memerlukan waktu yang lebih lama, dikarenakan pada sistem terdapat fungsi take-and-give semaphore yang membutukan waktu eksekusi selama ±0,05 ms. Kata kunci: kebocoran, LPG, fuzzy sugeno, RTOS, prioritas, freeRTOS Abstract LPG is an alternative fuel that people use for daily purposes, in addition, LPG has cheaper prices and is also easier to use. However, LPG is flammable and has heavier characteristics that are bigger than air, making it difficult to detect the gas in case of leakage. Based on the problem, a system capable of detecting leakage of LPG gas and its leakage level based on gas content and temperature on LPG. In this research there are 2 sensors that are gas module MQ-6 and LM35 temperature sensor connected with arduino uno microcontroller and can be used as a feature to classify gas condition using fuzzy sugeno method. The output of the system is displayed using the LCD and marked with a buzzer sound. In arduino uno embedded RTOS that served as scheduling task on the system. The RTOS used is already provided in the Arduino Uno library ie FreeRTOS. From the test results, the system can determine the various conditions on the gas leak with accuracy reaches 100%. Scheduling tasks performed in accordance with the priorities made. The average system execution time using RTOS is 1.8976 ms, while the system without RTOS is 1,7304 ms. System with RTOS takes longer time, because in system there is take-and-give semaphore function which need execution time for ± 0,05 ms. Keywords: leaks, LPG, fuzzy, sugeno, RTOS, priority, freeRTOS
Daya Mineral No : 1971/26/MEM/2007 tanggal 22 Mei 2007, pemerintah mencanangkan konversi dari minyak bumi (minyak tanah) menjadi gas alam (LPG). Program konversi beralih menjadi gas alam ini di maksudkan untuk mengganti minyak tanah sebagai bahan
1. PENDAHULUAN LPG merupakan bahan bakar alternatif berupa gas yang menghasilkan emisi polusi lebih sedikit dibandingkan dengan bahan bakar minyak. Keputusan Menteri Energi dan Sumber Fakultas Ilmu Komputer Universitas Brawijaya
1206
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
bakar memasak di Indonesia. Hampir seluruh masyarakat di indonesia beralih menggunakan LPG, disamping harganya murah, cara penggunaanya juga lebih efektif. LPG memiliki karakteristik yang mudah terbakar dan memiliki berat jenis yang lebih besar dari udara sehingga sulit untuk mendeteksi gas tersebut apabila terjadi kebocoran, dikarenakan gas ini akan terakumulasi pada bagian bawah ruangan serta mudah terbakar dengan adanya sumber ignition. Berita kebakaran pun sering terdengar sebagai akibat tabung gas LPG meledak. Meledaknya tabung gas ini disebabkan oleh banyak factor seperti kebocoran pada selang, tabung atau pada regulatornya yang tidak terpasang dengan baik. Pada saat terjadi kebocoran akan tercium gas yang menyengat, Gas inilah yang nantinya akan meledak apabila ada sulutan atau percikan api, atau adanya nyala rokok (Widyanto & Erlansyah, 2014). Pada embedded system, sistem operasi sangat diperlukan dalam pengaturan eksekusi yang menuntut kecepatan proses. Selain dibutuhkan sistem yang merespon dengan cepat perubahan masukkan, melakukan proses multitasking, dan menjamin ketepatan hasil eksekusi, diperlukan juga sistem yang memiliki kepastian waktu selesainya sebuah pekerjaaan atau task. RTOS yang merupakan salah satu solusi yang sesuai untuk mengaplikasikannya pada embedded mikrokontroler (Jatmiko, et al., 2015). Penelitian sebelumnya yang dilakukan oleh Nicholas Pantano pada tahun 2011 hingga 2012 yang berjudul Real Time Operating System on Arduino. Penelitian ini meneliti tentang utilitas penjadwalan RTOS pada arduino uno yang didemontrasikan dengan menggunakan 3 sensor. Penelitian ini berhasil melakukan penjadwalan yang sesuai dengan penjadwalan preemptif yang diprioritaskan. Berdasarkan permasalahan yang ada akan dirancang sebuah sistem yang mampu mendeteksi kebocoran gas LPG dan tingkat bahaya kebocorannya berdasarkan kadar gas di udara dan suhu pada sekitar tabung gas dengan menggunakan metode fuzzy sugeno. Prototipe pendeteksi kebocoran gas LPG menggunakan mikrokontroler Arduino Uno yang akan diimplementasikan dengan metode fuzzy yang digunakan untuk menentukan tingkat bahaya kebocoran gas dan RTOS yang digunakan sebagai penjadwalan task.
Fakultas Ilmu Komputer, Universitas Brawijaya
1207
2. PERANCANGAN DAN IMPLEMENTASI Pada tahap perancangan terbagi menjadi dua bagian, yaitu perancangan hardware dan perancangan software.
Gambar 1. Alur Perancangan Sistem
Berdasarkan pada alur perancangan pada Gambar 1, Perancangan perangkat keras meliputi, pembuatan skema rangkaian dan desain perancangan prototipe sistem, sedangkan pada perancangan perangkat lunak meliputi, perancangan RTOS dan Perancangan proses fuzzy. Perancangan perangkat keras pada sistem dapat dilihat pada Gambar 2.
Gambar 2. Perancangan Perangkat Keras
Pada Gambar 2, sensor modul MQ-6 digunakan untuk mendeteksi konsentrasi kadar gas LPG dalam satuan ppm(part per million) sedangkan sensor LM35 digunakan untuk mendeteksi suhu sekitar dalam satuan celcius. Kedua sensor ini berperan sebagai input dari sistem. Pembacaan dari kedua sensor tersebut diproses didalam arduino uno, dimana pada arduino uno sudah terdapat program fuzzy untuk menentukan kondisi kebocoran gas LPG. Output dari sistem akan dikeluarkan melalui LCD yang berupa kondisi kebocoran dan ditandai oleh
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
1208
bunyi buzzer. Skema perancangan dari perangka keras dapat dilihat pada Gambar 3.
Gambar 4. Perancangan prototipe perangkat keras
Gambar 3. Skema perancangan perangkat keras
Skema perancangan perangkat keras secara keseluruhan dapat dlihat pada gambar 3, dimana pada gambar tersebut seluruh komponen digabung menjadi satu sistem yang saling bekerja sama untuk mencapai tujuan yang sama. Perangkat keras pada sistem ini antara lain, Arduino Uno, sensor LM35, sensor MQ-6, buzzer, LCD, potensiometer dan breadboard. Arduino Uno bertugas sebagai pusat pengkontrol kerja perangkat lain dan pusat pemprosesan data pada sistem. Koneksi pin Gambar 3 diatas ditunjukan pada Tabel 1 berikut.
Setelah perancangan pada perankat keras, langkah selanjutnya adalah perancangan perangkat lunak yang meliputi perancangan RTOS dan fuzzy. Pada proses perancangan RTOS terdiri dari beberapa tahapan yaitu menentukan berapa task yang akan dibuat, menentukan tugas tiap task, mentukan priority tiap task, dan mengatur delay tiap tasknya. Prioritas dengan nilai terbesar akan dieksekusi terlebih dahulu. Diagram alir perancangan RTOS dapat dilihat pada Gambar 5.
Tabel 1. Koneksi pin perancangan perangkat keras
Gambar 5. Diagram alir perancangan RTOS
Seperti Gambar 5, sistem akan dibagi menjadi 4 task dimana tiap task memiliki tugasnya masing-masing tiap tasknya menggunakan sumber yang sama yaitu semaphore. Dengan penggunaan semaphore tiap task akan memakai sumber daya secara bergantian agar dapat berjalan secara konkuren. Untuk pembagian tugas dan prioritasnya lebih jelasnya dapat dilihat pada Tabel 2. Untuk desain prototipe perangkat keras dibuat wadah seperti pada Gambar 4, dimana sensor modul MQ-6 dan sensor LM35 di posisi depan. Peletakan tersebut agar sensor dapat mendeteksi kadar gas dan suhu yang ada didepannya. Untuk LCD juga diletakan di posisi depan untuk mempermudah melihat output yang di tampilkan. Fakultas Ilmu Komputer, Universitas Brawijaya
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Tabel 2. Pembagian tugas dan prioritas pada task
Pada proses perancangan kontrol fuzzy terdiri dari beberapa sub-proses yaitu, proses fuzzifikasi, proses inferensi dan proses defuzzifikasi, Masing-masing sub-proses pada kontrol fuzzy memiliki fungsi yang saling terkait. Setiap sub-proses tersebut akan memproses input dan menghasilkan output. Output yang dihasilkan satu sub-proses akan digunakan sebagai input untuk sub-proses berikutnya sampai menghasilkan output akhir. Flowchart perancangan kontrol fuzzy dapat dilihat pada Gambar 6.
1209
Tinggi. Setiap data input akan di cek nilai keanggotaan untuk menentukan golongan input. Perancangan himpunan fuzzy kadar gas dapat dilihat pada Gambar 7.
Gambar 7. Fungsi keanggotaan kadar gas
Untuk data suhu digolongkan menjadi 3 kriteria yaitu Normal, Hangat dan Panas. Perancangan himpunan fuzzy kadar gas dapat dilihat pada Gambar 8 berikut
Gambar 8. Fungsi keanggotaan suhu
Gambar 6. Flowchart perancangan fuzzy
Pada Gambar 6 diatas, sub-sistem fuzzifikasi akan memproses data input yang didapat ketika melakukan sensing. Data tersebut berupa nilai tegas atau crisp. Sub-proses fuzzifikasi akan merubah nilai tegas yang ada kedalam fungsi keanggotaan atau derajat membership. Sistem yang dibangun memiliki dua jenis input berupa data kadar gas dan suhu di sekitar tabung LPG. Pada data kadar gas digolongkan menjadi 3 kriteria, yaitu Rendah, Medium, Fakultas Ilmu Komputer, Universitas Brawijaya
Setelah proses fuzzifikasi selesai dilanjutkan dengan proses inferensi. Inferensi adalah proses penggabungan banyak aturan berdasarkan data yang tersedia. Dari uraian di atas, telah terbentuk 6 himpunan fuzzy sebagai input, yaitu: kadar rendah, kadar medium, kadar tinggi, suhu normal, suhu hangat, dan suhu pasenas, ditambah dengan 4 himpunan kondisi sebagai output, yaitu : kondisi normal, kondisi siaga, kondisi waspada, dan kondisi bahaya. Pada aturan fuzzy ini akan memberikan aturan-aturan dalam fuzzy sistem yang akan dibuat dengan menggunakan perintah “IF” dan “AND” dan menghasikan perintah “THEN”. Aturan dasar fuzzy yang digunakan untuk menentukan kondisi kebocoran gas di udara dapat dilihat pada Tabel 3.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Tabel 3. Aturan yang terbentuk pada inferensi fuzzy
Berdasarkan sembilan aturan fuzzy tersebut, akan ditentukan nilai α untuk masingmasing aturan. α adalah nilai keanggotaan anteseden dari setiap aturan. Berikut ini adalah langkah-langkah untuk untuk mengkonversi sembilan aturan fuzzy tersebut sehingga diperoleh nilai α dari setiap aturan. Aturan yang digunakan adalah aturan MIN pada fungsi implikasinya. Setelah diketahui nilai α pada masing masing aturan, Menurut metode MIN-MAX selanjutnya tiap variabel kondisi akan mengevaluasi masing-masing rule yang terkait dengan kondisi tersebut untuk dicari nilai terbesarnya (MAX), seperti: Variabel kondisi normal yang terdiri dari rule0 dan rule1, maka tidak perlu dicari nilai terbesarnya, sehingga dapat dituliskan : Normal = max (rule0 , rule1) Variabel kondisi Siaga yang terdiri dari rule1, rule3, dan rule4, sehingga dapat dituliskan : Siaga = max ( rule2, rule3) Variabel kondisi waspada yang terdiri dari rule2, rule5, rule6, dan rule 7, sehingga dapat dituliskan : Waspada = max(rule2, rule5, rule6, rule7) Variabe kondisi bahaya yang hanya terdiri dari rule8 saja maka tidak perlu dicari nilai terbesarnya, sehingga dapat dituliskan : Bahaya = rule8 Setelah nilai setiap variabel kondisi diketahui selanjutnya, nilai dari masing masing kondisi dibandingkan untuk mencari nilai terbesar. Hasil dari perbandingan ini yang nantinya menjadi output dari sistem.
Defuzzifikasi = max (normal, siaga, waspada, bahaya)
Setelah tahap perancangan selanjutnya tahap implementai. Implementasi dilakukan Fakultas Ilmu Komputer, Universitas Brawijaya
1210
sesuai dengan perancangan yang sudah dilakukan sebelumnya. Implementasi pada perangkat keras dapat dilihat pada Gambar 9.
Gambar 9. Implementasi perangkat keras
3. PENGUJIAN Terdapat 4 pengujian dalam sistem ini, yaitu pengujian akusisi data yang terdiri dari pembacaan sensor MQ-6 dan LM35, pengujian fuzzifikasi, pengujian RTOS, dan pengujian perbedaan sistem yang menggunakan RTOS dengan sistem tanpa menggunakan RTOS. Hal tersebut ditunjukan pada Gambar 10.
Gambar 10. Pohon pengujian dan analisis
Pada pengujian pertama, dilakukan pengujian akusisi data pada sensor modul MQ-6 dalam mendeteksi kadar ppm pada gas LPG. Pembacaan gas tersebut dilakukan dengan cara menekan tombol gas pada kompor. Output dari pembacaan sensor dilihat melalui serial monitor pada Arduino IDE. Berdasarkan pengujian yang dilakukan, maka didaptkan hasil pembacaan sensor seperti pada Tabel 4 berikut
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Tabel 4. Hasil pengujian sensor modul MQ-6 Nilai Pembacaan Sensor Kondisi (ppm) 0 Belum ditekan 0 6 271 1565
Tombol gas di tekan
3939 7265 5942 688 25
tombol gas di lepas 0
Pada pengujian kedua, dilakukan pengujian akusisi data pada sensor LM35. Tujuan dari pengujian ini adalah mengetahui sistem error dari sensor jika dibandingkan dengan alat termometer digital. Pembacaan suhu tersebut dilakukan dengan cara memberikan uap air hangat untuk meningkatkan pembacaan suhu. Output dari pembacaan sensor dilihat melalui serial monitor pada Arduino IDE. Berdasarkan pengujian yang dilakukan, maka didapatkan hasil pembacaan sensor seperti pada Tabel 5 berikut. Tabel 5. Error rate pada sensor LM35 Waktu Sensor Termometer Error (detik) LM35(oC) (oC) %
1211
dengan alat termometer berbeda, namun perbedaan tersebut tidak terlalu jauh. Hal ini dapat diketahui dari rata-rata sistem error yang terhitung pada sensor LM35 mencapai 3,22 %. Jika dilihat pada pola pembacaan dari sensor LM35 dengan pembacaan termometer didapatkan hasil yang tidak stabil. Pada detik awal pembacaan termometer lebih tinggi dibandingkan pembacaan sensor LM35. Namun, setelah beberapa detik pembacaan sensor LM35 lebih besar dibandingkan termometer. Hal ini dapat diakibatkan oleh proses kalibrasi yang kurang baik. Pada pengujian ketiga, dilakukan pengujian program fuzzy pada sistem dalam menentukan kondisi kebocoran gas LPG. Tujuan dari pengujian ini adalah untuk mengetahui metode fuzzy yang diterapkan pada sistem sesuai dengan perancangan. Output dari sistem dilihat melalui serial monitor pada Arduino IDE. Berdasarkan pengujian yang dilakukan, maka didapatkan hasil pembacaan sensor seperti pada Tabel 6 berikut. Tabel 6. Hasil pengujian proses fuzzifikasi Pembacaan Pembacaan Output Sensor Gas Sensor Kondisi Sistem MQ-6 suhu LM35 339 27 0,6 Normal 327 26 0,8 Normal 388 28 0,56 Siaga 895 28 0,6 Waspada 714 28 0,6 Siaga 1185 35 1 Berbahaya
Berdasarkan pengujian tersebut, dapat dianalisis bahwa rumus fuzzy yang digunakan untuk menentukan kondisi kebocoran gas LPG pada sistem benar dan tepat. Hal ini dapat dilihat dari 6 percobaan dengan input yang berbeda pada tabel memberikan output sistem yang sesuai dengan perancangan. Hal tersebut ditunjukan pada analisi hasil pengujian di Tabel 7.
1
28.8
29.8
3,35 %
3
29.8
30.4
1,97 %
5
30.2
31.2
3,20 %
7
34.7
33.1
4,83 %
9
37.6
35.0
7,42 %
11
39.1
37.7
3,71 %
13
41.0
39.8
3,02 %
15
42.5
41.4
2,66 %
Tabel 7. Analisis tingkat keakuratan fuzzy 6 Nilai fuzzifikasi Sesuai
17
42.9
42.7
0,47 %
Nilai fuzzifikasi tidak sesuai
0
20
43.9
43.2
1,62 %
Tingkat keakuratan perhitungan
100 %
Rata- Rata
3,22 %
Berdasarkan Tabel 6.2 diketahui bahwa hasil perbandingan pengukuran sensor LM35 Fakultas Ilmu Komputer, Universitas Brawijaya
Pada pengujian keempat, terdiri dari 2 subpengujian, yaitu pengujian prioritas dan pengujian waktu eksekusi task pada RTOS.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Untuk sub-pengujian yang pertama, dilakukan pengujian prioritas dengan cara mengamati urutan eksekusi task pada sistem. Sebelumnya pada tiap task sudah diberikan penanda berupa serial.println() sehingga data bisa diamati pada serial monitor pada Arduino IDE. Berdasarkan pengujian yang dilakukan, maka didapatkan hasil seperti pada Gambar 11 berikut.
1212
Tabel 8. Hasil pengujian waktu eksekusi task Task
Waktu eksekusi (ms)
Task Gas
± 1,4
Tidak Melebihi Deadline
Task Suhu
± 0,2
Tidak Melebihi Deadline
Task Inferensi
± 0,07
Tidak Melebihi Deadline
Task Defuzzy
± 0,05
Tidak Melebihi Deadline
Total Waktu
± 1,9
Tidak Melebihi Deadline
Deadline (ms)
100
Gambar 11. Analisis hasil pengujian eksekusi task berdasarkan prioritas
Berdasarkan analisis Gambar 11, Task gas yang memiliki prioritas terbesar di eksekusi terlebih dahulu, hal ini dikarenakan pada task gas diberi prioritas 3 dimana, prioritas tersebut merupakan prioritas terbesar dalam sistem. Selama task 3 dieksekusi task dengan prioritas yang berada dibawahnya akan menunggu di eksekusi sampai task 3 menyelesaikan tugasnya, hal ini dikarenakan terdapat fungsi semaphore() pada sistem yang bertugas agar task tersebut tidak dapat di interrupt oleh task lain selama task tersebut masih dieksekusi. Ketika task gas selesai dieksekusi maka task suhu, task inferensi dan task defuzzifikasi akan di eksekusi sesuai urutan prioritas. Untuk sub-pengujian yang kedua, dilakukan pengujian waktu eksekusi pada tiap task dan eksekusi task secara keseluruhan. Tujuan dari pengujian ini untuk memastikan waktu eksekusi task pada sistem tidak melebihi deadline yang sudah ditentukan yaitu 100 ms. Sebelumnya pada tiap task sudah diberikan fungsi timer berupa micros() sehingga data bisa diamati pada serial monitor pada Arduino IDE. Berdasarkan pengujian yang dilakukan, maka didapatkan hasil seperti pada Tabel 8 berikut.
Hasil
Pada pengujian terakhir, dilakukan perbandingan waktu eksekusi sistem menggunakan RTOS dengan sistem tanpa menggunakan RTOS. Tujuan dari pengujian ini untuk mengetahui eksekusi program dari sistem manakah yang lebih cepat. Sebelumnya pada tiap program sistem sudah diberikan fungsi timer berupa micros() sehingga data bisa diamati pada serial monitor pada Arduino IDE. Berdasarkan pengujian yang dilakukan, maka didapatkan hasil seperti pada Tabel 9 berikut. Tabel 9. Hasil perbandingan waktu eksekusi program sistem RTOS dengan sistem tanpa RTOS Sample
Waktu eksekusi dengan RTOS (ms)
Waktu eksekusi Tanpa RTOS (ms)
1
1,900
1,720
2
1,896
1,724
3
1,896
1,740
4
1,9 00
1,724
5
1,9 00
1,728
6
1,9 00
1,740
7
1,9 08
1,724
8
1,896
1,744
9
1,896
1,732
10
1,904
1,728
Rata rata
1,8976
1,7304
Bedasarkan perbandingan rata-rata waktu eksekusi dari Tabel 9 diketehui bahwa sistem yang menggunakan RTOS memerlukan waktu eksekusi lebih lama dibandingkan sistem yang Fakultas Ilmu Komputer, Universitas Brawijaya
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
tanpa menggunakan RTOS. Hal ini dapat dilihat bahwa selisih waktu eksekusi dari sistem sekitar ± 0,167 ms. Hal ini dapat disebabkan oleh beberapa faktor salah satunya waktu perpindahan ketika semphore dilepas dari satu task dan diterima oleh task lainnya. Pada sistem ini watu perpindahan tersebut memerlukan 0,05ms. 4.
KESIMPULAN
Berdasarkan hasil pengujian yang sudah dilakukan dalam penelitian ini, maka dapat diambil beberapa kesimpulan antara lain : 1. Proses akusisi data pada MQ-6 meliputi pembacaan gas propana dan butana yang ada diudara, sedangkan pada LM35 meliputi pembacaan suhu panas yang terdeteksi di sekitar (dinyatakan dalam oC). 2. Implementasi fuzzy pada sistem meliputi 3 proses, yaitu fuzzifikasi, inferensi, dan defuzzifikasi yang digabungkan dengan task pada RTOS. Hasil dari implementasi metode fuzzy dan RTOS pada sistem sesuai dengan perancangan yang sudah dibuat. Sistem dapat menentukan berbagai kondisi dengan input yang bervariasi. 3. Penentuan prioritas dan waktu deadline pada setiap task (RTOS) berpengaruh terhadap urutan task yang akan dieksekusi. Apabila penentuan prioritas dan waktu pada task tidak seimbang maka urutan task yang dieksekusi tidak bisa diprediksi. 4. RTOS pada sistem berpengaruh pada urutan eksekusi task dan penentu deadline tiap task. Apabila task yang di eksekusi melebihi deadline yang diberikan maka sistem tidak akan berjalan. Berdasarkan hasil pengujian waktu eksekusi tiap task dan total semua task tidak melebihi deadline yang diberikan yaitu 100 ms. 5. Dari segi kecepatan waktu eksekusi sistem menggunakan RTOS memerlukan waktu lebih lama dibandingkan sistem tanpa RTOS. Waktu eksekusi sistem RTOS untuk menjalankan semua task adalah ± 1,9 ms dan waktu eksekusi sisten yang tanpa RTOS adalah 1,7 ms. Hal ini dikarenakan pada sistem RTOS terdapat kegiatan terima-lepas semaphore dari satu task ke task lainnya, dimana kegiatan memerlukan watu 0,05 ms.
Fakultas Ilmu Komputer, Universitas Brawijaya
1213
5. DAFTAR PUSTAKA Jatmiko, W., Mursanto, P., Jati, G., Purnomo, D. M., Alhamidi, M. R., Habibie, N., & Dwinto, K. (2015). RTOS Teori dan Aplikasi. Depok: Fakultas Ilmu komputer Universitas Indonesia. Pantano, N. (2011-2012). Real Time Operating System on Arduino. Widyanto, & Erlansyah, D. (2014, November 15). ALAT DETEKSI KEBOCORAN TABUNG GAS ELPIJI BERBASIS MIKROKONTROLER. Dipetik January 27, 2017, dari http://publikasi.dinus.ac.id/index.php/se mantik/article/viewFile/818/605 Kurniawan, F. R., Setiawan, I., & Sumardi. (2012). MULTITASKING PADA MIKROKONTROLER ATMEGA16 MENGGUNAKAN REAL TIME OPERATING SYSTEM (RTOS) JENIS COOPERATIVE . Semarang: Universitas Diponegoro. Kusumadewi, S. (2003). Artificial Intelligence (Teknik dan Aplikasi). Yogyakarta: Graha Ilmu. Kusumadewi, S., & Hartati, S. (2006). Neuro Fuzzy-Integrasi Sistem Fuzzy dan Jaringan Syaraf. Yogyakarta: Graha Ilmu. Kusumadewi, S., & Purnomo, H. (2004). Aplikasi Logika Fuzzy untuk Sistem Pendukung Keputusan Edisi Pertama. Yogyakarta: Graha Ilmu. Kusumadewi, S., & Purnomo, H. (2010). Aplikasi Logika Fuzzy untuk Pendukung Keputusan. Yogyakarta: Graha Ilmu.