Penampil informasi jarak jauh dengan masukan teks dari keyboard berbasis Raspberry Pi.
INTISARI
Untuk menyediakan informasi yang efisien dan efektif maka dibuatlah penampil informasi jarak jauh. Penampil informasi ini berfungsi memberikan informasi, dimana informasi tersebut dimasukan melalui form informasi. Informasi yang ditampilkan akan diperiksa tanggal masa berlakunya sehingga ketika masa berlakunya sudah kadaluarsa maka informasi tersebut akan terhapus dengan sendirinya. Pembuatan antarmuka form informasi menggunakan program python.
Sistem menggunakan dua komponen yaitu PC sebagai tempat masuknya informasi dari pengguna dan Raspberry Pi sebagai penampil informasi pada monitor. Informasi akan dikirimkan menggunakan wireless dari PC menuju Raspberry Pi. Informasi akan ditampilkan dalam bentuk slideshows dan menampilkan beberapa informasi secara bergantian.
Penampil informasi jarak jauh sudah berhasil dibuat, dengan tiga jenis antarmuka yaitu antarmuka pengisian informasi, antarmuka database informasi dan penampil informasi. Informasi yang ditampilkan sama seperti tampilan informasi yang dimasukan pada PC. Jumlah informasi maksimal yang dapat ditampilkan adalah sepuluh informasi.
Kata kunci : Penampil informasi, python , wireless, Raspberry Pi.
(2)
ABSTRACT
To provide information efficiently and effectively then be made remote information viewer. The function of Viewers information to announce information, where the information is entered through a form of information. The information displayed will be checked the expiration date, when the validity period has expired then the information will be deleted by the system. The manufacture information form interface using the python program.
The system uses two components, namely the PC as the entry of information from the user and the Raspberry Pi as the viewer information on the monitor. Information will be transmitted using wireless from the PC to the Raspberry Pi. Information will be displayed in the form of slideshows and display some information in turn.
Remote information viewer has been created, with three kinds of interfaces that information form interface, the information viewer interface and the viewer database information. The information is displayed as the display of information entered on the PC. The maximum amount of information that can be displayed are ten information.
The keywords : Information viewer, python, wireless, Raspberry Pi
(3)
TUGAS AKHIR
PENAMPIL INFORMASI JARAK JAUH DENGAN MASUKAN TEKS
DARI KEYBOARD BERBASIS RASPBERRY PI
Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Disusun oleh :
GREGORIUS SATRIO KUNCORO NIM : 125114015
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
2016
(4)
FINAL PROJECT
REMOTE INFORMATION VIEWER WITH TEXT INPUT FROM
KEYBOARD BASED ON RASPBERRY PI
Presented as Partial Fulfilment of the Requitments To Obtain the Sarjana Teknik Degree
In Electrical Engineering
GREGORIUS SATRIO KUNCORO NIM : 125114015
ELECTRICAL ENGINEERING STUDY PROGRAM
ELECTRICAL ENGINEERING DEPARTEMENT
SCIENCE AND TECHNOLOGY FACULTY
SANATA DHARMA UNIVERSITY
(5)
HALAMAN
PERSETUJIJANTUGAS
AKHIR
PENAMPIL INFORMASI JARAK JAUH
DENGANMASUKAN
TEKSDARI KEYBOARD
BERBASIS RASPBERRYPI
Oleh
GREGORruS SATRIO KTJNCORO
NIM: i25114015
telah disetujui oleh :
Pembimbinir
Martanto. S.T."M.T" raneeal
,29
]rlr
2o16
(6)
HALAMAN
PENGESAHANTUGAS
AKHIR
PENAIVIPIL
INFOR}IASI
JARAK
JAT}H DENGAFT MASUKAI\ITEKS
DARI KEYBOARD
BERBASIS RASPBERRYPI
Disusun oleh :
GREGORruS SATRIO KT'NCORO.
NIM: 125114015
penguJl
l6
itiaKetua
Sekretaris
Anggota
Fakultas Sains dan Teknologi UniversiAs Sanata Dharma
/,/*
IV
(7)
PER}I-YATAAN
KEASLIAN
KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya
atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka sebagaimana layaknya karya ilmiah.
YogyakartTJ5 Juli20l6
/ /-1
/)v:
U
(8)
IIALAMAN
PERSEMBAHAN DAN
MOTTO HIDUP
MOTTO:
gurftr"W
fu44fr
Sutat4fn
Dr,t^
qu4.ltt
t,
Dengan ini kupersembahkan karyaku untuk ... Bapak, Ibu, dan Keluargaku tercinta,
Scolastika Christifide Permatasari yang selalu setia menemaniku,
Sahabat
-
sahabatku.(9)
LEMBAR
PERNYATAN
PERSETUJUAN
PUBLIKASI
KARYA
ILMIAH
UI{TUK
KEPENTINGAN
AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :
Nama
: Gregorius Satrio Kuncoro NomorMahasiswa
:125114015Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul :
PENAMPIL INFORMASI JARAK
JAUH DENGAI\IMASUKAN
TEKSDARI KEYBOARD
BERBASIS RASPBERRYPI
beserta perangkat yang diperlukan ( bila ada ). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan dat4 mendistribusikan secara terbatas dan
mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu
meminta ijin dari saya maupun memberikan royalty kepada saya selama tetap mencatumkan nama saya sebagai penulis.
Demikian penyataan ini saya buat dengan sebenamya. Yogyakarta, 15 Juli 2016
(10)
INTISARI
Untuk menyediakan informasi yang efisien dan efektif maka dibuatlah penampil informasi jarak jauh. Penampil informasi ini berfungsi memberikan informasi, dimana informasi tersebut dimasukan melalui form informasi. Informasi yang ditampilkan akan diperiksa tanggal masa berlakunya sehingga ketika masa berlakunya sudah kadaluarsa maka informasi tersebut akan terhapus dengan sendirinya. Pembuatan antarmuka form informasi menggunakan program python.
Sistem menggunakan dua komponen yaitu PC sebagai tempat masuknya informasi dari pengguna dan Raspberry Pi sebagai penampil informasi pada monitor. Informasi akan dikirimkan menggunakan wireless dari PC menuju Raspberry Pi. Informasi akan ditampilkan dalam bentuk slideshows dan menampilkan beberapa informasi secara bergantian.
Penampil informasi jarak jauh sudah berhasil dibuat, dengan tiga jenis antarmuka yaitu antarmuka pengisian informasi, antarmuka database informasi dan penampil informasi. Informasi yang ditampilkan sama seperti tampilan informasi yang dimasukan pada PC. Jumlah informasi maksimal yang dapat ditampilkan adalah sepuluh informasi.
Kata kunci : Penampil informasi, python , wireless, Raspberry Pi.
(11)
ABSTRACT
To provide information efficiently and effectively then be made remote information viewer. The function of Viewers information to announce information, where the information is entered through a form of information. The information displayed will be checked the expiration date, when the validity period has expired then the information will be deleted by the system. The manufacture information form interface using the python program.
The system uses two components, namely the PC as the entry of information from the user and the Raspberry Pi as the viewer information on the monitor. Information will be transmitted using wireless from the PC to the Raspberry Pi. Information will be displayed in the form of slideshows and display some information in turn.
Remote information viewer has been created, with three kinds of interfaces that information form interface, the information viewer interface and the viewer database information. The information is displayed as the display of information entered on the PC. The maximum amount of information that can be displayed are ten information.
The keywords : Information viewer, python, wireless, Raspberry Pi
(12)
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa karena atas segala rahmat-Nya sehingga penulis dapat menyelesaikan laporan tugas akhir dengan judul “Penampil Informasi Jarak Jauh Dengan Masukan Teks Dari Keyboard Berbasis Raspberry Pi”. Laporan tugas akhir ini disusun untuk memenuhi syarat memperoleh gelar sarjana.
Selama pembuatan tugas akhir ini penulis menyadari bahwa begitu banyak pihak yang memberikan bantuan baik berupa idea atau gagasan, dukungan moral, maupun bantuan materi. Oleh karena itu, peneliti ingin mengucapkan terimakasih kepada :
1. Drs. Johanes Eka Priyatma, M.Sc., Ph.D, Rektor Universitas Sanata Dharma 2. Sudi Mungkasi, S.Si., M. Math. Sc., Ph. D Dekan Fakultas Sains dan Teknologi.
3. Petrus Setyo Prabowo, S.T., M.T., Ketua Program Studi Teknik Elektro Universitas Sanata Dharma.
4. Martanto, S.T.,M.T., selaku dosen pembimbing yang memberikan pikiran, ide, kritik dan saran yang membangun dalam menyelesaikan tugas akhir ini.
5. Bapak Ir. Tjendro, M.Kom. dan Ir. Th. Prima Ari selaku dosen penguji.
6. Seluruh dosen dan laboran yang telah memberikan ide, ilmu dan pengetahuan kepada penulis selama perkuliahan.
7. Keluarga penulis terutama bapak, ibu, kakak dan adek yang telah memberikan dukungan doa, kasih sayang dan motivasi selama menempuh pendidikan di Universitas Sanata Dharma.
8. Scolastika Christifide Permatasari yang selalu setia menemani dan mendukung selama penulisan tugas akhir ini.
9. Teman – teman seperjuangan Teknik Elektro 2012 yang telah menemani pada saat menempuh pendidikan di Universitas Sanata Dhama.
10.Sahabat-sahabat yang telah mengajarkan banyak hal dalam berproses selama masa kuliah empat tahun ini.
11.Semua pihak yang tidak bisa disebutkan satu persatu yang telah banyak memberikan banyak bantuan dan dukungan dalam menyelesaikan tugas akhir ini.
(13)
Penulis menyadari bahwa dalam penyusunan tugas akhir masih memiliki kekurangan.
Oleh karena itu, penulis mengharapkan masukan, kritik dan saran yang membangun agar tugas akhir ini menjadi lebih baik. Semoga tugas akhir ini dapat bermanfaat sebagaimana mestinya
Yogyakart4l5 Juli 2016
/
lius Satrio Kuncoro.
(14)
DAFTAR ISI
HALAMAN JUDUL (Bahasa Indonesia) ... HALAMAN JUDUL (Bahasa Inggris) ... HALAMAN PERSETUJUAN ... HALAMAN PENGESAHAN ... PERNYATAAN KEASLIAN KARYA ... HALAMAN PERSEMBAHAN DAN MOTO HIDUP ... LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA
ILMIAH DEMI KEPENTINGAN AKADEMIS ... INTISARI ... ABSTRACT ... KATA PENGANTAR ... DAFTAR ISI ... DAFTAR GAMBAR ... DAFTAR TABEL ...
BAB I PENDAHULUAN ... 1.1 Latar Belakang ... 1.2 Tujuan dan Manfaat ... 1.3 Batasan Masalah ... 1.4 Metodologi Penelitian ... BAB II TINJAUAN PUSTAKA ... 2.1 Sistem Telemetri ... 2.2 Komunikasi Data ... 2.3 Komunikasi Serial ... 2.3.1. Komunikasi Serial Synchronous dan Asynchronous ... 2.3.2. Data Transfer Rate
2.4 Wireless ... 2.4.1 Modul Wireless Frekuensi 2,4 GHz Xbee Pro... 2.5 Raspberry pi ... 2.6 Python ...
i ii iii iv v vi vii viii ix x xii xv xviii 1 1 3 3 4 5 5 5 5 6 8 8 8 11 12 xii
(15)
2.7 Tkinter ... 2.7.1. Widget Tkinter ... 2.7.2. Standard Attribute ... 2.7.3. Geometry Management ... 2.8 Arduino Uno ... 2.8.1. Atmega 328 ... BAB III RANCANGAN PENELITIAN ... 3.1 Perancangan Perangkat Keras ... 3.1.1 Konfigurasi Sistem Masukan Informasi ... 3.1.2 Konfigurasi Sistem Penampil Informasi ... 3.2 Perancangan Perangkat Lunak ... 3.1.1 Diagram Alir Program Form Informasi ... 3.1.2 Diagram Alir Subrutin Identifikasi Informasi ... 3.1.3 Diagram Alir Subrutin Pengiriman Data ... 3.1.4 Diagram Alir Subrutin Penerimaan Informasi dari Raspi ... 3.1.5 Diagram Subrutin Konfirmasi Informasi ... 3.1.6 Diagram Alir Program Penampil Informasi ... 3.1.7 Diagram Alir Subrutin Penerimaan Data Raspi... 3.1.8 Diagram Alir Subrutin Identifikasi Data ... 3.1.9 Diagram Alir Subrutin Pemberitahuan Informasi Tampil ... 3.1.10 Diagram Alir Subrutin Peberitahuan Informasi Dihapus ... BAB IV HASIL DAN PEMBAHASAN ... 4.1 Pembahasan Perangkat Keras ... 4.1.1 Perangkat Keras Pengisi Informasi ... 4.1.2 Perangkat Keras Penampil Informasi ... 4.1.3 Pengaturan Xbee ... 4.2 Cara Kerja Sistem ... 4.2.1 Pemilihan Background, Jenis dan Ukuran Karakter ... 4.2.2 Pengisian Nomor Informasi ... 4.2.3 Pengisian Data Informasi ... 4.2.4 Pemeriksaan Data Informasi ... 4.2.5 Pemeriksaan Data Waktu ... 4.2.6 Penyimpanan Informasi ...
13 14 15 19 19 21 22 23 23 24 25 25 31 32 32 33 33 36 36 38 38 41 41 41 42 43 44 44 44 45 45 46 46 xiii
(16)
4.2.7 Pengiriman Informasi ... 4.2.8 Penerimaan Informasi ... 4.2.9 Konfirmasi Informasi Telah Diterima ... 4.2.10 Informasi Ditampilkan ... 4.2.11 Pemberitahuan Informasi Yang Ditampilkan Penuh ... 4.2.12 Hapus Informasi... 4.3 Pembahasan Perangkat Lunak ... 4.3.1 Perangkat Lunak Pengisi Informasi ... 4.3.1.1 Perangkat Perangkat Lunak Form Informasi ... 4.3.1.2 Perangkat Lunak Penyimpanan Informasi ... 4.3.1.3 Lunak Pengiriman Data Informasi ... 4.3.1.4 Perangkat Lunak Penerimaan Pemberitahuan ... 4.3.1.5 Perangkat Lunak Pemeriksaan Data Waktu ... 4.3.1.6 Perangkat Lunak Penampil Database ... 4.3.2 Perangkat Lunak Penampil Informasi ... 4.3.2.1 Perangkat Lunak Antarmuka Penampil Informasi ... 4.3.2.2 Perangkat Lunak Slideshow ... 4.3.2.3 Perangkat Lunak Penerimaan Data Informasi ... 4.4 Pengujian Jarak Jangkauan Komunikasi Serial ... BAB V KESIMPULAN DAN SARAN ... 5.1 Kesimpulan ... 5.2 Saran ...
DAFTAR PUSTAKA ... LAMPIRAN ...
49 49 50 50 52 52 54 54 55 63 66 67 69 71 74 75 75 77 78 79 79 79 80 82 xiv
(17)
DAFTAR GAMBAR
Halaman
Gambar 1.1 Diagram Blok Sistem ... 4
Gambar 2.1 Sinyal Transmisi Sinkron [5] ... 6
Gambar 2.2 Pembingkaian Karakter ASCII "A"[5] ... 7
Gambar 2.3 Modul XBee PRO[6] ... 9
Gambar 2.4 Diagram Data Flow Internal[6] ... 10
Gambar 2.5 Konfigurasi Pin Pada Xbee[7] ... 10
Gambar 2.8. Konfigurasi Pin Pada Raspberry Pi Model B [10] ... 12
Gambar 2.9. Tampilan Anchors ... 17
Gambar 2.10. Tampilan Attribute Relief ... 18
Gambar 2.11 Tampilan Bitmap ... 18
Gambar 2.12 Arduino Uno[13] ... 19
Gambar 2.13 Konfigurasi Pin Atmega328 Pada Arduino Uno[15]... 20
Gambar 3.2 Perancangan Perangkat Keras... 23
Gambar 3.3 Konfigurasi Pin Xbee Dengan Arduino Uno ... 24
Gambar 3.4. Konfigurasi Pin Xbee Dengan Raspberry Pi ... 24
Gambar 3.5 Tampilan Form Pengisian Informasi. ... 27
Gambar 3.6 Isi File Teks ... 28
Gambar 3.7 Tampilan Database Informasi ... 28
Gambar 3.8 Diagram Alir Buka File Teks ... 30
Gambar 3.9 Diagram Alir Program Form Informasi ... 30
Gambar 3.10 Diagram Alir Subrutin Identifikasi Informasi ... 32
Gambar 3.11 Diagram Subrutin Pengiriman Data ... 33
Gambar 3.12 Diagram Alir Subrutin Penerimaan Informasi Dari Raspi ... 34
Gambar 3.13 Diagram Alir Subrutin Konfirmasi Informasi ... 35
Gambar 3.14 Tampilan Awal Slideshows... 36
Gambar 3.15 Tampilan Slideshows Informasi ... 36
Gambar 3.16 Diagram Alir Program Penampil Informasi ... 37
Gambar 3.17 Diagram Alir Subrutin Penerimaan Data Raspi ... 38
Gambar 3.18 Diagram Alir Subrutin Identifikasi Data ... 38
Gambar 3.19 Diagram Alir Subrutin Peberitahuan Informasi Tampil ... 39
Gambar 3.20 Diagram Alir Subrutin Pemberitahuan Informasi Dihapus ... 40
Gambar 4.1 Perangkat Keras Penampil Informasi ... 41
Gambar 4.2 Perangkat Keras Penampil Informasi ... 42
Gambar 4.3 Raspberry Pi 2 ... 43
Gambar 4.4 Shield xbee dan xbee ... 43
Gambar 4.5 Tampilan Form Informasi ... 44
Gambar 4.6 Tampilan Tabel Data Informasi Dan Tabel Data Informasi Yang Sedang Ditampilkan ... 45
Gambar 4.7 Contoh Pemberitahuan Pemeriksaan Data Informasi ... 46
Gambar 4.8 Pemberitahuan Data Waktu Salah ... 47 xv
(18)
Gambar 4.9 Pemberitahuan Informasi Telah Disimpan ... 47
Gambar 4.10 Informasi Ditampilkan Pada Tabel Data Informasi ... 48
Gambar 4.11 Pemberitahuan Informasi Telah Dikirim ... 48
Gambar 4.12 Penerimaan Data Informasi ... 49
Gambar 4.13 Informasi Ditampilkan Pada Tabel Informasi Yang Ditampilkan ... 50
Gambar 4.14 Tampilan Slideshow Pada Monitor ... 51
Gambar 4.15 Pemberitahuan Informasi Penuh ... 51
Gambar 4.16 Pengiriman dan Penerimaan Perintah Hapus Informasi ... 53
Gambar 4.17 Penghapusan Informasi 17 Pada Raspberry Pi ... 53
Gambar 4.18 Penghapusan Informasi 7 Pada Raspberry Pi ... 54
Gambar 4.19 List Program Pemanggilan Modul Python ... 55
Gambar 4.20 List Program Pengaktifan Port USB ... 55
Gambar 4.21 List Program Inisialisasi Form Infomasi ... 55
Gambar 4.22 List Program Pemanggilan Gambar ... 56
Gambar 4.23 List Program Pemanggilan Subprogram ... 56
Gambar 4.24 List Program Pemanggilan Program Multiproses ... 57
Gambar 4.26 List Program Pengturan Background ... 58
Gambar 4.27 Tampilan Background 2 ... 58
Gambar 4.28 Tampilan Background 4 ... 59
Gambar 4.29 Kekurangan Pengaturan Background ... 59
Gambar 4.30 Listing Program Pengaturan Jenis Dan Ukuran Huruf ... 60
Gambar 4.31 Listing Program Pemanggilan Program Pengaturan Jumlah Karakter ... 61
Gambar 4.32 Listing Program Pengaturan Jumlah Karakter ... 61
Gambar 4.33 Contoh Pengaturan Jumlah Karakter Dengan Ukuran 40 ... 62
Gambar 4.34 Contoh Pengaturan Jumlah Karakter Dengan Ukuran 44 ... 62
Gambar 4.35 Tombol Simpan ... 63
Gambar 4.36 List Program Pemeriksaan Jumlah Informasi Yang Sedang Ditampilkan .... 63
Gambar 4.37 List Program Pemeriksaan Kelengkapan Informasi ... 64
Gambar 4.38 List Program Pemeriksaan Data Waktu Informasi ... 65
Gambar 4.39 List Program Penyimpanan Informasi ... 66
Gambar 4.40 Tombol Tampil ... 66
Gambar 4.41 List Program Pengiriman Informasi ... 67
Gambar 4.42 Hasil Pengiriman Informasi ... 67
Gambar 4.43 List Program Penerimaan Pemberitahuan ... 68
Gambar 4.44 Hasil Penerimaan Pemberitahuan Informasi ... 69
Gambar 4.45 List Program Pemeriksaan Data Waktu ... 69
Gambar 4.46 List Program Pemeriksaan Data Waktu ... 70
Gambar 4.47 Hasil Pemeriksaan Data Waktu ... 71
Gambar 4.48 Tampilan Jendela Database Menampilkan Data Informasi ... 72
Gambar 4.49 Perintah Penghapusan Informasi 2 ... 73
Gambar 4.50 Contoh Pengiriman Perintah Hapus ... 73
Gambar 4.51 List Program Pemanggilan Modul Python ... 74
Gambar 4.52 Tampilan Awal Penampil Informasi ... 74
(19)
Gambar 4.53 List Program Inisialisasi data_slide ... 75
Gambar 4.54 List Program Slideshow ... 75
Gambar 4.55 List Program Slidetampil ... 76
Gambar 4.56 List Program Penerimaan Data Informasi ... 77
Gambar 4.57 Hasil Pengujian Penerimaan Data Informasi ... 78
(20)
DAFTAR TABEL
Tabel 2.1 Konfigurasi Pin Pada Xbee ... 10 Tabel 3.1 Ketentuan Jumlah Karakter Pada Isi Informasi. ... 26 Tabel 4.1 Hasil Pengujian Jarak Jangkauan Komunikasi Serial ... 78
(21)
BAB 1
PENDAHULUAN
1.1
Latar Belakang
Seiring berkembangnya teknologi informasi dan komunikasi di Indonesia semakin meningkatnya kebutuhan masyarakat akan pengetahuan. Pengetahuan yang didapatkan dari informasi yang beredar di lingkungan sekitar. Pengertian Menurut Jogiyanto HM., “Informasi dapat didefinisikan sebagai hasil dari pengolahan data dalam suatu bentuk yang lebih berguna dan lebih berarti bagi penerimanya yang menggambarkan suatu kejadian – kejadian yang nyata yang digunakan untuk pengambilan keputusan”[1]. Dewasa ini, masyarakat dapat dengan mudah mendapatkan berbagai informasi melalui teknologi yang ada seperti TV, media cetak, radio, internet dan lain-lain. Informasi dapat digunakan sebagai pengetahuan umum dalam pendidikan, dan juga dapat mengetahui peristiwa yang sudah maupun yang akan terjadi. Informasi yang ada dapat berupa lisan, tulisan, gambar maupun video. Peningkatan mutu dalam memberikan informasi yang diberikan agar menarik perhatian orang-orang dengan cara memperindah penampilan informasi yang diberikan.
Salah satu bentuk informasi tersebut adalah pengumuman. Pengumuman merupakan pemberitahuan informasi kepada khalayak umum melalui berbagai media informasi. Pengumuman dibuat untuk mengkomunikasikan atau menginformasikan suatu gagasan, pikiran kepada pihak lain. Pengumuan ini bersifat resmi yang isinya menyangkut segi-segi kedinasan, baik yang dibuat oleh instansi/organisasi maupun oleh seseorang.
Pengumuman sering kita jumpai di kampus berupa papan pengumuman. Papan pengumuman yaitu papan untuk mengumumkan hal-hal yang perlu diketahui banyak orang[2]. Di lingkungan kampus papan pengumuman biasanya ditempatkan dimana ia dapat dilihat dan dibaca dengan baik. Seperti di depan sektretariat fakultas dan jurusan. Informasi yang dipasang pada papan pengumuman kampus biasanya berisi informasi akademik, perkuliahan, lowongan kerja, maupun informasi mengenai suatu event yang akan diselenggarakan.
Papan pengumuman merupakan media informasi yang memiliki keuntungan yaitu media yang paling efektif, efisien dan murah. Tetapi media ini juga memiliki kekurangan yaitu media ini sering diacuhkan. Papan pengumuman sering diacuhkan karena banyak
(22)
papan pengumuman yang tidak terawat baik dari debu dan sampah kertas yang ditinggalkan. Di kampus juga demikian, banyak mahasiswa yang jarang sekali melihat papan pengumuman sehingga mahasiswa tersebut tidak tahu akan informasi yang beredar. Ada juga masalah yang ditimbulkan papan pengumuman seperti meninggalkan sampah kertas, banyak informasi yang menumpuk di papan pengumuman, tidak teratur dalam penempelan informasi dan harus ada orang yang mengganti dan merapikan pengumuman yang ditempelkan. Jika permasalahan tersebut teratasi maka papan pengumuman akan menjadi efektif dan akan menarik perhatian banyak orang.
Berdasarkan masalah tersebut, penulis berusaha mengembangkan sebuah media informasi agar dapat dimanfaatkan sebagai media yang dapat mengumumkan berbagai informasi dengan efektif, efisien dan menarik. Penulis akan membuat penampil informasi jarak jauh berbasis raspberry pi. Banyak penelitian yang sudah membuat sistem penampil informasi, salah satunya dilakukan oleh Antonius Heru Widodo yang berjudul “Aplikasi Raspberry Pi utuk Penampil Informasi Jarak Jauh Menggunakan Web Browser melalui jaringan 3G”. Dalam penelitian tersebut, difokuskan pada sistem yang dapat mengubah tampilan informasi menggunakan Raspberry Pi dengan memberi masukan informasi melalui web browser melalui jaringan 3G. Penggunaan jaringan 3G dan web browser bertujuan agar client dapat mengubah tampilan papan billboard elektronik dari jarak jauh selama komputer client terkoneksi jaringan internet. Dari hasil uji coba, sistem yang dibuat dapat mengubah dan menampilkan tampilan informasi menggunakan Raspberry Pi dengan baik. Sistem dapat mengubah tampilan informasi berupa gambar, slideshow, dan video dengan baik pada layar dari jarak jauh[3].
Dengan menggunakan konsep yang sama, tetapi dengan metode dan bentuk informasi yang berbeda, penulis mengubah bentuk dan menggunakan wireless sebagai penghubung antara PC dengan raspberry pi. Informasi akan dimasukan pada form yang telah disediakan oleh PC. Kemudian informasi tersebut akan menjadi paket data. Kemudian data akan dikirim transmitter. Kemudian akan diterima oleh modul receiver dan informasi tersebut akan diproses pada raspberry pi dan ditampilkan pada layar monitor. Informasi berupa teks dan akan ditampilkan dalam bentuk slideshows. Dan juga ada fitur masa berlaku informasi, sehingga ketika masa berlakunya sudah lewat maka informasi akan terhapus dengan sendirinya.
(23)
3
1.2
Tujuan dan Manfaat
Tujuan dari penelitian ini adalah :
1. Menciptakan alat penampil informasi jarak jauh berbasis raspberry pi. 2. Menghasilkan program interface untuk komunikasi serial nirkabel (wireless). Manfaat yang diharapkan dari penelitian ini adalah :
1. Sebagai sarana penyedia informasi yang efisien dan efektif. 2. Sebagai alternatif dalam mengurangi limbah kertas.
1.3
Batasan Masalah
Agar tugas akhir ini bisa mengarah pada tujuan dan untuk menghindari terlalu kompleksnya permasalahan yang muncul, maka perlu adanya batasan-batasan masalah yang sesuai dengan judul tugas akhir ini. Adapun batasan masalah adalah :
1. Menggunakan raspberry pi sebagai penampil informasi. 2. Informasi akan ditampilkan pada monitor.
3. Informasi masuk melalui form dengan menggunakan keyboard. 4. Informasi yang ditampilkan sejumlah 10 halaman slideshow. 5. Informasi berupa teks yang terdiri dari tujuh baris.
6. Dapat memilih ukuran dan jenis teks pada isi informasi. 7. Terdapat enam jenis teks.
8. Ukuran teks dari 34 - 44 dengan step dua.
9. Menggunakan Python sebagai program pembuat form dan penampil informasi. 10. Informasi memiliki background yang berjumlah enam buah.
11. Bila ada informasi baru, akan ada pemberitahuan suara melalui speaker. 12. Tampilan informasi berupa slideshows.
13. Resolusi slideshows 1366 x 768 pixels. 14. Menggunakan wireless dalam transmisi data.
15. Modul transceiver yang digunakan ialah modul Xbee. 16. Informasi memiliki masa berlakunya.
(24)
1.4
Metodologi Penelitian
Berdasarkan pada tujuan yang diinginkan dicapai metode-metode yang digunakan dalam penyusunan tugas akhir ini adalah :
1. Studi literatur, yaitu dengan cara mendapatkan data dengan membaca buku-buku dan jurnal yang berkaitang dengan permasalahan yang dibahas dalam tugas akhir ini. 2. Dokumenter, yaitu dengan mendapatkan sumber informasi berdasarkan data atau
arsip yang telah ada sehingga dapat membantu penulis dalam mengerjakan tugas akhir ini.
3. Eksperimen, yaitu dengan langsung melakukan praktek maupun pengujian terhadap hasil pembuatan alat dalam pembuatan tugas akhir ini.
4. Perancangan subsitem hardware. Tahap ini bertujuan untuk mencari bentuk model yang optimal dari sistem yang akan dibuat dengan mempertimbangkan berbagai faktor dan kebutuhan yang telah ditentukan. Gambar 1.1 menunjukan diagram blok sistem.
Keyboard PC Transmitter Reciever Raspberry Pi
Monitor Speaker
Mikrokontroler
Gambar 1.1 Diagram Blok Sistem
5. Perangkaian sistem hardware dan software. Sistem bekerja apabila informasi yang dimasukan oleh PC dikirim transmitter dan diterima receiver serta informasi diproses raspberry pi lalu ditampilkan pada monitor.
6. Proses pengambilan data. Pengambilan data dilakukan dengan cara memasukan beberapa informasi dengan. Data yang diambil adalah tampilan form informasi, paket data yang dikirimkan, tampilan informasi, waktu tampil, dan masa berlaku informasi. 7. Analisis dan penyimpulan hasil percobaan. Analisis data dilakukan dengan
membandingkan informasi yang dimasukan dari PC dengan tampilan informasi pada monitor dan menganalisa proses pengontrolan waktu tampil, identifikasi informasi dan data, masa berlaku tampil dan jumlah informasi yang ditampilkan. Penyimpulan hasil perancangan dilakukan dengan menghitung tingkat keberhasilan sistem penampil informasi.
(25)
BAB 2
TINJAUAN PUSTAKA
2.1
Sistem Telemetri
Telemetri adalah sebuah teknologi pengukuran jarak jauh dan melaporkan informasi kepada perancang atau operator sistem. Kata telemetri berasal dari bahasa Yunani yaitu tele artinya jarak jauh sedangkan metron artinya pengukuran. Secara istilah telemetri diartikan sebagai suatu bidang keteknikan yang memanfaatkan instrumen untuk mengukur panas, radiasi, kecepatan atau property lainnya dan mengirimkan data hasil pengukuran ke penerima yang letaknya jauh secara fisik, berada diluar dari jangkauan pengamat atau user[4].
2.2
Komunikasi Data
Komunikasi dapat diartikan sebagai cara untuk menyampaikan atau menyebarluaskan data dan informasi, sedangkan informasi adalah berita, pikiran, pendapat dalam berbagai bentuk.
Komunikasi data adalah bagian dari komunikasi yang secara khusus berkenaan dengan transmisi atau pemindahan data dan informasi diantara komputer-komputer dan piranti-piranti yang lain dalam bentuk digital yang dikirim melalui media komunikasi data. Data berarti informasi yang disajikan oleh isyarat digital. Komunikasi data adalah bangunan vital dari suatu masyarakat informasi karena sistem ini menyediakan infrastrukstur yang memungkinkan komputer-komputer atau piranti-piranti dapat berkomunikasi satu sama lain[4].
2.3
Komunikasi serial
Komunikasi serial ialah pengiriman data secara serial (data dikirim satu persatu secara berurutan. Keunggulan dari komunikasi serial ialah lebih murah, dan dapat digunakan untuk menghubungkan dua peralatan yang jauh.
Agar komunikasi serial dapat bekerja dengan baik, data byte harus diubah ke dalam bit-bit serial menggunakan peralatan yang disebut shift register parallel-in serial-out, kemudian data dikirimkan hanya dengan satu jalur data saja. Pada penerima bit-bit serial
(26)
yang diterimanya diubah menjadi data byte yang sama seperti data semula pada pengirim, dengan menggunakan shift register serial-in parallel-out. Tentu saja jika data serial tersebut dikirim menumpang jalur telpon, maka dibutuhkan peralatan pengubah status digital 0s atau 1s menjadi sinyal audio. Peralatan seperti ini kemudian disebut modem (modulator/demudulator). Modulator sebagai pengubah sinyal digital menjadi sinyal audio, sebaliknya Demodulator adalah sebagai mengubah kembali sinyal audio menjadi sinyal digital. Contoh dari komunikasi serial tedapat pada keyboard dan mouse[5].
2.3.1 Komunikasi Serial Synchronous dan Asynchronous
Komunikasi data serial mengenal dua buah metode, yaitu synchronous dan asynchronous. Metode sychronous mengirimkan datanya beberapa byte atau karakter (atau disebut blok data atau frame) sebelum meminta konfirmasi apakah data sudah diterima dengan baik atau tidak. Sementara metode asynchronous data dikirim satu byte setiap pengiriman. Biasanya tidak dibutuhkan konfirmasi penerimaan data. Dari kedua jenis metode tersebut dapat dipilih dan dilakukan lewat program. Tentu saja dibutuhkan program yang baik dan teliti untuk melakukannya. Namun dewasa ini proses pengiriman data serial tersebut sudah dilakukan oleh sebuah chip tersendiri (Hardware). Salah satu chip disebut UART (Universal Asynchronous Reciever Transmiter) dan satunya lagi disebut USART (Universal Synchronous Asynchronous Reciever Transmiter). Dalam protokol berbeda, sychronous memerlukan sinyal tambahan yang digunakan untuk mensychronisasi setiap denyut dari proses transfer. Gambar 2.1 menunjukan sinyal transisi sinkron.
Gambar 2.1 Sinyal Transmisi Sinkron [5]
Komunikasi data serial Asynchronous sekarang sudah digunakan demikian luas untuk transmisi yang berorientasi karakter, sementara metode Synchronous digunakan untuk transmisi yang berorientasi blok. Pada mode Asynchronous, setiap karakter
(27)
7
ditempatkan berada diantara bit start dan bit stop. Bit start selalu satu bit, tapi stop bit bisa satu bit atau dua bit. Start bit selalu 0 (low) dan stop bit selalu 1 (high). Contohnya, pada gambar 2 di mana karakter A (01000001 biner) dibingkai (dikurung) oleh start bit dan satu stop bit. Gambar 2.2 menunjukan Karakter ASCII "A".
Gambar 2.2 Pembingkaian Karakter ASCII "A"[5]
Pada komunikasi serial Asynchronous, peralatan dan modem dapat deprogram untuk menggunakan lebar data 7 atau 8-bit. Tentu saja ditambah dengan Stop bit. Dahulu, system karakter ASCII masih terbatas pada data 7-bit, namun sekarang ASCII extended sudah lazim menggunakan lebar data 8-bit. Pada peralatan kuno, dengan komponen-komponen yang lambat pula, dibutuhkan stop bit yang agak panjang, hal ini dimaksudkan untuk memeberi kesempatan peralatan untuk menangani data yang telah diterimanya, dan untuk mempersiapkan diri untuk menerima byte berikutnya. Namun sekarang modem PC kita dewasa ini biasanya hanya menggunakan satu bit stop. Jika kita hitung, dengan menggunakan satu bit stop total kita memiliki 10-bit untuk setiap karakter 8-bit. Dengan kata lain setiap karakter 8-bit dikirim bersama-sama start dan stop bit sehingga total menjadi 10-bit, yang artinya Ada proses transfer lebih panjang 20% setiap karakternya.
Pada sistem yang sangat mementingkan integritas data yang disimpan, maka ditambahkanlah bit paritas kepada bingkai data tersebut. Maksudnya untuk setiap karakter 8-bit kita masih menambahkan bit paritas disamping bit start dan bit stop. Sehingga total adalah 11-bit. Adapun bit paritas adalah bit yang menunjukkan bahwa data yang dimaksud adalah memiliki jumlah bit 1s (high) ganjil atau genap. Bit paritas adalah bit di luar data yang bersangkutan atau merupakan tambahan. Chip UART khusus biasanya sudah dilengkapi dengan keperluan paritas tersebut secara hardware. Bahkan ada beberapa pilihan untuk penanganan paritas ini, misalnya odd-, even- dan no-parity[5].
(28)
2.3.2 Data Transfer Rate
Kecepatan tranfer data pada komunikasi data serial diukur dalam satuan BPS (bitspersecond). Sebutan terkenal lainnya adalah baud rate. Namun Baud dan bps tidak serta merta adalah sama. Hal ini mengacu kepada fakta bahwa baud rate adalah terminology modem dan diartikan sebagai perubahan signal dalam satuan bit signal setiap detik. Sedang data tranfer rate penamaannya mengacu pada jumlah bit dari byte data yang ditransfer setiap detik. Sementara itu kecepatan transfer data (data transfer rate) pada komputer tergantung pada jenis komunikasi yang diberlakukan atasnya. Seperti contoh, komputer PC-IBM model kuno dapat mentransfer data mulai dari 100 s/d 9600 bps. Namun pada saat sekarang kecepatan komunikasi serial menjadi sangat pesat. 56.000 bps kemudian menjadi standar kecepatan pada modem. Namun para perancang komputer sepakat untuk membatasi kecepatan pada komunikasi serial Asynchronous hanya setinggi 100.000 bps. Untuk kecepatan yang lebih tinggi mode Synchronous kemudian menjadi pilihan[5].
2.4
Wireless
Teknologi yang menghubungkan dua piranti untuk bertukar data atau suara tanpa menggunakan media kabel. Data dipertukarkan melalui media gelombang cahaya tertentu (seperti teknologi infra merah pada remote TV) atau gelombang radio (seperti bluetooth pada komputer dan ponsel) dengan frekuensi tertentu.
Kelebihan teknologi ini adalah mengeliminasi penggunaan kabel yang cukup mengganggu secara estetika dan juga kerumitan instalasi untuk menggabungkan lebih dari dua piranti bersamaan.[6]
4.2.3 Modul Wireless Frekuensi 2,4 GHz Xbee Pro
Radio Frequency Tranciever atau pengirim dan penerima frequensi radio ini berfungsi untuk komunikasi secara nirkabel (wireless). Salah satu modul komunikasi wireless dengan frekuensi 2.4 Ghz adalah Xbee-PRO ZB ZigBee/IEEE 802.15.4 2.4GHz. Radio frequency tranciever ini merupakan sebuah modul yang terdiri dari RF receiver dan RF transmiter. Modul RF interface XBee/XBee-PRO ZB ini berhubungan dengan melalui logic-level asynchronous serial port. Melalui serial port ini, modul dapat berkomunikasi dengan logic dan voltage kompatibel Universal Asynchronous Receiver-Transmitter (UART) atau melalui level translator ke semua serial device contohnya pada RS-232 atau
(29)
9
USB interface board. UART adalah bagian perangkat keras komputer yang menerjemahkan bit-bit paralel data dan bit-bit serial. UART biasanya berupa sirkuit terintegrasi yang digunakan untuk komunikasi serial pada komputer atau port serial perangkat peripheral. Perangkat yang memiliki interface UART dapat terhubung langsung pada pin modul RF. Gambar 2.3. menunjukan hardware RF Xbee Pro.
Gambar 2.3 Modul XBee PRO[6]
Pada dasarnya, XBee memiliki 2 mode beroperasi yakni mode Transparent dan API. Akan tetapi, apabila mode API digunakan, dibutuhkan pemaketan data RF. Untuk itu, data akan di-buffer terlebih dahulu sebelum dikirim atau diterima. Flow data serial menjadi paket RF. Pada XBee apabila ada data input (DI), data akan masuk ke DI buffer. Setelah itu, input data akan diteruskan ke RF TX buffer, kemudian untuk mentransmisikan input data, posisi RF switch menjadi transmitter. Begitu juga sebaliknya, apabila ada data yang diterima, posisi RF switch menjadi receiver lalu data akan masuk RF RX buffer, kemudian data diteruskan ke DO buffer lalu menjadi data output (DO), kemudian DO diteruskan dari XBee ke host. Diagram data flow internal XBee dapat dilihat pada Gambar 2.4.[6]
Xbee menggunakan dua mode komunikasi data yaitu AT-mode dan API-mode. AT mode yang sering disebut transparent mode, merupakan komunikasi data dua titik. API mode merupakan pengiriman data berupa alamat tujuan dan tipe paket data. Penggiriman data dari API mode dilakukan satu per satu. Xbee memiliki tegangan kerja sebesar 3.3v. Gambar 2.5 menunjukan urutan pin pada xbee dan tabel 2.1. menunjukan konfigurasi pin xbee. Terdapat program X-CTU yang merupakan perangkat lunak untuk konfigurasi xbee sehingga dapat digunakan.
(30)
Gambar 2.4 Diagram Data Flow Internal[6]
Gambar 2.5 Konfigurasi Pin Pada Xbee[7] Tabel 2.1 Konfigurasi Pin Pada Xbee[7]
PIN Nama Keterangan Deskripsi
1 VCC - Sumber tegangan
2 DOUT output UART Data Out
3 DIN / CONFIG Input UART Data In
4 DO8* Output Digital Output 8
5 RESET Input Modul reset
6 PWM0 / RSSI Output PWM Output 0/ indicator
kekuatan sinyal RX
7 PWM1 Output PWM Output 1
8 Reserved - Tidak terhubung
9 DTR / SLEEP_RQ / DI8 Pin Sleep Control Line atau Digital Input 8
10 GND - Ground
11 AD4 / DIO4 Pilih salah satu Analog Input atau Digital I/O 4
12 CTS / DIO7 Pilih salah satu Clear-to-Send Flow Control
atau Digital I/O 7 13 ON / SLEEP Pilih salah satu Module Status Indicator
14 VREF Pilih salah satu Tegangan referensi untuk input A/D
(31)
11
Input 5 atau Digital I/O 5
16 RTS / AD6 / DIO6 Pilih salah satu Request-to-Send Flow Control,
Analog Input 6 atau Digital I/O 6
17 AD3 / DIO3 Pilih salah satu Analog Input 3 atau Digital I/O 3
18 AD2 / DIO2 Pilih salah satu Analog Input 2 atau Digital I/O 2
19 AD1 / DIO1 Pilih salah satu Analog Input 1 atau Digital I/O 1
20 AD0 / DIO0 Pilih salah satu Analog Input 0 atau Digital I/O 0
2.5
Raspberry pi
Raspberry Pi merupakan mini komputer yang menggunakan BCM28351 untuk mengintegrasikan sebuah prosesor (CPU), graphics processing unit (GPU), dan memori pada suatu unit tunggal. Ada lima jenis raspberry pi yaitu model B+, A+, B, A dan compute module. Bagian-bagian Raspberry Pi adalah sebagai berikut[8]:
1.Prosesor
Presesor berupa chip BCM28351, 700 MHz Speed System on a Chip , dengan arsitektur ARM. Raspberry Pi Model B dan compute module mempunyai RAM sebesar 512 MB dan Raspberry Pi Model A mempunyai RAM sebesar 256 MB [9].
2.Slot Secure Digital Card (SD Card)
Raspberry Pi mempunyai slot SD Card. SD Card dibutuhkan sebagai memory untuk menyimpan seluruh data. Pada Raspberry pi model B+ dan A+ menggunakan berukuran micro SD.
3.Port USB
Raspberry Pi Model B mempunyai 4 port USB , Raspberry Pi Model B mempunyai dua port USB, Raspberry Pi Model A dan A+ hanya mempunyai sebuah Port USB.
4.Port Ethernet
Raspberry Pi Model B+, B dan A+ mempunyai port Ethernet (RJ45). 5.Port HDMI
Port HDMI digunakan sebagai penyedia keluaran video dan audio digital. Sinyal HDMI mampu dikonversi menjadi DVI sehingga dapat digunakan untuk berbagai monitor.
6.Port camera interface
Port camera interface sebagai port yang menghubungkan raspberry pi dan kamera. 7.Port LCD display interface
(32)
Port LCD display interface sebagau port keluaran ke layar LCD. 8.Output Audio Analog
Port audio analog digunakan sebagai penyedia keluaran audio analog untuk speaker dengan jack standar 3,5mm mini analog audio jack.
9.Keluaran Composite Video
Jack standar tipe RCA menyediakan keluaran untuk sinyal video NTSC dan PAL. Selain itu terdapat port General Purpose Input/Output (GPIO) digunakan untuk berhubungan dengan suatu hardware eksternal. Raspberry Pi mempunyai 26 pin GPIO. Gambar 2.8. menunjukkan konfigurasi pin pada raspberry pi model B.[8]
Gambar 2.8. Konfigurasi Pin Pada Raspberry Pi Model B [10]
Pin 8 dan 10 pada port GPIO dapat digunakan untuk komunikasi serial dengan UART.
2.6 Python
Python ditemukan oleh Guido van Rossum. Python merupakan bahasa pemrograman aras tinggi. Program atau script Python dapat langsung dieksekusi, tidak perlu proses compiling ke kode mesin. Dalam Python, pemrogram tidak perlu menegaskan sebuah variabel berupa number, list, atau string . Python merupakan open source software. Bahasa pemrograman python masih dikembangkan dan diperbaiki.
1. Modul NumPy
(33)
13
kemampuan perhitungan N-dimensional arrays, operasi elemen-elemen, aljabar linier, dan mampu mengerjakan kode C/C++/Fortran.
2. Modul SciPy
SciPy merupakan paket yang menggunakan array NumPy dan memanipulasi data menggunakan permasalahan standar sains dan keteknikan seperti: integrasi, fungsi maksimum atau minimum, pemrosesan sinyal dan image, matriks serta statistika.
3. Modul RPi.GPIO
GPIO merupakan modul untuk mambaca dan mengendalikan port GPIO pada Raspberry Pi.
4. Modul Pexpect
Pexpect merupakan modul Python untuk mengendalikan suatu aplikasi secara otomatis.[10]
2.7
Tkinter
Tkiner merupakan salah satu media pengembangan antarmuka GUI yang disediakan Python. Tkinter (“Tk interface”) adalah library GUI standar untuk Python. Tkinter menyediakan interface yang berorientasi objek yang ampuh untuk toolkit Tk GUI.[11]
Tkinter menyediakan modul ekstensi biner bernama _tkinter. Modul ini berisi tingkat rendah antarmuka untuk Tk, dan tidak boleh digunakan langsung oleh programmer aplikasi. Ini biasanya merupakan library bersama (DLL atau), tapi mungkin dalam beberapa kasus dapat terhubung statis dengan interpreter Python. Untuk menggunakan Tkinter, kita harus mengimpor modul Tkinter dengan cara:
import Tkinter
atau,
from Tkinter import *
modul Tkinter hanya mengekspor widget classes dan konstanta terkait, sehingga aman untuk menggunakan bentuk from-in dalam banyak kasus. Jika ingin tidak menggunakan cara tersebut, tetapi ketika ingin menyimpan beberapa pengetikan. Anda dapat menggunakan import-as:
(34)
2.7.1 Widget Tkinter
Widget Tkinter menyediakan berbagai kontrol, seperti tombol, label dan kotak teks yang digunakan dalam aplikasi GUI. Kontrol ini biasanya disebut widget. Ada 15 jenis widget di Tkinter yaitu:
a. Button
Bottom widget untuk menampilkan tombol dalam aplikasi. b. Canvas
Canvas widget untuk menggambar bentuk, seperti garis, oval, poligon dan persegi panjang dalam aplikasi.
c. Checkbutton
Checkbutton widget digunakan untuk menampilkan sejumlah pilihan sebagai kotak centang. Pengguna dapat memilih beberapa pilihan pada suatu waktu.
d. Entry
Entry widget digunakan untuk menampilkan field teks single-line untuk menerima nilai-nilai dari pengguna.
e. Frame
Frame widget digunakan sebagai wadah widget untuk mengatur widget lainnya. f. Label
Label widget digunakan untuk memberikan keterangan single-line untuk widget lainnya dan dapat berisi gambar.
g. Listbox
Listbox widget digunakan untuk menyediakan daftar pilihan kepada pengguna. h. Menubutton
Menubutton widget digunakan untuk menampilkan menu dalam aplikasi anda. i. Menu
Menu widget digunakan untuk memberika berbagai perintah kepada penguna. Perintah-perintah ini terkandung di dalam menubutton.
j. Message
Message widget digunakan untuk menampilkan bidang teks multiline untuk menerima nilai-nilai dari pengguna.
k. Radiobutton
Radiobutton widget diguunakan untuk menampilkan sejumlah pilihan seperti tombol radio. pengguna hanya dapat memilih satu pilihan pada satu waktu.
(35)
15
l. Scale
Scale widget untuk menyediakan slider widget. m.Scrollbar
Scrollbar widget digunakan untuk menambah kemampuan bergulir ke berbagai widget, seperti kotak daftar.
n. Text
Text widget digunakan untuk menampilkan teks dalam beberapa baris. o. Toplevel
Toplevel widget digunakan untuk menyediakan wadah jendela yang terpisah. p. Spinbox
Spinbox widget adalah varian dari standar Tkinter entry widget, yang dapat digunakan untuk memilih sejumlah nilai-nilai tetap.
q. PanedWindow
PanedWindow adalah wadah widget yang mengandung beberapa panel yang disusun horizontal atau vertikal.
r. LabelFrame
Labelframe adalah wadah widget sederhana yang digunakan sebagai spacer atau wadah untuk jendela layout yang kompleks.
s. tkMessageBox
Modul ini digunakan untuk menampilkan kotak pesan dalam aplikasi.
2.7.2 Standard Attribute 1. Dimensions
Berbagai ukuran panjang, lebar, dan dimensi lain dari widget dapat digambarkan dalam banyak unit yang berbeda. Jika Anda menetapkan dimensi ke integer, itu diasumsikan dalam piksel. Tabel 2.2 menunjukan parameter ukuran dari dimensi.
Tabel 2.2 Parameter Ukuran Dimensi Karakter Deskripsi
C Sentimeter
I Inci
M Millimeter
(36)
2. Colors
Tkinter merepresentasikan warna dengan string. Ada dua cara untuk menentukan warna di Tkinter.
a. Anda dapat menggunakan string menentukan proporsi merah, hijau dan biru di digit heksadesimal. Misalnya, "# fff" putih, "# 000000" adalah hitam, "# 000fff000" hijau, dan "# 00ffff" adalah cyan (green plus biru).
b. Anda juga dapat menggunakan nama warna standar yang ditetapkan secara lokal. Warna "putih", "hitam", "merah", "hijau", "biru", "cyan", "kuning", dan "magenta" akan selalu tersedia.
3. Fonts
Ada tiga cara untuk mengatur fonts yaitu: a. Simple Tuple Fonts
Sebagai tuple yang elemen pertama adalah family font, diikuti dengan ukuran dalam poin, opsional diikuti oleh string yang berisi satu atau lebih dari pengubah gaya tebal, miring, garis bawah dan overstrike.
Contoh
("Helvetica", "16") untuk 16-point Helvetica biasa.
("Times", "24", "berani miring") untuk 24 titik Kali miring tebal. b. Font objek font
Anda dapat membuat "objek font" dengan mengimpor modul tkFont dan menggunakan Font yang konstruktor kelas.
impor tkFont
Font = tkFont.Font (options, ...) Berikut adalah daftar pilihan:
1) Famili: Nama keluarga font sebagai string.
2) size: Ketinggian huruf sebagai integer dalam poin. Untuk mendapatkan font n piksel tinggi, menggunakan -n.
3) weight: "bold" untuk tebal, "normal" untuk berat biasa. 4) slant: "italic" untuk miring, "roman" untuk normal.
5) underline: 1 untuk teks yang digarisbawahi, 0 untuk normal. 6) overstrike: 1 untuk teks telak, 0 untuk normal.
(37)
17
Jika Anda menggunakan X Window System, Anda dapat menggunakan salah satu nama X font.
Sebagai contoh, font bernama "- * - lucidatypewriter-medium-r - * - * - * - 140 - * - * - * - * - * - *" adalah favorit fixed-width font penulis untuk digunakan pada layar. Gunakan program xfontsel untuk membantu Anda memilih font yang anda sukai.
4. Anchors
Anchors digunakan untuk menentukan di mana teks diposisikan relatif terhadap titik acuan. Berikut adalah daftar konstanta yang mungkin, yang dapat digunakan untuk Anchor atribut.
a) NW b) N c) NE d) W
e) CENTER
f) E g) SW h) S i) SE
Gambar 2.9. Tampilan Anchors
Misalnya, jika Anda menggunakan CENTER sebagai jangkar teks, teks akan dipusatkan horizontal dan vertikal di sekitar titik referensi. Jangkar NW akan memposisikan teks sehingga titik referensi bertepatan dengan kiri atas sudut kotak berisi teks. Jangkar W akan berpusat teks secara vertikal di sekitar titik referensi, dengan tepi kiri kotak teks yang melewati titik itu, dan sebagainya. Jika Anda membuat widget kecil di dalam bingkai besar dan menggunakan jangkar option = SE, widget akan ditempatkan di sudut kanan bawah frame. Jika Anda menggunakan jangkar = N bukan, widget akan dipusatkan di sepanjang tepi atas. Gambar 2.9. menunjukan letak dari Anchors.
(38)
Relief styles dari widget mengacu kepada efek 3-D simulasi tertentu di sekitar bagian luar widget. Berikut adalah daftar konstanta yang dapat digunakan untuk attribute relief dan gambar 2.10 menunjukan tampilan dari attribute relief.
a) FLAT b) RAISED c) SUNKEN
d) GROOVE e) RIDGE
Gambar 2.10. Tampilan Attribute Relief 6. Bitmap
Atribut ini untuk menampilkan sebuah bitmap. Berikut ini jenis bitmap dan tampilannya pada gambar 2.11 sebagai berikut.
a) "error"
b) "gray75"
c) "gray50"
d) "gray25"
e) "gray12"
f) "hourglass"
g) "info"
h) "questhead"
i) "question"
j) "warning
(39)
19
7. Cursors
Python Tkinter mendukung cukup banyak kursor mouse yang berbeda. Grafis dapat bervariasi sesuai dengan sistem operasi.
2.7.3 Geometry Management
Semua widget Tkinter memiliki akses ke metode manajemen geometri tertentu, yang memiliki tujuan mengorganisir widget di seluruh induk widget daerah. Tkinter
memperlihatkan kelas manajer geometri : pack, grid, place.
1. Metode pack, Manajer geometri ini mengatur widget di blok sebelum menempatkannya di widget induk.
2. Metode grid, Manajer geometri ini mengatur widget di struktur tabel seperti di widget induk.
3. Metode place, Manajer geometri ini mengatur widget dengan menempatkannya dalam posisi tertentu di widget induk.[12]
2.8
Arduino Uno
Arduino uno merupakan papan mikrokontroler berbasis atmega 328p. Arduino uno memiliki 14 digital pin input/output (enam diantaranya dapat digunakan sebagai PWM output), 6 analog input, kecepatan clock 16 MHz, koneksi USB, ICSP header dan tombol reset. Arduino memilliki operation voltage sebesar 5 volt dan arus dc per i/o pin sebesar 20mA[14]Gambar 2.12 menunjukan tampilan hardware arduino uno. Konfigurai dari pin arduino dapat dilihat pada gambar 2.13.
(40)
Gambar 2.13 Konfigurasi Pin Atmega 328 Pada Arduino Uno[15]
Pemrograman pada arduino uno menggunakan bahasa C dan menggunakan arduino software (IDE) untuk memrogramnya. Atmega 328 pada Uno deprogram dengan bootloader sehingga dapat langsung mengupload program tanpa menambah hadware lagi. Komunikasi tersebut menggunakan protocol STK500. Fasilitas dari arduino uno untuk komunikasi dengan komputer ,antar arduino uno lain, atau dengan mikrokontroler lain. Atmega328 menyediakan serial komunikasi UART ( Universal Synchronous and Asynchronous Serial Receiver and Transmitter ) TTL 5V pada digital pin 0 (RX) dan 1 (TX).
2.8.1 Atmega 328
Atmega 328 merupakan mikrokotroler yang digunakan arduino uno. Atmega 328 memiliki fasilitas 32 kByte flash memory, 1 kByte Electrically Erasable Programable Read - Only Memory (EEPROM), 2 kByte internal Static Random Acess Memory (SRAM), 2 Timer / Counter 8 bit dan 1 Timer / Counter 16 bit, internal dan eksternal interrupt, USART, 2-wire Serial Interface, SPI port. Dan berikut ini adalah fungsi dari pin dari mikrokontroler atmega 328.[16]
1. VCC : sumber tegangan digital (5 V)
(41)
21
3. Port B(PB7:0) : merupakan port i/o digital yang memiliki resistor pull-up internal. PB1, PB2 dan PB3 dapat digunakan sebagai output PWM. PB6 sebagai input Oscillator amplifier dan PB7 sebagai output Oscillator amplifier untuk operasi clock internal.
4. Port C (PC5:0) : merupakan port i/o analog dan juga memiliki resistor pull-up internal.
5. PC6/RESET : merupakan port i/o yang digunakan sebagai input reset.
6. Port D (PD7:0) : merupakan port i/o digital yang memiliki resistor pull-up internal. PD0 digunakan sebagai RX dan PD1 sebagai TX dalam komunikasi serial UART. PD3, PD5 dan PD6 dapat digunakan sebagai output PWM.
7. AVCC : merupakan pin sumber tegangan pin untuk konversi analog ke digital.
8. AREF : merupakan pin tegangan reverensi untuk konversi analog ke digital.
(42)
BAB III
RANCANGAN PENELITIAN
Perancangan sistem Penampil Informasi Jarak jauh dengan Masukan Teks dari Keyboard berbasis Raspberry Pi, dibagi menjadi dua bagian utama yaitu.
1. Perancangan hardware yang terdiri dari PC, raspberry pi, monitor, speaker serta perangkat pendukung seperti, mikrokontroler, keyboard, modul transciever (xbee) dan power supply.
2. Perancangan software yang terdiri dari program form informasi, program penampil informasi dan subrutin-subrutinnya seperti subrutin identifikasi informasi, subrutin pengiriman dan penerimaan data menggunakan wireless, subrutin buka file teks dan subrutin identifikasi data pada raspberry pi.
Berikut merupakan keterangan cara kerja sistem yang ditunjukan Gambar 3.1.
1. Pemberian Informasi dilakukan dengan mengisi form yang tersedia menggunakan keyboard. Informasi berupa teks yang terdiri dari background, isi, tempat, waktu, pemberi informasi, dan sasaran. Program dalam PC akan mengolah data tersebut dan dijadikan sebuah paket data dan disimpan dalam sebuah file teks. Dan file tersebut akan melewati mikrokontoler dan dikirim transmitter ke sistem penampil.
2. File yang didapat receiver, akan diambil datanya dan informasinya akan diidentifikasi. Kemudian raspi akan menampilkan informasi pada monitor dan mengirimkan informasi bahwa informasi telah ditampilkan. Serta terdapat pemberitahuan suara bila ada informasi yang baru dimasukan. Terdapat masa berlaku informasi sehingga informasi akan ditampilkan dalam jangka waktu tertentu. Ketika masa berlakunya sudah habis maka informasi tersebut akan terhapus dengan sendirinya.
3. Keyboard, sebagai sarana untuk membantu memasukan informasi pada form informasi yang disediakan PC.
4. PC, sebagai tempat masuknya informasi dan mengolah informasi tersebut menjadi sebuah file yang akan ditampilkan.
5. Mikrokontroler, sebagai penghubung antara transmitter xbee dengan PC. Xbee menggunakan komunikasi serial UART dan TTL dari mikrokontroler.
(43)
23
6. Transmitter-reciever, merupakan komunikasi nirkabel atau wireless. Jenis komunikasi yang digunakan adalah komunikasi dua arah sehingga xbee berperan sebagai Transmitter-reciever . Modul wireless yang digunakan adalah xbee.
7. Raspberry pi sebagai penampil informasi pada monitor dan memiliki output suara yang akan dikeluarkan speaker.
8. Secara keseluruhan, informasi akan masuk melalui form yang tersedia pada PC. Kemudian PC akan mengubah informasi tersebut dalam sebuah paket data yang disimpa dalam file. Kemudian data tersebut akan dikirim oleh transmitter dan akan diterima receiver. Data tersebut akan diproses di raspberry pi. Raspberry pi akan menampilan informasi sesuai informasi masukan. Dan setelah masa berlakunya sudah habis informasi dengan sendirinya akan terhapus. Raspberry pi juga akan mengeluarkan output suara ketika ada informasi yang baru ditampilkan monitor.
PC Xbee PC
Sistem Masukan Informasi Arduino Uno Xbee Raspi Monitor Raspberry Pi Speaker
Sistem Penampil Informasi
(a) (b)
Gambar 3.2 Perancangan Perangkat Keras
3.1
Perancangan Perangkat Keras
Perancangan perangkat keras berupa perangkaian modul-modul yang dibutuhkan. Perancanagan perangkat keras terdiri dari dua sistem yaitu sistem penginputan informasi dan sistem penampil informasi. Gambar 3.2 menunjukan perancangan perangkat keras.
3.1.1 Konfigurasi Sistem Masukan Informasi
Sistem Masukan informasi terdiri dari tiga komponen penting yaitu PC, Arduino Uno, Xbee. PC dan Arduino Uno dihubungkan menggunakan komunikasi serial melalui USB. Penggunaa arduino uno untuk Xbee sebagai sumber tegangan xbee dan komunikasi serial untuk pengiriman data dari PC. Koneksi antara Arduino Uno dan Xbee dilakukan dengan menambahkan komponen perantara. Komponen tersebut adalah shield xbee. Shield Xbee merupakan board sebagai penghubung pin-pin Arduino dan pin Xbee. Pin tersebut
(44)
adalah Vcc dengan supply 3,3 volt dari arduino uno, GND dan Tx-Din untuk mengirimkan data serial dari PC ke Xbee sebagai transmitter dan pin Rx-Dout sebagai reciever. Komunikasi antar-port dapat dilihat pada Gambar 3.3.
Gambar 3.3 Konfigurasi Pin Xbee Dengan Arduino Uno
Gambar 3.4. Konfigurasi Pin Xbee Dengan Raspberry Pi
3.1.2 Konfigurasi Sistem Penampil Informasi
Sistem penampil informasi terdiri dari Xbee Reciever, Raspberry Pi, Monitor dan Speaker. Penghubung Xbee dan raspberry pi dilakukan dengan menghubungkan pin xbee dan pin raspberry pi. Pin tersebut ialah Vcc yang diambil dari 3V3 out dari raspberry pi,
(45)
25
GND, Din- GPIO14/UART_TX dan Dout-GPIO15/UART_RX sebagai penerima data ke raspberry pi sehingga terdapat board untuk menghubungkan xbee dan raspberry pi. Schematic dari board tersebut dapat dilihat pada Gambar. 3.4. Informasi ditampilkan oleh monitor yang berkomunikasi dengan raspberry pi melalui port HDMI dan pemberitahuan informasi baru oleh speaker menggunakan port audio analog dari Raspberry pi.
3.2
Perancangan Perangkat Lunak
Perangkat lunak dari alat yang dirancang terdri dari dua program utama yaitu program form informasi untuk memasukan dan mengirimkan informasi ke raspberry pi, dan program penampil informasi. Sistem menggunakan komunikasi dua arah sehingga masing-masing sistem berperan sebagai pengirim dan penerima.
3.2.1 Diagram Alir Program Form Informasi
Gambar 3.5 menunjukan tampilan Form dibuat menggunakan Tkinter yang merupakan fitur dalam python. Form akan ditampil pada PC yang beresolusi 1366 x 768 pixels.
Form pengisian informasi terdiri dari: 1. Background
Berupa listbox yang menyediakan enam jenis background. Ketika sudah memilih jenis background maka background pada form akan berubah sesuai pilihan. Data background berupa teks sehingga pada penampil akan memanggil nama background yang tersedia pada raspberry pi.
2. Jenis Font
Berupa listbox yang menyediakan enam jenis font. Sehingga dapat mengatur jenis tulisan pada isi teks. Enam jenis font yaitu times, arial, calibri, lucida, tahoma dan helsvitica.
3. Ukuran Font
Berupa listbox yang menyediakan ukuran font dengan rentang 34 sampai 44 dengan step dua.
4. Isi Informasi
Berupa label yang berukuran 2” x 8,3” dan menyediakan tiga baris teks. Tabel 3.1 menunjukan batasan jumlah karakter pada isi informasi di setiap barisnya dan dengan ketentuan jenis font adalah times.
(46)
Tabel 3.1 Ketentuan Jumlah Karakter Pada Isi Informasi.
No. Ukuran Font Jumlah Karakter dalam satu baris
1 34 34
2 36 32
3 38 30
4 40 29
5 42 27
6 44 26
Ketika jenis font-nya berbeda, jumlah karakternya juga berubah. 5. Isi Informasi Dari
Berupa label yang berukuran 0,62” x 4,58” menyediakan 19 karakter dengan ketentuan jenis font times dengan ukuran 32.
6. Isi Informasi Kepada
Berupa label yang berukuran 0,62” x 4,58” menyediakan 19 karakter dengan ketentuan jenis font times dengan ukuran 32.
7. Isi Informasi Waktu
Berupa label yang berukuran 0,62” x 4,58” , dengan format pengisian 00.00,_Day,_hh-bb-tttt. Jenis font times dengan ukuran 32. Informasi waktu dipakai sebagai masa berlaku informasi.
8. Isi Informasi Tempat
Berupa label yang berukuran 0,62” x 4,58” menyediakan 19 karakter dengan ketentuan jenis font times dengan ukuran 32.
9. Tombol Simpan
Tombol yang digunakan untuk menyimpan informasi menjadi file teks. 10. Tombol Tampil
Tombol yang digunakan untuk mengirimkan informasi dalam bentuk file teks agar informasi tersebut ditampilkan oleh raspi. Push button tampil akan aktif bila informasi telah tersimpan sebagai file teks.
11. Tombol Selesai
Tombol untuk menutup form informasi pada PC. 12. Tombol Database
Tombol berguna untuk melihat database informasi yang pernah masuk. 13. Frame
(47)
27
1
13
2 3
4
5
7 6
8
9 10 11
12
Gambar 3.5 Tampilan Form Pengisian Informasi. Ketentuan pengisian informasi sebagai berikut.
a. Jenis dan ukuran font hanya ditujukan untuk pengaturan font pada isi informasi. b. Jumlah karakter yang dimasukan tidak boleh melebihi batas karakter yang telah
ditentukan. Ketika jumlah karakter yang dimasukan melebihi batas karakternya akan ada pemberitahuan pada form bahwa informasi yang dimasukan salah.
c. Ketika jenis font diubah maka batas jumlah karakter pada isi informasi akan berubah. d. Informasi yang harus diisi ialah isi, waktu, tanggal dan tempat. Sedangkan informasi
dari dan kepada ditujukan untuk umum bisa diwakilkan dengan karakter (-).
e. Batas penginputan informasi adalah 10 informasi, ketika informasi yang dimasukan sudah 10 maka akan ada pemberitahuan informasi sudah penuh dan akan ada pemberitahuan apakah ada informasi yang ingin dihapus.
f. Ketika ada informasi yang telah melewati batas berlaku maka informasi tersebut akan terhapus dengan sendirinya.
(48)
Gambar 3.6 Isi File Teks
1 2 3
4
4
8
6
7
5 5
9
Gambar 3.7 Tampilan Database Informasi
Ketika tombol simpan ditekan maka informasi akan disimpan ke dalam file teks. File akan dinamakan dengan ID sesuai urutan masuknya informasi. Gambar 3.6 menunjukan tampilan isi dari file teks yang akan dikirim.
Gambar 3.7 menunjukan tampilan halaman database informasi. Database informasi terdiri dari dua yaitu data informasi yang ditampilkan pada monitor dan arsip informasi yang ditampilkan monitor. Database informasi terdiri dari.
(49)
29
1. Frame
Merupakan tempat meletakkan semua tools yang digunakan. 2. Informasi yang Tertampil
Terdiri dari tabel yang berisikan informasi yang sedang ditampilkan pada monitor dengan maksimal 10 informasi. Pada bagian ini informasi yang tertampil dapat dihapus pada monitor dan tidak dapat membuka file teks.
3. File Informasi
Terdiri dari tabel yang berisikan file informasi yang telah dan sedang ditampilkan. Informasi yang ditampilkan dapat berupa informasi yang sedang ditampilkan. File teks informasi dapat dibuka dengan menggunakan tombol buka.
4. ID
Merupakan nama dari file teks infomasi. 5. Isi Informasi
Tabel akan menampilkan isi informasi baris pertama. 6. Waktu
Berupa informasi waktu seperti tanggal, bulan dan tahun. 7. Tombol Hapus
Digunakan untuk menghapus informasi yang sedang ditampilkan. Tombol hapus tidak menghapus file teks. Cara menghapus informasi dilakukan dengan memilih file pada tabel lalu menekan tombol hapus.
8. Tombol Buka
Digunakan untuk membuka file teks informasi. Cara membuka dengan memilih file lalu menekan tombol buka. Gambar 3.8 menunjukan diagram alir buka file.
(50)
Mulai
Pilih informasi
Buka file teks informasi
Selesai File Ditemukan
Pemberitahuan File Tidak Ada YA
TIDAK
Gambar 3.8 Diagram Alir Buka File Teks
Mulai Inisialisasi Variabel data Input Informasi Penyimpanan Paket data Identifikasi Informasi Informasi <10 YA TIDAK Hapus Informasi YA TIDAK Menuju Halaman Data informasi
X Y Z
Output File Text Selesai Perngiriman Data Penerimaan Informasi Dari Raspi Pilih Informasi yang akan dihapus Hapus data (X-ID) Konfirmasi Informasi
X Y Z
(51)
31
Diagram alir dari program form informasi ditunjukan pada gambar 3.9. Informasi dimasukan melalui keyboard. Informasi akan masuk melalui form informasi yang telah dibuat. Pembuatan form menggunakan interface dari python. Kemudian informasi akan diidentifikasi apakah sesuai dengan ketentuan dari form tersebut. Apabila sesuai informasi akan disimpan menjadi file teks. Kemudian file akan dikirim transmitter ke receiver. Ketika informasi tampil pada monitor maka raspi akan mengirimkan informasi bahwa informasi tersebut telah ditampilkan. Ketika jumlah informasi sudah memenuhi batas informasi yang ditampilkan maka akan ada pemberitahuan bahwa informasi penuh dan ada pemberitahuan bahwa apakah ada informasi yang ingin dihapus. Ketika ingin menghapus informasi, user harus menuju halaman database dari informasi yang ditampilkan dan memilih informasi yang akan dihapus lalu klik push button hapus. Pc akan mengirimkan data berupa X-ID, dimana X merupakan variabel untuk perintah hapus dan ID adalah nama file yang akan dihapus. Dan setelah dihapus raspi akan mengirimkan informasi bahwa informasi telah terhapus.
3.2.2 Diagram Alir Subrutin Identifikasi Informasi
Diagram alir Subrutin identifikasi inforasi berupa proses pemeriksaan informasi agar sesuai dengan ketentuan dari form informasi. Pemerikasaan informasi dari isi, dari, kepada, waktu dan tempat. Pemeriksaan isi informasi dilakukan per baris. Sebelum pengecekan isi terdapat proses pemilihan jenis dan ukuran font, proses ini dilakukan untuk pengaturan isi informasi. Informasi dari, kepada, waktu dan tempat tidak dapat diatur font-nya. Pemeriksaan ini berupa pemeriksaan jumlah karakter agar tidak melebihi batas karakter yang telah ditentukan. Gambar 3.10 menunjukan diagram alir identifikasi data pada form informasi.
(52)
Mulai Pemilihan Jenis dan Ukuran Font IsiB1<Batas isi1 IsiB2<Batas isi2 IsiB3<Batas isi3 YA YA TIDAK TIDAK TIDAK
A
B
Kembali dr<Batas dari kpd<Batas kpd t<Batas waktu t4<Batas tempat Pemberitahuan Informasi salah YA YA YA YA YA TIDAK TIDAK TIDAK TIDAKA
B
Gambar 3.10 Diagram Alir Subrutin Identifikasi Informasi
3.2.3 Diagram Alir Subrutin Pengiriman Data
Gambar 3.11 menunjukan pengiriman data dari PC menuju raspi. Ketika menekan tombol tampil pada form informasi PC akan mengirimkan paket data menuju raspi. Sebelum mengirimkan data, data harus disimpan terlebih dahulu. Data yang dikirimkan berupa file teks. Bautrate yang digunakan 9600. Subrutin ini dimulai dari inisialisasi comm dan port yang digunakan, pengecekan port dan pengecekan penerima. Dan pada akhirnya mengirimkan data. Ketika comm dan port tidak aktif maka akan ada pemberitahuan pada form informasi. Terdapat dua jenis data yang dikirimkan yaitu data informasi berupa file teks dan data perintah penghapusan file (X-ID).
(53)
33
Mulai
Inisialisasi comm dan
port
Pengecekan xbee reciever Raspi
Kembali
TIDAK
Comm arduino uno
Port xbee
YA
YA
TIDAK
Pemberitahuan komunikasi error
Pengiriman data
Gambar 3.11 Diagram Subrutin Pengiriman Data
3.2.4 Diagram Alir Subrutin Penerimaan Informasi dari Raspi
Gambar 3.12 menunjukan diagram alir subrutin penerimaan informasi dari raspi. Penerimaan data dari xbee raspi berupa informasi bahwa informasi telah ditampilkan dan informasi telah dihapus.
3.2.5 Diagram Subrutin Konfirmasi Informasi
Gambar 3.13 menunjukan diagram alir subrutin konfirmasi informasi. Dari penerimaan data kemudian data diambil dan diperiksa. Data Y menunjukan informasi telah ditampilkan dan data Z bahwa informasi telah dihapus. Dari data tersebut akan dihitung jumlah informasi yang ditampilkan. Dan subrutin ini juga mengatur tampilan database informasi yang ditampilkan.
(54)
Mulai
Inisialisasi comm dan
Port
Kembali
TIDAK
Xbee port
Ada Data
YA
YA
TIDAK
Gambar 3.12 Diagram Alir Subrutin Penerimaan Informasi Dari Raspi
3.2.6 Diagram Alir Program Penampil Informasi
Gambar 3.15 menunjukan tampilan slideshows informasi pada monitor. Tampilan ini menyerupai tampilan form pengisi informasi. Perbedaannya tidak ada listbox dan tombol. Slideshows akan tampil selama satu menit dan ketika ada informasi baru yang masuk, akan ada pemberitauan suara dan informasi baru akan tampil setelah informasi terdahulu ditampilkan. Ketika belum ada informasi yang masuk maka raspi akan menampilkan layar utama. Jumlah informasi yang dapat ditampilkan adalah sepuluh buah dengan satu halaman utama sehingga ada 11 slideshows. Masa berlakunya informasi berupa waktu ditambahkan dengan waktu delay sehingga ada jeda waktu dalam menghapus informasi. Gambar 3.14 menunjukan tampilan awal slideshows.
Gambar 3.16 menunjukan diagram alir program penampil informasi. Ketika ada informasi yang baru diterima aka nada pemberitahuan suara. Pemberitauan suara berupa pengaktifan file suara (wav) pada memori raspi. Data akan diperiksa kemudian ditampilkan pada monitor. Setelah tampil informasi akan diperiksa masa berlakunya. Ketika masa berlakunya sudah selesai maka informasi tersebut akan terhapus dengan sendirinya.
(55)
35
Pemeriksaan masa berlaku setelah informasi ditampilkan di monitor. Ketika informasi baru akan tampil dan informasi dihapus maka raspi akan mengirimkan informasi ke PC.
Mulai
Penerimaan Data
Y Z
Pemberitahuan Informasi(ID)
telah tampil
Pemberitahuan Informasi(ID)
telah dihapus
Perhitungan jumlah informasi yang sedang ditampilkan
Kembali
(56)
Gambar 3.14 Tampilan Awal Slideshows
(57)
37 Mulai Inisialisasi variabel data Pengambilan Data Informasi Baru Pemberitahuan Suara (alarm) TIDAK YA Penerimaan Data Raspi Perintah hapus (X) TIDAK YA
M N O
Hapus informasi Selesai Identifikasi Data Informasi Tampil Masa berlaku > Waktu TIDAK YA Pemberitahua n informasi tampil Pemberitahuan informasi dihapus M N O
Gambar 3.16 Diagram Alir Program Penampil Informasi
3.2.7 Diagram Alir Subrutin Penerimaan Data Raspi
Penerimaan data raspi merupakan komunikasi antara xbee port Dout dengan port UART_RX pada raspi. Penerimaan data berupa inisialisasi port, pemeriksaan port, pengecekan data. Gambar 3.17 menunjukan diagram alir penerimaan data raspi.
3.2.8 Diagram Alir Subrutin Identifikasi Data
Identifikasi data berupa identifikasi data dari dan kepada. Setelah data diambil kemudian ada pengecekan data. Ketika data berisi (-) maka data dari dan atau kepada tidak ditampilkan. Gambar 3.18 menunjukan diagram alir subrutin identifikasi data.
(58)
Mulai
Inisialisasi Port Raspi
Kembali
TIDAK Xbee port
Ada Data YA
YA
TIDAK
Gambar 3.17 Diagram Alir Subrutin Penerimaan Data Raspi
Mulai
Kembali
dr =
kpd =
-kpd tidak ditampilkan
dr=dr
kpd=kpd
dr tidak ditampilkan
YA
YA
TIDAK TIDAK
(59)
39
3.2.9 Diagram Alir Subrutin Pemberitahuan Informasi Tampil
Gambar 3.19 menunjukan diagram alir subrutin pemberitahuan informasi tampil. ketika informasi baru akan tampil pada layar, raspi akan mengirimkan informasi berupa Y-ID, Y sebagai identitas bahwa informasi ditampilkan dan ID sebagai identitas informasi.
Mulai
Inisialisasi
Port Raspi
Pengecekan xbee
reciever PC
Kembali
TIDAK Port xbee
YA
Pemberitahuan
komunikasi error
Pengiriman data
Y-ID
Gambar 3.19 Diagram Alir Subrutin Peberitahuan Informasi Tampil
(60)
3.2.10 Diagram Alir Subrutin Peberitahuan Informasi Dihapus
Gambar 3.20 menunjukan diagram alir subrutin pemberitahuan informasi telah dihapus. Ketika informasi yang ditampilkan monitor akan dihapus, raspi akan memberikan informasi ke PC bahwa informasi yang ditampilkan telah dihapus. Pengiriman pemberitahuan informasi yang terhapus dengan mengirimkan data berupa Z-ID. Z adalah identitas bahwa informasi telah dihapus dan ID merupakan identitas informasi yang akan dihapus.
Mulai
Inisialisasi
Port Raspi
Pengecekan xbee
reciever PC
Kembali
TIDAK Port xbee
YA
Pemberitahuan
komunikasi error
Pengiriman data
Z-ID
(61)
BAB IV
HASIL DAN PEMBAHASAN
Bab ini berisi gambar fisik perangkat keras, pembagian kerja perangkat keras, pembahasan program yang telah dibuat dan hasil dari kinerja GUI pada PC dan raspberry pi(raspi). Data yang diambil berupa pengaturan tampilan slideshows yang akan ditampilkan, pemeriksaan informasi yang dimasukan, pemeriksaan masa berlakunya informasi, pengendalian informasi yang sedang ditampilkan, dan komunikasi dua arah antara PC dengan raspberry pi (raspi). Berdasarkan data-data tersebut, dilakukan analisis terhadap proses kinerja alat yang kemudian dapan digunakan untuk menarik kesimpulan.
4.1
Pembahasan Perangkat Keras
4.1.1 Perangkat Keras Pengisi Informasi
Gambar 4.1 Perangkat Keras Penampil Informasi
Gambar 4.1 menampilkan gambar fisik perangkat keras pengisi informasi. Terdapat perubahan perancangan perangkat keras yaitu PC terhubung dengan xbee menggunakan shield xbee. Perubahan perancangan dikarenakan shield xbee dapat memfasilitasi komunikasi serial pada sistem sehingga lebih effisien bila dibandingkan dengan
Ket: 1.PC 2.Port USB 3.Xbee dan
Shield Xbee
(62)
Perancangan perangkat keras. Perangkat keras pengisi informasi terdiri dari PC, shield xbee dan xbee pro s1. Jenis shield xbee yang digunakan ialah Foca 2.2v. Shield xbee sebagai penghubung xbee dengan PC dengan menggunakan port USB. PC sebagai tempat masuknya informasi melalui form yang telah tersedia. Xbee sebagai modul transceiver. Gambar 4.1 kotak kuning menampilkan shield xbee dan PC terhubung melalui port USB dan kotak hijau menampilkan xbee terhubung dengan shield xbee.
4.1.2 Perangkat Keras Penampil Informasi
Gambar 4.2 Perangkat Keras Penampil Informasi
Gambar 4.2 menampilkan gambar fisik dari perangkat keras penampil informasi. Perangkat keras pengisi informasi terdiri dari raspberry pi 2, monitor, speaker, mouse, keyboard, shield xbee dan xbee. Raspberry pi 2 sebagai otak dari perangkat keras penampil informasi. Monitor sebagai tempat menampilkan informasi yang dihubungkan dengan raspberry pi melalui port HDMI. Speaker akan mengeluarkan suara sebagai pemberitahuan bahwa ada informasi yang baru diterima yang dihubungan melalui port audio 3.5 mm. Shield xbee sebagai penghubung antara raspberry pi 2 dengan xbee melalui port USB. Xbee sebagai modul transceiver. Gambar 4.3 menampilkan gambar fisik dari raspberry pi 2 dan penggunaan port pada raspberry pi. Gambar 4.4 menampilkan gambar fisik dari shield xbee yang terhubung dengan xbee.
Ket:
1. Monitor
2. Xbee dan Shield Xbee 3. Raspberry Pi
4. Speaker 5. Mouse 6. Keyboard
(63)
43
Gambar 4.3 Raspberry Pi 2
Gambar 4.4 Shield xbee dan xbee
4.1.3 Pengaturan Xbee
Pengaturan xbee dilakukan dengan menggunakan program x-ctu. Pengaturan xbee dilakukan dengan mengatur ID – PAN ID, DL(Destination Address Low) dan MY(16-bit Source Adrress). Pengaturan DL untuk menentukan alamat yang dituju. Pengaturan MY sebagai alamat asal.
(64)
4.2
Cara Kerja Sistem
Gambar 4.5 Tampilan Form Informasi
Berikut cara kerja dari sistem penampil informasi jarak jauh dengan masukan keyboard berbasis raspberry pi.
4.2.1 Pemilihan Background, Jenis dan Ukuran Karakter
Pemilihan background, jenis dan ukuran karakter dilakukan dengan memilih data yang tersedia pada listbox masing-masing. Gambar 4.5 menampilkan tampilan dari form informasi, kotak merah merupakan listbox background, kotak hijau merupakan listbox jenis huruf dan kotak kuning merupakan listbox ukuran karakter. Pemilihan data dilakukan dengan cara pengguna meng-klik dua kali pada data yang diinginkan.
4.2.2 Pengisian Nomor Informasi
Pengisian nomor informasi dilakukan dengan mengisi angka pada entrybox yang ditampilkan gambar 4.5 pada kotak biru. Sebelum mengisikan nomor informasi, pengguna harus melihat nomor informasi pada tabel data informasi. Cara untuk membuka jendela database dengan menekan tombol database kemudian akan muncul jendela seperti gambar 4.6. Setelah pengguna mengetahui nomor informasi yang terakhir kali dimasukan, maka pengguna dapat mengisikan nomor informasi berikutnya. Gambar 4.6 kotak merah
(65)
45
menampilkan tabel data informasi dan kotak hijau menampilkan tabel informasi yang sedang ditampilkan.
Gambar 4.6 Tampilan Tabel Data Informasi Dan Tabel Data Informasi Yang Sedang Ditampilkan
4.2.3 Pengisian Data Informasi
Pengguna mengisikan data informasi melalui form yang tersedia. Pengisian informasi berupa teks dan dimasukan menggunakan keyboard. Pengguna dapat mengisikan spasi ketika ingin mengosongkan isi informasi dan tempat informasi.
4.2.4 Pemeriksaan Data Informasi
Pemeriksaan data informasi berupa pemeriksaan kelengkapan data informasi. Pemeriksaan data informasi dilakukan oleh sistem perangkat lunak. Pemeriksaan data informasi dimulai dari nomor informasi, isi informasi, waktu/tanggal dan tempat. Ketika data informasi tidak lengkap maka akan tampil pemberitahuan seperti pada gambar 4.7.
(66)
Gambar 4.7 Contoh Pemberitahuan Pemeriksaan Data Informasi
4.2.5 Pemeriksaan Data Waktu
Pemeriksaan data waktu merupakan perbandingan data waktu dengan waktu lokal. Pemeriksaan ini bertujuan untuk memastikan data waktu yang dimasukan benar sehingga dapat ditampilkan oleh raspberry pi. Ketika data waktu yang dimasukan salah maka sistem akan memberikan pemberitahuan bahwa data waktu salah gambar 4.8 menampilkan pemberitahuan data waktu salah, kotak merah menampilkan data waktu informasi dan kotak hijau menampilkan waktu lokal.
4.2.6 Penyimpanan Informasi
Penyimpanan informasi dilakukan dengan menekan tombol simpan pada form informasi. Informasi akan disimpan ke dalam database MySQL. Setelah disimpan akan ada pemberitahuan bahwa informasi telah disimpan dan data akan ditampilkan pada tabel data informasi. Gambar 4.9 menampilkan pemberitahuan bahwa informasi telah disimpan. Gambar 4.10 data informasi ditampilkan pada tabel data informasi.
(67)
47
Gambar 4.8 Pemberitahuan Data Waktu Salah
(68)
Gambar 4.10 Informasi Ditampilkan Pada Tabel Data Informasi
(69)
49
4.2.7 Pengiriman Informasi
Pengiriman informasi dilakukan dengan menekan tombol tampil pada form informasi. Tombol tampil aktif setelah informasi disimpan. Pengiriman informasi merupakan pengiriman data string dari PC. Setelah tombol tampil ditekan maka akan ada pemberitahuan bahwa informasi telah dikirim dan data pada form informasi akan terhapus seperti yang ditampilkan gambar 4.11.
4.2.8 Penerimaan Informasi
Data informasi yang dikirim PC akan diterima oleh raspberry pi. Data tersebut akan dimasukan ke dalam data array kemudian akan ada pemberitahuan bahwa informasi baru telah diterima dengan keluaran suara dari speaker. Gambar 4.12 menampilkan penerimaan data informasi.
(1)
List Program Pengisian Data Tabel Yang Sedang Ditampilkan
(2)
Lampiran Proses Pengaturan pada Raspberry pi
1) Pengaturan Resolusi Monitor melalui berry boot.
1. Hubungkan Raspberry pi dengan Monitor, keyboard dan mouse. 2. Hubungkan raspberry pi dengan sumber tegangan.
3. Setelah Jendela booting muncul pilih edit menu. 4. Pilih >>.
5. Klik edit config. 6. Pilih config.txt.
7. Atur hdmi-safe, hdmi-group, hdmi mode = 16 untuk resolusi 1024 x 736 pi. 8. Kemudian klik ok.
9. Pilih exit.
10. Kemudian kembali ke jendela berry boot.
11. Pilih boot, kemudian akan menuju jendela raspberry pi.
2) Penggunaan Modul Pada Raspberry pi
Untuk Menginstal modul, pengguna menggunakan program LXTerminal dan masuk dalam root dengan cara mengetik sudo –i sehingga modul dapat diinstal.
1. Modul Tkinter
Penggunaan modul tkinter ditujukan untuk membuat program GUI. Penginstalan modul Tkinter dilakukan menggunakan perintah apt-get seperti berikut
sudo apt-get install python-tk
penginstalan dilakukan menggunakan program LXTerminal dan raspberry pi terhubung dengan internet.
2. Modul Serial
Modul serial digunakan untuk komunikasi serial. Modul serial pada python disebut pyserial. Penginstalannya dilakukan dengan perintah sebagai berikut.
sudo apt-get install python-serial 3. Modul PIL
Modul PIL digunakan untuk menampilkan gambar. Penginstalan modul PIL sebagai berikut. Sebelum menginstal PIL, pengguna harus menginstal library jpg dengan cara.
(3)
sudo apt-get install libjpeg8-dev kemudian mengintal PIL.
sudo pip install PIL
3) Pengkodingan Pada LXTerminal sudo –i untuk masuk kedalam root. cd untuk pindah drive.
cp untuk menyalin file dari drive raspberry pi. mount untuk membuka port usb untuk flash disk.
(4)
Lampiran HDMI Mode dengan hdmi-group = 2 pada
https://www.raspberrypi.org/documentation/configuration/config-txt.md hdmi_mode resolution frequency notes
1 640x350 85Hz
2 640x400 85Hz
3 720x400 85Hz
4 640x480 60Hz
5 640x480 72Hz
6 640x480 75Hz
7 640x480 85Hz
8 800x600 56Hz
9 800x600 60Hz
10 800x600 72Hz
11 800x600 75Hz
12 800x600 85Hz
13 800x600 120Hz
14 848x480 60Hz
15 1024x768 43Hz incompatible with the Raspberry Pi 16 1024x768 60Hz
17 1024x768 70Hz 18 1024x768 75Hz 19 1024x768 85Hz 20 1024x768 120Hz 21 1152x864 75Hz
22 1280x768 reduced blanking
23 1280x768 60Hz 24 1280x768 75Hz 25 1280x768 85Hz
26 1280x768 120Hz reduced blanking
27 1280x800 reduced blanking
28 1280x800 60Hz 29 1280x800 75Hz 30 1280x800 85Hz
(5)
hdmi_mode resolution frequency notes 32 1280x960 60Hz
33 1280x960 85Hz
34 1280x960 120Hz reduced blanking 35 1280x1024 60Hz
36 1280x1024 75Hz 37 1280x1024 85Hz
38 1280x1024 120Hz reduced blanking 39 1360x768 60Hz
40 1360x768 120Hz reduced blanking 41 1400x1050 reduced blanking 42 1400x1050 60Hz
43 1400x1050 75Hz 44 1400x1050 85Hz
45 1400x1050 120Hz reduced blanking
46 1440x900 reduced blanking
47 1440x900 60Hz 48 1440x900 75Hz 49 1440x900 85Hz
50 1440x900 120Hz reduced blanking 51 1600x1200 60Hz
52 1600x1200 65Hz 53 1600x1200 70Hz 54 1600x1200 75Hz 55 1600x1200 85Hz
56 1600x1200 120Hz reduced blanking 57 1680x1050 reduced blanking 58 1680x1050 60Hz
59 1680x1050 75Hz 60 1680x1050 85Hz
61 1680x1050 120Hz reduced blanking 62 1792x1344 60Hz
63 1792x1344 75Hz
64 1792x1344 120Hz reduced blanking 65 1856x1392 60Hz
(6)
hdmi_mode resolution frequency notes 66 1856x1392 75Hz
67 1856x1392 120Hz reduced blanking 68 1920x1200 reduced blanking 69 1920x1200 60Hz
70 1920x1200 75Hz 71 1920x1200 85Hz
72 1920x1200 120Hz reduced blanking 73 1920x1440 60Hz
74 1920x1440 75Hz
75 1920x1440 120Hz reduced blanking 76 2560x1600 reduced blanking 77 2560x1600 60Hz
78 2560x1600 75Hz 79 2560x1600 85Hz
80 2560x1600 120Hz reduced blanking 81 1366x768 60Hz
82 1920x1080 60Hz 1080p
83 1600x900 reduced blanking
84 2048x1152 reduced blanking 85 1280x720 60Hz 720p