Tự động hóa IoT
Nhà cung cấp thiết bị truyền thông, viễn thông, tự động hóa IoT chuyên nghiệp, liên hệ: Tel/Zalo +84 904 251 826, sales@mctt.com.vn

Tập lệnh cơ bản PLC Cimon (Bài 2 )

Lượt xem: 282

1. Lệnh số học

1.1 Lệnh cộng nhị phân

Lệnh ADD thêm hai giá trị nhị phân (S1 và S2) và lưu kết quả vào Đích (địa chỉ thiết bị đã gán).

1.2. Lệnh cộng BCD

Lệnh ADD thêm hai giá trị BCD (S1 và S2) và lưu kết quả vào Destination (địa chỉ thiết bị được gán).

DBADD là từ kép / BADDP và DBADDP là xung.

Định dạng: Giá trị BADD (S1) giá trị (S2).

1.3. Lệnh cộng dữ liệu Float

Lệnh ADD thêm hai giá trị float (S1 và S2) và lưu kết quả vào Destination (địa chỉ thiết bị đã gán).(Nó chỉ hỗ trợ trong dòng CPU XP và PLC-S)

1.4. Lệnh cộng dữ liệu 16 bit

ADD (n) số lượng dữ liệu từ và lưu kết quả trong Đích (từ kép). (Nó chỉ hỗ trợ trong dòng CPU XP và PLC-S)

1.5. Lệnh trừ nhị phân

Lệnh SUB trừ S2 từ S1 và lưu kết quả vào Đích (địa chỉ thiết bị đã gán).

1.6. Lệnh trừ mã BCD

Lệnh SUB trừ S2 từ S1 và lưu kết quả vào Đích (địa chỉ thiết bị đã gán).

1.7. Lệnh trừ FLOAT

Lệnh SUB trừ S2 từ S1 và lưu kết quả vào Đích (địa chỉ thiết bị đã gán).(Nó chỉ hỗ trợ trong dòng CPU XP và PLCS)

1.8 Lệnh nhân nhị phân

Lệnh MUL nhân S1 với S2 và lưu kết quả vào Đích (địa chỉ thiết bị đã gán).

  • MUL

Chức năng: nhân S1 với S2 và lưu kết quả thành kiểu từ kép thành D (byte thấp) và D + 1 (byte cao)

Ví dụ

Nếu X10 là ON, nhân H777 (D1) với HCCC (D2) và lưu byte thấp (h06D4) sang D20 và lưu byte cao (h5F92) sang D21.

  • DMUL

Chức năng: nhân S1 (Double word) với S2 (Double word) và lưu kết quả thành 4 loại từ D, D + 1, D + 2 và D + 3 theo thứ tự.

Ví dụ

Nếu X10 là ON, nhân H000F4240 (D0) với H0012D687 (D2) và sau đó lưu H6FC0 đến D4, H71ED đến D5, H011F đến D6 và H0000 đến D7 theo thứ tự.

1.9. Lệnh nhân WMUL

Lệnh WMUL nhân S1 với S2 và lưu kết quả vào Đích (địa chỉ thiết bị đã gán).

  • Lệnh WMUL

Chức năng: nhân S1 với S2 và lưu kết quả làm loại từ thành D.

Nếu giá trị nằm ngoài phạm vi -32,768 ~ 32,767, lệnh nhân sẽ không hoạt động và đặt cờ lỗi (F110).

Ví dụ

Nếu X00 là ON, nhân 26 (D10) với 255 (D20) và lưu 6630 đến D40.

  • DWMUL

Chức năng: nhân S1 (Double word) với S2 (Double word) và lưu kết quả dưới dạng double word type thành D và D + 1.

Nếu giá trị nằm ngoài phạm vi -2,147,483,648 ~ 2,147,483,647, lệnh nhân sẽ không hoạt động và đặt cờ lỗi (F110)

Ví dụ

Nếu X01 là ON, nhân 67000 (D0) với 312 (D10) và sau đó lưu HF840 đến D20 và H013E đến D21 theo thứ tự.

1.10. Lệnh BMUL, BMULP, DBMUL, DBMULP (BCD)

Lệnh BMUL nhân S1 với S2 và lưu kết quả vào Destination (địa chỉ thiết bị được gán).

Chức năng: nhân S1 với S2 và lưu kết quả thành kiểu từ kép thành D (byte thấp) và D + 1 (byte cao).

Ví dụ

Nếu X20 là ON, nhân 7777 (D1) với 8888 (D2) và lưu 1976 đến M40 và 6912 đến M50.

1.11.  Lệnh nhân FLOAT

Lệnh EMUL nhân S1 với S2 và lưu kết quả vào Đích (địa chỉ thiết bị đã gán).(Nó chỉ hỗ trợ trong dòng CPU XP và PLCS.)

Chức năng: nhân S1 với S2 và lưu kết quả vào Destination.

Ví dụ

Nếu X02 là ON, nhân D0 với D4 và lưu kết quả vào Y40.

1.12. Lệnh chia số nhị phân

Lệnh DIV chia S1 cho S2 và lưu kết quả vào Đích (địa chỉ thiết bị đã gán).

  • DIV

Chức năng: Chia S1 cho S2 và lưu kết quả vào D và phần còn lại là D + 1

Ví dụ

Nếu X00 là ON, hãy chia H0AE5 (D0) cho H0033 (D1) và lưu kết quả H0036 (54) xuống Y40 và phần còn lại H0023 (35) thành Y50.

  • DDIV

Chức năng: Chia S1 (từ kép) thành S2 (double word) và sau đó lưu kết quả vào D và D + 1 và phần còn lại là D + 2 và D + 3.

Ví dụ

Nếu X00 BẬT, hãy chia H000186A1 (D0, D1) cho H0000000A (D2, D3) và lưu kết quả H00002710 (10000) sang D4 và D5 và phần còn lại H00000001 (1) đến D6 và D7.

1.13.  Lệnh chia WDIV, WDIVP, DWDIV, DWDIVP (Binary)

Lệnh WDIV chia S1 cho S2 và lưu kết quả vào Điểm đến (địa chỉ thiết bị đã gán) và xóa phần còn lại.

  • WDIV

Chức năng: Chia S1 cho S2 và lưu kết quả vào D và xóa phần còn lại.

Ví dụ

Nếu X00 là ON, chia 456 (D0) cho 123 (D10) và lưu kết quả 3 thành D30 và xóa phần còn lại.

  • DWDIV

Chức năng: Chia S1 (từ kép) thành S2 (double word) và sau đó lưu kết quả vào D và D + 1 và xóa phần còn lại.

Ví dụ

Nếu X00 đang ON, hãy chia H27ED2445 (D100, D101) cho H000A23C0 (D200, D201) và lưu kết quả H000003F0 (1.008) về D300 và D301 và xóa phần còn lại.

1.14. Lệnh chia BDIV, BDIVP, DBDIV, DBDIVP (BCD)

Lệnh BDIV chia S1 cho S2 và lưu kết quả vào Đích (địa chỉ thiết bị đã gán).

Khi được bật, lệnh BDIV chia S1 (giá trị BCD) cho S2 (giá trị BCD) và lưu kết quả vào D và phần còn lại là D + 1.

Ví dụ

Nếu X02 là ON, chia 1267 (D0) cho 26 (D1) và lưu kết quả H0048 thành Y20 và phần còn lại từ H0019 đến Y30.

1.15. Lệnh chia EDIV (FLOAT)

Lệnh EDIV chia S1 cho S2 và lưu kết quả vào Đích (địa chỉ thiết bị đã gán).(Nó chỉ hỗ trợ trong dòng CPU XP và PLCS.)

Lệnh EDIV chia S1 cho S2 và lưu kết quả vào Đích (địa chỉ thiết bị đã gán).

(Nó chỉ hỗ trợ trong dòng CPU XP và PLCS.)

1.16. Lệnh tăng thêm 1 nhị phân

Lệnh INC tăng giá trị của Đích thêm một.

Khi được bật, lệnh INC thêm 1 đến D và lưu kết quả vào D lần nữa.

Ví dụ

Nếu X01 là ON, giá trị của Y10 (H0018) tăng thêm 1.

1.17. Lệnh giảm đi một nhị phân

Lệnh DEC giảm giá trị của đích đi một.

Khi được bật, lệnh DEC trích xuất 1 từ D và lưu kết quả lại thành D.

Ví dụ

Nếu X02 BẬT, giá trị của Y00 (H0009) giảm đi 1.

2.Lệnh chuyển dịch dữ liệu

2.1 Lệnh MOV sao chép nguồn đến đích (địa chỉ thiết bị đã gán).

Lệnh MOV (P) sao chép dữ liệu 16 bit và DMOV (P) sao chép dữ liệu 32 bit đến đích.

Ví dụ

Nếu X01 là ON, lệnh MOV sao chép dữ liệu của M00 sang M10.

2.2 Lệnh BMOV

Lệnh BMOV sao chép một nhóm từ từ nguồn đến đích (địa chỉ thiết bị đã gán).

BMOV (P) bản sao (n) số từ từ nguồn (S) và ghi các từ vào Đích (D)

Ví dụ

Nếu X01 đang BẬT, hãy sao chép 4 từ (M00 sang M30) và lưu chúng vào M100, M110, M120 và M130.

2.3 Lệnh SWAP

Lệnh SWAP đảo ngược các byte của nguồn và lưu kết quả vào Đích.

Ví dụ

Nếu X01 là ON, lệnh SWAP đảo ngược thứ tự các byte cao và các byte thấp của Y00

 

 

Bình luận