AVR Application Note AN187 Monitoring Suhu Nirkabel (Bahasa C)

dokumen-dokumen yang mirip
DT-AVR Application Note Monitoring Suhu Nirkabel (Bahasa BASIC)

DT-AVR Application Note

DT-AVR Application Note

DT-I/O DT-I/O. Application Note AN171

DT-I/O. DT-I/O Application Note

SPC SPC. SPC Application Note AN175 Bluetooth Mobile Robot. Application Note AN175

DT-AVR Application Note AN191 SMS Gateway dengan GSM STARTER KIT

PC-Link. Gambar 1 Blok Diagram AN201. AGND (J3 pin 1) Pin 1 VCC (J3 pin 2) Pin 3 Dapat dipilih salah satu dari A0 s.d. A7 (J3 pin 3 s.d.

DHT11 Temperature and Humidity Sensor Board Gambar 1 Blok Diagram AN196. 5V (Power) GND (Power)

Starter Kit Application Note AN165 - Update Tampilan Character LCD Berbasis USB Flash Disk

PC-Link. 1x Komputer / Laptop dengan OS Windows 2000, Windows XP atau yang lebih tinggi. Gambar 1 Blok Diagram AN200

DT-Sense Application Note

SPC Application Note. SPC Blue-Link (J2) Tabel 1 Hubungan SPC Blue-Link Dengan Komputer

PC-Link. PC-Link. Application Note AN202

DT-I/O DT-I/O. Application Note. Application Note AN193

DT-AVR Low Cost Micro System. Gambar 1 Blok Diagram AN154. RXD (J13 Pin 3) TXD (J8 Pin 4) GND (J10/J11/J12/J13 Pin 1) GND (J7/J8 Pin 1)

DT-AVR. Application Note AN214

DT-AVR Application Note. Gambar 1 Blok Diagram AN133

STARTER KIT Application Note AN162 Web Scrapping Dengan GSM STARTER KIT

DT-Sense Current Sensor With OpAmp Gambar 1 Blok Diagram AN212

DT-IO Application Note

DT-AVR Application Note

PC-Link Application Note

PC-Link Application Note

DT-AVR. AVR Application Note AN160 Graphic LCD Dengan Bahasa C. Application Note AN160

SPC Application Note. SPC IR Transceiver. Gambar 1 Blok Diagram AN159. RX (PORTD.0 J13 pin3 / J4 pin2)

DT-AVR DT-AVR Application Note

DT-I/O. I/O Application Notes AN164 Komunikasi Jarak Jauh antara 2 PC dengan RS-485. Application Note AN164

DT-AVR Application Note

DT-BASIC Application Note

AVR Application Note AN95 Wireless Chatting with PC

DT-51 Application Note

DT-SENSE Application Note

DT-AVR DT-AVR. Application Note AN203

DT-I/O. Application Note AN211. Komunikasi data saat ini terus dikembangkan dan diimplementasikan di dalam setiap bidang, seperti proses

DT-ARM Application Note. AN221 Web Server I/O Remote

DT-AVR. Application Note AN213

DT-51 Application Note

DT-51 Application Note

asic Application Note AN97 BASIC Chatting

DT-AVR. Gambar 1 Blok Diagram AN177

DT-BASIC Application Note

DT-SENSE Application Note

DT-AVR Application Note

DT-AVR Application Note

DT-PROTO Application Note AN219 Kontrol Lampu Secara Nirkabel berbasiskan Smarphone Android dan

DT-BASIC Mini System. Gambar 1 Blok Diagram AN132

AVR Application Note AN180 Simple Web Server

Gambar 1 Diagram Blok AN215. DT-AVR Maxiduino DT-Proto Header Shield DT-I/O Level Converter

DT-AVR Application Note

DT-AVR DT-AVR ApplicationNote

DT-BASIC Application Note

DT-SENSE Application Note AN168 Color Game. Gambar 1 Blok Diagram AN168

DT-AVR Low Cost Nano System. Gambar 1 Blok Diagram Remote TV Berbasis ATtiny2313. DT-I/O I/O Logic Tester

DT-51 Application Note

EMS Application Note. 1x Kabel USB 1x Komputer (Memiliki wireless adapter, serta wireless network melalui router atau program Connectify)

Application Note. Adapun blok diagram secara keseluruhan adalah sebagai berikut: AN156 Touch Screen Panel Graphic LCD 320 x 240

DT-AVR Application Note

BAB III PERANCANGAN SISTEM

DT-51 Application Note

BAB III DESKRIPSI DAN PERANCANGAN SISTEM

SPC SPC. SPC Application Note AN181 - SPC for Hexapod Robot

DT-AVR Application Note

DT-AVR Application Note

Gambar 1 Blok Diagram AN217. DT-AVR Maxiduino DT-Proto Header Shield DT-I/O Level Converter

DT-AVR Application Note. AN186 Digital Compass

DT Series Application Note

BAB II KONSEP DASAR PERANCANGAN

SureLink A. Gambar 1 Blok Diagram AN63

DT-AVR. Application Note AN192 - Web Based Temperature Monitoring System Oleh : Tim IE

WIZnet. Application Note AN178 Wireless IP Printer 1 Oleh : Tim IE

DT-ARM DT-ARM Application Note

Gambar 1 Blok Diagram AN190. P1.0 (J3 pin 3) IN1 (J1 pin3) Tabel 1 Hubungan antar PC-Link Serial PPI dan DT-I/O Quad Relay Board12V

DT-SENSE. Barometric Pressure & Temperature Sensor

DT-AVR. DT-AVR Application Note AN207 Library USB Controller untuk Komunikasi Serial pada DT-AVR Inoduino

Apllication Note AN155 Mini Reklame pada Graphic LCD 320 x 240

Gambar 3.1 Diagram Blok Alat

DT-51 Application Note

Gambar 1 Blok Diagram AN72. (a) (b) (c) Gambar 2 SPC Seven Segment (a), DT-51 Low Cost Micro System (b), dan DT-51 Low Cost Nano System (c)

WIZnet. Application Note AN179 Wireless IP Printer 2 Oleh : Tim IE

DT-51 Application Note

Akses SD Card & FRAM Menggunakan MCS-51. Oleh: Tim IE

GPS Starter Kit Application Note AN GPS - GPS Navigator. Oleh: Tim IE

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar

DT-SENSE. Temperature & Humidity Sensor

BAB III PERANCANGAN. 3.1 Diagram blok sistem

BAB 3 PERANCANGAN SISTEM

DT-SENSE Application Note

PC-Link Application Note

DT-SENSE. Temperature Sensor

DT-AVR Application Note

DT-AVR Application Note

BAB III PERANCANGAN SISTEM. untuk efisiensi energi listrik pada kehidupan sehari-hari. Perangkat input untuk

BAB III PERANCANGAN SISTEM

BAB IV PENGUKURAN DAN ANALISIS SISTEM. diharapkan dengan membandingkan hasil pengukuran dengan analisis. Selain itu,

DT-51 Application Note

Akses SD Card & FRAM Menggunakan AVR. Oleh: Tim IE

DT-AVR. DT-AVR Application Note AN208 Library USB Controller untuk Komunikasi Paralel pada DT-AVR Inoduino

BAB III PERANCANGAN. Dalam bab ini akan dibahas mengenai deskripsi alat, perancangan dan realisasi dari

DT-AVR. DT-AVR Application Note AN209 Library USB Controller with SPI Communication based DT-AVR Inoduino

Transkripsi:

D-AVR D-AVR AVR Application Note AN187 Monitoring Suhu Nirkabel (Bahasa C) Oleh: im IE Komunikasi data secara nirkabel (wireless) saat ini berkembang cukup cepat. Cukup banyak media komunikasi yang bisa digunakan untuk aplikasi komunikasi secara nirkabel seperti cahaya, suara, maupun RF (Radio Frequency). Monitoring suhu nirkabel pada aplikasi ini memanfaatkan media komunikasi RF dengan pita frekuensi 915 MHz menggunakan sepasang modul RF yaitu RX01 dan X02. Sepasang modul ini digunakan untuk mengirimkan data pembacaan suhu oleh D-SENSE emperature Sensor. Aplikasi ini terdiri dari 2 bagian yaitu bagian receiver (penerima) yang terhubung dengan komputer dan bagian transmitter (pengirim) yang terhubung dengan D-SENSE emperature Sensor. ransmitter akan mengirimkan data secara terus menerus ke receiver dengan interval waktu tertentu. Receiver akan mengolah data yang diterima kemudian dikirimkan ke komputer. Bagian transmitter terdiri dari D-AVR Low Cost Micro System (D-AVR LCMS) dan modul X02 sedangkan bagian receiver terdiri dari D-AVR LCMS dan modul RX01. Modul & komponen yang digunakan pada aplikasi ini adalah: 2x D-AVR LCMS. 1x modul RX01. 1x modul X02. 1x resistor 10 K/0.25W. 1 set kabel penghubung. Blok diagram aplikasi Monitoring Suhu Nirkabel sebagai berikut: X02 Module RX01 Module D-SENSE emperature Sensor D-AVR LCMS D-AVR LCMS ` ransmitter Receiver Gambar 1 Blok Diagram Aplikasi Monitoring Suhu Nirkabel Hubungan antar modul pada aplikasi ini sebagai berikut: D-AVR LCMS D-SENSE emperature Sensor VCC (J13 pin 2) VCC (J1 pin 2) GND (J13 pin 1) GND (J1 pin 1) PD.0 (J13 pin 3) X L (J1 pin 4) PD.1 (J13 pin 4) RX L (J1 pin 3) abel 1 Hubungan antara D-AVR LCMS dengan D-SENSE emperature Sensor secara serial Page 1 of 8

D-AVR LCMS VCC (J10 pin 2) GND (J10 pin 1) PA.4 (J10 pin 7) PA.5 (J10 pin 8) PA.6 (J10 pin 9) PA.7 (J10 pin 10) PD.2 (J13 pin 5) RX01 Module VDD GND NSEL SDI SDO SCK NIRQ abel 2 Hubungan antara D-AVR LCMS dengan RX01 Module D-AVR LCMS VCC (J10 pin 2) GND (J10 pin 1) PA.1 (J10 pin 4) PA.4 (J10 pin 7) PA.5 (J10 pin 8) PA.6 (J10 pin 9) PA.7 (J10 pin 10) X02 Module VDD GND FSK NSEL SDI NIRQ SCK abel 3 Hubungan antara D-AVR LCMS dengan X02 Module (ransmitter) (Receiver) Gambar 2 Bagian pengirim (transmitter) dan penerima (receiver) yang sudah dirakit D-SENSE emperature Sensor terhubung dengan D-AVR LCMS melalui antarmuka serial L. Konfigurasi komunikasi serial yang digunakan adalah 38400 bps, N, 8, 1. Oleh karena itu, jumper J4 & J5 pada modul D-AVR LCMS (bagian transmitter) harus dipasang pada posisi 2-3 (UAR L). Data temperatur yang dibaca pada D- Page 2 of 8

SENSE emperature Sensor adalah data temperatur dalam satuan derajat Celcius. Pembacaan temperature dimungkinkan juga dalam satuan derajat Fahrenheit dengan melakukan perubahan program. Selanjutnya data pembacaan temperatur oleh D-SENSE emperature Sensor akan diolah oleh D-AVR LCMS dan dipaket menjadi sebuah frame data sebelum dikirimkan melalui modul X02. Update data pembacaan temperatur dan pengiriman data secara nirkabel dilakukan setiap 500 ms. Data yang dikirim secara nirkabel via modul X02 akan diterima oleh modul RX02. Pada rangkaian modul RX01, perlu ditambahakan resistor sebesar 10K/0.25W dengan pemasangan sebagai berikut: Gambar 3 Letak pemasangan resistor 10K/0.25W Pin NIRQ pada modul RX01 dimanfaatkan sebagai indikator untuk mengetahui ada tidaknya data yang masuk ke buffer penerima modul RX01. Selanjutnya frame data yang diterima akan dikirimkan ke komputer untuk diurai (di-parsing) sehingga mendapatkan beberapa informasi yang diperlukan. Proses penguraian data yang diterima ini dilakukan oleh program pada komputer yang ditulis menggunakan bahasa BASIC dengan IDE Visual BASIC 6.0. D-AVR LCMS pada bagian receiver ini berfungsi untuk melakukan inisialisasi awal pada modul RX02 sebelum dapat menerima data dan meneruskan frame data yang diterima oleh modul RX01 ke komputer untuk pemrosesan lebih lanjut. D-AVR LCMS terhubung dengan komputer melalui antarmuka serial UAR RS-232, sehingga jumper J4 & J5 harus diatur pada posisi 1-2 (UAR RS-232). Jika komputer yang digunakan tidak memiliki port serial, maka dapat digunakan USB to Serial Converter sehingga D-AVR LCMS dapat terhubung dengan komputer melalui port USB. Setelah semua modul dihubungkan sesuai dengan tabel koneksi antar modul, hubungkan D-AVR LCMS dengan catu daya dan isikan program tx.hex ke D-AVR LCMS bagian pengirim (transmitter) dan program rx.hex ke D-AVR LCMS bagian penerima (receiver) menggunakan D-AVR USB ISP atau divais programmer lain yang kompatibel. Setelah proses pengisian program selesai, tekan tombol reset pada kedua modul untuk memastikan program dieksekusi mulai awal. Frame data yang dikirimkan oleh transmitter memiliki susunan sebagai berikut: SX [byte 1] NID [byte 2] C [byte 3] CS [byte 4] EX [byte 5] @ 1 [0x01 0x64] [0x01 0xFF] $ Keterangan: SX, merupakan awal frame data. SX menggunakan karakter @. NID, merupakan nomor ID sensor. Pada aplikasi ini digunakan nomor ID sensor 1. C, merupakan data suhu dalam satuan derajat Celcius. Range nilainya antara 0x01 sampai 0x64 atau 0 sampai 100 derajat Celcius. CS,merupakan nilai Check Sum dari frame data. Range nilai Check Sum antara 0x01 sampai 0xFF. Nilai Check Sum merupakan nilai penjumlahan data byte mulai awal frame sampai C dengan mengambil 1 byte data saja. EX, merupakan akhir frame data. SX menggunakan karakter $. Program pada komputer berupa sebuah GUI (Graphical User Interface) yang akan menampilkan frame data yang dikirimkan oleh modul X02 dan diterima oleh modul RX01. Program ini memanfaatkan komponen MSCOMM32.OCX pada Visual BASIC 6.0. Penerimaan data yang masuk ke komputer secara serial memanfaatkan event comevreceive (RS-232 Interrupt Service Routine) pada MSCOMM. Pada pemrosesan data di komputer juga dilakukan pengecekan validitas data kembali. Prinsip proses pengecekannya sama dengan proses pengecekan pada mikrokontroler. Hanya data yang valid saja yang akan ditampilkan pada textbox. Data pada textbox terdiri dari beberapa informasi seperti: Informasi waktu saat data diterima oleh komputer (berdasarkan waktu jam pada BIOS). Page 3 of 8

Informasi Node ID. Informasi ini akan bermanfaat jika D-SENSE emperature Sensor yang terpasang lebih dari 1. Informasi data suhu dalam satuan derajat celcius. Informasi nilai check sum dari frame data yang diterima. Gambar 4 ampilan GUI pada komputer saat dijalankan. Proses pengolahan data yang diterima saat terjadi even penerimaan data pada port serial komputer (comevreceive) dapat diilustrasikan pada flowchart berikut ini: comserver_oncomm Deklarasi variabel yang digunakan pada program Panjang buffer>=5 CommEvent= comevreceive Right(buffer,1)==EX A A ampilkan data buffer ke label Parsing data buffer PortOpen Hitung check sum simer=imer Buffer=buffer & comserver.input A Check sum sama ampilkan data ke textbox Kembali imer >simer + (DelayRX/1000) Gambar 5 Flowchart event comserver_oncom Page 4 of 8

Flowchart program tx.c pada bagian transmitter sebagai berikut: Mulai Inisialisasi & deklarasi variabel yang digunakan dalam program Inisialisasi komunikasi serial 38400 bps, N, 8, 1 Inisialisasi port yang terhubung dengan modul X02 Set parameter komunikasi modul X02 Delay 1000 ms Baca suhu D-SENSE emperature Sensor Susun frame data yang akan dikirim Kirim frame data melalui modul X02 Delay 500 ms Selesai Gambar 6 Flowchart program tx.c pada bagian pengirim (transmitter) Program tx.c pada D-AVR LCMS bagian pengirim (transmitter) dapat dijelaskan sebagai berikut: Pertama kali program akan medeklarasikan dan melakukan inisialisasi variabel-variabel yang digunakan pada program. Selanjutnya program akan melakukan inisialisasi komunikasi serial yang nantinya digunakan untuk mengakses D-SENSE emperature Sensor. Konfigurasi komunikasi serial yang digunakan adalah 38400 bps, N, 8,1 (disesuaikan dengan konfigurasi komunikasi serial modul D-SENSE emperature Sensor). Program melakukan inisialisasi port I/O mikrokontroler Amega8535 pada D-AVR LCMS yang terhubung dengan modul X02. Pin-pin modul X02 yang terhubung dengan modul X02 adalah VDD, GND, FSK, NSEL, SDI, SCK, dan NIRQ. Pin-pin modul X02 tersebut terhubung dengan POR A Amega8535 pada D-AVR LCMS. Kemudian program melakukan setting konfigurasi komunikasi modul X02. Setting konfigurasi meliputi beberapa hal sebagai berikut: 1. Pengaturan frekuensi kerja pada 915 MHz. 2. Pengaturan data rate pada 4800 bps. 3. Aktifasi Bit Sync (Bit Sinkronisasi). Program melakukan delay selama 1000 ms (1 detik). Program selanjutnya akan membaca data temperatur (dalam satuan derajat Celcius) dari modul D- SENSE emperature Sensor. Perintah yang digunakan untuk membaca data suhu dalam satuan derajat Celcius adalah READ EMPERAURE C dengan command 00H. Setelah melakukan pengiriman command 00H, program akan menunggu sekitar 30 ms untuk mendapatkan respon yang valid dari D- SENSE emperature Sensor. Page 5 of 8

Hasil pembacaan data suhu selanjutnya akan diproses oleh program dan dipaket menjadi sebuah frame data untuk dikirimkan melalui modul X02. Frame data yang telah selesai dipaket selanjutnya dikirimkan oleh modul X02 ke modul RX01. Kemudian program melakukan delay selama 500 ms. Program kembali melakukan pembacaan data suhu. Flowchart program rx.c pada bagian receiver sebagai berikut: Mulai Inisialisasi & deklarasi variabel yang digunakan dalam program Inisialisasi komunikasi serial 9600 bps, N, 8, 1 Inisialisasi port yang terhubung dengan modul RX01 PIND.2==0 Ambil data dari RX01 buffer, simpan di RF_RXBUF i++ Set parameter komunikasi modul RX01 i=0 i==5 Reset FIFO modul RX01 ChkSum=0 j=0;j<i-2;j++ ChkSum=ChkSum+RF_RXBUF[j] ChkSum==RF_RXBUF[i-2] Kirim frame data ke komputer Kirim data INVALID ke komputer Selesai Gambar 7 Flowchart program rx.c pada bagian penerima (receiver) Program rx.c pada D-AVR LCMS bagian penerima (receiver) dapat dijelaskan sebagai berikut: Pertama kali program akan melakukan deklarasi dan inisialisasi variabel-variabel yang digunakan dalam program. Page 6 of 8

Program melakukan inisialisasi komunikasi serial yang nantinya digunakan untuk komunikasi antara komputer dengan D-AVR LCMS. Konfigurasi komunikasi serial yang digunakan adalah 9600 bps, N, 8, 1. Komputer terhubung dengan D-AVR LCMS melalui komunikasi serial UAR RS-232. Program melakukan inisialisasi port I/O mikrokontroler Amega8535 pada D-AVR LCMS yang terhubung dengan modul RX01. Pin-pin modul RX01 yang terhubung dengan modul RX01 adalah VDD, GND, FSK, NSEL, SDI, SCK, dan NIRQ. Pin-pin modul RX01 tersebut terhubung dengan POR A Amega8535 pada D-AVR LCMS. Kemudian program melakukan setting komunikasi modul RX01. Setting konfigurasi yang dilakukan meliputi: 1. Pengaturan frekuensi kerja pada 915 MHz dan bandwidth komunikasi 134 khz. 2. Pengaturan data rate sebesar 4800 bps. 3. Aktifasi fungsi FIFO dan receiver mode untuk penerimaan data. Program melakukan inisialisasi variabel i=0, yang nantinya digunakan untuk pooling penerimaan data. Program selanjutnya melakukan pengecekan PIND.2. Jika nilainya 0 berarti pin NIRQ aktif. Hal ini menandakan bahwa ada data yang masuk ke buffer FIFO modul RX01. Jika terdeteksi ada data yang masuk ke buffer FIFO, maka program akan mengambil data tersebut dan selanjutnya diisikan ke variabel array RF_RXBUF dengan indeks sesuai nilai i. Selanjutnya nilai i diincrement. Selanjutnya program akan melakukan pengecekan nilai i. Jika nilai i=5 maka program akan me-reset buffer FIFO agar nantinya siap untuk menerima data yang baru. Selanjutnya dilakukan pemrosesan data yang diterima. Program melakukan inisialisasi variabel ChkSum=0 dan melakukan perhitungan check sum untuk mengetahui validitas data. Nilai ChkSum merupakan hasil penjumlahan seluruh data yang disimpan di variabel RF_RXBUF (kecuali data ke-(i-2)) dengan mengambil 8 bit data LSB. Selanjutnya dari hasil perhitungan check sum yang tersimpan di variabel ChkSum akan dibandingkan dengan nilai data RF_RXBUF[i-2] atau RF_RXBUF[3]. Jika nilainya sama maka data valid, jika tidak sama maka data tidak valid. Jika data valid selanjutnya data tersebut akan dikirimkan ke komputer. Jika data tidak valid maka program akan mengirimkan data Invalid ke komputer. Variabel I kemudian diset menjadi 0. Selanjutnya program akan melakukan pengecekan kembali nilai PIND.2 untuk memulai siklus pengeceken data kembali. Jika user memiliki modul LCD karakter seperti EMS LCD Display atau modul lain yang kompatibel, user dapat memantau proses pengiriman data pada sisi pengirim (transmitter). Data-data yang dapat di-monitoring adalah frame data yang dikirim, nilai check sum data, dan counter yang menunjukkan proses update pembacaan data suhu. Pada program sisi pengirim (transmitter) telah dialokasikan POR C untuk penggunaan LCD. User perlu melakukan modifikasi program dengan mengubah baris program berikut ini: Gambar 8 Posisi modifikasi pada program tx.c Page 7 of 8

Proses modifikasi ini bertujuan untuk mengaktifkan fitur DEBUG sehingga beberapa data tertentu bisa ditampilkan pada LCD yang dialokasikan untuk terpasang pada POR C D-AVR LCMS bagian pengirim (transmitter). Koneksi antara EMS LCD Display dengan modul D-AVR LCMS pada bagian pengirim (transmitter) sebagai berikut: D-AVR LCMS EMS LCD Display VCC (J12 pin 2) VCC (J3 pin 2) GND (J12 pin 1) GND (J3 pin 1) PORC.0 (J12 pin 3) RS (J3 pin 3) PORC.1 (J12 pin 4) R/W (J3 pin 4) PORC.2 (J12 pin 5) EN (J3 pin 5) PORC.3 (J12 pin 6) - PORC.4 (J12 pin 7) DB4 (J3 pin 7) PORC.5 (J12 pin 8) DB5 (J3 pin 8) PORC.6 (J12 pin 9) DB6 (J3 pin 9) PORC.7 (J12 pin 10) DB7 (J3 pin 10) abel 4 Koneksi antara D-AVR LCMS dengan EMS LCD Display Listing program aplikasi ini terdapat pada AN187.zip Selamat berinovasi! All trademarks, trade names, company names, and product names are the property of their respective owners. All softwares are copyright by their respective software publishers and/or creators. Page 8 of 8