BAB III PERANCANGAN ALAT
Perancangan alat pada tugas akhir ini meliputi pemilihan komponen dan perhitungannya serta memilih rangkaian yang tepat dalam merancang dan membuat alat yang telah di rencanakan. Langkah perancangan yang pertama kali dilakukan
adalah memilih
komponen-komponen yang akan digunakan dan dirangkai menjadi suatu diagram blok, kemudian diagram blok tersebut digabungkan yang akan membentuk suatu sistem yang diinginkan berupa alat yang telah dirancang sebelumnya.
3.1
Prinsip Kerja Sistem Secara Hardware
Sensor suhu
LCD
LM 35
ADC 0804
Mikrokontroller Relay board
Key Pad
Gambar 3.1. Flowchart hardware
Pada perancangan alat ini digunakan equipment diantaranya: sebuah sensor suhu yang menggunakan LM 35, sebuah ADC 0804, keypad 3X4, mikrokontroller 89C51, LCD dan sebuah modul relay board. Sensor suhu akan memberikan data hasil pembacaan suhu yang berupa tegangan ke rangkaian ADC untuk dikonversikan kedalam bentuk digital yang - 28 -
- 29 -
kemudian akan diolah oleh mikrokontroller. Selain mendapatkan inputan dari ADC, mikrokontroller juga mendapatkan inputan dari key pad. Pada key pad ini kita dapat memasukkan nilai batas atas dan batas bawah suhu yang akan dikontrol. Hasil pembacaan dari sensor suhu akan selalu ditampilkan didalam LCD secara riil time. Sedangkan bila nilai suhu melampaui batas atas atau batas bawah dari settingnya maka akan dimunculkan output berupa penggerakkan coil relay, dan kontak dari relay tersebut dapat dihubungkan ke sebuah alarm sebagai tanda bahwa operator harus waspada.
3.1.1. Rangkaian Mikrokontroller Gambar 3.2. Rangkaian Mikrokontroller
- 30 -
Pada perancangan alat ini digunakan Mikrokontroler AT89C51 sebagai pemroses dan pengendali sistem. Disini
Mikrokontroler AT89C51 sebagai
tempat penyimpanan program pengendali yang dihubungkan dengan bagian rangkaian lainnya untuk melakukan komunikasi, baik sebagai masukan maupun sebagai keluaran. Masukan yang berupa temperatur yang berasal dari sensor suhu LM35 masuk ke ADC dan kemudian keluarannya dijadikan masukan di mikrokontroler yaitu di Port 2.0 ... 2.7. Port ini memang dapat digunakan sebagai masukan maupun keluaran. Dalam sistem ini digunakan sebagai port masukan. Perubahan yang terjadi pada temperatur tersebut yang kemudian dikendalikan oleh mikrokontroler untuk melakukan suatu perubahan pula pada keluaran yang berupa LCD dan pengaktifan kontak relay. Port 3.0 sampai dengan port 3.6 berfungsi untuk mengontrol kondisi key pad. Setiap tombol yang ditekan pada key pad akan diterjemahkan oleh mikrokontroller dan ditampilkan pada LCD Keluaran dari mikrokontroler yaitu pada port 1.0 dan 1.1 digunakan untuk mengaktifkan ataupun menon aktifkan kedua coil relay. Keluaran pada port 1.2 digunakan untuk mengendalikan data yang masuk pada LCD. Port 0.0 sampai dengan port 0.7 berfungsi untuk jalur data yang akan ditampilkan oleh LCD. Osilasi untuk clock di sini menggunakan kristal dengan frekuensi 11.0592 MHz yang dihubungkan ke port XTAL1 dan XTAL2. Pemilihan kristal ini sudah didasarkan pada perhitungan untuk mendapatkan komunikasi serial baud rate 19200 bps. Baud rate adalah frekuensi clock yang digunakan dalam pengiriman dan penerimaan data. Satuan baud rate pada umumnya adalah bps (bit per second), yaitu jumlah bit yang dapat ditransmisikan per detik. Baud rate untuk mode 0 bernilai tetap dengan rumus yang terdapat pada persamaan 1. Baud Rate = Frekuensi Osilator 12 Sedangkan baud rate untuk mode 2 memiliki 2 variasi tergantung dari kondisi SMOD. Rumus baud rate untuk mode 2 terdapat pada persamaan 2.
(1)
- 31 -
Baud Rate = 2SMOD x Frekuensi Osilator 64
(2)
Baud rate untuk mode 1 dan 3 dihasilkan oleh Timer 1. Pengaturan baud rate untuk mode 1 dan 3 dapat dilakukan dengan cara mengubah nilai SMOD, TMOD, dan TH1. Nilai baud rate dapat diperoleh dengan menggunakan persamaan 3. Baud Rate = 2SMOD x Timer 1 Overflow Rate 32
(3)
Umumnya Timer 1 dioperasikan pada mode 2 (8-bit Auto Reload) sehingga didapat persamaan 4. Baud Rate = 2SMOD x 32
Frekuensi Osilator 12 x (256 – TH1)
(4)
Berdasarkan persamaan 4, user dapat menghitung berapa nilai TH1 yang dibutuhkan jika diketahui baud rate yang diinginkan dengan persamaan 5. TH1 = 256 – 2SMOD x Frekuensi Osilator 384 x Baud Rate
(5)
Satu hal yang harus diperhatikan dalam pengaturan baud rate adalah nilai baud rate dan nilai TH1 diusahakan harus tepat dan bukan merupakan pembulatan, karena untuk komunikasi serial kecepatan tinggi, pembulatan terhadap nilai-nilai tersebut dapat mengakibatkan kekacauan dalam proses pengiriman atau penerimaan. Jika terdapat nilai pecahan, user disarankan untuk mengganti osilator dengan frekuensi yang sesuai. Untuk komunikasi dengan kecepatan rendah, toleransi terhadap kesalahan cukup besar sehingga pembulatan masih boleh dilakukan. Misalkan baud rate yang diinginkan adalah 19200 bps dengan frekuensi osilator 11,0592 MHz. Dengan memasukkan data ini ke dalam persamaan 5 maka akan didapat persamaan 6. TH1 = 256 – (2SMOD x 1,5)
(6)
Jika 2SMOD bernilai ‘1’, maka akan didapat TH1 sebesar 254,5. Untuk menghindari TH1 berupa pecahan, 2SMOD harus bernilai ‘2’ (SMOD bernilai ‘1’) sehingga didapat TH1 sebesar 253 atau FDh. Untuk mendapatkan baud rate yang lambat, user dapat mengoperasikan Timer 1 pada mode 1 dengan rumus pada persamaan 7.
- 32 -
Baud Rate = 2SMOD x Frekuensi Osilator 32 12 x (65536 – Timer 1)
(7)
Beberapa konfigurasi baud rate yang umum digunakan terdapat dalam table 3.1. Serial Mode
0
2
1,3
Boud Rate 1,6667 Mbps (max.) 625 Kbps (max.) 104,1667 Kbps (max.)
Timer 1 Frequensi
SMOD
C/T
Mode
Reload
20 MHz
X
X
X
X
20 MHz
1
X
X
X
20 MHz
1
0
2
FFh
1
0
2
FDh
0
0
2
FDh
0
0
2
FAh
0
0
2
F4h
0
0
2
E8h
0
0
2
1Dh
Osilator
11,0592
1,3
19,2 Kbps
1,3
9,6 Kbps
1,3
4,8 Kbps
1,3
2,4 Kbps
1,3
1,2 Kbps
1,3
137,5 bps
1,3
110 bps
6 MHz
0
0
2
72h
1,3
110 bps
12 MHz
0
0
1
FEEBh
MHz 11,0592 MHz 11,0592 MHz 11,0592 MHz 11,0592 MHz 11,9856 MHz
Tabel 3.1. Nilai dan Konfigurasi Baud Rate
- 33 -
3.1.2. Rangkaian Sensor Suhu dan ADC Untuk mengetahui kondisi suhu yang diinginkan pada perancangan alat ini digunakan sensor suhu IC LM35. Sensor ini akan mendeteksi adanya perubahan suhu dideteksi secara langsung oleh LM35 yang akan menyampaikan kondisi tersebut pada Analog to Digital Converter (ADC) dan selanjutnya ADC akan mengolah data yang didapatkan dari LM35 untuk menampilkan perubahan dalam setiap derajat celciusnya. Setiap perubahan temperature sebesar 1 °C, maka akan menghasilkan keluaran 10 mV dan perubahan ini adalah linier. Keluaran yang dihasilkan oleh LM 35 kemudian dimasukkan ke ADC ke pin +IN. Dengan ouput 1°C adalah sama dengan 10 mV maka dengan dikalikan
255, maka didapat tegangan
referensinya adalah 2.55 V. Proses yang terjadi di ADC adalah menggunakan prinsip Successive Approximation ADC yaitu dengan cara membandingkan tegangan yang masuk dengan DAC. DAC mendapatkan output dari Successive approximation register. Dengan pendekatan yang dilakukan adalah dengan dimulai dari bit yang terbesar atau MSB dengan bit 1, sampai mendapatkan biner yang sesuai dengan tegangan yang masuk. Setelah mendapatkan tegangan yang sesuai dengan tegangan yang masuk maka data biner tersebutlah yang keluar dari ADC yang kemudian dikirimkan ke mikrokontroler. Gambar 3.3. Rangkaian Sensor Suhu dan ADC
- 34 -
3.1.3. Rangkaian Power Supply Gambar 3.4 Rangkaian Power Supply
Pada pembuatan alat ini, hampir semua komponen membutuhkan supply tegangan sebesar 5 volt dc. Oleh sebab itu dirancang power supply seperti gambar diatas. Keluaran dari trafo sebesar 12 volt ac kemudian disearahkan dengan bridge diode. Setelah itu dengan menggunakan IC 7805 arus yang
- 35 -
tadinya sebesar 12 volt dc dibuat stabil menjadi 5 volt ac sehingga dapat digukan untuk mensupply mikrokontroller, ADC, LM 35 dan LCD.
3.1.4. Rangkaian LCD
Gambar 3.5 Rangkaian LCD Liqiud Crystal Display, yaitu suatu bentuk kristal cair yang akan beremulsi apabila dikenakan tegangan kepadanya. Bagian tampilan ini berupa 2x16 LCD sehinggga jenis huruf yang mampu ditampilkan akan lebih banyak dan lebih baik resolusinya jika dibandingkan dengan seven segment.
- 36 -
Liquid adalah modul tampilan yang mempunyai konsumsi daya yang relative rendah dan terdapat sebuah modul controller CMOS di dalamnya. Controller tersebut sebagai pembangkit dari karakter ROM/RAM dan display data RAM. Semua fungsi tampilan dikontrol oleh suatu unit mikrokontroller. Masukan yang diperlukan untuk mengendalikan modul ini berupa data bus yang masih termultiplex dengan bus alamat serta 3 bit sinyal control. Sementara pengendalian dot matrik LCD dilakukan secara internal oleh controller yang sudah ada pada modul LCD. Blok diagram LCD dapat ditunjukkan pada gambar 3.6 berikut:
DB0-DB7
COMMON SIGNAL C O N T R O L L E R
LCD
SEGMEN SIGNAL SEGMENT DRIVER
TIMMING SIGNAL
Gambar 3.6 Blok Diagram LCD Operasi yang sering di pakai dalam pemprograman LCD : 1)
Register Controller dari LCD mempunyai dua buah register 8 bit yaitu register instruksi (IR) dan register data (DR). Kedua register tersebut dipilih melalui register select (RS). IR menyimpan instruksi seperti display clear, Cursor Shift dan Display Data (DD RAM) serta Character Generator (CG RAM). DR menyimpan data untuk dituliskan ke DD RAM atau CG RAM ataupun membaca
- 37 -
data dari DD RAM atau CG RAM. Ketika data ditulis ke DD RAM atau CG RAM akan dibaca maka alamat data ditulis pada IR sedangkan data akan dimasukkan melalui DR dan mikroprosesor membaca data dari DR. 2)
Busy Flag Busy Flag menunjukkan bahwa module siap untuk menerima instruksi selanjutnya. Sebagaimana terlihat pada table register seleksi sinyal akan melalui DB7, jika RS = 0 dan R/W = 1. Jika bernilai 1 maka module sedang melakukan kerja internal dan instruksi tidak akan dapat diterima. Oleh karena itu status dari flag harus diperiksa sebelum melaksanakan instruksi selanjutnya.
3)
Address Counter : AC menunjukkan lokasi dalam module LCD. Pemilihan lokasi alamat itu diberikan lewat Register Instruksi (IR). Ketika data pada A, maka AC secara otomatis menaikkan atau menurunkan alamat tergantung dari entry Mode Set.
4)
Display Data RAM (DD RAM) Pada LCD masing-masing line mempunyai range alamat tersendiri. Alamat itu di ekspresikan dengan bilangan Heksadesimal. Untuk line 1 range alamat berkisar antara 00H-0FH, sedangkan untuk line 2 range alamat berkisar antar 40h-4Fh.
5)
Character Generator ROM (CG ROM) CG ROM mempunyai tipe dot matrik 5x7, dimana pada LCD telah tersedia ROM sebagai pembangkit character dalam kode ASCII.
6)
Character Generator RAM (CG RAM) CG RAM dipakai untuk pembuatan karakter tersendiri melalui program.
Tabel 3.2 Tabel Konfigurasi Pin-Pin LCD No
Symbol
Level
Function
1
Vss
-
0 (GND)
- 38 -
2
Vcc
-
5V + 10%
3
Vcc
-
LCD Drive
4
Rs
H/L
H: Data input L: Instruction Input
5
R/W
H/L
H: Read L: Write
6
E
H
Enable Signal
7-14
DB0-DB7
H/L
Data Bus
DB0 – DB3 berfungsi sebagai lalu lintas data dan instruksi ked an dari MPU, lower byte. DB4 – DB7 berfungsi sebagai lalu lintas data dan instruksi ke dan dari MPU, upper byte. E adalah enable signal berfungsi untuk sinyal start ( read / write ) R/W berfungsi sebagai sinyal seleksi instruksi. Pada saat R/W bernilai ‘0’ maka akan berfungsi write, sedangkan jika bernilai ‘1’ maka akan berfungsi read. RS adalah Register Select berfungsi sebagai sinyal seleksi register. Pada saat RS ‘0’ maka akan berfungsi sebagai instruksi register, sedangkan saat bernilai ‘1’ maka berfungsi sebagai register data. VCC merupakan terminal untuk memberikan catu daya pada LCD yang berupa tegangan dc sebesar 5 volt. VSS adalah terminal untuk grounding.
3.1.5. Rangkaian Relay Board Pada pembuatan alat ini digunakan relay board yang berguna untuk mengaktifkan alarm ataupun me non aktifkannya. Ada beberapa faktor yang mendasari pertimbangan mengapa digunakan relay board:
- 39 -
1.
Tegangan koil bervariasi tergantung dari tipe, Tegangan koil ini didapat dari tegangan yang dihubungkan ke VRELAY.
2.
Contact rating (besar arus dan tegangan yang dapat dilewatkan ke terminal relay) terdapat pada bodi relay.
3.
Input logika pada konektor INPUT HEADER berlevel tegangan TTL atau CMOS.
4.
Relay Board v2.0 dapat dipasangi dengan MOV (Metallic Oxide Varistor) opsional. MOV ini berfungsi untuk mencegah terjadinya loncatan bunga api listrik yang dapat memperpendek umur kontak dan menyebabkan sinyal Radio Frequency Interference (RFI). Bunga api ini terutama terjadi pada beban induktif seperti motor, solenoid, dll. Pemilihan MOV dapat dilakukan dengan memilih MOV dengan tegangan 2 kali tegangan yang dihubungkan ke terminal relay.
Gambar 3.7 Koneksi Relay Board Dengan Mikrokontroller
- 40 -
Gambar 3.8 Rangkaian Relay Board
3.2
Prinsip Kerja Sistem Secara Software Sebagaimana telah dibahas pada bab 1 bahwa tujuan dari pembuatan alat
ini adalah untuk mengontrol suhu yang ada pada dryer yang pada prinsipnya dapat terwakili dengan adanya sensor suhu LM 35, sedangkan nilai setting ( batas atas dan batas bawah yang akan dikontrol ) didapat dari pemasukan angka pada key pad. Adapun sebagai tampilan suhu aktual dan nilai setting dapat dilihat pada LCD. Sebagai out put dari hasil pengontrolan digunakan untuk pengaktifan koil pada relay board. Ada dua kaki out put mikrokontroller yang digunakan, masing-masing untuk mengontrol kedua buah koil relay. Kontak dari kedua relay tersebut dapat dihubungkan ke alarm dan ke electrical valve.
- 41 -
Bila batas atas sudah tercapai maka valve akan membuka sehingga tidak akan menimbulkan terjadinya kebakaran, sedangkan bila batas bawah sudah terdeteksi maka akan mengaktifkan sebuah bunyi yang menandakan bahwa suhu yang ada pada dryer kurang memenuhi syarat, dan operator akan menambah suhunya dengan cara memasukkan bahan bakar. Adapun alur / system kerja dari mikrokontroller yang ada pada alat ini dapat terlihat sebagai berikut: MULAI
INISIALISASI
AMBIL DATA
DATA LEBIH KECIL BATAS BAWAH
YA
NYALAKAN RELAY 1
TIDAK
DATA LEBIH BESAR BATAS ATAS
TIDAK
YA
NYALAKAN RELAY 2
- 42 -
DATA ANTARA BATAS ATAS & BAWAH
YA
MATIKAN RELAY 1&2
TIDAK
YA
* DIPENCET
AMBIL BATAS BAWAH
TIDAK
#
YA
DIPENCET
TIDAK
Gambar 3.9 Flow Chart Rangkaian
AMBIL BATAS ATAS