Đề tài nghiên cứu về pid và fuzzy trên nền tảng công cụ labview giúp cho việc học tập ,làm đồ án đề tài môn học. Điều chỉnh tốc độ động cơ so sánh được kết quả đáp ứng với bộ điều chỉnh pid và fuzzy và hệ thống đáp ứng tốt nhất có thể. Đề tài gồm nội dung 3 chương: chương 1. giới thiệu chung về phần mềm labview chương 2.ứng dụng bộ điều chỉnh pid và fuzzy chương 3.thiết kế giao diện mô phỏng và điều khiển trực tiếp trên phần mềm labview.
Trang 1ĐỀ TÀI: THIẾT KẾ VÀ GIÁM SÁT TRỰC TIẾP TỐC ĐỘ ĐỘNG CƠ DC TRÊN PHẦN MỀM L ABVEIW SỬ DỤNG THUẬT TOÁN PID VÀ FUZZY LOGIC
Trang 2CHƯƠNG I: GIỚI THIỆU TỔNG QUAN VỀ PHẦN MỀM LAPVIEW
I.1 Tổng quan về phần mềm Labview
1.1.1 Giới thiệu chung
Labview(viết tắt của Laboratory Virtual Instrumentation EngineeringWorkbench) là môi trường ngôn ngữ đồ họa hiệu quả trong việc giao tiếp đa kênh giữacon người, thuật toán và các thiết bị
Gọi Labview là ngôn ngữ đồ họa hiệu quả vì về cách thức lập trình, Labview khácvới các ngôn ngữ C (hay Python, Basic) ở điểm thay vì sử dụng các từ vựng (từ khóa)
cố định thì Labview sử dụng các khối hình ảnh sinh động và các dây nối để tạo ra cáclệnh và các hàm như trong hình Cũng chính vì sự khác biệt này mà Labview đã giúpcho việc lập trình trở nên đơn giản hơn bao giờ hết, đặc biệt Labview rất phù hợp đốivới kỹ sư, nhà nghiên cứu khoa học, hay giảng viên Chính sự đơn giản, dễ học, dễnhớ đã giúp cho Labview trở thành một trong những công cụ phổ biến trong các ứngdụng thu thập dữ liệu từ các cảm biến, phát triển các thuật toán, và điều khiển thiết bịtại các phòng thí nghiệm trên thế giới
Hình 1.1 Biểu tượng của phần mềm LapviewTrong Labview chúng ta có thể xây dựng giao diện người sử dụng bằng việc thiếtlập các công cụ và các đối tượng Giao diện người sử dụng được hiểu như là một frontpanel rồi sau đó đưa code vào trong sơ đồ khối để điều khiển các đối tượng ở trên frontpanel Sơ đồ khối cũng có thể hiểu như một lưu đồ thuật toán
Labview được tích hợp đầy đủ các chức năng giao tiếp với các phần cứng GPIB,VXI, PXI, RS-232, RS-485, các thiết bị thu nhận dữ liệu Lapview cũng xây dựng cácđặc trưng cho việc kết nối các ứng dụng của bạn với Wed ứng dụng sử dụng LabviewWed Server và chuẩn mạng TCP/IP và Active X
1.1.2 Vai trò của Labview
- Kiểm tra, đo kiểm và phân tích tín hiệu trong kỹ thuật (đo nhiệt độ, phântích nhiệt độ trong ngày)
- Thu thập dữ liệu (Data Acquisition), (thu thập các giá trị áp suất, cường
độ, dòng điện,…)
Trang 3- Điều khiển các thiết bị (điều khiển động cơ DC, điều khiển nhiệt độ trong
- Giao tiếp máy tính và truyền dẫn dữ liệu qua các cổng giao tiếp (hỗ trợhầu hết các chuẩn giao tiếp như USB, PCI, COM, RS-232, RS-485)
Hình 1.2 Vai trò của Labview
I.2 Các khối chức năng trong bài toán
1.2.1 Khối Control Design and Simulation
Control Design là một quá trình liên quan đến việc phát triển mô hình toán
học mô tả một hệ thống vật lý, phân tích các mô hình để tìm hiểu về đặc điểmnăng động của họ, và tạo ra một bộ điều khiển để đạt được các đặc tính năngđộng nhất định
Simulation Module là một quá trình liên quan đến việc sử dụng phần mềm để
tái tạo và phân tích hành vi của các hệ thống năng động Bạn sử dụng quá trình
mô phỏng để giảm chi phí phát triển sản phẩm bằng cách đẩy mạnh phát triểnsản phẩm Bạn cũng sử dụng quá trình mô phỏng để cung cấp cái nhìn sâu sắcvào các hành vi của các hệ thống năng động, bạn không thể tái tạo thuận tiệntrong phòng thí nghiệm
Tất cả VI liên quan đến các mô-đun và bộ công cụ được đặt trong thiết kế điềukhiển và mô phỏng Toolkit:
Trang 4Simulation Module (mô phỏng)
Các mô phỏng Palette trong LabVIEW:
Các tính năng chính trong bảng mô phỏng bao gồm:
• Control and Simulation Loop (Kiểm soát và mô phỏng vòng) - Bạn phải đặt tất
cả các chức năng mô phỏng trong một Control & Simulation Vòng hoặc trong một
• Continuous Function Linear Systems (Liên tục chức năng tuyến tính hệ thống)
- Sử dụng chức năng tuyến tính Hệ thống liên tục để đại diện cho các hệ thốngtuyến tính liên tục của các phương trình vi phân trên sơ đồ mô phỏng
Trang 5Integrator -Tích hợp một tín hiệu đầu vào liên tục sử dụng các phương trình
vi phân thường (ODE) giải bạn chỉ định cho các mô phỏng
Derivative-Đạo hàm một tín hiệu đầu vào liên tục sử dụng các phươngtrình vi phân thường (ODE) giải bạn chỉ định cho các mô phỏng
Transport delay- Trì hoãn tín hiệu đầu vào bằng số lượng thời gian bạn chỉđịnh
Transfer function- Thực hiện một mô hình hệ thống ở dạng hàm truyền.Bạn xác định mô hình hệ thống bằng cách xác định Tử số và mẫu số của phươngtrình hàm truyền
State-Space- Thực hiện một mô hình hệ thống ở dạng không gian trạngthái Bạn xác định mô hình hệ thống bằng cách xác định các ma trận đầu vào, đầu
ra, tiểu bang và truyền trực tiếp
• Signal arithmetic functions (Chức năng tín hiệu số học) - Sử dụng các chức
năng tín hiệu số học để thực hiện phép tính số học cơ bản về tín hiệu trong một hệthống mô phỏng
Design Control(Thiết kế kiểm soát)
Trang 6Design Control là một quá trình liên quan đến việc phát triển mô hình toánhọc mô tả một hệ thống vật lý, phân tích các mô hình để tìm hiểu về đặcđiểm năng động của bài toán, và tạo ra một bộ điều khiển để đạt được cácđặc tính năng động nhất định.
Các Thiết kế kiểm soát Palette trong LabVIEW:
LabVIEW PID and Fuzzy Logic Toolkit
NI LabVIEW PID và Fuzzy Logic Toolkit thêm thuật toán điều khiển đểLabVIEW Bằng cách kết hợp các chức năng điều khiển logic PID và mờ trong bộcông cụ này với các hàm toán học và logic trong phần mềm LabVIEW, bạn có thểnhanh chóng phát triển các chương trình điều khiển tự động Bạn có thể tích hợpcác công cụ kiểm soát với sức mạnh của thu thập dữ liệu
PID control (Kiểm soát PID)
Trang 7Hiện nay, tỉ lệ-Integral-Derivative (PID) thuật toán là thuật toán điều khiển phổbiến nhất được sử dụng trong ngành công nghiệp.Thông thường, người sử dụngPID để điều khiển các quá trình bao gồm hệ thống sưởi và làm mát hệ thống, theodõi mức chất lỏng,dòng điều khiển và kiểm soát áp lực Trong điều khiển PID, bạnphải xác định một biến quá trình và điểm đặt Biến quá trình là tham số hệ thốngbạn muốn kiểm soát, chẳng hạn như nhiệt độ, áp suất, hoặc tốc độ dòng chảy, vàcác điểm đặt là giá trị mong muốn cho tham số bạn đang kiểm soát Một bộ điềukhiển PID xác định một giá trị đầu ra điều khiển, chẳng hạn như sức mạnh nónghoặc vị trí van Bộ điều khiển áp dụng giá trị sản lượng điều khiển hệ thống, do đóthúc đẩy quá trình biến đối với giá trị điểm đặt.
The PID function
- Output range: Dải giá trị đầu ra
- Setpoint: Giá trị thiết lập.
- Process variable: Giá trị của biến điều chỉnh khi có vòng phản hồi.
- PID gains: Bộ tham số của bộ điều khiển PID.
- dt(s): Vi phân của thời gian, giá trị này được thiết lập khi thời gian đáp ứng là nhỏ
hoặc bằng 0
- Reinitialize: Tham số bên trong dùng để thiết lập giá trị của bộ điều khiển PID trở
về giá trị mặc định
- Output: giá trị tín hiệu đầu ra.
- dt out(s): giá trị đầu ra khi dt(s) được thiết lập Hàm PID thực hiện chức năng điều
khiển dưới hình thức tính tổng hoặc song song.PID không có bộ lọc, vì vậy sẽ bị ảnhhưởng bởi nhiễu PID không được thiết lập ở chế độ bằng tay, điều này gây khó khăn
để sử dụng trong hiệu chỉnh và khởi động
The PID advanced function
Trang 8- Manual control: Thiết lập giá trị điều khiển bằng tay
- Auto (T): Đây là chức năng tiên tiến của bộ điều khiển PID Lựa chọn chế độ điều
khiển tự động hay bằng tay, nếu tự động là True, nếu bằng tay là False
- Setpoint range: dải giá trị đặt.
- Beta: Giá trị để thay đổi tải, nằm trong khoảng từ 0 đến 1, lấy giá trị mặc định là 1
- Linearity: độ tuyến tính của đáp ứng lỗi Hàm PID advanced là hàm PID nâng cao
bởi vì ngoài những đặc điểm giống với PID function, PID advanced được thiết lập ởchế độ bằng tay Có hai chế độ điều khiển là tự động hay và bằng tay Và giá trị tínhiệu điều khiển bằng tay sẽ không ảnh hưởng khi bạn lựa chọn chế độ điều khiển tựđộng Chính vì vậy mà PID advanced được sử dụng phổ biến
The PID autotuning function
- Autotuning parameters: Tham số tự điều chỉnh
- Autotune: Khi bắt đầu yêu cầu tự động điều chỉnh tham số này có giá trị là True, khi
đầu vào chịu sự điều chỉnh của cơ học thì giá trị được mặc định là False
- Tuning completed: có thể lấy giá trị đầu ra này để quay trở lại phản hồi với các bộ
tham số PID
- PID gains out: Giá trị các tham số của bộ điều khiển sau khi tự động điều chỉnh Điềuchỉnh tự động bằng cách thay đổi chế độ ON/OFF của Rơle Thông tin của sự điềuchỉnh đó dùng để tính toán các tham số của bộ điều khiển
Trang 9 The PID setpoint profile function
- Setpoint profile: Thiết lập các giá trị đặt đầu vào của hàm thời gian.
- Profile complete: Hoàn chỉnh giá trị đặt của thời gian
- Elapsed time(s): Thời gian chạy thiết lập giá trị thời gian đặt là một hằng số hoặc là
một hàm tuyến tính
The PID control Input Filter function
Đầu vào của tín hiệu được đưa qua bộ lọc, sau đó sẽ cho qua phép đo để giảmthiểu nhiễu tác động
The PID gain Schedule function
- Gain scheduling value: Giá trị đầu vào các tham số PID của quy trình khuếch đại.
The PID gain Schedule function có thể cài đặt nhiều bộ tham số PID khác nhau trongPID gain Schedule
The PID output Rate Limiter function
Trang 10- Input (Controller output): Giá trị đầu vào.
- Initial output: Giá trị đầu ra ban đầu
- Output rate (EGU/min): Xác định tỷ lệ tối đa các thay đổi của điều khiển đầu ra.
The PID output Rate Limiter function sử dụng khi cần giới hạn tốc độ biến thiên đầu
ra, chẳng hạn như tính toán tín hiệu điều khiển
The PID lead – lag function
Thực hiện với đối tượng có hàm truyền mà tử số và mẫu sỗ dạng bậc nhất Sửdụng hàm PID lead – lag khi tín hiệu điều khiển cho trước và cách ly khi có nhiều tínhiệu điều khiển
The PID EGU to % function
- Maximum (EGU): Xác định giá trị lớn nhất của đầu vào (tương ứng với 100%)
- Input (EGU): Giá trị đầu vào
- Minimum(EGU): Xác định giá trị nhỏ nhất của đầu vào (tương ứng với 0%)
- % span: Trả lại giá trị đầu ra của tín hiệu phép đo The PID EGU to % function sử
dụng khi đòi hỏi sự chính xác của tín hiệu phép đó
The PID % to EGU function
Trang 11- Coerce output to range: Phạm vi giá trị đầu ra lớn hơn 100% và nhỏ hơn 0% là đúng
hay sai?
- %span: phần trăm giá trị đầu vào của tín hiệu đo
The PID % to EGU function sử dụng khi đòi hỏi sự chính xác của tín hiệu điềuchỉnh của bộ điều khiển PID Trong mười khối PID trên, chỉ có ba khối: The PIDfunction, The PID advanced function, The PID autotuning function là có chức năngđiều khiển đối tượng, các khối PID còn lại dùng để hỗ trợ ba khối PID trên Khi khảosát với đối tượng có hàm truyền H(s) như trên sử dụng bộ điều khiển PID Sơ đồ khốinhư hình vẽ dưới đây:
Như vậy cùng để điều khiển đối tượng với bộ điều khiển PID sẽ có những cáchthiết lập khác nhau.Sử dụng PID với ý nghĩa hiểu rõ bản chất từng thành phần trong đóthì chúng ta sẽ sử dụng phương pháp lựa chọn các hàm toán học trong Labview Sửdụng PID với mục đích nhanh, tính ứng dụng thưc tế cao chúng ta sẽ sử dụng toolkitcủa nó
Trang 12 Fuzzy Logic(Lập luận mờ)
Triển khai bộ điều khiển logic mờ cho hệ thống mờ mà bạn chỉ định.Theo mặcđịnh, VI này thực hiện bộ điều khiển logic mờ cho hệ thống mờ đầu ra đơn đầu vào (SISO) Bạn phải chọn thủ công đa hình bạn muốn sử dụng
Identification System(Hệ thống nhận dạng)
Các Identification System kết hợp các công cụ thu thập dữ liệu với các thuậttoán nhận dạng hệ thống cho mô hình nhà máy Bạn có thể sử dụng hệ thốngnhận dạng Toolkit LabVIEW để tìm mô hình thực nghiệm từ các thông tin kíchthích phản ứng nhà máy thực sự
Các Identification System Palette trong LabVIEW:
1.2.2 Khối MakerHub giao tiếp Arduino
Dễ dàng kết nối các thiết bị và ứng dụng của bạn bằng các thư viện nguồn
mở miễn phí của LabVIEW MakerHub cho các thiết bị như Arduino , Kinect , Bộđiều khiển chuyển động Leap , v.v Tạo các kết nối mới bằng cách sử dụng hỗ trợtích hợp cho TCP, HTTP và các thiết bị nối tiếp hoặc bằng cách gọi DLL hoặc
mã net của bạn
Các MakerHub trong LabVIEW:
Trang 13Khối LINX
LINX cung cấp dễ dàng sử dụng LabVIEW VI để tương tác với các nềntảng nhúng phổ biến như Arduino, chipKIT và myRIO Sử dụng các VI cảmbiến tích hợp để bắt đầu nhận dữ liệu vào PC của bạn sau vài giây hoặc sửdụng các VI ngoại vi để truy cập I / O kỹ thuật số, I / O tương tự, SPI, I2C,UART, PWM và hơn thế nữa
Khối Open: Ta có thể thấy khối có rất nhiều chân ra song để thiết lập cho việc
kết nối ta chỉ quan tâm tới một vài chân
Khối Close: Là khối để dóng một chương trình giao tiếp với Arduino.
Khối Peripherals: Là khối giao tiếp với các thiết bị ngoại vi.gồm các tín hiệu
tương tự,tín hiệu số,xung PWM
Trang 14
Khối Sensor:Bao gồm các khối VI sensor thường dùng như: Cảm biến nhiệt
độ, cảm biến ánh sáng, LCD, led 7 thanh, led nhiều màu
Khối Utilities: các khối tiện ích giao tiếp tần số wifi
Khối Toolbox
Đây là các khối công cụ có thể dùng khi cần thiết trong Labview
Trang 15CHƯƠNG 2 ỨNG DỤNG BỘ ĐIỀU CHỈNH PID VÀ ĐIỀU KHIỂN MỜ FUZZY TRONG ĐIỀU CHỈNH TỐC ĐỘ ĐỘNG CƠ
2.1 Xây dựng mô hình toán học động cơ
2.1.1 Cấu tạo động cơ dc
Động cơ điện 1 chiuề là thiết bị ngoại vi được sử dụng rất rộng rãi do điều khiển đơngiản, giá cả phải chăng Mình mở luồng này để trao đổi về đặc tính, các phương pháp điềukhiển, mạch điều khiển phổ biến của động cơ điện 1 chiều.Động cơ điện một chiều là máyđiện chuyển đổi năng lượng điện một chiều sang năng lượng cơ Máy điện chuyển đổi từnăng lượng cơ sang năng lượng điện là máy phát điện
Động cơ điện một chiều phân loại theo kích từ thành:
- Rotor có các cuộn dây quấn và được nối với nguồn điện một chiều
- Bộ phận chỉnh lưu có nhiệm vụ đổi chiều dòng điện trong khi chuyển động quaycủa rotor là liên tục”
2.1.2 Nguyên lý hoạt động
- Khi cho điện áp một chiều vào, trong dây quấn phần ứng có điện Các thanh dẫn códòng điện nằm trong từ trường sẽ chịu lực tác dụng làm rôto quay, chiều của lực được xácđịnh bằng quy tắc bàn tay trái Khi phần ứng quay được nửa vòng, vị trí các thanh dẫn đổichỗ cho nhau Do có phiếu góp chiều dòng điện dữ nguyên làm cho chiều lực từ tác dụngkhông thay đổi Khi quay, các thanh dẫn cắt từ trường sẽ cảm ứng với suất điện động Eưchiều của suất điện động được xác định theo quy tắc bàn tay phải, ở động cơ chiều sứcđiện động Eư ngược chiều dòng điện Iư nên Eư được gọi là sức phản điện động.” [4] Khi
Trang 16J là mômen quán tính qui về trục động cơ
B là hệ số ma sát ở trục
U,I là điện áp,dòng điện phần ứng
Phương trình quan hệ về điện áp phần ứng :
K i Ф i=J dω
dt +Bωω Thay (1.2) vào (1.1) ,ta được:
u (s )=(a1s2
+a2s +a3)⍵(s) Hàm truyền đạt của động cơ DC là :
2.2 Phương pháp tổng hợp bộ điều chỉnh PID
2.2.1 Tổng quan về bộ điều chỉnh PID
Trang 17Bộ điều chỉnh PID (A proportional integral derivative controller) là bộ điềuchỉnh sử dụng kỹ thuật điều khiển theo vòng lặp trong kỹ thuât điều khiển theo vònglặp có hồi tiếp được sử dụng rộng rãi trong các hệ thống điều khiển tự động.
Một bộ điều chỉnh PID cố gắng hiệu chỉnh sai lệch giữa tín hiệu ngõ ra và ngõvào sau đó đưa ra một một tín hiệu điều khiển để điều chỉnh quá trình cho phù hợp
Bộ điều chỉnh PID đã và đang được sử dụng rộng rãi để điều khiển các đốitượng một đầu vào và một đầu ra bởi vì tính đơn giản của nó cả về cấu trúc lẫn nguyên
lý làm việc Bộ điều chỉnh này làm việc rất tốt trong các hệ thống có quán tính lớn nhưđiều khiển nhiệt độ, điều khiển mức và trong các hệ điều khiển tuyến tính hay cómức độ phi tuyến thấp
PID là một trong những lý thuyết cổ điển và cũ nhất dùng cho điều khiển tuynhiên nó vẫn ứng dụng rộng rãi cho đến ngày nay
Cấu trúc của bộ điều chỉnh PID:
Hình 2.2.Cấu trúc của bộ điều chỉnh PID
2.2.2 Hàm truyền
Xét 1 hệ thống có sơ đồ khối như sau:
Hình 2.3.Điều khiển hồi tiếp với bộ điều khiên PID
Trang 18Biến e là thành phần sai lệch, là hiệu giữa giá trị tín hiệu vào mong muốn và tínhiệu ra thực tế Tín hiệu sai lệch (e) sẽ đưa tới bộ PID, và bộ điều khiển tính toán cảthành phần tích phân lẫn vi phân của (e) Tín hiệu ra (u) của bộ điều khiển bằng:
trong đó: e(t) – tín hiệu đầu vào
u(t) – tín hiệu đầu ra
Từ mô hình vào ra trên ta có được hàm truyền đạt của bộ điều khiển PID:
giảm, chứ không triệt tiêu sai số xác lập của hệ (steady-state error)
- Thành phần tích phân (Ki) có tác dụng triệt tiêu sai số xác lập nhưng có thểlàm giảm tốc độ đáp ứng của hệ
- Thành phần vi phân (Kd) làm tăng độ ổn định hệ thống, giảm độ vọt lố và cảithiện tốc độ đáp ứng của hệ
Ảnh hưởng của các thành phần Kp, Ki, Kd đối với hệ kín được tóm tắt trongbảng sau:
Trang 19Bảng 2.1 Ảnh hưởng của các thông số PID lên đối tượng
- Lưu ý rằng quan hệ này không phải chính xác tuyệt đối vì Kp, Ki và Kd cònphụ thuộc vào nhau Trên thực tế, thay đổi một thành phần có thể ảnh hưởng đến haithành phần còn lại Vì vậy bảng trên chỉ có tác dụng tham khảo khi chọn Kp, Ki, Kd
2.2.4 Các phương pháp tổng hợp bộ điều chỉnh bộ PID
Ziegler và Nichols đưa ra hai phương pháp thực nghiệm để xác định tham số bộ
điều khiển PID Phương pháp thứ nhất dùng mô hình quán tính bậc nhất của đối tượngđiều khiển
Phương pháp thứ hai không cần đến mô hình toán học của đối tượng nhưng chỉ
áp dụng cho một số lớp đối tượng nhất định
Phương pháp Zieger-Nichols
Phương pháp Zieger-Nichols thứ nhất
Xác định thông số của bộ điều chỉnh PID dựa vào đáp ứng của hệ hở:
Hình 2.4 Sơ đồ khối của một hệ hở
kD Thay đổi nhỏ Giảm Giảm Thay đổi nhỏ
Trang 20Hình 2.5 Đáp ứng nấc của hệ hở có dạng SKhi đó ta có bảng tính thông số của bộ PID là:
Hình 2.6 Sơ đồ khối của một hệ kín có bộ PID