Perancangan Alat Perancangan Palang Kereta Api Otomatis Berbasis Mikrokontroller AT89S51 Menggunakan Sensor Inframerah Sebagai Sensor Halangan

BAB 3 PERANCANGAN SISTEM

3.1 Perancangan Alat

3.1.1 Diagram Blok

Secara garis besar, diagram blok dari rangkaian palang otomatis ini ditunjukkan pada gambar 3.1. berikut ini: µC AT89S52 LCD 2X16 DRIVER MOTOR STEPPER 1 PENGKONDISI SINYAL 1 SENSOR OPTOCOUPLER 1 MOTOR STEPPER 1 PENGKONDISI SINYAL 2 SENSOR OPTOCOUPLER 2 PENGKONDISI SINYAL 3 SENSOR OPTOCOUPLER 3 DRIVER MOTOR STEPPER 1 MOTOR STEPPER 1 DRIVER SIRINAI 1 SIRINAI 1 INDIKATOR LED DRIVER LED Gambar 3.1. Diagram Blok Rangkaian Keterangan dari diagram blok: Palang kereta api otomatis ini dirancang hanya sebatas simulasi. Pada palang ini terdapat 16 blok rangkaian utama yang mempunyai fungsi masing- masing. Universitas Sumatera Utara 1. Sensor optocoupler 1 berfungsi untuk mendeteksimengetahui bahwa kereta api sudah dekat , sehingga pengguna jalan berhati-hati dan mengurangi kecepatan kendaraannya. 2. Sensor optocoupler 2 berfungsi untuk mendeteksimengetahui bahwa kereta api sudah dekat dan mau melewati lintasan jalan yang dilalui oleh pengguna jalan, sehingga pengguna jalan harus berhenti. 3. Sensor optocoupler 3 berfungsi untuk mendeteksimengetahui bahwa kereta api telah lewat telah melewati jalan sehinnga para pengguna jalan dapat meneruskan perjalanannya. 4. Pengkondisi sinyal 1, 2 dan 3 digunakan untuk menegaskan data digital high atau low sehingga kompatibel dengan mikrokontroler. 5. Motor stepper 1 berfungsi untuk membuka palang kereta api secara otomatis pada saat kereta api belum melewati jalan dan menutup pada saat kereta api melewati jalan. Motor stepper 1 ini digunakan untuk lajur kiri. 6. Motor stepper 1 berfungsi untuk membuka palang kereta api secara otomatis pada saat kereta api belum melewati jalan dan menutup pada saat kereta api melewati jalan. Motor stepper 1 ini digunakan untuk lajur kanan. 7. Driver motor stepper 1 dan 2 berfungsi untuk mengaktifkanmenggerakkan motor stepper searah maupun berlawanan jarum jam dan untuk mengatur derajat putaran motor stepper yang diinginkan. 8. Sirinai berfungsi untuk memberikan tanda peringatan bahwa kereta api mau melewati jalan sehinnga pengguna jalan harus berhenti. 9. Driver sirinai berfungsi untuk mengaktifkan dan menonaktifkan suara sirinai sesuai yang diinginkan. Universitas Sumatera Utara 10. Indikator LED terdiri dari tiga indikator yaitu indikator lampu merah, kuning dan hijau. - Indikator led merah pengguna jalan harus berhenti - Indikator led kuning pengguna jalan diharapkan berhati-hati - Indikator led hijau pengguna jalan dapat meneruskan perjalanannya. 11. LCD 2 x 16 berfungsi untuk tampilan yang digunakan untuk menerangkan keadaan hati-hati, berhenti dan dapat meneruskan perjalanan secara tertulis. 12. Mikrokontroler AT89S52 berfungsi untuk mengolah data digital yang dikirimkan oleh sensor optocoupler, selanjutnya mikrokontroller akan menampilkannya pada LCD 2x16 berupa peringatan, mengaktifkanmenonaktifkan sirinai, dan indikator led.

3.1.2 Perancangan Sensor Optocoupler

Sensor yang digunakan dalam penelitian ini adalah sensor optocoupler. Sensor ini merupakan perpaduan led inframerah transmitter dan fototransistor receiver. Tujuan utama dari digunakan sensor optoupler untuk mendeteksi ada tidaknya kereta api yang lewat. Universitas Sumatera Utara 4k7 C945 relay NO Kipas 1 + - NO NC Gambar 3.2 Rangkaian Penguat Sinyal Optocoupler Saat lubang terlewati sinar dari led inframerah dan diterima fototransistor, maka fototransistor akan saturasi dan saat sinar led inframerah tidak diterima fototransistor, maka fototransistor akan cut-off. Susunan rangakaian yang terdiri dari transistor C945 dan pemicu Schmitt 74LS14 digunakan sebagai pengkondisi sinyal agar keluaran menjadi sinyal persegi highlow yang kompatibel dengan mikrokontroler.

3.1.3 Rangkaian Mikrokontroler AT89S52

Rangkaian mikrokontroller AT89S52 ini merupakan pusat pengolahan data dari sensor. Dalam alat ini, mikrokontroler digunakan sebagai untuk membaca dan mengolah data dari sensor. Input masukan pada rangkaian mokrokontroler ini dihubungkan dengan 3 buah sensor optocoupler yang berfungsi untuk mendeteksi adatidaknya kereta api . Sedangkan output keluaran dihubungkan dengan piranti tampilan, dalam hal ini dot matrix LCD, sirinai, dan indikator LED. Rangkaian mikrokontroler ditunjukkan pada gambar berikut ini: Universitas Sumatera Utara Gambar 3.3 rangkaian minimum mikrokontroller AT89S52 Pada rangkaian, Pin 31 External Access Enable EA diset high H. Ini dilakukan karena mikrokontroller AT89S52 tidak menggunakan memori eskternal. Pin 18 dan 19 dihubungkan ke XTAL 12 MHz dan capasitor 33 pF. XTAL ini akan mempengaruhi kecepatan mikrokontroller AT89S52 dalam mengeksekusi setiap perintah dalam program. Pin 9 merupakan masukan reset aktif tinggi. Pulsa transisi dari rendah ke tinggi akan me-reset mikrokontroller ini. Pin 32 sampai 39 adalah Port 0 yang merupakan saluranbus IO 8 bit open collector dapat juga digunakan sebagai multipleks bus alamat rendah dan bus data selama adanya akses ke memori program eksternal. Pada Port 0 ini masing masing pin dihubungkan dengan resistor 4k7 ohm. Resistor 4k7 ohm yan dihubungkan ke port 0 befungsi sebagai pull up penaik tegangan agar output dari mikrokontroller dapat mntrigger transistor. Pin 1 sampai 8 adalah Port 1. Pin 21 sampai 28 adalah Port 2. Dan Pin 10 sampai 17 adalah Port 3. Pin 20 merupakan AT89S52 Universitas Sumatera Utara Vreg LM7805CT IN OUT TIP32C 100ohm 100uF 330ohm 220V 50Hz 0Deg TS_PQ4_12 2200uF 1uF 1N5392GP 1N5392GP 12 Volt 5 Volt ground dihubungkan dengan ground pada power supplay. Pin 40 merupakan sumber tegangan positif dihubungkan dengan + 5 volt dari power supplay.

3.1.4 Rangkaian Catu Daya PSA

Rangkaian ini berfungsi untuk mensupplay tegangan ke seluruh rangkaian yang ada. Rangkaian PSA yang dibuat terdiri dari dua keluaran, yaitu 5 volt dan 12 volt, keluaran 5 volt digunakan untuk mensupplay tegangan ke seluruh rangkaian. Rangkaian power supplay ditunjukkan pada gambar 3.2 berikut ini : Gambar 3.4 Rangkaian Power Supply PSA Trafo CT merupakan trafo stepdown yang berfungsi untuk menurunkan tegangan dari 220 volt AC menjadi 12 volt AC. Kemudian 12 volt AC akan disearahkan dengan menggunakan dua buah dioda, selanjutnya 12 volt DC akan Universitas Sumatera Utara diratakan oleh kapasitor 2200 μF. Regulator tegangan 5 volt LM7805CT digunakan agar keluaran yang dihasilkan tetap 5 volt walaupun terjadi perubahan pada tegangan masukannya. LED hanya sebagai indikator apabila PSA dinyalakan. Transistor PNP TIP 42C disini berfungsi untuk mensupplay arus apabila terjadi kekurangan arus pada rangkaian, sehingga regulator tegangan LM7805CT tidak akan panas ketika rangkaian butuh arus yang cukup besar. Tegangan 12 volt DC langsung diambil dari keluaran 2 buah dioda penyearah.

3.1.5 Perancangan Driver penggerak Motor Stepper

Rangkaian driver penggerak motor ini hanya menggunakan IC buffer ULN 2803, dimana fungsi IC ini agar data yang yang diterima dari mikrokontroler benar- benar terdefinisi sebagai data digital highlow sehingga dat-data ini dapat mengatur gerakan motor stepper searah jarum jam, berlawanan jarum jam ataupun mengatur sudut putaran motor steper. Universitas Sumatera Utara Gambar 3.5 IC ULN 2803 dan Driver Motor Stepper Dimana IC ULN 2803 ini diaktifkan dengan tegangan supplay 12 VDC, mempunyai 8 bit data input dan 8 bit data output dimana tegangan supplay diberikan pada common kaki 10 dan ground pada kaki 9. Tetapi pada rangkaian ini hanya digunakan 4 bit data untuk menggerakkan 1 motor stepper, kara motor stepper hanya memiliki 4 bit data yang dapat digerakkan dan diatur putaran nya baik searah maupun berlawanan jarum jam. Dimana pada alat ini motor stepper digerakkan 90 derajat searah jarum jam palang pintu membuka dan 90 derajat berlawanan jarum jam palang pintu menutup.

3.1.6 Rangkaian Relay

Relay berfungsi sebagai saklar elektronik yang dapat menghidupkan atau mematikan peralatan elektronik dalam hal sirinai. Rangkaian relay pengendali kipas tampak seperti gambar 3.7 berikut : Universitas Sumatera Utara Ke mikrokontroler 4k7 C945 relay NO Sirinai + - NO NC Gambar 3.6 Rangkaian Relay Pengendali sirinai Relay merupakan salah satu komponen elektronik yang terdiri dari lempengan logam sebagai saklar dan kumparan yang berfungsi untuk menghasilkan medan magnet. Pada rangkaian ini digunakan relay 12 volt. Pada rangkaian ini untuk mengaktipkan atau menon-aktipkan relay digunakan transistor tipe NPN. Dari gambar dapat dilihat bahwa negatip relay dihubungkan ke kolektor dari transistor NPN C945 dan positif relay dihubungkan pada tegangan 12 volt., ini berarti jika transistor dalam keadaan aktip maka kolektor akan terhubung ke emitor dimana emitor langsung terhubung ke ground yang menyebabkan tegangan di kolektor menjadi 0 volt, keadaan ini akan mengakibatkan relay aktip. Disaat relay aktif maka kaki-kaki relay yang berfungsi sebagai Normali Close sudah mendapatkan tegangan 12 volt. Sementara kaki-kaki relay yang berfungsi sebagai Normali open masih belum mendapatkan tegangan 12 volt sebelum ada inputan inputan berupa logika high atau 5 volt. Sebaliknya jika transistor tidak aktip, maka kolektor tidak terhubung ke emitor, sehingga tegangan pada kolektor menjadi 12 volt, keadaan ini menyebabkan relay tidak aktip. Resistor didalam rangkaian berfungsi sebagai pull up untuk Universitas Sumatera Utara menaikkan tegangan agar inputan mikrokontroler sanggup mengaktifkan relay. Dioda dihubungkan secara terbalik untuk mengantisipasi sentakan listrik yang terjadi pada saat relay berganti posisi dari on ke off agar tidak merusak komponen di sekitarnya, sentakan itu hanya terjadi ketika relay dinonaktipkan, pada saat ini arus akan terus mengalir melalui kumparan dan arus ini akan dialirkan ke dioda. Tanpa adanya dioda sentakan listrik itu akan mengalir ke transistor, yang mengakibatkan kerusakan pada transistor.

3.1.7 Indikator LED

Rangkaian indikator led dibuat denggan menggunakan sistem aktif high, maksudnya led akan hidup jika inputnya diberi logika high dan led akan mati jika inputnya diberi logika low. INPUT Gambar 3.7 Rangkaian LED dengan sistem Aktif High Kemudian hidupmatinya LED diatur secara program sehingga nyala LED dapat dimodifikasi sesuai diinginkan.

3.1.8 Display LCD Character 2x16

Display LCD 2x16 berfungsi sebagai penampil nilai kuat induksi medan elektromagnetik yang terukur oleh alat. LCD yang digunakan pada alat ini Universitas Sumatera Utara mempunyai lebar display 2 baris 16 kolom atau biasa disebut sebagai LCD Character 2x16, dengan 16 pin konektor, yang didifinisikan sebagai berikut: PIN Nama fungsi 1 VSS Ground voltage 2 VCC +5V 3 VEE Contrast voltage 4 RS Register Select 0 = Instruction Register 1 = Data Register 5 RW Read Write, to choose write or read mode 0 = write mode 1 = read mode 6 E Enable 0 = start to lacht data to LCD character 1= disable 7 DB0 LSB 8 DB1 - 9 DB2 - 10 DB3 - 11 DB4 - 12 DB5 - 13 DB6 - 14 DB7 MSB 15 BPL Back Plane Light 16 GND Ground voltage Tabel 3.1 fungsi pinLCD character 2x16 Universitas Sumatera Utara Gambar 3.8 LCD character 2x16 Modul LCD terdiri dari sejumlah memory yang digunakan untuk display. Semua teks yang kita tuliskan ke modul LCD akan disimpan didalam memory ini, dan modul LCD secara berturutan membaca memory ini untuk menampilkan teks ke modul LCD itu sendiri. Gambar 3.9 Peta memory LCD character 2x16 Pada peta memori diatas, daerah yang berwarna biru 00 sd 0F dan 40 sd 4F adalah display yang tampak. jumlahnya sebanyak 16 karakter per baris dengan dua baris. Angka pada setiap kotak adalah alamat memori yang bersesuaian dengan posisi dari layar. Dengan demikian dapat dilihat karakter pertama yang berada pada posisi baris pertama menempati alamat 00h. dan karakter kedua yang berada pada posisi baris kedua menempati alamat 40h Agar dapat menampilkan karakter pada display maka posisi kursor harus terlebih dahulu diset. Instruksi Set Posisi Kursor adalah 80h. dengan demikian untuk menampilkan karakter, nilai yang terdapat pada memory harus ditambahkan dengan 80h. Universitas Sumatera Utara Sebagai contoh, jika kita ingin menampilkan huruf “B” pada baris kedua pada posisi kolom kesepuluh.maka sesuai dengan peta memory, posisi karakter pada kolom 10 dari baris kedua mempunyai alamat 4Ah, sehingga sebelum kita menampilkan huruf “B” pada LCD, kita harus mengirim instruksi set posisi kursor, dan perintah untuk instruksi ini adalah 80h ditambah dengan alamat 80h + 4Ah =0Cah. Sehingga dengan mengirim perintah 0Cah ke LCD, akan menempatkan kursor pada baris kedua dan kolom ke 11.

3.2 Perancangan Program