KONSOL SEBAGAI PEMROGRAM PADA IMPLEMENTASI PLC MENGGUNAKAN MIKROKONTROLER TUGAS AKHIR - Konsol sebagai pemrogram pada implementasi PLC menggunakan mikrokontroler - USD Repository
KONSOL SEBAGAI PEMROGRAM PADA IMPLEMENTASI
PLC MENGGUNAKAN MIKROKONTROLER
TUGAS AKHIR
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Oleh:
Nama : Jhon Sitmen Bongga
NIM : 045114062
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
PROGRAMMER CONSOLE FOR PLC
IMPLEMENTATION USING
MICROCONTROLLER
FINAL PROJECT
Presented as Partial Fulfillment of the Requirements
To Obtain the Sarjana Teknik Degree
In Electrical Engineering Study Program
By:
Name : Jhon Sitmen Bongga
Student Number: 045114062
ELECTRICAL ENGINEERING STUDY PROGRAM
DEPARTMENT OF ELECTRICAL ENGINEERING
FACULTY OF ENGINEERING
SANATA DHARMA UNIVERSITY
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
Jalani hidup dan menjadi yang terbaik
Kupersembahkan karya tulis ini kepada :
Tuhan Yesus Kristus atas kesempatan, hidup, talenta, dan roh
kudus yang selama ini mendampingi langkahku
Bapak dan Ibu Tercinta serta kedua saudaraku untuk
pengorbanan, dukungan, semangat, doa, kasih sayang, dan
pembelajaran hidup yang telah diberikan
Seluruh teman dan sahabat
Intisari
Konsol PLC atau hand held programmer PLC adalah alat yang digunakan untuk memrogram CPU PLC dan dapat menampilkan program yang digunakan pada LCD dalam bahasa mnemonik PLC.
Konsol PLC ini akan menampilkan program PLC yang terdiri dari instruksi dan operand. Instruksi dan operand yang dikodekan dalam kode biner delapan bit. Program yang digunakan, dimasukkan melalui keypad dan diproses oleh mikrokontroler ATmega8535 untuk ditampilkan pada LCD dan kemudian dikirim ke CPU PLC dengan menggunakan komunikasi serial RS-232. LCD menggunakan tipe LMB162ABC dan keypad menggunakan matriks keypad 5
5.
×
Dari hasil percobaan, alat ini telah bekerja sesuai dengan perancangan. Hal ini dapat dibuktikan, dari hasil pengujian konsol PLC dengan program LD, AND, OR, OUT, NOT, CNT dan TIM. Program LD, AND, OR menggunakan operand 001-008 dan program OUT menggunakan operand 101-108. Program CNT menggunakan operand 001-010 dan program TIM menggunakan operand 001- 250. Kata kunci: Bahasa Mnemonik, Instruksi dan Operand, Konsol PLC
Abstract
PLC console or PLC hand held programmer is a tool that used to program PLC CPU and to show the program on LCD in PLC mnemonic language. PLC console displays instructions and operand. Instructions and operandare decoded in eight bit, binary code. Programs for PLC are entered using
keypad and proceed by microcontroller ATmega8535. Programs are shown on
LCD and sent to PLC CPU using RS-232 serial communication. LCD use
LMB162ABC type and keypad use keypad matrix 5 x 5.Result of experiments show that PLC console have been work according the
design plan. It can be proven from PLC console test result with LD, AND, OR,
OUT, NOT, CNT and TIM programs. LD, AND, OR programs use operand 001-
008 and OUT programs use operand 101-108. CNT programs use operand 001-
010 and TIM programs use operand 001-250. Key word ; Mnemonic Language, Instruction and Operand, PLC consoleKATA PENGANTAR
Syukur dan terima kasih kepada Tuhan Yesus Kristus atas segala rahmat dan karunia-Nya sehingga tugas akhir dengan judul “Konsol sebagai Pemrogram pada Implementasi PLC Menggunakan Mikrokontroler” ini dapat diselesaikan dengan baik.
Selama menulis tugas akhir ini, penulis menyadari bahwa ada begitu banyak pihak yang telah memberikan bantuan dengan caranya masing-masing, sehingga tugas akhir ini bisa diselesaikan. Oleh karena itu, penulis ingin mengucapkan terima kasih kepada:
1. Kedua orang tua yang tercinta atas doa, kesabaran dan dukungan baik secara moral ataupun materi.
2. Kedua saudaraku Rostiani Silta dan Chrishart Yedithya atas dukungan dan pengertiannya.
3. Bapak Martanto, ST, MT dan Ibu Wiwien Widyastuti, ST, MT selaku dosen pembimbing yang telah dengan sabar membimbing, memberi semangat dan saran yang membantu penulis dalam menyelesaikan tulisan ini.
4. Seluruh dosen teknik elektro dan laboran yang telah banyak memberikan pengetahuan kepada penulis selama kuliah.
5. Kelompok PLC Oscar dan Edi Gunawan terimakasih atas kekompakan, kerjasama, dan solidaritasnya.
6. Sahabatku semasa kuliah Ferika Adhe, Eric Sandy dan Dandy Firdaus.
Terimah kasih atas semua bantuan dan doanya.
7. Seluruh teman teknik elektro angkatan 2004 atas segala dukungan dan bantuan.
8. Margaretha Silviana yang selalu memberiku semangat dalam berkarya.
9. Berbagai pihak yang tidak bisa penulis sebutkan satu-persatu atas bantuan, bimbingan, kritik dan saran.
Dengan rendah hati penulis menyadari bahwa tugas akhir ini masih jauh dari sempurna, oleh karena itu berbagai kritik dan saran untuk perbaikan tugas akhir ini sangat diharapkan. Akhir kata, semoga tugas akhir ini dapat bermanfaat bagi semua pihak. Terima kasih.
Yogyakarta, Juni 2009 Penulis
DAFTAR ISI
HALAMAN JUDUL ........................................................................................ i
HALAMAN PERSETUJUAN ......................................................................... iii
HALAMAN PENGESAHAN .......................................................................... iv
HALAMAN PERNYATAAN KEASLIAN KARYA ...................................... v
HALAMAN PERSEMBAHAN DAN MOTTO .............................................. vi
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA
ILMIAH UNTUK KEPENTINGAN AKADEMIS ......................................... vii
INTISARI .........................................................................................................viii
ABSTRACT..................................................................................................... ix
KATA PENGANTAR ....................................................................................... x
DAFTAR ISI .................................................................................................... xii
DAFTAR GAMBAR...................................................................................... xvii
DAFTAR TABEL
......................................................................................... xxi
BAB I PENDAHULUAN
................................................................................. 1
1.1. Judul ........................................................................................................... 1
1.2. Latar Belakang Masalah .............................................................................. 1
1.3. Tujuan dan Manfaat penelitian ................................................................... 2
1.4. Batasan Masalah ......................................................................................... 3
1.5. Metodologi Penelitian ................................................................................. 3
BAB II DASAR TEORI ................................................................................... 5
2.1. Prinsip Kerja PLC ....................................................................................... 5
2.2. Pemrograman PLC ...................................................................................... 6
2.2.1. Kode Mnemonik ...................................................................................... 8
2.2.2. Diagram Ladder ....................................................................................... 8
2.2.2.1. Normally Open...................................................................................... 9
2.2.2.2. Normally Closed ................................................................................... 9
2.2.2.3. Keluaran................................................................................................ 10
2.3. Instruksi-instruksi Logika dalam PLC ......................................................... 10
2.3.1 Instruksi LD dan LD NOT......................................................................... 11
2.3.2 Instruksi AND dan AND NOT .................................................................. 11
2.3.3 Instruksi OR dan OR NOT ........................................................................ 14
2.3.4 Intruksi END............................................................................................. 16
2.4. Mikrokontroler ATmega8535...................................................................... 17
2.4.1. Fitur dan Deskripsi PIN ATmega8535...................................................... 17
2.4.2. Peta Memory............................................................................................ 19
2.4.2.1 Flash Memory ........................................................................................ 19
2.4.2.2 SRAM.................................................................................................... 20
2.4.2.3 EEPROM ............................................................................................... 21
2.4.3. Register Serba Guna................................................................................. 21
2.4.4 Register I/O dan Port I/O ......................................................................... 23
2.4.5 Interupsi.................................................................................................... 24
2.4.7 USART ..................................................................................................... 27
2.4.8 Reset ......................................................................................................... 30
2.5 LCD............................................................................................................. 31
2.6 Matriks Keypad............................................................................................ 33
2.7 Komunikasi Serial........................................................................................ 34
BAB III PERANCANGAN .............................................................................. 38
3.1. Diagram Blok.............................................................................................. 38
3.2 Rancangan Perangkat Keras ......................................................................... 40
3.2.1 Rangkaian Matriks Keypad........................................................................ 40
3.2.2 Rangkaian Mikrokontroler ATmega8535 .................................................. 42
3.2.2.1 Rangkaian Osilator................................................................................. 42
3.2.2.2 Rangkaian Reset..................................................................................... 43
3.2.3 Komunikasi Serial RS232 ......................................................................... 44
3.2.4 Komunikasi Mikrokontroler dengan LCD ................................................. 46
3.3 Pemrograman Mikrokontroler ...................................................................... 47
3.3.1 Pembacaan Keypad ................................................................................... 49
3.3.2 Pengolahan Kode Instruksi ........................................................................ 51
3.3.3 Pengolahan Kode Data .............................................................................. 54
3.3.4 Simpan Kode............................................................................................. 61
3.3.5 Tampilkan pada LCD ................................................................................ 62
3.3.6 Kirim Kode ............................................................................................... 65
BAB IV HASIL DAN PEMBAHASAN ........................................................... 70
4.1. Hasil Akhir Perancangan............................................................................. 70
4.2 Cara Menggunakan Konsol PLC ................................................................. 71
4.3 Pengujian Keypad dan Tampilan pada LCD ................................................. 72
4.3.1 Pengujian LD dan LD NOT....................................................................... 73
4.3.2 Pengujian AND dan AND NOT ................................................................ 75
4.3.3 Pengujian OR dan OR NOT ...................................................................... 76
4.3.4 Pengujian CNT.......................................................................................... 78
4.3.5 Pengujian TIM .......................................................................................... 80
4.3.6 Pengujian RUN, PROG dan SEND ........................................................... 81
4.3.7 Pengujian ENTER dan DEL...................................................................... 84
4.3.8 Pengujian UP dan DOWN ......................................................................... 86
4.3.9 Pengujian OUT dan END.......................................................................... 87
4.4 Pengujian Komunikasi antar Mikrokontroler ................................................ 88
4.5 Pengiriman Program ke CPU PLC ............................................................... 90
4.5.1 Instruksi LD dan LD NOT......................................................................... 91
4.5.2 Instruksi OR dan OR NOT ........................................................................ 92
4.5.3 Instruksi AND dan AND NOT .................................................................. 93
4.5.4 Instruksi CNT ........................................................................................... 94
4.5.5 Instruksi TIM ............................................................................................ 94
4.5.6 Instruksi OUT ........................................................................................... 95
4.5.7 Instruksi Aplikasi ...................................................................................... 96
BAB V KESIMPULAN DAN SARAN ............................................................99
5.1. Kesimpulan ................................................................................................99
5.2. Saran..........................................................................................................99
DAFTAR PUSTAKA .......................................................................................100
LAMPIRAN .....................................................................................................101
DAFTAR GAMBAR
Gambar 2.1 Diagram Blok Bagian PLC .................................................................... 6Gambar 2.2 Konfigurasi Kontak NO......................................................................... 9Gambar 2.3 Konfigurasi Kontak NC ........................................................................ 10Gambar 2.4 Konfigurasi Kontak Output.................................................................... 10Gambar 2.5 Diagram Ladder Instruksi LD danLD NOT............................................ 11Gambar 2.6 Diagram Ladder Instruksi AND dan AND NOT .................................... 12Gambar 2.7 Diagram Ladder Instruksi OR dan OR NOT .......................................... 14Gambar 2.8 Diagram Ladder Instruksi END ............................................................. 17Gambar 2.9 Konfigurasi Pin ATmega8535................................................................ 18Gambar 2.10 Memori Program AVR ATmega8535 .................................................. 20Gambar 2.11 Peta Memori Data AVR ATmega8535................................................. 20Gambar 2.12 Register Serbaguna .............................................................................. 21Gambar 2.13 Register X,Y,Z..................................................................................... 22Gambar 2.14 Register SFIOR.................................................................................... 23Gambar 2.15 Register UBBRH dan UBBRL............................................................. 28Gambar 2.16 Register UCSRC.................................................................................. 28Gambar 2.17 Rangkaian RESET ............................................................................... 20Gambar 2.18 Bentuk LCD 16 x 2.............................................................................. 31Gambar 2.21 Komunikasi Serial DB-9 ..................................................................... 35Gambar 2.22 IC MAX232......................................................................................... 37Gambar 3.1 Diagram Blok PLC ................................................................................ 38Gambar 3.2 Diagram Blok Konsol PLC .................................................................... 39Gambar 3.3 Matriks Keypad ..................................................................................... 40Gambar 3.4 Konfigurasi Mikrokontroler, Keypad ..................................................... 42Gambar 3.5 Rangkaian Osilator ................................................................................ 43Gambar 3.6 Rangkaian Reset .................................................................................... 44Gambar 3.7 Rangkaian Komunikasi Antar Mikrokontroler........................................ 45Gambar 3.8 Komunikasi ATmega8535 ..................................................................... 46Gambar 3.9 Flowchart Program Utama..................................................................... 48Gambar 3.10 Proses Pembacaan Keypad ................................................................... 49Gambar 3.11 Proses Instruksi.................................................................................... 52Gambar 3.12 Proses Data.......................................................................................... 56Gambar 3.13 Flowchart Simpan Kode ..................................................................... 61Gambar 3.14 Flowchart Tampilkan pada LCD.......................................................... 63Gambar 3.15 Flowchart Inisialisasi LCD .................................................................. 65Gambar 3.16 Aktivasi Komunikasi Serial ................................................................. 66Gambar 3.17 Frame Kode Instruksi dan Data........................................................... 67Gambar 3.18 Flowchart Kirim Kode Instruksi dan Data............................................ 68Gambar 4.2 Bentuk Fisik rangkaian Konsol .............................................................. 71Gambar 4.3 Tampilan awal LCD............................................................................... 73Gambar 4.4 LD dan LD NOT dengan data 000 ......................................................... 73Gambar 4.5 LD dan LD NOT dengan data 002 dan 004 ............................................ 74Gambar 4.6 AND dan AND NOT dengan data 003 dan 005...................................... 75Gambar 4.7 AND dan AND NOT dengan data 006 dan 007...................................... 76Gambar 4.8 OR dan OR NOT dengan data 004 dan 006............................................ 77Gambar 4.9 OR dan OR NOT dengan data 007 dan 005............................................ 77Gambar 4.10 CNT dengan data 001 .......................................................................... 78Gambar 4.11 CNT dengan data 003 .......................................................................... 79Gambar 4.12 TIM dengan data 156........................................................................... 80Gambar 4.13 TIM dengan data 250........................................................................... 80Gambar 4.14 Fungsi Mode RUN............................................................................... 82Gambar 4.15 Fungsi Mode PROG............................................................................. 82Gambar 4.16 Fungsi Mode SEND............................................................................. 83Gambar 4.17 Fungsi ENTER dan DEL ..................................................................... 85Gambar 4.18 Fungsi UP dan Down........................................................................... 86Gambar 4.19 Program OUT dan END....................................................................... 88Gambar 4.20 Kode program LD dan LD NOT pada codevisionAVR......................... 89Gambar 4.21 Kode program RUN pada codevisionAVR ........................................... 89Gambar 4.24 Isi memory CPU PLC untuk program LD dan LD NOT ....................... 91Gambar 4.25 Isi memory Konsol untuk Program OR dan OR NOT ........................... 92Gambar 4.26 Isi memory CPU PLC untuk program OR dan OR NOT....................... 92Gambar 4.27 Isi memory Konsol untuk Program AND dan AND NOT ..................... 93Gambar 4.28 Isi memory CPU PLC untuk program AND dan AND NOT ................. 93Gambar 4.29 Isi memory Konsol untuk Program CNT .............................................. 94Gambar 4.30 Isi memory CPU PLC untuk program CNT .......................................... 94Gambar 4.31 Isi memory Konsol untuk Program TIM ............................................... 95Gambar 4.32 Isi memory CPU PLC untuk program TIM........................................... 95Gambar 4.33 Isi memory Konsol untuk Program OUT .............................................. 95Gambar 4.34 Isi memory CPU PLC untuk program OUT .......................................... 96Gambar 4.35 Isi memory Konsol untuk Program Apilkasi ......................................... 97Gambar 4.36 Isi memory CPU PLC untuk program Aplikasi..................................... 97
DAFTAR TABEL
Tabel 2.1 Mnemonik PLC....................................................................................8Tabel 2.2 Mnemonik LD dan LD NOT ..............................................................11Tabel 2.3 Mnemonik AND dan AND NOT........................................................12Tabel 2.4 Tabel Kebenaran Gerbang AND.........................................................13Tabel 2.5 Tabel Kebenaran Gerbang AND NOT................................................14Tabel 2.6 Mnemonik OR dan OR NOT..............................................................15Tabel 2.7 Tabel Kebenaran Gerbang OR NOT ...................................................15Tabel 2.8 Tabel Kebenaran Gerbang OR............................................................16Tabel 2.9 Alamat Vektor Interupsi ATmega8535 ...............................................25Tabel 2.10 Perhitungan UBBR dan Baudrate ..................................................... 29Tabel 2.11 Pin Tampilan LCD ...........................................................................32Tabel 3.1 Kombinasi Baris dan Kolom Matriks Keypad.....................................41Tabel 3.2 Konfigurasi Pin LCD dan Mikrokontroller .........................................47Tabel 3.3 Program PLC ..................................................................................... 48BAB I PENDAHULUAN
1.1 Judul
Konsol Sebagai Pemrogram pada Implementasi PLC Menggunakan Mikrokontroler
1.2 Latar Belakang Masalah
Dalam bidang industri, penggunaan mesin otomatis dan pemrosesan secara otomatis merupakan hal yang umum. Sistem pengontrolan dengan elektromekanik yang menggunakan relay-relay mempunyai banyak kelemahan, diantaranya kontak-kontak yang dipakai mudah aus karena panas / terbakar atau karena hubung singkat, membutuhkan biaya yang besar saat instalasi, pemeliharaan dan modifikasi dari sistem yang telah dibuat jika di kemudian hari diperlukan modifikasi. Dengan menggunakan PLC (Programmable Logic
Controller ) permasalahan tersebut dapat diatasi, karena sistem PLC
mengintegrasikan berbagai macam komponen yang berdiri sendiri menjadi suatu sistem kendali terpadu dan dengan mudah merenovasi tanpa harus mengganti semua instrumen yang ada [1].
PLC adalah kendali logika terprogram yang merupakan suatu piranti elektronik yang dirancang untuk dapat beroperasi secara digital dengan untuk menjalankan fungsi-fungsi logika, seperti fungsi pencacah, fungsi urutan proses, fungsi pewaktu, fungsi aritmatika, dan fungsi yang lainnya dengan cara memprogramnya [2].
Selain PLC perkembangan elektronika akhir-akhir ini khususnya mikrokontroler menunjukkan bahwa semakin banyak dijumpai aplikasi-aplikasi peralatan elektronis khususnya otomasi dan pengendalian suatu sistem yang dikehendaki agar mampu berdiri sendiri. PLC sendiri adalah suatu sistem elektronika yang menggunakan memori yang dapat diprogram. Kinerja PLC sama dengan kinerja mikrokontoler yang dapat diprogram, dapat menyimpan dan menjalankan instruksi-intsruksi logika [3], sehingga PLC dapat dirancang dengan menggunakan mikrokontroler. Pada penelitian ini, akan dirancang sebuah alat pemrogram PLC melalui programmer/monitor (P/M) yang sering disebut sebagai
hand held programmer
atau konsol dengan menggunakan mikrokontroler sebagai pengendali utama. Alat ini akan memprogram CPU (Cental Processing Unit ) PLC dan menampilkan instruksi-instruksi program yang digunakan pada LCD (Liquid Crystal Display).
1.3 Tujuan dan Manfaat Penelitian
Pada pembuatan alat ini tujuan yang ingin dicapai adalah membuat
hardware
yang dapat memprogram dan menampilkan instruksi-instuksi yang digunakan untuk PLC pada LCD karakter. Adapun manfaat yang diharapkan dari penelitian ini adalah Sebagai referensi yang dapat mendukung penelitian selanjutnya yang berkaitan dengan aplikasi mikrokontroller untuk pemrograman PLC
1.4 Batasan Masalah
Perangkat yang akan dirancang mempunyai batasan masalah sebagai berikut:
1. Menampilkan instruksi-instruksi yang digunakan dengan LCD module
2 16 karakter
×
2. Menggunakan komunikasi serial untuk komunikasi data
3. Mikrokontroler yang digunakan adalah mikrokontroler ATmega8535
4. Keypad yang dirancang sesuai dengan instruksi pada pemrograman PLC yaitu: AND, OR, LD, OUT, CNT, NOT, TIM.
5. Menggunakan 8 port input dan 8 port output
6. Menggunakan 1 CNT dan TIM
1.5 Metodologi Penelitian
Adapun metodologi penelitian yang dilakukan terdiri dari :
1. Studi literatur, yaitu dengan mempelajari berbagai informasi, baik dari buku maupun internet sehingga dapat digunakan sebagai referensi pendukung dalam penyusunan laporan.
2. Perencanaan rancangan dan pembuatan alat dalam bentuk perangkat keras maupun perangkat lunak.
3. Melakukan pengamatan dan pengujian terhadap hasil perancangan agar
1.6 Sistematika Penulisan
Sistematika penulisan tugas akhir ini dibagi menjadi lima bab yang disusun sebagai berikut :
BAB I. PENDAHULUAN Berisi latar belakang penelitian, rumusan masalah, tujuan dan manfaat penelitian, batasan masalah, metodologi penelitian, dan sistematika penulisan. BAB II. DASAR TEORI Berisi dasar teori meliputi PLC, LCD LMB162A, dan mikrokontroler yang akan digunakan dalam perancangan. BAB III. PERANCANGAN ALAT Berisi perancangan alat yang meliputi diagram blok perancangan, perancangan perangkat keras, dan pemrograman mikrokontroler. BAB IV. HASIL PENGAMATAN DAN PEMBAHASAN Bab ini berisi hasil pengamatan dan pembahasan dari pengujian yang telah dilakukan. BAB V. PENUTUP Berisi tentang kesimpulan dan saran.
BAB II DASAR TEORI PLC (Programmable Logic Controller) adalah suatu peralatan elektronik
yang bekerja secara digital, memiliki memori yang dapat diprogram, menyimpan perintah-perintah untuk melakukan fungsi-fungsi khusus seperti logic,
sequencing, timing, counting, dan aritmatika untuk mengontrol berbagai jenis
mesin atau proses melalui analog atau digital input / output modules [3]. PLC banyak digunakan pada aplikasi-aplikasi industri, misalnya pada proses pengepakan, penanganan bahan, perakitan otomatis dan lain sebagainya. Dengan kata lain hampir semua aplikasi yang memerlukan kendali listrik atau elektronik membutuhkan PLC
2.1. Prinsip Kerja PLC
Secara singkat prinsip kerja PLC dapat menerima data berupa sinyal analog dan digital dari komponen input device [4]. Sinyal dari input device dapat berupa saklar-saklar, tombol tombol tekan, peralatan pengindera dan peralatan sejenisnya. PLC juga dapat menerima sinyal analog dari input device yang berupa potensiometer, putaran motor dan peralatan sejenisnya. Sinyal analog ini oleh modul masukan diubah menjadi sinyal digital. CPU (Central Processing Unit) mengolah sinyal digital yang masuk sesuai dengan program yang telah sinyal dengan logika high (1) dan low (0). Sinyal keluaran ini dapat langsung dihubungkan ke peralatan yang akan dikontrol atau dengan bantuan kontaktor untuk mengaktifkan peralatan yang akan dikendalikan. Bagian PLC pada prinsipnya terdiri dari CPU (Central Processing Unit), PM (Programming
Memori ), PD (Programming Device), modul input/output dan unit catu daya,
ditunjukkan pada gambar 2.1.Gambar 2.1. Diagram Blok Bagian PLC [4].2.2 Pemrograman PLC
Persyaratan utama yang harus dimiliki sebuah bahasa pemrograman PLC adalah mudah dimengerti dan mudah digunakan dalam mengendalikan suatu sistem kendali [4]. Hal ini membutuhkan tingkat bahasa yang cukup tinggi untuk diinginkan oleh pemrogram. Untuk itu terdapat dua cara pemrograman dalam PLC yaitu:
1. Ladder diagram, artinya manusia menyusun program berdasarkan gambar rangkaian asli yang digunakan untuk sistem kendali.
2. Bahasa mnemonik, mengubah dari ladder diagram ke bahasa mnemonik.
Penyusunan ladder diagram sebagai sebuah program dapat dilakukan dengan menggunakan alat pemrogram khusus. Umumnya unit pemrogram yang digunakan adalah programming konsol untuk memprogram dengan bahasa mnemonik dan personal computer untuk memprogram dengan menggunakan
ladder diagram .
Programming konsol adalah piranti yang dibuat khusus untuk
pemrograman PLC berbeda dengan personal computer yang berupa komputer konvensional biasa yang diberi program khusus untuk pemrograman PLC.
Programming
konsol sering juga disebut hand held programmer dan mempunyai beberapa fungsi yaitu:
1. Off, difungsikan untuk menghentikan PLC sehingga program yang dibuat tidak dapat dijalankan
2. Run, difungsikan untuk pengendalian suatu proses pada saat program dalam kondisi diaktifkan.
3. Monitor untuk mengetahui keadaan suatu proses yang terjadi pada PLC
4. Program yang menyatakan suatu keadaan dimana programmer/monitor dapat digunakan untuk membuat program.
2.2.1 Kode Mnemonik
Kode mnemonik juga bahasa teknik yang merupakan sarana perantara untuk memasukkan program ke dalam PLC khususnya menggunakan Personal
Computer
atau konsol [5]. Kode ini memuat keterangan mengenai instruksi dan data operand. Deskripsi suatu proses kerja dari sebuah sistem yang dikendalikan dapat dituangkan ke dalam sebuah kode mnemonik yang memuat keterangan- keterangan mengenai alamat dan tanggapan dari input-output, serta fungsi-fungsi program pengontrol. Contoh tabel mnemonik dapat dilihat pada tabel 2.1
Tabel 2.1 Mnemonik PLC [5]Instruksi Operand LD 0000 AND 0001 OR 0002 AND 0003
2.2.2 Diagram Ladder Pada PLC diagram kendali dinamakan diagram ladder (tangga) [5].
Dinamakan diagram tangga dikarenakan bentuknya menyerupai tangga (tersusun seperti tangga), seperti kita berjalan menuruni tangga mulai tangga atas dan perlahan ke bawah. Pada penggambaran diagram tangga dikenal kontak-kontak yang hampir sama dengan relai-relai mekanik, yaitu: Normally Open (NO),
Normally Closed (NC) dan Keluaran(output).
2.2.2.1 Normally Open (NO) Normally open (NO) adalah salah satu jenis saklar yang dalam keadaan
normal berkondisi OFF (Normally Open), berupa satu kutub (berasal dari satu sumber) dan menghantarkan arus hanya ke satu beban [5]. Penghantaran arus dan tegangan (kondisi ON) dari suatu sumber terjadi jika saklar terhubung dan pemutusan arus dan tegangan (kondisi OFF) terjadi saat saklar tidak terhubung atau ketika tidak mendapat arus. Instruksi tersebut ditunjukkan pada gambar 2.2.
Gambar 2.2 Konfigurasi kontak NO [5]2.2.2.2 Normally Close (NC)
Saklar ini menandakan keadaan saklar yang normalnya pada keadaan ON/tertutup, jadi jika saklar tersebut diaktifkan akan menjadi OFF/terbuka. instruksi tersebut ditunjukkan pada gambar 2.3.
Gambar 2.3 Konfigurasi kontak NC [5]2.2.2.3 Keluaran (Output)
Instruksi keluaran (output) juga digunakan pada PLC. Keluarannya dapat berupa relay yang akan mengaktifkan kontak-kontak NO dan NC [5]. instruksi tersebut ditunjukkan pada gambar 2.4.
Gambar 2.4 Konfigurasi kontak output [5]2.3. Instruksi-instruksi Logika dalam PLC
Instruksi-instruksi tangga atau ladder instruction adalah instruksi-instruksi yang terkait dengan kondisi-kondisi di dalam diagram tangga [5]. Instruksi- instruksi tangga, baik yang independen maupun kombinasi atau gabungan dengan blok instruksi berikut atau sebelumnya, akan membentuk kondisi-kondisi eksekusi. Pada bagian ini instruksi-instruksi yang digunakan sebagai acuan adalah instruksi pada PLC Omron.
2.3.1 Instruksi LOAD (LD) dan LOAD NOT (LD NOT)
Instruksi LD digunakan untuk memasukkan masukan yang dikehendaki sebagai bagian awal dari tangga [5]. Sedangkan NOT untuk menandakan kontak NC (Normally Close). Intruksi LD dan LDNOT dibutuhkan hanya satu kondisi logika saja pada awal program. Bentuk diagram ladder dan mnemonik perintah tersebut dapat dilihat pada gambar 2.5 dan tabel 2.2.
0001 0002
Gambar 2.5 Diagram ladder instruksi LD dan LDNOT [5]Tabel 2.2 Mnemonik LD dan LDNOT [5]
Instruksi Operand
LD 0001
LD NOT 0002
2.3.2 Instruksi AND dan ANDNOT
Instruksi AND digunakan untuk memasukkan masukan yang diseri dengan masukan sebelumnya [5]. Tentunya instruksi yang diseri harus terpenuhi semuanya untuk mengeluarkan satu keluaran. Bentuk ladder dan mnemonik perintah tersebut dapat dilihat pada gambar 2.6 dan tabel 2.3.
0000 0001 0002
Tabel 2.3 Mnemonik AND dan AND NOT [5]Instruksi Operand LD 0000 AND 0001 AND NOT 0002
Untuk menganalisa gerbang AND dengan 2 buah masukan A dan B dengan keluaran Q, maka terdapat kemungkinan untuk menganalisa masukannya, seperti yang ditunjukkan pada tabel 2.4.
1. Kemungkinan pertama, masukan A = 0 dan B = 0. Dengan kata lain tidak ada masukan, maka keluarannya Q = 0.
2. Kemungkinan kedua, masukan pada A = 1 dan B = 0. Terdapat masukan hanya di A dan tidak ada masukan pada B, maka keluarannya Q = 0.
3. Kemungkinan ketiga, masukan pada A = 0 dan B = 1. Terdapat masukan hanya di B dan tidak ada masukan pada A, maka keluarannya Q = 0.
4. Kemungkinan keempat, masukan pada A = 1 dan B = 1. Terdapat masukan pada A dan B, maka keluarannya Q = 1.
Tabel 2.4. Tabel kebenaran gerbang AND [5]Masukan Keluaran A B Q
1
1
1
1
1 Untuk menganalisa gerbang NOT AND dengan 2 buah masukan A dan B dengan keluaran Q, maka terdapat 4 kemungkinan untuk menganalisa masukannya, seperti yang ditunjukkan pada tabel 2.5.
1. Kemungkinan pertama, masukan A = 0 dan B = 0. Dengan kata lain tidak ada masukan, maka keluarannya Q = 1.
2. Kemungkinan kedua, masukan pada A = 1 dan B = 0. Terdapat masukan hanya di A dan tidak ada masukan pada B, maka keluarannya Q = 1.
3. Kemungkinan ketiga, masukan pada A = 0 dan B = 1. Terdapat masukan hanya di B dan tidak ada masukan pada A, maka keluarannya Q = 1.
4. Kemungkinan keempat, masukan pada A = 1 dan B = 1. Terdapat masukan pada A dan B, maka keluarannya Q = 0.
Tabel 2.5. Tabel kebenaran gerbang AND NOT [5]Masukan Keluaran A B Q
1
1
1
1
1
1
1
2.3.3. Instruksi OR dan ORNOT
Instruksi OR digunakan untuk memasukkan masukan yang diparalel dengan masukan yang sebelumnya. Beberapa instruksi memungkinkan terletak pada garis terpisah secara paralel, maka kondisi pertama merupakan instruksi load
Tabel 2.6 Mnemonik OR dan OR NOT [5]Instruksi Operand LD 0000 OR 0001 OR NOT 0002
Untuk menganalisa gerbang OR, terdapat 4 kemungkinan untuk menganalisa masukannya, seperti yang ditunjukkan pada tabel 2.7.
1. Kemungkinan pertama, masukan pada A = 0 dan B = 0. Dengan kata lain tidak ada masukan, maka keluarannya Q = 0.
2. Kemungkinan kedua, masukan pada A = 1 dan B = 0. Terdapat masukan pada A = 1 dan tidak ada masukan pada B, maka keluarannya Q = 1.
3. Kemungkinan ketiga, masukan pada A = 0 dan B = 1. Terdapat masukan pada B dan tidak ada masukan A, maka keluarannya Q = 1.
4. Kemungkinan keempat, masukan pada A = 1 dan B = 1. Terdapat masukan pada A dan B, maka keluarannya Q = 1.
0001 0002 0000
Gambar 2.7 Diagram ladder instruksi OR dan ORNOT [5]Tabel 2.7. Tabel kebenaran gerbang ORNOT [5]2. Kemungkinan kedua, masukan pada A = 1 dan B = 0. Terdapat masukan pada A = 1 dan tidak ada masukan pada B, maka keluarannya Q = 0.
1
1
Masukan Keluaran A B Q
Tabel 2.8. Tabel kebenaran gerbang OR [5]4. Kemungkinan keempat, masukan pada A = 1 dan B = 1. Terdapat masukan pada A dan B, maka keluarannya Q = 0.
3. Kemungkinan ketiga, masukan pada A = 0 dan B = 1. Terdapat masukan pada B dan tidak ada masukan A, maka keluarannya Q = 0.
1. Kemungkinan pertama, masukan pada A = 0 dan B = 0. Dengan kata lain tidak ada masukan, maka keluarannya Q = 1.
Masukan Keluaran A B Q
1 Untuk menganalisa gerbang OR, terdapat 4 (empat) kemungkinan dengan menganalisa yang ada pada masukan-masukannya:
1
1
1
1
1
1
1
2.3.4. Instruksi END
Instruksi terakhir yang harus dituliskan atau digambarkan dalam diagram tangga adalah instruksi END, instruksi tersebut dapat dilihat pada gambar 2.8 [5].
CPU pada PLC akan mengerjakan semua instruksi dalam program dari awal (baris pertama) hingga ditemui instruksi END yang pertama, sebelum kembali lagi mengerjakan instruksi dalam program dari awal lagi, artinya instruksi-instruksi yang ada di bawah atau setelah instruksi END akan diabaikan.
END
Gambar 2.8 Diagram ladder instruksi END [5]2.4. Mikrokontroler ATmega8535
Mikrokontroler ATmega8535 memiliki fitur yang cukup lengkap. Mulai dari dari kapasitas memori program dan memori data yang cukup besar, interupsi,
timer/counter , PWM, USART, TWI, analog comparator, EEPROM internal dan
juga ADC internal semuanya ada dalam ATmega8535 [6]. Sehingga dengan fitur yang cukup lengkap kita dapat merancang suatu sistem untuk kepentingan komersial mulai dari sistem yang sederhana sampai dengan sistem yang relative kompleks hanya dengan menggunakan satu IC saja, yaitu dengan IC
2.4.1. Fitur dan Deskripsi PIN ATmega8535
Berikut ini adalah fitur-fitur yang dimiliki ATmega8535: 1) 130 macam instruksi , yang hampir semuanya dieksekusi dalam satu siklus clock.
2) 32 × 8-bit register serba guna. 3) Kecepatan mencapai 16 MIPS dengan clock 16MHz.
4) 8 KByte Flash Memori, yang memiliki fasilitas in-sistem Programming. 5) 512 Byte internal EEPROM dan 512 Byte SRAM. 6) Programming Lock, fasilitas untuk mengamankan kode program. 7) 2 buah timer/counter 8-bit dan 1 buah timer/counter 16-bit.
8) 4 channel output PWM, 8 channel ADC 10-bit dan serial USART.
9) Master/Slave SPI serial interface dan serial TWI atau 12C dan ON-ChipAnalog Comparator Pada gambar 2.9 menunjukkan konfigurasi pin ATmega8535 , sehingga pin tersebut dapat di deskripsikan sebagai berikut: 1) Power, VCC dan GND (ground) 2) PORTA (PORTA ), merupakan pin IO dua arah dan berfungsi khusus
7 −
sebagai pin masukan ADC 3) PORTB (PORTB ), merupakan pin IO dua arah dan fungsi khusus
7 −
sebagai pin timer/counter, komparator analog dan SPI 4) PORTC (PORTC ), merupakan pin IO dua arah dan fungsi khusus
−
7
5) PORTD (PORTD ), merupakan pin IO dua arah dan fungsi khusus
−
7
6) RESET adalah pin untuk me-reset mikrokontroler 7) XTAL1 dan XTAL2 pin untuk exsternal clock 8) AVCC adalah pin masukan untuk tegangan ADC 9) AREF adalah pin masukan untuk tegangan referensi eksternal ADC
2.4.2. Peta Memori
ATmega8535 memiliki dua ruang memori utama, yaitu memori data dan memori program [7]. Selain dua memori utama, ATmega8535juga memiliki fitur EEPROM yang dapat digunakan sebagai penyimpan data.
2.4.2.1. Flash Memori
ATmega8535 memiliki flash memory sebesar 8kB untuk memori program, menggunakan 16 atau 32 bit dengan alamat dari $000 hingga $FFF. Untuk keamanan software, memori flash dibagi menjadi dua bagian, yaitu dengan Boot
Program dan bagian Application Program. AVR tersebut nmemiliki 12 bit
Program Counter (PC) sehingga mampu mengalamati flash memori.Gambar 2.10 Memori Program AVR ATmega8535 [7]2.4.2.2. SRAM
ATmega8535 memiliki 608 alamat memori data yang terbagi menjadi 3 bagian, yaitu 32 buah register file, 64 buah IO register file dan 512 byte internal
SRAM.
Tampak pada gambar 2.11 diatas bahwa alamat $0000-$001F ditempati oleh
register file . I/O register menempati alamat dari $0020-$005F. Sedangkan sisanya
sebagai internal SRAM sebesar 512 byte ($0060-$025F) [7].2.4.2.3. EEPROM
ATmega8535 juga memliki memori data berupa EEPROM 8 bit sebesar 512 byte ($000-$1FF) yang terpisah dari memori program maupun memori data [7]. Memori EEPROM ini hanya dapat diakses dengan menggunakan register- register I/O yaitu register EEPROM. Untuk mengakses memori EEPROM ini diperlakukan seperti mengakses data eksternal sehingga waktu eksekusinya relatif lebih lama bila dibandingkan dengan mengakses data dari SRAM.
2.4.3. Register Serba Guna dan Stack Pointer