You are on page 1of 11

BÀI 6 : LỆNH TIMER

1. Chuẩn đầu ra của học phần


L1. Thiết kế được chương trình điều khiển PLC cho các hệ thống điều khiển công
nghiệp.
2. Mục tiêu của bài học
- Thiết kế được chương trình điều khiển cơ bản sử dụng các lệnh So sánh, lệnh chuyển dữ
liệu, lệnh Timer.
3. Nội dung bài học
3.1 Lệnh chuyển dữ liệu
Lệnh chuyển dữ liệu: thực hiện sao chép, chuyển dữ liệu 1 bit, 16 bit hoặc 32 bit từ
vùng nhớ S (nguồn) đến vùng nhớ D (đích).
3.1.1 Lệnh chuyển dữ liệu 1 bit
Lệnh sao chép bit logic của S (nguồn) sang D (đích)
Bước lập
Ladder Instrutions Vùng nhớ
trình
S: Dữ liệu nguồn 1 bit
(X, Y, M, S, SM, T, C, D)
[MOVB S D ] MOVB S D 1
D: Dữ liệu đích 1 bit
(X, Y, M, S, SM, T, C; D)
Ví dụ :

Giải thích : Khi X40 = 1 → Y0 = 1


Khi X41 = 1 → sao chép trạng thái bit Y0 vào Y1 ; sao chép bit 0 của thanh ghi D0
vào M0 ; Khi X40 = 0 ; X41 = 0 → các giá trị logic được chuyển đến giữ nguyên giá trị.
3.1.2 Lệnh chuyển dữ liệu thanh ghi 16 bit
Lệnh sao chép giá trị thanh ghi 16 bit của S (nguồn) sang thanh ghi 16 bit D (đích)
Bước
Ladder Instrutions Vùng nhớ
lập trình
S: Dữ liệu nguồn 16 bit
(K, H, KnX, KnY, KnM, KnS,T, C,
[MOV S D ] MOV S D D) 2
D: Dữ liệu đích 16 bit
(KnX, KnY, KnM, KnS,T, C, D)

Ví dụ :

Khi X40 = 1 → thanh ghi D0 = D5 = 20 ; K2Y0 = 127

3.1.3 Lệnh chuyển dữ liệu thanh ghi 32 bit


Bước
Ladder Instrutions Vùng nhớ
lập trình
S: Dữ liệu nguồn 32 bit
(K, H, KnX, KnY, KnM, KnS,T, C,
[DMOV S D ] DMOV S D 3
D)
D: Dữ liệu đích 32 bit
(KnX, KnY, KnM, KnS,T, C, D)

Ví dụ :

Khi X4A = 1 → giá trị 50.000 được biểu diễn trong 2 thanh ghi D2, D3 ; D2 là thanh ghi
thấp) ; sau đó sao chép dữ liệu trong 2 thanh ghi D2, D3 vào 2 thanh ghi D4, D5

3.1.4 Lệnh chuyển khối dữ liệu thanh ghi


Bước
Ladder Instrutions Vùng nhớ lập
trình
S: Dữ liệu nguồn 16 bit
(KnX, KnY, KnM, KnS, T, C, D)
[BMOV S D BMOV S D
D: Dữ liệu đích 16 bit 4
Kn ] Kn
(KnX, KnY, KnM, KnS,T, C, D)
n: số thanh ghi cần dịch chuyển
Ví dụ :
Khi X4B = 1, dữ liệu trong 5 thanh ghi D0 ÷D4 được sao chép tương ứng sang 5 thanh ghi
D10 ÷ D14
D0 D10
D1 D11
D2 → D12
D3 D13
D4 D14

3.2 Nhóm lệnh so sánh


Lệnh so sánh: Lệnh so sánh thực hiện việc so sánh dữ liệu trong 2 thanh ghi n1 và n2
hoặc hằng số với dữ liệu của một thanh ghi. Kết quả của phép so sánh sẽ có giá trị logic bằng
1 nếu đúng và bằng 0 nếu sai.
3.2.1 Lệnh đọc vào phép so sánh

Ladder Instructions Vùng nhớ Bước lập


trình
LD= n1 n2
LD< n1 n2
LD> n1 n2 n1, n2: K, H, D, T, C, KnX,
2
LD<> n1 n2 KnY; KnM; KnS;

LD<= n1 n2
LD>= n1 n2
Ví dụ:
* Trạng thái ban đầu: D0 = D5 = 0 do vậy phép so sánh ở dòng lệnh số 5 đúng nên Y40= 1,
phép so sánh dòng số 9 sai nên Y41 = 0, phép so sánh dòng lệnh số 9 đúng nên Y42 = 1.
* Khi X40 = 1 → D0 = 20; D5 = 100, khi đó:
+ phép so sánh ở dòng lệnh số 5 bị sai → Y40 =0;
+ phép so sánh dòng lệnh 9 đúng → Y41 = 1;
+ Phép so sánh dòng lệnh 13 đúng → Y42 = 1

3.2.2 Lệnh AND với phép so sánh


Lệnh thực hiện phép toán AND giữa một bit nhớ với kết quả hoạt động so sánh của hai
toán hạng. Tuỳ thuộc vào trạng thái của bit nhớ và kết quả phép so sánh mà cho kết quả tổ
hợp logic.

Ladder Instructions Vùng nhớ Bước lập trình


AND= n1 n2

AND< n1 n2
n1, n2: K, H, D, T, C,
AND> n1 n2
KnX, KnY; KnM; 2
AND<> n1 n2 KnS;
AND<= n1 n2

AND>= n1 n2
Ví dụ:
3.2.3 Lệnh OR với phép so sánh
Lệnh thực hiện phép toán OR giữa một bit nhớ với kết quả hoạt động so sánh của hai
toán hạng. Tuỳ thuộc vào trạng thái của bit nhớ và kết quả phép so sánh mà cho kết quả tổ
hợp logic.

Ladder Instructions Vùng nhớ Bước lập trình


OR= n1 n2

OR< n1 n2

OR> n1 n2 n1, n2: K, H, D, T,


C, KnX, KnY; 2
OR<> n1 n2
KnM; KnS;
OR<= n1 n2

OR>= n1 n2

Ví dụ:

3.3 Lệnh Timer


3.3.1 Khái niệm
PLC dòng iQR có hai loại bộ trễ thời gian: Bộ trễ thời gian không có nhớ (Non-
Retentive Timer) và bộ trễ thời gian có nhớ (Retentive Timer). Bộ trễ thời gian sử dụng một
word để lưu giá trị trễ tức thời và sử dụng một bit để làm cờ báo. Khi giá trị trễ tức thời bằng
thời gian trễ đặt trước D thì bit cờ sẽ bằng 1.
Bộ trễ thời gian không có nhớ có giá trị trễ tức thời sẽ bị xoá về không khi điều kiện
thực hiện OFF. Còn đối với bộ trễ thời gian có nhớ thì giá trị trễ tức thời sẽ được lưu khi
điều kiện thực hiện OFF và khi điều kiện thực hiện ON trở lại thì giá trị trễ tức thời lại tiếp
tục trễ từ giá trị đang nhớ, giá trị trễ tức thời chỉ mất khi có lệnh Reset.

Bộ trễ thời gian có nhiều độ phân giải. Độ phân giải Timer có thể chỉnh định trong phần
mềm lập trình (khai báo tham số của CPU Parameter). Khi đó, thời gian tạo trễ của Timer
phụ thuộc vào độ phân giải và thời gian trễ đặt trước D (16bit). Thời gian trễ thực của bộ trễ
được tính theo công thức:

Thời gian trễ thực (ms) = Độ phân giải (ms) x thời gian trễ đặt trước D

Ví dụ: Muốn tạo thời gian trễ thực 5s, tùy thuộc vào độ phân giải của bộ trễ thời gian, ta
thiết lập thời gian trễ đặt trước như sau:

5s = 5000ms = 1ms * 5000 (D = 5000) → Thời gian trễ tối đa là 65,535 s

= 10ms * 500 (D = 500) → Thời gian trễ tối đa là 655, 35 s

= 100ms * 50 (D = 50) → Thời gian trễ tối đa là 6553,5 s

= 1000ms * 5 (D = 5) → Thời gian trễ tối đa là 65535 s

Bộ trễ có độ phân giải thấp thì thời gian định thời lớn nhưng cấp chính xác nhỏ, bộ trễ
có độ phân giải cao thì thời gian định thời nhỏ nhưng cấp chính xác lớn.

Nếu không điều chỉnh độ phân giải timer, thì trong phần mềm lập trình đang mặc định
độ phân giải thấp là 100ms; độ phân giải cao là 10ms

3.3.2 Lệnh Timer không có nhớ (Non - Retentive Timer)

Bước
Ladder Instructions Vùng nhớ
lập
trình
Tx: thứ tự Timer có độ phân giải thấp
D (16bit): Thời gian trễ đặt trước, thuộc các
-(Tx D) OUT Tx D 4
vùng nhớ K, H, D, T, C, KnX, KnY, KnM,
KnS
Tx: thứ tự Timer có độ phân giải cao
D (16bit): Thời gian trễ đặt trước, thuộc các
-(H Tx D) OUTH Tx D 4
vùng nhớ K, H, D, T, C, KnX, KnY, KnM,
KnS

Chú ý: Không sử dụng trùng thứ tự timer cho hai độ phân giải khác nhau. Ví dụ nếu đã khai
báo T0 cho độ phân giải thấp, thì không sử dụng T0 cho độ phân giải cao.

Ví dụ 1: Khai báo và nguyên lý hoạt động

Ví dụ 2: Chương trình trễ lặp:


Khi PLC hoạt động, đèn trạng thái Y0 sáng 5s, tắt 5s và lặp lại.

Y0 5s 5s

M0

1000 1000
500
3.3.3 Lệnh Timer có nhớ (Retentive Timer)

Bước
Ladder Instructions Vùng nhớ lập
trình
Tx: thứ tự Timer có độ phân giải thấp
D (16bit): Thời gian trễ đặt trước, thuộc các
-(STx D) OUT STx D 4
vùng nhớ K, H, D, T, C, KnX, KnY, KnM,
KnS
Tx: thứ tự Timer có độ phân giải cao
D (16bit): Thời gian trễ đặt trước, thuộc các
-(H STx D) OUTH S Tx D 4
vùng nhớ K, H, D, T, C, KnX, KnY, KnM,
KnS

Ví dụ 1: Khai báo và nguyên lý hoạt động


Ví dụ 2: Nhấn Start: Đèn sáng 5s, tắt 5s và lặp lại. Nhấn Stop: Đèn tắt
Nguyên lý hoat động của mạch điều Start
khiển:
Stop

M0

1000 1000
500 500
T1_word

Đèn

T1_bit

4. Tài liệu tham khảo

[1]. Bùi Thị Thu Hà, Hà Thị Kim Duyên, Đề cương bài giảng: PLC và mạng truyền
thông Công Nghiệp, Khoa Điện tử, Trường Đại học Công Nghiệp Hà Nội 2020
[2] Hoàng Minh Sơn, Mạng truyền thông công nghiệp, Nhà xuất bản khoa học kĩ
thuật, 2006.
[3]. Bùi Thị Thu Hà, Vũ Thị Hoa, Giáo trình Lập trình điều khiển PLC, Nhà xuất bản
Giáo dục, 2016
[4]. Nguyễn Văn Cường, PLC Mitsubishi và các lệnh cơ bản, Nhà xuất bản Đại học
Sư phạm TP. Hồ Chí Minh, 2010

You might also like