Giới thiệu về bộ đếm CTU
Thông số | Kiểu dữ liệu | Vùng nhớ S7-1200 | Vùng nhớ S7-1500 |
CU | BOOL | I, Q, M, D, L hoặc hằng số | I, Q, M, D, L hoặc hằng số |
R | BOOL | I, Q, M, D, L, P hoặc hằng số | I, Q, M, T, C, D, L, P hoặc hằng số |
PV | Integers | I, Q, M, D, L, P hoặc hằng số | I, Q, M, D, L, P hoặc hằng số |
Q | BOOL | I, Q, M, D, L | I, Q, M, D, L |
CV | Integers, CHAR, WCHAR, DATE | I, Q, M, D, L, P | I, Q, M, D, L, P |
-
- Khi trạng thái tín hiệu đầu vào CU thay đổi từ False sang True thì lệnh được thực thi, và giá trị bộ đếm hiện tại ở đầu ra CV được tăng lên 1 đơn vị.
- Giá trị bộ đếm được tăng lên mỗi khi phát hiện thấy thái tín hiệu đầu vào CU thay đổi từ False sang True.
- Khi đạt đến giới hạn PV đặt trước, trạng thái tín hiệu ở đầu vào CU không còn ảnh hưởng đến lệnh.
- Giá trị CV chỉ tăng đến giới hạn cao của kiểu dữ liệu đang chỉ định.
- Trạng thái tín hiệu ở đầu ra Q được xác định bởi tham số PV. Nếu giá trị bộ đếm CV hiện tại lớn hơn hoặc bằng giá trị của tham số PV thì đầu ra Q chuyển thành trạng thái tín hiệu True. Trong tất cả các trường hợp khác, đầu ra Q có trạng thái tín hiệu False.
- Giá trị ở đầu ra CV được đặt lại về 0 khi trạng thái tín hiệu ở đầu vào R thay đổi thành True. Miễn là đầu vào R có trạng thái tín hiệu True thì trạng thái tín hiệu ở đầu vào CU không ảnh hưởng đến lệnh.
Ví dụ:
Mô tả : Lệnh CTU thực hiện như sau:
-
- Nếu trạng thái tín hiệu “TagIn_1” thay đổi từ False sang True thì giá trị “Tag_CV” tăng lên 1 đơn vị.
- Khi giá trị “Tag_CV” tăng dần đến khi lớn hơn hoặc bằng giá trị “Tag_PV”
- Khi giá trị “Tag_CV” lớn hơn hoặc bằng giá trị “Tag_PV” thì trạng thái tín hiệu “TagOut” bằng True.
- Khi trạng thái tín hiệu “TagIn_2” bằng True thì trạng thái tín hiệu “TagOut” bằng False và giá trị “Tag_CV” bằng 0.