• Tidak ada hasil yang ditemukan

PERANCANGAN PLC MENGGUNAKAN FPGA

N/A
N/A
Protected

Academic year: 2021

Membagikan "PERANCANGAN PLC MENGGUNAKAN FPGA"

Copied!
7
0
0

Teks penuh

(1)

PERANCANGAN PLC MENGGUNAKAN FPGA

Satrio Dewanto

1

; Hadi Yoshua

2

; Bambang

3

; Muhammad Nabil

4

1

Jurusan Sistem Komputer, Fakultas Ilmu Komputer, Universitas Bina Nusantara, Jalan K.H. Syahdan No. 9, Palmerah, Jakarta Barat 11480

satrio@binus.edu

ABSTRACT

PLC is an electronic relay that operated digitally using a memory that can be programmed as an instruction storage device used to implement various functions such as: logical operations, sequential operations, timer and counter operations. The objective of this research is to design a simple PLC using an FPGA. The designed PLC have four inputs, eight outputs, two flags, and also it could perform basic switching operation, basic logical gate operation (AND, OR, XOR, and NOT), counter and timer functions. The design methodology is divided into two main categories which are software and hardware design. The research methodology is done through literature study which is taken from the reference books and internet. The research shows that a simple PLC could be designed using FPGA Xilinx® Spartan-3 XC3S200.

Keywords: PLC, FPGA

ABSTRAK

PLC adalah sebuah relay elektronik yang dioperasikan secara digital menggunakan memori yang dapat diprogram sebagai tempat penyimpanan instruksi-instruksi untuk mengimplementasikan fungsi-fungsi seperti operasi logika, operasi sekuensial, operasi timer dan

counter. Tujuan penelitian adalah merancang PLC sederhana menggunakan FPGA. PLC yang

dirancang memiliki empat buah input, delapan buah output, dua buah flag, serta dapat melakukan operasi switching dasar, operasi gerbang logika dasar (AND, OR, XOR, dan NOT), dan fungsi

counter dan timer. Metodologi perancangan dibagi dalam dua bagian utama yaitu perancangan

perangkat lunak dan perangkat keras. Metode penelitian yang dilakukan berupa studi literatur melalui buku-buku dan internet. Hasil perancangan yang telah dilakukan menunjukan bahwa sebuah PLC sederhana dapat dibangun menggunakan FPGA Xilinx® Spartan-3 XC3S200.

(2)

PENDAHULUAN

Dalam bidang industri pada akhir tahun 60-an diperkenalkan Programmable Logic

Controller (PLC). PLC digunakan untuk menggantikan fungsi rangkaian relai yang diperlukan

pada kontrol mesin industri. PLC bekerja dengan cara melihat input dan tergantung pada kondisi input akan membuat output ON atau OFF. Pemakai PLC akan memasukan program melalui perangkat lunak atau perangkat programmer dan mendapatkan hasil keluaran yang diinginkan. Bagian utama dari PLC adalah CPU, memori, dan rangkaian untuk menerima input dan output. PLC dapat dianggap sebagai kotak yang penuh berisi ratusan atau ribuan relai, counter, timer, dan lokasi penyimpanan data tetapi mereka tidak berbentuk fisik melainkan dibuat menggunakan perangkat lunak untuk mensimulasikannya. Di sisi lain teknologi Field Programmable Gate Array (FPGA) dapat terbilang masih baru, kelebihan yang dimiliki FPGA sebagai Programmable Logic

Device (PLD) dapat digunakan sebagai pendekatan dalam merancang suatu Application Specific Integrated Circuit (ASIC). Pada saat ini FPGA akan di implementasikan untuk merancang sebuah

PLC sederhana.

Lingkup penelitian yang dilakukan meliputi antara lain pengiriman data menggunakan serial port, operasi yang dilakukan FPGA sebagai Central Control Unit (CCU) dari PLC dan penggunaan Visual Basic untuk memprogram CCU; operasi yang bisa dilakukan oleh PLC yang dirancang masih sebatas operasi gerbang logika dasar, counter dan timer; serta pembuatan modul untuk menerima input dan mengeluarkan output di luar board FPGA tidak termasuk dalam penelitian.

Tujuan penelitian ini adalah merancang dan membuat CCU PLC sederhana, kemudian rancangan tersebut akan di implementasikan menggunakan FPGA. Selain itu ditujukan untuk membuat sebuah simulator PLC. Manfaat penelitian ini adalah untuk meningkatkan pemahaman FPGA dan juga untuk meningkatkan penggunaan FPGA dalam otomasi industri. Manfaat lainnya adalah hasil perancangan CCU PLC menggunakan FPGA dapat digunakan sebagai modul pelatihan PLC.

METODE

PLC umumnya terdiri dari empat bagian utama yaitu pusat pemrosesan data (data process

center), modul masukan/keluaran (input/output module), pemrogram (programmer), dan catu daya

(power supply), seperti yang ditunjukkan pada gambar.

Gambar 1

Arsitektur FPGA spartan 3 family terdiri dari 5 “fundamental programmable functional

(3)

berbasiskan RAM untuk mengimplementasikan logika dan penyimpanan (flip-flop atau latch) yang bisa diprogram; (2) Input Output Block (IOB) mengatur aliran data antara pin I/O dan alat yang digunakan. Setiap IOB mendukung aliran data dua arah dan 3-state operation; (3) Block Ram menyediakan tempat penyimpanan data dalam bentuk 18-Kbit dual-port block; (4) Multiplier block dapat menerima dua data 18-bit biner sebagai input dan menghitung hasil perkaliannya; (5) Digital

Clock Manager Block (DCM) berfungsi untuk mengatur distribusi, delay, perkalian, pembagian,

dan penggeseran fase dari sinyal clock.

Perancangan PLC menggunakan FPGA ini akan dibangun dengan cara menggantikan CCU dari PLC dengan FPGA. Semua batasan perangkat keras (hardware) dari modul FPGA tersebut akan menjadi batasan dari PLC yang akan dirancang. Sistem yang akan dibangun memiliki skema seperti dijelaskan Gambar 2:

Gambar 2

Sesuai skema pada Gambar 2, sistem ini menggunakan program Microsoft® Visual Basic untuk merancang pemrogram PLC yang merupakan adaptasi metode statement list milik FESTO®. Pemrogram PLC yang dirancang tersebut kemudian dinamakan LineList. Tampilan antar-muka pemrogram PLC tersebut dapat dilihat pada gambar. Selanjutnya instruksi-instruksi yang ditulis pada LineList kemudian akan diolah lalu dikirim ke dalam FPGA melalui serial port. Pada prosesnya LineList akan membentuk sebuah truth table yang akan disimpan dalam RAM. Sistem akan menerima input (sensor, switch) lalu berdasarkan truth table yang ada dalam RAM maka output yang ditentukan akan dihasilkan.

Tabel 1 Truth Table

Truth Table RAM

Input Output Address Data

A B C o0 o1 o2 i0 i1 i2 o0 o1 o2

0 0 0 x x x 0 0 0 x x x 0 0 1 x x x 0 0 1 x x x

: : : :

(4)

Sesuai dengan tabel diatas input berfungsi sebagai address dan outputnya adalah yang ditentukan pada LineList. Jadi bila i0 dan i1 aktif maka address yang dituju adalah 110. Bila isi dari datanya adalah 011 maka output yang aktif adalah o1 dan o2. Diagram alir LineList dapat dilihat pada gambar 4.

Input yang dimiliki oleh PLC yang dirancang berjumlah empat buah yaitu input(0), input(1), input(2) dan input(3). Sedangkan output yang dimiliki berjumlah delapan buah yaitu output(0), output(1), output(2), output(3), output(4), output(5), output(6), dan output(7). Selain itu PLC yang dirancang juga dilengkapi oleh dua buah flag yakni flag(0) dan flag(1).

Gambar 3 Tampilan Program

Agar FPGA dapat bekerja sebagai CCU PLC maka dirancang beberapa modul pada FPGA yaitu:

• Modul UART Control untuk menerima data dari serial port.

• Modul untuk membuat gabungan data 8 bit dari serial port menjadi 16 bit. • Modul Memori Control untuk menyimpan data yang sudah menjadi 16 bit. • Modul untuk mengatur pengeluaran data dan pemakaian timer, counter & flag. • Modul Upper-Control yang berfungsi untuk mengatur seluruh modul diatas.

(5)

Mulai User memasukan ekspresi Pemeriksaan sintaks dari ekspresi yang diberikan Data diperoleh dan siap kirim Terjadi kesalahan? Selesai Program inisialisasi Program dalam keadaan siap menerima input Data dikirim ke FPGA melalui port serial X X Tidak Iya

Gambar 4 Diagram Alur LineList

Agar FPGA dapat bekerja sebagai CCU PLC maka dirancang beberapa modul pada FPGA yaitu:

• Modul UART Control untuk menerima data dari serial port.

• Modul untuk membuat gabungan data 8 bit dari serial port menjadi 16 bit. • Modul Memori Control untuk menyimpan data yang sudah menjadi 16 bit. • Modul untuk mengatur pengeluaran data dan pemakaian timer, counter & flag. • Modul Upper-Control yang berfungsi untuk mengatur seluruh modul diatas.

Modul Upper-Control merupakan modul yang berhubungan dengan user yaitu dengan menerima input yang berupa saklar atau switch dan mengeluarkan output ke lampu/LED sesuai keinginan dari user. Karena sistem yang dirancang merupakan suatu look-up table yang berbasiskan sebuah RAM sebesar 256x16 bit. Dari RAM delapan bit address yang digunakan empat buah diambil dari input, satu buah dari counter, satu buah dari timer dan dua buah dari flag. Sedangkan isi data pada RAM yang sebesar 16 bit akan digunakan untuk delapan buah output, tiga buah untuk pengaktifan counter, tiga buah untuk pengaktifan timer dan dua buah untuk flag.

(6)

Gambar 6 Diagram Alur Upper Control

Modul akan memeriksa nilai Baca, bila nilainya 1 maka data yang terdapat dalam RAM akan digunakan sebagai output sesuai dengan kondisi input. Bila nilainya 0 maka modul akan memeriksa apakah nilai output16_ok sama dengan 1. Bila nilai output16_ok sama dengan 0 maka modul akan kembali memeriksa kembali nilai Baca. Bila output16_ok sama dengan 1 maka data input 16 bit akan ditulis ke dalam RAM.

HASIL DAN PEMBAHASAN

Spesifikasi sistem memiliki 4 buah input/masukan, memiliki 8 buah output/keluaran, memiliki 2 buah flag, memiliki counter, dan memiliki timer. Pengujian dilakukan dengan cara memberikan sejumlah instruksi pada pemrogram dan melihat apakah instruksi tersebut dapat dijalankan dengan baik. Instruksi diberikan secara bertahap mulai dari bentuk sederhana sampai dengan kompleks. Hasil pengujian lengkap dapat dilihat pada tabel 2:

Tabel 2 Tabel hasil pengujian

Jenis Instruksi Penjelasan Keterangan

Switching Dasar Penggunaan sejumlah input dan output beserta flag Berhasil dilakukan Gerbang Logika Penggunaan sejumlah input dan output disertai operasi Berhasil dilakukan

(7)

logika

Counter Penggunaan sebuah input dan output disertai fungsi counter terhadap output

Berhasil dilakukan

Timer Penggunaan sebuah input dan output disertai fungsi timer terhadap output

Berhasil dilakukan

Kombinasi Penggunaan seluruh fungsi dan operasi yang terdapat pada PLC yang dirancang dalam kondisi maksimal

Dapat dilakukan namun belum sempurna

PLC sederhana yang dirancang dapat melakukan operasi switching dasar dan operasi gerbang logika yang sederhana seperti and, or, xor dan not. Untuk operasi counter dan timer juga bisa dilakukan dengan baik. Pada pengujian ditemukan kekurangan yaitu pada saat dilakukan operasi kombinasi antara timer dan counter misalnya ingin dinyalakan lampu sebanyak 5 kali setelah 5 detik. Hal ini tidak sempurna dilakukan karena PLC yang dirancang tidak dapat melakukan operasi secara sekuensial secara sempurna.

SIMPULAN

Dari hasil penelitian yang dilakukan dapat disimpulkan bahwa sebuah PLC sederhana berhasil dirancang menggunakan FPGA Spartan-3 XC3S200. PLC yang dirancang dapat bekerja secara paralel dengan baik, namun untuk proses sekuensial yang melibatkan counter belum dapat dilakukan dengan sempurna.

DAFTAR PUSTAKA

Ackermann, R. et al. 1994. Programmable Logic Controllers: Basic Level. Festo Didactic KG. Esslingen.

Mano, M. Moris, Kime, Charles R. 2001. Logic and Computer Design Fundamentals. 2nd Edition. Prentice Hall. New Jersey.

Matic, Nebojsa. Introduction to PLC Controllers.

mikroelektronika.co.yu/english/product/books/PLCbooks/plcbook.htm

Web, John W. dan Ronald A. Reis. 1995. Programmable Logic Controllers: Principles and

Gambar

Tabel 1 Truth Table
Gambar 3 Tampilan Program
Gambar 4 Diagram Alur LineList
Gambar 6 Diagram Alur Upper Control

Referensi

Dokumen terkait

Penelitian ini bertujuan untuk mendeskripsikan keterlaksanaan perkuliahan Fluida di kelas maupun di Laboratorium mengenai integrasi nilai-nilai Al-Islam melalui Model Pembela-

Menurut pendapat penulis, narasumber RAA dengan jawaban seperti diatas tergolong dalam jenis efek behavioral pada poin mengaktifkan / menggerakkan /

Masalah yang dikaji dalam penelitian Arifiani adalah apakah dengan menggunakan model kooperatif tipe group investigation dapat meningkatkan kemandirian belajar

Selanjutnya, teknik analisis data untuk menjawab tujuan penelitian kedua yaitu ‘Menjelaskan Tantangan Pengiriman Tenaga Kerja Indonesia ke Korea Selatan’,

Stimulus : Guru menampilkan teks atau video Narrative text Judul Cinderella dan melakukan curah pendapat untuk menggali pengalaman peserta didik yang berkaitan

Selain jika besarnya ganti rugi sudah ditentukan oleh para pihak, ha1 tersebut disebutkan di dalam Pasal 1249 KUH perdatalo' atau jika undang-undang secara

Pada pembakaran yang tidak sempurna ada bahan bakar (bensin) yang tidak terbakar, dimana bahan bakar yang tidak terbakar ini keluar dari ruang bakar dalam bentuk gas HC mentah dan

Dinamika pola alley cropping dipengaruhi oleh beberapa faktor yaitu perkembangan tegakan mahoni yang berpengaruh terhadap sistem berbagi sumberdaya (resource sharing