Instruksi Differentiate Up – DIFU(13) dan Differentiate Down – DIFD(14) digunakan untuk mengubah kondisi bit operand menjadi ON selama 1 siklus saja. Ketika dieksekusi, DIFU(13) akan membandingkan kondisi eksekusi sekarang dengan kondisi eksekusi sebelumnya. Jika kondisi eksekusi sebelumnya adalah OFF dan kondisi eksekusi sekarang adalah ON, maka DIFU(13) akan mengaktifkan bit operand menjadi ON selama 1 siklus saja.

Kebalikan dari instruksi DIFU(13) yang mengaktifkan bit operand selama 1 siklus ketika kondisi eksekusi berubah dari OFF ke ON, maka instruksi DIFD(14) akan mengaktifkan bit operand selama 1 siklus ketika kondisi eksekusi berubah dari ON ke OFF. Contoh berikut akan menjelaskan prinsip kerja dari DIFU(13) dan DIFD(14).

Contoh Program

difudifd

Ketika kondisi eksekusi (Input 000.00) berubah dari OFF ke ON, instruksi DIFU(13) akan mengaktifkan bit Output 010.00 selama 1 siklus. Proses tersebut dapat dilihat pada LED indikator pada badan PLC yang akan terlihat berkedip. Selanjutnya, ketika kondisi eksekusi berubah dari ON ke OFF, maka instruksi DIFD(14) akan mengaktifkan bit Output 010.01 selama 1 siklus.

DIFU(13) dan DIFD(14) dalam INTERLOCK dan JUMP

Jika instruksi DIFU(13) dan DIFD(14) berada dalam interlock section, maka instruksi-instruksi tersebut hanya akan dieksekusi jika kondisi eksekusi instruksi Interlock terpenuhi. Ketika kondisi eksekusi Interlock tidak terpenuhi (OFF), maka DIFU(13) dan DIFD(14) tidak akan dieksekusi, dan kondisi bit operand-nya akan direset.

difudifd2

Jika instruksi DIFU(13) dan DIFD(14) berada dalam jump section, maka DIFU(13) dan DIFD(14) hanya akan dieksekusi jika kondisi eksekusi instruksi JMP(04) terpenuhi. Akan tetapi perlu diperhatikan bahwa ketika kondisi bit operand DIFU(13) atau DIFD(14) sedang dalam kondisi ON, kemudian pada siklus berikutnya, kondisi eksekusi JMP(04) sudah tidak terpenuhi lagi (OFF), maka kondisi bit operand DIFU(13) dan DIFD(14) akan dipertahankan hingga kondisi eksekusi JMP(04) terpenuhi lagi. Jadi mesti hati-hati!

Selamat belajar!