Konfigurasi Xbee Kit Mikrokontroler Arduino Scilab

3.3.1 Konfigurasi Xbee

Konfigurasi kedua xbee dilakukan dengan menggunakan perangkat lunak XCTU yang dikembangkan oleh Digi International. Parameter yang dikonfigurasi antara lain : • Personal Area Network Identity PAN ID yaitu identitas dimana xbee harus terhubung. Hanya modul-modul dengan PAN ID yang sama yang dapat saling berkomunikasi. • Scan Channels SC yaitu mengatur dan membaca daftar kanal. • Destination Address High DH yaitu mengatur dan membaca 32 bit atas dari 64 bit alamat modul tujuan. • Destination Address Low DL yaitu mengatur dan membaca 32 bit bawah dari 64 bit alamat modul tujuan. Parameter ini diisi dengan alamat modul tujuan. DH dan DL disatukan untuk mendefinisikan alamat tujuan yang digunakan untuk transmisi.

3.3.2 Kit Mikrokontroler Arduino

Library yang digunakan untuk perangkat Arduino dalam sistem pengukuran ketinggian adalah Wire.h dan Adafruit_BMP085.h. Objek sensor BMP085 berupa “tinggi” dan variabel “input” berupa char dideklarasikan pada inisialisasi program. Kode program dapat dilihat pada lampiran 1. Pada fungsi setup, program akan menginisialisasi pengaturan serial dimulai untuk output dengan baud rate 9600, Wire.begin untuk memulai komunikasi I 2 C, dan tinggi.begin untuk memulai objek sensor BMP085. Pada fungsi loop, program akan menunggu masukan berupa input yang dikirim dari user scilab. Jika terdapat masukan berupa “R”, Arduino UNO akan mengirim string “Ready” dan ditampilkan di scilab. Jika masukannya berupa “P”, Arduino UNO akan menyuruh sensor BMP085 untuk melakukan pengukuran dan data tersebut akan dikirim dan ditampilkan di scilab secara real-time.

3.3.3 Scilab

Jendela aplikasi dibuat dengan menggunakan createWindow sebagai objek bernama gui. Ukuran, nama, warna latar, dan posisi diinisialisasi pada awal program. Ukuran window gui tidak dapat diatur. Handles dideklarasikan di awal program sehingga penggunaan handles tidak akan menimbulkan error. Kode program dapat dilihat pada lampiran 2. Tombol “Connect” akan memanggil fungsi connect dimana jika radio xbee sisi pengguna ke xbee sisi Arduino belum terhubung GUIstatus = 0 maka objek radio berupa serial dengan COM port 6 dan baud rate 9600 akan dibentuk dan dihubungkan serta string ”Ready” akan ditampilkan pada kotak status. Jika radio telah terhubung GUIstatus = 1 dan tombol “Connect” ditekan, maka akan muncul kotak dialog dengan pesan “Laptop telah terhubung ke Arduino”. Tombol “Disconnect” akan memanggil fungsi disconnect dimana jika radio masih terhubung GUIstatus = 1 maka hubungannya akan diputus dan objek radio ditutup. Jika radio tidak terhubung GUIstatus = 0 dan tombol “Disconnect” ditekan, maka akan muncul kotak dialog dengan pesan “Silahkan mengecek koneksi”. Tombol “Plot” akan memanggil fungsi dataPlot dimana data akan diterima dan digambarkan dalam 10 detik atau sampai diinterupsi. PLOTstatus = 1 menunjukkan bahwa data sedang diterima dan penggambaran grafik sedang berlangsung. Fungsi ini akan membuat SAVEstatus = 1 yang berarti bahwa sudah ada data yang dapat disimpan. Terdapat 40 data sampel yang diterima dan digambarkan dalam 10 detik, sehingga waktu yang diperlukan dalam penerimaan dan penggambaran sampel harus dihitung. Setiap pelaksanaan perintah dalam scilab membutuhkan waktu 1 ms. Pelaksanaan perintah plot membutuhkan 41 ms. Perintah sleep digunakan untuk menunda waktu dalam satuan ms dan untuk pelaksanaannya membutuhkan waktu 1 ms. Terdapat 5 perintah, 1 perintah plot, dan 1 perintah sleep yang dilaksanakan dalam perulangan. Berikut perhitungan untuk perintah sleep : Tundaan waktu yang dibutuhkan = 250 ms Pelaksanaan perintah sleep membutuhkan waktu 1 ms, sehingga : Tombol “Stop Plotting” akan memanggil fungsi stop yang akan menginterupsi dan menghentikan plot k = 1 jika penerimaan data dan penggambaran grafik sedang berjalan PLOTstatus = 1. Fungsi ini akan membuat SAVEstatus = 1 yang berarti bahwa sudah ada data yang dapat disimpan meskipun nantinya ada beberapa data yang bernilai 0. Tombol “Load” akan memanggil fungsi callDataLoad. Objek guiLoad berupa Window dibuat dan berisikan 2 kolom teks yang dapat diketik dan 1 tombol “Load” yang akan memanggil fungsi dataLoad. Nama berkas untuk H 1 dan H yang akan dimuat diketik di kedua kolom teks tersebut. Fungsi dataLoad akan memuat data dengan data dari nama berkas yang telah diketik sebelumnya. Grafik akan digambar ulang dengan data yang telah dimuat. Fungsi ini akan membuat SAVEstatus = 0 dimana data yang dimuat tidak dapat disimpan. Tombol “Save” akan memanggil fungsi callSaveExit. Objek guiSave berupa Window dibuat dan berisikan 1 kolom teks yang dapat diketik dan 1 tombol “Save” yang akan memanggil fungsi saveExit. Nama berkas untuk penyimpanan data diketik di kolom teks tersebut. Fungsi saveExit akan menyimpan data dengan nama berkas yang telah diketik sebelumnya jika SAVEstatus = 1 serta menutup GUI setelah 1 detik. 36

BAB IV ANALISIS DAN PENGUJIAN

4.1 Umum