P.E.M.R.O.G.R.A.M.A.N.
P
|
rogram PLC biasanya
ditulis dalam aplikasi khusus pada komputer pribadi, lalu diunduh dengan kabel
koneksi langsung atau melalui jaringan ke PLC. Program ini disimpan dalam PLC
baik dalam RAM(33) yang didukung baterai atau
memori flash lain yang tidak mudah habis. Seringkali, satu PLC dapat diprogram
untuk menggantikan ribuan relay.
PLC mengawali masa
hingga pertengahan 1990-an, PLC diprogram menggunakan berbagai macam komputer panel atau terminal(34) yang dibuat khusus untuk itu,
yang sering kali memiliki tombol fungsi khusus yang mewakili berbagai elemen
logis dari program PLC. Beberapa terminal pemrograman menampilkan elemen-elemen
program PLC sebagai simbol grafik/diagram, tetapi representasi karakter ASCII(35)
menampilkan kontak, gulungan, dan kabel adalah hal yang biasa. Program disimpan
pada kartrid kaset tape(36). Fasilitas untuk mencetak dan dokumentasi sangat
minim karena kurangnya kapasitas memori. PLC tertua menggunakan (memory non-volatile
magnetic core memory) inti magnetik yang tidak mudah habis(37).
Baru-baru ini, PLC
diprogram menggunakan perangkat lunak aplikasi pada komputer pribadi, yang
sekarang mewakili logika dalam bentuk grafik dan bukan simbol karakter.
Komputer terhubung ke PLC melalui kabel USB, Ethernet, RS-232, RS-485, atau
RS-422. Perangkat lunak pemrograman memungkinkan entri dan pengeditan logika
dalam ladder. Dalam beberapa paket perangkat lunak, dimungkinkan juga untuk
melihat dan mengedit program dalam diagram blok fungsi, diagram alur urutan dan
teks terstruktur. Secara umum perangkat lunak menyediakan fungsi untuk
debugging dan pemecahan masalah perangkat lunak PLC, misalnya, dengan menyoroti
bagian-bagian dari logika untuk menunjukkan status saat ini selama operasi atau
melalui simulasi. Perangkat lunak akan mengunggah dan mengunduh program PLC,
untuk tujuan pencadangan dan pemulihan. Dalam beberapa model pengontrol yang
dapat diprogram, program ditransfer dari komputer pribadi ke PLC melalui papan
pemrograman yang menulis program ke dalam chip yang dapat dilepas seperti
EPROM.
| USB| RS-232
| RS-485
| RS-422
| Ethernet
Di bawah standar IEC 61131-3, PLC dapat diprogram menggunakan bahasa pemrograman berbasis standar. Bahasa pemrograman yang paling umum digunakan adalah Ladder Diagram (LD) juga dikenal sebagai Ladder logic. Menggunakan logika Contact-Coil untuk membuat program seperti diagram kontrol listrik. Notasi pemrograman grafis yang disebut Sequential Function Charts tersedia pada pengontrol terprogram tertentu. Sebuah model yang meniru perangkat panel kontrol elektromekanis (seperti kontak dan koil relay) yang diganti oleh PLC. Model ini tetap umum hingga saat ini.
IEC 61131-3 saat ini
mendefinisikan empat bahasa pemrograman untuk sistem kontrol yang dapat
diprogram: diagram blok fungsi (FBD), diagram tangga (LD), teks terstruktur
(ST; mirip dengan bahasa pemrograman Pascal), dan diagram fungsi sekuensial
(SFC). Daftar instruksi (IL; mirip dengan bahasa assembly) sudah tidak
digunakan lagi dalam edisi ketiga standar. Teknik-teknik ini menekankan
pengorganisasian operasi yang logis.
| LD = Ladder Diagram = Diagram Tangga
| FBD = Function Block Diagram
| ST = Structure Txt
| IL = Instruction List
| IEC = Internationa Electrotechnical Commision
Sementara konsep dasar pemrograman PLC adalah umum untuk semua produsen, perbedaan dalam pengalamatan I / O, organisasi memori, dan set instruksi berarti bahwa program PLC tidak pernah dapat dipertukarkan dengan sempurna antara pembuat yang berbeda. Bahkan dalam jajaran produk yang sama dari satu pabrikan, model yang berbeda mungkin tidak langsung kompatibel.
CONTOH PROGRAM KONTROL MENGGUNAKAN
LADDER DIAGRAM (DIAGRAM TANGGA)
Berikut Ini adalah
contoh pemrograman dalam diagram tangga yang menunjukkan sistem kontrol.
Diagram tangga adalah metode menggambar sirkuit kontrol yang diprogram kedalam
PLC. Diagram tangga menyerupai diagram skematik dari sistem yang dibangun
dengan relay elektromekanis.
Sebagai contoh, suatu fasilitas umum
memerlukan menyimpan air dalam tangki. Air diambil dari tangki oleh sistem
lain, sesuai kebutuhan dari contoh harus memperhatikan ketinggian air di dalam
tangki dengan mengendalikan katup yang mengisi ulang tangki. Yang ditunjukkan
adalah:
- Dua input (dari sakelar level rendah dan tinggi) diwakili oleh kontak sakelar pelampung.
- Output ke katup pengisian, diberi label sebagai katup pengisian yang dikontrolnya.
- Kontak "internal", mewakili sinyal output ke katup pengisian yang dibuat dalam program.
- Skema kontrol logis yang dibuat oleh interkoneksi item-item ini dalam perangkat lunak.
| Katup = Valve
| Saklar Pelampung = Float Switch | Perangkat Lunak = Software
Dalam diagram tangga,
simbol-simbol kontak mewakili keadaan bit dalam memori prosesor, yang sesuai
dengan keadaan input fisik ke sistem. Jika input diskrit diberi energi, bit
memori adalah 1, dan kontak "normal terbuka" yang dikendalikan oleh
bit itu akan meneruskan sinyal "benar" logika ke elemen tangga
berikutnya. Oleh karena itu, kontak dalam program PLC yang "membaca/Read"
atau melihat kontak sakelar fisik dalam hal ini harus "berlawanan/Opposite"
atau terbuka untuk mengembalikan TRUE untuk sakelar fisik tertutup. Bit status
internal, sesuai dengan keadaan output diskrit, juga tersedia untuk program.
| ON = "1" = NC = HIGH = TRUE| OFF = "0" = NO = LOW = FALSE
| NO = Normally Open = Biasanya Terbuka
| NC = Normally Close = Biasanya Tertutup
| LL = Low Level = Bagian terendah
| HL = High Level = Bagian tertinggi
| Perangkat Lunak = Software
Dalam contoh tersebut,
keadaan fisik kontak saklar pelampung harus dipertimbangkan ketika memilih simbol
"biasanya terbuka/NC" atau "biasanya tertutup/NO" dalam diagram
tangga. PLC memiliki dua input diskrit dari float switches (Level Rendah (LL) dan
Level Tinggi(HL)). Kedua float switch (biasanya tertutup) membuka kontak mereka ketika
level air dalam tangki berada di atas lokasi fisik switch.
Sebuah program lengkap
dapat berisi ribuan anak tangga / rung, dievaluasi secara berurutan. Biasanya
prosesor PLC akan secara bergantian memindai (scan) semua input dan memperbarui
output, kemudian mengevaluasi logika laddernya; perubahan input selama
pemindaian program tidak akan efektif hingga pembaruan I / O berikutnya.
Pemindaian(Scan) program yang lengkap mungkin hanya membutuhkan beberapa
milidetik, jauh lebih cepat daripada perubahan dalam proses yang dikendalikan.
Pemrograman kontroller
memiliki variasi dalam tujuanya diterakan masing-masing dalam "anak tangga/rung"
ladder diagram. Beberapa hanya mengizinkan bit output tunggal. Biasanya ada
batas jumlah kontak seri yang berjajar, dan jumlah cabang yang dapat digunakan.
Setiap elemen anak tangga dievaluasi secara berurutan. Jika elemen mengubah
keadaan mereka selama evaluasi anak tangga, kesalahan sulit didiagnosis dapat
dihasilkan, meskipun kadang-kadang (seperti di atas) teknik ini berguna.
Beberapa implementasi memaksa evaluasi dari kiri ke kanan seperti yang ditampilkan
dan tidak memungkinkan aliran balik sinyal logika (di anak tangga multi-cabang)
untuk mempengaruhi output.
F.U.N.G.S.I.O.N.A.L
F
|
ungsionalitas PLC telah
berkembang selama bertahun-tahun untuk menyertakan kontrol relai sekuensial,
kontrol gerak, kontrol proses, sistem kontrol terdistribusi, dan jaringan.
Penanganan data, penyimpanan, kekuatan pemrosesan, dan kemampuan komunikasi
dari beberapa PLC modern kira-kira setara dengan komputer desktop. Pemrograman
mirip PLC yang dikombinasikan dengan perangkat keras I / O jarak jauh,
memungkinkan komputer desktop untuk keperluan umum menggantikan dengan beberapa
PLC pada aplikasi tertentu. Pengontrol komputer desktop belum diterima secara
umum di industri berat karena komputer desktop berjalan pada sistem operasi
yang kurang stabil daripada PLC, dan karena perangkat keras komputer desktop
biasanya tidak dirancang untuk tingkat toleransi yang sama terhadap suhu,
kelembaban, getaran, dan umur panjang seperti prosesor yang digunakan dalam
PLC. Sistem operasi seperti Windows tidak cocok untuk eksekusi logika
deterministik, dengan hasil bahwa pengontrol mungkin tidak selalu menanggapi
perubahan status input dengan konsistensi dalam waktu yang diharapkan dari PLC.
Telah ditemukan aplikasi komputer untuk logika program digunakan dalam situasi
yang tertentu, seperti otomatisasi laboratorium dan digunakan di fasilitas
kecil di mana aplikasi tersebut tidak terlalu menuntut dan begitu penting.
FUNGSI DASAR
Fungsi paling dasar utama
dari pengontrol yang dapat diprogram adalah untuk meniru fungsi relay
elektro-mekanis. Input diskrit diberi alamat tertentu, dan instruksi PLC dapat
menguji apakah status input aktif atau nonaktif. Sama seperti serangkaian
kontak relai menjalankan fungsi logika AND, tidak membiarkan arus lewat kecuali
semua kontak ditutup, maka serangkaian instruksi "periksa jika ON"
akan memberi energi pada bit penyimpanan output jika semua bit input aktif.
Demikian pula, serangkaian instruksi paralel akan melakukan logika OR. Dalam
diagram kabel relai elektro-mekanis, sekelompok kontak yang mengendalikan satu
koil disebut "anak tangga/Rung" dari "ladder diagram", dan
konsep ini juga digunakan untuk menggambarkan logika PLC. Beberapa model PLC
membatasi jumlah seri dan instruksi paralel dalam satu "anak tangga"
logika. Output dari setiap anak tangga menetapkan atau membersihkan sedikit
penyimpanan, yang mungkin terkait dengan alamat keluaran fisik atau yang
mungkin merupakan "kumparan internal/internal coil" tanpa koneksi
fisik. Kumparan internal semacam itu dapat digunakan, misalnya, sebagai elemen
umum dalam beberapa anak tangga yang terpisah. Tidak seperti relay fisik,
biasanya tidak ada batasan berapa kali input, output atau kumparan internal
dapat dirujuk dalam program PLC.
Beberapa PLC menggunakan
urutan eksekusi dari kiri ke kanan, atas-ke-bawah yang ketat untuk mengevaluasi
logika anak tangga / ladder diagram. Ini berbeda dari kontak relai
elektro-mekanis, yang dalam sirkuit yang cukup kompleks dapat melewati
kiri-ke-kanan atau kanan-ke-kiri, tergantung pada konfigurasi kontak di
sekitarnya. Penghapusan "langkah kerja yang tidak sesuai" ini adalah
bug atau fitur, tergantung pada gaya pemrograman.
Instruksi yang lebih
maju dari PLC dapat diimplementasikan sebagai blok fungsional, yang melakukan
beberapa operasi ketika diaktifkan oleh input logika dan yang menghasilkan
output ke sinyal, misalnya, penyelesaian atau kesalahan, sementara memanipulasi
variabel secara internal yang mungkin tidak sesuai dengan logika diskrit.
PENGATUR WAKTU DAN PENGHITUNG
TIMER AND COUNTER
TIMER. Fungsi utama
pengatur waktu adalah untuk menjaga agar output tetap hidup selama jangka waktu
tertentu. Salah satu contoh adalah lampu garasi, di mana Anda ingin listrik
terputus setelah 2 menit sehingga memberi seseorang waktu untuk pergi ke rumah.
Tiga jenis timer yang biasa digunakan adalah Delay-OFF, Delay-ON, dan
Delay-ON-Retensive. Timer Tunda-OFF aktif segera ketika dihidupkan, menghitung
mundur dari waktu yang diprogram sebelum terputus, dan dihapus ketika input
yang mengaktifkan dimatikan. Pengatur waktu Tunda AKTIF diaktifkan oleh input dan
mulai mengumpulkan waktu, menghitung hingga waktu yang diprogram sebelum
memotong, dan dihapus ketika input yang diaktifkan dimatikan. Timer
Delay-ON-Retensive diaktifkan oleh input dan mulai mengumpulkan waktu,
mempertahankan nilai yang terakumulasi bahkan jika (tangga logika) berbunyi
salah, dan dapat diatur ulang hanya oleh kontak RESET.
COUNTER. Penghitung
terutama digunakan untuk menghitung item seperti kaleng masuk ke kotak pada
jalur perakitan. Ini penting karena begitu sesuatu terisi dengan maksimal, item
tersebut perlu dipindahkan sehingga sesuatu yang lain dapat diisi. Banyak
perusahaan menggunakan penghitung di PLC untuk menghitung kotak, menghitung
berapa kaki dari sesuatu yang tertutup, atau untuk menghitung berapa banyak
palet yang ada di truk. Ada tiga jenis penghitung, penghitung Atas, penghitung
Down, dan penghitung Up / Down. Penghitung naik menghitung hingga nilai preset,
nyalakan CTU (output CounT Up) ketika nilai preset tercapai, dan dihapus
setelah menerima reset. Penghitung mundur menghitung mundur dari nilai
prasetel, menyalakan CTD (output TurunT Down) ketika 0 tercapai, dan dihapus
setelah reset. Penghitung Naik / Turun menghitung pada CU, menghitung mundur
pada CD, nyalakan CTUD (output Naik / Turun) ketika nilai preset tercapai, dan
dihapus saat diatur ulang.
No comments:
Post a Comment