• Tidak ada hasil yang ditemukan

BAB II TINJAUAN PUSTAKA. 2.1 Pengenalan Mikrokontroler AVR ATMega 8535

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB II TINJAUAN PUSTAKA. 2.1 Pengenalan Mikrokontroler AVR ATMega 8535"

Copied!
27
0
0

Teks penuh

(1)

BAB II

TINJAUAN PUSTAKA

2.1 Pengenalan Mikrokontroler AVR ATMega 8535

Atmel, salah satu vendor yang bergerak di bidang mikroelektronika, telah mengembangkan AVR (Alf and Vegard’s Risc processor) sekitar tahun 1997. Berbeda dengan mikrokontroler MCS51, AVR menggunakan arsitektur RISC (Reduce Instruction Set Computer) yang mempunyai lebar bus data 8 bit. Perbedaan ini bisa dilihat dari frekuensi kerjanya . MCS51 memiliki frekuensi kerja seperdua belas kali frekuensi osilator sedanngkan frekuensi kerja AVR sama dengan frekuensi osilator. Jadi dengan frekuensi osilator yang sama, kecepatan AVR dua belas kali lebih cepat dibandingkan dengan kecepatan MCS51. Secara umum AVR dibagi menjadi 4 kelas yaitu ATtiny, AT90Sxx, ATMega, AT86RFxx. Perbedaan antar type AVR terletak pada fitur-fitur yang ditawarkan, sementara dari segi arsitektur dan set instruksi yang digunakan hampir sama.

2.1.1 Arsitektur Mikrokontroler AVR ATMega8535

AVR termasuk kedalam jenis mikrokontroler RISC (Reduced Instruction Set Computing) 8 bit. Berbeda dengan mikrokontroler keluarga MCS-51 yang berteknologi CISC (Complex Instruction Set Computing). Pada mikrokontroler dengan teknologi RISC semua instruksi dikemas dalam kode 16 bit (16 bits words) dan sebagian besar instruksi dieksekusi dalam 1 clock, sedangkan pada teknologi CISC seperti yang diterapkan pada mikrokontroler MCS-51, untuk menjalankan sebuah instruksi dibutuhkan waktu sebanyak 12 siklus clock.

(2)

Gambar 2.1 Arsitektur ATMEGA8535

Secara garis besar, arsitektur mikrokontroler ATMEGA8535 terdiri dari : 1. 32 saluran I/O (Port A, Port B, Port C dan Port D)

2. 10 bit 8 Channel ADC (Analog to Digital Converter) 3. 4 Channel PWM

4. 6 Sleep Modes : Idle, ADC Noise Reduction, Power-save, Power-Down, Standby and Extended Standby

5. 3 buah timer/counter. 6. Analog Compararator

7. Watchdog timer dengan osilator internal 8. 512 byte SRAM

9. 512 byte EEPROM

10. 8 kb Flash memory dengan kwmampuan Read While Write 11. Unit interupsi (internal dan external)

(3)

12. Port antarmuka SPI8535 “memory map”

13. Port USART untuk komunikasi serial dengan kecepatan maksimal 2,5 Mbps 14. 4,5 V sampai 5,5 V operation, 0 sampai 16 MHz

2.1.2 Peta Memory ATMega8535

ATMega8535 memiliki ruang pengalamatan memori data dan memori program yang terpisah. Memori data terbagi menjadi 3 bagian yaitu : 32 buah register umum, 64 buah register I/O, dan 512 byte SRAM internal.

Register untuk keperluan umum menempati space data pada alamat terbawah yaitu $00 sampai $1F. Sementara itu register khusus untuk menangani I/O dan kontrol terhadap mikrokontroler menempati 64 alamat berikutnya, yaitu mulai dari $20 sampai $5F. Register tersebut merupakan register yang khusus digunakan untuk mengatur fungsi terhadap berbagai peripheral mikrokontroler, seperti kontrol register, timer/counter, fungsi fungsi I/O, dan sebagainya. Register khusus alamat memori secara lengkap dapat dilihat pada tabel dibawah. Alamat memori berikutnya digunakan untuk SRAM 512 byte, yaitu pada lokasi $60 sampai dengan $25F.

(4)

Selain itu AVR ATmega8535 juga memilki memori data berupa EEPROM 8-bit sebanyak 512 byte. Alamat EEPROM dimulai dari $000 sampai $1FF.

2.1.3 Status Register

Status register adalah register berisi status yang dihasilkan pada setiap operasi yang dilakukan ketika suatu instruksi dieksekusi. SREG merupakan bagian dari inti CPU mikrokontroler

Gambar 2.3 Status Register Keterangan Status Register ATMega8535

1. Bit7 - I (Global Interrupt Enable), bit harus diset untuk mengenable semua jenis interupsi

2. Bit6 - T (Bit Copy Storage), Instruksi BLD dan BST menggunakan bit T sebagai sumber atau tujuan dalam operasi bit. Suatu bit dalam sebuah register GPR dapat disalin ke bit T menggunakan instruksi BST, dan sebaliknya bit T dapat disalin kembali kesuatu bit dalam register GPR dengan menggunakan instruksi BLD.

3. Bit5 - H (Half Cary Flag), untuk menunjukkan ada tidaknya setengah carry pada operasi aritmatika.

4. Bit4 - S (Sign Bit) merupakan hasil operasi EOR antara flag -N (negatif) dan flag V (komplemen dua overflow).

5. Bit3 - V (Two's Component Overflow Flag) Bit ini berfungsi untuk mendukung operasi matematis.

6. Bit2 - N (Negative Flag) Flag N akan menjadi Set, jika suatu operasi matematis menghasilkan bilangan negatif.

7. Bit1 - Z (Zero Flag) Bit ini akan menjadi Set apabila hasil operasi matematis menghasilkan bilangan 0.

8. Bit0 - C (Cary Flag) Bit ini akan menjadi set apabila suatu operasi menghasilkan carry

(5)

2.1.4 Konfigurasi Pin Mikrokontroler AVR ATMega 8535

Mikrokontroler ATMega8535 memiliki 40 pin untuk mode mode

1. VCC : merupakan pin yang berfungsi sebagai pin masukan catu daya 2. GND : merupakan pin ground.

3. Port A (PA0...PA7) : merupakan pin I/O dan pin masukan ADC

4. Port B (PB0 – PB7) : merupakan akan pin I/O dua arah dan pin fungsi khusus, yaitu sebagai Timer/Counter, komperator analog dan SPI.

5. Port C (PC0 – PC7) : merupakan pin I/O dua arah dan pin fungsi khusus, yaitu TWI, komperator analog, input ADC dan Timer Osilator.

6. Port D (PD0 – PD7) : merupakan pin I/O dua arah dan pin fungsi khusus, yaitu komperator analog, interupsi eksternal dan komunikasi serial.

7. RESET : merupakan pin yang digunakan untuk mereset mikrokontroler. 8. XTAL1 dan XTAL2 : merupakan pin masukan clock eksternal.

9. XTAL1 dan XTAL2 : merupakan pin masukan clock eksternal. 10. AREF : merupakan pin tegangan referensi ADC

(6)

Deskripsi pin-pin pada mikrokontroler ATMega8535 : 1. Port A

Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port A dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port A (DDRA) harus disetting terlebih dahulu sebelum Port A digunakan. Bit-bit DDRA diisi 0 jika ingin memfungsikan pin-pin port A yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, kedelapan pin port A juga digunakan untuk masukan sinyal analog bagi A/D converter

2. Port B

Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port B dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port B (DDRB) harus disetting terlebih dahulu sebelum Port B digunakan. Bit-bit DDRB diisi 0 jika ingin memfungsikan pin-pin port B yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Pin-pin port B juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam tabel berikut.

Tabel 2.1 Fungsi Pin-pin Port B

Port Pin Fungsi Khusus

PB0 T0 = timer/counter 0 external counter input PB1 T1 = timer/counter 0 external counter input PB2 AIN0 = analog comparator positive input PB3 AIN1 = analog comparator negative input PB4 SS = SPI slave select input

(7)

PB6 MISO = SPI bus master input / slave output PB7 SCK = SPI bus serial clock

3. Port C

Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port C dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port C (DDRC) harus disetting terlebih dahulu sebelum Port C digunakan. Bit-bit DDRC diisi 0 jika ingin memfungsikan pin-pin port C yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, dua pin port C (PC6 dan PC7) juga memiliki fungsi alternatif sebagai oscillator untuk timer/counter 2.

4. Port D

Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port D dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port D (DDRD) harus disetting terlebih dahulu sebelum Port D digunakan. Bit-bit DDRD diisi 0 jika ingin memfungsikan pin-pin port D yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, pin-pin port D juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam tabel berikut.

Tabel 2.2 Fungsi Pin-pin Port D

Port Pin Fungsi Khusus

PD0 RDX (UART input line) PD1 TDX (UART output line)

PD2 INT0 ( external interrupt 0 input ) PD3 INT1 ( external interrupt 1 input )

(8)

PD4 OC1B (Timer/Counter1 output compareB match output) PD5 OC1A (Timer/Counter1 output compareA match output) PD6 ICP (Timer/Counter1 input capture pin)

PD7 OC2 (Timer/Counter2 output compare match output)

5. RESET

RST pada pin 9 merupakan reset dari AVR. Jika pada pin ini diberi masukan low selama minimal 2 machine cycle maka system akan di-reset.

6. XTAL1

XTAL1 adalah masukan ke inverting oscillator amplifier dan input ke internal clock operating circuit.

7. XTAL2

XTAL2 adalah output dari inverting oscillator amplifier.

8. AVcc

Avcc adalah kaki masukan tegangan bagi A/D Converter. Kaki ini harus secara eksternal terhubung ke Vcc melalui lowpass filter.

9. AREF

AREF adalah kaki masukan referensi bagi A/D Converter. Untuk operasionalisasi ADC, suatu level tegangan antara AGND dan Avcc harus dibeikan ke kaki ini.

10. AGND

AGND adalah kaki untuk analog ground. Hubungkan kaki ini ke GND, kecuali jika board memiliki anlaog ground yang terpisah.

(9)

2.2 Sensor dan Transduser

Sensor dan transduser merupakan peralatan atau komponen yang mempunyai peranan penting dalam sebuah sistem pengaturan otomatis. Ketepatan dan kesesuaian dalam memilih sebuah sensor akan sangat menentukan kinerja dari sistem pengaturan secara otomatis.

Besaran masukan pada kebanyakan sistem kendali adalah bukan besaran listrik, seperti besaran fisika, kimia, mekanis dan sebagainya.Untuk memakaikan besaran listrik pada sistem pengukuran, atau sistem manipulasi atau sistem pengontrolan, maka biasanya besaran yang bukan listrik diubah terlebih dahulu menjadi suatu sinyal listrik melalui sebuah alat yang disebut transducer

2.2.1 Definisi

Sensor adalah suatu peralatan yang berfungsi untuk mendeteksi gejala-gejala atau sinyal-sinyal yang berasal dari perubahan suatu energi seperti energi listrik, energi fisika, energi kimia, energi biologi, energi mekanik dan sebagainya. Contoh: Camera sebagai sensor penglihatan, telinga sebagai sensor pendengaran, kulit sebagai sensor peraba, LDR (light dependent resistance) sebagai sensor cahaya, dan lainnya.

Transduser adalah sebuah alat yang bila digerakan oleh suatu energi di dalam sebuah sistem transmisi, akan menyalurkan energi tersebut dalam bentuk yang sama atau dalam bentuk yang berlainan ke sistem transmisi berikutnya”. Transmisi energi ini bisa berupa listrik, mekanik, kimia, optic (radiasi) atau thermal (panas). Contoh: generator adalah transduser yang merubah energi mekanik menjadi energi listrik, motor adalah transduser yang merubah energi listrik menjadi energi mekanik, dan sebagainya.

2.2.2 Klasifikasi Sensor dan Transduser 2.2.2.1 Klasifikasi sensor

Secara umum berdasarkan fungsi dan penggunaannya sensor dapat dikelompokkan menjadi 3 bagian yaitu:

(10)

a. sensor thermal (panas) b. sensor mekanis

c. sensor optik (cahaya)

Sensor thermal adalah sensor yang digunakan unutk mendeteksi gejala perubahan panas/temperature/suhu pada suatu dimensi benda atau dimensi ruang tertentu. Contohnya: bimetal, termistor, termokopel, RTD, photo transistor, photo diode, photo multiplier, photovoltaic, infrared pyrometer, hygrometer, dsb

Sensor mekanis adalah sensor yang mendeteksi perubahan gerak mekanis, seperti perpindahan atau pergeseran atau posisi, gerak lurus dan melingkar, tekanan, aliran, level dsb. Contohnya: strain gauge, linear variable deferential transformer (LVDT), proximity, potensiometer, load cell, bourdon tube, dsb.

Sensor optik atau cahaya adalah sensor yang mendeteksi perubahan cahaya dari sumber cahaya, pantulan cahaya ataupun bias cahaya yang mengernai benda atau ruangan. Contohnya: photo cell, photo transistor, photo diode, photo voltaic, photo multiplier, pyrometer optic, dsb.

2.2.2.2 Klasifikasi Transduser

1. Self generating transduser (transduser pembangkit sendiri)

Self generating tranduser adalah tranduser yang hanya memerlukan satu sumber energi. Cotoh: piezo electric, termocouple, photovoltatic, termistor, dsb. Ciri transduser ini adalah dihasilkannya suatu energi listrik dari transduser secara langsung. Dalam hal ini transduser berperan sebagai sumber tegangan.

2. External power transduser (transduser daya dari luar)

External power transduser adalah transduser yang memerlukan sejumlah energi dari luar untuk menghasilkan suatu keluaran. Contoh : RTD (resistance thermal detektor), Strain gauge, LVDT (linier variable differential transformer), Potensiometer, NTC,dsb

Tabel berikut menyajikan prinsip kerja serta pemakaian transduser berdasarkan sifat kelistrikannya:

(11)

Tabel 2.3. Kelompok Transduser Parameter listrik dan

kelas transduser Prinsip kerja dan sifat alat Pemakaian alat

Transduser Pasif

Potensiometer Perubahan nilai tahanan karena

posisi kontak bergeser

Tekanan,

pergeseran/posisi

Strain gauge Perubahan nilai tahanan akibat

perubahan panjang kawat oleh tekanan dari luar

Gaya, torsi, posisi

Transformator selisih (LVDT)

Tegangan selisih dua kumparan primer akibat pergeseran inti trafo

Tekanan, gaya, pergeseran

Gage arus pusar Perubahan induktansi kumparan

akibat perubahan jarak plat

Pergeseran, ketebalan Transduser Aktif

Sel fotoemisif Emisi elektron akibat radiasi yang masuk pada permukaan fotemisif

Cahaya dan radiasi

Photomultiplier Emisi elektron sekunder akibat radiasi yang masuk ke katoda sensitif cahaya

Cahaya, radiasi dan relay sensitif cahaya

Termokopel Pembangkitan ggl pada titik sambung dua logam yang berbeda akibat dipanasi

Temperatur, aliran panas, radiasi

Generator

kumparan putar (tachogenerator)

Perputaran sebuah kumparan di dalam medan magnit yang membangkitkan tegangan

Kecepatan, getaran

Piezoelektrik Pembangkitan ggl bahan kristal piezo akibat gaya dari luar

Suara, getaran, percepatan,

tekanan Sel foto tegangan Terbangkitnya tegangan pada

sel foto akibat rangsangan energi dari luar

Cahaya matahari

(12)

tahanan (RTD) akibat perubahan temperature Hygrometer

tahanan

Tahanan sebuah strip konduktif berubah terhadap kandungan uap air

Kelembaban relatif

Termistor (NTC) Penurunan nilai tahanan logam akibat kenaikan temperature

Temperatur

Mikropon kapasitor Tekanan suara mengubah nilai kapasitansi dua buah plat

Suara, musik,derau

Pengukuran reluktansi

Reluktansi rangkaian magnetik diubah dengan mengubah posisi inti besi sebuah kumparan

Tekanan, pergeseran, getaran, posisi Sumber: William D.C, (1993)

2.3 Extensometer

Pada penelitian ini extensometer (sensor pergeseran tanah) memanfaatkan salah satu contoh dari sensor mekanis atau transduser pasif yaitu “potensiometer geser”. Untuk itu sebelum membahas extensomoter maka terlebih dahulu dilakukan pemahaman dari potensiometer

2.3.1 Pengenalan Potensiometer

Potensiometer adalah resistor tiga terminal dengan sambungan geser yang membentuk pembagi tegangan dan dapat disetel .Jika hanya dua terminal yang digunakan (salah satu terminal tetap dan terminal geser), potensiometer berperan sebagai resistor variabel.Potensiometer adalah suatu alat untuk mengukur (tegangan) dalam rangkaian.Potensiometer yang dioperasikan oleh suatu mekanisme dapat digunakan sebagai transduser.

2.3.2 Konstruksi Potensiometer

Sebuah potensiometer biasanya dibuat dari sebuah unsur resistif semi-lingkar dengan sambungan geser (penyapu). Unsur resistif, dengan terminal pada salah satu ataupun kedua ujungnya, berbentuk datar atau menyudut. Penyapu disambungkan ke terminal lain. Pada potensiometer panel, terminal penyapu biasanya terletak ditengah-tengah

(13)

kedua terminal unsur resistif. Untuk potensiometer putaran tunggal, penyapu biasanya bergerak kurang dari satu putaran penuh sepanjang kontak. Potensiometer "putaran ganda" juga ada, elemen resistifnya mungkin berupa pilinan dan penyapu mungkin bergerak 10, 20, atau lebih banyak putaran untuk menyelesaikan siklus. Walaupun begitu, potensiometer putaran ganda murah biasanya dibuat dari unsur resistif konvensional yang sama dengan resistor putaran tunggal, sedangkan penyapu digerakkan melalui gir cacing. Pada potensiometer geser linier, sebuah kendali geser digunakan sebagai ganti kendali putar.

Gambar 2.5 Konstruksi dari potensiometer gulungan Keterangan:

1. Badan 4. Badan penyapu

2. Penyapu (wiper) 5. Sambungan penyapu 3. Sumbu 6. Cincin

2.3.3 Pengenalan Extensometer

Extensometer adalah sebuah perangkat yang digunakan untuk mendeteksi besar kecil pergeseran permukaan tanah. Hal ini berguna untuk pengukuran regangan dan pengujian tarik. Namanya berasal dari "meter ekstensi". Hal ini ditemukan oleh Dr Charles Huston yang dijelaskan dalam sebuah artikel di Journal of Franklin Institute pada tahun 1879. Huston kemudian memberikan hak untuk Fairbanks & Ewing,

1 2 3 4 5 6

(14)

produsen utama mesin pengujian dan skala. Dalam hal ini, Extensometer memanfaatkan potensiometer dalam penggunaanya seperti yang telah dijelaskan diatas.

2.3.3.1 Jenis-Jenis Extensometer

Extensometer terbagi menjadi dua jenis ,yaitu : 1. Kontak

Extensometers kontak telah digunakan selama bertahun-tahun dan juga dibagi ke dalam dua kategori selanjutnya. Jenis pertama disebut extensometer kontak klip-on extensometer. Perangkat ini digunakan untuk aplikasi di mana presisi pengukuran regangan tinggi diperlukan.Mereka datang dalam konfigurasi banyak dan dapat mengukur perpindahan dari sangat kecil sampai yang relatif besar (kurang dari mm sampai lebih dari 100 mm). Mereka memiliki keuntungan dari biaya rendah dan kemudahan penggunaan, namun mereka dapat mempengaruhi benda kecil / halus. 2. Non-Kontak

Untuk aplikasi khusus tertentu,extensometer non-kontak membawa keuntungan yang lebih praktis daripada extensometer kontak. Dibawah ini adalah salah satu contoh dari aplikasi tersebut:

a. Extensometer Laser

Extensometer laser adalah suatu extensometer mampu melakukan pengukuran regangan pada bahan tertentu ketika mereka dikenakan pembebanan pada mesin uji tarik. Prinsip bekerja dengan menerangi permukaan spesimen denga dari permukaan spesimen tersebut kemudian diterima ole oleh kompleks melampirkan tanda untuk spesimen, membawa penghematan waktu yang besar untuk laboratorium pengujian bahan.

Resolusi kurang dari satu mikrometer (biasanya 0, perangkat ini cocok untuk pengujian yang paling kompleks. Extensometers Laser digunakan terutama untuk bahan yang dapat merusak sebuah "clip-on" tradisional extensometer, atau dimana massa dari klip pada perangkat mempengaruhi sifat

(15)

material, karena secara fisik melekat pada spesimen. Extensometers Laser juga dapat digunakan untuk pengujian di suhu atau sub suhu nol.

b. Extensometer Video

Extensometer video adalah perangkat yang mampu melakukan / pengukuran tegangan regangan bahan tertentu, dengan menangkap gambar terus menerus spesimen selama tes, menggunakan kamera video digital yang melekat pada PC. Spesimen dari bahan yang diuji biasanya dipotong dalam bentuk tertentu dan ditandai dengan penanda khusus (biasanya khusu penanda dari spesimen warna dan tekstur pada foto hasil bidikan). Pixel Jarak antara penanda di gambar yang diambil akan terus dilacak dalam video yang diambil, sedangkan spesimen yang diuji ditarik / terkompresi. Ini jarak pixel dapat diukur secara real time dan dipetakan terhadap nilai kalibrasi untuk memberikan pengukuran strain langsung, dan untuk mengontrol mesin uji dalam mengontrol tegangan, jika diperlukan.

Dengan nilai kalibrasi yang tepat dan algoritma pengolahan citra baik, resolusi jauh lebih sedikit dari satu juga tergantung pada spesimen kalibrasi yang biasanya bahan khusus terukir dengan presisi besar. Untuk mengkalibrasi, gambar yang pertama ditangkap dengan spesimen kalibrasi dalam kondisi pengujian yang sama yang akan digunakan untuk spesimen baru. Catatan: video extensometers bukan merupakan solusi optimal untuk semua aplikasi pengujian karena keterbatasan dan memakan waktu setup dan operasi.

Untuk aplikasi menuntut akurasi yang tinggi, pengukuran non-kontak strain, laser extensometers spekel sekarang muncul. Dalam aplikasi uji tertentu mereka lebih unggul karena resolusi lebih tinggi dan akurasi. Keuntungan utama adalah bahwa tidak perlu secara manual melampirkan tanda untuk spesimen

Perubahan kondisi cahaya sekitar selama pengujian dapat mempengaruhi hasil tes. Oleh karena itu, beberapa pemasok extensometer video memberikan cahaya latar belakang yang terang dan merekomendasikan jendela naungan/pintu untuk mencegah perubahan mendadak dalam kecerahan ruangan. Kebanyakan sistem tinggi akhir dirancang untuk menghilangkan efek negatif tersebut

(16)

2.3.3.2 Extensometer Sebagai Sensor Posisi

Pengukuran posisi dapat dilakukan dengan cara analog dan digital. Untuk pergeseran yang tidak terlalu jauh pengukuran dapat dilakukan menggunakan cara-cara analog, sedangkan untuk jarak pergeseran yang lebih panjang lebih baik digunakan cara digital.

Hasil sensor posisi atau perpindahan dapat digunakan untuk mengukur perpindahan linier atau angular. Teknis perlakuan sensor dapat dilakukan dengan cara terhubung langsung ( kontak) dan tidak terhubung langsung ( tanpa kontak ).

Extensometer dapat dijadikan sebagai sensor posisi dari hasil pergeseran tanah. Alat ini dalam operasinya memanfaatkan perubahan resistansi sehingganya dapat digunakan untuk mengukur perpindahan yang sangat kecil akibat pembengkokan (tensile stress) atau peregangan (tensile strain).

2.4 Perangkat Lunak 2.4.1 Pemrograman C

Pada suatu pengontrolan alat, program yang digunakan adalah pemrograman bahasa C. Untuk itu diperlukan juga pemahaman tentang pemrograman tersebut. Berikut adalah penjelasan dasar-dasar dari pemrograman bahasa C :

1. Tipe Data

Berikut ini adalah tipe-tipe data yang ada dalam bahasa C dan yang dikenali oleh CodeVisionAVR :

Tabel 2.4 Tipe Data

Tipe Data Ukuran Jangkauan Nilai

Bit 1 bit 0 atau 1

Char 1 byte -128 s/d 225

Unsigned Char 1 byte 0 s/d 225 Signed Char 1 byte -128 s/d 127 Int 2 byte -32.768 s/d 32.767 Short Int 2 byte -32.768 s/d 32.767

(17)

Unsigned Int 2 byte 0 s/d 65.535 Signed Int 2 byte -32.768 s/d 32.767

Long Int 4 byte -2.147.483.648 s/d 2.147.483.647 Unsigned Long Int 4 byte 0 s/d 4.294.967.295

Signed Long Int 4 byte -2.147.483.648 s/d 2.147.483.647 Float 4 byte 1.2*10-38 s/d 3.4*10+38

Double 4 byte 1.2*10-38 s/d 3.4*10+38 2. Konstanta dan Variabel

Konstanta dan variabel merupakan sebuah tempat untuk menyimpan data yang berada di dalam memori. Konstanta berisi data yang nilainya tetap dan tidak dapat diubah selama program dijalankan, sedangkan variabel berisi data yang bisa berubah nilainya saat program dijalankan. Untuk membuat sebuah konstanta atau variabel maka kita harus mendeklarasikannya lebih dahulu, yaitu dengan sintaks berikut :

Const [tipe_data][nama_konstanta]=[nilai] Contoh :

Const char konstantaku=0x10; Deklarasi variabel : [tipe_data][nama_variabel]=[nilai_awal] Contoh : Char variabelku; Char variabelku=0x20; Bit variabel_bit; Bit variabel_bit=1;

Pada deklarasi variabel, [nilai_awal] bersifat operasional sehingga boleh diisi dan boleh tidak diisi. Nilai_awal merupakan nilai default variabel tersebut dan jika tidak diisi maka nilai defaultnya adalah 0 (nol). Beberapa variabel dengan tipe yang sama dapat dideklarasikan dalam satu baris seperti contoh berikut :

(18)

3. Komentar

Komentar adalah tulisan yang tidak dianggap sebagau bagian dari tubuh program. Komentar digunakan untuk memberikan penjelasan, informasi ataupun keterangan-keterangan yang dapat membantu mempermudah dalam memahami kode program baik bagi si pembuat program maupun bagi orang lain yang membacanya. Komentar yang hanya satu baris ditulis dengan diawali ’//’ sedangkan komentar yang lebih dari satu baris diawali dengan ’/*’ dan diakhiri dengan ’*/’.

Contoh :

// Ini adalah komentar satu baris

/* Sedangkan yang ini adalah komentar yang lebih dari satu baris*/

Selain dihunakan untuk memberikan keterangan program, komentar juga dapat digunakan untuk membantu dalam pengujian program yaitu dengan menon-aktifkan dan mengaktifkan kembali bagian program tertentu selama proses pengujian.

4. Pengarah Preprosessor

Pengarah preprosessor digunakan untuk mendefenisikan prosessor yang digunakan, dalam hal ini adalah untuk mendefenisikan jenis mikrokontroller yang digunakan. Dengan pengarah preprosesor ini maka pendeklarasian register-register dan penamaannya dilakukan pada file yang lain yang disisipkan dalam program utama dengan sintaks sebagai berikut : # include <nama_preprosessor>

Contoh :

# include <mega8535.h> 5. Pernyataan

Pernyataan adalah satu buah instruksi lengkap berdiri sendiri. PORTC = 0x0F;

(19)

Pernyataan diatas merupakan sebuah instruksi untuk mengeluarkan data 0x0F ke Port C.

Contoh sebuah blok pernyataan : { PORTA=0x00; // pernyataan_1 PORTB=0x0F; // pernyataan_2 PORTC=0xFF; // pernyataan_3 } 6. Operator Aritmatika

Operator aritmatika adalah beberapa operator yang digunakan untuk melakukan perhitungan aritmatika.

Tabel 2.5 Operator Aritmatika

Operator Keterangan

+ Operator untuk operasi penjumlahan

- Operator untuk operasi pengurangan

* Operator untuk operasi perkalian

/ Operator untuk operasi pembagian

% Operator untuk operasi sisa pembagian

7. Operator Logika

Operator logika digunakan untuk membentuk suatu logika atas dua buah kondisi atau lebih. Berikut ini adalah tabel operator logika :

Tabel 2.6 Operator Logika

Operator Keterangan

&& Operator untuk logika AND

Ι Ι Operator untuk logika OR

! Operator untuk logika NOT

Contoh :

(20)

Pernyataan diatas terdiri dari 2 buah kondisi yaitu a==b dan c!=d yang keduanya dihubungkan dengan logika && (AND). Jika logika yang dihasilkan benar maka perintah PORTC = 0xFF akan dikerjakan dan jika salah tidak akan dikerjakan.

8. Operator Penambahan dan Pengurangan

Operator penambahan dan pengurangan adalah operator yang digunakan untuk menaikkan atau menurunkan nilai sebuah variabel dengan selisih 1.

Tabel 2.7 Operator Penambahan dan Pengurangan Operator Keterangan

++ Operator untuk penambahan nilai variabel dengan 1 -- Operator pengurangan nilai variabel dengan 1

Contoh :

a = 1; b = 5; a++; b--;

Maka operator a++ akan mengubah variable a dari 1 menjadi 2 dan operator b—akan mengubah variable b dari 5 menjadi 4.

9. Pernyataan If

Pernyataan If digunakan untuk melakukan pengambilan keputusan terhadap dua buah kemungkinan yaitu mengerjakan suatu blok pernyataan atau tidak. Bentuk pernyataan If adalah :

if (kondisi) {

// blok pernyataan yang akan dikerjakan // jika kondisi if terpenuhi

(21)

Contoh : if (PINA>0x80) { Dataku=PINA; PORTC=0xFF; }

Perntataan if diatas akan mengecek apakah data yang terbaca pada Port A (PINA) nilainya lebih dari 0x80 atau tidak, jika ya maka variable dataku diisi dengan nilai PINA dan data 0xFF dikeluarkan ke PORT C. Apabila dalam blok pernyataan hanya terdapat satu pernyataan saja maka tanda { dan } dapat dihilangkan seperti :

if (PINA>0x80) PORTC=0xFF; 2.4.2 Codevision AVR

CodeVisionAVR merupakan sebuah cross-compiler C, Integrated Development Environtment (IDE), dan Automatic Program Generator yang didesain untuk mikrokontroler buatan Atmel seri AVR. CodeVisionAVR dapat dijalankan pada system operasi Windows 95, 98, Me, NT4, 2000, dan XP. Cross-compiler C mampu menerjemahkan hampir semua perintah dari bahasa ANSI C, sejauh yang diijinkan oleh arsitektur dari AVR, dengan tambahan beberapa fitur untuk mengambil kelebihan khusus dari arsitektur AVR dan kebutuhan pada sistem embedded. File object COFF hasil kompilasi dapat digunakan untuk keperluan debugging pada tingkatan C, dengan pengamatan variabel, menggunakan debugger Atmel AVR Studio.

Dari bebarapa software kompiler C yang pernah digunakan, CodeVisionAVR merupakan yang terbaik jika dibandingkan dengan kompiler-kompiler yang lain karena memiliki beberapa kelebihan yang dimiliki oleh CodeVisionAVR antara lain :

(22)

2. Fasilitas yang disediakan lengkap (mengedit program, mengkompile program, mendownload program) serta tampilannya terlihat menarik dan mudah dimengerti

3. Mampu membangkitkan kode program secara otomatis dengan menggunakan fasilitas CodeWizardAVR

4. Memiliki fasilitas untuk mendownload program langsung dari CodeVisionAVR dengan menggunakan hardware khusus seperti Atmel STK500, Kanda System STK200+/300 dan bebarapa hardware lain yang telah didefenisikan oleh CodeVisionaAVR

5. Memiliki fasilitas debugger sehingga dapat menggunakan software compiler lain untuk mengecek kode assemblernya, contoh AVRStudio

6. Memiliki terminal komunikasi serial yang terintegrasi dalam CodeVisionAVR sehingga dapat digunakan untuk membantu pengecekan program yang telah dibuat khususnya yang menggunakan f asilitas komunikasi serial USART.

(23)

2.5 Komunikasi Serial RS232

Pada awal tahun 1960, sebuah lembaga yang dikenal dengan Electronic Industries Association, mengembangkan peralatan standard untuk komunikasi data. Saat ini peralatan sering kita kenal dengan nama Com port atau RS232, yang pada tahun 1990 dikenal dengan EIA232.

Banyak peralatan yang kita lihat pada kehidupan sehari-hari, salah satunya adalah modem dial-up jika kita ingin menggunakan internet pada komputer. Terdapat interface yang menghubungkan modem dengan RS232 atau comm port yang berada pada belakang komputer.

Pada prinsipnya, komunikasi serial ialah komunikasi dimana pengiriman data dilakukan per bit, sehingga lebih lambat dibandingkan komunikasi parallel seperti pada port printer yang mampu mengirim 8 bit sekaligus dalam sekali detak. Beberapa contoh komunikasi serial ialah mouse, scanner dan system akuisisi data yang terhubung ke port COM.

Secara elektornika, berkomunikasi secara dua arah dan berjalan secara logika voltase.Seperti gambar 1

Gambar 2.7 Voltase Pada RS232

Jika kita ingin mengirimkan huruf A dengan tujuh paritas bit data. Huruf A jika dikonversikan ke binary yaitu 100001, ditambah dengan start bit 0, parity bit 0 dan 2 stop bit 11. jika digabungkan maka jika mengirimkan huruf A pada tujuh paritas bit data akan berupa 01000001011.

(24)

Untuk mengirimkan angka binari 0 kurang lebih voltase yang dibutuhkan adalah +3 sampai dengan +15 V. Sedangkan angka binari 1 kurang lebih voltase yang dibutuhkan adalah -3 V sampai dengan -15 V.

2.5.1 Jenis RS232

Pada awalnya RS232 telah dibuat dalam bentuk 25 pin, sejak IBM-AT (PC) terdapat model RS232 dengan bentuk lain yaitu Pin 9 (DB9). Hingga akhir-akhir ini yang lebih banyak digunakan pun adalah Pin 9 (DB9).Berikut dibawah ini telah digambarkan dan diuraikan fungsi dari tiap-tiap pinnya.

Gambar 2.8 RS232- Pin9

Keterangan penggunaan serta penjelasannya,dapat dilihat seperti pada tabel dibawah ini:

Tabel 2.8 Keterangan Gambar DB9

Pin DB9 Singkatan Keterangan

Pin 3 TD Transmite Data

Pin 2 RD Receive data

Pin 7 RTS Request To Send

Pin 8 CTS Clear To Send

Pin 6 DSR Data Set Ready

Pin 5 SG Signal Ground

Pin 1 CD Carrier Detect

Pin 4 DTR Data Terminaal Ready

(25)

Tabel 2.9` Penjelasan dari keterangan PIN

Singkatan Keterangan Fungsi

TD Transmite Data Untuk pengiriman data serial (TDX) RD Receive Data Untuk penerimaan data serial (RDX)

RTS Request To Send Sinyal untuk menginformasi modem bahwa UART siap melakukan penukaran data

CTS Clear To Send Digunakan untuk memberitahukan bahwa modem siap untuk melakukan penukaran data

DSR Data Set Ready Memberitahukan UART bahwa modem siap utnuk melakukan penukaran data

CD Carrier Detect Saat modem mendeteksi suatu ’carrier’ dari modem lain maka sinyal ini akan diaktifkan

DTR Data Terminal Ready

Kebalikan dari DSR untuk memberitahukan bahwa UART siap melakukan hubungan komunikasi

RI Ring Indicataor Akan aktif jika modem mendeteksi adanya sinyal dering dari saluran telepon

2.5.2 Keuntungan Menggunakan Komunikasi Serial

Antar muka komunikasi serial menawarkan beberapa kelebihan dibandingkan dengan komunikasi pararel, diantaranya:

• Kabel untuk komunikasi serial bisa lebih panjang dibandingkan dengan pararel. Datadata dalam komunikasi serial dikirimkan untuk logika ‘1’ sebagai tegangan -3 s/d -15 volt dan untuk logika ‘0’ sebagai tegangan +-3 s/d +15 volt, dengan demikian tegangan dalam komunikasi serial memiliki ayunan tegangan maksimum 30 volt, sedangkan pada komunikasi pararel hanya 5 volt. Hal ini menyebabkan gangguan pada kabel-kabel panjang lebih mudah diatasi dibanding dengan pararel. • 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

(26)

Ground, akan tetapi jika menggunakan komunikasi pararel akan terdapat dua puluh hingga dua puluh lima kabel.

• Komunikasi serial dapat menggunakan udara bebas sebagai media transmisi. Pada komunikasi serial hanya satu bit yang ditransmisikan pada satu waktu sehingga apabila transmisi menggunakan media udara bebas (free space) maka dibagian penerima tidak akan muncul kesulitan untuk menyusun kembali bit bit yang ditransmisikan.

•Komunikasi serial dapat diterapkan untuk berkomunikasi dengan mikrokontroler Hanya dibutuhkan dua pin utama TxD dan RxD (diluar acuan ground)

2.6 Pergeseran Tanah

Seperti telah diketahui peristiwa tanah longsor dikenal sebagai gerakan massa tanah, batuan atau kombinasinya. Sebenarnya merupakan fenomena alam dalam mencari keseimbangan baru akibat adanya gangguan atau faktor yang mempengaruhinya dan menyebabkan terjadinya pengurangan kuat geser serta peningkatan tegangan geser tanah.

Kasus bencana alam yang sering terjadi akhir-akhir ini adalah kasus longsor pada suatu daerah perbukitan dimana struktur tanahnya labil, sehingga terjadi suatu pergeseran tanah yang ekstrim dari daerah yang tinggi ke tempat yang rendah

2.6.1 Jenis Pergeseran tanah

Jenis-jenis pergeseran tanah ada beberapa macam, yaitu: 1. flow (longsor dengan tanah jatuh seperti mengalir), 2. topple (tanah jatuh dalam bentuk balok-balok besar),

3. slump (tanah jatuh akibat tekanan sehingga turun melandai), 4. slide (tanah longsor dengan pergerakan meluncur),

5. creep (pergerakan material tanah sedikit-sedikit di bawah pengaruh tekanan jangka panjang, entah karena panas atau gempa), dan

(27)

Dari jenis-jenis pergeseran diatas, semuanya memungkinkan untuk terjadinya tanah longsor. Kejadian ini sudah seringkali menimbulkan korban,baik itu jiwa ataupun materi seperti kerusakan pada sarana dan prasarana .

2.6.2 Penanggulangan Pergeseran Tanah

Banyak kerugian yang harus dialami akibat tanah longsor tersebut.Oleh karena itu perlu dikaji secara dalam alternative penanggulangan bencana,baik dari aspek pencegahan (preventif), pengurangan (mitigasi) maupun penanggulangan (rehabilitasi).

Para ilmuan mengkategorikan tanah longsor sebagai salah satu bencana geologis yang paling bisa diperkirakan. Hal ini memungkinkan untuk alternative penanggulangan tanah longsor dari aspek pencegahan (preventif).Salah satu alternative penanggulangan dari aspek pencegahan adalah pemantauan daerah rawan longsor yang dilakukan secara terus-menerus dengan tujuan untuk mengetahui mekanisme gerakan tanah dan faktor penyebabnya serta mengamati gejala kemungkinan akan terjadinya longsoran. Dengan dilakukan pemantauan tersebut dapat dilakukan pencegahan secara dini guna mengurangi korban, baik itu jiwa maupun materi.

Gambar

Gambar 2.2 Memori AVR ATMega8535
Gambar 2.3  Status Register
Gambar  2.4  IC Mikrokontroler ATMEGA8535
Tabel 2.1  Fungsi Pin-pin Port B
+7

Referensi

Dokumen terkait

Dewasa ini, kesadaran masyarakat akan pentingnya pelestarian lingkungan hidup cenderung rendah sehingga mendorong perlu adanya pembaruan solusi yang dapat

Menurut Rachmawati dan Kurniati (2005: 71) manfaat metode proyek ditinjau dari pengembangan pribadi, sosial, intelektual maupun pengembangan kreativitas antara

Hasil pengujian yang dilakukan pada sampel, didapatkan bahwa konversi biomassa kotoran kuda secara densifikasi dan thermolisis/pirolisis dapat meningkatkan nilai kalor, dimana

Berdasarkan penelitian dan hasil analisis yang telah dilakukan, maka diperoleh kesimpulan bahwa proses pembelajaran menggunakan model aspek penggunaan

Berapakah besar sudut yang terbentuk oleh jarum pendek sebuah jam yang telah berputar selama 5 jam 30 menit.. (dalam derajat, menit dan detik)

Oleh karena itu, distribusi temperatur gas sepanjang pipa sebagai fungsi dari jarak dapat dihitung dengan menggunakan hukum kekekalan energi yang menyatakan laju perubahan energi

Oleh karena itu peneliti tertarik untuk mengetahui sejauh mana pengaruh Family Triple Support (FTS) yang meliputi pemberian edukasi tentang penanganan nyeri kepada

Pengujian terhadap K-Fold dilakukan pada sistem untuk mengamati pengaruh nilai akurasi berdasarkan variasi jumlah data latih dan data uji dengan menggunakan K-Fold. Pengujian