Impelementasi Hardware Redundancy Pada Switching Pintu Otomatis Dengan Metode Cold Standby Dan Watchdog
Vol. 2, No. 12, Desember 2018, hlm. 7225-7232 http://j-ptiik.ub.ac.id
Impelementasi Hardware Redundancy Pada Switching Pintu Otomatis
Dengan Metode Cold Standby Dan Watchdog
1 2 3 Muhammad Rifqi Muzaki , Sabriansyah Rizqika Akbar , Widhi YahyaProgram Studi Teknik Komputer, Fakultas Ilmu Komputer, Universitas Brawijaya 1 2 3 Email: mrifqi1101@gmail.com, sabrian@ub.ac.id, widhi.yahya@ub.ac.id
Abstrak
Perangkat elektronik pasti memiliki batas masa pakai dan sewaktu
- – waktu dapat mengalami kerusakan. Sebuah sistem yang terdiri dari beberapa perangkat elektronik akan mengalami kegagalan jika komponen yang krusial mengalami kerusakan. Oleh karena itu komponen krusial dalam sebuah sistem harus lebih handal. Untuk meningkatkan kehandalan sistem sebuah mekanisme seperti Hardware
Redundancy bisa diterapkan. Hardware Redundancy merupakan sebuah mekanisme meningkatkan
kehandalan dengan cara menduplikat komponen penting sebagai cadangan. Terdapat beberapa jenis dari mekanisme Hardware Redundancy yang salah satunya adalah Cold Standby Redundancy yang menggunakan konsep cadangan tanpa catu daya. Konsep Cold Standby adalah menambahkan duplikat komponen penting yang standby tanpa catu daya dan akan aktif ketika komponen penting tersebut mengalami kerusakan. Pada penelitian ini Cold Standby Redundancy diterapkan pada sebuah sistem kunci pintu otomatis berbasis Arduino Uno dan RFID. Komponen penting pada sistem tersebut adalah Arduino Uno yang bertindak sebagai kontroler dalam sistem. Implementasi cold standby redundancy pada sistem ini menggunakan perangkat pihak ketiga (Arduino Nano) sebagai fault detector pada Arduino Uno yang utama (master). Melalui komunikasi serial I2C master mengirimkan keep-alive
status secara periodik kepada fault detector sebagai tanda apakah masih beroperasi atau sedang
mengalami kerusakan. Selain itu terdapat perangkat switch yang bertugas mengalihkan kontrol sistem ke master atau slave. Fault detector akan mengirimkan trigger untuk melakukan peralihan kepada perangkat switch ketika mendeteksi kerusakan pada master. Berdasarkan hasil pengujian yang telah dilakukan, kehandalan sistem meningkat setelah menerapkan mekanisme Cold Standby Redundancy. Nilai kehandalan sistem meningkat sebesar 15.45% untuk satu tahun waktu beroperasi.
Kata kunci: Fault Tolerant, Reliability, Hardware Redundancy, Cold Standby Redundancy
Abstract
Electronic devices must have a lifetime limit and may be damaged at any time. A systemconsisting of several electronic devices will fail if the crucial component is damaged. Therefore, crucial
components in a system should be more reliable. To improve system reliability a mechanism such as
Hardware Redundancy can be applied. Hardware Redundancy is a mechanism to improve reliability by
duplicating important components as backup. There are several types of Hardware Redundancy
mechanisms, one of which is Cold Standby Redundancy which uses the unpowered backup concept. The
Cold Standby concept is to add a duplicate of an important component that standby without a power
supply and will be active when the component is damaged. In this study Cold Standby Redundancy is
applied to an automatic door lock system based on Arduino Uno and RFID. An important component of
the system is Arduino Uno which acts as a controller in the system. Implementation of cold standby
redundancy on this system uses a third party device (Arduino Nano) as the fault detector of main
Arduino Uno (master). Through I2C serial communication the master sends keep-alive status
periodically to the fault detector as a sign of whether it is still operating or is being damaged. In addition
there is a switch device in charge of switching the system control to master or slave. The fault detector
sends the trigger to make a switch to the switch device when it detects damage to the master. Based on
the results of tests that have been done, system reliability increases after applying the Cold Standby
Redundancy mechanism. System reliability value increased by 15.45% for a year operating time.Keyword : Fault Tolerant, Reliability, Hardware Redundancy, Cold Standby Redundancy Fakultas Ilmu Komputer Universitas Brawijaya
7225 redundansi yang dilakukan pada level hardware atau komponen fisik (Dubrova, 2013). Salah satu jenis hardware redundancy adalah standby
1. PENDAHULUAN
redundancy
Sebuah sistem otomatis dalam segi penggunaan memiliki sisi fungsional dan non- fungsional. Sisi fungsional adalah bagaimana sistem bekerja berdasarkan tujuannya. Sedangkan sisi non fungsional adalah bagaimana sistem dapat tetap berjalan dengan adanya faktor
standby . Pada cold standby unit standby yang
, yaitu unit spare bersifat standby dan aktif ketika komponen utama mengalami kerusakan. Standby redundancy sendiri memiliki dua metode yaitu cold standby dan hot
- – faktor yang dapat mengakibatkan sisem mengalami kegagalan. Kegagalan yang terjadi pada sistem critical seperti sistem control pesawat akan berdampak buruk. Adanya cacat di sistem ini kemungkinan akan menyebabkan kehancuran pesawat, seperti yang terjadi pada peluncuran Lewis spacecraft milik NASA pada tanggal 23 agustus 1997 (NASA, 2000).
karena itu sebuah sistem pengunci pintu otomatis harus dependable. Terdapat beberapa atribut dari dependability sebuah sistem. Salah satu atribut utamanya adalah reliability (kehandalan). Reliability atau jika disimbolkan menjadi R(t) merupakan probabilitas jalannya sebuah sistem tanpa adanya kegagalan dalam interval waktu tertentu atau [0, t], dimana sistem mulai beroperasi pada waktu ke 0 (Dubrova, 2013).
Pada penelitian ini perangkat yang akan diredundansi adalah controller unit (Arduino Uno) karena controller unit merupakan critical
Bab ini menjelaskan bagaimana rancangan atau desain yang akan diimplementasikan pada sistem. Desain sistem dibuat dalam bentuk blok diagram yang menggambarkan hubungan antar komponen dalam sistem. Blok diagram dibuat berdasarkan spesifikasi sistem yang telah dirancang.
2. PERANCANGAN SISTEM
controller dan menggantikan master controller akan terjadi.
fault detector untuk menghidupkan slave
terjadi maka proses switching dari perangkat
controller berhenti, maka diasumsikan master controller mengalami fault atau mati. Ketika itu
diterima perangkat fault detector dari master
master controller . Ketika sinyal Keep-alive yang
digunakan pendekatan mekanisme Keep-alive dengan memanfaatkan komunikasi serial yang ada pada Arduino. Slave controller dipasang dalam keadaan mati (tidak tercatu daya) dan akan dinyalakan oleh perangkat fault detector yang secara periodik menerima sinyal dari
component dari sistem. Pada sistem ini
standby tidak tercatu daya (National Instruments, 2008).
Redundansi merupakan salah satu metode yang umum digunakan untuk meningkatkan kehandalan (reliability) dan ketersersediaan (availability) pada sebuah sistem. Ada beberapa jenis redundansi yang ada saat ini, yaitu
mekanisme menambahkan duplikat dari suatu komponen dalam keadaan mati sebagai pengganti yang akan aktif ketika komponen tersebut mengalami kegagalan. Cold standby memiliki keunggulan dari segi konsumsi energi dan keandalan unit lebih terjaga karena unit
Cold standby redundancy adalah sebuah
Salah satu sistem otomatis yang diteliti dalam penelitian ini adalah sistem pengunci pintu otomatis. Diantara beberapa teknologi kunci pintu otomatis yang paling banyak dikembangkan saat ini adalah kunci pintu otomatis berbasi RFID (Radio Frequency
tidak tercatu daya, sedangkan pada hot standby unit standby tercatu daya.
Identification ). Dimana sistem ini bekerja
berdasarkan pembacaan kartu RFID yang didekatkan pada RFID reader, data pada kartu akan dicocokkan dengan data yang tersimpan pada memori program Arduino untuk menentukan otorisasi dari pemilik kartu (Nehete, et al., 2016). Meskipun demikian perangkat kunci pintu otomatis adalah perangkat elektronik yang pasti akan mengalami kesalahan atau kerusakan. Apabila hal ini terjadi maka akan
berdampak pada pintu yang tidak bisa dibuka dan tentunya itu merugikan. Oleh
Hardware Redundancy adalah teknik
Untuk penelitian ini jenis redundansi yang digunakan adalah hardware redundancy.
hardware redundancy, software redundancy, information redundancy, dan time redundancy.
Metode redundansi yang akan diimplementasikan pada sistem kunci pintu otomatis ini adalah cold standby redundancy.
3. Master controller Keep-alive dibaca berkala oleh fault Input & power output Keep-alive status detector menggunakan fungsi Input & Fault Wire.onRequest() dari library wire.h yang power Detector Switch trigger trigger Switch output mana fungsi tersebut bekerja dengan fungsi Input & power output berbasis event yaitu requestEvent().
4. Slave controller Slave controller di berikan duplikat kode program dari master controller sebelum dimodifikasi. Gambar 1. Blok diagram sistem
Alur kerja sistem dibuat berdasarkan blok diagram pada Gambar 1. Alur kerja sistem Berdasarkan Gambar 1 berikut detil dapat dilihat pada Gambar 2. hubungan secara hardware antar komponen :
Master Controller (Arduino Uno) dan Fault
Mulai 1.
detector (Arduino Nano) terhubung melalui
antarmuka komunikasi serial I2C dengan
Master Keep-alive status
alamat 42. N 2.
Digital pin output dari fault detector terhubung dengan perangkat switch dimana
berhenti
seluruhnya merupakan digital output Y
trigger untuk mengalihkan sistem ke slave controller.
Switch ke slave 3.
Digital pin I/O master controller dan slave
controller (Arduino Uno) terhubung Perbaikan/ganti master controller
dengan perangkat Switch (Relay module).
4. Switch (Relay Module) terhubung dengan
Reset Fault Detector master controller, slave controller, fault detector dan perangkat I/O sistem. Semua
terhubung dengan antarmuka digital kecuali
Switch ke master power source . Relay module yang
digunakan masing 8 channel untuk input dan 4 channel untuk output.
Selesai 5.
Konfigurasi jalur relay Normally Close Gambar 2. Diagram alir sistem
(NC) dipasangkan untuk master controller, sedangkan Normally Open (NO)
2.1 Perancangan pada Master Controller
dipasangkan untuk slave controller. Jalur COM dipasangkan untuk perangkat Input
Master controller mengirimkan keep-alive dan Output.
status kepada fault detector seacara periodik. Unit ini bekerja berdasarkan Keep-alive status
Berdasarkan Gambar 1 berikut detil dari master . Pengiriman dilakukan hubungan secara hardware antar komponen : menggunakan komunikasi serial I2C dan 1. program master controller
Kode
VirtualDelay library agar pengiriman berjalan
dimodifikasi untuk mengirim keep-alive secara multitask. Diagram alir pada master
status kepada fault detector melalui controller dapat dilihat pada Gambar 3.
komunikasi serial I2C dengan Fungsi Wire.requestFrom().
2. Fungsi Wire.requestFrom() dijalankan di dalam fungsi VirtualDelay dari library
VirtualDelay . Tujuannya adalah agar
pengiriman keep-alive status berjalan secara multitask dan tidak mengganggu jalannya program yang sudah ada.
2.3 Perancangan pada Switch Mulai
Switch module bertanggung jawab
mengalihkan dari master ke slave (fail over)
kirim Keep-alive maupun dari slave ke master (fail back).
Perangkat switch merupakan actuator dari perangkat fault detector berupa relay module.
Power off / infinite loop
bekerja berdasarkan output trigger dari
Switch Fault detector.
Berhenti kirim
2.4 Perancangan pada Slave Controller Keep-alive
Slave controller bertugas sebagai pengganti ketika master controller mengalami kegagalan.
Selesai Slave bekerja dibawah kendali switch yang mengalihkan catu daya serta I/O dari master.
Gambar 3. Diagram alir master controller Diagram alir slave controller dapat dilihat pada
2.2 Perancangan pada Fault Detector Gambar 5. Mulai Fault detector atau fault detector bertugas mendeteksi kegagalan yang terjadi pada master.
Fault detector harus mampu membedakan antara Trigger switch kegagalan yang memerlukan fail over atau tidak.
Hal ini karena Fault detector juga bertanggung jawab atas keputusan switch modul untuk On atau Off Off Power Down melakukan fail over maupun fail back. Diagram alir fault detector dapat dilihat pada Gambar 4. On Master Keep-alive Dari master Power Up berhenti Gambar 5. Diagram alir slave controller status N Selesai
Y Fail over 3.
IMPLEMENTASI SISTEM
Sub bab ini menjelaskan bagaimana proses
Tombol Reset
implementasi dari desain dan perancangan N sistem terhadap kebutuhan-kebutuhan yang sudah dikumpulkan. Perangkat keras dari analisis kebutuhan di rancang konfigurasi
pressed Y hubungan pin antar perangkan hingga membentuk prototipe alat.
Reset
Berdasarkan desain rancangan yang telah dilakukan hasil implementasi perangkat keras dapat dilihat pada Gambar 6.
Failback Selesai
Gambar 4. Diagram alir fault detector Gambar 6. Implementasi perangkat keras
Keterangan masing-masing komponen dari Gambar 6 :
Arduino Uno (Slave) 3. Arduino Nano (Fault Detector) 4. Relay 8 channel (Switch untuk input) 5. Relay 4 channel (Switch untuk output) 6. RFID reader 7. Relay 1 channel sebagai kontrol solenoid 8. Solenoid door lock 9.
Selanjutnya adalah pengujian switching merupakan pengujian keseluruhan sistem
hardware (kiri) dan software (kanan)
Gambar 8. Skenario pengujian switching secara
Fail over ke Slave Selesai Hidupkan Sistem Matikan perangkat master Hidupkan kembali perangkat master Reset Fault Detection Unit Mulai Fail over ke Slave Selesai Hidupkan Sistem Tambahkan infinite loop pada program Hilangkan infinite loop pada program Fail back ke master Fail back ke master Reset Fault Detection Unit
ONLINE” merupakan pesan yang mengindikasikan bahwa master controller beroperasi dengan normal. Sedangkan “Master Status : OFFLINE” mengindikasikan bahwa master controller mati atau error. Mulai
. “Master Status :
Gambar 7. Hasil pengujian transaksi keep alive Melihat hasil dari pengujian tersebut dapat dilihat bahwa transaksi keep-alive status berjalan dengan baik. Jika diperhatikan hasil pengujian pada Gambar 7 terdapat dua jenis pesan yang diterima fault detector
1. Arduino Uno (Master) 2.
detector ini dapat dilihat pada gambar 7.
Hasil pengujian transaksi keep-alive status yang dilakukan pada master controller dan fault
serial monitor dari sisi penerima (fault detector).
Pengujian fungsional yang pertama adalah pengujian terhadap transaksi keep-alive status yang dilakukan untuk melihat apakah pengiriman dan pembacaan keep alive status berjalan dengan benar atau tidak. Pengujian ini dilakukan dengan memantau transaksi melalui
Buzzer 4.
I2C LCD 16x2 10.
PENGUJIAN DAN ANALISIS
4.1 Pengujian Fungsional
status dilakukan dengan menampilkan nilai dua variabel yang menyimpan nilai Keep-alive status yg selalu berubah
- – ubah. Nilai akurasi ditentukan dengan melihat nilai kedua variabel tersebut. Jika nilainya berbeda maka artinya akurat, jika sama maka tidak akurat. . Hasil pengujian dapat dilihat pada Gambar 9. Gambar 9. Hasil pengujian akurasi keep-alive
7 Sukses Sukses Normal
8 Sukses Sukses Normal
9 Sukses Sukses Normal
10 Sukses Sukses Normal
Pengujian non fungsional dilakukan untuk menguji kebutuhan sistem diluar dari fungsi tujuan sistem. Dalam hal ini penulis menguji akurasi dari pengiriman serta pembacaan Keep-
alive status antara perangkat master dengan fault detector . Selain akurasi penulis juga menguji
jeda waktu error dengan switching fail over dan jeda waktu hingga sistem siap dioperasikan.
Pengujian akurasi
Keep-alive
Hasil tersebut menunjukkan 7 dari 10 transaksi yang akurat. Angka tersebut menandakan bahwa dari 5 detik operasi sistem redundansi terdapat 1,5 detik (3 kali 0,5 detik tidak berturut
- – turut) transaksi yang tidak akurat. Namun dengan tingkat akurasi tersebut sudah membuat sistem redundansi tidak mengalami kegagalan switching sama sekali dalam 10 kali percobaan.
Pengujian jeda switching dilakukan untuk mengetahui berapa lama jeda switching dan berapa lama jeda yang dibutuhkan setelah switching sampai sistem dapat berfungsi normal. Jeda yang diberikan pada program adalah 5
detik untuk mempertimbangkan keputusan switching .
Pengujian dilakukan dengan bantuan fitur
stopwatch pada ponsel genggam untuk
menghitung waktu sebenarnya. Setelah dilakukan pengujian waktu stopwatch menunjukkan 1 detik lebih lambat dari waktu jeda yang disematkan pada program yaitu 6
detik. Sedangkan untuk jeda waktu setelah switching sampai sistem siap digunakan adalah 2 detik. Dengan demikian waktu jeda total dari
saat error terjadi hingga perangkat slave siap beroperasi adalah 8 detik.
4.3 Analisis Reliability
Hasil pengujian yang sudah dilakukan akan dianalisis untuk membuktikan apakah reliability sistem dapat meningkat setelah ditambahkan sistem redundansi. Analisis dilakukan dengan menggunakan pemodelan dependability sistem.
6 Sukses Sukses Normal
4 Sukses Sukses Normal
5 Sukses Sukses Normal
5 Sukses Sukses Normal
redundansi secara fisik. Pada pengujian ini akan terlihat apakah sistem redundansi mampu melakukan switching dan sistem kunci pintu otomatis tetap berjalan normal atau tidak. Pengujian dilakukan dengan menjalankan skenario pada Gambar 8 sebanyak 10 kali. Skenario pengujian switching terdiri dari dua skenario yaitu power off (secara hardware) dan
infinite loop (secara software).
Hasil dari pengujian switching dengan skenario power off dapat dilihat pada Tabel 1.
Tabel 1. Hasil pengujian power off
Pengujian ke- Failover Failback Fungsi Sistem
1 Sukses Sukses Normal
2 Sukses Sukses Normal
3 Sukses Sukses Normal
4 Sukses Sukses Normal
6 Sukses Sukses Normal
3 Sukses Sukses Normal
7 Sukses Sukses Normal
8 Sukses Sukses Normal
9 Sukses Sukses Normal
10 Sukses Sukses Normal hasil dari pengujian dengan skenario infinite
loop dapat dilihat pada Tabel 2.
Tabel 2. Hasil pengujian infinite loop
Pengujian ke- Failover Failback Fungsi Sistem
1 Sukses Sukses Normal
2 Sukses Sukses Normal
4.2 Pengujian Non Fungsional
2 Input Output
alive yang masih belum maksimal yaitu 70%.
hardware redundancy dengan metode cold standby membutuhkan 3 komponen utama yaitu redundant unit (slave), fault detector, dan juga switch . Ketiga komponen tersebut harus
dikonfigurasi sesuai fungsi masing masing.
Fault detector berperan sangat penting sehingga
harus memiliki reliability yang sangat tinggi karena harus memantau dan memutuskan untuk
switching ketika sistem fail. Switch (relay) yang
bertugas merubah jalur digital I/O dari master ke slave dan sebaliknya juga harus dikonfigurasi dengan teliti karena terdapat banyak sekali wiring yang rawan terjadi kesalahan.
Untuk melakukan transaksi keep-alive tersebut keduanya membutuhkan library wire dan di sisi master ditambahkan library
VirtualDelay agar pengiriman keep-alive status
berjalan secara multitask. Berdasarkan hasil pengujian akurasi dan timeout switching ternyata terjadi perbedaan jeda dimana konfigurasi pada program jeda hanya 5 detik namun switching baru terjadi pada detik ke 6. Hal ini mungkin disebabkan oleh tingkat akurasi transaksi keep-
Namun hasil tersebut tidak mengganggu sistem redundansi yang berjalan lancar selama 20 kali pengujian (secara hardware dan software) tanpa ada kegagalan satu pun.
5. KESIMPULAN
Hasil analisis perhitungan reliability sistem tanpa redundansi dengan sistem yang menggunakan redundansi dapat disimpulkan bahwa sistem dengan redundansi memiliki nilai
reliability yang lebih tinggi. Hal ini
membuktikan bahwa sistem paralel lebih
reliable daripada sistem seri. Hasil analisis
menunjukkan peningkatan reliability sebesar 15.45% dengan nilai failure rate Arduino Uno
2.0559 x 10
per jam .
C
1 C
Perancangan perangkat keras sistem
Dari perhitungan tersebut menghasilkan nilai R(t) = 0.8351 atau dengan kata lain dengan sistem seri nilai reliability sistem adalah 83.51%.
- 5
Berdasarkan RBD yang sudah dimodelkan pada Gambar 10 dapat dilihat bahwa sistem tersebut adalah parallel. Dalam sistem yang parallel dibutuhkan setidaknya satu komponen bekerja. Berikut persamaan reliability yang didapatkan untuk mengevaluasi reliability.
Dengan pemodelan dependability akan dapat diketahui peningkatan reliability pada sistem.
Langka awal analisis adalah melalui pemodelan Reliability Block Diagram (RBD). RBD sistem dapat dilihat pada Gambar 7.
Gambar 10. Hasil Pemodelan RBD sistem
Failure rate Arduino Uno dibutuhkan untuk
menganalisis reliability. Dengan menggunakan failure rate Arduino Uno 2.0559 x 10
per jam reliability Arduino Uno adalah sebagai berikut. ( ) =
− ( ) =
−2.0559×10 −5
×8760 ( ) = 0.8351
( ) = 1 − ∏(1 − ( )) =1
( ) = ( ) ( ) = 0.8351
( ) = 1 − (1 −
1 ( ))(1 −
2 ( )) ( ) = 1 − (1 − 0.8351)(1 − 0.8351)
( ) = 1 − (0.1024 × 0.1024) ( ) = 1 − 0.0104 ( ) = 0.9896
Dari hasil perhitungan diatas didapatkan nilai R(t) = 0.9896 atau dengan kata lain sistem kunci pintu otomatis berbasis Arduino Uno dengan cold standby redundancy memiliki nilai
reliability 98.96%.
Apabila sistem kunci pintu otomatis tanpa
cold standby redundancy maka akan menjadi
sistem seri dan akan menghasilkan perhitungan sebagai berikut.
( ) = ∏ ( ) =1
- 5
DAFTAR PUSTAKA
Dubrova, E., 2013. Fault-Tolerant Design. New York: Springer Science+Business Media. NASA, 2000. The Role of Small Satellites in
NASA and NOAA Earth Observation Programs. .Space Studies Board, National
Research Council, National Academy of Sciences, Washington, USA .
National Instruments, 2008. Redundant System Basic Concepts. [Online] Tersedia di: http://www.ni.com/white- paper/6874/en/ [Diakses pada 8 September 2017].
Nehete, P. R., Chaudhari, J., Pachpande, S. & Rane, K., 2016. Literature Survey on Door Lock Security Systems. International
Journal of Computer Applications, Volume 153-No 2, pp. 13-18.