Điều khiển dự báo cho hệ mimo trên cơ sở hệ logic mờ

96 271 0
Điều khiển dự báo cho hệ mimo trên cơ sở hệ logic mờ

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI ========= ======== LUẬN VĂN THẠC SỸ KHOA HỌC NGÀNH: ĐIỀU KHIỂN TỰ ĐỘNG ĐIỀU KHIỂN DỰ BÁO CHO HỆ MIMO TRÊN CƠ SỞ HỆ LOGIC MỜ TRIỆU TUYÊN NGỌC HÀ NỘI – 04/2010 MỤC LỤC MỞ ĐẦU .3 CHƯƠNG I .6 TỔNG QUAN VỀ ĐIỀU KHIỂN DỰ BÁO TỰA THEO MÔ HÌNH 1.1 Giới thiệu chung .6 1.2 Khái niệm điều khiển dự báo tựa theo mô hình 1.3 Lưu đồ thuật toán điều khiển dự báo thêm mô hình 1.4 Các khối chức điều khiển dự báo theo mô hình 10 1.4.1 Khối tạo “Tạo tín hiệu chuẩn” 10 1.4.2 Khối “Mô hình” 12 1.4.3 Khối “Hàm mục tiêu” 16 1.4.4 Khối “Tối ưu hoá” 17 CHƯƠNG II 18 MÔ HÌNH MỜ DỰ BÁO 18 2.1 Hệ thống suy luận mờ 18 2.2 Xây dựng mô hình mờ dự báo cho hệ phi tuyến 18 2.3 Cấu trúc hệ mờ dự báo cho đối tượng phi tuyến 20 2.4 Lựa chọn thành phần vector hồi quy .21 2.5 Tính toán, chỉnh định thông số cho mô hình mờ .22 2.5.1 Bình phương cực tiểu mẻ (Bath Least Squares) 22 2.5.2 Bình phương cực tiểu hồi quy (Recursive Leat Squares) 25 2.5.3 Chuyển động ngược hướng gradient (Gradient Descent) .27 CHƯƠNG III 30 GIẢI THUẬT TỐI ƯU HÓA PHIẾM HÀM MỤC TIÊU 30 3.1 Phương pháp giải thuật di truyền (Genetic Algorithm) 30 3.1.1 Mã hoá nhiễm sắc thể .32 3.1.2 Khởi tạo quần thể 33 3.1.3 Xây dựng hàm thích nghi 33 3.1.4 Các phép toán thuật toán di truyền .34 3.1.5 Cấu trúc thuật toán di truyền tổng quát .37 3.2 Phương pháp rẽ nhánh giới hạn (Branch and Bound) 39 3.2.1 Nguyên lý hoạt động 39 3.2.2 Ưu, nhược điểm phương pháp hướng khắc phục 41 3.2.2.1 Ưu nhược điểm phương pháp 41 3.2.2.2 Phương pháp khắc phục nhược điểm .42 CHƯƠNG IV 44 ỨNG DỤNG BỘ ĐIỀU KHIỂN MPC CHO ĐỐI TƯỢNG MIMO 44 4.1 Đối tượng mô 44 4.2 Xây dựng mô hình mờ dự báo cho đối tượng MIMO 44 4.2.1 Xác định phần tử hồi quy thích hợp 45 2.2 Xác định cấu trúc mô hình mờ 46 4.2.3 Xác định tham số thích hợp chô mô hình mờ 46 4.2.4 Thực thi thuật toán xây dựng mô hình mờ dự báo 47 4.2.5 Kết nhận dạng .47 4.3 Xây dựng điều khiển cho mô hình mờ dự báo 60 4.3.1 Khởi tạo quần thể ban đầu 60 4.3.2 Giải mã nhiễm sắc thể 60 4.3.3 Tái sinh 60 4.3.4 Lai ghép 61 4.3.5 Đột biến 61 4.3.6 Thực thi điều khiển GA 61 4.3.7 Kết 62 TÀI LIỆU THAM KHẢO 75 PHỤ LỤC MỞ ĐẦU Phương pháp điều khiển dự báo đời cách khoảng thập kỷ có nhiều ứng dụng thành công công nghiệp Hiện nay, điều khiển dự báo chiến lược điều khiển sử dụng phổ biến việc điều khiển trình Bộ điều khiển dự báo dùng mô hình để đoán trước đáp ứng tương lai đối tượng điều khiển thời điểm rời rạc phạm vi dự báo định Dựa vào đáp ứng dự báo này, thuật toán tối ưu hoá sử dụng để tính toán chuỗi tín hiệu điều khiển tương lại phạm vi điều khiển cho sai lệch đáp ứng dự báo mô hình tín hiệu chuẩn cho trước tối thiểu Chiến lược điều khiển dự báo Phương pháp điều khiển dự báo phương pháp tổng quát thiết kế điều khiển miền thời gian áp dụng cho hệ tuyến tính hệ phi tuyến, nhiên thực tế, việc áp dụng chiến lược điều khiển dự báo cho hệ phi tuyến gặp nhiều khó khăn: 1) Phải xây dựng mô hình để dự báo xác trạng thái trình cần điều khiển phạm vi dự báo Đối với hệ phi tuyến, việc xây dựng mô hình toán học xác toán khó đặc tính phi tuyến đa dạng 2) Giải toán tối ưu phi tuyến để tính toán chuỗi tín hiệu điều khiển phạm vi điều khiển, thường toán tối ưu không lồi có nhiều cực trị cục Tất bào toán tối ưu hoá phi tuyến thuật toán lặp đòi hỏi số lượng phép tính lớn, điều làm hạn chế khả áp dụng chiến lược điều khiển dự báo vào hệ tốc độ cao Các nghiên cứu thiết kế điều khiển dự báo cho hệ phi tuyến chủ yếu tập trung vào việc giải hai khó khăn vừa nêu Trong năm gần đây, lý thuyết mờ phát triển mạnh áp dụng thành công vào toán điều khiển nhận dạng hệ phi tuyến Mô hình mờ Tagaki-Sugeno mô hình mờ điển hình có nhiều ưu điểm như: rút từ liệu vào quan sát cách dùng kỹ thuật phân nhóm, tốc độ tính toán nhanh cho kết xác Nhiều thuật toán tối ưu hoá khác áp dụng để tìm tín hiệu điều khiển dự báo tối ưu cho hệ phi tuyến, thuật toán có ưu điểm khuyết điểm riêng Phương pháp đơn giản tìm lời giải tối ưu cho mô hình tuyến tính cục bộ, tín hiệu điều khiển hệ thống tính trung bình có trọng số lời giải cục theo hệ qui tắc mờ Phương pháp có khuyết điểm tín hiệu điều khiển suy từ lời giải tối ưu cục chưa lời giải tối ưu cho hệ phi tuyến Thuật toán QP (Quadratic Programming) SQP (Sequential Quadratic Programing) thuật toán thông dụng để tìm lời giải cho toán tối ưu phi tuyến không ràng buộc có ràng buộc, thuật toán tìm kiếm lời giải tối ưu dựa đạo hàm nên dễ rơi vào cực trị cục Để khắc phục khó khăn trên, luận văn xin đề xuất phương án điều khiển dự báo hệ phi tuyến dựa vào mô hình mờ Tagaki-Sugeno thuật toán tối ưu hoá giải thuật di truyền (Genetic Algorithm) Quá trình nghiên cứu mô cho thấy, thuật toán hội tụ nhanh nên phương pháp điều khiển dự báo đề xuất áp dụng để điều khiển thời gian thực trình công nghiệp CHƯƠNG I TỔNG QUAN VỀ ĐIỀU KHIỂN DỰ BÁO TỰA THEO MÔ HÌNH 1.1 Giới thiệu chung Vài thập kỷ gần đây, với phát triển mạnh mẽ ngành công nghệ thông tin, tốc độ xử lý thông tin ngày cải thiện tạo tiền đề cho phát triển ngành điều khiển tự động việc ứng dụng máy tính để điều khiển nâng cao cho trình công nghệ.Với 2000 hệ thống công nghiệp nay, điều khiển dự báo theo mô hình (Model Predictive Control – MPC) kỹ thuật điều khiển trình nâng cao ứng dụng nhiều trình công nghiệp Giống kiện khác, ý tưởng MPC xuất từ lâu, từ trước trở nên thông dụng Ban đầu, MPC ứng dụng công nghiệp hình thức tên gọi khác từ trước có hiểu biết thấu đáo đặc tính lý thuyết Những nghiên cứu lý thuyết MPC bắt đầu phát triển từ năm 80, đặc biệt sau hai phân xưởng Shell xây dựng Những hiểu biết tính chất MPC đưa nhà nghiên cứu nòng cốt (Morari Garcia – 1982; Rawlings Muke – 1993) xây dựng thành khung sườn mạnh có ý nghĩa thực tế cho ứng dụng lý luận MPC có lẽ giải pháp tổng quát cho thiết kế điều khiển miền thời gian, áp dụng cho hệ tuyết tính phi tuyến, đặc biệt mà tín hiệu đặt biết trước Ngoài ra, MPC điều khiển trình có tín hiệu điều khiển bị chặn, có điều khiển ràng buộc Các thuật toán MPC khác không giống mô hình toán học mô tả đối tượng/quá trình, ồn nhiễu phiếm hàm mục tiêu cần tối thiểu hoá Do tính khả mở phương pháp MPC, nhiều công trình phát triển thừa nhận rộng rãi công nghiệp nghiên cứu Thành công ứng dụng điều khiển dự báo công nghiệp chế biến mà nhiều trình đa dạng khác, từ điều khiển robot gây mê lâm sàng Các ứng dụng MPC công nghiệp xi măng, tháp sấy, PVC hay động servo giới thiệu nhiều tài liệu khác Chất lượng tốt ứng dụng cho thấy MPC có khả đạt hệ thống điều khiển hiệu cao, vận hành dài lâu bền vững MPC thể loạt ưu điểm so với phương pháp điều khiển khác, bật là: 1) Rất hấp dẫn với người sử dụng có kiến thức hạn chế lý thuyết điều khiển khái niệm đưa trực quan, đồng thời việc điều chỉnh tương đối dễ dàng 2) Có thể sử dụng để điều khiển nhiều trình từ đơn giản đến phức tạp 3) Thích hợp để điều khiển hệ MIMO 4) Có khả bù thời gian trễ 5) Dễ dàng thực luật điều khiển tuyến tính cho điều khiển trường hợp không hạn chế đầu vào/ra 6) Nó hiệu quỹ đạo tín hiệu đặt biết trước (điều khiển robot) 7) MPC phương pháp luận “mở” dựa nguyên tắc định, cho phép mở rộng tương lai Tuy nhiên MPC có hạn chế Một hạn chế luật điều khiển tạo đòi hỏi tính toán dễ thực song trường hợp điều khiển thích nghi, tính toán phải thực lại liên tục thời điểm lấy mẫu Khi xem xét đến điều kiện ràng buộc khối lượng tính toán chí lớn Tuy nhiên với nặng lực ngày tăng máy tính nay, vấn đề không trở ngại đáng kể Hạn chế lớn MPC cần thiết mô hình thích hợp cho đối tượng/quá trình rõ ràng, sai lệch đối tượng/quá trình thực với mô hình ảnh hưởng lớn đến kết đạt 1.2 Khái niệm điều khiển dự báo tựa theo mô hình MPC điều khiển làm việc nguyên tắc so sánh tín hiệu dự báo đối tượng với tín hiệu đặt biết nhắm đưa định điều khiển để hệ thống phản ứng trước thay đổi bắt đầu xảy tránh ảnh hưởng trễ lên đáp ứng đối tượng Mắc dù mô hình MPC có điểm khác nhau, loại có đặc trưng riêng, tất hệ thống MPC dựa sở tính toán tín hiệu đầu vào cho trình cách giải toán tối ưu online Bài toán tối ưu dựa sở mô hình đối tượng giá trị đo trình Các giá trị đo từ trình đóng vai trò thành phần hồi tiếp cấu trúc MPC Tư tưởng điều khiển dự báo theo mô hình là: 1) Sử dụng mô hình toán học để dự báo đàu đối tượng/quá trình 2) Luật điều khiển phụ thuộc vào hành vi dự báo 3) Chuỗi tín hiệu điều khiển tương lai giới hạn điều khiển tính toán thông qua việc tối ưu hoá phiếm hàm mục tiêu 4) Sử dụng sách lược lùi xa: tức thời điểm tín hiệu điều khiển chuỗi tín hiệu tính toán sử dụng, sau giới hạn dự báo lại dịch bước phía tương lai 1.3 Lưu đồ thuật toán điều khiển dự báo thêm mô hình @ time = tk Take process measurements Process model = Current & future - Control actions - Disturbances Future process outputs Objectives Constraints Solve above optimization problem Best current and future control actions Implement best current control action time = tk+1 Hình 1.1 L ưu đồ thuật toán [0;0;y2(1:data_n-2)] [0;u1(1:data_n-1)] [0;0;u1(1:data_n-2)] [0;0;0;u1(1:data_n-3)] [0;0;0;0;u1(1:data_n-4)] [0;u2(1:data_n-1)] [0;0;u2(1:data_n-2)] [0;0;0;u2(1:data_n-3)] [0;0;0;0;u2(1:data_n-4)] ]; data1=[input_data1 y2]; input_name1=str2mat('y2(k-1)','y2(k-2)', 'u1(k-1)','u1(k-2)','u1(k-3)','u1(k-4)', 'u2(k-1)','u2(k-2)','u2(k-3)','u2(k-4)'); trn_data_n=2000; n_sample=Ns-trn_data_n; trn_data1=data1(1:trn_data_n,:); chk_data1=data1(trn_data_n+1:trn_data_n+n_sample,:); [input_index1,elapsed_time]=seqsrch(num_input,trn_data1,chk_data1,in put_name1); fprintf('\nElapsed time1=%f\n',elapsed_time); winH1=gcf; %xay dung fis model if ishandle(winH1), delete(winH1); end ss=0.01; ss_dec_rate=0.5; ss_inc_rate=1.5; trn_data1=data1(1:trn_data_n,[input_index1,size(data1,2)]); chk_data1=data1(trn_data_n+1:(trn_data_n+n_sample),[input_index1,siz e(data1,2)]); numMFs=2; inmftype='trapmf'; outmftype='linear'; in_fismat=genfis1(trn_data1,numMFs,inmftype,outmftype); % %huan luyen mo hinh mo da khoi tao de chinh danh cac tham so [trn_out_fismat trn_error step_size chk_out_fismat chk_error]= anfis(trn_data1,in_fismat,[1 nan ss ss_dec_rate ss_inc_rate], nan,chk_data1,1); myfis=chk_out_fismat; %mo hinh mo du bao cua doi tuong showfis(myfis); fuzzy(myfis); %kiem chung mo hinh y_hat=evalfis(data1(1:(trn_data_n+n_sample),input_index1),chk_out_fi smat); figure; subplot(2,1,1); index=1:trn_data_n; plot(index,data1(index,size(data1,2)),'-', index,y_hat(index),'.'); rmse=norm(y_hat(index)data1(index,size(data1,2)))/sqrt(length(index)); title(['Training Data (Solid Line] and ANFIS Prediction (Dots) with RMSE=', num2str(rmse)]); xlabel('Time Index'); ylabel(''); subplot(2,1,2); index=trn_data_n+1:(trn_data_n+n_sample); plot(index,data1(index,size(data1,2)),'-',index,y_hat(index),'.'); rmse=norm(y_hat(index)data1(index,size(data1,2)))/sqrt(length(index)); title(['Checking Data (Solid Line] and ANFIS Prediction (Dots) with RMSE=', num2str(rmse)]); xlabel('Time Index'); ylabel(''); Phần xây dựng điều khiển theo phương pháp giải thuật di truyền Chương trình mô MATLAB xây dựng điều khiển sau function u=mpc_GA(myfis,myfis2,lamda,TDLy,TDLu,model,Ts,Hp,num_bit,num_chro,num _gen,Amp,K_fb,Tmax) Hc=1; TDL_max=max([TDLy TDLu]); max_sample=500; time=Ts*(0:max_sample)'; u1=0*time; y1=0*time; u2=0*time; y2=0*time; ref=Amp*ones(1,length(time)); %ref(60:100)=ref(60:100)-0.4;% %ref(101:end)=ref(101:end)-0.25; ref=[zeros(1,TDL_max) ref]; ref_or=ref; % ref2=Amp*ones(1,length(time)); ref2(61:end)=ref2(61:end)-0.5; ref2=[zeros(1,TDL_max) ref2]; ref_or2=ref2; % u_range=[0,10]; %giai dau vao du_range=[-0.5 0.5];%giai bien thien tin hieu vao err_Hp=Amp; err_Hp2=Amp; du_opt=zeros(1,Hc); du2_opt=zeros(1,Hc); %Khoi tao quan the generation=genbin(num_chro,num_bit); newgeneration=generation; generation2=genbin(num_chro,num_bit); newgeneration2=generation2; % pop=num_chro; n_point=2; %so diem lai ghep ma=0.7; mu=0.007; uh=u_range(2); ul=u_range(1); e_mh1=0; e_mu1=0; e_mh21=0; e_mu21=0; warning('off','all'); %Doc gia tri dau thuc cua doi tuong va tinh vi phan sai lech for t=TDL_max+1:Tmax to=time(1:t); [to,x,y1_temp,y2_temp]=sim(model,to,[],[to,[u1(1:t-1);u1(t-1)] [u2(1:t-1);u2(t1)]]); y1(t)=y1_temp(t); y2(t)=y2_temp(t); t0=clock; %start point to calculate elapsed time y_mu=fisval(myfis,TDLy,TDLu,y1,u1,u2,t); e_mh=(y1(t)-y_mu); e_mu=0.2929*e_mh1+0.2929*e_mh+0.4142*e_mu1; d_model=K_fb*e_mu; e_mu1=e_mu; e_mh1=e_mh; ref(t:t+Hp)=ref_or(t:t+Hp)-d_model; du_h=uh-u1(t-1); du_l=ul-u1(t-1); if du_h>du_range(2); du_h=du_range(2); end if du_ldu_range(2); du2_h=du_range(2); end if du2_l

Ngày đăng: 19/07/2017, 22:11

Từ khóa liên quan

Mục lục

  • TRANG BÌA

  • MỤC LỤC

  • MỞ ĐẦU

  • CHƯƠNG I

  • CHƯƠNG II.

  • CHƯƠNG III.

  • CHƯƠNG IV.

  • KẾT LUẬN CHUNG.

  • SUMMARY OF THE THESIS

  • TÀI LIỆU THAM KHẢO

  • PHỤ LỤC

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

  • Đang cập nhật ...

Tài liệu liên quan