PLC Advanced

64
Catatan bebas mengenai : PLC ADVANCED By : Budic Utom Jika anda suka dengan catatan bebas versi NISG ini jangan lupa kunjungi kami di : http://nisguru.blogspot.com

Transcript of PLC Advanced

Page 1: PLC Advanced

Catatan bebas mengenai :

PLC ADVANCED

By : Budic Utom

Jika anda suka dengan catatan bebas versi NISG ini jangan lupa kunjungi kami di :

http://nisguru.blogspot.com

Page 2: PLC Advanced

Pemrograman Diskrit Lanjut

1. Timer

Sebagaimana telah kita pelajari pada paket sebelumnya bahwa timer merupakan sebuah instruksi yang menunggu dalam waktu tertentu untuk melakukan sesuatu. Dan timer dapat dimanfaatkan untuk berbagai keperluan, untuk tipe timer diproduksi oleh pabrik disesuaikan dengan metoda dan cara mereka masing-masing.

a. ON-Delay Timer

Untuk timer On-Delay sudah dibahas pada paket sebelumnya berikut contoh-contoh aplikasinya, yang cara kerjanya sangat sederhana yaitu setelah sensor melalui input berkondisi ON, maka tidak langsung memberikan reaksi ON pada output karena harus menunggu selama waktu yang telah ditentukan ( misal x detik). Untuk ini dapat kita gambarkan diagram pulsanya dengan terlebih dahulu kita lihat perilaku timer berdasar ladder diagram berikut:

Gambar 1. Ladder diagram Timer ON-delay

Adapun cara kerja rangkaian pada ladder adalah kita menunggu input 0001 berkondisi ON, bila dicapai maka timer T000 (100 ms) mulai berdetak dan akan berdetak sebanyak 100 kali. Setiap detak penambahan waktu adalah 100 ms sehingga timer akan bekerja selama 10000 ms atau sama dengan 10 detik. Setelah 10 detik tercapai maka kontak T000 akan tertutup yang berarti pada kondisi ON sehingga ouput 0500 berkondisi ON. Dan bilamana input 0001 kembali berkondisi False atau OFF maka timer T000 akan tereset kembali ke 0, oleh karena itu kontak T000 kembali OFF dan membuat output 0500 pun kembali OFF.

Input 0001 OFF Input 0001 ON Input 0001 OFF

Output 0500 OFF Output 0500 ON Output 0500 OFF

ON-Delay 10s

Gambar 2. Diagram pulsa ON-delay Timer

Page 3: PLC Advanced

Dari diagram pada gambar 2 terlihat bahwa pada saat input 0001 berkondisi OFF output 0500 juga berkondisi OFF karena kondisi ON atau OFF dari output ini dikendalikan oleh Timer melalui kontak T000, sedangkan kontak T000 ini pada awalnya berkondisi OFF dan akan ON bilamana Timer sudah berdetak selama 10 detik dengan demikian output 0500 akan berkondisi ON pula. Dan bila kita lihan pada saat input berubah dari kondisi ON menjadi OFF maka bersama itu pula T000 berubah menjadi berkondisi OFF dan tidak harus ada delay dengan itu pula maka output 0500 akan berkondisi OFF.

b. Off-Delay Timer

Timer ini kebalikan dari timer diatas, setelah sensor melalui input berkondisi ON, maka tidak langsung memberikan reaksi OFF pada output karena harus menunggu selama waktu yang telah ditentukan ( misal x detik).

Pada timer Off-Delay secara rangkaian ladder tidak ada perbedaan dengan timer ON –Delay akan tetapi perilaku pulsa yang berbeda, pada kondisi normal output timer berkondisi ON dan akan berkondisi OFF bilamana selang beberapa saat (misal x detik) setelah input dari kondisi ON menjadi kondisi OFF. Timer yang demikian sering disebut dengan TOF (timer off-delay), untuk ini dapat kita gambarkan diagram pulsanya dengan terlebih dahulu kita lihat perilaku timer berdasar ladder diagram berikut:

Gambar 3. Ladder diagram Timer OFF-delay

Adapun cara kerja rangkaian pada ladder adalah kita menunggu input 0001 berubah dari kondisi ON menjadi berkondisi OFF, bila dicapai maka timer T000 (100 ms) mulai berdetak dan akan berdetak sebanyak 100 kali. Setiap detak penambahan waktu adalah 100 ms sehingga timer akan bekerja selama 10000 ms atau sama dengan 10 detik. Setelah 10 detik tercapai maka kontak T000 akan terbuka yang berarti pada kondisi OFF sehingga ouput 0500 berkondisi OFF. Dan bilamana input 0001 kembali berkondisi True atau ON maka timer T000 akan tereset kembali ke 0, oleh karena itu kontak T000 kembali ON dan membuat output 0500 pun kembali ON.

Page 4: PLC Advanced

Input 0001 OFF Input 0001 ON Input 0001 OFF Input 0001 ON

Output 0500 Output 0500 ON OFF Output 0500 OFF Output 0500 ON

OFF-Delay 10s

Gambar 4. Diagram pulsa ON-delay Timer

Dari diagram pada gambar 4 terlihat bahwa pada saat input 0001 berkondisi dari OFF menjadi ON pada output 0500 tidak terjadi perubahan yaitu tetap berkondisi ON, kemudian pada saat input berubah kondisi dari ON ke kondisi OFF Timer mulai aktif mulai berdetak setelah Timer sudah berdetak selama 10 detik T000 berubah dari kondisi ON menjadi OFF oleh karena output ini dikendalikan oleh Timer melalui kontak T000 maka output 0500 berubah kondisi dari ON menjadi OFF. Ketika input 0001 berubah kembali dari kondisi OFF ke kondisi ON maka seketika itu pula output berubah dari kondisi OFF menjadi berkondisi ON.

Dalam mengaplikasikan Timer baik ON delay maupun OFF delay program biasanya menampilkan akumulasi waktu sehingga kita dapat melihat nilai detak yang dicapai oleh timer, timer dapat berdetak mulai 0 sampai 9999 kali atau 0 sampai 65535 kali. Kebanyakan PLC memiliki timer 16 bit, dimana 0-9999 adalah 16 bit BCD (binary coded decimal) dan 0-65535 adalah 16 bit biner. Setiap detak adalah memakan waktu x detik.

Setiap produk memiliki lama detak yang berbeda yaitu antara 10 dan 100 ms kenaikan, "ms" artinya milli-detik (second) atau 1/1000 detik. Beberapa produk menggunakan 1 ms atau 1 detik untuk setiap kenaikan.

Bila dikehendaki kita dapat juga membangun OFF delay timer dari ON delay timer, yaitu dengan menambahkan sebuah coil output. Adapun rangkaian dapat dilihat pada gambar berikut:

Gambar 5. Ladder OFF delay dibangun dari ON delay timer

Cara kerja ladder pada gambar 5 diawali dari kondisi input 0001 OFF maka output 0500 juga dalam kondisi OFF, saat input 0001 beralih pada kondisi ON pada output 0500 juga beralih berkondisi ON sehingga kontak 0500 berkondisi ON dan pada saat bersamaan juga input NOT 0001 berkondisi OFF yang berarti timer belumbekerja. Dengan berubahnya kondisi input 0001 kembali pada kondisi OFF maka input NOT 0001 berkondisi ON, sehingga timer mulai berdetak setelah 15 detik timer berkondisi ON akibatnya kontak NOT timer T000 berkondisi OFF. Dengan kondisi OFF pada kontak NOT timer T000 maka output 0500 berkondisi OFF, kalau kita gambarkan dalam bentuk diagram waktu diperoleh gambar sebagai berikut:

Page 5: PLC Advanced

Input 0001 OFF Input 0001 ON Input 0001 OFF Input 0001 ON

Output 0500 OFF Output 0500 ON Output 0500 OFF Output 0500 ON

OFF-Delay 15s 15s

Gambar 6. Diagram waktu OFF delay timer

c. ON-OFF Delay Timer

Disamping kedua tipe timer diatas ada juga PLC yang dilengkapi dengan gabungan dari kedua timer tersebut yang dikenal dengan ON-OFF Delay Timer. Prinsip kerja tunda ON-OFF ini diawali dengan adanya sinyal input ON maka output timer akan tertunda selama waktu yang telah ditentukan, dan saat input berupa kondisi dari On ke OFF maka kondisi output akan berubah menjadi OFF setelah selang waktu yang telah ditentukan pula. Disini terdapat dua delay waktu yaitu pada saat pertama input ON dan pada saat input berubah jadi OFF, untuk lebih jelasnya kita dapat lihat pada siklus diagram berikut misal ON delay 7 detik dan OFF delay 5 detik.

Input 0001 OFF Input 0001 ON Input 0001 OFF Input 0001 ON

Output 0500 OFF Output 0500 ON Output 0500 OFF Output 0500 ON

OFF-Delay 7s 5s

a. Diagram pulsa ON-OFF delay Timer

Berikut merupakan contoh ladder untuk ON/OFF delay Timer, dimana saat input 0001 berkondisi true T0001 mulai menghitung dan saat bersamaan relay 0501 juga ON. Setelah 10 s saklar T000 berkondisi true maka output 0500 ON saat ini T001 belum bekerja. Kemudian saat 0001 dilepas artinya false maka T000 pada kondisi OFF, saat ini T001 mulai bekerja karena 0501 ON dan NOT T001 juga ON serta NOT 0001 ON. Setelah beberapa saat yaitu 10 s maka T001 ON dengan demikian NOT T001 akan OFF dan relai 0501 OFF akibatnya output yang dipasang pada relai 0500 akan OFF.

Dengan demikian baik waktu ON atau OFF terjadi delay pada output, lihat diagram pulsa.

b. Ladder diagram ON/OFF Delay Timer

Gambar 7. ON/OFF Delay Timer

Page 6: PLC Advanced

d. Retentive atau Accumulating timer

Retentive atau Accumulating timer memerlukan 2 input, yaitu satu input untuk start dan satu lagi untuk reset. Bila input timer ON maka timer mulai berdetak dan setelah timer mencapai nilai yang telah ditentukan akan mengaktifkan kontaknya ON, untuk meresetnya kita berikan ON pada input reset sehingga nilai kembali pada nilai awal dan kontak dari timer kembali pada kondisi OFF. Timer akan mempertahankan nilai detak bilamana input timer di OFF kan dan bila input timer di ON kan lagi akan melanjutkan detak, pada saat itu nilai tersebut akan dilanjutkan sampai selesai sesuai yang diminta dan untuk meresetnya adalah melalui input reset. Sebagai contoh ladder diagram berikut merupakan rangkaian timer dengan nama T000, ketika input 000 berkondisi ON maka timer mulai berdetak dan ketika detaknya mecapai 100 kali (sebagai nilai yang ditentukan), maka akan menyebabkan kontaknya berkondisi ON yang berarti T000 berkondisi ON sehingga output 0500 juga ON. Selama hitungan timer selesai maka kontak T000 akan tetap dipertahankan ON dan akan berubah kondisi OFF bila input 0001 diberi kondisi ON (reset).

Gambar 8. Penggunaaan rentetive timer pada ladder diagram.

Hal yang penting untuk diperhatikan adalah:

Antara penghitung dan timer tidak boleh memiliki alamat yang sama, karena keduanya menggunakan alamat register dalam PLC yang sama.

Perlu diingat simbol mungkin kelihatan berbeda antara satu PLC dengan PLC lain namun operasinya adalah sama, kemungkinan beda adalah lama waktu detak kenaikannya.

Page 7: PLC Advanced

e. Self Reseting Timer

Dengan menambahkan sebuah kontak close dalam timer itu sendiri dapat dibangun satu self reseting timer, yang dimaksud dengan self reseting adalah output dari timer akan berkondisi ON (high) hanya untuk satu kali scan (lihat pada diagram waktu). Misalkan timer diberikan nilai 150 yang berarti timer akan berdetak selama 15 detik dan output timer akan ON, kondisi ini dipertahankan hanya dalam satu scan kemudian timer akan mereset dirinya sendiri. Apabila input 0002 dipertahankan ON maka output akan merupakan sumber pulsa, agar lebih jelas dapat dilihat gambar ladder yang ditunjukan pada gambar 9 dan diagram waktu pada gambar 10 berikut.

a. Self reseting timer b. Perpanjang waktu saat output ON

Gambar 9. Penggunaaan Self Reseting timer pada ladder diagram.

Input 0002 OFF Input 0002 OFF Input 0002 ON Input 0002 OFF In02 ON

Output 0500 OFF Output 0500 OFF Output 0500 OFF

OFF-Delay 15s 15s 15s 15s

Gambar 10. Diagram pulsa Self Reseting Timer

Dari diagram pada gambar 10 terlihat bahwa pada saat setelah selang waktu 15 detik input 0002 berkondisi dari OFF menjadi ON terjadi perubahan pada output 0500 yaitu berkondisi ON dan posisi ini dipertahankan sampai waktu sangat singkat (1 scan) kemudian berubah kondisi dari ON ke kondisi OFF yang diakibatkan oleh adanya self reseting pada timer. Bila pada input 0002 dipertahan selama waktu tertentu maka ouput 0500 akan mengeluarkan pulsa dengan periode pulsa T=15 detik + 1 scan.

Agar generator pulsa dengan T=20 detik yaitu 10 detik OFF dan 10 detik ON, maka kita dapat menambahan sebuah timer lagi seperti pada gambar 9 b. Saat T000 kerja output 0500 OFF dan setelah 10 detik berubah ON, T001 mulai kerja setelah 10 detik output 0500 kembali OFF. Demikian terjadi berulang-ulang selama input 0002 ditekan atau ON.

1 Scan

Page 8: PLC Advanced

2. Reversible Counters

Penghitung merupakan komponen instruksi dalam PLC yang berfungsi ntuk melaksanakan hitungan, pada umumnya terdapat penghitung naik yaitu menghitung mulai 1, 2, 3 ……..dst disebut dengan CTU (count up) CNT,C , atau CTR. Dan juga penghitung turun yang menghitung turun 9, 8, 7,…….dst. disebut CTD (count down) serta penghitung naik/turun disebut UDC(up-down counter). (lihat pada materi PLC sebelumnya). Berikut kita bahas lebih dalam tentang penghitung turun (reversible counter).

Sebagaimana kita ketahui bahwa penghitung umumnya menghitung dari nol sampai nilai hitungan yang telah ditetapkan sebelumnya, sedangkan kebalikan dari penghitung tersebut (reverse) adalah menghitung dari nilai hitungan yang telah ditetapkan sampai nol dan bila sudah sampai nol maka penghitung (counter) akan memulai hitungan kembali dari nilai yang telah ditetapkan tadi sampai nol.

100 100 100

99 99 99

98 98 98

2 2 2

1 1 1

0 0 0

Gambar 11. Pola alur penghitung reverse.

Contoh berikut menggunakan PLC dari Siemens Step 7 dan gambar ladder menunjukan penghitung reverse, dimana hitungan ditentukan sebanyak 30. Dengan memberikan pulsa pada Input I0.1 maka CTUD akan mulai menghitung dari 30 sampai 0, bila 0 sudah tercapai kontak C48 akan ON dengan demikian CTUD direset sehingga hitungan akan diawali lagi mulai 30 sampai 0 dst.

Page 9: PLC Advanced

Gambar 12. Contoh ladder penghitung reverse.

Dari gambar diatas hal yang penting harus diperhatikan adalah:

Darimana datangnya pulsa yang ingin kita hitung, biasanya berasal dari satu input atau sensor yang dihubungkan misal pada input I0.0

Batas atau jumlah pulsa yang ingin dihitung sebelum kita mereaksinya, dalam ladder ditentukan 30.

Kapan dan bagaimana kita akan mereset penghitung sehingga dapat memulai menghitung kembali, misal setelah selesai hitungan pulsa ke 30 maka penghitung direset.

Aplikasi counter yang lain adalah untuk penundaan pulsa yang dilakukan melaluipenentuan awal jumlah sklus scan pada PLC, berikut merupakan contoh ladder diagram dari penunda pulsa dengan menggunakan counter:

Gambar 13. Aplikasi Counter sebagai penunda pulsa

Page 10: PLC Advanced

Rangkaian CR0 membangun sistem generator pulsa yang memberikan pulsa pada counter CTR melalui kontak CR0 yang dijalin AND dengan kontak relay CR1, sedangkan CR1 akan ON dan OFF dikendalikan input I0.0 untuk output dikendalikan oleh CR2 yang kondisi ON serta OFFnya tergantung pada output CTR.

3. Timer Kaskada

Adakalanya kita menginginkan rangkaian kaskada dari dua atau lebih timer untuk melakukan serangkaian kerja yang berurutan, jadi setelah dibacanya input oleh PLC dan ternyata input ON maka TMR1 mulai berdetak sampai batas waktu yang diinginkan. Kemudian kontak TMR1 akan ON oleh karena dirangkai untuk mengendalikan TMR2, maka TMR2 mulai berdetak sampai batas waktu yang diinginkan kemudian kontak TMR2 akan ON sehingga output juga dalam kondisi ON sekaligus memutuskan kontak NOT TMR2 sehingga TMR1 OFF. Bila input selalu diberikan kondisi ON maka output akan merupakan pembangkit generator pulsa.

Gambar 14. Ladder diagram Kaskada Timer sebagai pembangkit pulsa.

Sedangkan diagram waktu dari rangkaian kaskada merupakan generator pulsa yang dikendalikan oleh I0.0, jadi selama I0.0 pada kondisi ON maka selama itu pula output rangkaian O0.1 mengeluarkan pulsa dengan perioda 5s + 5s = 10 s.

Input I0.0 OFF Input I0.0 ON Input I0.0 OFF

TMR1

Waktu 5s 5s 5s 5s 5s 5s

TMR2

Waktu 5s 5s 5s 5s 5s

Output 0500 OFF

Gambar 15. Diagram waktu kaskada timer.

Page 11: PLC Advanced

Ladder diatas merupakan salah satu contoh aplikasi timer yang dihubungkan secara kaskada, rangkaian timer secara kaskada adalah tergantung dari kebutuhan serta fungsi yang diinginkan bisa terdiri dari 3 buah timer, 4 buah timer atau lebih.

4. Kombinasi Timer dengan Penghitung (Counter) Kaskada

Salah satu aplikasi rangkaian kaskada counter adalah membentuk rangkaian sistem jam sehari-hari, dimana untuk clock dibangun dari sebuah timer yang fungsinya memanfaatkan Close (NOT) kontak output timer. Untuk ini timer diset dengan lama waktu 1 menit atau nilai detaknya 600 dan sebagai real time clock.

Sedangkan kontak open timer digunakan untuk mengendalikan penghitung (counter), sehingga setiap timer selesai berdetak 600 maka akan memberikan 1 pulsa pada counter CNT 2. Dengan adanya pulsa terus menerus pada CNT 2 dengan periode 1 menit, CNT 2 akan menghitung terus sampai 60 kali dan setiap selesai hitungan 60 akan membuat kontan CNT 2 ON yang akan memberikan reset pada counter CNT 2 sekaligus memberikan 1 pulsa pada counter CNT 3.

Oleh karena counter CNT 3 diset dengan nilai 24 maka hitungan dimulai dari 0 dan diakhiri dengan 24, setelah tercapai nilai 24 kontak CNT 3 akan ON akibatnya counter CNT 3 melakukan self reseting untuk kembali lagi pada kondisi awal. Demikian rangkaian ini bekerja secara terus menerus selama input I0.0 berkondisi ON.

Gambar 16. Ladder kombinasi timer dan kaskada counter

Rangkaian ini terdapat tiga aplikasi secara bersamaan, yaitu dapat diambil dari output TMR1 yang merupakan sumber pulsa (pulse generator) output kedua dapat diambil dari output CNT2 dimana juga merupakan pulsa dan yang terakhir adalah diambil dari output CNT3. Bila kita ambil dari CNT3 maka pulsa akan diberikan setiap 24 jam, sedangkan pada output CNT2 akan diberikan pulsa setiap 1 jam dan terakhir pada output TMR1 akan diberikan pulsa setiap 1 menit.

Aplikasi lain yang penting adalah kombinasi dari timer dan counter yang membentuk rangkaian pengali pulsa, prinsip kerja rangkaian diawali kondisi ON pada I0.0 akan membuat Y berkondisi ON hal ini akan membuat CR1 ON sehingga CR1 akan terkunci

Page 12: PLC Advanced

selalu ON sampai kondisi OFF pada NOT CR3. Oleh karena timer T000 diaktifkan oleh CR1 maka timer T000 mulai berdetak selama 10 detik dan membuat CR2 ON, dengan demikian timer T000 direset melalui NOT CR2, output Q0.0 menjadi ON dan Counter CTR bertambah 1 hitungan karena adanya pulsa dari CR2. Jika hitungan CTR 100 sudah tercapai maka CR3 menjadi ON akibatnya counter CTR direset dan CR1 menjadi OFF. Proses diatas akan terulang lagi selagi input I0.0 pada kondisi ON sedangkan untuk meresetnya kita berikan kondisi ON pada input I0.1.

5. Aplikasi Counter/Timer Sebagai Pulsa Stretcher

Sebuah counter dapat dimanfaatkan sebagai pulsa strecher, yaitu digunakan untuk memperpanjang durasi pulsa input yang dikenakan padanya melalui sejumlah siklus scan, adapun rangkaian ladder dipresentasikan pada gambar berikut:

Gambar 17. Pulsa strecher menggunakan Counter

Q0.0 merupakan pulsa yang akan digunakan sebagai input strecher sedangkan hasil berupa pulsa yang dikeluarkan oleh output Q0.1. Durasi strecher ditentukan oleh besar dan kecilnya CNT sebagai contoh pada gambar diset 50 siklus scan.

Disamping counter Timer juga dapat digunakan sebagai pulsa strecher, sedangkan fungsi dan cara kerjanya adalah mirip. Kalau pada counter diset berdasarkan hitungan siklus scan, sedangkan Timer diset berdasarkan perioda waktu, dan rangkaiannya dapat dilihat pada gambar berikut:

Page 13: PLC Advanced

Gambar 18. Aplikasi Timer pada pulsa strecher

6. Aplikasi Counter Sebagai Pulsa Divider

Program ini akan membagi pulsa menjadi pulsa tertentu yang besarnya tergantung dari nilai pembagi yang diset melalui counter, input pulsa I0.0 akan memberikan kenaikan hitungan pada counter dan bila counter sudah mencapai pada nilai 8 secara otomatis akan mereset counter dengan demikian maka hasil pulsa pada output merupakan hasil pembagian pulsa input dengan 8. Adapun ladder diagramnya dapat dilihat pada gambar berikut:

Gambar 19. Aplikasi Counter sebagai Pulsa divider

7. Bit Register Geser

Dalam teknik digital telah kita pelajari register geser baik geser kiri maupun geser kanan, demikian juga di PLC juga dikenal instruksi dan fungsi register. Secara umum terdapat dua macam register yaitu LIFO (Last In First Out) dan FIFO (First In First Out).

Page 14: PLC Advanced

a. FIFO register

Gambar berikut merepresentasikan fungsi dan kerja sebuah register FIFO, disini data input merupakan word yaitu 16 bit setelah dimasukan dalam register terlihat data seperti pada gambar 20a dan dengan diberikannya clock satu pulsa data bergeser sehingga posisinya seperti pada gambar 20b. Bit pertama data pada saat dimasukan ke register menduduki posisi akhir bit pada register siap dikeluarkan pada clock pulsa pertama, sehingga saat diberikan clock pulsa untuk geser bit maka bit pertama tersebut akan dikeluarkan paling awal.

Data input

1 0 0 1 1 0 0 1 0 1 1 1 0 1 0 1

a. Isi register setelah data diisikan ke dalam register

Geser data (Clock)

0 1 0 0 1 1 0 0 1 0 1 1 1 0 1 0

b. Isi register setelah diberikan clock 1 pulsa

Gambar 20. Proses geser data dalam register

Dalam PLC terdapat dua metode untuk FIFO register yaitu register geser asinkron dan instruksi word to file, untuk melihat perbedaan keduanya lihat pada gambar berikut:

Register geser asinkron Move Word ke File

Input (Word) File / Stack Input (Word) File

a. 0 0 1 1 0 0 0 0 0 0 1 1 0 0 1 10 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 1 1 0 0 0 0

b. 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 10 0 0 0 0 0 1 10 1 0 1 0 0 0 00 0 1 1 0 0 0 0

c. 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 01 0 1 0 0 1 0 10 1 0 1 0 0 1 10 0 1 1 0 0 0 0

Gambar 21. Proses dalam Register FIFO

b. LIFO Register

Pada register ini data input dibalik sehingga data input pertama dimasukan akan menjadi data output yang pertama, keuntungan yang diperoleh pada LIFO register adalah informasi dapat dimasukan langsung pada stack tanpa mengganggu informasi yang sudah diisikan. Berikut merupakan contoh proses dalam LIFO untuk 1 byate (8 bit):

Input data pertama Stack sebelum input pertama

Page 15: PLC Advanced

0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

Input data pertama Stack setelah input pertama

1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

Stack setelah input data kedua Output Data kedua

1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0

0 1 0 1 0 1 0 1

0 0 0 0 0 0 0 0 Stack setelah input data kedua

0 0 0 0 0 0 0 0

0 1 0 1 0 1 0 1

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 Stack setelah output data kedua

0 0 0 0 0 0 0 0

Gambar 22. Proses dalam register LIFO

PLC Mitsubishi menerapkan sistem register geser dengan memanfaatkan auxilary relay (M) sebagai register geser, pada kondisi ini diterapkan 16 relay digunakan dalam satu kelompok dan nomor alamat (M) dimanfaatkan sebagai nomor register geser. Dengan demikian auxiliary relay tidak digunakan untuk keperluan lainnya.

Page 16: PLC Advanced

Berikut merupakan contoh register geser menggunakan alamat M300 ~ M317:

Gambar 23. Ladder diagram untuk register geser

Operasi dari register geser tersebut adalah sebagai berikut:

Kondisi ON dan OFF dari M300 ditentukan oleh X400, untuk itu fungsi sama dengan gambar ladder berikut:

Jadi bila X400 ON maka M300 akan berlogika 1 saat X401 berubah dari OFF ke ON, dan isi M300 sebelumnya akan digeser ke M301. Bila berikutnya X400 berkondisi OFF dan X401 berubah dari OFF ke ON maka M300 akan berlogika 0 sedangkan M301 akan berlogika 1 karena M300 sebelumnya sudah berlogika 1. Begitu pula pada bit yang lain dari register akan digeser bilamana saat X401 berubah dari OFF ke ON

Ketika X402 yang berfungsi sebagai saluran reset berkondisi ON maka kondisi M300 ~ M317 direset menjadi logika 0.

Bila X401 berubah dari kondisi OFF ke ON, maka data pada setiap alamat register digeser yaitu isi M300 berpindah ke M301, M301 berpindah ke M302 dst. dan bit terakhir M317 akan menjadi over flow.

Page 17: PLC Advanced

Contoh aplikasi:

Sebuah mesin pengisi botol minuman memiliki 4 langkah proses, pada awalnya sensor menyensor botol dalam keadaan baik (Input 000 berkondisi ON). Karena botol baik berarti siap diisi dengan adanya clock maka bit register dengan alamat 1000 disi dengan logika 1, pada clock berikutnya isi register digeser sehingga bit register alamat 1001 terisi dengan bit register alamat 1000 dengan demikian output 500 dibuat ON dan botol diisi dengan minuman.

Clock berikutnya register digeser kembali sehingga tutup botol dipasangkan yaitu dengan membuat ON output 501 melalui bit register beralamat 1002. Clock berikutnya akan menggeser register sehingga bit register dengan alamat 1003 menjadi ON dan mengaktifkan pemeberian label pada botol melalui output 0502.

Pada system ini saat terdeteksi botol tidak sesuai atau rusak, maka tercatat pada bit register beralamat 1000 dengan logika 0, sehingga clock pada register akan menggeser logika 0. Dengan demikian tidak ada aktivitas pengisian botol, pemasangan tutup ataupun pemberian label pada botol.

Gambar 24. Ladder diagram aplikasi shift register

Page 18: PLC Advanced

c. Kaskada Register

Bila diinginkan kita juga dapat membangun suatu rangkaian kaskada register geser, dalam contoh berikut satu kelompok register beralamat M100 ~ M117 dan M120 ~ M137. Disini input data pertama diumpankan pada M100 dan output M117 diumpankan pada M120, sedangkan untuk pulsa geser dilakukan melalui X400 serta reset dilakukan melalui X401.

gambar 25. Ladder kaskada register.

8. Kendali Master (Master Control)

MC atau dikenal dengan Master Control merupakan instruksi yang dirangkai secara serial kontak, sedangkan pasangan dari MC sebagai penutup rangkaian instruksi adalah MCR atau dikenal dengan Master Control Reset.

MC dan MCR merupakan pasangan instruksi yang membentuk satu blok instruksi, bila MC berkondisi ON instruksi yang terdapat dalam blok dilaksanakan dan blok diakhiri pada instruksi MCR. Dan jika MC berkondisi OFF maka instruksi yang terdapat dalam blok MC-MCR tidak dilaksanakan.

Sebagai gambaran kita lihat ladder diagram berikut dimana rangkaian program merupakan program yang terus menerus dilakukan sampai adanya kesalahan baru berhenti, sedangkan disisi lain kita hanya memerlukan menjalankan sebagian program dengan persyaratan tertentu sehingga bila digunakan program terus menerus bagian yang seharusnya hanya dijalankan bila syarat terpenuhi akan tetap dijalankan bersama instruksi lainnya.

Page 19: PLC Advanced

Gambar 26. Ladder diagram program bagian (seharusnya dijalankan bila syarat terpenuhi)

Seperti yang digambarkan pada ladder diagram progres akan dilakukan mulai dari M0000 membuat kondisi P0001 diteruskan M0001 AND M0002 untuk membuat kondisi P0002 dan P0003 melalui NC M0003 serta dilanjutkan membuat kondisi P0004 melalui M0004 AND M0005, sehingga merupakan rangkaian output berkelanjutan dan akan berhenti sampai diperoleh kesalahan dan sekuensial program.

Sedangkan ladder berikut merupakan rangkaian dengan multiple output termasuk sederetan kontak setelah percabangan:

Gambar 27. Ladder diagram dengan banyak percabangan.

Rangkaian dalam ladder ini dianjurkan untuk dihindari karena terlalu banyak instruksi yang digunakan dan banyaknya percabangan, dan sebagai pengganti dari kedua rangkaian di atas adalah dengan memanfaatkan instruksi master kontrol. Pada instruksi master kontrol terdapat dua instruksi seperti yang dijelaskan pada awal bahasan instruksi ini yaitu Master control dan Master control reset (MCS and MCSCLR).

Page 20: PLC Advanced

Dengan menggunakan Master control dan Master control reset akan terbentuk blok program kecil atau sub routine yang akan dijalankan apabila MCS berkondisi ON, sedangkan instruksi di bawah MCSCLR dijalankan terus walupun kondisi MCS ON atau OFF. Secara ladder diagram berikut merupakan contoh aplikasi dari Master control dan Master control reset dalam suatu program.

Gambar 28. Aplikasi Master control

Page 21: PLC Advanced

9. Instruksi One Shot

Seperti yang telah kita pelajari secara umum instruksi one-shot adalah sebuah alat pemrograman (programming tool), yang digunakan untuk membuat suatu program dengan hanya satu kali scan. Instruksi ini dikenal dengan nama DIFU atau DIFD (differentiate up/down), sotu/sotd (single output up/down), osr (one-shot rising) walaupun demikian ouput yang diperoleh tetap sama.

One shot digunakan hanya untuk memberikan satu pulsa pada saat power on atau setelah dipilihnya sebuah input untuk dikondisikan ON, oleh karena itu one shot dapat digunakan untuk mereset semua counter, timer, register geser. Pulsa yang dihasilkan one shot adalah satu panjang waktu scan, gambar berikut merupakan sinyal one shot yang biasanya digunakan untuk mereset counter, timer dsb. Bila pada saat pulsa naik input triger yaitu dari Low ke High pada one shot menyebabkan output menjadi ON dan kembali pada kondisi OFF selama waktu satu scan, maka pada PLC dikenal dengan DIFU dan bila pada saat pulsa turun input triger yaitu dari High ke Low pada one shot menyebabkan output menjadi ON dan kembali pada kondisi OFF selama waktu satu scan disebut dengan DIFD.

Gambar 29. Timing diagram untuk DIFU

Gambar 30. Timing diagram untuk DIFU

Page 22: PLC Advanced

Gambar 31. Instruksi one shot DIFD yang dibangun dari timer

Ladder diatas merupakan rangkaian one shot DIFD yaitu output akan memberikan satu pulsa dengan panjang waktu satu scan bilamana input berubah kondisi dari High ke Low, adapun cara kerja rangkaian sebagai berikut:

Ketika P0000 berkondisi High maka P0011 berkondisi OFF dan timer T095 juga dalam kondisi OFF, begitu P0000 berubah kondisi dari High ke Low maka rung satu berkondisi High sehingga P0011 ON bersamaan itu pula T095 mulai bekerja dan begitu 1scan berikutnya dilakukan yaitu rung kedua maka akan mereset kondisi P0011 dengan demikian akan terjadi satu pulsa pada P0011 yang diawali saat input berubah kondisi dari High ke Low.

Gambar 32. Instruksi one shot DIFU yang dibangun dari timer

Hampir sama dengan rangkaian DIFD, ladder diatas merupakan rangkaian one shot DIFU yaitu output akan memberikan satu pulsa dengan panjang waktu satu scan bilamana input berubah kondisi dari Low ke High, adapun cara kerja rangkaian sebagai berikut:

Page 23: PLC Advanced

Ketika P0000 berkondisi Low maka P0011 berkondisi OFF dan timer T095 juga dalam kondisi OFF, begitu P0000 berubah kondisi dari Low ke High maka rung satu berkondisi High sehingga P0011 ON bersamaan itu pula T095 mulai bekerja dan begitu 1scan berikutnya dilakukan yaitu rung kedua maka akan mereset kondisi P0011 dengan demikian akan terjadi satu pulsa pada P0011 yang diawali saat input berubah kondisi dari Low ke High.

Pada beberapa PLC instruksi one sudah disediakan sehingga kita tidak perlu lagi membangun sebuah rangkaian seperti pada gambar diatas, berikut merupakan contoh aplikasi instruksi DIFU/DIFD:

Gambar 33. Aplikasi instruksi DIFU

Pada rung 1 misal terjadi perubahan kondisi input 0000 dari Low ke High maka DIFU 1000 juga menjadi ON, sehingga akan memberikan pulsa 1 scan pada rung 2- kontak 1000 berkondisi ON selama 1 scan. Dengan demikian ouput 1001 berkondisi ON dan akan membuat kontak NO 1001 menjadi ON sedangkan NC 1001 menjadi OFF, akibatnya output 1001 tetap pada kondisi ON serta output 0500 juga ON.

Dari uraian diatas dan dilihat dari ladder ddiagram maka fungsi rangkaian adalah untuk menjalankan sederetan instruksi dalam program melalui satu pulsa yang diberikan oleh DIFU.

Page 24: PLC Advanced

10. Instruksi Jump

Instruksi ini berfungsi untuk meloncatkan pelaksanaan program, sebagai ilustrasi dapat kita lihat pada ladder diagram pada gambar 34, instruksi JMP 000 merupakan awal untuk meloncatkan program dan JME 000 merupakan akhir blok program yang akan diloncati. Jadi apabila P0001 pada kondisi OFF maka program yang terletak antara JMP 000 sampai JME 000 akan dilaksanakan, apabila P0001 pada kondisi ON maka blok tersebut dilaksanakan baik untuk menjalankan counter CTU – C004 maupun untuk meresetnya melalui P0007. Untuk output P0012 karena berada di luar blok JMP 000 – JME 000 maka tetap bekerja baik P0001 berkondisi ON ataupun berkondisi OFF. Jumlah alamat loncat untuk satu PLC dengan PLC lain sangat bervariasi, untuk PLC NHP-MicroLink ML14 dibatasi antara 00 sampai 63 alamat loncat.

Gambar 34. Contoh Aplikasi instruksi loncat (Jump)

Page 25: PLC Advanced

Bila dituliskan secara STL adalah sebagai berikut:

Jadi PLC pertama kali akan mendeteksi kondisi P0001 melalui instruksi LOAD, bila kondisi P0001 1 maka step 1 akan diteruskan lompat ke step 10 dan dilanjutkan pada step-step berikutnya, sedangkan kalau kondisi P0001 ternyata 0 maka instruksi pada step 2 dan seterusnya akan dilaksanakan.

Page 26: PLC Advanced

1. Metoda retentive

Seringkali sebuah PLC harus digunakan pada sebuah sistem yang bekerja terus menerus, dimana proses serta pengeluaran hasil proses selalu tergantung pada setiap perubahan input PLC. Sekarang apa yang terjadi bilamana aliran listrik mati sedang program dalam sistem mengharuskan untuk meneruskan pada langkah berikutnya, misal timer yang sudah mengukur waktu 30 detik sebelum listrik padam harus dilanjutkan mulai dari harga tersebut begitu listrik hidup kembali, sebuah counter yang sudah menghitung 25 harus dilanjutkan kembali begitu listrik hidup sampai batas hitungan akhir yang telah ditentukan.

Untuk keperluan itu setiap PLC dilengkapi dengan sistem penyimpanan (memory), dimana data yang tersimpan tidak akan hilang walaupun listrik padam oleh karena itu proses akan dilanjutkan jadi bukan dari awal seperti saat PLC dijalankan pertama kali.

Sedang alamat yang dapat digunakan untuk setiap PLC sangat berbeda-beda, sebagai contoh berikut merupakan ladder diagram yang diaplikasikan pada PLC NHP-microlink 14.

Gambar35. Aplikasi timer retentive

Dari ladder diatas terliah suatu sistem rangkaian dimana timer T095 dan T096 akan dijalankan melalui perubahan P0000 dari OFF ke ON kemudian relay P0011 akan dipertahankan ON karena disuplai oleh kontak P0011 itu sendiri, selama P0001 pada kondisi ON maka T095 dan T96 akan bekerja. Misalkan hitungan kedua timer ini mencapai 46 yaitu pada timer 095 dan timer 096 berisi data 46, jika tiba-tiba listrik padam maka begitu listrik nyala kembali yang trjadi adalah timer 095 dimulai dari 00046 dan T096 mulai dari 00000.

Metoda Retentive

Page 27: PLC Advanced

Kalau kita lihat kejadian ini ternyata pada timer 095 tetap menyimpan data walaupun kondisi listrik padam dan pada timer 096 saat listrik padam data yang ada hilang sama sekali dan begitu listrik hidup data dimulai dari 00000 lagi.

Hal yang sama juga dapat diaplikasikan pada counter, retentive relay, link relay, data register dan step controller, sebagai contoh pada NHP PLC untuk metoda retentive diterapkan alamat sebagai berikut:

No. Memory Alamat

1. Retentive Relay K000 – K15F

2. Link relay L000 – L15F

3. Timer T072 – T095

T120 – T127

4. Counter C096 – C127

5. Step controller S24 – S31

6. Data register D192 – D255

Berikut ladder diagram aplikasi untuk counter, dimana C006 merupakan counter biasa dan C096 merupakan retentive counter.

Gambar 35. aplikasi retentive counter.

Page 28: PLC Advanced

1. Setup komunikasi RS485

Untuk dapat berkomunuikasi antara 2 PLC yang berfungsi sebagai Master dan Slave harus memperhitungkan karakteristik yang meliputi:

Metoda transmisi data, metoda ini biasanya menggunakan half duflex atau asinkron

Kecepatan transmisi, umumnya dapat diatur kecepatannya antara 300 – 19.200 bps

Jumlah PLC yang dapat saling dihubungkan sebagai contoh PLC NHP dapat dihubungkang melalui RS 485 sebanyak 32 stasiun yang masing-masing PLC terhubung diberikan inisialisasi alamat 00 hex. Sampai 1F hex., dengan cara ini maka kita dapat mengirimkan data atau saling berkomunikasi antara PLC melalui inisalisasi alamt yang telah ditentukan dan bila diinginkan sebuah master PLC bisa sekaligus memberikan data pada waktu yang bersamaan kepada semua slave terhubung.

Organisasi karakter merupakan setup pengiriman dan penerimaan jumlah bit dalam sebuah karakter ada PLC yang menerapkan 7 bit, 8 bit, parity check dan stop bit, sebagai contoh setup yang harus dilakukan untuk PLC NHP adalah 8 bit karakter, none parity check dan 1 bit untuk stop bit.

Error check berfungsi sebagai komparasi error untuk retransmit data atau menguji BCC routine BCC.

Instruksi untuk saling komunikasi dapat dituliskan dalam STL atau ladder diagram, sedang instruksi ini adalah sebagai berikut:

DIN merupakan instruksi input atau untuk menerima data

DINP

DOUT merupakan instruksi untuk mengeluarkan data

DOUTP

Sedangkan gambar berikut aplikasi instruksi dalam ladder diagram

Gambar 35. Instruksi komunikasi PLC

S1 start address

S2 Jumlah terima word

S1 start address

S2 Jumlah kirim word

MASTER-SLAVE PLC

Page 29: PLC Advanced

Adapun fungsi instruksi ini dapat dilihat pada ladder berikut:

Gambar 36. Penerapan instruksi komunikasi PLC

Rung pertama dari ladder terlihat bahwa PLC master yang berinisial alamat 1F hex. menerima data dari sebuah PLC slave, penerimaan data (data frame) akan disimpan pda D0 – D4 dan unit dari data merupakan word. Sedangkan data diterima diawali oleh Low byte dan diakhiri oleh High byte yang diawali dari D0.

Rung kedua dari ladder terlihat PLC master yang berinisial alamat 1F hex. mengirimkan data ke salah satu PLC slave, data akan dikirim dan disimpan berupa data frame pada K0 –K5. Sedangkan data diterima diawali oleh Low byte dan diakhiri oleh High byte yang diawali dari K0.

2. Frame Data Pada Komunikasi Master-Slave PLC

Saat transmisi data dari master PLC ke slave PLC, frame terdiri dari dua macam struktur frame yaitu saat baca dan saat tulis, yaitu digambarkan sebagai berikut:

Saat Baca (Read)

ENQ * No. Stasiun

Instruksi Alamat ** jumlah data EOT BCC

Saat Tulis (Write)

ENQ * No. Stasiun

Instruksi Alamat ** jumlah data Data EOT BCC

Gambar 37. Frame data untuk Baca/Tulis koneksi 2 PLC

Saat menerima data dari slave PLC ke master PLC, frame terdiri dari tiga macam struktur frame yaitu saat baca, saat tulis dan bila terjadi error, yaitu digambarkan sebagai berikut

Page 30: PLC Advanced

Saat Baca (Read)

ENQ * No. Stasiun

*** Instruksi

Data EOT BCC

Saat Tulis (Write)

ENQ * No. Stasiun

*** Instruksi

EOT BCC

Saat terjadi error

ENQ * No. Stasiun

Kode error EOT BCC

Gambar 38. Frame data untuk Baca/Tulis koneksi 2 PLC dan error

Pada frame data terdapat 4 macam data kendali yaitu:

Kode ASCII Deskripsi

ENQ 05 hex. Enquiry

ACK 06 hex. Acknowledge

NAK 15 hex. Negative Acknowledge

EOT 04 hex. End of Text

Catatan:

untuk nomor stasiun pada slave PLC:

** : Jumlah data word

*** : Ini sama seperti pada instruksi transmisi dari master PLC

untuk * Instruksi:

r(72 hex.), R(52 hex.) : Word Read

w(77 hex.), W(57 hex.) : Word Write

Kode error dan penjelasan setiap error dalam komunikasi data master-slave PLC dapat dilihat pada table berikut:

Page 31: PLC Advanced

No. Kode Nama Error Deskripsi

1.021 hex.

Address errorMemori diluar area

Betulkan area alamat memori

2.022 hex.

BCC Check error

Error komparasi pada BCC

Retransmit data atau cek routin summing BCC

3.023 hex.

Command error

Instruksi yang tak diijinkan digunakan

Betulkan instruksi

4.028 hex.

Number over error

Batas maks. Jumlah data diluar ketentuan

Betulkan jumlah data atau samakan atau kurangi dari 63 word

5.029 hex.

Data error

Error konversi data ASCII

Betulkan jumlah data atau samakan atau kurangi dari 63 word

Terdapat 2 macam alamat yaitu untuk word dan untuk bit, setiap alamat merupakan area memori yang dinyatakan dalam bilangan desimal untuk word dan hexa untuk bit, berikut contoh untuk PLC dari NHP:

Word P (Relay) P0000 – P0005

M (Auxiliary relay) M0000 – M0031

L (Link relay) L0000 – L0015

K (Retentive relay) K0000 – K0015

F (Special relay) F0000 – F0015

T (Timer) T0000 – T0127

C (Counter) C0001 – C0127

D (Data register) D0000 – D0255

S (Step controller) S0000 – S0031

Bit P (Relay) P0000 – P005F

M (Auxiliary relay) M0000 – M031F

L (Link relay) L0000 – L015F

K (Retentive relay) K0000 – K015F

F (Special relay) F0000 – F015F

Page 32: PLC Advanced

Jika kita menggunakan instruksi word atau bit, batasan jumlah data antara satu PLC dengan PLC lainnya berbeda, sebagai contoh dari PLC NHP 64 jumlah data untuk word dan 255 jumlah data untuk bit. Pada PLC ini BCC cek tidak dilakukan bilamana digunakan huruf kapital dalam instruksi, sedangkan status flag komunikasi dinyatakan dalam 4 macam status yaitu:

F11A : status pengiriman data (transmitting)

F11C : status penerimaan data (receiving)

F11E : status penerimaan telah selesai (receiving complete)

F11F : ada kesalahan komunikasi (communication error)

3. Program Komunikasi Master –Slave PLC

Seperti telah dijelaskan diatas instruksi yang digunakan adalah DIN, DOUT hanya pada master PLC dan dalam contoh berikut beralamat 1F hexa. Secara blok hubungan komunikasi melalui RS-485 digambarkan sebagai berikut:

Gambar 39. Komunikasi 2 PLC Master-Slave

Pada gambar kita lihat bahwa +(positip) PLCF master disambungkan pada sisi +(positip) PLC slave dan –(negatip) PLC master disambungkan pada sisi –(negatip) PLC slave dari kedua saluran komunikasi RS-485 dan kita lihat bahwa untuk sambungan secara fisik melalui hanya 2 kabel.

Secara sederhana komunikasi ini dapat kita program melalui ladder diagram berikut:

+ -

PLC Master

(1F hexa.)

+ -

PLC Slave

(00 hexa.)

RS-485

Page 33: PLC Advanced

a. Menerima data dari Slave PLC.

Gambar 40. Ladder diagram instruksi penerimaan data dari Salve

Kedua instruksi pada prinsip dan fungsinya sama dan dari ladder terlihat bahwa selama M00 pada kondisi ON maka master PLC siap menerima data dari slave, setiap data yang dikirimkan oleh slave PLC akan diterima oleh master PLC dan disimpan pada register D000 sampai D008. Disini master akan selalu memiliki inisialisasi alamat 1F hexa, dan dari instruksi yang dituliskan DIN merupakan instruksi yang mengatakan bahwa fungsinya adalah menerima data dari slave sedangkan D000 merupakan alamat register pertama yang akan diisi data dari slave serta 09 menyatakan jumlah data yang dikirimkan. Dengan demikian data yang diterima dari slave sejumlah 9 data dan akan disimpan pada register beralamat D000 sampai D008.

b. Mengirim data ke Slave PLC

Gambar 41. Ladder diagram instruksi kirim data ke Slave

Page 34: PLC Advanced

Kedua instruksi pada prinsip dan fungsinya sama dan dari ladder terlihat bahwa selama M00 pada kondisi ON maka master PLC mulai mengirimkan data ke slave, setiap data disimpan pada register D000 sampai D008 master PLC yang dikirimkan dan diterima oleh slave PLC. Disini master akan selalu memiliki inisialisasi alamat 1F hexa, dan dari instruksi yang dituliskan DOUT merupakan instruksi yang mengatakan bahwa fungsinya adalah mengirimkan data dari master sedangkan D000 merupakan alamat register pertama dimana data akan dikirimkan ke slave PLC serta 09 menyatakan jumlah data yang dikirimkan. Dengan demikian data yang diterima oleh slave sejumlah 9 data dan diambil dari register beralamat D000 sampai D008.

Contoh berikut merupakan ladder diagram komunikasi dua PLC dengan memanfaatkan status flag F11A, F11C dan F11E.

Gambar 42. Aplikasi status flag pada komunikasi Master-Slave

c. Instruksi SEND

Instruksi lain untuk komunikasi Master/Slave PLC dapat dilakukan dengan menggunakan instruksi sebagai berikut:

Pengiriman data dari master ke slave melalui jalur komunikasi RS-485 menggunakan instruksi SEND dapat dilakukan pada PLC NHP-ML300 versi 1.3 keatas, instruksi ini dilengkapi dengan nomor stasiun (ST) yang isinya (M, P, K, L, F, T, C, D, #D, data numerik), alamat awal memory area (S) dimana data akan dikirimkan dari master (M, P, K, L, F, T, C, D, #D), alamat awal memory area (D) dimana data akan dikirimkan pada slave (M, P, K, L, T, C, D), dan jumlah word (n) yang akan dikirimkan (M, P, K, L, F, T, C, D, #D, data numerik). Secara ladder diagram digambarkan sebagai berikut:

Gambar 43. Aplikasi instruksi Send

Pada ladder diagram terdapat NC kontak M0000, instruksi SEND, nomor stasiun yaitu menunjuk slave nomoir h0000, alamat awal pada master digunakan memory area D0000 dan alamat akhir D0004, alamat awal pada slave digunakan memory area M0000 alamat

Page 35: PLC Advanced

akhir M0004 dan jumlah word yang dikirim sejumlah 5 word. Sedangkan status error untuk instruksi ini menggunakan memory area F110, yaitu untuk mengetahui apakah terjadi kesalahan atau tidak pada saat proses pengiriman data dari master ke slave.

d. Instruksi RECV

Penerimaan data dari slave ke master melalui jalur komunikasi RS-485 menggunakan instruksi RECV dapat dilakukan pada PLC NHP-ML300 versi 1.3 keatas sperti halnya pada instruksi SEND, instruksi ini dilengkapi dengan nomor stasiun (ST) yang isinya (M, P, K, L, F, T, C, D, #D, data numerik), alamat awal memory area (S) dimana data akan disimpan pada master (M, P, K, L, F, T, C, D, #D), alamat awal memory area (D) dimana data akan diambil dari slave (M, P, K, L, T, C, D), dan jumlah word (n) yang akan dikirimkan (M, P, K, L, F, T, C, D, #D, data numerik). Secara ladder diagram digambarkan sebagai berikut:

Gambar 44. Aplikasi instruksi RECV

Pada ladder diagram terdapat NC kontak M0000, instruksi SEND, nomor stasiun yaitu menunjuk slave nomor h0000, alamat awal pada master digunakan memory area P0002 dan alamat akhir P0005, alamat awal pada slave digunakan memory area P005 alamat akhir P009 dan jumlah word yang dikirim sejumlah 4 word.

Page 36: PLC Advanced

1. Dokumentasi Dalam Sistem PLC

Antara satu PLC dengan PLC lainnya adalah hampir mirip akan tetapi setiap pabrik melengkapi produknya dengan karakteristik yang berbeda antara satu dengan lainnya, oleh karena itu bagi pengembang software atau programmer PLC harus selalu mengacu pada dokumen yang sesuai dengan tipe PLC yang sedang digunakan. Untuk kali ini kita ambil contoh yang diberikan oleh PLC-NHP-ML14.

a. Koneksi antar devais

Konfigurasi yang berikan untuk koneksi antar devais digambarkan seperti pada rangkaian berikut:

Gambar 45. Sistem koneksi PLC

Pada umumnya dokumentasi ini menjelaskan tentang koneksi yang dapat dilakukan, pada gambar 45 terlihat bahwa PLC dapat dihubungkan pada pemrogram konsole atau pada komputer (PC) dimana untuk PC harus diinstall terlebih dahulu software yang dibutuhkan untuk membuat program, mengedit, mencetak dan baca tulis program dari dan ke PLC.

Dokumentasi Dan Indikator Status Pada Sistem PLC

Page 37: PLC Advanced

b. Spesifikasi peralatan secara umum:

Spesifikasi sangat dibutuhkan untuk menggambarkankapasitas dan kemapuan sebuah PLC yang akan digunakan dalam sistem, khususnya yang menyangkut tegangan kerja dan kempuan arus listrik yang harus dioperasikan padanya. Dengan mengetahui spesifikasi sebuah PLC kita menoperasikan PLC pada sistem dengan aman baik bagi PLC itu sendiri maupun bagi keseluruhan sistem, berikut merupakan contoh spesifikasi minimum yang harus dimiliki oleh sebuah PLC (NHP-ML14):

Contents Specifications

Supply Voltage Range

AC DC

Free Voltage

(85~264VAC, 47-~63Hz)

24VDC

(19 -~ 3OVDC)

Power Consumption max. 10 VA

Dropout Tolerance 1/2 Cycle

DC Supply Output DC 24V 0.2A

Operating Temperature 0 ~ 55°C

Storage Temperature -10~ 70°C

Humidity 10 ~ 90% RH

Atmosphere Free from Corrosive gases

Noise Immunity 1500V, 1µs (Noise Simulator)

lnsulation Resistance More than 10MG (500 VDC)

Grounding Grounding Resistance <1000

Vibration 10 ~ 55Hz, 3mm in 3axes for 2 hours

Shock 10G, 3 shocks each in 3axes

Page 38: PLC Advanced

c. Spesifikasi fungsi setiap bagian PLC:

Disamping spesifikasi secara umum seperti dijelaskan pada poin b. juga diperlukan dokumentasi yang berhubungan dengan fungsi dan kapasitas yang dimiliki oleh sebuah PLC, dengan demikian akan jelas bagi pemakai atau programmer PLC luas dan kedalam program yang dapat dilakukan pada PLC tersebut. Untuk membeli atau mengadakan PLC bagi kebutuhan sistem pengendali hal ini merupakan informasi awal yang sangat penting, berikut sebuah contoh dari PLC NHP-ML14:

Contents Specification

Program Control Method

Cyclic Execution of Compiled Program

I/O Processing Method

I/O is updated after each scan

Instruction Basic Instr. Applic Instr

35 instructions

141 instructions

Memory Capacity 2K step (2048 step)

Execution Time 1.2 us/step

MemoryDevice Range

P 1/0 Relay (P000-P019) 24 Points input P000-P00D

output P010-P019Others (P00E,P00F,P01A-P05F) are used as Auxiliary relay.

M Auxiliary Relay (M000-M31F): 32 Reg. 512 Points M3l0: RTC data enable (Version 1.3 only)

K Retentive Relay (K000-K15F) 16 Reg. 256 Points

F Special Relay(F000-F15F) 16 Reg. 256 PointsF070-F077 are used as HSC output

area.F14 Elapsed value of High Speed

Counter.Fl5 Pre-set value of High Speed Counter

L Link Relay (L000-L15F): 16 Reg. 256 PointsLI 2-LI 5 (7byte) are used as the data area of Real Time Clock pre-set value.

T 100 ms T000-T095 : 96 Points Setting Value

=>0-6553510 ms T096-Tl27 : 32 Points

Page 39: PLC Advanced

Contents Specification

C Counter C001-C127 127 Points

S Step Controller (S00-S3 1): 32 x 100 steps

D Data Registers (D000-D255) 256x16 bit

D253-D255 are used as data area of scan time.

Internal High Speed Counter

1 Point, 8Kpps. 24VDC, Range 0 - 65535

Other Functions RS485 Communication(max.32 Stations). RS232, RTC

Page 40: PLC Advanced

d. Peta memory dalam PLC:

Peta memory atau sering disebut dengan Memory Map merupakan dokumen penting dalam menentukan penggunaan memory berdasarkan alamat serta kapasitas yang dapat digunakan, Memory pada PLC diberi notasi huruf abjat dan bilangan yang menunjukan jenis memory dan alamatnya, berikut merupakan peta memory yang dimiliki oleh PLC NHP-ML14:

Gambar 46. Peta Memory pada sistem PLC

100 ms Timer

Output

96 Points

10 ms Timer

Output

32 Points

Counter

Output

127 Points

Link Relay

256 Points

Special Relay

256 Points

Rentetive Relay

256 Points

AuxiliaryRelay

512 Points

AuxiliaryRelay

72 Points

I/O 24 Points

Page 41: PLC Advanced

e. Spesifikasi I/O:

Untuk mengetahui spesifikasi input dan output sebuah PLC dibutuhkan informasi dari pembuat PLC tegangan input maupun output yang boleh dioperasikan padanya, responese time dan batasan arus listrik yang boleh disambungkan padanya. Berikut contoh spesifikasi I/O sebuah PLC:

Contents Spec. Input Output

Type DC Relay

Rated Voltage 24VDC max.250VAC

24VDC

ON : Guarantee Voltage More than 9VDC

OFF Guarantee Voltage Less than 6VDC

Input Current 7±1 mA/point

Output Current 2A/point

4A/6points

Off State Leakage Curr. <0.1 mA

Response Time

OFF ►ON < 10ms <10ms

ON ►OFF <10ms <10ms

In using relay output, the life time of the PLC depends on the external load. Therefore, when the PLC is applied to a heavy load, we recommend that the user connect an external relay or SSR to the PLC to save the reliability and maintenance.

Page 42: PLC Advanced

f. Pengkabelan dan Koneksi pada terminal Input – Output:

Sebuah PLC biasanya juga dilengkapi dengan sistem pengkabelan untuk menghubungkan input atau output PLC pada peralatan input ataupun peralatan output, biasanya disertakan cara menghubungkan serta peralatan apa saja yang dapat dihubungkan padanya. Berikut contoh dokumen sistem pengkabelan pada sebuah PLC:

Gambar 47. Pengkabelan pada PLC

g. Real Time Clock

Untuk memonitoring, setting dan modifikasi data waktu dapat dilakukan melalui program konsol atau melalui software pada komputer, beberapa PLC menerapkan sistem untuk mengubah Real Time Clock (RTC). Seperti pada PLC NHP-ML 14 dilengkapi fasilitas ini yaitu mengubah isi data pada D249-D252 ketika M310 diset ON maka F03A diset ON, jika nilai diluar jangkauan (over range) setelah transfer dari D249-D252 ke L12-L15 maka M310 harus diset OFF. Apabila tidak L12-L15 akan berisi tetap dan nilai yang ditransfer akan tetap dipegang dalam D249-D252. Berikut dokumentasi yang diberikan oleh PLC tersebut:

Page 43: PLC Advanced

Parameter Device region Data scope

second L15_High Byte 00 - 59

minute L15_Low Byte 00 - 59

hour L14_High Byte 00 - 23

day L14_Low Byte 0 - 6

date L13_High Byte 1 - 31

month L13_Low Byte 1 - 12

year L12_High Byte 00 - 99

h. Komunikasi RS-485 atau RS-232

Hal yang penting lagi bagi sebuah PLC adalah saluran komunikasi yang dapat dialkukan oleh PLC, data yang ditampilkan pada dokumen biasanya berkisar tentang karakteristik transmisi. Berikut merupaka contoh data yang berhubungan dengan masalah ini:

Metoda transmisi : half duflex, asynkron

Kecepatan transmisi : 300 – 19.200 bps

Jumlah yang bisa dihubungkan : maks. 32 stasiun, dengan alamat 00 – 1F

Organisasi karakter : jumlah bit 8 bit, pariti cek (none), stop bit 1 bit

Cek kesalahan : BCC

Kode pengendali : Kode ASCII

2. Watchdog Timer

Watchdog Timer merupakan tool yang dapat digunakan untuk diaplikasikan pada beberapa sistem pengendali, dimana fungsinya sebagai pelayanan bilamana terjadi permasalahan keamanan pada sistem. Bilamana waktu scan tertutup sekitar 300 mili detik, maka instruksi WDT diperlukan untuk mengaktifkan watchdog timer sebagai tanda timing out atau sering disebut dengan creating error. Tertutupnya selama waktu 300 mili detik kemungkinan terjadi sesuatu bilamana operasi instruksi For-Next sedang dilaksanakan. Oleh karena itu sangat dianjurkan untuk menggunakan instruksi WDT dalam sebuah routine For – Next atau bias juga diletakan pada tengah-tengah program aplikasi. WDT dilaksanakan selama waktu enable input dalam kondisi ON, sedangkan WDTP dilaksanakan hanya pada saat transisi dari OFF ke ON pada enable input.

Ladder diagram berikut memberikan gambaran pada kita bahwa WDT akan aktif atau akan dilaksanakan bilamana terjadi kesalahan pada sistem program, dimana kesalahan atau error yang muncul pada sistem program akan dicatat oleh F memory relay dalam contoh berikut diambil dari kesalahan yang tercatat pada F010.

Page 44: PLC Advanced

Gambar 48. Aktifkan WDT dari error yang tercatat pada F010

Beberapa PLC dilengkapi pula dengan instruksi untuk membuat semua output berkondisi OFF, sehingga dapat dimanfaat untuk menghindari adanya tabrakan pada semua system pengendali. Jadi dengan menerapkan instruksi WDT maupun instrukai OUTOFF dapat digunkan untuk menghentikan sistem operasi dari sebuah program, hanya kelebihan dari instruksi OUTOFF semua output terhenti total. Berikut menunjukan contoh penerapan instruksi OUTOFF dimana bila terjadi kesalahan dan tercatat pada F030 atau F031, maka semua output akan berkondisi OFF.

Gambar 49. Aplikasi instruksi OUTOFF melalui kesalahan pada F030 atau F031

Untuk keperluan ini kita diharuskan untuk menentukan kesalahan apa yang harus kita ambil sebagai kunci untuk mengaktifkan instruksi WDT atau instruksi OUTOFF, setiap PLC dilengkapi dengan system error oleh karena itu perlu untuk selalu memiliki daftar kesalahan dari PLC yang digunakan. Berikut merupakan daftar kesalahan yang dimiliki oleh PLC-NHP ml-14:

Contact Explanation Contact Explanation

F000 ON during RUN mode F090 20 ms symmetric Clock (duty=50)

F001 ON during PGM mode F091 lOOms symmetric Clock (duty=50)

F002 ON during PAUSE mode F092 200ms symmetric Clock (duty=50)

F03A RTC data error flag F093 Is symmetric Clock (duty=50)

F010 always ON F094 2s symmetric Clock (duty=50)

F011 always OFF F095 lOs symmetric Clock (duty=50)

Page 45: PLC Advanced

Contact Explanation Contact Explanation

F011A Under Transmission F096 20s symmetric Clock (duty=50)

F011C Under Receiving F097 60s symmetric Clock (duty5O)

F011E Complete Receiving F100 User Clock #0 for duty instruction

F011H Communication Error flag F101 User Clock #1 for duty instruction

F012 ON during first Scan only F102 User Clock #2 for duty instruction

F013 OFF during first Scan only F103 User Clock #3 for duty instruction

F014 One Scan duty cycle contact

F104 User Clock #4 for duty instruction

F020 Comms Error [H byte = St number]

F105 User Clock #5 for duty instruction

F021 Comms Error [H byte = St number]

F106 User Clock #6 for duty instruction

F022 Comms Error [H byte = St number]

F107 User Clock #7 for duty instruction

F024 Comms Error [H byte = St number]

F110 ON if Error is occurred (Error Flag)

F030 ON if Heavy Fault Occurred

F111 ON if Result is Zero (Zero Flag)

F031 ON if Light Fault Occurred F112 ON if Carry or Borrow is occurred

F040 ON if I/O Combination Error

F120 ON if less than flag

F041 ON if I/O Combination Error

F121 ON if equal to or less than flag

F042 ON if I/O Combination Error

F122 ON if is equal to flag

F043 ON if I/O Combination Error

F 123 ON if greater than flag

F044 ON if I/O Combination Error

F 124 ON if equal to or greater than flag

F045 ON if I/O Combination Error

F125 ON if not equal to flag

Page 46: PLC Advanced

Contact Explanation Contact Explanation

F050 ~ F05F

Indicate Fault number FI3O —Fl35

Status of I/O installation

F060 ~ F06F

Indicate Error Occurred step

F140 ~ F14F

Elapsed value of USC

F070 ~F077

Contacts of High Speed Counter (8 bit register)

F 150 ~ F15F

Preset value of USC

Melalui relay kontak F pada PLC jenis ini memungkinkan kita mengendalikan sistem bila terjadi suatu kesalahan, misal yang terjadi pada gambar 49 diatas dimana F030 dan F031 digunakan sebagai kendali error pada sistem. Disamping itu dalam dokumentasi sistem PLC harus dilengkapi dengan daftar kode error, dengan demikian kita akan dapat melacak dimana dan apa yang terjadi pada sistem sperti ditampilkan pada tabel berikut:

Error Code

CPU State

Cause Corrective Action

10 STOP System Memory Error or Check Sum Error

Contact distributor or replace unit,

11 STOP RAM Memory Error Contact distributor or replace unit.

12 STOP LSI Error for Instruction execution

Contact distributor or replace unit.

13 STOP 24V Power Supply failure Check external short circuit or load, contact distributor.

14 STOP I/O unit being connected or disconnected to PLC during run

After power OFF, connector disconnect I/O unit and power ON

20 STOP Watch Dog Time Out Correct WDT parameter to maximum scan time or insert WDT instruction in the middle of application program

21 STOP Change Contents of parameter or Check-Sum Error

Correct contents of parameter

23 STOP Invalid Instruction used Modify instruction

24 STOP Missing END Instruction Insert END instruction at the end of application program

Page 47: PLC Advanced

Error Code

CPU State

Cause Corrective Action

25 STOP Missing RET Instruction Insert RET instruction at the end of sub routine in application program

26 RUN STOP

Operation Error Correct step where fault occurred

27 RUN When Power ON, Different I/O Information between CPU of PLC and connected I/O unit

Re-arrange I/O unit

28 RUN Battery Low Voltage Error Change battery