Sepuluh Macam Instruksi Fungsi



Sepuluh Macam Instruksi Fungsi
1.      MODE CONTROL – INI(61)
INI(61) dapat digunakan dengan fungsi yang tercantum dalam tabel berikut :
Unit
Fungsi
CPU Unit
Counter 0 kecepatan tinggi (IR 00004 ke IR 00006)
unit output transistor
Output pulsa
Papan pulsa I/O
High Speed counters 1 dan 2
Pulse output 1 dan 2
Absolute Encoder Interface Board
Absolute High-speed counter 1 dan 2
High speed counter board
High speed counters 1 sampai 4

Ketika kondisi eksekusi OFF, INI(61) tidak dieksekusi. Ketika eksekusi kondisi ON, INI(61) digunakan untuk mengontrol operasi high-speed counter dan menghentikan produksi pulsa. Spesifikasi port (P) menentukan high speed counter atau output pulsa yang akan dikontrol.
Unit
Fungsi
Spesifikasi Port (P)
CPU Unit
High speed counter 0
000
Transistor Output Unit
Output pulsa
000


Bagian dalam papan
Fungsi
Spesifikasi port (P)
Slot 1
Slot 2
Papan pulsa I/O
High-speed counter 1 atau output pulsa 1
---
001
High-speed counter 2 atau output pulsa 2
---
002
Absolute Encoder Interface Board
Mutlak high speed counter 1
---
001
Mutlak high speed counter 2
---
002
Papan high speed counter
High speed counter 1
101
001
High speed counter 2
102
002
High speed counter 3
103
003
High speed counter 4
104
004

Fungsi INI(61) ditentukan oleh data kontrol, C. (P1 dan P1+1 berisi counter PV kecepatan tinggi ketika mengubah PV)
C
P1
Fungsi INI(61)
000
000
Memulai CTBL(63) membandingkan tabel
001
000
Menghentikan CTBL(63) membandingkan tabel
002
New High speed counter PV
Merubah high speed counter PV
003
000
Menghentikan pulsa output

Tabel berikut dimana nilai-nilai dari C dapat dibunakan dengan fungsi masing-masing
Papan / unit
Fungsi
Nilai C
000
001
002
003
Unit CPU
High speed counter 0
YA
YA
YA
---
Unit keluaran output
Output pulsa
---
---
---
YA
Papan pulsa I/O
High speed counter 1 dan 2
YA
YA
YA
---
Output pulsa 1 dan 2
---
---
---
YA
Absolute encoder interface board
Absolute high speed counter 1 dan 2
YA
YA
---
---
Papan High speed counter
High speed counter 1 sampai 4
YA
YA
YA
---

2.      INTERUPT CONTROL – INT(89)
Ketika kondisi eksekusi OFF, INT(89) tidak dieksekusi. Ketika eksekusi kondisi ON, INT(89) digunakan untuk mengontrol interupsi dan melakukan salah satu enam fungsi yang terlihat pada tabel berikut tergantung pada nilai CC.
Fungsi INT (89)
CC
Mask/unmask input interrupt
000
Clear input interupts
001
Read current mask status
002
Renew counter SV
003
Mask all interrupts
100
Unmask all interupts
200

Mask/unmask input interupt (CC=000)
Fungsi ini digunakan untuk mask/unmask masukan interupt I/O 00000-00003. Masukan mask dicatat, tetapi diabaikan. Ketika input disembunyikan, interupt program itu akan dijalankan secepat bit di unmask (kecuali jika dibersihkan terlebih dahulu dengan menjalankan INT(89) dengan CC-001).
Atur bit yang sesuai di D ke 0 atau 1 ke unmask/mask pada masukan interupt I/O. Bit 00-03 sesuai dengan 00000-00003. Bit 04-15 harus di set ke 0.
Clear I/O interrupts (CC=001)
Fungsi ini digunakan untuk membersihkan masukan interupsi I/O 00000-00003. Karena interupsi masukan disatat, interupsi mask akan dilayani setelah mask dihapus kecuali mereka dibersihkan terlebih dahulu.
Atur bit yang sesuai di D ke 1 untuk menghapus masukan interupsi I/O. Bit 00-03 sesuai dengan 00000-00003. Bit 4-15 harus di set ke 0.
Read Current Mask Status (CC=002)
Fungsi ini digunakan untuk menulis status arus mask untuk masukan interupt I/O 00000-00003 ke huruf D. Bit yang sesuai akan ON apabila masukan adalah mask. (bit 00-03 sesuai dengan 00000-00003).
Renew Counter SV (CC=003)
Fungsi ini digunakan untuk memperbaharui counter SV untuk masukan input I/O 00000-00003 ke huruf D. Atur bit yang sesuai di D ke 1 agar memperbaharui input counter SV.
Mask/unmask All Interupt (CC=100/200)
Fungsi ini digunakan untuk mask/unmask semua proses interupt. Masukan mask dicatat tetapi diabaikan. Control data, D, tidak digunakan untuk fungsi ini. Atur D ke #0000.
3.      DIGITAL SWITCH INPUT – DSW(87)
DSW (87) digunakan untuk membaca nilai yang diatur pada suatu saklar digital yang terhubung dengan Unit I / O. Ketika kondisi eksekusi OFF, DSW (87) tidak dieksekusi. Kemudian  ketika kondisi eksekusinya ON, DSW (87) membaca nilai (baik 4 atau 8-digit) mengatur pada saklar digital dari IW dan tempatkan hasilnya didalam R. Jika nilai bilangan adalah 8-digit, ia ditempatkan di R dan R +1, dengan yang paling signifikan digit ditempatkan di R +1. Jumlah digit diatur di DM 6639 dari Setup PC. DSW (87) membaca 4 atau 8-digit data dalam 12 siklus, dan kemudian mulai lagi dan terus membaca data.
4.      BINARY DIVIDE – DVB(53)
Ketika kondisi eksekusi OFF, DVB (53) tidak dieksekusi. Ketika kondisi eksekusi berubah ON, DVB (53) membagi isi Dd oleh isi dari Dr dan hasilnya ditempatkan di R dan R +1: hasil bagi dalam R, sisa di R+1
5.      END – END(01)

END(01) diperlukan sebagai instruksi terakhir dalam program apapun. Jika ada instruksi, END(01) ditempatkan setelah instruksi terakhir. Tidak ada instruksi tertulis setelah END(01) akan dieksekusi. END(01) dapat ditempatkan dimanapun dalam program untuk mengeksekusi semua instruksi sampai saat itu, seperti yang kadang dilakukan untuk debug program, tetapi harus dihapus untuk menjalankan sisa program. Jika tidak ada END(01) dalam program ini, tidak ada instruksi akan dieksekusi dan akan muncul pesan kesalahan “NO END INST”
6.      FAILURE ALARM AND RESET - FAL (06) dan SEVERE FAILURE ALARM - FAL(07)

FAL(06) dan FAL(07) disediakan sehingga pemrogram dapat nomor output eror untuk digunakan dalam operasi, pemeliharaan, dan debugging. Ketika dieksekusi dengan kondisi eksekusi ON, salah satu instruksi ini akan menampilkan angka FAL untuk bit 00-07 dari SR 253. Keluaran nomor FAL dapat antara 01 dan 99 dan metpakan masukan sebagai pembuat definisi untuk FAL(06) atau FAL(07). FAL(06) dengan pembuat definisi dari 00 digunakan untuk mengatur ulang daerah ini.
FAL(06) menghasilkan kesalahan non-fatal dan FALS(07) menghasilkan kesalahan fatal. Ketika FAL(06) dieksekusi dengan kondisi eksekusi ON, indikator ALARM/ERROR akan berkedip, tetapi operasi PC akan terus berlanjut. Ketika FALS(07) dieksekusi dengan kondisi eksekusi ON, indikator ALARM/ERROR akan nyala dan operasi PC akan berhenti.






7.      INTERLOCK – ILC(02) dan INTERLOCK CLEAR – ILC(03)

IL(02) selalu digunakan untuk hubungan dengan ILC(03) untuk membuat interlock. Interlock digunakan untuk mengaktifkan percabangan dengan cara yang sama seperti yang dapat dicapai dengan bit TR. Tetapi penanganan antar intruksi IL(02) dan ILC(03) berbeda dari bit TR ketika kondisi eksekusi untuk IL(02) adalah OFF. Jika kondisi eksekusi IL(02) adalah ON, program akan dijalankan seperti yang tertulis, dengan kondisi eksekusi ON digunakan untuk memulai setiap baris instruksi dari titik dimana IL(02) terletak melalui ILC(03).
Jika kondisi eksekusi untuk IL (02) MATI, bagian saling terkait antara
IL (02) dan ILC (03) akan diperlakukan seperti yang ditunjukkan pada tabel berikut
Instruksi
Penanganan
OUT dan OUT NOT
Bit dalam keadaan OFF
TIM dan TIMH(15)
Reset
CNT, CNTR(12)
PV maintened
KEEP(11)
Status bit maintened
DIFU(13) dan DIFD(14)
Tidak ada eksekusi
Semua instruksi lainnya
Petunjuk tidak dilaksanakan, dan semua bit LR, IR, AR, HR, dan SR dan kata-kata tertulis sebagai operand dalam instruksi keadaan OFF

IL(02) dan ILC(03) tidak selalu harus digunakan secara berpasangan. IL(02) dapat digunakan beberapa kali berturut-turut, dengan setiap IL(02) membuat bagian saling terkait melalui ILC(03) berikutnya. ILC(03) tidak dapat digunakan kecuali setidaknya ada IL(02) antara itu dan setiap ILC(03) sebelumnya.
8.      BCD INCREMENT – INC(38)

Ketika kondisi eksekusi OFF, INC(38) tidak dieksekusi. Ketika eksekusi kondisi ON, INC(38) bertahap Wd, tanpa mempengaruhi carry (CY).
9.      BCD SUBTRACT – SUB(31)

Ketika kondisi eksekusi adalah OFF, SUB(31) tidak dieksekusi. Ketika kondisi eksekusi adalah ON, SUB(31) mengurangi isi Su dan CY dari Mi, dan tempat hasil dalam R. Jika hasilnya negatif, CY diatur dan komplemen 10 yang dari hasil aktual ditempatkan di R. Untuk mengkonversi komplemen 10 ke hasil yang benar.
10.  DOUBLE BCD SUBTRACT – SUBL(55)
Ketika kondisi eksekusi OFF, SUBL(55) tidak dieksekusi. Ketika kondisi eksekusi adalah ON, SUBL(55) mengurangi CY dan 8 digit isi Su dan Su+1 dai nilai 8 digit di MI dan Mi+1, dan tempat hasil dalam R dan R+1. Jika hasilnya negatif, CY diatur dan komplemen 10 dari hasil yang sebenarnya ditempatkan di R. Untuk mengkonversi komplemen 10 untuk hasil yang benar, kurangi isi R dari nol. Karena sebuah konstanta 8 digit tidak bisa langsung masuk, menggunak instruksi BSET(71) untuk membuat 8 digit konstan.

Subscribe to receive free email updates:

0 Response to "Sepuluh Macam Instruksi Fungsi"

Post a Comment

Silahkan berkomentar :)
saran dan masukan sangat berarti bagi kita semua
let's share knowledge together ^^