• Tidak ada hasil yang ditemukan

Modul komunikasi serial pada model simulator boiler berbasis mikrokontroler atmega16.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Modul komunikasi serial pada model simulator boiler berbasis mikrokontroler atmega16."

Copied!
113
0
0

Teks penuh

(1)

viii

INTISARI

Perkembangan teknologi yang sedemikian pesat pada kehidupan dewasa ini,

menuntut manusia untuk bergaya hidup praktis. Hal ini juga berpengaruh pada bidang

informasi. Oleh karena itu dilakukan perancangan dan realisasi pembuatan modul

komunikasi serial antara mikrokontroler. Sistem peralatan ini menggunakan komunikasi

serial sebagai penyampaian informasi. Untuk komunikasi ini sendiri menggunakn

komunikasi dua arah .

Sistem ini terdiri dari perangkat keras dan perangkat lunak. Perangkat keras terdiri

dari IC Atmega16, dan LCD 2x16. Sedangkan perangkat lunak mikrokontroler dengan

menggunakan bahasa C.

Sistem ini akan bekerja setelah power supply dalam keadaan on maka mikrokontroler A berfungsi sebagai master untuk menerima data dari model simulator boiler

menggunakan komunikasi serial USART. Data yang diterima berupa data parameter boiler.

Sedangkan mikrokontroler B fungsinya sebagai slave untuk menerima data dari mikrokontroler master dan selanjutnya data tersebut akan ditampilkan pada LCD 2x16 menggunakan komunikasi serial I2C.

Hasil akhir dari penelitian ini adalah menunjukkan bahwa sistem kerja dari modul

komunikasi serial belum sesuai dengan perancangan awal, dan implementasinya hanya

menggunakan komunikasi satu arah dan data yang diterima dari model simulator boiler

berubah ubah sesuai dengan data yang dikirim dari model simulator boiler. Data boiler

yang diterima oleh modul komunikasi serial akan sama dengan data yang dikirim dari

model simulator boiler, kecuali untuk komunikasi SPI.

(2)

ix

ABSTRACT

The rapid development of technology in today's life, demanding man's practical life style.

It also affects the field of information. Therefore, to design and manufacture the realization

of serial communication between the microcontroller module. This equipment systems

using serial communication as the delivery of information. For this communication is to

use your own two-way communication.

The system consists of hardware and software. The hardware consists of ATmega16

IC, IC MAX 232 and 2x16 LCD. While software microcontroller using C language

This system will work after the power supply in a state on the microcontroller A

serves as the master to receive data from boiler simulator model using USART serial

communication. The data received in the form of boiler parameter data. While the

microcontroller and its function as a slave to receive data from the master microcontroller

and further data will be displayed on the LCD 2x16 using I2C serial communication.

The final results of this study indicate that the system is working on the serial

communication module works well, although the data received from the boiler simulator

model changed to change according to the data are sent from the boiler simulator models.

Boiler data received by serial communication module will be the same as the data sent

from the boiler simulator models, except for SPI communication.

(3)

i

TUGAS AKHIR

MODUL KOMUNIKASI SERIAL PADA MODEL

SIMULATOR BOILER BERBASIS

MIKROKONTROLER ATMEGA16

Disusun Oleh :

NUNCIO NATALINO VICENTE DE FATIMA SOARES

NIM : 125114012

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(4)

ii

FINAL PROJECT

MODULE COMMUNICATION OF THE SERIES ON MODEL SIMULATOR

BOILER BASED ON MICROCONTROLLER ATMEGA 16

In partial fulfilment of the requirements

for the degree of Sarjana Teknik

Electrical Engineering Study Program

Electrical Engineering Departement

Science and Technology Faculty Sanata Dharma University

NUNCIO NATALINO VICENTE DE FATIMA SOARES

NIM : 125114012

ELECTRICAL ENGINEERING STUDY PROGRAM

ELECTRICAL ENGINEERING DEPARTEMENT

SCIENCE AND TECHNOLOGY FACULTY

SANATA DHARMA UNIVERSITY

(5)
(6)
(7)
(8)

vi

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

MOTTO:

“KEBERHASILAN AKAN DIRAIH DENGAN BELAJAR”

JANGAN INGAT LELAHNYA BELAJAR, TAPI INGAT BUAH

MANISNYA YANG BISA DIPETIK KELAK KETIKA SUKSES

Karya tulis ini kupersembahkan kepada:

Hati Kudus Tuhan Yesus Kristus Ganjuran dan Bunda Maria

Pembimbingku yang amat berarti di hidupku,

Papa dan mama tercinta,

Saudara-saudaraku yang tercinta,

Teman-teman seperjuanganku,

Dan famalia warik uan jogja

(9)
(10)

viii

INTISARI

Perkembangan teknologi yang sedemikian pesat pada kehidupan dewasa ini,

menuntut manusia untuk bergaya hidup praktis. Hal ini juga berpengaruh pada bidang

informasi. Oleh karena itu dilakukan perancangan dan realisasi pembuatan modul

komunikasi serial antara mikrokontroler. Sistem peralatan ini menggunakan komunikasi

serial sebagai penyampaian informasi. Untuk komunikasi ini sendiri menggunakn

komunikasi dua arah .

Sistem ini terdiri dari perangkat keras dan perangkat lunak. Perangkat keras terdiri

dari IC Atmega16, dan LCD 2x16. Sedangkan perangkat lunak mikrokontroler dengan

menggunakan bahasa C.

Sistem ini akan bekerja setelah power supply dalam keadaan on maka mikrokontroler A berfungsi sebagai master untuk menerima data dari model simulator boiler

menggunakan komunikasi serial USART. Data yang diterima berupa data parameter boiler.

Sedangkan mikrokontroler B fungsinya sebagai slave untuk menerima data dari mikrokontroler master dan selanjutnya data tersebut akan ditampilkan pada LCD 2x16 menggunakan komunikasi serial I2C.

Hasil akhir dari penelitian ini adalah menunjukkan bahwa sistem kerja dari modul

komunikasi serial belum sesuai dengan perancangan awal, dan implementasinya hanya

menggunakan komunikasi satu arah dan data yang diterima dari model simulator boiler

berubah ubah sesuai dengan data yang dikirim dari model simulator boiler. Data boiler

yang diterima oleh modul komunikasi serial akan sama dengan data yang dikirim dari

model simulator boiler, kecuali untuk komunikasi SPI.

(11)

ix

ABSTRACT

The rapid development of technology in today's life, demanding man's practical life style.

It also affects the field of information. Therefore, to design and manufacture the realization

of serial communication between the microcontroller module. This equipment systems

using serial communication as the delivery of information. For this communication is to

use your own two-way communication.

The system consists of hardware and software. The hardware consists of ATmega16

IC, IC MAX 232 and 2x16 LCD. While software microcontroller using C language

This system will work after the power supply in a state on the microcontroller A

serves as the master to receive data from boiler simulator model using USART serial

communication. The data received in the form of boiler parameter data. While the

microcontroller and its function as a slave to receive data from the master microcontroller

and further data will be displayed on the LCD 2x16 using I2C serial communication.

The final results of this study indicate that the system is working on the serial

communication module works well, although the data received from the boiler simulator

model changed to change according to the data are sent from the boiler simulator models.

Boiler data received by serial communication module will be the same as the data sent

from the boiler simulator models, except for SPI communication.

(12)

x

KATA PENGATAR

Puji dan syukur peneliti panjatkan kehadirat Tuhan Yang Maha Esa atas berkat dan

rahmat-Nya sehingga peneliti dapat menyelesaikan Tugas Akhir ini dengan baik. Tujuan

penulisan tugas akhir adalah untuk memenuhi persyaratan mencapai Derajat Sarjana

Teknik dari Program Studi Teknik Elektro Fakultas Sains dan teknologi Universitas Sanata

Dharma Yogyakarta.

Penulisan tugas akhir ini dapat diselesaikan dengan baik tak lepas dari bantuan

berbagai pihak. Oleh karena itu peneliti ingin mengucapkan terima kasih kepada :

1. Tuhan Yesus Kristus, atas kasih, berkat, dan penyertaannya sehingga penulis

mampu menyelesaikan tugas akhir ini dengan baik.

2. Ibuk Paulina Heruningsih Prima Rosa, S.si., M.Sc. selaku Dekan Fakultas Sains dan

Teknologi.

3. Bapak Petrus Setyo Prabowo, S.T., M.T. selaku Ketua Program Studi Teknik

Elektro Universitas Sanata Dharma Yogyakarta.

4. Bapak Ir.Tjendro, selaku dosen pembimbing akademik yang telah mendampingi

dan membimbing penulis salama perkuliahan.

5. Bapak Ir.Tjendro, M.Kom, selaku dosen pembimbing yang dengan penuh

pergertian, sabar dan ketulusan hati memberi bimbingan, kritik, saran, serta

motivasi dalam penulisan tugas akhir ini.

6. Bapak Martanto, S.T.,M.T. dan Bapak Petrus Setyo Prabowo, S.T., M.T. dosen

penguji yang telah bersedia memberi masukan, bimbingan dan saran dalam

memperbaiki tugas akhir ini.

7. Seluruh dosen dan laboran yang telah mengajarkan banyak ilmu yang bermanfaat

selama menempuh pendidikan di Universitas Sanata Dharma Yogyakarta.

8. Seluruh Staff Program Studi Teknik Elektro Fakultas Sains dan Teknologi

Universitas Sanata Dharma Yogyakarta yang telah membantu dalam hal

administrasi.

9. Kedua orangtuaku ( alm. Antonio Vicente Marques Soares dan Maria Do Rosario

Fatima), atas kasih sayang, dukungan, motivasi dan doa yang tiada henti selama

menempuh pendidikan di Universitas Sanata Dharma.

10.Kakak-kakak dan adik-adik ku tercinta yang selalu mendukung dan mendoakan

(13)
(14)

xii

DAFTAR ISI

HALAMAN JUDUL (Bahasa Indonesia) ... i

HALAMAN JUDUL (Bahasa Inggris) ... ii

HALAMAN PERSETUJUAN ... iii

HALAMAN PENGESAHAN ... iv

PERNYATAAN KEASLIAN KARYA ... v

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ... vi

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS... vii

INTISARI ... viii

ABSTRACT ... ix

KATA PENGANTAR ... x

DAFTAR ISI ... xii

DAFTAR GAMBAR ... xv

DAFTAR TABEL ... xvii

BAB I: PENDAHULUAN 1.1. Latar Belakang ... 1

1.2. Tujuan dan Manfaat Penelitian ... 2

1.3. Batasan Masalah ... 3

1.4. Metodelogi Penelitian ... 2

BAB II : DASAR TEORI 2.1. Sistem Komunikasi ... 4

2.1.1. Komunikasi Serial ... 4

2.1.2. Data Transfer Rate ... 4

2.2. Mikrokontroler ATmega16 ... 5

2.2.1. Konfigurasi Pin ATmega16 ... 6

2.2.2. Pemrograman Mikrokontroler ATmega16 ... 8

2.2.3. Bahasa C Pada AVR ATmega16 ... 9

2.3. LCD (Liquid Cristal Display) ... 9

(15)

xiii

2.4.1. Prinsip Kerja RS232 ... 11

2.4.2. Konektor RS232 ... 11

2.4.3. Keuntungan Komunikasi Secara Serial ... 13

2.4.4. MAX232 ... 13

2.5. USART ... 14

2.5.1. Register Komunikasi Serial Usart ... 14

2.6. SPI (SERIAL PERIPHERAL INTERFACE) ... 17

2.6.1. Pin – Pin Penghubung pada SPI ... 17

2.6.2. Register Komunikasi SPI ... 18

2.6.2.1. SPI Control RegIster (SPCR) ... 18

2.6.2.2. SPI Data Register (SPDR) ... 20

2.7. I2C (Inter Integrated Circui t ) ... 20

2.7.1. Register Komunikasi I2C ... 21

BAB III : RANCANGAN PENELITIAN 3.1. Proses Kerja Sistem ... 24

3.2. Kebutuhan Perangkat Keras ... 24

3.3. Perancangan Perangkat Keras Mekanik ... 25

3.4. Perancangan Perangkat Keras Elektronika ... 25

3.4.1. Perancangan Minimum Sistem dan Display LCD 2x16 ... 26

3.4.2. Perancangan Rangkaian RS-232 ... 26

3.5. Perancangan Perangkat Lunak ... 28

3.5.1. Diagram Alir Utama ... 28

3.5.2. Diagram Alir Komunikasi Serial Dengan Sistem Boiler ... 29

3.5.3. Diagram Alir Komunikasi Serial Dengan Sistem Penampil ... 30

3.5.4. Diagram Alir Komunikasi Serial Dengan Sistem Monitoring... 33

BAB IV : HASIL DAN PEMBAHASAN 4.1. Bentuk Fisik Hardware Elektronika ... 34

4.1.1. Bentuk Fisik Minimum System ATmega16 ... 34

4.1.2. Bentuk Fisik LCD 2x16 ... 35

4.1.3. Cara Penggunaan Alat ... 37

(16)

xiv

4.2.1. Pengujian Penerimaan Data Temperatur ... 37

4.2.2. Pengujian Penerimaan Data Tekanan ... 38

4.2.3. Pengujian Penerimaan Data Level Air ... 39

4.2.4. Pengujian Penerimaan Data Level Oli ... 40

4.3. Pembahasan Software ... 41

4.3.1. Program USART ... 41

4.3.2. Program I2C ... 45

4.4. Pembahasan Komunikasi Serial ... 47

4.5. Analisa Sistem Secara Keseluruhan ... 52

BAB V : KESIMPULAN DAN SARAN 5.1. Kesimpulan ... 54

5.2. Saran ... 54

DAFTAR PUSTAKA

LAMPIRAN

(17)

xv

DAFTAR GAMBAR

Halaman

Gambar 1.1. Diagram Blok Perancangan ... 3

Gambar 2.1. Model Komunikasi Data Sederhana ... 4

Gambar 2.3 Konfigurasi kaki (pin) ATmega16 ... 6

Gambar 2.4 Bentuk LCD (Liquid Cristal Display) ... 10

Gambar 2.5. Komunikasi data serial ... 11 Gamabar 2.6. RS232 pin out (DB9) ... 13

Gambar 2.7. Rangkaian MAX232 ... 14

Gambar 2.5. Avr Usart Tx dan Rx ... 15 Gambar 2.6. Register UCSRA ... 15

Gambar 2.7. Register UCSRB ... 16

Gambar 2.8. Register UCSRC ... 16

Gambar 2.9. Cara kerja protokol SPI ... 17

Gambar 2.10. SPCR Register ... 18

Gambar 2.12. SPDR Register ... 20

Gambar 2.13. Kondisi sinyal start dan stop ... 21

Gambar 2.14. Sinyal ACK dan NACK ... 21

Gambar 2.15. Konfigurasi sistem I2C ... 22

Gambar 2.17. Timing diagram ... 22

Gambar 3.1. Diagram Blok Keseluruhan Sistem ... 24

Gambar 3.2 a dan b ... 25 Gambar 3.3. Minimum Sistem dan Display LCD 2x16 ... 26

Gambar 3.4. Rangkaian RS232 ... 27

Gambar 3.5. Diagram Alir Utama ... 28

Gambar 3.6. Diagram Alir Model Serial Komunikasi dengan Sistem Bolier ... 29

Gambar 3.7. Diagram Alir Komunikasi Serial dengan Sistem Penampil ... 30

Gambar 3.8. Paket data serial “B=1” ... 31

Gambar 3.9. Contoh Data yang Akan Ditampilkan ... 32

(18)

xvi

Gambar 4.1. Minimum System A ... 34

Gambar 4.2. Minimum System B ... 35

Gambar 4.3. LCD 2x16 ... 35

Gambar 4.4. Rangkaian Keseluruhan Modul Komunikasi Serial ... 36

Gambar 4.5. Bentuk Fisik Modul Komunikasi Serial ... 36

Gambar 4.6. Komunikasi Serial Data Temperatur (T=50C) ... 48

Gambar 4.7. Data temperatur pada osiloskop (T=50C) ... 48

Gambar 4.8. Komunikasi Serial Data Temperatur (T=200C) ... 50

Gambar 4.9. Data Temperatur Pada Osiloskop (T=200C) ... 50

Gambar 4.10. Data dan clock temperatur pada osiloskop (T=50C) ... 52

(19)

xvii

DAFTAR TABEL

Halaman

Tabel 2.1 Fungsi khusus port B ... 7

Tabel 2.2 Fungsi khusus port C ... 7

Tabel 2.3 Fungsi khusus port D ... 8

Tabel 2.5. Fungsi pin konektor DB25 dan DB9 ... 12

Tabel 3.1. Kode parameter boiler ... 31

Tabel 3.2. Karakter ASCII “B=1” dalam desimal dan biner ... 31

Tabel 3.3. Karakter ASCII dalam format heksa dan desimal ... 32

Tabel 4.1. Penggunaan Port Pada Mynsis Mikrokontroler ... 37

Tabel 4.2. Hasil Pengujian Penerimaan Data Temperatur ... 38

Tabel 4.3. Hasil Pengujian Penerimaan Data Tekanan ... 38

Tabel 4.4. Hasil Pengujian Penerimaan Data Level Air ... 39

Tabel 4.5. Hasil Pengujian Penerimaan Data Level Oli ... 40

Tabel 4.6. Biner dari (T=50) dalam hex dan karakter ... 49

(20)

1

BAB I

PENDAHULUAN

1.1. Latar Belakang

Perkembangan teknologi yang sedemikian pesat pada kehidupan dewasa ini,

menuntut manusia untuk bergaya hidup praktis. Hal ini juga berpengaruh pada bidang

informasi. Semakin berkembangnya teknologi dan semakin banyaknya kesibukan manusia

membuat orang berpikir untuk dapat bekerja lebih efektif dan efisien. Oleh karena itu

semua peralatan manusia telah dikembangkan untuk dapat membuat pekerjaan manusia

lebih ringan. Kebutuhan sistem informasi yang sederhana dan multiguna sangat diperlukan.

Saat ini komunikasi semakin berkembang dengan adanya perangkat yang mendukung,

sehingga mempermudah manusia dalam menyampaikan informasi.

Komunikasi serial adalah sebuah komunikasi pengiriman data yang dilakukan secara

bergantian atau satu persatu. Komunikasi serial tersebut bersifat dua arah serta memiliki

jalur yang sedikit sehingga lebih menghemat pin dan kabel jika dibandingkan dengan

komunikasi paralel. Sistem peralatan ini menggunakan komunikasi serial sebagai

penyampaian informasi. Namun pada umumnya komunikasi yang digunakan adalah

komunikasi serial USART.

Model simulator boiler dirancang untuk menunjukkan secara sederhana berbagai

kontrol pada sistem boiler. Model simulator boiler ini dapat bertindak sebagai alat bantu

untuk diagnosis kesalahan sistem boiler yang mungkin terjadi dalam praktek. Model

simulator boiler ini berfungsi untuk mengatur input data parameter dan kemudian data tersebut akan dikirimkan ke bagian sistem monitoring boiler.

Berdasarkan hal tersebut maka dibuatlah sebuah modul komunikasi serial pada

mikrokontroler. Modul komunikasi serial pada mikrokontroler dirancang untuk sarana

komunikasi antara model simulator boiler dengan sistem monitoring boiler. Ada tiga tipe

komunikasi serial yang digunakan yaitu USART, I2C dan SPI. USART digunakan untuk

komunikasi antara model simulator boiler dengan modul komunikasi serial, I2C digunakan

untuk menampilkan data yang diterima dari komunikasi sebelumnya (USART), dan SPI

(21)

1.2. Tujuan dan Manfaat Penelitian

Tujuan dari penelitian ini adalah membuat suatu alat komunikasi serial

menggunakan mikrokontroler Atmega16 untuk menampilkan data.

Manfaat dari penelitian ini adalah dapat menjadi sarana komunikasi serial

antara model simulator boiler dengan sistem monitoring.

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 dari tugas akhir ini. Adapun batasan masalah :

1. Komunikasi serial dengan sistem boiler menggunakan kabel serial RS 232

2. Menggunakan LCD 2x16 sebagai penampil data

3. Menggunakan dua buah mikrokontroler ATmega16 sebagai pengelolah data

yang diterima dari sistem boiler dan data tersebut akan ditampilkan pada LCD.

Dimana mikrokontroler A fungsinya digunakan untuk menerima data dari model

simulator boiler, sedangkan mikrokontroler B fungsinya untuk menerima data

dari mikrokontroler A dan data tersebut akan ditampilkan pada LCD 2x16.

4. Sakelar on-off digunakan sebagai penghubung dan pemutus aliran arus listrik 5. MAX232 digunakan sebagai buffer untuk komunikasi serial antara

mikrokontroler

6. Nilai baud rate dapat diatur dengan menggunakan standar kecepatan yang disediakan. Kecepatan nilai baud rate adalah 9600 bps

7. Menggunakan bahasa C dalam penulisan programny

1.4. Metodologi Penelitian

Berdasarkan pada tujuan yang ingin 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-jurnal yang berkaitan dengan permasalahan yang dibahas dalam tugas

(22)

2. Eksperimen, yaitu dengan langsung melakukan praktek maupun pengujian

terhadap hasil pembuatan alat dalam pembuatan tugas akhir ini.

3. Perancangan subsistem hardware ini mengacu pada gambar 1.1 diagram blok perancangan. Tahap ini bertujuan untuk mencari bentuk model yang optimal dari

sistem yang akan dibuat dengan mempertimbangan dari berbagai faktor-faktor

permasalahan dan kebutuhan yang telah ditentukan

4. Proses pengambilan data. Pengambilan data dilakukan setelah alat jadi dengan

cara menerima (receiver) masukan data dari pengirim (transmiiter).

LCD

ATmega16

Monitoring Model Boiler Secara Real Time Berbasis

Android Max 232

Simulator Boiler USART SPI

I2C

Gambar 1.1. Diagram Blok Perancangan

5. Proses pengambilan data. Pengambilan data akan dilakukan saat hardware sudah selesai atau jadi dan dilakukan dengan cara melihat output data yang dihasilkan. 6. Analisis dan penyimpulan data percobaan. Analisis data dilakukan dengan cara

mengecek kinerja alat (ketepatan data yang ditampilkan). Penyimpulan hasil

percobaan dapat dilakukan setelah selesai melakukan analisis.

(23)

4

BAB II

DASAR TEORI

2.1. Sistem Komunikasi

Kegunaan dasar dari sistem komunikasi adalah menjalankan pertukaran data antara

dua pihak. Pada gambar 2.1 dibawah ini merupakan suatu model komunikasi yang

sederhana yaitu komunikasi dua arah.

Gambar 2.1. Model Komunikasi Data Sederhana

2.1.1. Komunikasi Serial

Komunikasi serial ialah pengiriman data secara serial (data dikirim satu persatu

secara berurutan). Pada prinsipnya komunikasi serial merupakan komunikasi dimana

pengiriman data dilakukan per bit, sehingga lebih lambat dibandingkan komunikasi

parallel, atau dengan kata lain komunikasi serial merupakan salah satu metode komunikasi

data dengan hanya satu bit data yang dikirimkan melalui seuntai kabel pada suatu waktu

tertentu. Komunikasi serial dapat digunakan untuk menggantikan komunikasi parallel jalur

data 8-bit dengan baik. Komunikasi ini mempunyai suatu kelebihan yaitu hanya

membutuhkan satu jalur dan kabel yang sedikit dibandingkan dengan komunikasi

paralel.[1]

2.1.2. Data Transfer Rate

(24)

data transfer rate penamaannya mengacu pada jumlah bit dari byte data yang ditransfer setiap detik.[2]

Baud rate mengindikasikan seberapa cepat data dikirim melalui komunikasi serial.

Baud rate biasanya diberi satuan bit-per-second (bps), walaupun untuk kasus-kasus khusus (misalnya untuk komunikasi paralel), nilai bps dapat berbeda dengan nilai baud rate. sumsi asumsi saat ini kita fokus pada komunikasi serial, dimana setiap detak menyatakan transisi

satu bit keadaan. Jika hal ini dipenuhi, maka nilai baud rate akan sama dengan nilai bit-per-second (bps). Bit per detik ini mengartikan bahwa berapa bit data dapat ditransfer setiap detiknya. Jika kita menginverskan nilai bps ini, kita dapat memperoleh keterangan

berapa lama waktu yang dibutuhkan untuk mengirim 1 bit. [3]

Nilai baud rate dapat diatur dengan menggunakan standar kecepatan yang disediakan. Contoh modem dengan transmisi adalah 9.600 bps. Data yang dikirim dengan

kecepatan 9600 bit/detik, maka setiap bitnya memerlukan waktu selama 1/9600 = 104

mikrodetik/bit. Satu paket data untuk satu karakter terdiri dari 10 bit (8-bit data, 1-bit start

dan 1-bit stop). Dengan demikian, pengiriman satu karakter (yang terdiri dari 10-bit) akan membutuhkan waktu selama 10 x 104 mikrodetik = 1.040 mikrodetik = 1,04 milidetik.

Pada system 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. 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.[4]

2.2. Mikrokontroler ATmega16

Mikrokontroler ATmega16 memiliki keunggulan dibandingkan dengan

mikrokontroler lainnya, keunggulan mikrokontroler ATmega16 yaitu pada kecepatan

eksekusi program yang lebih cepat karena sebagian besar instruksi 2 dieksekusi dalam 1

siklus clock, lebih cepat dibandingkan dengan mikrokontroler MCS51 yang memiliki arsitektur CISC (Complex Instruction Set Computer) di mana mikrokontroler MCS51 membutuhkan 12 siklus clock untuk mengeksekusi 1 instruksi. Selain itu mikrokontroler ATmega16 memiliki fitur yang lengkap (ADC internal, EEPROM internal, Timer/Counter,

(25)

berbagai aplikasi sistem elektronika seperti robot, otomasi industri, peralatan

telekomunikasi, dan berbagai keperluan lain.

Fitur mikokontroler ATmega16 sebagai berikut :[5]

1. Mikrokontroler ATmega16 yang memiliki 8 bit dan kemampuan tinggi dengan

daya rendah.

2. Arsitektur RISC dengan troughput mencapai 16 MIPS pada frekuensi 16 MHz. 3. Memiliki kapasitas Flash memori 16 KByte, EEPROM 512 Byte dan SRAM 1

KByte.

4. Saluran I/O sebanyak 32 buah, yaitu Port A, Port B, Port C, dan PortD.

5. Unit interupsi internal dan eksternal.

6. Fitur Peripheral yaitu tiga buah Timer/Counter, Real Time Counter dengan

Oscillator tersendiri, empat channel PWM, delapan channel 10-bit ADC,

Byteoriented Two-wire Serial Interface, Programmable Serial USART, antarmuka SPI, Wachdog Timer dengan oscillator internal, dan On-chip Analog Comparator.

2.2.1. Konfigurasi Pin ATmega16

Gambar 2.3 Konfigurasi kaki (pin) ATmega16 [6]

Konfigurasi pin ATmega16 dengan kemasan 40 pin Dual In-line Package (DIP) dapat dilihat pada Gambar 2.13. dari gambar diatas dapat dijelaskan fungsi dari

masing-masing pin ATmega16 sebagai berikut.

(26)

3. Port A (PA0 – PA7) merupakan pin input/output dua arah (full duplex) dan selain itu merupakan pin masukan ADC

4. Port B (PB0 – PB7) merupakan pin input/output dua arah (full duplex) dan selain itu merupakan pin khusus, seperti dapat dilihat pada tabel dibawah ini.

Tabel 2.1 Fungsi khusus port B.

Pin Fungsi Khusus

PB0 XCK (USART External Clock Input/Output)

T0 (Timer/Counter0 External Counter Input

PB1 T1 (Timer/Counter1 External Counter Input

PB2 INT2 (External Interupt 2 Input)

AIN0 (Analog Comparator Negative Input)

PB3 OC0 (Timer/Counter0 Output Compare Match Output)

AIN1 (Analog Comparator Negative Input)

PB4 (SPI Slave Select Input)

PB5 MOSI (SPI Bus Master Output / Slave Input) PB6 MISO (SPI Bus Master Input / Slave Output) PB7 SCK (SPI Bus Serial Clock)

5. Port C (PC0 – PC7) merupakan pin input/output dua arah (full duplex) dan selain itu merupakan pin khusus, seperti dapat dilihat pada tabel dibawah ini.

Tabel 2.2 Fungsi khusus port C.

Pin Fungsi Khusus

PC0 SCL (Two-wire Serial Bus Clock Line)

PC1 SDA (Two-wire Serial Bus Data Input/Output Line)

PC2 TCK (Joint Test Action Grup Test Clock) PC3 TMS (JTAG Test Mode Select)

(27)

PC7 TOSC2 (Timer Oscillator pin 2)

6. Port D (PD0 – PD7) merupakan pin input/output dua arah (full duplex) dan selain itu merupakan pin khusus, seperti dapat dilihat pada tabel dibawah ini.

Tabel 2.3 Fungsi khusus port D.

Pin Fungsi Khusus

PD0 RXD (USART Input Pin) PD1 TXD (USART Output Pin) PD2 INT0 (External Interupt 0 Input) PD3 INT1 (External Interupt 1 Input)

PD4 OC1B (Timer/Counter1 Output Compare B Match Output)

PD5 OC1A (Timer/Counter1 Output Compare A Match Output)

PD6 ICP (Timer/Counter1 Input Capture Pin)

PD7 OC2 (Timer/Counter2 Output Compare Match Output)

7. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler 8. XTAL1 dan XTAL2, merupakan pin masukan external clock

9. AVCC merupakan pin masukan tegangan untuk ADC

10. AREF merupakan pin masukan tegangan referensi untuk ADC.

2.2.2. Pemrograman Mikrokontroler ATmega16

Pengembangan sebuah system menggunakan mikrokontroler AVR buatan ATMEL

menggunakan software AVR STUDIO dan CodeVision AVR. AVR STUDIO merupakan

software khusus untuk bahasa assembly yang mempunyai fungsi sangat lengkap, yaitu digunakan untuk menulis program, kompilasi, simulasi dan download program ke IC

mikrokontroler AVR dapat dilakukan pada CodeVision. CodeVision AVR memilki

fasilitas terminal, yaitu untuk melakukan komunikasi serial dengan mikrokontroler yang

(28)

menggunakan system download secara In-System Programming (ISP). ISP Flash On-chip

mengijinkan memori program untuk diprogram ulang dalam sistem menggunakan

hubungan serial SPI.

2.2.3. Bahasa C Pada AVR ATmega16

Mikrokontroler AVR dapat pula menggunakan bahasa C dalam penulisan

programnya, sehingga dapat memudahkan dan mempersingkat instruksi-intruksi yang

digunakan dalam bahasa assembly. Dalam pembuatan program yang menggunakan fungsi atau aritmatika, bahasa C menawarkan kemudahan dengan menyediakan fungsi-fungsi

khusus, seperti pembuatan konstanta, operator aritmatika, operator logika, operator bitwise

dan operator Assigment. Selain itu, bahasa C menyediakan program kontrol seperti: Percabangan (if dan ifelse), Percabangan switch, Looping (for, while dan do…while),

Array, serta fungsi-fungsi lainnya. Di bawah ini merupakan contoh penulisan program dalam bahasa C untuk mikrokontroler AVR ATmega16.

Preprocessor digunakan untuk memasukkan text dari file lain, mendefinisikan macro yang dapat mengurangi beban kerja pemrograman dan Program Utama preprocessor

inisialisasi 25 meningkatkan legability source code (mudah dibaca). Inisialisasi merupakan pengaturan awal yang akan dibutuhkan dalam membuat suatu program.[7]

2.3. LCD (Liquid Cristal Display)

LCD (Liquid Cristal Display) berfungsi untuk menampilkan karakter angka, huruf ataupun simbol dengan lebih baik dan dengan konsumsi arus yang rendah. LCD (Liquid Cristal Display) dot matrik M1632 merupakan modul LCD buatan hitachi. Modul LCD

(Liquid Cristal Display) dot matrik M1632 terdiri dari bagian penampil karakter (LCD) yang berfungsi menampilkan karakter dan bagian sistem prosesor LCD dalam bentuk

modul dengan mikrokontroler yang diletakan dibagian belakan LCD tersebut yang

berfungsi untuk mengatur tampilan LCD serta mengatur komunikasi antara LCD dengan

mikrokontroler yang menggunakan modul LCD tersebut. LCD yang digunakan adalah tipe

(29)

Gambar 2.4 Bentuk LCD (Liquid Cristal Display)

Modul prosesor M1632 pada LCD tersebut memiliki memori tersendiri sebagai berikut :

1. CGROM (Character Generator Read Only Memory)

2. CGRAM (Character Generator Random Access Memory) 3. DDRAM (Display Data Random Access Memory)

Fungsi Pin LCD (Liquid Cristal Display) Dot Matrix 2×16 M1632

1. DB0 – DB7 adalah jalur data (data bus) yang berfungsi sebagai jalur komunikasi untuk mengirimkan dan menerima data atau instruksi dari mikrokontrooler ke

modul LCD.

2. RS adalah pin yang berfungsi sebagai selektor register (register sellect) yaitu

dengan memberikan logika low (0) sebagai register perintah dan logika high (1) sebagai register data.

3. R/W adalah pin yang berfungsi untuk menentukan mode baca atau tulis dari data yang terdapat pada DB0 – DB7, yaitu dengan memberikan logika low (0) untuk fungsi read dan logika high (1) untuk mode write.

2.4. Komunikasi Data Melalui RS232

RS232 adalah suatu standar komunikasi serial transmisi data antar dua peralatan

elektronik. RS232 dibuat pada tahun 1962 oleh Electronic Industry Association and Telecomunication Industry Association dan ada dua hal pokok yang diatur oleh RS232, yaitu bentuk signal dan level tegangan yang dipakai. Selain digunakan pada peralatan PLC,

sebenarnya sistem RS232 ini sering berhubungan dengan kita pada kehidupan sehari-hari,

antara lain komunikasi PC komputer dengan mouse, keybord atau scanner. Satu hal yang jelas adalah RS323 ini akan diaplikasikan pada semua sistem peralatan yang berbasis

(30)

Komunikasi data secara serial dilakukan dengan metode pengiriman data secara bit

per bit atau satu per satu secara berurutan dan itu berbeda dengan sistem paralel yang

mengirim data secara serentak. kecepatan transfer data RS232 cukup rendah, kecepatan

maksimal hanya 19200 bits/sekon. Pengiriman data bisa dilakukan secara satu arah atau

dua arah. Jika hanya membutuhkan komunikasi satu arah maka cukup menggunakan dua

kabel yaitu kabel “Tx” sebagai pengirim data dan kabel “Rx” sebagai penerima data.

Sedangkan, untuk membuat sistem komunikasi dua arah maka kabel yang dibutuhkan

adalah 3 unit kabel, yaitu kabel Tx, Rx dan GND (ground).

Standar ini menggunakan beberapa piranti dalam implementasinya. Paling umum

yang dipakai adalah plug/konektor DB9 atau DB25.

2.4.1. Prinsip Kerja RS232

Komunikasi data secara serial dilakukan dengan metode untuk mengirimkan data

dari sebuah pengirim secara bit per bit dengan kecepatan tertentu (bit per detik/bps), dan

pengiriman dilakukan melalui jalur satu kawat (Tx) dan diterima oleh sebuah penerima

(Rx) dalam waktu tertentu. Oleh karena komputer penerima dapat berfungsi sebagai

pengirim begitu juga pengirim juga dapat berfungsi sebagai penerima, maka komunikasi

[image:30.595.83.526.228.615.2]

dapat dilakukan dalam dua arah. Seperti yang ditunjukan pada gambar 2.5. di bawah ini.

Gambar 2.5. Komunikasi data serial

2.4.2. Konektor RS232

Konektor DB9 atau DB25 digunakan sebagai penghubung antar devais, RS232

dengan konektor DB9 dipakai untuk mouse, modem dan lain-lain. Sedang konektor DB25 dipakai untuk joystik game. Serial port RS232 dengan konektor DB9 memiliki 9 buah pin dan pada konektor DB25 memiliki pin 25 buah.[10]

(31)
[image:31.595.88.528.85.748.2]

Tabel 2.5. Fungsi pin konektor DB25 dan DB9.

Fungsi pin berdasarkan tabel di atas dapat dijelaskan sebagai berikut:

1. Signal Ground (SG) berfungsi untuk memberikan masa (ground) pada setiap sinyal secara bersama (common signal ground).

2. Transmit Data (TX) berfungsi sebagai saluran keluarnya data dari UART atau sebagai pengirim data ke devais secara serial.

3. Receiver Data (RX) berfungsi sebagai saluran masuknya data ke UART atau sebagai penerima data dari devais secara serial.

4. Data Terminal Ready (DTR) berfungsi sebagai pemberi informasi status ke devais terkoneksi bahwa UART telah siap. Saat terkoneksi dan berkomunikasi

dengan devais DTR perlu beri logika 1.

5. Data Set Ready (DSR) berfungsi untuk menerima informasi status devais bahwa devais siap untuk diakses oleh komputer melalui UART.

6. Request to Send (RTS) berfungsi sebagai isyarat permintaan UART ke devais untukmemfasilitasi bahwa UART akan mengirimkan data ke devais.

7. Clear to Send(CTS) berfungsi sebagai penerima jawaban atas pengiriman isyarat RTS bila modem / piranti telah menerima data.

8. Data Carrier Detect (DCD) berfungsi sebagai penerima isyarat agar komputer bersedia menerima data pada pada waktu tertentu.

9. Ring Indicator (RI) berfungsi menerima isyarat dari modem bahwa ada devais

(eksternal) yang membutuhkan koneksi dalam rangka pengiriman atau permintaan data.

(32)

Gambar 2.6. RS232 pin out (DB9)

2.4.3. Keuntungan Komunikasi Secara Serial

Antar muka komunikasi serial menawarkan beberapa kelebihan dibandingkan

dengan komunikasi pararel, diantaranya:[10]

1. Kabel untuk komunikasi serial bisa lebih panjang dibandingkan dengan pararel.

Data-data dalam komunikasi serial dikirimkan untuk logika ‘1’ sebagai

tegangan -3 s/d -25 volt dan untuk logika ‘0’ sebagai tegangan +3 s/d +25 volt,

dengan demikian tegangan dalam komunikasi serial memiliki ayunan tegangan

maksimum 50 volt, sedangkan pada komunikasi pararel hanya 5 volt. Hal ini

menyebabkan gangguan pada kabel-kabel panjang lebih mudah diatasi

dibanding dengan pararel.

2. Jumlah kabel serial lebih sedikit. Dua perangkat komputer yang berjauhan

dengan hanya tiga kabel untuk konfigurasi null modem, yakni TxD (saluran

kirim), RxD (saluran terima) dan ground, akan tetapi jika menggunakan komunikasi pararel akan terdapat dua puluh hingga dua puluh lima kabel.

3. Komunikasi serial dapat diterapkan untuk berkomunikasi dengan

mikrokontroler.

Hanya dibutuhkan dua pin utama TxD dan RxD (diluar acuan ground).

2.4.4. MAX232

Sinyal TTL dari mikrokontroler nantinya akan diubah menjadi RS232 oleh IC

(33)

Gambar 2.7. Rangkaian MAX232

IC MAX232 ini digunakan sebagai buffer untuk komunikasi serial antara mikrokontroler

dengan komputer. Pada dasarnya komputer dan mikrokontroler sama-sama memiliki

sebuah port untuk komunikasi serial. Namun pada mikrokontroler sinyal levelnya adalah

TTL ( 5 Volt ) sedangkan pada komputer sinyal levelnya sebesar 25 Volt atau lebih dikenal

dengan RS232. Oleh karena itu tidak dapat langsung menghubungkan pin Rx pada

mikrokontroler dengan pin Tx pada komputer atau sebaliknya. Membutuhkan sebuah level

konverter, IC MAX232 ini yang digunakan menjadi sebuah level konverter.

2.5. USART

USART (Universal Synchronous and Ansynchronous Serial Receiver and Transmitter) adalah protokol komunikasi serial antara PC dengan komponen elektronika lainnya, salah satunya adalah mikrokontroler. USART juga digunakan sebagai alat

komunikasi antara satu mikrokontroler dengan mikrokontrol lain maupun dengan port expander. Hal terpenting dalam komunikasi USART antara mikrokontroler adalah diperlukannya driver penghubung yaitu IC RS232 yang berfungsi mengkonversi perbedaan

logic. Hal lain yang perlu diperhatikan adalah setting baudrate dan clock yang digunakan mikrokontroler tersebut. USART (Universal Syncronous Asyncronous Receiver/Transmiter) pada mikrokontroler ATmega16 memiliki beberapa keuntungan diantaranya ialah operasi full duplex (memiliki register receiver dan transmiter yang terpisah), mendukung komunikasi multiprosesor dan kecepatan transmisi berorde Mbps.

2.5.1. Register Komunikasi Serial Usart

Pada mikrokontroler AVR untuk mengaktifkan dan mengatur komunikasi USART

dilakukan dengan cara mengaktifkan register-register yang digunakan untuk komunikasi

(34)

USART harus diatur sedemikian rupa agar komunikasi dapat berlangsung dengan baik,

berikut register-register pada komunikasi serial USART antara lain :

1. USART I/O Data Register

(UDR) digunakan sebagai penyangga (buffer) data yang akan dikirimkan dan penyangga data yang diterima. Transmit data buffer register (TXB) berfungsi sebagai penyangga data yang akan ditulis ke dalam register UDR. Sedangkan

receiver data buffer register (RXB) berfungsi sebagai penyangga data yang diterima oleh register UDR. Register UDR untuk penyangga transmitter hanya dapat ditulis ketika bit/flag UDRE dalam register UCSRA dalam keadaan set. Gambar 2.5 menunjukkan register USART transmitter dan receiver pada UDR sebagai berikut :

Gambar 2.5. Avr Usart Tx dan Rx

2. USART Control and status register A

Gambar 2.6. Register UCSRA

a) Bit 7 RXC : sebagai flag (tanda) bahwa penerimaan data1 byte telah selesai dan

data bisa dibaca pada register UDR.

b) Bit 6 TXC : sebagai flag (tanda) bahwa pengiriman data1 byte telah selesai

[image:34.595.86.525.170.692.2]
(35)

Gambar 2.7. Register UCSRB

a) Bit 7 RXCI : mengatur interupsi penerimaan data serial. Nilai awal 0 dan akan

bernilai 1 jika RXC = 1.

b) Bit 6 TXCIE : mengatur interupsi pengiriman data serial. Nilai awal 0 dan akan

bernilai 1 jika TXC = 1.

c) Bit 4 RXEN : mengaktifkan penerimaan RX.

d) Bit 3 TXEN : mengaktifkan pengiriman TX.

e) Bit 2 UCSZ2 : menentukan panjang karakter yang akan dikirimkan. Register ini

digunakan bersamaan dengan register UCSZ0 dan UCSZ1 yang terdapat pada

register UCSRC

4. USART Control and status register C

Gambar 2.8. Register UCSRC

a) Bit 7 URSEL : karena UCSRC dan UBRRH memakai alamat yang sama maka

fungsi bit ini adalah memutuskan register mana yang akan "ditulis". Jika bernilai

1 maka data akan ditulis ke UCSRC dan jika bernilai 0 maka data akan ditulis di

UBRRH.

b) Bit 6 UMSEL : menentukan apakah komunikasi sinkron atau asinkron. Bernilai

0 maka komunikasi asinkron dan jika bernilai 1 maka komunikasi sinkron.

c) Bit 3 USBS : Usart Stop Bit Select jika bernilai 0 maka stop bit-nya 1 dan jika

bernilai 1 stop bit-nya 2.

d) Bit 2 UCSZ1 dan bit 1 UCSZ0 : bersamaan dengan UCSZ2 menentukan

panjang bit yang akan digunakan. Umumnya 8 bit tetapi anda bisa memilih

(36)

2.6. SPI (SERIAL PERIPHERAL INTERFACE)

SPI (serial peripheral interface) merupakan salah satu metode pengiriman data dari suatu devais ke devais lainnya. Metode ini merupakan metode yang bekerja pada

[image:36.595.83.528.193.628.2]

metode full duplex dan merupakan standar sinkronasi serial data link yang dikembangkan oleh Motorola. ). Cara kerja protokol SPI ditunjukkan pada gambar 2.9 di bawah ini :

Gambar 2.9. Cara kerja protokol SPI

Pada SPI, devais dibagi menjadi dua bagian yaitu master dan slave dengan master sebagai devais yang menginisiasi pengiriman data. Dalam aplikasinya, sebuah master

dapat digunakan untuk mengatur pengiriman data ke beberapa slave (Multipoint).

2.6.1. Pin

Pin Penghubung pada SPI

Komunikasi serial data antara master dan slave pada SPI diatur melalui 4 buah pin yang terdiri dari SCLK, MOSI, MISO, dan SS. Berikut ini adalah penjelasan singkat

mengenai ke 4 pin tersebut: SCLK (serial clock) merupakan data biner yang keluar dari master ke slave yang berfungsi sebagai clock dengan frekuensi tertentu. Clock

merupakan salah satu komponen prosedur komunikasi data SPI. Dalam beberapa

devais, istilah yang digunakan untuk pin ini adalah SCK.

MOSI (master out slave input) merupakan pin yang berfungsi sebagai jalur data pada saat data keluar dari master dan masuk ke dalam slave. Istilah lain untuk pin ini antara lain SIMO, SDI, DI, dan SI.

MISO (master input slave output) merupakan pin yang berfungsi sebagai jalur data yang keluar dari slave dan mesuk ke dalam master. Istilah lain untuk pin ini adalah SOMI, SDO, DO, dan SO.

(37)

Pin SCLK, MOSI, dan SS merupakan pin dengan arah pengiriman data dari master ke slave. Sebaliknya, MISO mempunyai arah komunikasi data dari slave ke master. Pengaturan hubungan antara pin SDO dan SDI harus sesuai dengan ketentuan.

Pin SDO pada master harus dihubungkan dengan pin SDI pada slave, begitu juga sebaliknya. Hal ini penting untuk diperhatikan untuk menghindari terjadinya kesalahan

prosedur pada pengiriman data. Istilah pin-pin SPI untuk berbagai devais mungkin saja mempunyai istilah yang berbeda dengan istilah di atas tergantung produsen yang

membuatnya.

SPI pada AVR merupakan salah satu peripheral sederhana dalam programingnya.

AVR memiliki arsitektur 8 bit mikrokontroler, sehingga SPI pada AVR juga 8 bit. Bahkan

biasanya bus SPI juga mempunyai nilai 8 bit. Pada AVR, port SPI berada pada PORT B baik untuk yang mempunyai kaki 28 ataupun 40.

2.6.2. Register Komunikasi SPI

Ada tiga register yang terdapat pada SPI di AVR:

1. SPCR

SPI Control Register merupakan register dari Master Device. Berisi Bit inisialisasi dari AVR dan kontrol data dari Master Device .

2. SPSR

SPI Status Register merupakan register status dari AVR, digunakan untuk membaca

status komunikasi dari Bus SPI.

3. SPDR

SPI Data Register merupakan register data dari SPI dimana untuk membaca atau

mengirim data yang sebenarnya.

2.6.2.1. SPI Control RegIster (SPCR)

Seperti namanya, SPCR adalah register untuk mengontrol dari SPI. Terdapat Bit

[image:37.595.87.529.245.608.2]

dimana kita menemukan bit untuk mengenable SPI, mengatur clock atau kecepatan dari SPI, mengatur mode operasi seperti master/slave. Berikut ini adalah gambar isi dari SPCR:

(38)

Bit 7: SPIE – SPI Interrupt Enable

SPIE adalah bit yang digunakan untuk mengaktikfkan interupsi dari SPI. Untuk mengaktifkannya, Global interrupt dari AVR harus diaktifkan terlebih dahulu. Set bit ini pada kondisi high atau 1 untuk mengaktifkan interrupt SPI.

Bit 6: SPE – SPI Enable

SPE adalah bit yang digunakan untuk mengaktifkan SPI secara keseluruhan. Jika bit ini di-set pada kondisi high atau 1 maka SPI akan aktif dan yang lain akan dimatikan. Saat SPI diaktifkan, port kaki dari AVR masih bisa berfungsi sebagai

Input-Output itu sendiri. Bit 5: DORD – Data Order

Data order adalah mode pengiriman apakah MSB dulu atau LSB dulu. Set bit

ini pada kondisi high atau 1 jika ingin mengirimkan 4 bit yang kecil (LSB) dulu.

Namun jika ingin mengirim MSB dulu maka set bit ini pada kondisi low atau 0. Bit 4: MSTR – Master/Slave Select

Bit ini digunakan untuk menyetting hardware sebagai master atau sebagai

slave. Jika ingin menyetting sebagai master maka set bit ini pada kondisi high atau 1 (clock dihasilkan dari device lain). Jika bit di set low atau 0 maka device bertindak sebagai slave.

Bit 3: CPOL – Clock Polarity

Bit ini digunakan untuk memilih polaritas clock pada saat kondisi idle. Set bit ini pada kondisi high atau 1 untuk mengaktifkan clock tinggi pada saat idle, dan sebaliknya mengatur bit ini low atau 0 untuk mengaktifkan clock rendah pada saat idle.

Artinya saat bit CPOL bernilai low maka clock SCK akan bersifat rising edge, dan jika pada kondisi high maka SCK akan bersifat Falling Edge. (Rising adalah perubahan pulsa pada saat 0 ke 1, falling sebaliknya adalah kondisi pada saat pulsa berubah dari 1 ke 0).

Bit 2: CPHA – Clock Phase

Bit inidigunakanuntuk sampling data. Set Bit satuatau high untuk sampling data saat SCK dalam edge yang pertama, set bit 0 atau low untuk sampling data saat sck dalam edge

yang kedua.

Bit 1,0: SPR1, SPR0 – SPI Clock Rate Select

Digunakan untuk memilih pembagi atau prescaller dari clock SPI, dimana FOSC

(39)

2.6.2.2. SPI Data Register (SPDR)

SPI Data register adalah register yang digunakan untuk menyimpan data baik yang akan dikirim maupun yang sudah di terima.

Gambar 2.12. SPDR Register

Bit ke 7 adalah bit Most Significant Bit (MSB) dan Bit yang ke 0 adalah bit Least

Significant Bit (LSB). Sekarang kita bisa sambungkan ke Bit ke 5 SPCR, jika MSB yang

dikirim duluan maka Bit 4 hingga 7 dari data registerlah yang akan dikirim pertama,

namun jika LSB yang dikirim pertama maka Bit 0 hingga Bit 3 lah yang akan dikirim

duluan.[12]

2.7. I2C (Inter Integrated Circuit )

Inter Integrated Circuit atau sering disebut I2C adalah standar komunikasi serial dua arah menggunakan dua saluran yang didisain khusus untuk mengirim maupun

menerima data. Sistem I2C terdiri dari saluran SCL (Serial Clock) dan SDA (Serial Data) yang membawa informasi data antara I2C dengan pengontrolnya. Piranti yang

dihubungkan dengan sistem I2C bus dapat dioperasikan sebagai Master dan Slave. Master adalah piranti yang memulai transfer data pada I2C bus

dengan membentuk sinyal Start, mengakhiri transfer data dengan membentuk sinyal Stop, dan membangkitkan sinyal clock. Slave adalah piranti yang dialamati master.

(40)

Gambar 2.13. Kondisi sinyal start dan stop

Sinyal dasar yang lain dalam I2C bus adalah sinyal acknowledge yang disimbolkan dengan ACK Setelah transfer data oleh master berhasil diterima slave, slave akan menjawabnya dengan mengirim sinyal acknowledge, yaitu dengan membuat SDA menjadi “0” selama siklusclock ke 9. Ini menunjukkan bahwa Slave telah menerima 8 bit data dari Master. Gambar 2.14 merupakan sinyal ACK dan NACK

Gambar 2.14. Sinyal ACK dan NACK

Dalam melakukan transfer data pada I2C Bus, harus mengikuti tata cara yang telah ditetapkan yaitu :

1. Transfer data hanya dapat dilakukan ketikan Bus tidak dalam keadaan sibuk. 2. Selama proses transfer data, keadaan data pada SDA harus stabil selama SCL

dalam keadan tinggi. Keadaan perubahan “1” atau “0” pada SDA hanya dapat dilakukan selama SCL dalam keadaan rendah. Jika terjadi perubahan keadaan

SDA pada saat SCL dalam keadaan tinggi, maka perubahan itu dianggap sebagai

sinyal Start atau sinyal Stop.

2.7.1. Register Komunikasi I2C

I2C (Inter-Integrated Circuit) umumnya disebut sebagai “two-wire interface”.

(41)

Gambar 2.15. Konfigurasi sistem I2C

Pada komunikasi I2C terdapat perangkat master dan slave. Master adalah perangkat yang mengatur jalur clock SCL. Sedangkan slave adalah perangkat yang merespon perintah

master. Slave tidak dapat mengirim sinyal untuk dapat mentransfer data pada jalur I2C, hanya master yang dapat melakukannya.

Berikut adalah Gambar 2.16 timing diagram dari sebuah master yang ingin meminta data yang terdiri dari dua sekuen khusus yang ditetapkan untuk I2C yaitu Start dan Stop.

Gambar 2.17. Timing diagram

Data terdiri dari 8 bit dan menjadi 9 bit dengan bit terakhir adalah ACK

(Acknowledge). ACK (Acknowledge) adalah sinyal yang dikirim oleh sinyal penerima. Jika perangkat penerima mengirim kembali bit low ACK, karena sudah menerima data dan berarti siap menerima data selanjutnya. Jika sinyal ACK yang dikirim adalah high maka perangkat tersebut tidak dapat menerima data lebih lanjut dan master harus menghentikan transfer dengan mengirim Stop sequence.

Semua pengalamatan I2C terdiri dari 7 bit atau 10 bit. Penggunaan pengalamatan 10 bit jarang. Biasanya yang banyak digunakan adalah pengalamatan 7 bit. Data yang terdiri dari 9 bit terdapat R/W sebagai bit pengatur apakah maksud dari master adalah untuk

write/menulis (nilai R/W bit = 0) data atau read/membaca (nilai R/W bit = 1) data dari

(42)

24

BAB III

RANCANGAN PENELITIAN

3.1. Proses Kerja Sistem

Bab ini menjelaskan tentang perancangan alat secara umum dari hardware dan

software.

Perancangan alat ini terdiri dari beberapa bagian utama, yaitu IC Atmega16, IC

MAX 232, LCD 2x16. Kegunaan IC MAX232 atau lebih dikenal dengan RS232 adalah

sebagai driver, yang akan mengkonversi tegangan atau kondisi logika TTL dari hardware

agar sesuai dengan tegangan pada mikrokontroler sehingga data dapat dibaca.

Mikrokontroler Atmega16 berfungsi untuk mengatur dan memproser input data yang

diterima dari sistem boiler. LCD yang digunakan adalah tipe LCD 2x16. LCD berfungsi

untuk menampilkan data-data yang telah diatur dan diterima. Sistem ini merupakan

fullduplex atau komunikasi dua arah yakni pengirimin (Tx) dan penerima (Rx). Bagian utama dari sistem tersebut memggunakan dua buah mikro dimana fungsinya sebagai

master dan slave. Arsitektur umum sistem ditunjukan seperti diagram blok pada gambar

3.1.

Gambar 3.1. Diagram Blok Keseluruhan Sistem

3.2. Kebutuhan Perangkat Keras

Ada beberapa komponen dalam perancangan sub sistem keras komunikasi serial diantaranya adalah sebagai berikut :

(43)

3. Minimum sistem IC MAX 232 4. Kabel RS-232

3.3. Perancangan Perangkat Keras Mekanik

Perancangan ini merupakan desain modul komunikasi serial akan dibuat dengan

bentuk gambar 3 dimensi, yang nantinya akan menjadi panduan untuk membuat alat yang

sebenarnya. Pada perancangan boks untuk tempat model komunikasi serial, bahan yang

digunakan adalah bahan jenis mika (plastik keras). Pada gambar 3.2 ditunjukkan desain

untuk komunikasi serial dengan ukuran panjang x lebar x tinggi adalah 25cm x 15cm x

5cm.

Didalam boks tersebut akan terpasang minimum sistem ATmega16 dan rangkaian

RS232. Sementara untuk meletakkan koneksi port serial USART dan SPI disamping kotak

boks. Untuk LCD 2x16 posisinya dapat diletakkan di atap boks. Desain boks di tunjukkan

pada gambar 3.2 a dan b.

a. Gambar Tampak Atas b. Gambar Tampak Samping

3.4. Perancangan Perangkat Keras Elektronika

3.4.1. Perancangan Minimum Sistem dan Display LCD 2x16

Minimum sistem merupakan pusat kontrol dan pengolahan data dari simulator

boiler. Display LCD merupakan perangkat interface untuk menampilkan hasil data yang diterima dari simulator boiler.

Dalam perancangan ini terdapat dua buah IC ATmega16 yaitu mikrokontroler A

dan mikrokontroler B yang memiliki fungsi masing-masing. Mikrokontroler A fungsinya

digunakan untuk menerima data dari model simulator boiler. Data yang diterima berupa

data parameter boiler. Mikrokontroler B fungsinya digunakan untuk menerima data dari

(44)

Gambar 3.2 merupakan minimum sistem dengan IC mikrokontroler ATmega16

sebagai komponen utama. Pada minimum sistem ditambahkan rangkaian clock ekstrnal. Nilai kapasitor C1=C2=C4=C5= 22pF dan C3=C6= 100nF sesuai dengan datasheet

ATmega16, yang berfungsi mengoptimalkan clock yang dihasilkan dari Crystal 11.0592 MHz. Nilai kapasitor dan resistor R1=R2=10K dimana fungsinya sebagai pembatas arus

[image:44.595.85.527.217.638.2]

yang mengalir ke rangkaian, serta push button merupakan bagian dari rangkaian reset.. Gambar minimum sistem dan display LCD 2x16 seperti ditunjukan pada gamabar 3.2.

Gambar 3.3. Minimum Sistem dan Display LCD 2x16

3.4.2. Perancangan Rangkaian RS-232

RS232 adalah standard komunikasi serial yang digunakan untuk koneksi periperal ke periperal. Biasa juga disebut dengan jalur I/O ( input / output ).

Fungsi dari serial port RS232 adalah untuk menghubungkan / koneksi dari perangkat yang satu dengan perangkat yang lain, atau peralatan standard yang menyangkut komunikasi data antara mikrokontroler. Pada IC MAX232 terdapat pin untuk komunikasi

(45)

serial yaitu Rx dan Tx. Rx digunakan untuk mengirimkan data secara serial sedangkan Tx

digunakan untuk menerima data secara serial.

Pada mikrokontroler ATmega16, pin D0 dan D1 digunakan untuk komunikasi serial

usart (Universal Synchronous and Asynchronous Serial Receiver And Transmiter) yang mendukung komunikasi full duplex (komunikasi dua arah). Dengan fasilitas Rx dan Tx ini mikrokontroler bisa berkomunikasi secara serial usart baik antara devais. Sistem

komunikasi ini, jumlah data yang diterima merupakan data 8 bit dan data yang akan

diterima dari model simultor boiler ada lima buah parameter sebagai berikut :

1. Temperatur

2. Tekanan

3. Level air

4. Level oli

5. Blower

Nilai komponen C7=C8=C9=C10=10uF pada rangkaian RS232 mengacu pada datasheet

IC MAX232. Gambar rangkaian RS232 seperti ditunjukkan pada gambar 3.3.

(46)

Rancangan program ini dibuat kedalam bentuk flowchart, guna mempermudah proses pembuataan listing program. Program mikrokontroler yang akan dibuat menggunakan bahasa C, kemudian program tersebut disusun (compile) secara otomatis ke dalam bentuk file *.hex untuk dimasukan ke dalam IC ATmega16. Listing program yang akan dibuat meliputi:

1. Komunikasi Serial Usart

2. Komunikasi I2C

3. Komunikasi SPI

3.5.1. Diagram Alir Utama

Diagram alir utama ditunjukkan pada gambar 3.5. Program utama menunjukkan

proses mikrokontroler keseluruhan.

START

INISIALISASI

TERIMA DATA DARI MODEL SISTEM

BOILER

KOMUNIKASI DENGAN SISTEM PENAMPIL

KIRIM PAKET DATA

APAKAH ADA DATA FEEDBACK ?

KOMUNIKASI DENGAN SISTEM MODEL SIMULATOR BOILER END YA TIDAK

Gambar 3.5. Diagram Alir Utama

Setelah start, program melakukan inisialisasi terhadap port-port mikrokontroler yang digunakan untuk proses pengendalian alat. Proses pengiriman data dari sistem model boiler

(47)

sistem panampil dan sistem monitoring boiler. Data yang di terima oleh sistem monitoring

berupa sebuah paket data.

Pada saat data parameter yang diterima oleh sistem monitoring boiler melebihi atau kurang dari batas yang ditentukan (set point) , maka sistem monitoring dapat melakukan umpan balik (feedback) ke model sistem boiler. Timing (pewaktuan) yang dibutuhkan untuk proses pengiriman dan penerimaan harus sinkron supaya tidak terdapat ada

kesalahan atau error.

3.5.2. Diagram Alir Komunikasi Serial Dengan Sistem Boiler

Diagram alir modul serial komunikasi dengan sistem boiler, data yang akan dikirim

dengan menggunakan cara komunikasi serial USART. Setelah start, program melakukan inisialisasi terhadap port-port mikrokontroler A. Setelah data parameter dari sistem model boiler diterima kemudian data tersebut dapat diproses lebih lanjut oleh mikrokontroler A.

Ketika pemrosesan data parameter pada mikrokontroler A sudah selesai maka data

tersebut akan dikirim ke mikrontroler B. Gambar diagram alir model serial komunikasi

dengan sistem boiler dapat ditunjukkan pada gambar 3.6.

START

INISIALISASI

TERIMA DATA

DATA DI KIRIM ?

MIKRO B

END

TIDAK

YA

(48)

3.5.3. Diagram Alir Komunikasi Serial Dengan Sistem Penampil

Berikut ini menjelaskan komunikasi serial antara mikrokontroler A dengan

mikrokontroler B menggunakan cara komunikasi serial I2C. Untuk komunikasi ini sendiri

merupakan komunikasi satu arah dimana mikrokontroler A sebagai pemancar (TX) dan

mikrokontroler B sebagai penerima (RX).

Setelah start, program melakukan inisialisasi terhadap port-port mikrokontroler B. Saat proses penguraian data parameter pada mikrokontroler B sudah selesai dan data

tersebut akan ditampilkan pada LCD 2x16. Gambar 3.7 merupakan diagram alir serial

komunikasi sistem penampil.

START

INISIALISASI

PROSES PENGURAIA

N DATA

MENAMPILKAN DATA

[image:48.595.85.512.207.628.2]

END

Gambar 3.7. Diagram Alir Komunikasi Serial dengan Sistem Penampil

Proses penguraian data dari sistem model simulator boiler akan dilakukan secara

berurutan atau satu per satu. Parameter yang akan diterima langsung tampil di LCD. Data

yang diterima pada sistem penampil ini akan sama dengan data yang akan dikirimkan dari

sistem model simulator boiler. Setiap parameter akan diberi kode seperti terlihat pada tabel

(49)
[image:49.595.136.479.104.236.2]

Tabel 3.1. Kode parameter boiler

No Parameter Kode Satuan

1 Temperatur T C (C)

2 Tekanan P bar (b)

3 Level Air A ton (t)

4 Level Oli O meter kubik(m3)

5 Blower B -

Setiap parameter yang diterima akan diberikan kode ASCII (American Standard Code for Information Interchange). Contohnya untuk kondisi blower di LCD akan ditampilkan “B=1”, dimana B merupakan kode dari blower dan 1 menunjukan kondisi

blower sedang ON. Kode ASCII (American Standard Code for Information Interchange)

[image:49.595.81.527.235.617.2]

dari B=1 dalam bentuk desimal dan biner ditunjukan pada tabel 3.2. Tabel 3.2. Karakter ASCII “B=1” dalam desimal dan biner

ASCII Desimal Biner

B 11 00001011

= 61 00111101

1 1 00000001

Data yang terima lebih dahulu adalah LSB (least significant bit). LSB merupakan bit yang paling kanan. Dengan demikian, gambaran paket data dari “B=1” yang akan

diterima diperlihatkan seperti pada gambar 3.8.

Gambar 3.8. Paket data serial “B=1”

Karena data diterima dengan kecepatan 9600 bit/detik, maka setiap bitnya

memerlukan waktu selama 1/9600 = 104 mikrodetik/bit. Satu paket data untuk satu

karakter terdiri dari 10 bit (8-bit data, 1-bit start dan 1-bit stop). Dengan demikian,

penerimaan satu karakter (yang terdiri dari 10-bit) akan membutuhkan waktu selama 10 x

(50)

membutuhkan waktu sekitar 3 milidetik pada kecepatan 9600 bps. Jika ingin mengirim

karakter yang lain, dapat mengacu pada tabel 3.8. untuk tiap-tiap karakter ASCII.

Untuk menerima dan menampilkan data parameter yang diatur menggunakan LCD

2x16. Data yang akan ditampilkan pada sistem penampil sama dengan data yang akan

dikirim oleh model simulator boiler. Data yang akan diterima merupakan parameter yang

sudah diatur oleh model simulator boiler. Setiap parameter akan diberi simbol atau kode

sebagai berikut :

1. Temperatur : T dengan satuan C (C)

2. Tekanan : P dengan satuan bar (b)

3. Level Air : A dengan satuan ton (t)

4. Level Oli : O dengan satuan liter (L)

5. Blower : B dengan kondisi (OFF : 0 dan ON : 1)

[image:50.595.84.519.170.770.2]

Pada gambar 3.9. merupakan contoh dari tampilan data yang diharapkan pada LCD.

Gambar 3.9. Contoh Data yang Akan Ditampilkan

(51)

Tujuan pemberian kode agar data yang sudah dikirim oleh model simulator boiler

dapat dikenali atau dibaca oleh mikrokontroler dari modul komunikasi serial sebelum data

tersebut ditampilkan pada LCD.

3.5.4. Diagram Alir Komunikasi Serial Dengan Sistem Monitoring

Diagram alir komunikasi serial dengan sistem monitoring menggunakan cara komunikasi serial SPI dan komunikasi ini merupakan komunikasi dua arah. Disebut

sebagai komunikasi dua arah karena komunikasi sistem yang satu berfungsi sebagai

pemancar (TX) dan yang satu sebagai penerima (RX) dan begitu sebaliknya. Setelah start, program melakukan inisialisasi terhadap port-port mikrokontroler A. Jadi parameter data

input dari sistem boiler akan diterima oleh mikrokontroler A, selanjutnya data pada mikrokontroler A tersebut akan dikirim dan ditampilkan di bagian sistem monitoring.

Pada saat data parameter nilainya melebihi atau kurang dari batas yang ditentukan

(set point), sehingga sistem monitoring akan melakukan umpan balik (feedback) ke model simulatorboiler untuk mematikan blower. Gambar diagram alir modul serial komunikasi dengan sistem monitoring dapat ditunjukkan pada gambar 3.10.

STAR

INISIALISASI

INPUT BOILER

AMBIL DATA ?

[image:51.595.88.531.332.745.2]

KIRIM DATA KE SISTEM MONITORING DATA DITAMPILKAN ADA DATA FEEDBACK ? END TIDAK YA TIDAK YA

(52)

34

BAB IV

HASIL DAN PEMBAHASAN

Bab ini berisi tentang gambar fisik hardware yang dibuat. Hardware yang dibuat bertujuan untuk mengimplementasikan rancangan dari alat yang sudah dibahas dalam bab

III. Setiap perangkat mengambil bagian penting dari sebuah sistem secara keseluruhan.

Berikut ini merupakan hasil implemetasi dari perancangan alat dan bagian-bagian

komponen yang merupakan satu kesatuan dari keseluruhan sistem.

4.1. Bentuk Fisik Hardware Elektronika

4.1.1. Bentuk Fisik Minimum System ATmega16

Bentuk fisik minimum system ATmega16 terdapat dua buah minimum sistem,

yakni minimum system A yang secara keseluruhan ditunjukkan pada pada gambar 4.1 dan

minimum system B yang secara keseluruhan ditunjukkan pada gambar 4.2. Minimum

sistem A terdiri dari IC ATmega16, IC Max232, port A, port B, port C, port D, port female

rs232, dan connector Vcc, sedangkan minimum system B terdiri dari IC ATmega 16, port A, port B, port C, port D dan connector Vcc Minimum system A fungsinya digunakan untuk menerima data dari model simulator boiler. Data yang diterima berupa data

parameter boiler. Minimum system B fungsinya digunakan untuk menerima data dari

[image:52.595.84.525.238.738.2]

minimum system A dan data tersebut akan ditampilkan pada LCD .

(53)

Gambar 4.2. Minimum System B

4.1.2. Bentuk Fisik LCD 2x16

Bentuk Fisik LCD 2x16 secara keseluruhan terdapat pada gambar 4.3. LCD berfungsi

untuk menampilkan data-data yang telah diatur dan diterima. Data yang ingin ditampilkan

[image:53.595.84.524.78.735.2]

berupa data parameter yang diolah oleh minimum system B. Port yang digunakan yakni port D.

(54)
[image:54.595.79.546.76.721.2]

Gambar 4.4. Rangkaian Keseluruhan Modul Komunikasi Serial

(55)
[image:55.595.81.519.88.633.2]

Tabel 4.1. Penggunaan Port Pada Mynsis Mikrokontroler

No Saluran Fungsi

1

Gambar

Gambar 1.1. Diagram Blok Perancangan
Gambar 2.1. Model Komunikasi Data Sederhana
Gambar 2.3 Konfigurasi kaki (pin) ATmega16 [6]
Tabel 2.1 Fungsi khusus port B.
+7

Referensi

Dokumen terkait

Prototipe Sistem Pengaturan Pada Traffic Light Menggunakan Tenaga Surya Sebagai Pembangkit Listrik Berbasis Mikrokontroler AVR ATMega16, untuk.. dapat mengetahui dan

ENERGY SUPPLY SOLAR CELL PADA SISTEM PENGENDALI PORTAL PARKIR OTOMATIS BERBASIS..

Melihat salah satu fungsi yang bisa dilakukan mikrokontroler pada proses pengontrolan, maka pada tugas akhir ini dirancang dan dibuat sebuah sistem kontrol berbasis

Dalam langkah ini meliputi pembuatan Mekanik robot, sistem minimum mikrokontroler ATmega8, Driver motor servo, Tombol input, Catu daya dan Pemrograman yang telah

Data hasil pengujian software peralihan dari sumber Genset ke PLN dapat diketahui sistem saklar pemindah otomatis secara simulasi software dapat berfungsi

Pengujian sistem pengendali otomatis debit air pada simulasi bendungan menggunakan mikrokontroler atmega 32 dan komunikasi serial dilakukan untuk menguji

Perancangan sistem kontrol suhu pada prototipe rumah budidaya burung walet tradisional berbasis mikrokontroler ATmega16 menggunakan sensor DHT11 diawali dengan

Bagian pertama dari rangkaian ini adalah minimum sistem mikrokontroler AT89C51 yang berfungsi untuk menerima & mengelola data dari komputer yang nantinya digunakan untuk mengendalikan