Akuisasi data dengan remote host AT89s51 melalui serial RS232

dokumen-dokumen yang mirip
Gambar Komunikasi serial dengan komputer

ANTAR MUKA DST-51 DENGAN MODUL AD-0809

BAB III RANCANGAN DAN CARA KERJA ALAT

PERCOBAAN 9 T I M E R/ COUNTER

Percobaan 6. SERIAL INTERFACE Menggunakan DT-51 MinSys

BAB IV PENGUJIAN DAN ANALISA. Pengujian terhadap sistem yang telah dibuat dilakukan untuk mengetahui

Wireless Infrared Printer dengan DST-51 (Pengambilan Data dari Standard Parallel Port)

Wireless Infrared Printer dengan DST-51 (Komunikasi Infra Merah dengan DST-51)

PORT SERIAL MIKROKONTROLER ATMEL AT89C51

Register-register MT8888

Percobaan 8 INTERFACE MIKROKONTROLER DAN KOMPUTER SECARA SERIAL

AD Channel AD Conversion

Gambar 3.1 Blok Diagram Port Serial RXD (P3.0) D SHIFT REGISTER. Clk. SBUF Receive Buffer Register (read only)

BAB III PERANCANGAN SISTEM

BAB III DESKRIPSI DAN PERANCANGAN SISTEM

PC-Link Application Note

PERCOBAAN 10 PORT SERIAL

ANALOG TO DIGITAL CONVERTER

4. Port Input/Output Mikrokontroler MCS-51

DT-BASIC Mini System. Gambar 1 Blok Diagram AN132

KOMUNIKASI DATA DENGAN MENGGUNAKAN TEKNIK RS485

Percobaan 5 PENGENALAN MIKROKONTROLER 8051

SISTEM PENGONTROLAN ALAT ELEKTRONIK DENGAN MEDIA KOMPUTER DAN MIKROKONTROLER AT89C51 MELALUI MEDIA KOMUNIKASI SERIAL PORT RS232

PERCOBAAN 15 I N T E R U P S I

Menampilkan nilai dari 8 kanal ADC ke Port Serial PC oleh Modul ST-51 dan AD-0809 V2.0

BAB V HASIL DAN PEMBAHASAN Perangkat Keras (Hardware)

BAB III ANALISA DAN CARA KERJA RANGKAIAN

Memprogram Interupsi AT89S51

BAB IV HASIL PENGUKURAN DAN PENGUJIAN ALAT SISTEM PENGONTROL BEBAN DAYA LISTRIK

Percobaan 5. TIMER/COUNTER Menggunakan DT-51 MinSys

BAB III PERANCANGAN DAN IMPLEMENTASI. Pada tugas akhir ini akan dibuat sebuah perangkat keras PLC dengan fasilitas

Memprogram Port sebagai Output dan Input Sederhana

TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD

BAB IV PENGUJIAN DAN ANALISA DATA

Pengendalian 8 buah Motor oleh DST-51

BAB IV ANALISA DAN HASIL UJI COBA RANGKAIAN

PENGHITUNG WAKTU DENGAN TAMPILAN LCD M1632 OLEH DST-51

BAB III PERENCANAAN DAN REALISASI

PENGATURAN KECEPATAN MOTOR DENGAN PC OLEH DST-5 2

Perancangan Serial Stepper

TIMER DAN COUNTER MIKROKONTROLER ATMEL

BAB IV PENGUJIAN DAN ANALISA SISTEM

PERCOBAAN 2 SAKLAR PUSH BUTTON

PERCOBAAN 11 PULSE WIDHT MODULATION

PENGATUR KADAR ALKOHOL DALAM LARUTAN

BAB III PERANCANGAN SISTEM. 3.1 Pengantar Perancangan Sistem Pengendalian Lampu Pada Lapangan Bulu

Program di computer (visual basic) Private Sub Command1_Click() End Sub. Private Sub Command2_Click() End Sub. Private Sub Command3_Click() End Sub

Organisasi Sistem Komputer. Port Serial

BAB III KEGIATAN PENELITIAN TERAPAN

BAB IV PENGUJIAN DAN EVALUASI SISTEM. harus dilakukan pengujian terhadap masing-masing alat dan sofware, adapun

BAB IV ANALISIS DATA DAN PEMBAHASAN

PERCOBAAN 3 DISPLAY 7 SEGMEN

APLIKASI MODUL DST -52 SEBAGAI JAM DIGITAL DENGAN INPUT DARI PC KEYBOARD DAN M1632 LCD SEBAGAI PENAMPIL

DT-51 Application Note

Mikrokontroler 89C51 Bagian II :

BAB 3 PERANCANGAN SISTEM. pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan

PENAMPIL TOMBOL-TOMBOL REMOTE CONTROL SONY PADA M1632 LCD OLEH MODUL DST-52

MESIN KETIK ELEKTRONIK DENGAN TAMPILAN M1632 LCD OLEH MODUL DST-52

AKUISISI DATA BERAT MELALUI KOMPUTER BERBASIS MIKROKONTROLER AT89C51

ADC (Analog to Digital Converter)

BAB III SISTEM PENGUKURAN ARUS & TEGANGAN AC PADA WATTMETER DIGITAL

BAB IV PENGUJIAN DAN PEMBAHASAN

Antar Muka Modul RTC-1287 dengan Modul DST-51

Praktek 1. Interfacing Layer. 1. Tujuan : 2. Alat-alat 1 Unit PC atau notebook Koneksi internet

MODUL PRAKTIKUM MIKROPOSESOR & INTERFACING

DT-51 Application Note

BAB III PERANCANGAN ALAT

PENGGUNAAN KEYPAD 4X3 DAN PC KEYBOARD PADA MODUL DST-52 DENGAN TAMPILAN M1632 LCD

THERMOMETER DIGITAL DENGAN MODUL DST-51, ADC-0809 DAN LCD 2X16

BAB III PERANCANGAN SISTEM

BAB III PERENCANAAN DAN REALISASI

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

Timer Counter. D3 Telekomunikasi.

BAB IV PENGUJIAN ALAT DAN ANALISA

PORT PARALEL MIKROKONTROLER ATMEL AT89C51

Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode )

DT-51Application Note

BAB 3 PERANCANGAN SISTEM

$'&$QDORJWR'LJLWDO&RQYHUWLRQ

BAB V PENGUJIAN SISTEM DAN ANALISIS

Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL

Teknik Interface Keypad 4x3 ke DST-51

PENULISAN KARAKTER DENGAN MENGGUNAKAN TEKNIK PENULISAN PADA KEYPAD HANDPHONE OLEH MODUL DST-51, KEYPAD 4X3 DAN M1632 LCD

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

DAFTAR ISI HALAMAN JUDUL. HALAMAN PENGESAHAN PEMBIMBING. HALAMAN PENGESAHAN PENGUJI... HALAMAN PERSEMBAHAN. HALAMAN MOTTO.. ABSTRAKSI... DAFTAR ISI...

IV. HASIL PENELITIAN DAN PEMBAHASAN. menggunakan sensor optik berbasis mikrokontroler ATMega 8535 dengan

DQI 06 DELTA DATA ACQUISITION INTERFACE V.06

PROGRAMMABLE TIMER DENGAN TAMPILAN M1632 LCD MENGGUNAKAN MODUL DST-51

DAFTAR ISI HALAMAN JUDUL... HALAMAN PENGESAHAN P EMBIMBING... HALAMAN PENGESAHAN P ENGUJI... HALAMAN PERSEMBAHAN... HALAMAN MOTTO... KATA PENGANTAR...

BAB 3 PERANCANGAN ALAT DAN PROGRAM

BAB 3 PERANCANGAN SISTEM

BAB 13 INTERFACE KE PRINTER DOT MATRIKS

BAB III PERANCANGAN DAN PEMODELAN

BAB III PERANCANGAN ALAT

BAB II LANDASAN TEORI

DT-SENSE Application Note

BAB II LANDASAN TEORI

Antarmuka PC Keyboard dengan DST-AVR

ANALISA ADC 0804 dan DAC 0808 MENGGUNAKAN MODUL SISTEM AKUISISI DATA PADA PRAKTIKUM INSTRUMENTASI ELEKTRONIKA

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051

Transkripsi:

Akuisasi data dengan remote host AT89s51 melalui serial RS232 I. Tujuan 1. Mahasiswa mampu merealisasikan sebuah system data jarak jauh dengan remote host berbasis MCS51 yang terhubung pada pc melalui RS232. 2. Mahasiswa mampu merancang melalui ADC 0808 secara free running II. Dasar Teori Suatu perangkat lunak dan perangkat keras akuisisi data dapat merubah komputer PC menjadi suatu sistem akuisisi, pemroses (analisa) dan penampil data yang terpadu (Data Acquisition System). Melakukan pemrograman langsung pada tingkat register pada papan akuisisi data merupakan tingkat pemrograman yang paling sulit dalam pengembangan perangkat lunak akuisisi data. Dalam hal ini, Anda harus menentukan nilai biner yang tepat dan benar yang harus dituliskan pada register-register tersebut. Selain itu, bahasa pemrograman yang digunakan harus mampu melakukan pembacaan dan penulisan data dari atau ke papan akuisisi data yang terpasang pada komputer. Perangkat lunak akuisisi data dibagi menjadi dua macam: ( 1 ) Perangkat lunak aras-penggerak (driver-level) dan (2) Perangkat lu nak aras-aplikasi (application-level). Perangkat lunak aras-penggerak menyederhanakan pemrograman akuisisi data dengan cara menangani secara langsung pemrograman aras-rendah (low-level programing) dan memberikan Anda berbagai fungsi aras-tinggi (high-level functions) yang dapat dipanggil dalam bahasa pemrograman yang Anda gunakan. Perencanaan sistem akuisisi data jarak jauh dengan remote host berbasis AT89s51 yang terhubung pada local host melalui serial RS 232 terdiri dari ADC0808 ini bekerja secara free running. Pada mode free running, ADC akan mengeluarkan data hasil pembacaan input secara otomatis dan berkelanjutan (continue). Pada mode ini pin INTR akan berlogika rendah setelah ADC selesai melakukan konversi, logika ini dihubungkan kepada masukan WR untuk memerintahkan ADC memulai konversi kembali. Analog to Digital Converter adalah sebuah peralatan yang paling sering digunakan untuk melakukan pencuplikan data (data acquisition). Contoh mikrokontroller chip yang biasa digunakan sebagai ADC adalah ADC0809. Chip ADC0809 adalah konverter analog-kedigital, turunan langsung dari keluarga seri ADC800 buatan National Semiconductor. Dia bekerja pada tegangan 5 Volts dan memiliki resolusi 8-bit. Selain resolusi, waktu konversi (convertion time) menjadi parameter yang sangat penting pula. Convertion Time ini menunjukkan berapa lama waktu yang dibutuhkan oleh ADC untuk melakukan 1 kali

konversi. Pada ADC0809 Convertion Time ditentukan oleh nilai clock yang ad pada pin-pin CLK R dan CLK IN, dan paling cepat adalah 110uS. Langkah-langkah yang dilakukan untuk konversi pada chip ADC0809 adalah: 1. Buatlah CS = 0 dan kirim pulsa rendah-ke-tinggi pada pin WR untuk segera melakukan konversi. 2. Selalu memonitor pin INTR. Jika INTR rendah, maka konversi selesai, dan kita dapat segera ke langkah berikutnya. Namun jika INTR masih tinggi, maka kita harus menunggu sampai dia rendah. 3. Setelah INTR rendah, maka pastikan CS=0 dan kirim pulsa tinggi-ke-rendah pada pin RD. Sehingga kita dapat segera membaca hasil konversi pada D0-D7. Sedang Timming Diagram adalah seperti pada Gambar di bawah ini: Ada 2 macam cara komunikasi data serial yaitu Sinkron dan Asinkron. Pada komunikasi data serial sinkron, clock dikirimkan bersama sama dengan data serial, tetapi clock tersebut dibangkitkan sendiri sendiri baik pada sisi pengirim maupun penerima. Sedangkan pada komunikasi serial asinkron tidak diperlukan clock karena data dikirimkan dengan kecepatan tertentu yang sama baik pada pengirim / penerima. Pada komunikasi asinkron, kecepatan pengiriman data ( atau yang sering disebut dengan Baud Rate ) dan fase clock pada sisi transmitter dan sisi receiver harus sinkron. Kecepatan transmisi (baud rate) dapat dipilih bebas dalam rentang tertentu.baud rate yang umum dipakai adalah 110, 135, 150, 300, 600, 1200, 2400, dan 9600 (bit/perdertik).dalam komunikasi data serial, baud rate dari kedua alat yang berhubungan harus diatur pada kecepatan yang sama. Selanjutnya harus ditentukan panjang data (6,7 atau 8 bit), paritas (genap, ganjil, atau tanpa paritas), dan jumlah bit Stop (1, 1 ½, atau 2 bit). Baud rate pada mode 0 adalah tertentu: pada mode 0, Baud Rate = 1/12 x Frekuensi Osilator. Baud rate pada mode 2 bergantung pada nilai bit SMOD pada SFR PCON. Jika SMOD = 0, baud rate adalah 1/64 frekuensi osilator. Jika SMOD=1, baud rate adalah 1/32 frekuensi osilator. Penentuan baud rate mode 2 adalah sebagai berikut:

Sedangkan baud rate pada mode 1 dan 3 ditentukan oleh nilai laju overflow dari Timer 1.Menggunakan Timer 1 untuk membangkitkan Baud Rate.Ketika timer 1 digunakan untuk membangkitkan clock baud rate, baud rate pada mode 1 dan 3 adalah ditentukan oleh laju overflow timer 1 dan nilai dari SMOD. Penentuan baud rate untuk mode 1 dan 3 adalah sebagai berikut: Interupsi timer 1 harus disable pada aplikasi ini. Pada kebanyakan aplikasi, timer ini dioperasikan sebagai timer, dengan mode auto reload mode 2. Pada kasus ini baud rate diberikan dengan rumus sebagai berikut: Gambar blok diagram sistem III. Peralatan Yang Digunakan Modul MCS51 Modul ADC Downloader 1 set PC Power supply

IV. Setting Percobaan V. Prosedur Percobaan : 1. Siapkan dan periksa kelengkapan modul MCS-51 dan modul ADC 2. Rangkai port-port ADC ke MCS-51, dan memasang jumper-jumper pada ADC dan MCS-51 seperti pada setting percobaan lalu menghubungkan dengan supply 5 volt 3. Set baud rate dengan nilai 2400 bps dan set parity 4. Pada device manager aturlah nomor port serial missal untuk mengatur com1 5. Set hyperterminal ke port yang ada dan untuk membuka hyperterminal tersebut,pilih menu accesosories communication pilih hyperterminal (hterm.exe) 6. Pilih menu properties,kemudian ASCII setup kemudian pilih echo character as type 7. Download program melalui SPI 8. Amati dan tulis hasilnya 9. Buat analisa dan kesimpulan VI. Hasil Percobaan : Jika password yang dimasukan benar pada hyperterminal tampilannya adalah sebagai berikut : Pilih sensor [0~7]:

Disini paswordnya adalah huruf a atau A jadi jika password yang dimasukan adalah huruf selain itu maka pada hyperterminal tidak akan muncul apa-apa. Setelah kita memilih sensor,misalnya sensor ke 4,maka tampilannya adalah sebagai berikut : Pilih sensor [0~7]: 0 Data sensor ke-0: 243 Data sensor ke-0: 243 Data sensor ke-0: 243 Hasilnya adalah data yang tampil tidak bisa secara terus menerus atau tampilan diatas dikatakan tampil secara offline. VII. Analisa Dari percobaan yang telah kita lakukan, kita melakukan akuisisi data. Sistem akuisisi data dapat didefinisikan sebagai suatu sistem yang berfungsi untuk mengambil, mengumpulkan dan menyiapkan data, hingga memprosesnya untuk menghasilkan data yang dikehendaki. Untuk bisa menangkapnya terlebih dahulu diperlukan transduser. Di dalam transduser ini terdapat sensor yang berfungsi untuk merespons rangsangan. Dalam percobaan yang berfungsi sebagai sensor adalah modul ADC 0808. Dalam modul ADC 0808 tersebut terdpat 8 sensor yang dalam modul di definisikan sebagai ADC Control. Selain itu ADC 0808 juga mempunyai 8 input yang dalam percobaan ini digunakan sebagai kanal input yang akan diproses ketika ADC Control mendapatkan respons. Dalam percobaan kita menggunakan mode free running untuk mengakses modul ADC oleh sebab itu maka kita menggunakan posisi jumper 1 sampai 3 dalam posisi 2-3. Selain menggunakan modul ADC sebagai perlengkapan percobaan kita juga mengakses komunikasi serial pada MCS51. Ini dikarenakan kita mengakses system tersebut menggunakan hiperterminal yang terdapat pada PC. Karena kita juga mengakses komunikasi serial maka kita menempatkan jumper 1 dan 2 pada modul MCS51 pada posisi 1-2. Dalam percobaan PORT ADC control pada modul ADC dihubungkan dengan dengan PORT 2 pada modul MCS 51. Sedangkan PORT ADC Data pada modul ADC dihubungkan dengan PORT0 pada modul MCS51. Ini terlihat seperti pada listing program di bawah: adc_a bit p2.0 adc_b bit p2.1 adc_c bit p2.2 adc_wr bit p2.3 adc_rd bit p2.4 adc_eoc bit p2.5

adc_cs bit p2.6 adc_data equ p0 Selain itu kita juga menggunakan akses timer untuk menentukan agar tampilan yang berada di hiperterminal tampil berulang-ulang selama 2 detik. Sistem juga dilengkapi dengan password dimana ketika kita sudah bisa melewati password tersebut maka kita akan bisa masuk untuk mengakses sensor. Pendefinisian password dalam program seperti listing program di bawah ini: cek_tombol: acall ambil_data cjne a,#'a',gedhe sjmp ok gedhe: cjne a,#'a',cek_tombol Sistem terhubungkan antara modul MCS51, modul ADC, dan juga PC. Hasil akhirnya adalah semua kinerja system bisa dikontrol dengan keyboard pada PC. Hasil dari percobaannya adalah ketika sudah berhasil memasukkan password maka kita bisa memasukkan sensor mana yang akan kita gunakan. Data sensor sudah dimasukkan, maka akan keluar nilai ADC yang terdapat pada modul ADC yang diberikan dari power supply disambungkan ke input ADC. Hasil data tersebut akan muncul terus berulang-ulang selama 2 detik dan akan berhenti looping ketika 2 detik berakhir. Tetapi setelah looping selama 2 detik tersebut kita tidak dapat lagi untuk memasukkan password, kita terlebih dahulu mereset system agar kembali ke awal. Ini dikarenakan kita belum menggunakan interrupt timer dalam pemrogramannya. VIII. Kesimpulan Dari percobaan yang telah kita lakukan, dapat disimpulkan bahwa: 1. Akuisisi data merupakan proses untuk mendapatkan data dan merupakan proses yang penting dalam system pemantauan dan pengendalian system. 2. Akuisisi data bisa dilakukan dengan menangkap data dari sensor dimana dalam praktikum ini menggunakan modul ADC (ADC Control) sebagai sensornya. 3. Akuisisi data bisa dikontrol dengan menggunakan PC ketika Modul MCS51 sudah tersambung dengan PC dengan menggunakan komunikasi serial. 4. Penentuan letak jumper pada modul MCS51 maupun modul ADC harus diperhatikan karena kesalahan pada peletakkan jumper menyebabkan sistem tidak bekerja.

IX. Lampiran Listing program adc_a bit p2.0 adc_b bit p2.1 adc_c bit p2.2 adc_wr bit p2.3 adc_rd bit p2.4 adc_eoc bit p2.5 adc_cs bit p2.6 adc_data equ p0 led equ p1 org 0h ljmp main org main: cek_tombol: gedhe: ok: next1: ada1: kanal: tulis: next2: cek_kanal ada2: 0100h mov r0,#0 mov r2,#200 mov ie,#0 mov scon,#50h mov th1,#0fdh anl pcon,#7fh mov tmod,#21h mov tcon,#40h acall ambil_data cjne a,#'a',gedhe sjmp ok cjne a,#'a',cek_tombol mov dptr,#sensor clr a push acc movc a,@a+dptr cjne a,#0,ada1 sjmp kanal pop acc inc a sjmp next1 mov led, #0ffh acall ambil_data mov r1,a ; mov a,#13 mov a,#10 mov dptr,#channel clr a push acc movc a,@a+dptr cjne a,#0,ada2 mov a,r1 mov a,#' ' mov a,#'=' mov a,#' ' sjmp sjmp cek_kanal; ambil_data: ri,ambil_data pop acc inc a sjmp next2 jnb mov a,sbuf clr ri ret tulis_data: mov sbuf,a lagi: jnb ti,lagi clr ti ret cek_kanal: cjne r1,#'0',cek_1 sjmp kanal_0 cek_1: cjne r1,#'1',cek_2 sjmp kanal_1 cek_2: cjne r1,#'2',cek_3 sjmp kanal_2 cek_3: cjne r1,#'3',cek_4 sjmp kanal_3 cek_4: cjne r1,#'4',cek_5 sjmp kanal_4 cek_5: cjne r1,#'5',cek_6 sjmp kanal_5 cek_6: cjne r1,#'6',cek_7 sjmp kanal_6 cek_7: cjne r1,#'7',cek_kanal sjmp kanal_7 sampling: mov a,adc_data mov b,#100 div ab add a,#48; 48=0 mov a,b mov b,#10 div ab add a,#48 mov a,b add a,#48 mov a,#13 mov a,#10 ;cjne r0,#3,tulis ;mov led, #0 ajmp cek_tombol kanal_0: kanal_1: kanal_2: kanal_3: kanal_4: clr adc_a clr adc_b clr adc_c setb adc_a clr adc_b clr adc_c clr adc_a setb adc_b clr adc_c setb adc_a setb adc_b clr adc_c clr adc_a clr adc_b setb adc_c

kanal_5: kanal_6: kanal_7: delay: maneh: kene: setb adc_a clr adc_b setb adc_c clr adc_a setb adc_b setb adc_c setb adc_a setb adc_b setb adc_c mov tmod,#01h mov tl0,#0ffh mov th0,#0ffh setb tr0 jnb tf0,maneh clr tf0 clr tr0 cjne r2,#200,kene mov a,r2 inc a ret sensor: db 13,10,'Pilih sensor [0~7]: ',0 channel: db 'Data sensor-',0 END