Bộ điều khiển PID trong PLC

9 7.6K 189
Bộ điều khiển PID trong PLC

Đang tải... (xem toàn văn)

Thông tin tài liệu

PLC04- 28 Điều khiển liên tục Bộ Điều khiển PID A. Mục đích yêu cầu 1. Nắm đợc nguyên lý bộ điều khiển PID bằng PLC. 2. Lập trình ứng dụng điều khiển quá trình. B. Chuẩn bi : 1. Modul đào tạo PLC tối thiểu, Hoặc mô đun đầy đủ - S7-200-CPU215. 2. Mô đun EM235. 3. Thết bị lập trình cho PLC, Cáp ghép nối. 4. Máy tính và phần mềm lập trình. C. Lý thuyết : Giới thiệu chung : Bộ điều khiển PID bằng PLC - S7-200 có sơ đồ cấu trúc nh sau: Trong đó khối điều khiển (phần trong ô ) đợc thực hiện bằng phần tử PLC - S7-200-CPU215. Mô đun A/D, D/A đợc thực hiện bằng khối mở rộng EM235. Tín hiệu truyền trong hệ thống có cả phần liên tục và phần số. Hệ điều khiển PID liên tục thực hiện luật điều khiển liên tục nh sau: Luật điều khiển PID : 209 Sp Bộ điều khiển PID Kc, Ti, Td, Ts D/A Đối tợng A/D Pv VD104 E = Sp - Pv VD108 VD100 VD112 VD120 VD124 VD116 Trong đó : M(t) : Tín hiệu ra của khối điều khiển ở thời điểm (t). Kc : Hệ số khuếch đại của bộ điều khiển e(t) : Sai lệch giữa tín hiệu đặt và tín hiệu phản hồi từ quá trình. Ti : Hằng số thời gian tích phân Minitial: Giá trị ban đầu của tích phân. Td : Hằng số thời gian vi phân. Chuyển sang hệ điều khiển số bằng PLC công thức (1) có thể viết thành : Trong công thức 2 : MPn: Thành phần tỷ lệ MPn: Thành phần tỷ lệ trong tín hiệu ra tại thời điểm n Kc hệ số khuếch đại SPn Tín hiệu đặt tai thời điểm thứ n PVn Tín hiệu ra của bộ điều khiển tại thời điểm thứ n MIn: Thành phần tích phân 210 M(t) = Kc * e(t) + Kc/Ti dtet)( + Minitial + Kc* Td * de/dt (1) Mn = MPn + MIn + MDn (2) Thành phần tỷ lệ Thành phần Tích phân Thành phần vi phân MPn = Kc * ( SPn - PVn ) MIn = Kc * Ts/Ti * ( SPn - PVn) + MX Trong đó : MIn: Thành phần tích phân trong tín hiệu ra tại thời điểm thứ n Kc: Hệ số khuếch đại Ts: Chu kỳ cắt mẫu Ti: Hằng số thời gian tích phân SPn: Giấ trị đặt tại thời điểm thứ n PVn: Giá trị ra của quá trình tại thời điểm thứ n MX: Giá trị đầu của tích phân - (giá trị ra của PID tại thời điểm thứ n-1) MDn : Thành phần vi phân Trong đó : MDn: Thành phần vi phân trong tín hiệu ra tại thời điểm thứ n Kc: Hệ số khuếch đại Td: Hằng số thời gian vi phân Ts: Chu kỳ cắt mẫu. SP n : Giá trị đặt PV n : Giá trị đầu ra của quá trình tại thời điểm thứ n Các thành phần này cùng các tham số Kc, Ti, Td, Ts đều có ảnh hởng đến các đặc tính đầu ra của quá trình nh : Độ ổn định của hệ thống, Sai số tĩnh-sai số trong chế độ xác lập, Độ quá điều chỉnh, Thời gian quá độ, số lần dao động.v.v Ngời học nên tham khảo thêm các tài liệu liên quan để hoàn thiện kiến thức. Giới thiệu về thí nghiệm và chơng trình : 211 MDn = Kc * Td/Ts * ( ( SP n - PV n ) - (SP n - PV n-1 )) MDn = Kc * Td/Ts * ( PV n -1 - PV n ) Tham khảo: Chương trình S7 – 200 dưới đây chỉ là một ví dụ ngắn về cách sử dụng PID thông qua ví dụ về điều khiển mức nước trong bể để vừa đảm bảo áp suất vừa đảm bảo nước trong bình không bị cạn hết. Cấu trúc hệ thống như hình dưới đây: Yêu cầu thiết bị điều khiển: 01 PLC S7 200/ CPU 215; 216 trở lên và 01 khối EM 235 gồm có 3 đầu vào analog và một đầu ra analog 12 bít Mô tả hệ thống: Trong hệ thống này, một bể nước được dùng để khống chế áp lực nước không đổi. Nước liên tục được lấy ra từ vòi với một tốc độ bất kỳ. Bơm được dùng để tăng thêm nước vào bể với một tốc độ đủ để duy trì áp suất cũng như mức nước trong bình không hạ xuống quá mức cho phép. Giá trị đặt của hệ thống là mức nước (trong ví dụ này là 75% bể). Đại lượng đầu vào của hệ thống là tín hiệu do một cảm biến đo mức đưa về thông qua đầu vào analog A+, A Tín hiệu đưa về có thể thay đổi từ 4 – 20mA tương ứng với 0 – 100% mức đầy của bể. Tín hiệu ra của hệ thống là tín hiệu điện áp có thể thay đổi từ 0 – 10 V dùng để điều khiển tốc độ bơm tương ứng là 0 – 100% tốc độ định mức. Giá trị đặt được quyết định bởi người sử dụng và được đưa trực tiếp vào quá trình. Trong chương trình này, bộ điều khiển sử dụng hai thông số là P và I, không dùng đến D. Thời gian lấy mẫu là Ts = 0.1 giây, KC = 0.25 và Ti = 30 phút. Trước tiên, bể nước sẽ được tiếp đầy nước cho đến khi được 75%. Sau đó, van xả sẽ được mở để lấy nước từ bể và cùng lúc bơm sẽ được chuyển từ chế độ điều khiển bằng tay sang chế độ tự động. Trong quá trình điều khiển bằng tay, tốc độ bơm được qui định bởi số thực lưu tại VD108 nằm trong khoảng 0.0 tới 1.0. 212 SBR0 là hàm thực hiện khởi tạo hệ thống. SBR 1 là hàm thực hiện kiểm tra lỗi của khối analog. Đầu vào I0.0 sẽ được dùng là tín hiệu khởi động hệ thống điều khiển tự động. Đầu ra Q0.7 báo lỗi xảy ra ở module analog Ngắt INT 0 thực hiện thuật toán PID mỗi 100 ms một lần Bảng lặp dùng cho PID gồm có 36 byte và những thống số được đặt trong vùng nhớ V và tất cả đều dùng là double word (VD) Khoảng cách so với địa chỉ bắt đầu Thông số tính toán Định dạng vào/ra Mô tả Người dùng có thể định nghĩa 0 PV Double word - real vào Tín hiệu về mức nước hiện tại trong bể, khoảng 0.0 – 1.0 tương ứng 0 – 100% NO 4 SP Double word - real IN Giá trị đặt về mức nước trong bể, cũng phải nằm trong khoảng 0.0 – 1.0 YES 8 M Double word - real In/Out Giá trị tín hiệu ra, nằm trong khoảng 0.0 – 1.0 NO 12 KC Double word - real In Hệ số khuếch đại P. YES 16 TS Double word - real In Thời gian trích mẫu YES 20 Ti Double word - real In Thời gian tích phân. YES 24 Td Double word - real In Thời gian vi phân YES 28 Bias (MX) Double word - real In/Out Tổng tích phân (bias MX or integral sum) YES 32 PVN-1 Double word - real In/Out Giá trị mức nước đo được lần lấy mẫu trước NO Trong chương trình dùng địa chỉ bắt đầu của bảng là VD100 VD100 PV Tin hieu qua trinh lấy vào từ AWI0 VD104 SP gia tri dat VD108 M Gia tri dau ra PID VD112 Kc He so khuech dai VD116 Ts Thoi gian cat mau VD120 Ti Hang so thoi gian tich phan VD124 Td Hang so thoi gian vi phan VD128 MX Gia tri ban dau cua tich phan VD132 PVN-1 Gia tri dat o buoc thu n-1 Có thể tham khảo thêm về PID trong các tài liệu được cung cấp trong Hướng dẫn sử dụng hệ thống S7 200 và các sách tham khảo khác. 213 Lưu đồ thuật toán 214 CHƯƠNG TRÌNH CHINH // PID │ SM0.1 0 1 ├─┤ ├────────────────────────( CALL ) │ │ │ SM0.0 1 2 ├─┤ ├────────────────────────( CALL ) │ │ 3 ├──────────────────────────────( MEND ) │ LD SM0.1 // ON tại vòng quét đầu CALL 0 // Gọi hàm khởi tạo hệ thống LD SM0.0 // Luôn luôn ON CALL 1 // Gọi hàm kiểm tra lỗi của // khối analog MEND // Kết thúc CHUONG TRINH CON // SBR0: Khởi tạo hệ thống và khởi động ngắt thời gian ┌──────────┐ │ SBR: 0 │ └───┬──────┘ │ SM0.0 MOV_B───┐ 5 ├─┤ ├───────────┬────────────┤EN │ │ │ K100┤IN OUT├SMB34 │ │ └───────┘ │ │ ATCH────┐ │ ├────────────┤EN │ │ │ K0┤INT │ │ │ K10┤EVT │ │ │ └───────┘ │ │ │ └────────────( ENI ) │ 6 ├──────────────────────────────( RET ) SBR 0 LD SM0.0 MOVB 100, SMB34 // Thời gian ngắt là 100 ms ATCH 0, 10 // Gọi chương trình ngắt thời gian (10) để thực hiện thuật toán PID ENI // Chấp nhận hoạt động RET // Trở về chươn trình chính // SBR1: Kiểm tra lỗi khối analog và báo lỗi bằng Q0.7 ┌──────────┐ │ SBR: 1 │ └───┬──────┘ │ SMB8 KH19 Q0.7 8 ├─────┤ == B ├─────┤NOT├─┬──────( ) │ │ │ │ │ │ │ │ │ SMB9 KH0 │ ├─────┤ == B ├─────┤NOT├─┘ │ │ 9 ├──────────────────────────────( RET ) │ SBR 1 LDB= SMB8, 16#19 // Nếu không có khối EM235 thì báo lỗi NOT LDB= SMB9, 16#0 // Nếu đã có EM235 nhưng có lỗi thì cũng báo lỗi NOT OLD = Q0.7 // Error reading analog module RET // INT 0: Thực hiện thuật toán PID - Chuonh trinh ngat 215 ┌──────────┐ │ INT: 0 │ └───┬──────┘ │ Q0.7 WXOR_DW─┐ 11 ├─┤ / ├───────────┬────────────┤EN │ │ │ AC0┤IN1 OUT├AC0 │ │ AC0┤IN2 │ │ │ └───────┘ │ │ MOV_W───┐ │ ├────────────┤EN │ │ │ AIW0┤IN OUT├AC0 │ │ └───────┘ │ │ DI_REAL─┐ │ ├────────────┤EN │ │ │ AC0┤IN OUT├AC0 │ │ └───────┘ │ │ SUB_R───┐ │ ├────────────┤EN │ │ │ KR+6400.00┤IN1 OUT├AC0 │ │ AC0┤IN2 │ │ │ └───────┘ │ │ DIV_R───┐ │ ├────────────┤EN │ │ │ AC0┤IN1 OUT├AC0 │ │ KR+25600.0┤IN2 │ │ │ └───────┘ │ │ MOV_R───┐ │ └────────────┤EN │ │ AC0┤IN OUT├VD100 │ └───────┘ │ I0.0 PID─────┐ 12 ├─┤ ├────────────────────────┤EN │ │ VB100┤TBL │ │ 0┤LOOP │ │ └───────┘ │ SM0.0 MUL_R───┐ 13 ├─┤ ├───────────┬────────────┤EN │ │ │ VD108┤IN1 OUT├AC0 │ │ KR+32000.0┤IN2 │ │ │ └───────┘ │ │ TRUNC───┐ │ ├────────────┤EN │ │ │ AC0┤IN OUT├AC0 │ │ └───────┘ │ │ MOV_W───┐ │ └────────────┤EN │ │ AC0┤IN OUT├AQW0 │ └───────┘ │ 14 ├──────────────────────────────( RETI ) INT 0 LDN Q0.7 // Nếu khối analog không có lỗi XORD AC0, AC0 // Xóa AC0 MOVW AIW0, AC0 // Lấy giá trị đo được về mức nước PV DTR AC0, AC0 // Chuyển đổi sang số thực 32 bít -R 6400.0, AC0 // Chuyển đổi sang tín hiệu 4 – 20 mA /R 25600.0, AC0 // Chuyển PV về giá trị thường dùng MOVR AC0, VD100 // Lưu vào vùng nhớ LD I0.0 // Chế độ Auto PID VB100, 0 // Thực hiện PID với địa chỉ bắt đầu là VB100 // Tín hiệu đầu ra analog LD SM0.0 MOVR VD108, AC0 // Đưa ra AC0 *R 32000.00, AC0 // chuyển thang giá trị TRUNC AC0, AC0 //Chuyển sang số nguyên 32 bít MOVW AC0, AQW0 // Gửi ra đầu ra RETI // Trở lại chương trình chính 216 D liu DB1 (V Memory): // Khoi tao cac tham so dieu khien cho bo dieu khien PID co the thuc hien bang cac lenh MOV trong chuong trinh con SBR_0 hoac tu man hinh TD-200. VD104 0.75 // SV = 0.75 = 75% full VD112 0.25 // K c = 0.25 VD116 0.10 // T s = 0.1 seconds VD120 30.0 // T i = 30 minutes VD124 0.0 // T d = 0 D. Các bớc thực hành 1. Tìm hiểu kỹ yêu cầu công nghệ nêu trên, phân tích dac điểm của hệ thống và cách làm việc của hệ. 2. Liệt kê các đầu và ra : 3. Phân cổng vào ra cho PLC : 4. Dựng lu đồ chơng trình - mô ta cách làm việc của chơng trình : 5. Dich lu đồ sang giản đồ thang: 6. Lập trình giản đồ thang vào PLC 7. Nối PLC va cac thiet bi theo so do hinh 7-3 8. Chạy kiểm tra toàn bộ hệ thống - viết báo cáo nhận xét kết quả. E. Câu hỏi cuối bài học 1. Giải thích nội dung quan sát đợc trong thực hành 8. 2. Thử nghiệm chơng trình trên với các bộ thông số điều khiển Kc, Ti, Td khác nhau, rút ra nhận xét 3. Tìm tham số điều khiển tối u tác động nhanh của hệ. 217 . PLC0 4- 28 Điều khiển liên tục Bộ Điều khiển PID A. Mục đích yêu cầu 1. Nắm đợc nguyên lý bộ điều khiển PID bằng PLC. 2. Lập trình ứng dụng điều khiển quá trình. B. Chuẩn. Tín hiệu truyền trong hệ thống có cả phần liên tục và phần số. Hệ điều khiển PID liên tục thực hiện luật điều khiển liên tục nh sau: Luật điều khiển PID : 209 Sp Bộ điều khiển PID Kc, Ti, Td,. thuyết : Giới thiệu chung : Bộ điều khiển PID bằng PLC - S7-200 có sơ đồ cấu trúc nh sau: Trong đó khối điều khiển (phần trong ô ) đợc thực hiện bằng phần tử PLC - S7-200-CPU215. Mô đun A/D, D/A đợc

Ngày đăng: 29/06/2014, 10:56

Tài liệu cùng người dùng

Tài liệu liên quan