BAB II TEORI DASAR 2.1 Pengukuran Ketinggian - Perancangan Sistem Pengiriman Data Sensor Altitude Yang Terpasang Pada Mikrokontroler Arduino Menggunakan Protokol Xbee

BAB II TEORI DASAR

2.1 Pengukuran Ketinggian

  Ketinggian merupakan posisi vertikal suatu objek dari titik tertentu yang berada pada suatu daerah. Ketinggian suatu daerah dipengaruhi oleh suhu dan tekanan udara. Tekanan udara disebabkan oleh gravitasi, dimana udara yang bermassa ditarik untuk berada sedekat mungkin dengan tanah. Sedangkan perubahan tekanan udara disebabkan oleh perbedaan suhu, dimana semakin tinggi suhu udara maka semakin tinggi pula tekanan udara pada daerah tersebut.

  Maka semakin tinggi suatu daerah, semakin rendah suhu udara yang menyebabkan tekanan udara menjadi rendah. Dengan menggunakan sebuah sensor, ketinggian suatu objek dapat diukur dengan menggunakan data tekanan dan temperatur [1].

  Ketinggian dalam satuan meter dapat dihitung dengan rumus barometrik internasional, yaitu [2] : ...................................... 2.1

  Keterangan : p = tekanan udara pada ketinggian h (hPa) p = tekanan permukaan air laut (1013,25 hPa)

  o

  L = gradien suhu (0,0065 Kelvin/meter) h = ketinggian (meter)

  o

  T o = suhu standar (15 C = 288,15 K)

  M = massa molar (0,0289644 kg/mol) R = konstanta gas universal (8,31447 J/mol.K)

  Sehingga dengan mensubstitusikan nilai konstanta yang ada, maka diperoleh nilai h (meter) :

  ....................................... 2.2

2.2 Komunikasi Data

  Pada awal tahun 2000an, para pemasok alat sensor meneliti cara-cara dalam memperkenalkan standarisasi. Jaringan nirkabel biasanya mengirim ukuran data sederhana yang kecil. Untuk aplikasi dalam gedung, perancang mengesampingkan standar IEEE 802.11b (Wi-Fi / Wireless Fidelity) untuk sensor karena terlalu kompleks dan bandwidth yang besar. Sistem infrared memerlukan line of sight, dimana tidak selalu dapat dicapai. Teknologi

  

bluetooth (IEEE 802.15.1) awalnya dipandang memungkinkan namun segera

  dianggap kompleks dan mahal. Ini membuka kesempatan bagi standar baru

  IEEE 802.15.4 bersamaan dengan ZigBee (ZigBee bergerak pada lapisan diatas

  IEEE 802.15.4). IEEE 802.15.4 beroperasi pada frekuensi 2,4 GHz dan kecepatan transmisi data hingga 250 kbps pada jarak 30 sampai 200 kaki.

  ZigBee / IEEE 802.15.4 dirancang untuk menyempurnakan teknologi nirkabel seperti bluetooth, Wi-Fi, dan ultra-wideband (UWB) serta aplikasi dimana koneksi kabel tidak memungkinkan, rendah daya dan biaya [3].

  Peneliti telah mengembangkan banyak protokol baru khusus untuk yang penting. Jaringan merupakan komponen yang penting dalam jaringan sensor dan standar mempunyai peranan penting. Tabel 2.1 menunjukkan beberapa protokol lapisan bawah yang diaplikasikan dalam wireless sensor network [3].

Tabel 2.1 Protokol Wireless Sensor Network Lapisan Bawah [3]

GPRS/GSM

  Bandwidth (Mbps) 0,064 – 0,128 + 11 – 54 0,7 0,020 – 0,25 Jarak transmisi (feet)

  sumber daya, dan komunikasi. Sistem prosesor adalah elemen utama dalam sebuah simpul dan ada beberapa pilihan prosesor, salah satunya adalah

  Wireless sensor node merupakan elemen utama dalam sebuah wireless sensor network . Simpul tersebut terdiri atas pendeteksian, pemrosesan,

  terdiri dari kumpulan simpul sensor yang tersebar di suatu area tertentu (sensor field). Setiap simpul sensor memiliki kemampuan untuk mengumpulkan data dan berkomunikasi dengan simpul sensor lainnya [3].

  Wireless Sensor Network (WSN) adalah suatu jaringan nirkabel yang

  3000 + 1 – 300 + 1 – 30 + 1 – 300 + Faktor perancangan Jangkauan dan kualitas transmisi Pendukung perusahaan,

skabilitas, dan

biaya Biaya, kemudahan dalam penggunaan Keandalan, daya, dan biaya

  Pengganti kabel Pengawasan dan pengontrolan

  1XRTT/CDMA

  Aplikasi perusahaan (data dan VoIP)

  PAN dan DAN WSN Konsentrasi aplikasi Suara dan data dalam daerah yang luas

  WLAN dan hotspot

  2.5G/3G Wi-Fi Bluetooth ZigBee Sasaran jaringan WAN/MAN

  IEEE 802.15.4 Nama standar di penjualan

  IEEE 802.15.1

  IEEE 802.11b/g

2.2.1 Wireless Sensor Network

  

Converter (ADC) sendiri yang dapat dihubungkan secara langsung ke

  prosesor melalui protokol chip-to-chip. Hubungan sistem komunikasi ke sistem prosesor dapat digunakan Serial Peripheral Interface (SPI) serial bus.

  Beberapa transceiver mempunyai prosesor sendiri untuk melakukan proses sinyal tingkat rendah yang berhubungan dengan physical layer dan data link

  layer [4].

Gambar 2.1 Arsitektur Wireless Sensor Node [4]

  Standar IEEE 802.15.4 dibuat untuk alat berdaya rendah yang beroperasi pada frekuensi 868 MHz, 915 MHz, dan 2,45 GHz. Kecepatan data standar ini adalah 20, 40, dan 240 kbps. IEEE 802.15.4 berfokus pada spesifikasi dua lapisan rendah dalam protokol (physical layer dan data link

  layer ) [4].

2.2.1.1 Wireless Sensor Network Physical Layer

  Sinyal pesan dari sensor merupakan sinyal analog. Sinyal tersebut adalah sinyal baseband (sinyal yang mempunyai frekuensi mendekati 0) dan harus dikonversi ke sinyal diskrit agar dapat diproses oleh prosesor. sampling rate menjadi dua kali sinyal bandwidth) sehingga tidak ada informasi yang hilang. Setelah sampling, sinyal diskrit akan dikonversi ke dalam bentuk biner. Proses ini disebut source encoding [4].

Gambar 2.2 Komponen dari Sistem Komunikasi Digital [4]

  Channel encoding bertujuan untuk memastikan sinyal yang dikirim

  kuat terhadap derau (noise) dan gangguan. Setelah channel encoding, sinyal akan dimodulasi, proses dimana sinyal baseband diubah menjadi sinyal bandpass. Tujuan utama modulasi adalah untuk mengirim dan menerima sinyal dengan antena yang pendek. Selanjutnya, sinyal yang dimodulasi harus diperkuat dan energi listrik diubah menjadi energi elektromagnetik oleh antena transmitter dan sinyal dipropagasi melalui media nirkabel ke tujuan yang diinginkan [4].

  Komponen dari receiver menerima sinyal pesan dari gelombang elektromagnetik. Antena receiver menginduksikan tegangan yang sama dalam bentuk, frekuensi, dan fasa dari sinyal modulasi. Setelah melalui menjadi sinyal baseband melalui proses demodulasi dan pendeteksian. Sinyal baseband menjalani proses pembentukan pulsa dan dua tahap

  decoding (kanal dan sumber) untuk mendapatkan urutan simbol-simbol yang mempresentasikan sinyal analog asli yaitu pesan [4].

2.2.1.2 Wireless Sensor Network Medium Access Control Layer Medium nirkabel digunakan bersama oleh beberapa alat jaringan.

  Oleh karena itu, sebuah mekanisme diperlukan untuk mengatur akses ke medium. Ini merupakan tugas lapisan kedua yaitu data link layer.

  Berdasarkan referensi IEEE 802, lapisan ini dibagi menjadi logical link

  control layer dan medium access control layer. Medium Access Control

  (MAC) layer beroperasi langsung diatas physical layer. Fungsi utama MAC layer adalah untuk menentukan kapan sebuah simpul dapat mengakses medium dan untuk menyelesaikan konflik antara simpul- simpul. MAC layer juga bertanggung jawab atas memperbaiki kesalahan komunikasi (communication error) yang terjadi pada physical layer dan menjalankan aktivitas lain seperti framing, addressing, dan flow control [4].

2.2.2 ZigBee

  ZigBee mempunyai elemen yang sama dengan Open System

  

Interconnection (OSI) layer yaitu physical, MAC, dan network (NWK)

layer. Sedangkan untuk transport, session, presentation, dan application

layer diatur di dalam Application Support (APS) layer dan ZigBee Device

  

Object (ZDO) layer. Seperti spesifikasi IEEE 802.15.4, ZigBee

  menggunakan dua Service Access Point (SAP) setiap lapisan, dimana satu untuk data dan satu untuk pengaturan. Sebagai contoh, semua komunikasi data dari dan ke jaringan melewati Network Layer Data Entity Service Access Point (NLDE-SAP) [5].

  IEEE 802.15.4 mendefinisikan dua lapisan paling bawah, yaitu

  

Medium Access Control (MAC) layer dan physical layer. Physical layer

menerjemahkan paket menjadi gelombang elektromagnetik dan sebaliknya.

  MAC layer menyediakan konsep dari jaringan, termasuk Personal Area

  

Network Identity (PAN ID), dan beberapa perintah untuk menghubungkan

  dan membentuk jaringan. Arsitektur ZigBee dapat dilihat pada gambar 2.3 [5].

Gambar 2.3 ZigBee dan IEEE 802.15.4 [5]

  NWK layer bertanggung jawab atas jaringan mesh dimana mencakup satu tujuan, dan memastikan paket terkirim dari simpul ke yang lain. APS

  

layer bertanggung jawab atas menyaring dan membuang paket untuk

endpoint (sebuah jalur maya yang menghubungkan simpul, satu simpul

  mempunyai 240 endpoint) yang tidak ada di simpul, paket yang tidak sesuai dengan identitas, serta paket duplikat. ZDO layer bertanggung jawab atas pengaturan jaringan lokal dan nirkabel, pencarian simpul lain dan layanan dalam jaringan, serta bertanggung jawab atas status dari simpul itu sendiri di jaringan [5].

2.2.2.1 ZigBee Frame

  Sebuah paket data ZigBee yang lengkap terdiri dari MAC, NWK, APS, dan ZigBee Cluster Library (ZCL) frame yang dapat dilihat pada

gambar 2.4. Lapisan yang lebih tinggi berada di dalam lapisan yang lebih rendah sehingga NWK frame berada di dalam MAC frame dan seterusnya

  [5].

Gambar 2.4 ZigBee Data Frame [5]

  Ukuran dari setiap frame tergantung pada parameter. MAC frame diakhiri dengan Frame Check-Sum (FCS) yang berfungsi untuk memastikan bit data benar. NWK frame diakhiri dengan NWK Auxiliary

  

Message Integrity Code (MIC) opsional yang berfungsi mencegah siapapun untuk mengubah paket. NWK Auxiliary Header dan NWK MIC ada hanya pada jaringan yang aman [5].

Gambar 2.5 ZigBee MAC dan NWK Header [5] MAC dan NWK keduanya mempunyai alamat tujuan dan sumber.

  Sebagai contoh, simpul A mengirim paket ke simpul F. Pengiriman pertama adalah dari A ke B, berikutnya adalah B ke C dan seterusnya.

  Sumber dan tujuan MAC akan berubah sesuai dengan perjalanan sedangkan alamat sumber dan tujuan NWK tidak [5].

2.2.3 Serial Data Communication

  RS-232 adalah standar komunikasi serial yang didefinisikan sebagai antarmuka antara perangkat terminal data (Data Terminal Equipment atau DTE) dan perangkat komunikasi data (Data Communication Equipment atau DCE) menggunakan pertukaran data biner secara serial. T x (transmit data) adalah sebuah keluaran pada DTE dan sebuah masukan pada DCE, sedangkan R x (receive data) adalah sebuah masukan pada DTE dan sebuah meredam derau frekuensi tinggi. Ferrite bead diserikan dengan catu daya

  Ferrite bead adalah sebuah komponen pasif yang digunakan untuk

  7 SG – – Signal ground

Gambar 2.6 RS-232 to USB menggunakan FT232R [6]

  22 RI DCE Kontrol Ring indicator

  9

  5 CTS DCE Kontrol Clear to send

  8

  4 RTS DTE Kontrol Request to send

  7

  6 DSR DCE Kontrol Data set ready

  6

  5

Tabel 2.2 Pin DB 9 dan DB 25 [6]

  20 DTR DTE Kontrol Data terminal ready

  4

  2 T x DTE Data Transmit data

  3

  3 R x DCE Data Receive data

  2

  8 CD DCE Kontrol Carrier detect

  1

  Sinyal Sumber Tipe Deskripsi

  Nomor pin (9 pin D-sub) Nomor pin (25 pin D-sub)

  • 1, 9 – 19, 21, 23 – 25 Tidak digunakan
    • – – –
    diradiasikan ke kabel USB. T x membawa data dari DTE ke DCE sedangkan R x membawa data dari DCE ke DTE. DCE menyatakan CTS (Clear To

  

Send ) ketika siap untuk menerima data dan DTE menyatakan RTS (Request

To Send ) ketika siap untuk menerima data. Sebelum mengirim, komputer

  membaca keluaran flow control komputer lain. Jika keadaan sinyal mengindikasikan bahwa penerima belum siap menerima data, maka pengirim menunggu [6].

  Transfer data Universal Serial Bus (USB) rentan terhadap delay yang tidak biasanya muncul pada sistem yang digunakan untuk transfer data menggunakan interupsi. Bandar Communication (COM) pada Personal

  

Computer (PC) berhubungan langsung dengan motherboard dan bebas dari

  interupsi. Ketika sebuah karakter dikirim atau diterima, Central Processing

  

Unit (CPU) akan diinterupsi dan menuju ke rutin untuk mengurus data

  tersebut. Ini berarti dengan baud rate dan kecepatan data tertentu, transfer data dapat dicapai tanpa memerlukan flow control. Dengan begitu, data dapat ditransfer tanpa menggunakan handshaking dan tetap sampai pada PC tanpa kehilangan [7].

  Data diterima dari USB ke PC dengan metode polling. Driver akan meminta jumlah data tertentu dari USB scheduler. Hal ini dilakukan dalam perkalian 64 byte. Ukuran paket terbesar dari USB adalah sebuah maksimum dari 64 byte. Driver akan membaca data dari alat baik sebuah paket dengan ukuran lebih kecil dari 64 byte diterima atau panjang ukuran data yang diminta telah tercapai. Ukuran paket akan mempengaruhi kinerja dan tergantung pada kecepatan data. Untuk kecepatan yang sangat tinggi, ukuran paket terbesar diperlukan [7].

2.3 Mikrokontroler

2.3.1 Arsitektur Mikrokontroler

  Secara sederhana dapat disebutkan bahwa mikrokontroler adalah mikroprosesor yang dilengkapi dengan periferal dan peralatan pendukung yang tidak dimiliki mikroprosesor. Mikrokontroler menerapkan arsitektur Harvard yang menyimpan program dan data dalam memori yang terpisah.

  Dengan arsitektur Harvard ini, penjemputan instruksi dapat dilaksanakan secara bersamaan dengan pemindahan data. Terdapat beberapa produsen mikrokontroler, antara lain : Intel dengan rumpun MCS-51 dan AVR, Motorola dengan rumpun MC68HC, National dengan rumpun COP8, Mikrochip dengan rumpun PIC, yang masing-masing juga ditawarkan dalam puluhan tipe, mulai dari yang sederhana sampai dengan yang sudah kompleks. Mikrokontroler ini juga sudah dibuat dalam teknologi Reduced

  Instruction Set Computer (RISC) dan RISC-like, dimana satu instruksi dapat dilaksanakan dalam satu periode penabuh (clock) dasar [8].

  Secara umum, terdapat tujuh komponen dalam mikrokontroler, yaitu [8] : 1.

  Prosesor (CPU) Prosesor (CPU) melaksanakan penjemputan instruksi dari memori, mendekodekan dan menjalankannya serta mengarahkan perpindahan data antar register atau antara register dengan memori. Register dalam mikrokontroler pada umumnya dipetakan sebagai memori atau

  Random-Access Memory (RAM). Semua kegiatan ini diserempakkan

  oleh penabuh (clock) yang dibangkitkan oleh pembangkit penabuh (Clock Generator) yang dicatu oleh osilator kristal, Resistor-Capasitor (RC) atau sumber luar.

Gambar 2.7 Komponen Mikrokontroler [8] 2.

  Read-Only Memory (ROM) ROM digunakan untuk menyimpan data yang bersifat permanen.

  Dalam mikrokontroler, program disimpan dalam ROM, Electrically

  Erasable Programmable Read-Only Memory (EEPROM) atau Flash ROM . Ada mikrokontroler yang dapat ditambah ROM eksternal di luar

  serpih mikrokontroler. Dalam beberapa mikrokontroler, EEPROM juga digunakan untuk menyimpan data.

3. Random-Access Memory (RAM) RAM digunakan untuk menyimpan data yang bersifat sementara.

  Dalam kebanyakan mikrokontroler, RAM yang tersedia sangat sedikit dan sebagian dari RAM digunakan sebagai register prosesor, dikatakan register dipetakan sebagai memori.

  4. Pewaktu Pewaktu (timer) adalah counter (pencacah) yang digunakan untuk membangkitkan pulsa atau deretan pulsa pada saat-saat tertentu atau dengan frekuensi tertentu. Pulsa ini digunakan sebagai interupsi internal untuk memulai atau mengakhiri kegiatan tertentu. Dalam kebanyakan mikrokontroler, pencacah ini adalah pencacah naik, berbeda dengan pencacah turun yang diterapkan dalam sistem mikroprosesor.

  5. Bandar Input/Output (I/O) Bandar I/O (I/O ports) yang dipetakan sebagai memori terdiri atas bandar paralel dan bandar seri yang pada umumnya mempunyai kemampuan tristate. Arah aliran bandar data pada umumnya dipilih melalui register arah (Data Direction Register atau DDR).

  6. Interupsi Interupsi dapat dibedakan atas interupsi perangkat lunak yang dibangkitkan oleh instruksi interupsi yang ditanamkan dalam program dan interupsi perangkat keras yang dibangkitkan oleh sinyal perangkat keras baik yang berasal dari sumber internal seperti pewaktu atau sumber eksternal dari bandar seri atau paralel. Masing-masing interupsi ini dapat dihalang (masked) atau dimampukan (enabled) tersendiri melalui bit tertentu dan pada umumnya dapat juga dikendalikan secara menyeluruh melalui bit tertentu yang disebut bit

  General Interrupt Enable (GIE) dalam register status. Di samping itu ada juga interupsi yang tidak dapat dihalang (unmaskable).

7. Bus Bus adalah saluran yang membawa sinyal-sinyal perangkat keras.

  Sebagaimana dalam mikroprosesor, bus dibedakan atas bus data, alamat, dan kontrol. Bus data membawa data antara register dan memori atau I/O. Ukuran bus ini menunjukkan ukuran data (bit) yang disimpan dalam setiap register atau memori. Bus alamat menunjuk nomor alamat memori dari/ke mana data disimpan. Ukuran bus ini menunjukkan ukuran memori yang dapat diakses prosesor. Bus kontrol membawa sinyal-sinyal yang mengendalikan kegiatan sistem termasuk di dalamnya sinyal-sinyal pewaktuan dan interupsi. Bus data dan bus alamat bersifat dua arah sedangkan bus kontrol bersifat satu arah.

2.3.2 Universal Asynchronous Transmitter / Receiver

  Universal Asynchronous Transmitter / Receiver (UART) adalah bagian

  dari sebuah perangkat keras atau integrated circuit yang digunakan dalam komunikasi serial antara komputer atau periferal. UART mengkonversi data diantara bentuk paralel dan serial. UART biasanya sudah termasuk ke dalam mikrokontroler [9].

  Setiap byte data terdiri atas bit start (rendah), 8 bit data (least

  

significant bit first ), dan bit stop (tinggi). Bit start memberi sinyal kepada

  penerima bahwa terdapat data baru yang masuk. Jika terdapat bit parity yang digunakan, bit tersebut akan diletakkan setelah bit data. Baud rate, parity, bit start, banyaknya bit stop dan bit data harus dikonfigurasi diantara dua UART untuk berkomunikasi [10].

Gambar 2.8 Paket Data UART [10]

2.3.3 Inter-Integrated Circuit

  2 Inter-Integrated Circuit (I C) adalah bus serial sinkron half-duplex.

2 I C mempunyai 2 bidirectional bus, yaitu Serial Clock (SCL) dan Serial

  Data Analyzer (SDA). Setiap induk menghasilkan sinyal penabuh masing-

  masing sehingga alat-alat yang berkomunikasi harus sinkronisasi kecepatan penabuh mereka. Jika tidak, budak yang lambat dapat salah mendeteksi alamatnya pada bus SDA sementara induk yang cepat sedang mengirim data ke alat ketiga [4].

2.4 Pemrograman

  Scilab adalah perangkat lunak open source dan cross-platform dengan paket komputasi numerik dan bahasa pemrograman tingkat tinggi berbasis numerik. Scilab dapat digunakan untuk pemrosesan sinyal, analisis statistik, peningkatan gambar, simulasi cairan dinamis, optimisasi numerik, pemodelan dan simulasi sistem dinamis, dan manipulasi simbolik. Scilab adalah alternatif open source yang lengkap dari Matlab [11].

  Scilab memuat ratusan fungsi matematis. Beberapa fungsi yang ada di dalam scilab [11] :

  • Matematika dan simulasi untuk aplikasi teknik dan sains umum termasuk operasi matematis dan analisis data.
  • Visualisasi dua dimensi dan tiga dimensi yaitu fungsi grafis untuk menggambarkan dan menjelaskan serta membuat dan menyesuaikan berbagai macam jenis plot dan grafik.
  • Rancangan dan analisis sistem kontrol.
  • Pemrosesan sinyal menggambarkan, menganalisis dan menapis sinyal dalam domain waktu dan frekuensi.
  • Xcos – pemodelan dan simulasi sistem dinamis seperti pemodelan sistem mekanik, rangkaian hidrolik.

  Sistem operasi yang dapat digunakan untuk scilab 5.5.1 yaitu [12] :

  • Windows : 32-bit dan 64-bit untuk Windows XP, Windows Vista, Windows 7, dan Windows 8.
  • Mac OS dengan perangkat lunak java 6 : Mac OS X 10.6.x (Snow

  Leopard), Mac OS X 10.7.x (Lion), Mac OS X 10.8.x (Mountain Lion), Mac OS X 10.9.x (Mavericks), dan Mac OS X 10.10.x (Yosemite).

  • GNU/Linux : 32-bit dan 64-bit untuk CentOS, Debian, Redhat, Fedora, Suse, dan Ubuntu.