3.3 Perancangan Perangkat Keras
Ada beberapa bagian utama dalam perancangan subsistem perangkat keras prototipe ruangan, yaitu :
a. Sistem minimum ATmega8535
b. Rangkaian LCD 2x16
c. Rangkaian RTC DS1307
d. Rangkaian motor DC
e.
Keypad
4x4
3.3.1 Sistem Minimum ATmega8535
Sistem minimum yang digunakan pada tugas akhir ini merupakan produksi dari Creative Vision dengan
chip
IC keluarga Atmel dengan seri ATmega8535. Sistem minimum berfungsi sebagai IO untuk mengolah data dari RTC dan mengendalikan motor
DC yang telah diprogram dalam mikrokontroler ATmega8535 pada prototipe ruangan. Mikrokontroler membutuhkan sistem minimum yang terdiri dari rangkaian eksternal yaitu
rangkaian osilator dan rangkaian
reset
.
Gambar 3.4. Sistem minimum ATmega8535
Perancangan penggunaan
port
sebagai
input
dan
output
pada mikrokontroler ATmega8535 disesuaikan dengan kebutuhan yaitu sejumlah 25
pin
. Rangkaian RTC membutuhkan 2
pin
pada
Port
C,
keypad
4x4 membutuhkan 8
pin
pada
Port
A,
limit switch
membutuhkan 2
pin
,
driver
sebagai penggerak motor menggunakan 3 buah
pin
, sedangkan LCD dengan 7
pin
pada
PortB
. Tabel 3.1. menunjukan penggunaan
port
pada mikrokontroler yang digunakan sebagai
input
dan
output
dari RTC dan motor DC. XTAL yang digunakan untuk sistem minimum ini 12 MHz.
Tabel 3.1. Penggunaan
port-port
pada mikrokontroler.
Fungsi
PORT
Mikro Keterangan
INPUT RTC DS1307
Port C.0
SCL pada RTC Port
C.1 SDA pada RTC
Keypad Port
A.0-7 Data dari pengguna
Limit switch Port
D.0,1 Memutus gerak motor DC
OUTPUT Driver
Port D.4,6
Komunikasi mikro-driver Port
D.5 Keluaran PWM motor DC
LCD Port
B.0-2, 4-7 Penampil
Secara keseluruhan rangkaian sistem minimum ATmega8535 ditunjukkan pada gambar 3.5.
Gambar 3.5. Rangkaian Sistem Minimum ATmega8535 [2]
3.3.2 Rangkaian LCD 2x16
LCD digunakan untuk menampilkan data
output
dari mikrokontroler. LCD yang digunakan adalah LCD 2x16 yang memiliki tipe LMB162A. Dalam perancangan ini
mode
yang digunakan untuk menuliskan data ke LCD sebanyak 4
bit mode
nibble
.
Port
B.0,
port
B.2,
port
B.4 dan
port
B.6 digunakan sebagai
port
data, sedangkan
port
B.1,
port
B.3 dan
port
B.5 digunakan sebagai
port
pengatur
interface
LCD. Tegangan maksimal untuk LCD sebesar 5V
DC
sehingga dalam perancangan digunakan resistor variabel sebesar 10 k Ω
yang berfungsi untuk membatasi tegangan yang masuk ke
pin
Vcc LCD. Dengan menggunakan informasi pada tabel 2.16 maka dapat dibuat rangkaian LCD 2x16 seperti
pada gambar di bawah ini:
Gambar 3.6. Rangkaian LCD [7]
3.3.3 Rangkaian RTC DS1307
Jenis komunikasi RTC DS1307 adalah I
2
C. ATmega8535 memiliki
hardware
I
2
C pada
port
C.1 sebagai SDA dan
port
C.0 sebagai SCL. RTC DS1307 membutuhkan 2 dua buah
pull-up resistor
pada kaki SDA dan SCL. Resistor ini digunakan untuk membuat kondisi logika pada jalur SDA dan SCL menjadi
high
ketika tidak ada sinyal dari mikrokontroler. Sumber tenaga yang digunakan sebesar 5 volt. Nilai resistor yang
digunakan pada R
1
dan R
2
sebesar 4,7 KΩ. XTAL yang digunakan memiliki nilai 32,768
KHz sesuai dengan
datasheet
DS1307.
Gambar 3.7. Rangkaian RTC DS1307
Pin
3 digunakan untuk pemasangan baterai cadangan, sedangkan
pin
5 dan 6 disambungkan ke
pin
mikrokontroler sebagai masukan data. Sumber tenaga cadangan diperlukan pada RTC DS1307 agar dapat menyimpan tanggal dan waktu sehingga tetap
berjalan ketika catu daya utama dimatikan. Oleh karena itu digunakan
Micro Lithium Cell
dengan tegangan keluaran 3 volt.
3.3.4 Rangkaian Motor DC
Perancangan ini menggunakan sebuah
driver
untuk menggerakkan motor dengan kecepatan tertentu. Jenis
driver
yang digunakan dengan seri L298. Rangkaian ini membutuhkan sumber tegangan sebesar 5 volt sebagai tegangan masukan
driver
dan 6 volt merupakan sumber tegangan untuk menggerakkan motor DC.
Port
yang digunakan sebagai pengendali kecepatan motor adalah
port
D.5.
Port
D.4 dan
port
D.6 pada mikrokontroler digunakan sebagai komunikasi antara
driver
pengendali arah dengan mikrokontroler.
Pin enable
diberi tegangan 5 volt dan PWM untuk kecepatan rotasi antara 00h
– FFh 8
bit
. Motor DC membutuhkan pulsa PWM dan pengaturan OCR1A OCR1B untuk menentukan arah putaran motor.
Modulasi PWM dilakukan dengan cara mengubah lebar pulsa dari suatu pulsa data. Pengaturan register untuk memeroleh lebar pulsa yang akan digunakan pada mode
phase correct
PWM adalah sebagai berikut: 1.
TCCR1A = 0b10000001
Bit
7:6 dan
bit
4:3 merupakan pengaturan keluaran pada
pin
OCR1A OCR1B mode
phase correct
PWM.
2. TCCR1B = 0b00000001
Bit
4:3 dilakukan untuk menentukan
mode
operasi
TimerCounter
1 yaitu
phase correct
PWM.
Bit
2:0 merupakan
bit
pengatur
prescaler clock
yang masuk ke dalam
register
TCNT1.
Clock osilator
yang digunakan sama dengan
clock
CPU yaitu 12Mhz.
Gambar 3.8. Rangkaian
driver
L298
Untuk menentukan frekuensi
phase correct
PWM dapat diperoleh menggunakan persamaan 2.4 sehingga diperoleh nilai sebagai berikut :
Nilai frekuensi yang diperoleh adalah 23,529 KHz, nilai frekuensi selalu berbanding terbalik dengan waktu, sehingga dapat diperoleh lebar pulsa untuk satu siklus dengan
perhitungan sebagai berikut : 3.1