Thiết bị điều khiển lập trình đầu tiên (programmable controller) đã được những nhà thiết kế cho ra đời năm 1968 (Công ty General Moto Mỹ). Tuy nhiên, hệ thống này còn khá đơn giản và cồng kềnh, người sử dụng gặp nhiều khó khăn trong việc vận hành hệ thống. Vì vậy các nhà thiết kế từng bước cải tiến hệ thống đơn giản, gọn nhẹ, dễ vận hành, nhưng việc lập trình cho hệ thống còn khó khăn, do lúc này không có các thiết bị lập trình ngoại vi hổ trợ cho công việc lập trình. Để đơn giản hóa việc lập trình, hệ thống điều khiển lập trình cầm tay (programmable controller handle) đầu tiên được ra đời vào năm 1969. Điều này đã tạo ra một sự phát triển thật sự cho kỹ thuật điều khiển lập trình. Trong giai đoạn này các hệ thống điều khiển lập trình (PLC) chỉ đơn giản nhằm thay thế hệ thống Relay và dây nối trong hệ thống điều khiển cổ điển. Qua quá trình vận hành, các nhà thiết kế đã từng bước tạo ra được một tiêu chuẩn mới cho hệ thống, tiêu chuẩn đó là dạng lập trình dùng giản đồ hình thang (The diagroom format). Trong những năm đầu thập niên 1970, những hệ thống PLC còn có thêm khả năng vận hành với những thuật toán hổ trợ (arithmetic), “vận hành với các dữ liệu cập nhật” (data manipulation). Do sự phát triển của loại màn hình dùng cho máy tính (Cathode Ray Tube: CRT), nên việc giao tiếp giữa người điều khiển để lập trình cho hệ thống càng trở nên thuận tiện hơn. Sự phát triển của hệ thống phần cứng và phần mềm từ năm 1975 cho đến nay đã làm cho hệ thống PLC phát triển mạnh mẽ hơn với các chức năng mở rộng: hệ thống ngõ vào và ra có thể tăng lên đến 8.000 cổng vào và ra, dung lượng bộ nhớ chương trình tăng lên hơn 128.000 từ bộ nhớ (word of memory). Ngoài ra các nhà thiết kế còn tạo ra kỹ thuật kết nối với các hệ thống PLC riêng lẻ thành một hệ thống PLC chung, tăng khả năng của từng hệ thống riêng lẻ. Tốc độ xử lý của hệ thống được cải thiện, chu kỳ quét (scan) nhanh hơn làm cho hệ thống PLC xử lý tốt với những chức năng phức tạp số lượng cổng ra và vào lớn. Trong tương lai hệ thống PLC không chỉ giao tiếp với các hệ thống khác thông qua CIM (Computer Intergrated Manufacturing) để điều khiển các hệ thống: Robot, CadCam… ngoài ra các nhà thiết kế còn đang xây dựng các loại PLC với các chức năng điều khiển “thông minh” (intelligence) còn gọi là các siêu PLC (super PLCS) cho tương lai.
Trang 1DẪN NHẬP
Thiết bị điều khiển lập trình đầu tiên (programmable controller) đãđược những nhà thiết kế cho ra đời năm 1968 (Công ty General Moto -Mỹ) Tuy nhiên, hệ thống này còn khá đơn giản và cồng kềnh, người sửdụng gặp nhiều khó khăn trong việc vận hành hệ thống Vì vậy các nhàthiết kế từng bước cải tiến hệ thống đơn giản, gọn nhẹ, dễ vận hành,nhưng việc lập trình cho hệ thống còn khó khăn, do lúc này không cócác thiết bị lập trình ngoại vi hổ trợ cho công việc lập trình
Để đơn giản hóa việc lập trình, hệ thống điều khiển lập trình cầm tay(programmable controller handle) đầu tiên được ra đời vào năm 1969.Điều này đã tạo ra một sự phát triển thật sự cho kỹ thuật điều khiển lậptrình Trong giai đoạn này các hệ thống điều khiển lập trình (PLC) chỉđơn giản nhằm thay thế hệ thống Relay và dây nối trong hệ thống điềukhiển cổ điển Qua quá trình vận hành, các nhà thiết kế đã từng bước tạo
ra được một tiêu chuẩn mới cho hệ thống, tiêu chuẩn đó là dạng lậptrình dùng giản đồ hình thang (The diagroom format) Trong những nămđầu thập niên 1970, những hệ thống PLC còn có thêm khả năng vậnhành với những thuật toán hổ trợ (arithmetic), “vận hành với các dữ liệucập nhật” (data manipulation) Do sự phát triển của loại màn hình dùng
1
Trang 2cho máy tính (Cathode Ray Tube: CRT), nên việc giao tiếp giữa ngườiđiều khiển để lập trình cho hệ thống càng trở nên thuận tiện hơn.
Sự phát triển của hệ thống phần cứng và phần mềm từ năm 1975 cho đếnnay đã làm cho hệ thống PLC phát triển mạnh mẽ hơn với các chứcnăng mở rộng: hệ thống ngõ vào và ra có thể tăng lên đến 8.000 cổngvào và ra, dung lượng bộ nhớ chương trình tăng lên hơn 128.000 từ bộnhớ (word of memory) Ngoài ra các nhà thiết kế còn tạo ra kỹ thuật kếtnối với các hệ thống PLC riêng lẻ thành một hệ thống PLC chung, tăngkhả năng của từng hệ thống riêng lẻ Tốc độ xử lý của hệ thống được cảithiện, chu kỳ quét (scan) nhanh hơn làm cho hệ thống PLC xử lý tốt vớinhững chức năng phức tạp số lượng cổng ra và vào lớn
Trong tương lai hệ thống PLC không chỉ giao tiếp với các hệ thốngkhác thông qua CIM (Computer Intergrated Manufacturing) để điềukhiển các hệ thống: Robot, Cad/Cam… ngoài ra các nhà thiết kế cònđang xây dựng các loại PLC với các chức năng điều khiển “thông minh”(intelligence) còn gọi là các siêu PLC (super PLCS) cho tương lai
Trang 31.2 CÁC MODULE CỦA PLC S7-300
Nhằm mục đích tăng tính mềm dẻo trong các ứng dụng thực tế, cácđối tượng điều
khiển của một trạm S7-300 được chế tạo theo Module
Các Module gồm có: Module CPU, nguồn, ngõ vào và ra số, tương tự,mạng, …Số lượng Module nhiều hay ít tùy vào yêu cầu thực tế, song tốithiểu bao giờ cũng có một Module chính là CPU, các Module còn lạinhận truyền tín hiệu với đối tượng điều khiển, các Module chức năng
Trang 4chuyên dụng như PID, điều khiển động cơ,… chúng được gọi chung làModule mở rộng.
Cấu hình của một trạm PLC S7-300 như sau:
Hình 1.1: Các khối trên một thanh rack của trạm PLC S7-300
Module CPU: chứa bộ vi xử lý, hệ điều hành, bộ nhớ, các bộ định thờigian, bộ đếm, cổng truyền thông (RS485)… và có thể có vài cổng vào và
ra số onboard
PLC S7-300 có nhiều loại CPU khác nhau, chúng được đặt tên theo
bộ vi xử lý có trong CPU như CPU312, CPU314, CPU315, CPU316,CPU318…
Những Module cùng có chung bộ vi xử lý nhưng khác nhau về cổngvào và ra onboard, khác nhau về các khối hàm đặc biệt có sẵn trong thư
Trang 5viện của hệ điều hành được phân biệt với nhau trong tên gọi bằng cáchthêm cụm từ IFM (Intergrated Function Module) Ví dụ ModuleCPU314 IFM.
Ngoài ra còn có các loại Module CPU với hai cổng truyền thông,trong đó cổng truyền thông thứ hai có chức năng chính là phục vụ việcnối mạng phân tán có kèm theo những phần mềm tiện dụng được cài đặtsẵn trong hệ điều hành Các loại CPU này được phân biệt với các CPUkhác bằng tên gọi thêm cụm từ DP (Distributted Port) trong tên gọi Ví
dụ Module CPU 314C-2DP…
Hình 1.2: Các Module tích hợp CPU của PLC S7-300
AO (Analog output): Module mở rộng các cổng ra tương tự.Chúng là những bộ chuyển đổi số tương tự (DA) Số các cổng ratương tự có thể là 2, 4 hoặc 8 tùy thuộc từng loại
Trang 6 AI/AO (Analog input/Analog output): Module mở rộng vào/ratương tự Số cổng vào/ra tương tự có thể là 4 vào/2 ra hoặc 4 vào/4
ra tùy từng loại Module
IM (Interface Module): Module ghép nối Đây là loại Modulechuyên dụng có chức năng nối các nhóm Module mở rộng lại vớinhau thành một khối và được quản lý chung bởi một CPU MộtCPU có thể làm việc trực tiếp nhiều nhất 4 rack, mỗi rack tối đa 8Module mở rộng và các rack được nối với nhau bằng Module IM
FM (Function Module): Module có chức năng điều khiển riêng, ví
dụ như Module điều khiển động động cơ bước, Module điều khiểnđộng cơ servo, Module PID, điề khiển đếm tốc độ cao…
CP (Communication Module): Module phục vụ truyền thông trongmạng giữa các bộ PLC với nhau hoặc giữa PLC với máy tính
Trang 8 RUN_P: Xử lý chương trình, có thể đọc và ghi được từ PG.
RUN: Xử lý chương trình, không thể đọc từ PG
STOP: Dừng, chương trình không được xử lý
MRES: Chức năng reset hệ thống (Module Reset)
Trang 9Các mode này được chọn dựa vào công tắc chọn ở mặt trước CPUnhư hình 1.4
SF: báo lỗi trong nhóm, trong CPU hay trong các Module
BATF: lỗi pin, hết pin hoặc không có pin
Trang 10 STOP: sáng khi PLC dừng, chớp chậm khi có yêu cấu reset bộnhớ, chớp nhanh khi đang reset bộ nhớ.
BYTE: dung lượng 8 bit, thường dùng biểu diễn số nguyên dương
từ 0 đến 255,mã BCD của số thập phân 2 chữ số, mã ASCII của ký tự,
…
Trang 11 WORD: dung lượng 2 byte, biểu diễn số nguyên dương từ 0 đến65535.
INT: dung lượng 2 byte, biểu diễn số nguyên từ -32768 đến 32767
DINT: dung lượng 4 byte biểu diễn số nguyên từ -2147483648 đến2147483647
REAL: dung lượng 4 byte, biểu diễn số thực có dấu phẩy
Ngoài ra còn có các kiểu dữ liệu khác:
S5T (S5TIME): biểu diễn khoảng thời gian, tính theogiờ/phút/giây/mgiây
TOD: biểu diễn khoảng thời gian tính theo giờ/phút/giây
DATE: biểu diễn thời gian theo năm/tháng/ngày
CHAR: biểu diễn ký tự (tối đa 4 ký tự)
PLC S7-300 có 4 loại khối cơ bản:
Khối OB (Organization Block): là khối tổ chức và quản lýchương trình
điều khiển Có nhiều loại OB với các chức năng khác nhau,chúng được
phân biệt dựa vào số nguyên gán thêm phía sau OB1, OB35, OB40…OB1 là khối luôn được CPU quét và thực hiện lặp lại các lệnh theothứ tự từ
Trang 12trên xuống dưới
Khối FC (Program Block): là khối chương trình với các chứcnăng riêng,
giống như 1 chương trình con Một chương trình có thể có nhiều khối
FC, chúng được phân biệt dựa theo số nguyên gán thêm phía sau,FC1, FC2, …
Khối FB (Function Block): là 1 khối FC đặc biệt có khả năng traođổi lượng
dữ liệu lớn với các khối chương trình khác Một chương trình cóthể có
nhiều khối FB, chúng được phân biệt dựa theo số nguyên gánthêm phía
Trang 13 Chương trình trong các khối được liên kết với nhau bằngcác lệnh gọi khối, chuyển khối.
1.5 CÁC KHỐI OB ĐẶC BIỆT:
Nếu OB1 là khối được thực hiện liên tục trong từng vòng quét thìcác khối OB khác chỉ được thực hiện khi có tín hiệu báo ngắt tương ứng.Chương trình viết cho các khối này chính là các chương trình xử lý tínhiệu ngắt, bao gồm:
OB10 (Time of date interrupt): chương trình trong khối OB10 sẽđược thực khi giá trị của đồng hồ thời gian thực nằm trong mộtkhoảng thời gian đã quy định OB10 có thể gọi một lần hay nhiềulần cách đều nhau từng phút, từng giờ, từng ngày…
OB20 (Time delay interrupt): chương trình trong khối OB20 sẽđược thực hiện sau một koảng thời gian trễ đặt trước kể từ khi gọichương trình hệ thống SFC32 để đặt thời gian trễ
OB35 (Cyclic interrupt): chương trình trong OB35 sẽ được thựchiện cách đều nhau một khoảng thời gian nhất định Mặc định thờigian này là 100ms, song ta có thể thay đổi nó trong bảng tham số củaCPU nhờ phần mềm STEP7
Trang 14 OB40 (Hardware interrupt): OB40 sẽ được thực hiện khi có tínhiệu ngắt từ ngoại vi đưa vào CPU thông qua cổng vào ra sốonboard đặc biệt, hoặc thông qua Module SM, CP, FM.
OB80 (Cycle time fault): được thực hiện khi thời gian vòngquét vượt quá thời gian cực đại đã quy định (mặc định là 150ms)hoặc có tín hiệu ngắt gọi OB nào đó mà OB này chưa kết thúc ở lầngọi trước
OB81(Power supply fault): khi có lỗi về nguồn nuôi thì CPU sẽ gọiOB81
OB82(Diagnostic interrupt): được gọi khi có phát hiện có sự cố từcác Module vào và ra mở rộng Các Module mở rộng này phải có khảnăng tự kiểm tra
OB85(Not load fault):được gọi khi chương trình có sử dụng chế độngắt nhưng
chương trình ngắt lại không có trong OB tương ứng
OB87 (Communication Fault): được gọi khi CPU thấy có lỗitruyền thông
OB100 (Start up information): được thực hiện một lần khi CPUchuyển trạng thái từ STOP sang RUN
Trang 15 OB121 (Synchronous error): được thực hiện khi CPU thấy lỗi logictrong chương trình như sai kiểu dữ liệu hoặc lỗi truy cập các khối DB,
FC, FB không có trong CPU
OB122 (Synchronous error): được thực hiện khi CPU phát hiện có,lỗi truy nhập Module trong chương trình, ví dụ chương trình có lệnhtruy nhập Module vào và ra nhưng lại không tìm thấy Module này
Trang 16CHƯƠNG 2 GIỚI THIỆU VỀ MODULE MỀM CỦA PID
2.1 GIỚI THIỆU
Nhiều năm trước đây bộ điều khiển PID được coi là bộ điều khiển lýtưởng với các đối tượng có mô hình liên tục Bộ PID thực sự là bộ điềukhiển mà việc thay đổi các tham số của bộ điều khiển có khả năng làmthay đổi tính động và tỉnh của hệ thống điều khiển tự động
Bộ điều khiển PID thực chất là thiết bị điều khiển thực hiện luật điềukhiển được mô tả bằng phương trình sau:
trong đó e(t) là tín hiệu vào, u(t) là tín hiệu của ra của bộ điều khiển, kp
là hệ số khuếch đại của luật điều khiển tỉ lệ, TI hằng số thời gian tichphân, TD là hằng số thời gian vi phân
-Bộ hiệu chỉnh PID
Đố tượng điều khiển
Hình 1.5 Điều khiển với bộ điều khiển PID
Với bộ điều khiển PID, người ta dễ dàng tích hợp các luật điều khiểnđiều khiển khác nhau như luật điều khiển tỉ lệ (luật P), điều khiển tỉ lệ -tích phân (luật PI), điều khiển tỉ lệ -vi phân (luật PD) Bộ điều khiển PID
Trang 17luôn là phần tử không thể thay thế được trong các quá trình tự độngkhống chế nhiệt độ, mức, tốc độ…
Một trong những ứng dụng của bộ điều khiển PID trong điều khiểnthích nghi và điều khiển mờ là thường xuyên phải chỉnh định lại cáctham số của nó cho phù hợp với sự thay đổi không biết trước của đốitượng cũng như của môi trường nhằm đảm bảo được các chỉ tiêu chấtlượng đã đề ra trong hệ thống Nếu như ta đã tự động hóa được côngviệc thay đổi tham số này thì bộ điều khiển bền vững với mọi tác độngcủa nhiễu nội cũng như nhiễu ngoại lên hệ thống
Cũng chính vì vậy mà thiết bị điều khiển quá trình như PLC(proogrammeble Logic Control) của Siemen không thể thiếu đượcmodule điều khiển PID cứng hoặc mềm Trong phần mềm Step7 cónhiều khối FB để hổ trợ việc viết chương trình điều khiển thiết bị sửdụng luật PID như FB41, FB42, FB43, FB58, FB59
Trong phần mềm Step7 có nhiều khối PID nhưng ta chỉ làm rỏ khốiPID FB41
Trang 182.2 SƠ ĐỒ CHÂN CỦA MODULE MỀM FB41
Trang 19
2.3 SƠ ĐỒ CẤU TRÚC CỦA MODULE MỀM FB41
Trang 202.4 CÁCH SỬ DỤNG MODULE MỀM FB41
FB41(CON_T) được sử đụng để điều khiển các quá trình kỹ thuậtvới các biến đầu vào và đầu ra tương tự trên cơ sở thiết bị khả trìnhSimantic Trong khi thiết lập tham số, có thể tích cực hoặc không tíchcực một số thành phần chức năng của bộ điều khiển PID sao cho phùhợp với đối tượng
Có thể sử dụng module mềm PID như một bộ điều khiển với tínhiệu chủ đạo đặt
cứng ( fix setpoint) hoặc thiết kế một hệ thống điều khiển nhiều mạchvòng theo kiều điều khiển cascade Những chức năng điều khiển đượcthiết kế trên cơ sở của luật điều khiển PID của bộ điều khiển mẫu với tínhiệu tương tự
Module mềm PID bao gồm tín hiệu chủ đạo SP_INT, tín hiệu
ra của đối tượng PV_PER, tín hiệu giả để mô phỏng tín hiệu ra củađối tượng PV_IN, các biến trung gian trong quá trình thực hiện luật
và thuật điều khiển PID như PVPER_ON,P_SEL,I_SEL , D_SEL ,MAN_ON…
Tín hiệu chủ đạo SP_INT được nhập dưới dạng số thực dấu phẩyđộng
Trang 21Tín hiệu ra của đối tượng PV_PER:Thông qua hàm nội của FB41 cótên CRP_IN, tín hiệu ra của đối tượng có thể đựơc nhập dưới dạng sốnguyên có dấu hoặc số thực dấu phẩy động Chức năng của CRP_IN làchuyển đổi kiểu biểu diễn của PV_PER từ dạng số nguyên sang số thựcdấu phẩy động có giá trị nằm trong khoảng -100 đến 100% theo côngthức:
Tín hiệu ra của CRP_IN = PV_PER*100/27648
Chuẩn hóa : chức năng của hàm chuẩn hóa PV_NORM tín hiệu ra củađối tượng là
chuẩn hóa tín hiệu ra của hàm CRP_IN theo công thức
Tín hiệu ra của PV_NORM=(tín hiệu ra của CRP_IN) * PV_FAC_OFF
Hai tham trị khống chế giải giá trị cho phép của PV_NORM làPV_FAC và PV_OFF Mặc định PV_FAC của hàm PV_NORM có giátrị bằng 1 và PV_OFF có giá trị bằng 0
Lọc nhiễu tác động trong lân cận điểm làm việc Tín hiệu sai lệch
là hiệu giữa tín hiệu chủ đạo và tín hiệu ra của đối tượng Nó được tạo
ra ngay trong FB41 và là đầu vào của khối DEADBAND hoặc của đốitượng mà có thể bỏ qua sự ảnh hưởng của nhiễu trong lân cận điểm làmviệc ta chọn DEAD_W = 0
Chọn luật điều khiển trên module FB41 (CONT_C)
Trang 22Hình vẽ dưới mô tả thuật PID được thiết kế theo kiểu song song của 3thuật điều khiển đơn lẻ: tỉ lệ P, tích phân I và vi phân D theo sơ đồ cấutrúc (sau khối DEADBAND) Chính vì cấu trúc song song như vậy nên ta
có thể thông qua các tham trị P_SEL,I_SEL, hay D_SEL mà tích hợpcác thuật điều khiển khác nhau từ bộ lấy mẫu như thuật điều khiển P ,
PI , PID
Trang 232.5 THUẬT ĐIỀU KHIỂN PID
Sơ đồ khối của bộ điều khiển PID được thể hiện hình 1.7
Việc điều khiển PID được dựa trên thông số MV:
MV (t )=P out+I out+D out
Trong đó:
Pout là phần tỉ lệ của ngõ ra
Iout là phần tích phân của ngõ ra
Dout là phần vi phân của ngõ ra
2.5.1 Miêu tả hiệu chỉnh PID (PID control action)
Hiệu chỉnh PID là kết hợp điều chỉnh tỷ lệ P, Reset I, Rate D, kết quả tốtnhất đạt được khi hiệu chỉnh PID thực hiện trên hệ thống điều khiển cóthời gian dài Trong ba khâu, P cho phép thực hiện trên hệ thống điềukhiển tự do dao động trong khi dùng tự động đúng offset Hơn nữa, thay
Trang 24đổi biến đặt nhanh đúng trong D gây bởi nhiễu ngoài Ảnh hưởng qua lạicủa ba hoạt động điều khiển này sẽ cho được điều khiển tối ưu Hình 1.8đưa ra biến đặt của PID từng bước thay đổi độ lệch xảy ra và hình 1.9chỉ ra biến đặt khi xảy ra đường dốc thay đổi trong độ lệch.
Hình 1.8 Biến đặt PID từng bước
Hình 1.9 Biến đặt khi xảy ra đường dốc
2.5.2 Khâu tỉ lệ
Đồ thị PV theo thời gian, ba giá trị Kp (Ki và Kd là hằng số) Đồ thịảnh hưởng của khâu tỉ lệ như hình 2.1
Trang 25 Khâu tỉ lệ (đôi khi cũng được gọi là độ lợi) làm thay đổi giá trị đầu
ra, tỉ lệ với giá trị sai số hiện tại Đáp ứng tỉ lệ có thể được điều chỉnhbằng cách nhân sai số đó với một hằng số Kp, được gọi là độ lợi tỉ lệ
Hình 2.1: Đồ thị khâu tỉ lệ
Khâu tỉ lệ được cho bởi:
P out=¿K p e(t )¿
Trong đó:
Pout: Thừa số tỉ lệ của đầu ra
Kp: Độ lợi tỉ lệ, thông số điều chỉnh
e: Sai số = SP – PV
t: Thời gian hay thời gian tức thời (hiện tại)
Độ lợi của khâu tỉ lệ lớn là do thay đổi lớn ở đầu ra mà sai số thayđổi nhỏ Nếu độ lợi của khâu tỉ lệ quá cao, hệ thống sẽ không ổn định.Ngược lại, độ lợi nhỏ là do đáp ứng đầu ra nhỏ trong khi sai số đầu vào
Trang 26lớn, và làm cho bộ điều khiển kém nhạy, hoặc đáp ứng chậm Nếu độlợi của khâu tỉ lệ quá thấp, tác động điều khiển có thể sẽ quá bé khi đápứng với các nhiễu của hệ thống.
Thừa số tích phân được cho bởi:
Iout: thừa số tích phân của đầu ra
Ki: độ lợi tích phân, là một hệ số điều chỉnh
e: sai số = SP – PV
t: thời gian hoặc thời gian tức thời (hiện tại),
𝒯: một biến tích phân trung gian
Khâu tích phân (khi cộng thêm khâu tỉ lệ) sẽ tăng tốc chuyển độngcủa quá trình tới điểm đặt và khử số dư sai số ổn định với một tỉ lệ chỉ
Trang 27phụ thuộc vào bộ điều khiển Tuy nhiên, vì khâu tích phân là đáp ứngcủa sai số tích lũy trong quá khứ, nó có thể khiến giá trị hiện tại vọt lốqua giá trị đặt (ngang qua điểm đặt và tạo ra một độ lệch với các hướngkhác) Để tìm hiểu thêm các đặc điểm của việc điều chỉnh độ lợi tíchphân và độ ổn của bộ điều khiển.
Hình 2.2:Đồ thị ảnh hường của khâu tích phân
2.5.4 Khâu vi phân
Đồ thị PV theo thời gian, như hình 2.3 Với 3 giá trị Kd (Kp và Ki
không đổi) Tốc độ thay đổi của sai số quá trình được tính toán bằngcách xác định độ dốc của sai số theo thời gian (tức là đạo hàm bậc mộttheo thời gian) và nhân tốc độ này với độ lợi tỉ lệ Kd
Tác dụng của khâu vi phân là khi đưa vào hệ thống, nó sẽ làm giảm
độ vọt lố nhưng đồng thời kéo dài thời gian Khâu này được đòi hỏiphải bù với biến đặt tỉ lệ
Trang 28Thừa số vi phân được cho bởi:
D out=K dτ dτ
dτt e(t )
Trong đó:
Dout: Thừa số vi phân của đầu ra
Kd: Độ lợi vi phân, một thông số điều chỉnh
e: Sai số = SP – PV
t: Thời gian hoặc thời gian tức thời (hiện tại)
Khâu vi phân làm chậm tốc độ thay đổi của đầu ra bộ điều khiển vàđặc tính này là đang chú ý nhất để đạt tới điểm đặt của bộ điều khiển
Từ đó, điều khiển vi phân được sử dụng để làm giảm biên độ vọt lốđược tạo ra bởi thành phần tích phân và tăng cường độ ổn định của bộđiều khiển hỗn hợp Tuy nhiên, phép vi phân của một tín hiệu sẽ khuếchđại nhiễu và do đó khâu này sẽ nhạy hơn đối với nhiễu trong sai số, và
có thể khiến quá trình trở nên không ổn định nếu nhiễu và độ lợi viphân đủ lớn Do đó một xấp xỉ của bộ vi sai với băng thông giới hạnthường được sử dụng hơn Chẳng hạn như mạch bù sớm pha
Trang 29Hình 2.3: Đồ thị ảnh hưởng của khâu vi phân
Tóm tắt:
Khâu tỉ lệ, tích phân, vi phân được cộng lại với nhau để tính toán đầu ra
của bộ điều khiển PID Định nghĩa rằng u(t) là đầu ra của bộ điều khiển,
biểu thức cuối cùng của giải thuật PID là:
Trang 30 Độ lợi tỉ lệ Kp
Giá trị càng lớn thì đáp ứng càng nhanh do đó sai số càng lớn, bù khâu
tỉ lệ càng lớn Một giá trị độ lợi tỉ lệ quá lớn sẽ dẫn đến quá trính mất ổnđịnh và dao động
Độ lợi tích phân Ki
Giá trị càng lớn kéo theo sai số ổn định bị khử càng nhanh Đổi lại là độvọt lố càng lớn: bất kỳ sai số âm nào được tích phân trong suốt đáp ứngquá độ phải được triệt tiêu tích phân bằng sai số dương trước khi tiếntới trạng thái ổn định
Độ lợi vi phân Kd
Giỏ trị càng lớn càng giảm độ vọt lố, nhưng lại làm chậm đáp ứng quá
độ và cứ thể dẫn đến mất ổn định do khuếch đại nhiễu tín hiệu trongphép vi phân sai số
Bảng tóm tắt
Hệ số Thời gian xác lập Vọt lố Sai số xác lập
Bảng 1.1: Ảnh hưởng các thông số Kp, Ki, Kd
Trang 312.5.5 Đặt thông số hiệu chỉnh PID
Với Reset I và Rate D đặt t0, hoặc giá trị trung bình (I = 4 min, D = 1min), dải hiệu chỉnh P hẹp dần Khi P hẹp tới mức tới giới hạn dao độngxảy ra, I và D được điều chỉnh theo đặc tuyến điều khiển Đây là mộtphương pháp xác định thông số PID Phương pháp đáp ứng bước và độnhạy cuối cùng được dùng
2.5.6 Tốc độ hiệu chỉnh PID
Thuật toán thường dùng trong việc tính hằng số PID được gọi làPositional Calculation, tính giá trị tuyệt đối của biến đặt liên quan tới độlệch từ điểm đặt trong tốc độ hiệu chỉnh PID, tuy nhiên tăng biến đặt gây
ra bởi độ lệch được tính và kết quả cộng với biến đặt trước để thực hiệnđiều khiển Dù có hai loại thuật tiến hiệu chỉnh PID được biểu diễn bằngcác phương trình khác nhau, hầu hết những cách thức này đều giốngnhau Phương trình vi phân thông thường cho ra vị trí và hằng số tốc độ
2.5.7 Tính toán các thụng số PID
Phương pháp Ziegler- Nichols thứ nhất
Phương pháp này dựa trên đáp ứng quá độ của hệ hở, nó được áp dụngcho các đối tượng có đáp ứng dạng chữ S đối với tín hiệu vào là hàm nấcnhư hình 2.5
Trang 32K: độ lợiT: hằng số thời gianL: thời gian trễCác thông số Kp, Ti, Td được tính dựa vào bảng dưới
Trang 33Bảng 1.2 Bảng thông số điều chỉnh PID dựa vào đáp ứng nấc hệ hở
Phương pháp Ziegler-Nichols thứ hai
Hình 2.6: Sơ đồ bộ điều khiển hệ kín
Phương pháp này dựng cho bộ điều khiển PID trong hệ kín bằng cách cho
Ki = 0 và Kd = 0, tức đối tượng điều khiển có dạng tuyến tính, sau đó tăng
Kp lên cho đến khi hệ nằm ở biên giới ổn định tức là hệ kín trở thành khâudao động điều hòa Lúc đó ta có Kgh và chu kỳ của dao động đó là Tgh.Tham số cho bộ điều khiển PID chọn theo bảng 1.3
Trang 342.6 KHỞI ĐỘNG VÀ THÔNG BÁO LỖI
Phần mềm cho phép chọn chế độ tự động ( automatic mode) hoặc chế
độ bằng tay Ở chế độ bằng tay các giá trị của các biến được chọn bằngtay Bộ tích phân (INT) tự thiết lập chế độ LNM_LNM, P-DISV và bộ
vi phân (DIF) tự động về 0 Điều đó đảm bảo cho việc chuyển chế độ từthiết bị lập giá trị bằng tay về chế độ tự động không gây nên 1 biến đổiđột ngột nào đối với các biến đã được thiết lập giá trị bằng tay
Cũng có thể giới hạn cho các giá trị được thiết lập bằng tay nhờ hàmLMNLIMIT Một bit cờ sẽ có giá trị logic bằng 1 khi biến vào cógiá trị vượt quá giới hạn đã chọn Hàm LMN_MORM sẽ chuẩn hóa tínhiệu ra của hàm LMNLIMIT theo công thức : LMN_PER = LMN
Trang 35tạo I_ITVAL Nếu luật điều khiển này được gọi theo ngắt thời gian, nó
sẽ luôn làm việc với giá trị này Tất cả các đầu ra khác được đặt giá trịmặc định
Khối FB41 (CONT_C) không có khả năng tự kiểm tra lỗi bên trongcủa module mềm PID Mã báo lỗi RET_VAL không được sử dụng
Trang 362.7 CÁC THAM BIẾN CỦA KHỐI FB41
Khối FB41(CONT_C) có các tham biến chính thức đầu vào như sau:
Biến
Kiểudữliệu
Tầm giátrị
Mặcđịnh
Mô tả chức năng
COM_RST
BOOL
FALSE
COMPLETE RESTARTKhối có chức năng khởitạo lại hệ thống hoàn
vào”complete restart
MAN_ON
BOOL
TRUE
MANUAL VALUE ONKhi đầu vào “manualvalue on” có giá trị logicTRUE mạch vòng điềukhiển sẽ bị ngắt,các giá
trị thiết lập bằng tayPVPER_ON BOO
L
FALSE PROCESS VARIABLE
PERIPHERAL ONKhi đọc biến quá trình từcác cổng vào/ra đầu vàoPV_PER phải được nối
Trang 37với các cổng vào/ra vàđầu vào “processvariable peripheral” cógiá trị logic True
P_SEL
BOOL
TRUE
PROPORTIONALACTION ONHoạt động của bộ điềukhiển PID có thể tích cựchoặc không tích cực từngphần riêng trong thuậtđiều khiển PID , thuậtđiều khiển tỉ lệ được kíchhoạt khi giá trị logic Trueđược thiết lập tại cổngvào
“proportional action on”
L
TRUE INTEGRAL ACTION
ONHoạt động của bộ điềukhiển PID có thể tíchcực hoặc không tích cực
Trang 38từng phần riêng trongthuật điều khiển PID ,thuật điều khiển tỉ lệđược kích hoạt khi giá trịlogic True được thiết lập
Đầu ra của bộ điều khiểntích phân có thể bị đông lạnh(not use) khi thiết lập giá trịlogic
true cho đầu vào
“intergral action hold”
I_ITL_ON BOOL FALSE INITIALIZATION OF
THE INTEGRAL ACTIONĐầu ra của bộ điều khiểntích phân có thể được nốivào cổng vào I_ITL_VAL
Trang 39nếu như cổng vào
“initialization of theintergral action on” có giátrị logic true
DERIVATIVE ACTIONON
Hoạt động của bộ điều khiểnPID có thể tích cực hoặckhông tích cực từng phầnriêng trong thuật điều khiểnPID Thuật điều khiển viphân được kích hoạt khi giátrị logic True được thiết lậptại cổng vào “derivativeaction on”
CYCLE TIME >= 1ms T#1s
SAMPLING TIMEThời gian lấy mẫu là khoảngthời gian không đổi giữa các
lần khối được cập nhật.SP_INT REAL -100.0…
100.0(%)
0.0 INTERNAL SETPOINT
Đầu vào “internal setpoint”
Trang 40giá trị vậtlý
được sử dụng để thiết lập tínhiệu chủ đạo (tín hiệu mẫu)
-100.0…
100.0(%)giá trị vậtlý
0.0
PROCESS VARIABLE INGiá trị khởi tạo có thể đặt ởđầu vào “process variablein” hoặc từ biến quá trìnhđược nối với CPU thôngqua cổng vào tương tự