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

96 11 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 tố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 tố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 để đố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 tốn tối ưu hố sử dụng để tính tố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 tốn học xác tốn khó đặc tính phi tuyến đa dạng 2) Giải toán tối ưu phi tuyến để tính tốn chuỗi tín hiệu điều khiển phạm vi điều khiển, thường tố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 tốn nhanh cho kết xác Nhiều thuật tốn tối ưu hố 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 tố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 tốn thơng dụng để tìm lời giải cho tốn tối ưu phi tuyến khơng ràng buộc có ràng buộc, thuật tố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 tốn tối ưu hố giải thuật di truyền (Genetic Algorithm) Q trình nghiên cứu mơ cho thấy, thuật tố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 q 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 q 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 q 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 Ngồi ra, MPC điều khiển q 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 tốn học mơ tả đối tượng/q trình, ồn nhiễu phiếm hàm mục tiêu cần tối thiểu hố 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 khơng có cơng nghiệp chế biến mà cịn nhiều q 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 tốn dễ thực song trường hợp điều khiển thích nghi, tính tố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 tốn chí cịn lớn Tuy nhiên với nặng lực ngày tăng máy tính nay, vấn đề khơng cịn 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/q 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 tốn tín hiệu đầu vào cho q trình cách giải tố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 tố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 tốn thơng qua việc tối ưu hố 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 tố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: 28/02/2021, 09:19

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

Tài liệu liên quan