Mô phỏng Matlab Simulink điều khiển mức nước trong bình đơn

25 5.1K 42
Mô phỏng Matlab Simulink điều khiển mức nước trong bình đơn

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Hiện nay, sự nghiệp công nghiệp hóa,hiện đại hóa ngày càng phát triển mạnh mẽ, sự tiến bộ của khoa học kỹ thuật, trong đó kỹ thuật điều khiển tự động cũng góp phần rất lớn tạo điều kiện để nâng cao hiệu quả trong quá trình sản xuất. Tự động hóa quá trình công nghệ đã thực sự phát triển và ứng dụng mạnh mẽ trong công nghiệp, cụ thể như công nghiệp hóa lọc dầu, công nghiệp hóa chất, công nghiệp xử lý nước, sản xuất giấy,sản xuất xi măng…cũng như trong các lĩnh vực khác của đời sống. Nói chung, để nâng cao hiệu quả sản xuất, đảm bảo an toàn cho người, máy móc và môi trường trong công nghiệp chế biến, khai thác và năng lượng thì vấn đề điều khiển quá trình công nghệ là rất quan trọng. Trong công nghiệp hóa lọc dầu, công nghiệp hóa chất, công nghiệp xử lý nước, sản xuất giấy, sản xuất điện năng…Vấn đề điều khiển mức, lưu lượng dòng chảy cần đáp ứng với độ chính xác cao để phục vụ quá trình sản xuất đạt hiệu quả tốt hơn. Chính vì vậy, vấn đề đặt ra trong đề tài là điều khiển lưu lượng dòng chảy để ổn định mức chất lỏng với độ chính xác cao. Với yêu cầu ứng dụng thực tế như vậy, đề tài nghiên cứu đối tượng chính ở đây là điều khiển mức nước trong bình đơn. Hệ bồn nước đơn được hình thành với hệ thống bơm và xả chất lỏng nhưng luôn giữ ổn định theo giá trị mức đặt trước, mức chất lỏng trong bồn chứa được duy trì ổn định. Để làm được điều này thì đòi hỏi phải điều khiển đóng mở các van để điều tiết lưu lượng dòng chảy cũng như điều khiển lưu lượng chất lỏng từ máy bơm bơm vào hệ thống bồn nước , làm mức nước trong bồn luôn luôn giữ một giá trị đặt trước là không đổi. Việc điều khiển hệ thống này để giữ được mức chất lỏng trong bồn ổn định là tương đối khó,cần phải có sự điều khiển phối hợp giữa các van và máy bơm. Với sự phát triển của kỹ thuật điều khiển tự động hiện nay thì có nhiều cách để điều khiển mức chất lỏng của hệ thống bồn nước đơn, nhưng ở đây ta sử dụng bộ điều khiển PID kinh điển để điều khiển. Công việc điều khiển được thực hiện mô phỏng trên Matlab, với công cụ là Simulink.

GIỚI THIỆU ĐỀ TÀI Hiện nay, sự nghiệp công nghiệp hóa,hiện đại hóa ngày càng phát triển mạnh mẽ, sự tiến bộ của khoa học kỹ thuật, trong đó kỹ thuật điều khiển tự động cũng góp phần rất lớn tạo điều kiện để nâng cao hiệu quả trong quá trình sản xuất. Tự động hóa quá trình công nghệ đã thực sự phát triển và ứng dụng mạnh mẽ trong công nghiệp, cụ thể như công nghiệp hóa lọc dầu, công nghiệp hóa chất, công nghiệp xử lý nước, sản xuất giấy,sản xuất xi măng…cũng như trong các lĩnh vực khác của đời sống. Nói chung, để nâng cao hiệu quả sản xuất, đảm bảo an toàn cho người, máy móc và môi trường trong công nghiệp chế biến, khai thác và năng lượng thì vấn đề điều khiển quá trình công nghệ là rất quan trọng. Trong công nghiệp hóa lọc dầu, công nghiệp hóa chất, công nghiệp xử lý nước, sản xuất giấy, sản xuất điện năng…Vấn đề điều khiển mức, lưu lượng dòng chảy cần đáp ứng với độ chính xác cao để phục vụ quá trình sản xuất đạt hiệu quả tốt hơn. Chính vì vậy, vấn đề đặt ra trong đề tài là điều khiển lưu lượng dòng chảy để ổn định mức chất lỏng với độ chính xác cao. Với yêu cầu ứng dụng thực tế như vậy, đề tài nghiên cứu đối tượng chính ở đây là điều khiển mức nước trong bình đơn. Hệ bồn nước đơn được hình thành với hệ thống bơm và xả chất lỏng nhưng luôn giữ ổn định theo giá trị mức đặt trước, mức chất lỏng trong bồn chứa được duy trì ổn định. Để làm được điều này thì đòi hỏi phải điều khiển đóng mở các van để điều tiết lưu lượng dòng chảy cũng như điều khiển lưu lượng chất lỏng từ máy bơm bơm vào hệ thống bồn nước , làm mức nước trong bồn luôn luôn giữ một giá trị đặt trước là không đổi. Việc điều khiển hệ thống này để giữ được mức chất lỏng trong bồn ổn định là tương đối khó,cần phải có sự điều khiển phối hợp giữa các van và máy bơm. Với sự phát triển của kỹ thuật điều khiển tự động hiện nay thì có nhiều cách để điều khiển mức chất lỏng của hệ thống bồn nước đơn, nhưng ở đây ta sử dụng bộ điều khiển PID kinh điển để điều khiển. Công việc điều khiển được thực hiện mô phỏng trên Matlab, với công cụ là Simulink. 1 INTRODUCE TOPICS Now, the industrialization and modernization of the growing strongly, the advancement of science and technology, including automatic control technology also contributes greatly facilitated to improve the efficiency of the production process. Process automation technology has really developed and powerful applications in industrial, namely industrialized oil refining, chemical industry, industrial water treatment, paper, cement production as well as in other areas of life. Generally, in order to improve production efficiency, safety for people, machines and the environment in the processing industry, mining and energy, the problem of process control technology is very important. In the oil refining chemical industry, chemical industry, industrial water treatment, paper manufacturing, energy production… Problem level control, flow to meet with high precision to serve the manufacturing process to achieve better efficiency. Therefore, the question is the subject of flow control to stabilize the liquid with high precision. With the actual application requirements such research main object here is to control the level of water in the application. Single tank system is formed with the system and slurry pump, but always stable under the preset value, the liquid level in the tank is maintained stable. To do this, it requires the driver opens the valve to regulate the flow rate and flow control pump fluid from the pump to the tank system, as the water level in the tank is always maintained a price preset value is not changed. The control system to keep the liquid level in the tank is relatively difficult to stabilize, there should be coordination between the control valves and pumps. With the development of automatic control technology available today, there are ways to control the liquid level of the tank system menu, but here we use the classic PID controller to control. Job control was performed simulation on Matlab, Simulink tool is. 2 CHƯƠNG I GIỚI THIỆU VỀ MATLAB & SIMULINK I. Giới thiệu về Matlab 1. Giới thiệu chung về Matlab MATLAB (Matrix laboratory) là phần mềm dùng để giải một loạt các bài toán kĩ thuật, đặc biệt là các bài toán liên quan đến ma trận.MATLAB cung cấp các toolboxes, tức các hàm mở rộng môi trường MATLAB để giải quyết các vấn đề đặc biệt như xử lí tín hiệu số, hệ thống điều khiển, mạng neuron, fuzzy logic, mô phỏng v.v. Ðể khởi động MATLAB ta nhấn đúp vào icon của nó trên màn hình. Hình a. Cửa sổ làm việc của Matlab Sau khi khởi động Matlab ta được cửa sổ như hình 1 bao gồm: - Cửa sổ command window : là cửa sổ làm việc chính của Matlab. - Cửa sổ current folder : là nơi lưu các thư mục làm việc đã lưu. - Cửa sổ Command Histrory: là nơi lưu lịch sử làm việc. II. Simulink 1) Giới thiệu về simulink. Simulink là phần mềm mở rộng của MatLab (1 toolbook của MatLab) dùng để mô hình hoá, mô phỏng và phân tích một hệ thống động. Thông thường dùng để thiết kế hệ thống điều khiển, hệ thống DSP, hệ thống thông tin và các hệ thống mô phỏng khác… 3 2) Khởi động simulink. Để khởi động Simulink ta click chuột trái vào biểu tượng simulink Library từ thanh công cụ của Matlab hoặc nhập lệnh simulink vào cửa sổ lệnh command window. Hình b. Giao diện thư viện Simulink. Trên đó có các thư mục chính và các thư viện con của Simulink. Để bắt đầu làm việc, ta tạo cửa sổ mới bằng cách kích vào biểu tượng “NEW”. Có 8 thư viện chính của Simulink được phân loại như sau: • continuous: hệ thống tuyến tính và liên tục • discrete: hệ thống tuyến tính gián đoạn • nonlinear: mô hình hóa những phần tử phi tuyến như role • source: các khối nguồn tín hiệu • sink: các khối thu nhận tín hiệu • function & table: các hàm bậc cao của Matlab • math: các khối của Simulink với các hàm toán học tương ứng của Matlab • signals & system: các khối liên hệ tín hiệu, hệ thống con…. 4 III. Control System Toolbook. 1) Lệnh tf a) Công dụng: Sử dụng để tạo hàm truyền có giá trị thực hoặc giá trị phức. b) Cú pháp: tf sys = tf(num,den) sys = tf(num,den,Ts) sys = tf(M) sys = tf(num,den,ltisys) tfsys = tf(sys) tfsys = tf(sys, 'measured') tfsys = tf(sys, 'noise') tfsys = tf(sys, 'augmented') c) Ví dụ: Tạo một hàm truyền sau: 1 W ^ 3 2* ^ 2 1 s s s s + = + + + Ta nhập dòng lệnh: W=tf([1 1],[1 2 1 1]) nhấn enter để xem kết quả. Hình c. Hàm truyền tf 2) Lệnh zpk a) Công dụng 5 Tạo điểm không- điểm cực-hệ số khuếch đại, chuyển đổi sang điểm không- điểm cực-hệ số khuếch đại. b) Cú pháp: sys = zpk(z,p,k) sys = zpk(z,p,k,Ts) sys = zpk(M) sys = zpk(z,p,k,ltisys) s = zpk('s') z = zpk('z',Ts) zsys = zpk(sys) zsys = zpk(sys, 'measured') zsys = zpk(sys, 'noise') zsys = zpk(sys, 'augmented') c) Giải thích: Cú pháp sys=zpk(z,p,k) dùng để tạo điểm không – điểm cực- hệ số khuếch đại trong miền liên tục. Với z là điểm không, p là điểm cực, k là hệ số khuếch đại. Cú pháp sys= zpk(z,p,k,Ts) dùng để tạo điểm không – điểm cực – hệ số khuếch đại trong miền rời rạc. Với z là điểm không, p là điểm cực, k là hệ số khuếch đại, Ts là thời gian lấy mẫu. Thiết lập Ts = -1 hoặc Ts=[] với giá trị không xác định. Cú pháp sys=zpk(M) quy định cụ thể hệ số khuếch đại tĩnh M. Cú pháp sys=zpk(z,p,k,ltisys) dùng để tạo điểm không – điểm cực – hệ số khuếch đại cho hệ thống tuyến tính bất biến.(bao gồm chu kỳ lấy mẫu). Cú pháp s = zpk('s') dùng để xác định một ZPK sử dụng một hàm hợp lý trong biến Laplace, s. Cú pháp z = zpk('z',Ts) dùng để xác định một ZPK với thời gian lấy mẫu Ts sử dụng một hàm hợp lý trong miền rời rạc. Cú pháp zsys = zpk(sys) dùng để chuyển đổi một hệ thống tuyến tính bất biến sang điểm không - điểm cực – hệ số khuếch đại.  Biến lựa chọn: Đối với hàm truyền. chúng ta có thể xã định các biến biểu diễn của Z-P-K. Các biến được lựa chọn bao gồm: biến s (là biến mặc định), biến p cho miền liên tục, và biến z(là biến mặc định), 1 z − , 1 q − cho miền rời rạc d) Ví dụ: 6  Tạo một hàm truyền SISO. 2 (s) ( 1 )(s 1 j)(s 2) s h s j − = − + − − −  Tạo hàm h(s) bằng cách sử dụng zpk. Cú pháp: h = zpk(0, [1-i 1+i 2], -2) Hình d. Tạo hàm truyền bằng zpk.  Chuyển đổi hàm truyền: h = tf([-10 20 0],[1 7 20 28 19 5]); bằng zpk(h) - Ta được: Hình e. Chuyển đổi hàm truyền bằng zpk 7 3) Lệnh ss a) Công dụng: Tạo ra không gian trạng thái và chuyển đổi không gian trạng thái. b) Cú pháp: sys = ss(a,b,c,d) sys = ss(a,b,c,d,Ts) sys = ss(d) sys = ss(a,b,c,d,ltisys) sys_ss = ss(sys) sys_ss = ss(sys,'minimal') sys_ss = ss(sys,'explicit') sys_ss = ss(sys, 'measured') sys_ss = ss(sys, 'noise') sys_ss = ss(sys, 'augmented') c) Giải thích: Cú pháp sys = ss(a,b,c,d) dùng để tạo ra một ma trận có không gian trạng thái của đại lượng liên tục. . =Ax+Bux y=Cx+Du Cho một ma trận với Nx là trạng thái,Ny là đầu ra,Nu là đầu vào. a là một trạng thái có giá trị thực hoặc giá trị ảo của ma trân. b là một trạng thái bằng giá trị đầu ra là thực hoặc giá trị ảo của ma trận c là một đầu ra bằng trạng thái có giá trị thực hoặc giá trị ảo của ma trận d là một đầu ra bằng giá trị đầu vào có giá trị thực hoặc ảo của ma trận. Để thiết lập D = 0, thiết lập d vô hướng 0 (zero), không phụ thuộc vào kích thước. Cú pháp sys = ss(a,b,c,d,Ts) dùng để tạo ra một ma trận có không gian trạng thái của đại lượng rời rạc. x[n +1]= Ax[n]+Bu[n] y[n] = Cx[n] + Du[n] Với thời gian lấy mẫu Ts. Thiết lập Ts= -1 hoặc Ts=[] với giá trị không xác định. Cú pháp sys = ss(a,b,c,d,ltisys) dùng để tạo một ma trận cho hệ thống tuyến tính bất biến với thời gian lấy mẫu là Ts. d) Ví dụ: Tạo một mô hình không gian trạng thái với một thời gian lấy mẫu là 0,25 s và các ma trận không gian trạng thái sau đây: 0 1 5 2 A   =   − −   ; 0 3 B   =     ; C=[0 1] ; D=0 8 - Ta nhập các lệnh sau: A = [0 1;-5 -2]; B = [0;3]; C = [0 1]; D = 0; sys = ss(A,B,C,D,0.25) Hình f. Tạo một mô hình không gian trạng thái với một thời gian lấy mẫu là 0,25 s 4) Lệnh pid a) Công dụng: Tạo điều khiển PID dưới dạng song song, chuyển đổi từ song song sang bộ điều khiển PID. b) Cú pháp: c = pid(Kp,Ki,Kd,Tf) c = pid(Kp,Ki,Kd,Tf,Ts) c = pid(sys) c = pid(Kp) c = pid(Kp,Ki) c = pid(Kp,Ki,Kd) c = pid( ,Name,Value) c = pid c) Giải thích: Cú pháp c = pid(Kp,Ki,Kd,Tf) dùng để tạo một bộ điều khiển PID liên tục với hệ số khuếch đại Kp,Ki và Kd và bộ lọc hàm bậc nhất không đổi Tf. 1 i d p K K s c K s Tfs = + + + Cú pháp c = pid(Kp,Ki,Kd,Tf,Ts) dùng để tạo bộ điều khiển PID trong miền rời rạc. Với chu kỳ lấy mẫu Ts. IF(z) (z) d p f K c K K T DF = + + + IF (z) và DF (z) là công thức tích phân rời rạc cho tích phân và bộ lọc hàm. Mặc định IF(z) DF(z) T / (z 1) s z= = − . Cú pháp c = pid(sys) dùng để chuyển đổi hệ thống động cho một bộ điều khiển PID dạng đối tượng song song. 9 Cú pháp c = pid(Kp) dùng để tạo một bộ điều khiển tỷ lệ Ki=0,Kd=0 và Tf=0. Cú pháp c = pid(Kp,Ki) dùng để tạo một bộ điều khiển tích phân – tỷ lệ với hệ số Kd=0 và Tf =0. d) Ví dụ: - Tạo một bộ điều khiển liên tục với tỷ lệ và hệ số khuếc đại, và thời gian lọc hằng số (PDF điều khiển). Kp=1; Ki=0; Kd=3; C = pid(Kp,Ki,Kd,Tf) Tf=0.5; getType(C) Hình g. Tạo bộ điều khiển PID liên tục 10 [...]... ĐIỀU KHIỂN MỨC CHẤT LỎNG SƠ ĐỒ MÔ HÌNH HỆ THỐNG ĐIỀU KHIỂN MỨC NƯỚC Sp LC Qin Pump h LT Van xả Qout Hình 1 Hệ thống điều khiển mức nước Trong đó: - Lưu lượng vào Qin - Lưu lượng ra Qout - Tiết diện của bình là: A - Cảm biến đo mức chất lỏng LT - Bộ điều chỉnh LC - II h là chiều cao mức chất lỏng trong bình Máy bơm GIẢI THÍCH HỆ THỐNG ĐIỀU KHIỂN 11 Khi máy bơm bơm 1 lưu lượng nước là Qin vào trong bình. .. vào trong bình thì mức nước trong bình tăng lên 1 lượng tương ứng.Cảm biến đo mức chất lỏng LT sẽ đo mức nước trong bình và so sánh với giá trị đặt (SP: set point) để thông báo tới bộ điều chỉnh LC điều chỉnh lưu lượng nước do máy bơm cung cấp ( Điều kiện: Lượng ra là tuyến tính theo độ cao Qout =a*g*h) III MÔ HÌNH TOÁN HỌC CỦA HỆ THỐNG a Phương trình mô tả hệ thống điều khiển mức nước A  dh(t) = Qin... vào đối tượng điều khiển P và ta thu được tín hiệu đầu ra mới Tín hiệu đầu ra mới này sẽ được gửi lại nhò cảm biến để tính toán ra tín hiệu sai lệch mới Bộ điều khiển sẽ lại lấy tín hiệu điều khiển sai lệch mới này để tính toán lại đạo hàm và tích phân của chúng Quá trình cứ như thế tiếp tục II Mô phỏng Matlab – Simulink 21 Mục đích điều khiển là giữ cho mức nước trong bình ổn định tại một mức h theo... Plant: Đối tượng điều khiển Controller: Bộ điều khiển cung cấp tín hiệu điều khiển cho đối tượng điều khiển Hàm truyền của bộ điều khiển PID có dạng: Kp + Với: K s2 + K ps + KI KI + sK D = D s s K I : hệ số tích phân; K P : hệ số khuếch đại; K D : hệ số vi phân; Biến e là sai lệch giữu đầu vào mong muốn (R) và đầu ra thực tế (Y) Sai lệch (e) này sẽ được đưa vào bộ điều khiển PID và bộ điều khiển PID sẽ... 15 - Đáp ứng của hệ kín sử dụng bộ điều khiển PID Hình 15 Đáp ứng ra của hệ thống sử dụng bộ điều khiển PID  Nhận xét: Khi sử dụng bộ điều khiển PID ta thấy chất lượng điều khiển được cải thiện rõ rệt, đáp ứng ra nhanh chóng bám đáp ứng mô phỏng và đi tới ổn định Ta so sánh đáp ứng ra của hệ thống khi không sử dụng bộ điều khiển PID với đáp ứng ra sử dụng bộ điều khiển PID được kết quả như sau: Chỉ... quá độ, đáp ứng xung đơn vị và khảo sát được các đặc tính động học của hệ thống điều khiển Công cụ Simulink giúp chúng ta thiết kế và phân tích hệ thống điều khiển đơn giản hơn Qua đó cho thấy được tầm quan trọng của công cụ Matlab và Simulink đối với kỹ sư Tự động hoá MỤC LỤC Chương I: GIỚI THIỆU VỀ MATLAB VÀ SIMULINK Trang 3 24 I Giới thiệu về Matlab ……………………………………… .…… 3 II Simulink …………………………………………………………………... tf……………………………………………………………………… 2 Lệnh zpk…………………………………………………………………… 3 Lệnh ss……………………………………………………………………… 4 PID…………………………………………………………………………… Chương II: ĐIỀU KHIỂN MỨC CHẤT LỎNG 9-20 I Sơ đồ mô hình điều khiển mức nước ………………………………………11 II Giải thích hệ thống điều khiển …………………………………………… 12 III Mô hình toán học của hệ thống……………………………………… 12 IV Độ dự trữ ổn định và tiêu chuẩn Bode……………………………………… 13 V Khảo sát tính ổ định... một hệ thống điều khiển Như vậy với hai phương pháp thiết kế bộ điều khiển PID trên chúng ta có thể cải thiện chất lượng điều khiển một cách tối ưu và hiệu quả IV Kết luận Trong suốt quá trình làm đồ án việc thực hiện các yêu cầu đặt ra đã giúp em cũng cố thêm kiến thức về lý thuyết điều khiển tuyến tính và biết vận dụng các kiến thức lý thuyết vào bài toán cụ thể Việc ứng dụng công cụ Matlab giúp chúng... nữa đường tròn (đường đậm nét) Đáp ứng ra của hệ hở Mô phỏng Simulink của hệ hở khi cho tín hiệu lối vào là một hàm bước nhảy Hình 11 Mô phỏng Simulink của hệ hở - Đáp ứng ra của hệ hở khi tín hiệu vào là hàm bước nhảy: Hình 12 Đồ thị đáp ứng ra của hệ hở CHƯƠNG 3 THIẾT KẾ BỘ ĐIỀU KHIỂN PID BẰNG PHƯƠNG PHÁP TỐI ƯU MODULE 20 I Giới thiệu về bộ điều khiển PID Xét hệ thống có phản hồi đầu ra có sơ đồ khối... dụng bộ PID 0.0154(ms) 0.0126(ms) 0.0146(%) 2 Thiết kế bộ điều khiển PID bằng công cụ PID tune - Thông số của bộ điều khiển PID tìm được bằng công cụ PID tune gồm: Kp = 0.88268; Ki = 5.9296;Kd = 0 => Đây là bộ điều khiển PI 23 - Đáp ứng của hệ kín sử dụng bộ điều khiển PI(thiết kế bằng công cụ PID tune) Hình 16 Đáp ứng ra của hệ kín sử dụng bộ điều khiển PI  Nhận xét: Kết quả đạt được: Thời gian tăng . PID liên tục 10 CHƯƠNG II ĐIỀU KHIỂN MỨC CHẤT LỎNG I. SƠ ĐỒ MÔ HÌNH HỆ THỐNG ĐIỀU KHIỂN MỨC NƯỚC Hình 1. Hệ thống điều khiển mức nước Trong đó: - h là chiều cao mức chất lỏng trong bình - Lưu. hiện nay thì có nhiều cách để điều khiển mức chất lỏng của hệ thống bồn nước đơn, nhưng ở đây ta sử dụng bộ điều khiển PID kinh điển để điều khiển. Công việc điều khiển được thực hiện mô phỏng. điều này thì đòi hỏi phải điều khiển đóng mở các van để điều tiết lưu lượng dòng chảy cũng như điều khiển lưu lượng chất lỏng từ máy bơm bơm vào hệ thống bồn nước , làm mức nước trong bồn luôn luôn

Ngày đăng: 18/06/2015, 22:19

Từ khóa liên quan

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

Tài liệu liên quan