a.Nét cơ bản về lệnh Bit.
Các lệnh này hoạt động ở 1 Bit số liệu. Trong quá trình hoạt động, bộ xử lý có thể đặt hoặc xóa Bit, trên cơ sở mức logic của bậc thang Ladder. Có thể đánh địa chỉ Bit nhiều lần tuỳ theo yêu cầu của chơng trình. Các tệp số liệu sau sử dụng lệnh Bit:
- Tệp số liệu vào/ra: ở đây các lệnh Bit đặc trng cho đầu vào và ra bên ngoài. - Tệp số liệu trạng thái.
- Tệp số liệu Bit: sử dụng các lệnh này cho logic kiểu rơle bên trong của chơng trình. - Timer, Counter và các tệp số liệu điều khiển. Các lệnh sử dụng cho các Bit điều khiển.
- Các tệp số nguyên và chuỗi: Sử dụng các lệnh ở mức Bit theo yêu cầu của chơng trình.
Đối với các tệp chuỗi, không đánh địa chỉ cho từ (word) 0 ở mức Bit.
b.Các lệnh.
Lệnh Examin if Close (XIC) Lệnh đọc vào
Sử dụng lệnh XIC trong chơng trình để xác định, nếu Bit là ON. Khi lệnh thực hiện, nếu Bit tại chỉ tơng ứng là ON (1) thì lệnh có logic là True, còn nếu Bit đó là OFF (0) thì lệnh là False.
Trạng thái Bit địa chỉ Lệnh XIC
N7 : 0 0 0 0 0 0 0 0 0 0 0 N7 : 10 0 0 0 0 0 0 0 0 0 495 . . . . . N7 : 240 0 0 0 0 0 0 0 0 0 66 N7 : 250 0 0 0 0 0 0 0 phần tử 0 1 2 3 4 5 6 7 8 9 Phần tử 249 có gía trị 66
0 False 1 True Vidụ về các thiết bị bật, tắt bao gồm:
+ Phím ấn đợc nối ở đầu vào (địa chỉ là I1:4.0/4) + Đầu ra nối vào đèn hiệu (địa chỉ là O0:6.0/2) + Timer điều khiển đèn (địa chỉ là T4:3/DN) Lệnh Examin if Open (XIO)
Sử dụng lệnh XIO trong chơng trình để xác định, nếu Bit là OFF. Khi lệnh thực hiện, nếu Bit tại địa chỉ tơng ứng là OFF (0) thì lệnh có logic là True, còn nếu Bit đó là On (1) thì lệnh là False.
Trạng thái bit địa chỉ Lệnh XIO 0 True 1 False Ví dụ về các thiết bị bật tắt bao gồm:
+ Môtơ quá tải đợc nối ở đầu vào (địa chỉ là I1:0/10) + Đầu ra nối với đèn hiệu (địa chỉ là O0:0/4)
+ Timer điều khiển đèn (địa chỉ là T4:3/DN) Lệnh Output Energize (OTE)
Lệnh đa ra
Sử dụng lệnh OTE trong chơng trình Ladder để bật ON một Bit tại địa chỉ tơng ứng khi điều kiện của thang là True.
Ví dụ về các thiết bị bật, tắt bao gồm:
+Đầu ra đợc nối vào đèn hiệu (địa chỉ là O0:6.0/4) Lệnh OTE đợc reset lại khi:
- Chuyển sang chế độ Rem Run hoặc Rem Test, hoặc khi nguồn đợc phục hồi.
- Lệnh đợc đặt trong vùng không hoạt động hoặc trong vùng MCR (Master Control Reset).
Lệnh Output Latch (OTL)
Lệnh ra
OTL là các lệnh ra có nhớ. OTL chỉ có thể bật ON một Bit. Lệnh này thờng đợc sử dụng đi đôi cùng với lệnh Output Unlatch (OTU), bằng cách đánh địa chỉ cho cùng một Bit. Cũng có thể sử dụng lệnh này để đặt giá trị ban đầu cho số liệu ở mức bit.
Khi gán địa chỉ cho lệnh OTL phù hợp với địa chỉ điểm cuối trên modul ra, thiết bị đa ra nối vào điểm cuối này đợc nạp năng lợng, khi Bit tơng ứng là đặt (bật lên 1 hoặc đã
có khả năng). Trạng thái của chức năng này đợc xác định bằng logic thang đứng trớc lệnh.
Nếu đờng dẫn logic true đã đợc tạo lập với các lệnh đầu vào trong thang, lệnh OTL đã có khả năng. Nếu đờng dẫn logic true không đợc tạo lập và bit tơng ứng trong bộ nhớ không đợc đặt trớc, thì bit đó không thay đổi với giá trị cũ. Nếu đờng dẫn logic True đã đợc tạo lập trớc thị bit tơng ứng đợc nạp 1 và giữ lại 1 hoặc đã có khả năng, loại trừ sau đó điều khiển thang đi vào False.
Khi bộ xử lý thay đổi từ chế độ Rem Run sang Rem Program hoặc khi mất nguồn thì đầu ra latch hoặc unlatch trong chơng trình sẽ còn lại trong bộ nhớ.
Lệnh Output Unlatch (OTU) Lệnh ra
OTU là các lệnh ra có nhớ. OTU chỉ có thể bật OFF một Bit. Nó không thể bật Bit lên 1. Lệnh này thờng đợc dùng đi đôi cùng với lệnh Output Latch (OTL), bằng cách địa chỉ đợc đánh cho cùng một Bit. Cũng có thể sử dụng lệnh này để đặt giá trị ban đầu cho số liệu ở mức Bit.
Khi gán địa chỉ cho lệnh OTU phù hợp với địa chỉ điểm cuối trên module ra, thiết bị đa ra nối vào điểm cuối này đợc giải phóng năng lợng, khi Bit tơng ứng bị xóa (bật xuống 0 hoặc không có khả năng).
Nếu đờng dẫn logic True đã đợc tạo lập với các lệnh đầu vào trong thang, lệnh OTU đã có khả năng. Nếu đờng dẫn logic True không đợc tạo lập và Bit tơng ứng trong bộ nhớ không đợc xóa trớc, thì Bit đó không thay đổi với giá trị cũ. Nếu đờng dẫn logic True đã đợc tạo lập trớc thì Bit tơng ứng đợc nạp mức OFF (0) và giữ lại 0 hoặc không có khả năng loại trừ sau đó điều khiển thang đi vào False.
Khi bộ xử lý thay đổi từ chế độ Rem Run sang Rem Program hoặc khi mất nguồn thì đầu ra latch hoặc unlatch hoặc unlatch trong chơng trình sẽ còn lại trong bộ nhớ.
Lệnh One-Shot Rising (OSR)
Lệnh vào
Lệnh OSR là một lệnh vào có nhớ để ghi sự kiện xảy ra lần đầu. Sử dụng lệnh OSR, khi sự kiện cần phải bắt đầu trên cơ sở thay đổi trạng thái của thang từ False sang True, chứ không phải trạng thái của kết quả. Các ứng dụng chứa sự bắt đầu các sự kiện đợc lật bằng công tắc phím ấn.
Các thông số của lệnh:
- Địa chỉ gán cho lệnh OSR không phải là địa chỉ one-shot, mà là đã qui chiếu bằng chơng trình ứng dụng. Địa chỉ này cho phép lệnh OSR nhớ trạng thái thang trớc đó. Các lệnh ra đứng sau OSR cũng sẽ đợc qui chiếu bằng chơng trình nh là "1 shot".
- Bit đã đánh địa chỉ đặt 1 trong suốt quá trình điều kiện thang trớc lệnh OSR là true. Bit bị xoá về 0 khi điều kiện thang trớc lệnh OSR là False. Bit địa chỉ sử dụng cho lệnh này phải là duy nhất. Không đợc sử dụng nó cho bất cứ nơi nào trong chơng trình. Không đợc sử dụng nó cho bất cứ nơi nào trong chơng trình.
II.3.2.Lệnh Timer và Counter II.3.2.1.Các thông số của lệnh
- Gía trị tích luỹ (ACC):
+ Đối với Timer đây là số khoảng thời gian cơ bản lệnh đã đếm đợc. + Đối với Counter đây là số lần chuyển đổi False sang True đã xảy ra. - Giá trị Preset (PRE):
+ Giá trị đặt là điểm ban đầu cho lệnh Timer hoặc Counter. Khi giá trị tích luỹ (ACC) bằng hoặc lớn hơn giá trị Preset (PRE) thì bit trạng thái thực hiện (done bit) đợc đặt lên 1. Có thể dùng Bit này để điều khỉên thiết bị đầu ra.
+ Cả giá trị tích luỹ ACC và giá trị Preset PRE có thể chọn trong phạm vi từ 0→ 32767 cho Timer. Nếu một trong hai giá trị này âm thì chơng trình sẽ chơng trình sẽ báo lỗi khi thực hiện.
Giá trị tích luỹ và gía trị đặt là từ -32768 đến +32767 cho Counter. - Giá trị Timebase:
TimeBase xác định khoảng thời gian cơ bản. Giá trị này có thể chọn là 0.01s (10ms) hoặc 1.0s.
III.3.2.2.Sử dụng Timer
Các phần tử tệp số liệu Timer.
Mỗi Timer có 3 từ (word) ở tệp số liệu. Word 0 là từ điều khiển chứa các Bit trạng thái. Word 1 chứa giá trị Preset, và word 2 chứa gía trị tích luỹ.
EN = Timer Enable Bit TT = Timer Timing Bit DN = Timer Done Bit
Lệnh Timer On-Delay (TON)
Giá trị Preset Giá trị tích luỹ En tt dn Sử dụng bên trong 15 14 13 Word 0 Word 1 Word 2
Lệnh ra
Sử dụng lệnh TON để làm trễ quá trình bật ON hoặc OFF của một đầu ra. Lệnh sẽ bắt đầu đếm khoảng thời gian cơ sở (Timebase) khi điều kiện của thang là True. Khi điều kiện thang vẫn là True thì Timer tăng giá trị tích luỹACC mỗi lần quét, cho đến khi nó bằng giá trị Preset (PRE). Giá trị ACC sẽ bị xóa khi điều kiện thang là Fasle, ngoại trừ Timer đếm hết.
Các Bit trạng thái
Bit Đợc đặt lên 1 khi: Bị xoá về 0 khi:
Timer Done Bit
DN (bit13) Giá trị ACC bằng hoặc lớn hơn gía trị PRE. Điều kiện của thang chuyển sang False.
Timer Enable Điều kiện của thang là True. Điều kiện của thang
chuyển sang False. Timer Timing Bit TT
(bit 15). Điều kiện của thang là True hoặc giá trị ACC nhỏ hơn giá trị PRE.
Điều kiện của thang chuyển sang False hoặc khi Bit done là 1.
Khi bộ điều khiển chuyển từ chế độ Rem Run hoặc Rem Test sang chế chế độ Rem Program, hoặc bị mất nguồn trong khi Timer đang đếm, nhng giá trị ACC vẫn nhớ hơn PRE thì:
- Bit EN vẫn đặt là 1 - Bit TT vân đặt là 1
- Giá trị ACC vẫn giữ giá trị cuối cùng
Khi ta quay trở lại chế độ Rem Run hoặc Rem Test thì:
Điều kiện Kết quả
Nếu thang là True Bit EN vẫn là 1
Bit TT vẫn là 1 Giá trị ACC bị xoá
Nếu thang là False Bit EN bị xóa về 0
Bit TT bị xoá về 0 Gía trị ACC bị xoá
Lệnh ra
Sử dụng lệnh TOF để bật đầu ra lên ON hoặc xuống OFF sau khi thang đạt đợc khoảng thời gian đặt trớc. Lệnh TOF sẽ bắt đầu đếm khoảng thời gian cơ sở (timebase), khi thang chuyển từ true-sang-false. Khi điều kiện của thang vẫn là False thì Timer tăng giá trị tích luỹ (ACC) ở mỗi lần quét cho đến khi bằng giá trị PRE. Giá trị ACC bị xoá khi thang là True, ngoại trừ Timer đếm hết.
Các bit trạng thái
Bit Đợc đặt lên 1 khi: Bị xoá về 0 khi:
Timer Done Bit DN (bit 13)
Điều kiện của thang là True. Điều kiện của thang chuyển sang False và giá trị ACC lớn hơn hoặc bằng giá trị PRE
Timer Timing Bit (bit 14)
Điều kiện của thang là False và giá trị ACC nhỏ hơn giá trị PRE.
Điều kiện của thang chuyển sang True hoặc Bit DN bị xóa.
Timer Enable Bit
(bit 15) Điều kiện của thang là True. Điều kiện của thang chuyển sang False. Khi bộ điều khiển chuyển từ chế độ Rem Run hoặc Rem Test sang chế độ Rem Program, hoặc khi mất nguồn, trong khi Timer vẫn đang đếm nhng giá trị ACC vẫn nhở hơn gía trị PRE thì:
- Bit EN vẫn đặt là 1 - Bit TT vẫn đặt là 1 - Bit DN vẫn đặt là 1
- Giá trị ACC vẫn giữ giá trị cuối cùng
Khi quay trở lại chế độ Rem Run hoặc Rem Test thì:
Điều kiện Kết quả
Nếu thang là True Bit TT bị xóa về 0
Bit DN vẫn đặt là 1 Bit EN vẫn đặt là 1 Giá trị ACC bị xoá
Nếu thang là False Bit TT bị xóa về 0
Bit DN vẫn đặt là 0 Bit EN vẫn đặt là 0
Giá trị ACC đợc thiết lập bằng gía trị PRE
Đại học Bách khoa Hà Nội - Điều khiển tự động - K46
15 14 13 12 11 10 9 8
Word 0 không sử dụng
Lệnh Reset (RES) không thể dùng với lệnh TOF vì nó xoá luôn các Bit trạng thái cũng nh các gía trị tích luỹ ACC.
Lệnh Retentive Timer On (RTO)
Lệnh ra
Sử dụng lệnh RTO để bật ON hoặc OFF một đầu ra, sau khi Timer đạt tới giá trị đặt PRE. Lệnh RTO là một lệnh có nhớ thực hiện bắt đầu đếm khi điều kiện thang là True. Trong lúc thang còn lại là True thì ACC tăng giá trị cho đến khi đạt đợc giá trị đặt PRE. Lệnh RTO vẫn giữ lại giá trị tích luỹ ACC khi xảy ra bất kỳ hiện tợng sau:
- Điều kiện của thang trở thành False.
- Thay đổi chế độ làm việc từ Rem Run hoặc Rem Test sang Rem Program. - Bộ điều khiển bị mất nguồn.
- Xảy ra lỗi khi thực hiện.
Các Bit trạng thái
Bit Đợc đặt lên 1 khi: Xoá bỏ về 0 khi:
Timer Done Bit DN
(bit 13) Gía trị ACC bằng hoặc lớn hơn giá trị PRE. Lệnh RES cùng địa chỉ đ-ợc cho phép. Timer Timing TT
(bit 14) Điều kiện của thang là True và giá trị ACC nhỏ hơn giá trị PRE.
Điêu kiện của thang chuyến sang False hoặc khi bit DN là 1.
Timer Enable Bit (bit15).
Điều kiện của thang là True. Điều kiện của thang chuyển sang False
Để reset lại giá trị ACC cũng nh các Bit trạng thái sau khi điều kiện chuyển sang False thì phải dùng một lệnh RES với cùng một địa chỉ trong một thang khác.
Khi bộ điều khiển chuyển từ chế độ Rem Run hoặc Rem Test sang chế độ Rem program hoặc Rem Fault, hoặc mất nguồn trong khi Timer vẫn đang đếm nhng giá trị ACC vẫn nhỏ hơn PRE thì:
- Bit EN vẫn là 1. - Bit TT vẫn là 1.
- Giá trị ACC vẫn giữ giá trị cuối cùng khi quay trở lại chế độ Rem Run hoặc Rem Test hoặc khi nguồn đợc phục hồi thì:
Điều kiện Kết quả
Đại học Bách khoa Hà Nội - Điều khiển tự động - K46
15 14 13 12 11 10 9 8Word 0 Word 0 Word 1 Word 2 không sử dụng 72
Nếu thang là True Bit TT vẫn là 1 Bit EN vẫn là 1
Giá trị ACC vân giữ giá trị cuối cùng
Nếu thang là False Bit TT bị xoá về 0
Bit DN vẫn giữ trạng thái cuối cùng Bit EN bị xoá về 0
Giá trị ACC vẫn giữ giá trị cuối cùng
III.3.2.3.Sử dụng Bộ đếm (Counter)
Các phần tử tệp số liệu của Counter: Mỗi một Counter gồm 3 phần tử word trong tệp số liệu. Word 0 là từ điều khiển, chứa các Bit trạng thái của lệnh. Word 1 là giá trị Preset (PRE). Word 2 là giá trị tích luỹ (ACC).
Từ điều khiển gồm 6 Bit trạng thái nh sau:
CU = Counter up enable bit CD = Counter down enable bit DN = Done bit
OV = Overflow bit UN = Underflow bit
UA = Update accumulated (chỉ cho HSC).
Giá trị ACC và PRE của Counter đợc cất thành số nguyên có dấu.
Cách làm việc của Counter
Hình sau giới thiệu cách làm việc của Counter. Giá trị đếm cần nằm trong khoảng từ -32768 tới +32767. Nếu giá trị đếm vợt quá +32767 hoặc nhỏ hơn -32768, thì bit trạng thái ovewflow (OV) hoặc underflow (UN) đợc đặt.
Counter bị xoá về 0 khi dùng lệnh RES.
Đại học Bách khoa Hà Nội - Điều khiển tự động - K46
15 14 13 12 11 10 9 8Word 0 Word 0 Word 1 Word 2 CU CD DN OV UN UA không sử dụng Giá trị đặt PRE Giá trị tích luỹ ACC
Lệnh Counter Up (CTU)
Lệnh ra
Lệnh CTU là lệnh ra có nhớ, nó đếm số lần chuyển đổi trạng thái của thang từ False sang True. Khi điều kiện của một thang chứa lệnh CTU thay đổi từ False sang Frue thì giá trị tích luỹ ACC sẽ tăng lên một, do đó thang đã đợc xác định số lần chuyển trạng thái. Khả năng của bộ đếm xác định số lần chuyển từ False sang True phụ thuộc vào tốc độ (tần số) của tín hiệu đầu vào.
Khoảng thời gian ON và OFF của tín hiệu đầu vào phải nhanh hơn hai lần thời gian quét (khoảng 50% chu kỳ thực hiện).
Các bit trạng thái:
- Count Up Overflow Bit OV (bit 12): đặt khi giá trị ACC trao đổi tới -32768 (từ +32767) và tiếp tục đếm lên từ đây.
- Done Bit DN (bit 13): Đặt khi giá trị ACC bằng hoặc lớn hơn giá trị PRE.
- Count Up Enable Bit CU (bit 15): Đặt khi điều kiện của thang là True. Xoá khi điều kiện của thang chuyển sang Flse hoặc một lệnh RES có cùng địa chỉ với CTU đợc cho phép.
Giá trị tích luỹ ACC vẫn giữ nguyên sau khi lệnh CTU hoặc CTD trở thành False, và khi mất nguồn.
Tất cả các Bit trạng thái của Counter: DN, OV và giá trị ACC là đợc nhớ khi nguồn đ- ợc hồi phục lại sau khi bị mất. Chúng đợc reset lại khi một lệnh RES cùng địa chỉ đợc cho phép. Bit CU và CD luôn đợc set lên 1 khi chuyển sang chế độ Rem Run hoặc Rem Test.
Đại học Bách khoa Hà Nội - Điều khiển tự động - K46
Underflow Overflow
-32768 0 +32767
Counter Accumulator Value
Count Down (CTD) Counter Up (CTU) 15 14 13 12 11 10 9 8 Word 0 74
Lệnh Counter Down (CTD)
Lệnh ra
Lệnh CTD là lệnh ra có nhớ dùng để đếm số lần chuyển đổi của thang từ False sang