Lưu ý: Bài viết này được tác giả dịch từ nguồn chính là trang web rockwellautomation.com và dùng các nguồn khác trên Internet để tham khảo. Bài viết chủ yếu được soạn để chia sẻ kiến thức cho tất cả mọi người những ai mới tìm hiểu về dòng PLC Micro800s. Để tôn trọng quyền tác giả tất cả nội dung tham khảo đều nằm trong mục tài liệu tham khảo ở bên dưới cùng bài viết, ngoài ra trong quá trình dịch và diễn giải nếu có sai xót nào các bạn cũng có thể bình luận ở dưới bài viết để tác giả chỉnh sửa cho hoàn thiện hơn 😀 . Bây giờ chúng ta sẽ vào nội dung chính.

Hàm IPIDCONTROLLER được dùng trong dòng PLC Micro800s cụ thể là áp dụng cho các bộ điều khiển Micro810, Micro820, Micro830, Micro850, Micro870 và Micro800 Simulator. Với các ngôn ngữ được hỗ trợ như: Function Block Diagram, Ladder Diagram, Structured Text.

IPIDCONTROLLER được viết tắt bởi proportionalintegralderivative controller. Dùng để cấu hình và kiểm soát các đầu vào và đầu ra được sử dụng cho logic -tích phân (proportional)-tỷ lệ ( integral )- đạo hàm (derivative) ( viết tắt là PID).

PID được sử dụng để kiểm soát các đặc tính vật lý có thể kể đến như nhiệt độ, áp suất, chất lỏng, mực hoặc tốc độ dòng chảy bằng cách sử dụng các vòng lặp quá trình (process loops) để tính toán giá trị “sai số” chính là hiệu số giữa giá trị đo thông số biến đổi và giá trị điểm đặt mong muốn. Thông số biến đổi ở đây còn gọi là biến quá trình (process variable-PV) và giá trị điểm đặt (hay điểm đặt) tiếng anh là setpoint (SP).

Bộ điều khiển sẽ cố gắng thực hiện giảm tối thiểu sai số theo thời gian bằng cách điều chỉnh một biến điều khiển (control variable). Phép tính bao gồm các số hạng tỷ lệ (P), tích phân (I) và đạo hàm (D), cụ thể như sau:

  • P – sai số hiện tại.
  • I – sai số quá khứ.
  • D – dự đoán các sai số tương lai, dựa vào tốc độ thay đổi hiện tại. Được dùng để kiểm soát các đặc tính vật lý như nhiệt độ, áp suất, mực chất lỏng hoặc tốc độ dòng chảy bằng cách sử dụng các vòng lặp quá trình.

Hình 1. Khối lệnh IPIDCONTROLLER.

Bảng mô tả khối lệnh trên

Lưu ý: Nếu bạn xem trên điện thoại có thể chuyển sang xem chế độ máy tính để hiển thị trực quan hơn

Tham sốKiểu tham sốKiểu dữ liệuMô tả
  EN  Input  BOOLKhi TRUE, kích hoạt khối lệnh.   TRUE – thực hiện phép tính PID.   FALSE – khối lệnh không hoạt động.   Áp dụng cho chương trình Sơ đồ bậc thang.
ProcessInputREALbiến quá trình (Process value – PV), là giá trị được đo từ đầu ra của quá trình.
SetPointInputREALSet point (SP) điểm đặt.
FeedBackInputREALTín hiệu phản hồi, là giá trị của biến điều khiển được áp dụng cho quá trình. Ví dụ: phản hồi có thể là đầu ra IPIDCONTROLLER.
AutoInputBOOLChế độ hoạt động của bộ điều khiển PID: TRUE- bộ điều khiển chạy ở chế độ bình thường.FALSE – bộ điều khiển gây ra thiết lập lại R để theo dõi (F-GE).
InitializeInputBOOLSự thay đổi giá trị (TRUE thành FALSE hoặc FALSE thành TRUE) khiến bộ điều khiển loại bỏ bất kỳ mức tăng tỷ lệ nào trong chu kỳ đó. Đồng thời khởi tạo chuỗi AutoTune.  
GainsInputGAIN_PIDĐộ lợi PID của khối lệnh IPIDController. Sử dụng kiểu dữ liệu GAIN_PID để xác định các tham số cho đầu vào độ lợi (Gains).
AutoTuneInputBOOLTRUE – Khi AutoTune là TRUE và Auto và Initialize là FALSE, Trình tự AutoTune sẽ khởi động.  
FALSE – Không khởi động Autotune.
ATParametersInputAT_ParamTham số Auto Tune.  Sử dụng kiểu dữ liệu AT_Param để xác định các tham số cho đầu vào cho ATParameters.
OutputOutputREALGiá trị đầu ra từ bộ điều khiển.
AbsoluteErrorOutputREALSai Số Tuyệt Đối (Absolute error) từ bộ điều khiển.
Absolute error= (Process – SetPoint)
ATWarningsOutputDINT(ATWarning) Cảnh báo về trình tự Auto Tune. Giá trị có thể là:
 • 0 – Không có auto tune hoàn thành.
• 1 – ở chế độ auto tune.
• 2 – auto tune hoàn thành.
• -1 – ERROR 1 đầu vào tự động được đặt thành TRUE, không thể điều chỉnh tự động (Auto tune).
• -2 – ERROR 2 Lỗi auto tune, ATDynaSet đã hết hạn.
OutGainsOutputGAIN_PIDĐộ lợi được tính sau chuỗi AutoTune. Sử dụng kiểu dữ liệu GAIN_PID để xác định đầu ra OutGains.
ENOOutputBOOLBật đầu ra. Áp dụng cho chương trình Ladder.

Kiểu dữ liệu GAIN_PID

Tham sốKiểu dữ liệuMô tả
DirectActing BOOL Các loại tác dụng (type of acting):

 • TRUE -tác dụng trực tiếp (direct acting), đầu ra di chuyển cùng hướng với sai số (error). Nghĩa là, giá trị quá trình thực tế (actual process value ) lớn hơn SetPoint và hành động thích hợp của bộ điều khiển là tăng đầu ra, Ví dụ: Làm lạnh (Chilling)

 • FALSE -reverse acting, output moves opposite direction as error. That is, the actual process value is greater than the SetPoint and the appropriate controller action is to decrease the output For example: Heating.
ProportionalGain REAL 
TimeIntegral REAL 
TimeDerivative  REAL  
DerivativeGain REAL 

Kiểu dữ liệu AT_Param

Bảng sau đây mô tả các tham số kiểu dữ liệu AT_Param.

Tham sốKiểu dữ liệuMô tả
Load REALLoad thông số để điều chỉnh tự động (auto tuning). Đây là giá trị đầu ra khi khởi động AutoTune.
Deviation REALĐộ lệch (deviation) cho điều chỉnh tự động (auto tuning). Đây là độ lệch chuẩn (standard deviation) được sử dụng để đánh giá dải nhiễu (noise band) cần thiết cho AutoTune.
Step REALGiá trị bước (step value) cho AutoTune. Phải lớn hơn dải nhiễu (noise band) và nhỏ hơn ½ Load.
ATDynamSet REALThời gian chờ tính bằng giây trước khi bỏ auto tune.
ATReset BOOLDấu hiệu cho biết liệu giá trị đầu ra có được đặt lại về 0 sau một trình tự AutoTune hay không:
• TRUE – đặt lại đầu ra về 0.
• FALSE – để lại đầu ra ở giá trị Load.

Các tài liệu tham khảo:

  1. RockwellAutomation.com
  2. Wikipedia

👉 Theo dõi Nalan.vn

[aps-counter theme=”theme-4″]

. . . . .

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *