20 / 100

Phần 3- Học các tập lênh với ngôn ngữ Ladder

GIỚI THIỆU:

1. Bit logic operations

lap trinh bit logic

Số Diễn giải
1 Tiếp điểm thường hở NO
2 Tiếp điểm thường đóng NC
3 Đảo trạng thái ngay sau lệnh NOT
4 Bit trả về (tagout) hay hiểu là cuộn coil
5 Đảo trạng thái ngay bit trả về (tagout) hay cuộn coil
6 Reset bit về false (0)
7 Set bit lên true (1)
8 SET_BF Set 1 chuỗi các bit
9 RESET_bf Reset 1 chuỗi các bit
10/11 SR/RS Set/reset flip-flop
12 Lấy 1 xung cạnh lên
13 Lấy 1 xung cạnh xuống
14/15 Set tagout on chỉ 1 xung lên hay 1 xung xuống

 

2. Timer operations:

lap trinh timer

Số Diễn giải
1 TP- Tạo 1 xung on ở đầu ra Q trong thời gian PT set khi đầu vào IN kích on
2 TON- Timer on Delay, on ở đầu ra Q sau 1 thời gian đặt PT khi đầu vào IN kích on, khi IN kích off thì đầu ra Q off
3 TOF- Timer off Delay, bình thường on ở đầu ra Q khi IN kích, sau 1 thời gian đặt PT khi đầu vào IN kích off thì đầu ra Q sẻ off,
4 TON- Timer on Delay cần Reset, on ở đầu ra Q sau 1 thời gian đặt PT khi đầu vào IN kích on, khi IN kích off thì đầu ra Q vẫn on, đầu ra Q chỉ off khi kích Reset

 

3. Counter operations

lap trinh counter

Số Diễn giải
1 CTU- counter up: đếm lên khi đầu vào CU on 1 xung lên, PV là giá trị preset Value đặt ngưỡng đếm, giá trị đếm >=PV thì Output Q sẻ on, CV thể hiện giá trị đang đếm tới, Reset để trả giá trị đếm về 0
2 CTD- counter down: đếm xuống khi đầu vào CD on 1 xung lên, PV là giá trị preset Value đặt ngưỡng đếm, giá trị đếm <=0 thì Output Q sẻ on, CV thể hiện giá trị đang đếm tới, LD on lên thì giá trị PV sẻ được load vào giá trị đang đếm của counter.
3 CTUD- counter up/down: đếm lên khi đầu vào CU on 1 xung lên, đếm xuống khi đầu vào CD on 1 xung lên, các chưng năng khác tương tự CTU, CTD
   

 

4. Comparator operations

lap trinh compare

Số Diễn giải
1 CMP== So sánh 2 giá trị bằng nhau hay không
2 CMP<> So sánh 2 giá trị khác nhau hay không
3 CMP>= So sánh giá trị 1 >= giá trị 2 hay không
4 CMP<= So sánh giá trị 1 <= giá trị 2 hay không
5 CMP> So sánh giá trị 1 > giá trị 2 hay không
6 CMP< So sánh giá trị 1 < giá trị 2 hay không
7 In_Range So sánh giá trị VAL có nằm trong khoảng từ giá trị MIN tới MAX hay không
8 OUT_Range So sánh giá trị VAL có nằm ngoài khoảng từ giá trị MIN tới MAX hay không
9 OK Kiểm tra giá trị có phải là số thực floating-point
10 NOT_OK Kiểm tra giá trị không phải là số thực floating-point

 

5. Math functions

 

lap tirnh math

Số Diễn giải
1 CALCULATE- hàm tính toán OUT theo các IN1, IN2….. theo 1 hàm bạn tự thiết lập +, -, *, /
2 ADD- phép cộng +
3 SUB- phép trừ –
4 MUL- phép nhân *
5 DIV- phép chia /
6 MOD- phép chia trả về Out là số dư
7 NEG- đảo giá trị vào IN âm thành dương và dương thì thành âm ở đầu ra OUT
8 INC – tăng giá trị IN/OUT lên 1 đơn vị khi EN kích on 1 xung cạnh lên
9 INC – giảm giá trị IN/OUT xuống 1 đơn vị khi EN kích on 1 xung cạnh lên
10 ABS- trả về giá trị OUT luôn dương
11 MIN- trả về giá trị IN nhỏ nhất ở đầu ra OUT trong số 1 loạt các IN đầu vào
12 MAX- trả về giá trị IN lớn nhất ở đầu ra OUT trong số 1 loạt các IN đầu vào
13 LIMIT- trả về giá trị IN ở đầu ra OUT nếu IN nằm trong giới hạn ở giá trị MN (min) và MX (max)
14 SQR- bình phương bậc 2
15 SQRT- căn bậc 2
16 LN- logarithm cơ số e = 2.718282
17 EXP- trả về giá trị OUT= e (2.718282) mũ IN
   

 

6. Move operations

lap trinh move

Số Diễn giải
1 MOVE- copy giá trị ở IN sang OUT
2-3 Deserialize/Serialize- copy một chuỗi hay 1 cấu trúc data
4 MOVE_BLK- move block, copy toàn bộ dữ liệu từ data block này qua data block khác.
5 MOVE_BLK_VARIANT- move block, copy dữ liệu từ data block này qua data block khác có tùy biến lựa chọn data để copy.
6 UMOVE_BLK- Move block uninterruptible, hàm copy dữ liệu từ Array IN qua Array Out với số lượng biến là COUNT, và hàm này sẻ được gọi bất chấp việc có chương trình ngắt khác diễn ra mà không bị ảnh hưởng.
7 FILL_BLK: Fill block- copy giá trị IN vào chuỗi các biến ở OUT với số biến là COUNT, tức là số phần tử của chuỗi Array OUT (COUNT phần tử) sẻ bị ghi lên cùng 1 giá trị IN.
8 UFILL_BLK: Fill block uninterruptible- cũng như hàm FILL_BLK nhưng nó sẻ không bị ngắt bởi chương trình ngắt khác.
9 SCATTER: Parse the bit sequence into individual bits- copy dữ liệu IN  (BYTE, WORD, DWORD) và đẩy ra OUT (ARRAY[*] of BOOL) với kiểu ở OUT là 1 chuỗi các bit.
11 GATHER, ngược lại với SCATTER là hàm này sẻ gop chuỗi các bit lại để thành 1 giá trị BYTE, WORD hay DWORD
13 SWAP: đảo thứ tự sắp xếp ngược lại của các bit ở biến IN và cho ra OUT

 

 

7. Convertion operations

lap trinh convertions

Số Diễn giải
1 CONVERT- hàm chuyển đổi các kiểu dữ liệu qua lại, kiểu chuyển cài ngay trên hàm
2 ROUND- hàm làm tròn số
3 CEIL- dựa vào giá trị số floating-point ở IN để có được giá trị số interger ở OUT có giá trị lớn hơn gần đó nhất. ví dụ IN là 0.3 thì OUT là 1
4 FLOOR- ngược lại với CEIL là tạo ra ở OUT có giá trị bé hơn gần nhất, ví dụ IN là 0.3 thì OUT là 0.
5 TRUNC-hàm loại bỏ phần thập phân để làm tròn số ở OUT
6 SCALE_X/NORM_X: 2 hàm này kết hợp tạo thành hàm y-ax+b để làm scale giá trị Analog trả về.

 

8. Program control

lap trinh program control

Số Diễn giải
1 JMP- nhảy tới 1 lable khác trong chương trình nếu được active lên 1
2 JMPN- nhảy tới 1 lable khác trong chương trình nếu được deactive xuống 0
3 LABEL- nhãn để lệnh JMP nhảy tới
4 JMP_LIST- Tạo 1 list các LABEL ở DEST0, DEST1…., việc nhảy tới DES nào là do hệ số K chỉ định, 0 là DES0, 1 là DES1… và tất nhiên lệnh được thực thi khi EN được active lên 1
5 SWITCH- nhảy tới DES nào là do hệ số K chỉ định với điều kiện tương ứng
6 RET- return, trả về giá trị true hay false ở đầu ra ENO của 1 khối hàm được gọi

 

9. Word logic

lap trinh word logic

10. Shift and Rotate

lap trinh shift and rotate

 

PHẦN 4- CÁC KIỂU BẢO MẬT TRONG LẬP TRÌNH PLC S7

Mời bạn comment góp ý để chúng tôi hoàn thiện khóa học được tốt hơn, cám ơn,

 373 total views