Bài giảng
PLC và Mạng Công NghiệpPLC and Industrial system
(ME 4501)
Giảng viên: TS Nguyễn Anh Tuấn Khoa Cơ điện tử – ĐHBK Hà nội
Email: tuan.nguyenanh@hust.edu.vn bktuan2000@gmail.com
Web: www.aps.edu.vn (Hệ thống sản xuất tự động) 1 Cơ sở cho điều khiển logic
4 Các mô đun vào ra
1
Trang 25.1 Cấu trúc chung của bộ nhớ PLC
5.2 Cấu trúc chương trình
5.3 Các nhóm lệnh cơ bản
5.4 Tạo dự án - Các ứng dụng
5 Kỹ thuật lập trình Quy trình thiết kế chương trình PLC
Bước 1: Xác định quy trình công nghệ:
+ Xác định các yêu cầu công nghệ của hệ thống cần điều khiển, tìm hiểu sơ đồ công nghệ Các thức điều khiển, vận hành và hướng khắc phục sự cố nếu có.
+ Xác định số lượng các thiết bị đầu vào và ra của hệ thống điều khiển
Bước 2: Thiết kế
+ Lựa chọn phần cứng của PLC để đáp ứng các yêu cầu điều khiển từ bước 1 bao gồm: Số lượng I/O lô gíc, tương tự; các I/O đặc biệt (HSC, PWM); phương thức truyền thông (inthernet, profilbus, Modbus, RS 232,…); tốc độ xử lý; dung lượng bộ nhớ
+ Phân địa chỉ tín hiệu: phân các biến I/O theo chức năng (các biến có cùng trình tự tác động, hoặc cùng một đối tượng nên có địa chỉ gần nhau)
=> sơ đồ đấu dây phần cứng
3
Trang 3 Quy trình thiết kế chương trình PLC
Bước 3: Lập trình điều khiển
+ Tổng hợp các hàm lô gíc
=> sử dụng ngôn ngữ LAD, FBD, IL + Viết dưới dạng Grafcet
=> ngôn ngữ SFC
+ Lưu đồ thuật toán => ngôn ngữ ST
Bước 4: Nạp chương trình và kiểm tra
+ Chạy CT với các tín hiệu giả lập bằng chương tình mô phỏng
+ Sửa chữa lỗi CT
Bước 5: Chạy chương trình và vận hành
+ Chạy thử từng bộ phận riêng lẻ, không tải + Chạy thử từng bộ phận có tải
+ Chạy thử toàn hệ thống không tải + Chạy thử toàn hệ thống có tải
Bước 6: Viết tài liệu hướng dẫn
Trang 4 Khái niệm
5.1 Cấu trúc chung của bộ nhớ PLC
- Bộ nhớ là nơi lưu trữ chương trình điều khiển cùng với các thông tin có thể truy
- Bộ nhớ của PLC có thể được hiển thị bằng một mảng hai chiều của các tế bào nhớ,
mà mỗi tế bào có thể chứa một Bit đơn của thông tin dưới dạng là giá trị 0 hay 1.
- Một byte được định nghĩa là một nhóm nhỏ nhất của các bit mà CPU có thể xử lý được đồng thời trong một lần.
- Các bộ nhớ được yêu cầu trong các trường hợp: làm bộ định thời gian cho các kênh trạng thái I/O, làm bộ đệm trạng thái các chức năng trong PLC như định thời, đếm, ghi các rơ le.
- Mỗi lệnh của chương trình có một vị trí riêng trong bộ nhớ và được đánh số, nó chính là địa chỉ của bộ nhớ.
- Địa chỉ của từng ô nhớ sẽ được trỏ đến bởi một bộ đếm địa chỉ ở bên trong vi xử lý
5 Kỹ thuật lập trình Thẻ nhớ
5.1 Cấu trúc chung của bộ nhớ PLC
Thẻ nhớ là một thành phần quan trọng trên CPU: Có chức năng chứa chương trình, dữ liệu, thông số từ
PC chuyển xuống và chuyển sang RAM trong CPU
Thẻ nhớ được reset bằng SIMATIC Manager V5.x, TIA Portal kết hợp Simatic field PG hoặc đầu đọc thẻ nhớ
7
Trang 5 Vùng nhớ
5.1 Cấu trúc chung của bộ nhớ PLC
Vùng nhớ chương trình (Load memory): kích thước bằng
kích thước thẻ nhớ Được sử dụng để lưu trữ blocks, datablock, cấu hình và thông số hardware.
Vùng nhớ làm việc (working memory): là RAM, được
tích hợp trong CPU và không thể mở rộng Được sử dụng để thi hành code và dữ liệu chương trình người dùng.
Vùng nhớ hệ thống (system memory): được tích hợp
trong CPU và không thể mở rộng Phục vụ cho chương trình người dùng, bao gồm: timer, counter, vùng nhớ M, local data, process image I/Q.
Vùng nhớ lưu giữ (Retentive memory data): dữ liệu trong
các DBs được lưu trữ, ngay cả khi mất điện CPU và có điện trở lại, dữ liệu trong các DBs vẫn được duy trì giống như cài đặt trước đó.
5 Kỹ thuật lập trình Cấu trúc bộ nhớ
5.1 Cấu trúc chung của bộ nhớ PLC Cấu trúc thanh ghi
1 đoạn thanh ghi = 1 byte (B) = 8 bit 1 word (W) = 2 byte = 16 bit
1 Doubleword (DW) = 2 Word = 4 byte = 32 bit
Các kiểu dữ liệu
9
Trang 7 Cấu trúc bộ nhớ
5.1 Cấu trúc chung của bộ nhớ PLC Các vùng nhớ
Vùng nhớ chứa chương trình ứng dụng:
+ OBx (Organization Block): chứa chương trình chính.
OB1Khối tổ chức chính, mặc định, thực thi vòng lặpOB10 Được thực hiện khi có tín hiệu thời gian ngắt
OB 20 Được thực hiện sau một khoảng thời gian đặt trước
OB 35 Khối ngắt theo chu kỳ định trước
OB 40 Được thực hiện khi tín hiệu ngắt cứng ở ngõ vào
+ FC (Program block): Chứa chương trình con được tổ chức thành hàm và có khả năng
trao đổi dữ liệu với bất kỳ 1 khối chương trình nào khác.
+ FB (Function Block): Chứa chương trình con được tổ chức thành hàm và có khả năng
trao đổi dữ liệu với bất kỳ 1 khối chương trình nào khác Các dữ liệu này phải được xây dựng thành một khối dữ liệu riêng (Data Block khối DB).
5 Kỹ thuật lập trình Cấu trúc bộ nhớ
5.1 Cấu trúc chung của bộ nhớ PLC Các vùng nhớ
Vùng nhớ chứa tham số hệ điều hành
+ I (Process image Input): Miền dữ liệu các cổng vào số, trước khi bắt đầu thực hiện
chương trình, PLC sẽ đọc giá trị lô gíc của tất cả các cổng đầu vào và cất chúng trong 1 vùng nhớ I.
+ Q (Process image Output): Miền bộ đệm các dữ liệu cổng ra số Kết thúc giai đoạn
thực hiện chương trình, PLC sẽ chuyển giá trị lô gíc của bộ đệm Q tới các cổng ra số.
+ M (Memory): Miền các biến cờ Do vùng nhớ này không mất sau mỗi chu kỳ quét nên
chương trình ứng dụng sẽ sử dụng vùng nhớ này để lưu các tham số cần thiết Nó có thể truy cập theo bit (M), byte (MB), theo từ (MW), hay từ kép (MD)
13
Trang 8 Cấu trúc bộ nhớ
5.1 Cấu trúc chung của bộ nhớ PLC Các vùng nhớ
Vùng nhớ chứa tham số hệ điều hành
+ T (Timer): Miền nhớ phục vụ bộ thời gian bao gồm việc lưu trữ giá trị thời gian đặt
trước, giá trị đến thời gian tức thời cũng như giá trị lô gíc đầu ra của bộ thời gian.
+ C (Counter): Miền nhớ phục vụ bộ đếm bao gồm việc lưu trữ giá trị đặt trước, giá trị
đếm tức thời và giá trị lô gíc đầu ra của bộ đếm.
+ PI: Miền địa chỉ cổng vào của các module tương tự Các giá trị tương tự tại cổng vào
của module tương tự sẽ được module đọc và chuyển tự động theo địa chỉ Chương trình ứng dụng có thể truy cập miền nhớ PI theo Byte (PIB), từng từ PIW hoặc từ kép PID.
+ PQ: Miền địa chỉ cổng ra cho các module tương tự Các giá trị theo những những địa
chỉ này sẽ được chuyển tới các cổng ra tương tự Chương trình ứng dụng có thể truy nhập miền nhớ PQ theo Byte (PQB) từng từ (PQW) hoặc theo từng từ kép (PQD).
+ DB (Data Block): Miền chứa dữ liệu được tổ chức thành khối Kích thước cũng như số
lượng khối do người sử dụng quy định, Phù hợp với từng bài toán điều khiển Chương trình có thể truy nhập miền này theo theo từng bit (DBX), byte (DBB), từ (DBW) hoặc từ kép (DBD).
+ L (Local data block): Miền dữ liệu địa phương, được các khối chương trình OB, FC,
FB tổ chức và sử dụng cho các biến nháp tức thời và trao đổi dữ liệu của biến hình thức với khối chương trình gọi nó Toàn bộ vùng nhớ sẽ bị xóa sau khi khối thực hiện xong Có thể truy nhập theo từng bit (L), byte (LB), từ (LW), hoặc từ kép (LD).
15
Trang 9 Vòng quét chương trình5.2 Cấu trúc chương trình
PLC thực hiện chương trình theo chu trình lặp, mỗi vòng lặp được gọi là vòng quét Vòng quét bắt đầu từ giai đoạn
truyền thông và kết thúc ở cuối chu trình thực thi OB1 Ngoài ra PLC có các chế độ
ngắt đặc biệt (OB40, OB80…), khi có tín hiệu ngắt, khối ngắt cùng loại sẽ được thực hiện
Lập trình tuyến tính: Chương trình chỉ được viết duy nhất khối OB1 Phù hợp các
bài toán điều khiển nhỏ, đơn giản.
Lập trình cấu trúc: Chương trình được viết trong các hàm chức năng FC, FB và
được gọi ra trong khối OB1, FB, FC.
5.2 Cấu trúc chương trình
17
Trang 10 Các khối trong chương trình
Có 4 khối cơ bản trong bài toán lập
- Loại khối OB (Organization block): khốitổ chức và quản lý chương trình điều khiển Có các loại khối OB có chức năng khác nhau như: OB1, OB35, OB40,…
- Loại khối FC (Program block): khối chương trình với những chức năng riêng giống
như mộtchương trình con hoặc một hàm Một chương trình ứng dụng có thể có nhiều khối FC.
- Loại khối FB (Function block): là loại khốiFC đặc biệt có khả năng trao đổi một lượng dữ liệu lớn với các khối chương trình khác nhau.
- Loại khối DB (Data block): khối chứa cácdữ liệucần thiết để thực hiện chương trình Các tham số của khối do người dùng tự đặt.
Chương trình trong các khối được liên kết với nhau bằng các lệnh gọi khối, chuyển khối Một số dòng PLC cho phép gọi chương trình con lồng nhau.
19
Trang 11 Nguyên tắc gọi khối hàm
Để các khối hàm được thực thi trong chương trình người dùng, chúng cần được gọi từ một khối hàm khác đã được gọi.
Khi khối hàm A gọi khối hàm B, lệnh trong khối hàm B được thi hành.
Chỉ khi khối hàm B đã hoàn thành, khối hàm A tiếp tục được thi hành Quá trình thực hiện được tiếp tục với lệnh theo sau lệnh gọi khối hàm B.
Lưu ý: Không thể gọi các khối hàm thành một vòng lặp.
5.2 Cấu trúc chương trình
5 Kỹ thuật lập trình Hệ thống phân cấp gọi khối hàm
Sắp xếp theo thứ tự và lồng các lệnh gọi khối hàm, được gọi là phân cấp Mỗi model PLC cho phép lồng tối đa số khối hàm khác nhau
Sắp xếp theo thứ tựLồng các khối hàm
5.2 Cấu trúc chương trình
21
Trang 12 Truyền tham số khi gọi hàm
Quy tắc cung cấp thông số cho khối hàm: Khối gọi sẽ cung cấp cho khối được gọi các giá trị mà nó sẽ hoạt động.
Có các loại thông số thực hiện liên kết giữa hàm gọi và hàm được gọi:
Input parameters: Hàm được gọi chỉ đọc giá trị của thông số này. Output parameters: Hàm được gọi chỉ ghi giá trị cho thông số này.
In/Out parameters: Hàm được gọi có thể đọc hoặc ghi giá trị cho thông số này.
5.2 Cấu trúc chương trình
5 Kỹ thuật lập trình Gán thông số cho các FC, FB
Các hàm FC không có bộ nhớ dữ liệu Vì vậy, khi một hàm FC được gọi, tất cả các tham số chính thức cần được gán tham số thực tế.
Các FB có tham số được lưu trong iDB và có thêm vùng dữ liệu Static
5.2 Cấu trúc chương trình
23
Trang 13 Thanh ghi trạng thái
Khi thực hiện lệnh, CPU sẽ ghi lại trạng thái của phép tính trung gian cũng như ghi lại kết quả vào 1 thanh ghi đặc biệt 16 bit, gọi là thanh ghi trạng thái Tuy nhiên chỉ có 9 bit thấp của thanh ghi này được sử dụng, có cấu trúc như sau:
- FC (First check): FC=0 khi dãy lệnh lô gíc tiếp điểm vừa được kết thúc, ngược lại Thanh ghi trạng thái
- RLO (Result of logic operation : kết quả tức thời của phép tính lô gíc vừa được thực
hiện Ví dụ lệnh
A I 0.2 // a) Nếu trước khi thực hiện bit FC = 0 thì chuyển I 0.2 vào RLO b) Nếu trước khi thực hiện bit FC = 1 thì thực hiện VÀ giữa RLO và I 0.2 Kết quả ghi vào RLO
- STA (Status bit): Có giá trị lô gíc của tiếp điểm được chỉ định trong lệnh Ví dụ cả 2 lệnh
AN I 0.2 // đều gán cho bit STA cùng 1 giá trị là nội dung của cổng vào số I 0.2
- OR: ghi lại giá trị của phép tính VÀ cuối cùng được thực hiện để phụ giúp thực hiện phép
tính HOẶC sau đó Vì trong hàm hai trị, phép tính VÀ phải được thực hiện trước các phép tính HOẶC
5.2 Cấu trúc chương trình
25
Trang 14 Thanh ghi trạng thái
- OS (Stored overflow bit): ghi giá trị bit bị tràn ra ngoài mảng ô nhớ - OV (Overflow Bit): bit báo kết quả phép tính bị tràn
- CC0 và CC1 (Condition code): hai bit báo trạng thái của kết quả phép tính với số
nguyên, số thực, dịch chuyển hoặc phép tính lô gíc trong ACCU.
- BR (Binary Result bit): bit trạng thái cho phép liên kết giữa hai ngôn ngữ STL và LAD
Cho phép người lập trình viết một khối chương trình FB hoặc FC bằng STL, nhưng có thể gọi và sử dụng chúng trong chương trình khác viết bằng LAD Để có mối liên kết này, cần phải kết thúc trong chương trình trong FB, FC bằng lệnh ghi giá trị vào BR: 1 nếu chương trình không có lỗi, 0 nếu chương trình có lỗi
Trang 15- Lệnh gán: Cú pháp = <toán hạng>
Toán hạng là các địa chỉ bit: I, Q, M, L, D
Ý nghĩa: thực hiện gán giá trị lô gíc của RLO tới ô nhớ có địa chỉ được thể hiện trong toán hạng Lệnh tác động vào thanh ghi trạng thái (ký hiệu ‘–’ chỉ nội dung Bit không bị thay đổi, ‘x’ chỉ nội dung thay đổi theo lệnh).
- Lệnh thực hiện phép tính AND: Cú phápA<toán hạng>
Toán hạng là dữ liệu kiểu BOOL hoặc các địa chỉ bit: I, Q, M, L, D, T, C Ý nghĩa: nếu FC = 0 thực hiện gán giá trị lô gíc của RLO Ngược lại, lệnh sẽ thực hiện phép toán AND giữa RLO và toán hạng và lưu kết quả vào RLO.
%I0.0 //Đọc nội dung I0.0 vào RLO
%I0.1 // AND với I0.1
%Q0.0 // Kết quả ra Q0.0
5.3 Các nhóm lệnh cơ bản
29
Trang 16- Lệnh thực hiện phép tính OR: Cú phápO<toán hạng>
Toán hạng là dữ liệu kiểu BOOL hoặc các địa chỉ bit: I, Q, M, L, D, T, C Ý nghĩa: nếu FC = 0 thực hiện gán giá trị lô gíc của RLO Ngược lại, lệnh sẽ thực hiện phép toán OR giữa RLO và toán hạng và lưu kết quả vào RLO.
%I0.0 //Đọc nội dung I0.0 vào RLO
%I0.1 // OR với I0.1
%Q0.0 // Kết quả ra Q0.0
5.3 Các nhóm lệnh cơ bản
5 Kỹ thuật lập trình
- Lệnh thực hiện phép tính AND NOT: Cú phápAN<toán hạng>
Toán hạng là dữ liệu kiểu BOOL hoặc các địa chỉ bit: I, Q, M, L, D, T, C Ý nghĩa: nếu FC = 0 thực hiện gán giá trị lô gíc của RLO Ngược lại, lệnh sẽ thực hiện phép toán AND NOT giữa RLO và toán hạng và lưu kết quả vào RLO.
%I0.0 //Đọc nội dung I0.0 vào RLO%I0.1 // AND NOT với I0.1%Q0.0 // Kết quả ra Q0.0
5.3 Các nhóm lệnh cơ bản
31
Trang 17- Lệnh thực hiện phép tính OR NOT: Cú pháp ON <toán hạng>
Toán hạng là dữ liệu kiểu BOOL hoặc các địa chỉ bit: I, Q, M, L, D, T, C Ý nghĩa: nếu FC = 0 thực hiện gán giá trị lô gíc của RLO Ngược lại, lệnh sẽ thực hiện phép toán OR NOT giữa RLO và toán hạng và lưu kết quả vào RLO.
%I0.0 //Đọc nội dung I0.0 vào RLO%I0.1 // OR NOT với I0.1%Q0.0 // Kết quả ra Q0.0
5.3 Các nhóm lệnh cơ bản
5 Kỹ thuật lập trình
- Lệnh thực hiện phép tính exclusive or: Cú phápX <toán hạng>
Toán hạng là dữ liệu kiểu BOOL hoặc các địa chỉ bit: I, Q, M, L, D, T, C
Ý nghĩa: nếu FC = 0 thực hiện gán giá trị lô gíc của RLO Ngược lại, lệnh sẽ kiểm tra xem nội dung của RLO và giá trị logic của toán hạng có khác nhau không Nếu khác thì ghi 1 vào RLO, ngược lại thì ghi 0 Nói cách khác, lệnh này sẽ đảo nội dung của RLO nếu toán hạng có giá trị 1
Trang 18- Lệnh thực hiện phép tính exclusive or not: Cú phápXN <toán hạng>
Toán hạng là dữ liệu kiểu BOOL hoặc các địa chỉ bit: I, Q, M, L, D, T, C
Ý nghĩa: nếu FC = 0 thực hiện ghi giá trị nghịch đảo của toán hạng vào RLO Ngược lại, lệnh sẽ kiểm tra xem nội dung của RLO và giá trị logic của toán hạng có khác nhau không Nếu giống thì ghi 1 vào RLO, ngược lại thì ghi 0 Nói cách khác, lệnh này sẽ đảo nội dung của RLO nếu toán hạng có giá trị 0 Rơ le thời gian
- Rơ le thời gian được sử dụng để làm chậm đóng hoặc mở tiếp điểm để điều khiển mạch.
- Trong thời gian chuyển mạch của rơ le, thời gian trễ có thể từ vài giây đến vài giờ tùy theo yêu cầu của bài toán đặt ra.
Rơ le thời gian có thể bao gồm:
+ Rơ le thời gian dạng cơ khí + Rơ le thời gian dạng khí nén
+ Rơ le thời gian gian dùng mạch điện tử (sử dụng các linh kiện bán dẫn tạo thời gian trễ)
5.3 Các nhóm lệnh cơ bản
35
Trang 19 Rơ le thời gian
Phân loại: Khi thiết kế mạch điều khiển thì có hai loại rơ le thời gian Rơ le thời gian
Ví dụ: Sử dụng tiếp điểm thường hở trên TON
5.3 Các nhóm lệnh cơ bản
Khi tác động tiếp điểm S1, cuộn dây rơ le TD thời gian hoạt động, sau khoảng thời gian t = 10s tiếp điểm thưởng mở TD1 của TD đóng và đèn L1 sẽ sáng Sau đó ngắt tiếp điểm S1thì đèn L1 sẽ tắt.
37
Trang 20 Rơ le thời gian
Ví dụ: Sử dụng tiếp điểm thường đóng của TON
5.3 Các nhóm lệnh cơ bản
Khi tác động tiếp điểm S1, cuộn dây rơ le TD thời gian hoạt động, sau khoảng thời gian t = 10s tiếp điểm thưởng đóng TD1 của TD mở và đèn L1 sẽ tắt Sau đó ngắt tiếp điểm S1thì đèn L1 sẽ sáng.
5 Kỹ thuật lập trình Rơ le thời gian
+ Rơ le thời gian tác động ngắt trễ ( OFF delay relay timer): TOFF
Trang 21 Rơ le thời gian
Ví dụ: Sử dụng tiếp điểm thường mở trên TOFF
5.3 Các nhóm lệnh cơ bản
Ban đầu tiếp điểm S1mở, cuộn dây của TOFF chưa được cấp điện, tiếp điểm TD1 mở, đèn chưa sáng.
Khi tiếp điểm S1 đóng, cuộn dây TOFF sẽ được cấp điện và tiếp điểm TD1 sẽ đóng và đèn L1 sáng.
Ngắt tiếp điểm S1, thì cuộn dây TOFF sẽ không được cấp điện nhưng tiếp điểm TD1 sẽ mở sau thời gian đặt t = 10s và đèn sẽ tắt.
5 Kỹ thuật lập trình Rơ le thời gian
Ví dụ: Sử dụng tiếp điểm thường đóng trên TOFF
5.3 Các nhóm lệnh cơ bản
Ban đầu tiếp điểm S1mở, cuộn dây của TOFF chưa được cấp điện, tiếp điểm TD1 đóng, đèn sáng.
Khi tiếp điểm S1đóng, cuộn dây TOFF sẽ được cấp điện và tiếp điểm TD1 sẽ mở và đèn L1 tắt.
Ngắt tiếp điểm S1thì cuộn dây TOFF sẽ không được cấp điện nhưng tiếp điểm TD1 sẽ đóng sau thời gian đặt t = 10s và đèn lại sáng.
41
Trang 22 Bộ định thời trong PLC (Timer)
Các chức năng tương tự như trên rơle định thời cơ khí và điện tử TON, TOFF.
Tất cả các bộ định thời PLC đều là lệnh đầu ra
Ưu điểm so với các bộ định thời cơ và điện tử tương ứng: • Toàn bộ chức năng định thời xảy ra bên trong bộ điều khiển • Cài đặt thời gian có thể dễ dàng thay đổi.
• Số lượng bộ định thời được sử dụng trong một mạch có thể được tăng hoặc giảm thông qua việc sử dụng các thay đổi lập trình hơn là thay đổi dây dẫn • Độ chính xác và độ lặp lại của bộ hẹn giờ rất cao vì độ trễ thời gian được tạo ra trong bộ xử lý PLC.
5.3 Các nhóm lệnh cơ bản
5 Kỹ thuật lập trình
Có 3 loại bộ định thời gian:
+ Bộ định thời gian đóng trễ (TON): Đếm khoảng thời gian cơ sở
(time-based) khi điều kiện đầu vào là True
+ Bộ định thời gian ngắt trễ (TOFF): Đếm khoảng thời gian dựa trên
thời gian cơ sở khi lệnh đầu vào chuyển từ điều kiện đúng (True) sangđiều kiện sai (False).
+ Bộ định thời gian có nhớ (RTO) Đếm thời gian dựa trên thời gian
cơ sở khi lệnh là đúng (True) và lưu lại giá trị thời gian đã tích lũy khi lệnh sai (False) hoặc khi mất nguồn.
RES (Reset) - Đặt lại giá trị tích lũy của bộ định thời về giá trị 0.
Bộ định thời trong PLC (Timer)5.3 Các nhóm lệnh cơ bản
43
Trang 23 Các đại lượng của bộ đinh thời:
+ Thời gian cơ sở (time-base) là thời gian nhỏ nhất của Timer khi xảy ra một sự
kiện Thời gian trễ của Timer là tổng thời gian cơ sở Thời gian cơ sở thường gặp trong PLC: 1ms; 10ms; 100ms.
+ Giá trị đặt PV (Preset Value): là giá trị đặt trước cho bộ định thời.
Để tính thời gian trễ của bộ định thời, ta sử dụng công thức:
T = PV x time-base
Ví dụ: Thời gian trễ của bộ định thời khi PV = 50 và time-base = 100ms là T = 50 x 100 = 5000 ms = 5s
+ Giá trị tích lũy (Accumulated Value): Là thời gian trôi qua kể từ khi tác động
vào bộ định thời, chính là số thời gian sơ sở đã diễn ra
Bộ định thời trong PLC (Timer)5.3 Các nhóm lệnh cơ bản
5 Kỹ thuật lập trình Bộ định thời trong PLC (Timer)
Bộ định thời tạo xung TP: Một xung rộng bằng chính thời gian đặt PT sẽ
được tạo ra khi tín hiệu vào thỏa mãn True
+ IN: INPUT; Bool (I, Q, M, D, L): ‘0’’1’+ PT: thời gian đặt, TIME (I, Q, M, D, L) 10s
+ ET: t/g đếm hiện tại, TIME (I, Q, M, D, L): #0s 10s+ Q: Output: ’1’ trong khoảng tg PT (I, Q, M, D, L)
Biểu đồ thời gian của bộ định thời TP
5.3 Các nhóm lệnh cơ bản
45
Trang 24 Bộ định thời trong PLC (Timer)
Bộ định thời gian TON
+ IN: INPUT; Bool (I, Q, M, D, L): ‘0’ ‘1’+ PT: thời gian đặt, TIME (I, Q, M, D, L): 10s
+ ET: t/g đếm hiện tại, TIME (I, Q, M, D, L): Từ #0s #10s+ Q: Output ‘0’ ‘1’ khi đạt PT (I, Q, M, D, L)
Biểu đồ thời gian của bộ định thời TON
5.3 Các nhóm lệnh cơ bản
5 Kỹ thuật lập trình Bộ định thời trong PLC (Timer)
Ví dụ: Điều khiển hai động cơ theo yêu cầu sau: Ấn nút START để khởi động ĐC1 hoạt
động trong 10s sau đó ĐC2 hoạt động Ấn nút STOP thì dừng cả hai động cơ.
Chương trình điều khiển như sau:
Network 1
Network 2
5.3 Các nhóm lệnh cơ bản
47
Trang 25 Bộ định thời trong PLC (Timer)
Bộ định thời gian TOF
+ IN: INPUT; Bool (I, Q, M, D, L): ‘0’’1’ ‘0’+ PT: thời gian đặt, TIME (I, Q, M, D, L): 10s
+ ET: t/g đếm hiện tại (I, Q, M, D, L): #0s 10s+ Q: Output ’1’ ‘0’ khi đạt PT (I, Q, M, D, L)
Biểu đồ thời gian của TOF
5.3 Các nhóm lệnh cơ bản
5 Kỹ thuật lập trình Bộ định thời trong PLC (Timer)
Ví dụ: Điều khiển hai động cơ theo yêu cầu sau: Ấn nút START để khởi động ĐC1
Trang 26 Bộ định thời trong PLC (Timer)
Bộ định thời gian TONR+ IN: INPUT; Bool (I, Q, M, D, L), ‘0’’1’
+ PT: thời gian đặt (I, Q, M, D, L), 10s
+ ET: t/g đếm tích lũy (I, Q, M, D, L), #0s#10s
+ R: Reset timer, khởi động lại t/g đếm từ #0s
+ Q: Output ‘0’‘1’ khi đạt PT (I, Q, M, D, L)
Bộ đếm được sử dụng để theo dõi và đếm sự di chuyển của đối tượng qua một vị trí cố định.
PLC của tất cả các hãng đều cung cấp một số lệnh bộ đếm, là một khối chức năng điều khiển
Bộ đếm là một khối chức năng, có một số đặc tính tương đồng với bộ định thời Bộ đếm có một biến đầu vào và chứa số lượng xung mong muốn sẽ được đếm,
một biến đầu ra chứa giá trị hiện tại của bộ đếm Một trạng thái lô gíc sẽ chuyển
từ Fasle (0) sang True (1) khi đạt đến số lượng mong muốn.
5.3 Các nhóm lệnh cơ bản
51