Contoh Implementasi Pemrograman Ladder Pada Board FORTHUNER46


Pemrograman ladder adalah pemrograman yang menggambarkan alur logika menggunakan simbol-simbol. Pemrograman ladder biasa digunakan pada produk PLC (Programmable Logic Controller) seperti OMRON CPM1A, Siemens S-7 dan juga pada produk Smart-Relay seperti Zelio dan OMRON ZEN.

Mengimplementasikan ladder pada mikrokontroler khususnya board FORTHUNER46 sangatlah mudah. Pada tulisan ini akan saya berikan contoh implementasi pemrograman ladder sederhana menggunakan bahasa FORTH pada board FORTHUNER46.

Pada eksperimen ini saya menggunakan 2 buah TOMBOL (aktif-rendah) dan 2 buah LED (aktif-tinggi). Tombol I1 terletak pada pin PB0 dan tombol I2 terletak pada pin PB1. Q1 dan Q2 (LED) terletak pada pin PB2 dan pin PB3.

Pemrograman ladder intinya hanyalah menata (menentukan alur) kontak-pemutus dan kontak-penyambung sesuai dengan logika prinsip kerja sistem yang diinginkan. Sebagai contoh sederhana, bila kita menginginkan output Q1 on jika I1 on, maka program laddernya adalah sebagai berikut:

!-----[ I1 ]---------------( Q1 )

Untuk mengimplementasikan:

  • Q1 on jika I1 on dan I2 on
  • Q2 on jika I1 on atau I2 on

laddernya adalah sebagai berikut:

!-----[ I1 ]-----[ I2 ]-----( Q1 )
!
!-----[ I1 ]-----+-----------( Q2 )
!                |
!-----[ I2 ]-----+

Untuk mengimplementasikan ladder sederhana seperti contoh diatas, berikut ini saya definisikan beberapa kata (fungsi) pendukung:

$
: BEGIN D2 B5 B2 B3 OL OL OL OL B0 B1 OH OH RET
: I1 B0 RIO 0= RET
: I2 B1 RIO 0= RET
: Q1 IF B2 OH ELSE B2 OL ENDIF RET
: Q2 IF B3 OH ELSE B3 OL ENDIF RET
: --- RET
: ----------> RET

Fungsi I1 dan I2 akan menghasilkan nilai kondisi pin PB0 dan PB1 (1/0) sesuai dengan logika pada kedua pin tersebut. Penambahan fungsi 0= berfungsi untuk membalik logika nilai kondisi tombol karena tombol menggunakan rangkaian aktif-rendah.

Fungsi Q1 dan Q2 menerima masukan logika (1/0) dan mengeset atau mereset kondisi PB2 dan PB3 sesuai masukan.

Fungsi — dan ———-> hanyalah kosmetika kode program.

Program selengkapnya untuk mengimplementasikan ladder di atas adalah sebagai berikut:

Masih di dalam editor Vim, kita bisa mengirim kode program andor.fs ke board FORTHUNER46 dengan menggunakan program utilitas fsend.py. Perintahnya adalah sbb:

   :! python fsend.py /dev/ttyS0 %

Setelah terkirim dengan sukses, sekarang LED2 akan menyala jika tombol I1 atau tombol I2 ditekan. Dan LED1 akan menyala jika tombol I1 dan tombol I2 ditekan bersamaan. Ketika tombol I1 dan I2 ditekan bersamaan dan LED1 menyala,maka LED2 juga akan menyala karena logika I1 OR I2 tetap menghasilkan logika 1 (true).

Logika program: Q1 on jika I1 on dan I2 on diimplementasikan oleh baris program

   I1 I2 --- AND ----------> Q1

Logika program: Q1 on jika I1 on dan I2 on diimplementasikan oleh baris program

   I1 I2 --- OR ----------> Q2

Keduanya berjalan di dalam loop REPEAT… KEY? UNTIL sehingga keduanya dijalankan terus-menerus hingga sebuah tombol pada keyboard ditekan.

Bagaimana? Asik, bukan? Baca juga artikel terkait tentang FORTHUNER46.

Untuk info pemesanan dan pelatihan board FORTHUNER, silakan menghubungi melalui WA ke 081231784018.

Selamat belajar dan selamat berkarya.

 

Iklan

Satu respons untuk “Contoh Implementasi Pemrograman Ladder Pada Board FORTHUNER46

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google+

You are commenting using your Google+ account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

w

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.