- Bộ đếm sẽ tăng giá trị của PV lên 1 mỗi khi đầu vào II Increment Input chuyển từ Off lên On, khi PV bằng giá trị đặt SV, PV được Reset về 0 và counter sẽ lên On cho đến khi bộ đếm lại
Trang 2Lệnh Timer “TIM”
( On-delay)
TIM N S
N: số của timer N=0~4095
S: giá trị đặt SV=#0~9999
- Có thể đặt SV cho timer theo word
của các vùng nhớ
- Có thể chỉnh đinh giá trị của timer
bằng cách thay đổi giá trị của word
A642 thông qua việc sử dụng nút
chỉnh Analog được tích hợp sẳn trên
CP1L
Độ phân giải của Timer là 100ms Khi đó giá trị đặt của Timer là SV=#000.0~999.9s
CPL1/1H Các Lệnh cơ Bản
Trang 3Bài tập ví dụ
- Khi đầu vào Input chuyển từ Off lên On thì timer bắt đầu định thời, giá trị PV sẽ giảm dần từ SV xuống.
- Khi giá trị PV=0 thì Timer bit sẽ bật lên On.
- Khi đầu vào của Timer Off thì timer được Reset đồng thời ngõ ra cũng Off theo.
Giá trị tức thời
(PV)
Trang 4Lệnh High Speed Timer “TIMH”
TIMH(015)
N S
N: số của timer N=0~4095
SV: giá trị đặt S=0~9999
- Có thể đặt SV cho timer theo word
của các vùng nhớ
- Có thể chỉnh đinh giá trị của timer
bằng cách thay đổi giá trị của word
A642 thông qua việc sử dụng nút
chỉnh Analog được tích hợp sẳn trên
CP1L/1H
Độ phân giải của Timer là 10ms Khi đó giá trị đặt của Timer là V=0~99.99s
Trang 5Bài tập ví dụ
- Khi đầu vào Input chuyển từ Off lên On thì timer bắt đầu định thời, giá trị PV sẽ giảm dần từ giá trị của SV về 0.
- Khi giá trị PV=0 thì Timer Bit sẽ bật lên On.
- Khi đầu vào của Timer Off thì timer được Reset đồng thời ngõ ra cũng Off theo.
Giá trị tức thời(PV)
Trang 6CPL1/1H Các Lệnh cơ Bản
Lệnh Counter (CNT)
(đếm xuống) SV
N CNT
- Counter input: ngõ vào kích hoạt counter đếm.
- Reset input: ngõ vào Reset couter
- N: số của counter N=0~4095
- SV: giá trị đặt SV=0~9999
- Có thể đặt SV cho counter theo word của các
vùng nhớ
- Có thể chỉnh giá trị của counter bằng cách thay
đổi giá trị của word A642 thông qua việc sử dụng
nút chỉnh Analog được tích hợp sẳn trên
CP1L/1H.
Counter input
Reset input
Trang 7Bài tập ví dụ
- Khi điều kiện ngõ vào của Counter chuyển từ Off On counter sẽ giảm
từ SV xuống 1 giá trị
- Khi giá trị PV=0 thì counter bit sẽ On và giữ luôn, lúc này counter sẽ
không tác động khi đầu vào On hoặc Off.
- Bộ đếm sẽ Reset PV về giá trị đặt SV khi đầu vào Reset chuyển từ Off
lên On
Giá trị tức thời
(PV)
Trang 8CPL1/1H Các Lệnh cơ Bản
Lệnh Reversible Counter (CNTR(12))
SV N
CNT(012)
Reset
- II: Đầu vào đếm tăng
- DI: Đầu vào đếm giảm
- R: Đầu vào Reset
- N: số của counter N=0~4095
- SV: giá trị đặt SV=#0~9999
- Có thể đặt SV cho Reversible counter
theo word của các vùng nhớ
Trang 9- Bộ đếm sẽ tăng giá trị của PV lên 1 mỗi khi đầu vào II (Increment Input) chuyển từ Off lên
On, khi PV bằng giá trị đặt SV, PV được Reset về 0 và counter sẽ lên On cho đến khi bộ đếm lại tiếp tục đếm tăng.
- Bộ đếm sẽ giảm PV đi 1 mỗi khi đầu vào DI chuyển từ Off lên On, khi bộ đếm giảm đến 0, giá trị hiện tại của PV được gán cho SV và counter bit sẽ lên On cho đến khi bộ đếm lại giảm về 0.
- Bộ đếm sẽ Reset PV về 0 khi đầu vào R chuyển từ Off lên On.
- Khi cả hai II và DI đều chuyển từ Off lên On, bộ đếm vẫn giữ nguyên giá trị.
Trang 10CPL1/1H Các Lệnh cơ Bản
Lệnh DIFU/DIFD
B
DIFU (013)
B
DIFD (014)
Input
Cycle time
DIFU
DIFD
- Lệnh DIFU sẽ bật Bit B On trong một chu kỳ quét chương
trình, khi điều kiện ngõ vào tác động cạnh lên.
- Lệnh DIFD sẽ bật Bit B On trong một chu kỳ quét chương trình, khi điều kiện ngõ vào tác động cạnh xuống.
Trang 12CPL1/1H Các Lệnh cơ Bản
Bài tập ví dụ
Bit đi kèm sẽ lên 1 khi điều kiện thực hiện 0.00 chuyển từ Off sang On Sau đó bit lại trở về trạng thái Off
Trang 13Lệnh DIFD
B
DIFD (014)
B: Bit
B: ta có thể đặt các địa chỉ sau IO,
W, A, H, IR
Lệnh này sẽ bật bit đi kèm lên 1 trong
vòng một chu kỳ quét khi điều kiện thực
hiện chuyển từ On lên Off Sau đó bit lại
trở về trạng thái Off
Trang 14CPL1/1H Các Lệnh cơ Bản
Bài tập ví dụ
Bit đi kèm sẽ lên 1 khi điều kiện thực hiện 0.00 chuyển từ On sang Off Sau đó bit lại trở về trạng thái Off
Trang 15Lệnh KEEP
B
KEEP (011)
B: Bit
B: ta có thể đặt các địa chỉ sau IO, W, A, H, IR
Set
Reset
Lệnh Keep hoạt động như một rơle chốt Bit B sẽ được Set On khi đầu vào S là On và
sẽ vẫn giữ ở On cho đến khi đầu vào R là On (Bit B bị Reset về Off)
Trang 17Lệnh Interlock_Interlock Clear
IL (02) ILC (03)
Khóa tất cả các ngỏ
ra giữa IL(02) và IL(03) khi thực hiện lệnh
-Lệnh IL và ILC luôn đi kèm với nhau
-Khi điều kiện thực hiện của lệnh IL là On thì chương trình vẫn được thực hiện bình thường
-Khi điều kiện thực hiện của lệnh này là Off, tất cả các lệnh theo sau lênh IL cho đến lệnh ILC đều được thi hành với điều kiện thực hiện là Off
Trang 18CPL1/1H Các Lệnh cơ Bản
Bài tập ví dụ
-Khi 0.02 Off ngõ ra 100.01, 100.02 được thi hành với điều kiện là Off
-Các ngõ ra nằm ngoài lênh IL
và ILC vẩn được thực hiện với điều kiện bình thường
Trang 19-Khi 0.02 On ngõ ra 100.01, 100.02 được thưc hiện bình thường
-Các ngõ ra nằm ngoài lênh IL
và ILC vẩn được thực hiện với điều kiện bình thường
Bài tập ví dụ
Trang 20CPL1/1H Các Lệnh cơ Bản
Lệnh JUMP_JUMP END
N
JMP (004)
N: Số bước nhảyN: CIO, A, H, W, IR
N
JME (005)
N: Số bước nhảyN: CIO, A, H, W, IR
Mỗi lệnh JUMP gồm cặp lệnh JMP và JME có số từ 00 đến 6143, JMP và JME luôn đi kèm với nhau Khi chương trình gặp lênh JMP n (n: số của lệnh ), nó sẽ bỏ qua không thực hiện các lệnh theo sau lệnh này cho đến lệnh JME n có cùng số Khi gặp lệnh JME chương trình sau đó lại thực hiện bình thường Mặc dù hoạt động của lệnh JUMP khá giống với lệnh Interlock kh điều kiện thực hiện của lệnh
IL là Of, nhưng đối với lệnh JMP, các toán tử giữa lệnh JMP và JME không bị Off
mà vẩn giữ nguyên trạng thái trước khi thực hiện lệnh JUMP này
Trang 22CPL1/1H Các Lệnh cơ Bản
-Khi 0.01 On thì100.01 được thực hiện bình thường
-Các ngõ ra nằm ngoài lênh JMP và JME được thực hiện bình thường
Bài tập ví dụ
Trang 23Ngõ ra 100.01 vẫn giữ nguyển trạng thái trướt khi thực hiện lệnh JUMPhiện 0.01 Off
Force Off bit 0.02 nhưng 100.02 vẩn giữ
nguyên trạng thái
Trang 24CPL1/1H Các Lệnh cơ Bản
Lệnh copy dữ liệu MOVE Word (021)
D S
MOVE
-S= là địa chỉ của word nguồn
-D= là địa chỉ của word đích
-Coppy nội dung của S vào D
Khi lệnh MOVE có điều kiện thực hiện là On, lệnh này sẽ copy hằng
số hoặc nội dung của word có địa chỉ chỉnh định bởi S sang word có địa chỉ chỉ định D nội dung của word nguồn S không thay đổi khi thực hiện lệnh này
Trang 25Bài tập ví dụ
Nội dung của Counter C0 được coppy sang H0 mỗi khi
đầu vào của C0 được tác động
Giá trị của C0 được coppy vào H0
Trang 26CPL1/1H Các Lệnh cơ Bản
Lệnh so sánh (020)
CP2 CP1
Trang 27Bài tập ví dụ
Gán giá trị 10 vào vùng nhớ D0
Tăng giá trị của C0 lên (11) bằng cách lần lượt Force On/Force Off 0.00
Tại thời điểm này do CP1>Cp2 nên cờ nhớ lớn hơn P_GT(CF005) ON và do
đó ngõ ra 100.00 ON theo
Trang 28CPL1/1H Các Lệnh cơ Bản
Lệnh copy dữ liệu MOVE Digit (083)
D C S
MOVD (083)
-S: Word nguồn
-C: Word điều khiển
-D: Word đến
-Coppy nội dung từ S đến D Chỉ những
Digit được chỉ định mới thay đổi nội dung
các Digit khác không đổi
Chỉ định Digit đầu tiên cần coppy trong S(0~3) Chỉ định số Digit cần coppy
Control word
Trang 29• Chỉ định Digit 0 là Digit đầu tiên cần coppy trong H0
• Chỉ định 2 Digit cho việc coppy
• Chỉ định Digit 2 là Digit đầu tiên cần
bỏ vào trong DGiá trị được chuyển đến D0 là CD00 (khi
ta Force On bit 0.02
Trang 30CPL1/1H Các Lệnh cơ Bản
Lệnh cộng BCD (404)
R Ad Au
+B (404)
-Au: word được cộng
-Ad: word cộng
-R : word kết quả
-Khi có điều kiện thực hiện lệnh là On,
lệnh cộng nội dung trong Au và Ad sau
đó gán kết quả ra R
Trang 31Lệnh DIFU được dùng nhằm làm cho W0.00 chỉ On một lần để thực hiện lệnh cộng bên dưới.
Giá trị 100 được cộng vào vùng nhớ D6 đồng thời gán kết quả ra D6
Nếu ta Force On bit 0.03 thì timer bắt đầu định thời (giá trị trong D6)
Trang 32CPL1/1H Các Lệnh cơ Bản
Lệnh trừ BCD (414)
R Su Mi
- B (414)
-Mi: word bị trừ
-Su: word trừ
-R : word kết quả
-Khi có điều kiện thực hiện lệnh là On,
lệnh trừ nội dung trong Su cho Mi sau
đó gán kết quả ra R
Trang 33Lệnh DIFU được dùng nhằm làm cho W0.00 chỉ On một lần để thực hiện lệnh trừ bên dưới.
Khi có điều kiện thực hiện lệnh là
On, lệnh trừ được thực hiện và kết quả (50) được gán ra D10
Nếu ta Force On bit 0.01 thì timer bắt đầu định thời (giá trị trong D10)
Trang 34CPL1/1H Các Lệnh cơ Bản
Lệnh nhân BCD (424)
R Mr Md
*B (424)
-Md: word bị nhân-Mr: word nhân
Trang 35Trướt khi lệnh nhân được thực hiệnCP1<CP2 nên cờ nhớ nhỏ hơn P_LT (CF007) On do đó ngõ ra 100.00 On
Trang 37R Dr Dd
/B (434)
-Dd: word bị chia
-Dr: word chia
-R : word kết quả
-Khi có điều kiện thực hiện lệnh là On,
lệnh thực hiện việc chia nội dung trong
Dd (word bị chia) cho Dr (word chia)
sau đó gán kết quả ra R
Trang 38CPL1/1H Các Lệnh cơ Bản
Bài tập ví dụ
Trướt khi lệnh chia được thực hiệnCP1<CP2 nên cờ nhớ nhỏ hơn P_LT (CF007) On do đó ngõ ra 100.00 On
Trang 39Khi bit 0.00 On Lệnh chia được thực hiện Kết quả của phép chia được gán cho D30 (80) Lúc này CP1=CP2 nên cờ nhớ lớn hơn P_EQ (CF006) On do đó ngõ ra 100.01 On
Trang 40CPL1/1H Các Lệnh cơ Bản
Lệnh Mode Control :
NV C P
@INI (880)
P: Chỉ định cổng phát xung, hoặc ngõ vào đếm tốc độc cao
C: Word điều khiển
NV: Word đầu tiên chưa giá trị hiện thời
NV & NV+1: Chứa giá trị PV mới, khi C= 0002 Hex ( Change the PV)
Trang 41C=0000 Hex : Start comparision : Lệnh INI(880) bắt đầu so sánh giá trị PV của high
speed counter Theo bảng đăng kí trong lệnh (CTBL(882)
C=0001 Hex : Stop comparision : Lệnh INI(880) dừng so sánh giá trị PV của high speed counter Theo bảng đăng kí trong lệnh (CTBL(882)
⇒ Ghi Chú : các giá trị cần so sánh này phải được đăng ký trong bảng so sánh của lệnh CTBL (882), như vậy trong khi C=0000 Hex, hoặc C=0001 Hex, luôn luôn phải kèm theo lệnh CTBL(882)
C=0002 Hex: cho phép thay đổi giá trị PV của các lệnh phát xung, High speed counter, hoặc ngõ vào ngắt.
Trang 42CPL1/1H Các Lệnh cơ Bản
Khi C=0003 Hex : Lệnh INI (880) thực hiện ngắt ngõ ra phát xung của các port
0000 đến 0003, hoặc 1000 & 1001, tùy theo giá trị cài đặt
Lệnh Speed sẽ thực hiện phát xung, khi điều kiện ngõ vào của lệnh
INI(880) On, thì ngõ ra phát xung 0000 ( địa chỉ 100.00) sẽ bị ngắt
Chế độ dừng phát xungCổng phát xung 0000
Trang 43F M P
Trang 44CPL1/1H Các Lệnh cơ Bản
-Ở chế độ : Continue Mode : Xung sẽ được phát liên tục cho đến khi dừng chương
trình
- Ở Chế độ : Independent Mode: Xung sẽ được phát ra liên tục cho đến khi số
lượng phát xung phát ra bằng số lượng xung cài đặt ở lệnh SET SPULSE
(PULS(881)) Xung sẽ không phát ra nếu không cài đặt lệnh PULS(881) trước.
Independent Mode
Cổng phát xung 0000
Cài đặt số lượng xung phát ra
Cổng phát xung 0000
Trang 45lệnh SPED hoặc ACC ở chế độ Independent
N T P
@PULS(886)
P : Chỉ định cổng phát xung,
T : Cài đặt loại xung phát
F : Word đầu tiên để cài số
lượng xung phát ra
Trang 46CPL1/1H Các Lệnh cơ Bản
Mr Huỳnh Quang Khải – 0988 656 677