Việc thực hiện và thử nghiệm dự án điều khiển nhiệt độ PID
Meta Description (Meta Description: Học cách xây dựng và kiểm thửĐiều khiển nhiệt độ PIDNhững dự án. Hướng dẫn này bao gồm lựa chọn phần cứng, triển khai phần mềm, điều chỉnh các kỹ thuật PID và đánh giá hiệu suất cho điều khiển nhiệt.
I. giới thiệu
Thuật toán điều khiển PID (Proportional-Integral-Derivative - PID). Bài viết khám phá một bộ điều khiển PID chi tiết. Bài này bắt đầu bằng cuộc thảo luận về những nguyên tắc cơ bản làm nền tảng cho điều khiển PID. Sau đó nó chuyển sang giai đoạn quan trọng của định nghĩa và đặc tả dự án. Sau đó, quá trình lựa chọn và tích hợp của các thành phần phần cứng chính được thảo luận. Sau đó nó được giải thích làm thế nào thuật toán PID có thể được cài đặt trong nền tảng phần mềm được chọn. Bài viết cũng xem xét quá trình quan trọng của việc điều chỉnh PID và các phương pháp để kiểm tra và đánh giá hiệu suất hệ thống. Điều này kết luận bằng cách xem xét những thách thức trong tương lai và những con đường phát triển có thể xảy ra. Mục đích của tổng quan toàn diện này là cung cấp cho người đọc hiểu về các khía cạnh thiết kế, triển khai và vận hành của một dự án điều khiển nhiệt độ PID. Nó sẽ chứng minh ứng dụng thực tế của nó bằng cách sử dụng phương pháp từng bước.
II. Thuật toán điều khiển PID: Hiểu nó
Thuật toán PID là một hệ thống điều khiển phản hồi mạnh và linh hoạt. Thuật toán điều khiển PID được thiết kế để điều chỉnh một đầu vào hệ thống, ví dụ, công suất thành một máy sưởi, để điều chỉnh các biến quá trình. PID được sử dụng rộng rãi vì nó sử dụng ba hành động điều khiển khác nhau mà mỗi địa chỉ một khía cạnh cụ thể của lỗi. Ba hành động kiểm soát, tích phân tỷ lệ và đạo hàm, được tích hợp tuần tự.
Tác dụng tỷ lệ P: Thành phần này tạo ra một tín hiệu đầu ra tỷ lệ thuận với độ lớn của sai số. Sự khác biệt giữa nhiệt độ đặt mong muốn và nhiệt độ thực sự đo bằng cảm biến là tín hiệu lỗi. Một sai số lớn hơn sẽ dẫn đến một kết quả tỷ lệ cao hơn. Mục đích chính của nó là để sửa biến từ đầu, đưa nó đến gần điểm đặt hơn. Tuy nhiên, chỉ sử dụng các hành động tỷ lệ có thể dẫn đến một sai số trạng thái ổn định. Nhiệt độ cuối cùng có thể không khớp với điểm đặt chính xác do sự chậm trễ của hệ thống và các điều kiện không thay đổi.
Tích phân hành động (I) : Thành phần nguyên được sử dụng để loại bỏ sai số dai dẳng ở trạng thái ổn định. Thành phần tích phân tính toán tổng theo thời gian của các tín hiệu lỗi. Khâu tích phân sẽ tăng (hoặc giảm) tín hiệu đầu ra nếu sai số tiếp tục, bất kể nhỏ đến đâu. Điều này đẩy các biến quá trình gần với điểm đặt hơn. Hệ thống cuối cùng sẽ đạt đến nhiệt độ đặt nếu bộ truyền động có thể vượt qua được lực đối lập. Nếu không điều chỉnh cẩn thận, một khâu tích phân có thể giới thiệu dao động hoặc độ trễ.
Dẫn xuất hành động phái sinh (D), thành phần phái sinh này dựa trên tốc độ thay đổi trong tín hiệu lỗi. Đầu ra dựa trên tốc độ thay đổi sai số. Đạo hàm tạo ra một tín hiệu đầu ra có ý nghĩa nếu sai số nhanh chóng tăng hoặc giảm. Điều này giúp dự đoán những sai lệch trong tương lai và làm giảm dao động tiềm năng. Nó cải thiện khả năng đáp ứng và sự ổn định, đặc biệt là trong các hệ thống dễ bị mất ổn định hoặc bắn quá mức do những thay đổi nhanh chóng.
Sự kết hợp của ba hành động này cho phép bộ điều khiển nhiệt độ PID đáp ứng thích hợp với các lỗi hiện tại, học từ các lỗi trước đó và dự đoán những hành động trong tương lai, do đó đạt được độ chính xác cao và ổn định trong điều chỉnh nhiệt độ. Cơ sở thuật toán này rất cần thiết để hiểu được khả năng của các bộ điều khiển PID và sự thực hiện thích hợp của chúng trong thiết lập dự án.
III. Các thông số và yêu cầu của dự án
Điều quan trọng là phải xác định rõ các mục tiêu và hạn chế trước khi bắt đầu việc lắp ráp phần cứng và phát triển phần mềm. Trong giai đoạn này, các mục tiêu điều khiển, số liệu hiệu suất và yêu cầu phần mềm/phần cứng được xác định.
Mục tiêu điều khiển xác định rõ những gì hệ thống cần điều chỉnh. Dự án có thể nhằm mục đích điều chỉnh nhiệt độ không khí trong các thùng nhỏ, duy trì nhiệt độ nước trong một phạm vi nhất định hoặc kiểm soát nhiệt độ thành phần điện tử để tránh quá nóng. Lựa chọn mục tiêu này sẽ ảnh hưởng trực tiếp đến các thành phần được lựa chọn và thiết kế tổng thể.
Hiệu suất mong muốn là một mục tiêu định lượng mà hệ thống cần đáp ứng. Nhiệt độ mục tiêu (điểm đặt), độ chính xác chấp nhận được hoặc dung sai (ví dụ + -0.5degC), thời gian đáp ứng yêu cầu, và khả năng chống lại nhiễu tải được bao gồm. Các thông số kỹ thuật này cung cấp một tiêu chuẩn để đánh giá hiệu suất của hệ thống.
Các yêu cầu phần cứng là một danh sách các thành phần vật lý phải được sử dụng. Điều này bao gồm các cảm biến nhiệt độ, vi điều khiển hoặc đơn vị điều khiển, thiết bị truyền động (các yếu tố làm nóng hoặc cơ chế làm mát), nguồn cung cấp điện phù hợp và có thể một giao diện người dùng (hiển thị hoặc các nút). Xác định các yêu cầu phần cứng trước đó giúp hướng dẫn lựa chọn thành phần và cũng đảm bảo khả năng tương thích.
Các yêu cầu phần mềm xác định các công cụ và môi trường cần thiết. Nó có thể dựa trên sức mạnh xử lý, khả năng I/O, chi phí và dễ sử dụng của một vi điều khiển cụ thể (ví dụ: Arduino Uno/Nano/Mega ESP32 Raspberry Pi STM32). Một mô-đun PID hoặc một bộ điều khiển Logic lập trình có thể được sử dụng. Nền tảng phần mềm xác định cả ngôn ngữ lập trình và môi trường phát triển.
Các giai đoạn thiết kế, thực hiện và thử nghiệm có thể được nhắm mục tiêu một cách hiệu quả hơn bằng cách xác định các thông số kỹ thuật và yêu cầu của dự án ở giai đoạn đầu. Điều này sẽ làm tăng cơ hội tạo ra một điều khiển nhiệt độ PID chức năng và thành công.
IV. Linh kiện phần cứng
Các cặp nhiệt điện chúng được sử dụng rộng rãi vì chúng có thể đo nhiệt độ trên một phạm vi rộng và có giá tương đối thấp. Các cặp nhiệt điện hoạt động bằng cách đo điện áp tạo ra ở giao lộ của hai Kim loại. Khi được sử dụng với bộ điều khiển kỹ thuật số, cặp nhiệt yêu cầu điều hòa tín hiệu như Leng Jie DianBu Chang (bồi thường giao điểm lạnh) hoặc mạch tuyến tính.
Máy dò nhiệt độ điện trở: Cung cấp độ chính xác cao hơn và ổn định hơn so với các cặp nhiệt ở nhiệt độ thấp. PT100 và PT1000 dựa trên điện trở thay đổi của vật liệu Kim loại (thông thường là bạch Kim). RTDs phản ứng tuyến tính hơn, nhưng chúng cũng có thể tốn kém hơn so với các cặp nhiệt điện.
Thermistor được biết đến với độ nhạy cảm cao, đặc biệt là trong một khoảng nhiệt độ nhất định. Nhiệt độ có hệ số nhiệt dương hoặc âm. Thermistor có xu hướng ít tốn kém hơn RTDs, nhưng chúng có phạm vi nhiệt độ nhỏ hơn. Chúng cũng ít tuyến tính hơn.
Bộ điều khiển này là bộ não của hệ thống và thực hiện các phép tính PID. Trong quá khứ, bộ điều khiển phần cứng chuyên dụng và PLC đã được sử dụng. Vi điều khiển được sử dụng trong nhiều dự án hiện đại vì sự linh hoạt, khả năng chi trả và hỗ trợ cộng đồng của chúng. Do sự đơn giản của họ và các thư viện lớn, Uno Arduino (dựa trên Atmel AVR) là một lựa chọn phổ biến cho các dự án DIY. ESP32 đã tích hợp Wi-Fi, Bluetooth và cho phép tích hợp IoT. Vi điều khiển STM32 phù hợp hơn cho các ứng dụng đòi hỏi sức mạnh xử lý cao hơn. Chúng cũng có thiết bị ngoại vi tiên tiến. Quyết định này dựa trên yêu cầu phức tạp, ngân sách và xử lý dự án. Một bộ điều khiển PLC hoặc mô-đun PID chuyên dụng có thể được sử dụng thay thế, cung cấp độ tin cậy cao hơn, các tính năng công nghiệp, nhưng đắt hơn. Điều quan trọng là bộ điều khiển có đủ khả năng đầu vào/đầu ra (I/O) để cho phép nó liên lạc với cả cảm biến và thiết bị truyền động.
Cơ cấu chấp hành là một thành phần nhận được một lệnh đầu ra và chuyển đổi nó thành một hành động vật lý làm thay đổi nhiệt độ của quá trình.
Vận hành an toàn, điều quan trọng là phải sử dụng các đầu nối và dây để lắp đặt đúng cách.
Mặc dù không cần thiết cho các hoạt động cơ bản của hệ thống, giao diện người dùng có thể cải thiện khả năng chẩn đoán và sử dụng. Màn hình thường bao gồm màn hình LCD hoặc OLED để hiển thị trạng thái hệ thống, giá trị lỗi, nhiệt độ điểm đặt và giá trị hiện tại. Chiết áp được sử dụng để điều chỉnh thủ công các thông số, chẳng hạn như điều chỉnh độ lợi của PID. Nút có thể được sử dụng để thiết lập các chế độ đặt và switch. Các chỉ số trạng thái như LED có thể chỉ ra sức mạnh, tình trạng lỗi hoặc trạng thái chấp hành. Một hệ thống đơn giản có thể hoạt động mà không có giao diện, nhưng một hệ thống cơ bản được khuyến cáo để kiểm thử và điều chỉnh hệ thống.
Một vỏ bọc thích hợp sẽ bảo vệ các thành phần phần cứng chống lại các yếu tố môi trường như bụi, độ ẩm và thiệt hại vật lý. Điều này có thể cải thiện độ tin cậy và độ bền của hệ thống.
Bước tiếp theo, sau khi chọn và lắp ráp các thành phần phần cứng, là để cài đặt thuật toán PID trong nền tảng phần mềm. Nó liên quan đến việc viết mã để đọc dữ liệu cảm biến, tính toán đầu ra PID và điều khiển thiết bị truyền động. Nền tảng phần mềm có tác động đáng kể đến quy trình phát triển.
Nền tảng phần mềm cung cấp một loạt các tùy chọn. Tại Arduino' s ease-of-use, cộng đồng hỗ trợ lớn, và sự sẵn có của các thư viện, vi điều khiển như Arduino rất phổ biến trong các dự án DIY. Arduino IDE đơn giản hóa quá trình viết mã và tải lên nó. Các nền tảng như ESP32, có khả năng WiFi và Bluetooth tích hợp và phù hợp cho các dự án phức tạp (và cung cấp nhiều sức mạnh xử lý hơn) cũng là tùy chọn. Python trên một vi điều khiển hoặc máy tính với các thư viện thích hợp, chẳng hạn như Pyautotune (để tự động điều chỉnh) và Numpy (đối với các hoạt động số), có thể thích hợp hơn với các dự án yêu cầu mạnh mẽ. Các gói điều khiển PLC hoặc PID thương mại có thể được sử dụng trong một số dự án. Nó phụ thuộc vào mức độ phức tạp của dự án, liệu lập trình viên có kinh nghiệm với nền tảng và những chức năng nó yêu cầu.
Thiết kế phần mềm thường bao gồm một số mô-đun chính. Đầu tiên, module sẽ đọc dữ liệu từ bộ cảm biến. Nếu bạn đang sử dụng Arduino, điều này có thể đòi hỏi phải đọc các giá trị tương tự bằng cách sử dụng ADCs (tương tự như bộ chuyển đổi số). Các mã cho cảm biến kỹ thuật số có thể đọc dữ liệu bằng cách sử dụng các giao thức như I2C hoặc SPI (ví dụ: cảm biến RTD). Mã phải chứa các công thức hiệu chuẩn thích hợp để chuyển đổi dữ liệu cảm biến thô sang cách đọc nhiệt độ có ý nghĩa (ví dụ degC hoặc ° F).
Việc thực hiện các thuật toán PID là cốt lõi của phần mềm. Trong cấu trúc mã, các tham số của PID (Kp Ki Kd) được định nghĩa. Những thứ này sẽ được điều chỉnh trong giai đoạn điều chỉnh. Thuật toán xác định độ chênh lệch (điểm đặt và nhiệt độ đo) để tính sai số. Mã dùng sai số này để tính toán sự đóng góp của tích phân, đạo hàm, và tỷ lệ. * là tỷ lệ thuận. Khâu tích phân được tính bằng cách cộng các lỗi theo thời gian. Thuật ngữ này có thể được ngăn chặn để phát triển quá lớn bằng cách sử dụng một kỹ thuật tăng tốc tích hợp. Phương pháp thông dụng nhất là sử dụng phương pháp đánh bóng, chạy tổng cộng đánh bóng; Khi lỗi được thêm theo thời gian và sau đó đặt giới hạn. Ước tính sai số này được thực hiện bằng cách chia * (sai số - lỗi tiền sử)/khoảng thời gian. Lỗi trước đó sẽ được lưu như một biến. Tổng của ba số hạng được tính là những gì đại diện cho đầu ra. Tín hiệu đầu ra phải được ánh xạ vào tín hiệu điều khiển thiết bị truyền động.
Mã để điều khiển thiết bị truyền động sẽ chuyển đổi controller' s tính toán đầu ra vào một thông báo có thể được hiểu bởi bộ truyền động. Mã, ví dụ, sử dụng đầu ra được tính toán để xác định chu kỳ làm việc của PWM để điều khiển các phần tử làm nóng bằng cách sử dụng MOSFET. Giá trị này thường là từ 0 đến 255 cho một Arduino. Mã sẽ sử dụng đầu ra được tính toán (thường là giá trị từ 0 đến 255 cho một Arduino) để xác định trạng thái của pin kỹ thuật số. Chức năng lập bản đồ này phù hợp với phạm vi đầu ra của bộ điều khiển đến các yêu cầu của thiết bị truyền động.
Mã cho giao diện người dùng phải xử lý các đầu vào, chẳng hạn như thiết lập điểm đặt (có lẽ qua các nút hoặc chiết áp) và hiển thị thông tin liên quan trên mô-đun hiển thị (ví dụ như nhiệt độ hiện tại, điểm đặt và lỗi).
Trình tự này được lặp lại ở một khoảng xác định trước bởi vòng điều khiển chính (ví dụ như sử dụng vòng lặp trên Arduino, hoặc cấu trúc tương tự) để đạt được một vòng phản hồi liên tục. Khai báo các biến để giữ thông tin cảm biến và các dữ liệu khác như giá trị điểm đặt, lỗi hoặc lỗi trước đó, tính toán tích phân, thành phần phái sinh và đầu ra cuối cùng. Mô đun có thể đạt được bằng cách sử dụng các chức năng (ví dụ như một chức năng đọc, một chức năng truyền động, và một hàm tính toán PID).
Giai đoạn phát triển ban đầu rất quan trọng để kiểm thử và gỡ lỗi. Câu lệnh in có thể được bao gồm trong mã (ví dụ serial.print () cho Arduino) hiển thị các giá trị cảm biến, số lỗi và kết quả tính toán để cho phép điều chỉnh thủ công. Trong phiên bản cuối cùng, chúng sẽ được gỡ bỏ hoặc thay thế bằng một chức năng hiển thị thích hợp.
VI. Cài đặt và lắp ráp hệ thống
Sau khi lựa chọn các thành phần phần cứng và viết mã phần mềm, giai đoạn sau là lắp ráp và thiết lập vật lý cho hoạt động. Cần chú ý đến các chi tiết để đảm bảo an toàn và hoạt động đúng.
Kết nối các thành phần là bước đầu tiên trong việc lắp ráp một hệ thống. Kết nối các thành phần bắt đầu với các cảm biến. Các cảm biến thường được kết nối với đầu vào analog hoặc chân kỹ thuật số của bộ điều khiển. Các chân đầu ra bộ điều khiển (ví dụ: chân analog cho PWM hoặc chân kỹ thuật số cho chuyển mạch chuyển mạch) được kết nối với các cơ cấu chấp hành. Các chân cung cấp điện phải được kết nối với đầu vào năng lượng điều khiển và nhu cầu về sức mạnh cảm biến. Thông tin an toàn quan trọng: kiểm tra lại mối quan hệ của bạn trước khi bạn sử dụng quyền lực. Hệ thống dây không chính xác có thể làm hỏng các bộ phận. Tất cả các kết nối phải được cách ly và bảo mật. Đối với cảm biến và mạch kỹ thuật số, nền tảng là cần thiết cho hoạt động đáng tin cậy.
Các thành phần nên được lắp đặt trong một vỏ bọc phù hợp. Nó có thể ở dạng một hộp dự án, hoặc thậm chí một thiết lập được thiết kế tùy chỉnh. Việc gắn kết bảo vệ các thành phần chống lại sự tiếp xúc tình cờ hoặc ảnh hưởng đến môi trường. Điều quan trọng là đặt bộ điều khiển trong một khu vực có đầy đủ luồng không khí. Dây cáp và tay áo có thể được sử dụng để quản lý gọn gàng các dây.
Mã phần mềm có thể được biên dịch trên máy tính hoặc tải về vi điều khiển. Mã phải không có lỗi. Các kiểm tra đơn giản liên quan đến việc kết nối ba thành phần quan trọng nhất: cảm biến, bộ điều khiển và thiết bị truyền động. Sau đó chúng được kiểm tra để xác minh chức năng cơ bản như bộ điều khiển có thể đọc cảm biến hoặc điều khiển thiết bị truyền động.
7. Quá trình điều chỉnh PID
Sự điều chỉnh chính xác của bộ điều khiển PID là điều cần thiết để đạt được hiệu suất bạn mong muốn. Hệ thống có thể không ổn định (dạng sóng quá mức), chậm phản ứng, hoặc không đạt được điểm đặt mong muốn. Điều chỉnh là quá trình tìm kiếm các giá trị cho tỷ lệ Kp, tích phân Ki và các thông số Kd đạo hàm để tối ưu hóa hành vi của hệ thống. Thay đổi lặp đi lặp lại các thông số này là một phần của quá trình điều chỉnh. Những phương pháp điều chỉnh rất phổ biến:
Kiểm soát tỷ lệ với (P) :
Một biểu thức tỷ lệ sinh ra một kết quả tỷ lệ thuận với sai số. Độ lợi tỷ lệ làm tăng đáp ứng của hệ thống đối với một sai số. Điều này dẫn đến việc sửa trị nhanh hơn. Mục tiêu của khâu tỉ lệ là di chuyển biến quá trình về phía điểm đặt. Mục đích chính của nó là để sửa biến, đưa nó đến gần mục tiêu hơn. Tuy nhiên, chỉ sử dụng điều khiển tỷ lệ có thể dẫn đến một lỗi trạng thái ổn định. Nhiệt độ cuối cùng có thể không khớp với điểm đặt chính xác do sự chậm trễ hệ thống hoặc điều kiện tải cố định. Tín hiệu đầu ra#39; độ lớn s được xác định bởi độ lợi tỷ lệ. Kp cao hơn sẽ tạo ra phản ứng tích cực, trong khi Kp thấp hơn sẽ tạo ra phản ứng dần dần. Tín hiệu đầu ra#39; độ lớn s được xác định bởi độ lợi tỷ lệ. Kp cao hơn sẽ tạo ra phản ứng tích cực, trong khi Kp thấp hơn sẽ tạo ra phản ứng dần dần. Tín hiệu đầu ra#39; độ lớn s được xác định bởi độ lợi tỷ lệ. Kp cao hơn sẽ tạo ra phản ứng tích cực, trong khi Kp thấp hơn sẽ tạo ra phản ứng dần dần. Tín hiệu đầu ra#39; độ lớn s được xác định bởi độ lợi tỷ lệ. Kp cao hơn sẽ tạo ra phản ứng tích cực, trong khi Kp thấp hơn sẽ tạo ra phản ứng dần dần. Tín hiệu đầu ra#39; độ lớn s được xác định bởi độ lợi tỷ lệ. Kp cao hơn sẽ tạo ra phản ứng tích cực, trong khi Kp thấp hơn sẽ tạo ra phản ứng dần dần.
Điều khiển tích phân (I) : Bằng cách sử dụng khâu tích phân, điều khiển có thể sửa lỗi ở trạng thái ổn định có thể để lại bởi các khâu tỉ lệ. Độ lợi tích phân (Ki), mà xác định tốc độ mà bộ điều khiển có thể sửa lỗi này, được xác định bằng độ lợi tích phân. Số hạng tích phân được dùng để tính tổng tổng lỗi tích lũy. Khâu tích phân sẽ tăng (hoặc giảm) tín hiệu đầu ra nếu sai số tiếp tục. Điều này đẩy các biến quá trình gần với điểm đặt hơn. Hệ thống cuối cùng sẽ đạt đến nhiệt độ điểm đặt nếu bộ chấp hành có thể vượt qua tất cả các lực đối lập. Độ lợi tích phân (Ki), là lượng thời gian bộ điều khiển phản ứng với một lỗi, xác định độ lớn mà nó làm như vậy. Ki cao hơn sẽ dẫn đến việc loại bỏ nhanh hơn các lỗi trạng thái ổn định, trong khi Ki thấp hơn sẽ dẫn đến các phản hồi chậm hơn. Độ lợi tích phân (Ki), xác định sức mạnh của controller' s trả lời sai số. Ki cao nghĩa là sửa lỗi trạng thái ổn định nhanh hơn. Lower Ki chỉ ra một phản ứng dần dần hơn.
Đạo hàm điều khiển (D) : Điều khiển phái sinh này cung cấp các hành động sửa chữa dựa trên tốc độ thay đổi của lỗi. Điều này giúp cải thiện đáp ứng của hệ thống khi có rối loạn.
- Bộ điều khiển nhiệt độ PID UK: Understanding and implementation Proportional-Integral-Derivative Control
- Một phân tích sâu của bộ điều khiển nhiệt độ PID