1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

ĐỀ THI CUỐI KÌ MÔN CƠ ĐIỆN TỬ

5 461 1

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 168,77 KB

Nội dung

TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CƠ KHÍ BỘ MƠN CƠ ĐIỆN TỬ ĐỀ THI CUỐI HỌC KỲ CÁC HỆ ĐIỀU KHIỂN Ngày thi: 02/07/2011 Thời gian thi: 75 phút Sinh viên sử dụng tài liệu máy vi tính Câu 1: (2đ) Hãy cho biết phương pháp nhận dạng hệ thống? Hãy cho biết thông số cần thiết cho phương pháp Câu 2: (3đ) Cho sơ đồ hình vẽ a Hãy viết biểu thức động lực học hệ thống x2  y x3  x x4  x , biểu b Đặt x1  y diễn phương trình động lực học hệ thống phương pháp biến trạng thái c Hãy cho biết hệ thống hệ thống phi tuyến hay tuyến tính d Đề xuất phương án thiết kế điều khiển cho hệ thống cho dao động hệ sau qua vị trí gờ A tắt dần nhanh tốt Câu 3: (3đ) Giả sử có hệ thống phi tuyến bậc Hãy thiết kế điều khiển cho hệ thống sử dụng điều khiển Dahlin Hãy viết đoạn chương trình Matlab thể điều khiển Dahlin Câu 4: (2đ) Cho đoạn chương trình sau: ……………… kp = 2.8; ki = 10.5; kd = 10.5; num_controller = [kd kp ki]; den_controller = [0 0]; [numd_controller,dend_controller] = … c2dm(num_controller,den_controller,ts,'tustin'); b0_c = numd_controller(1); b1_c = numd_controller(2); b2_c = numd_controller(3); a1_c = dend_controller(2); a2_c = dend_controller(3); yd(1) = 0; yd(2) = 0; e(1) = 0; e(2) = 0; u(1) = 0; u(2) = 0; position(1) = 0; position(2) = 0; for i = 3:Runing_time time(i) = i*ts; e(i) = ref - position(i-1); u(i) = -a1_c*u(i-1) -a2_c*u(i-2) + b0_c*e(i) + b1_c*e(i-1) + b2_c*e(i-2); Lưu ý: Đề thi có trang control_input = u(i); [t,y] = ode45(@plantvarying,tspan,x0); x0 = y(length(y),:); T = [T;i*tsamp]; X = [X;x0]; position(i) = X(i-2,1); end sumsqerror = sum((ref-X(:,1)).*(ref-X(:,1))); …………… a Hãy cho biết ý nghĩa đoạn chương trình b Hãy cho biết ảnh hưởng đáp ứng hệ thống thay thông số b0_c, b1_c, b2_c, a1_c, a2_c thông số b1_c, b2_c, a1_c, a2_c Chủ nhiệm môn Giảng viên đề thi PGS.TS Nguyễn Tấn Tiến TS Võ Tường Quân ĐÁP ÁN ĐỀ THI MÔN: CÁC HỆ ĐIỀU KHIỂN Ngày thi: 02/07/2011 Thời gian: 75 phút s Câu 1: (2đ) Phương pháp sử dụng giản đồ Bode  Tìm phase margin gain margin  tìm    Hàm truyền hệ thống (1đ) Phương pháp Least Square Algorithm (1đ) Câu 1: (3đ) Biểu thức động lực học hệ thống: (1đ) m y   k s ( y  x)  b( y  x )  y  k k b b x  y  s x  s y m2 m2 m2 m2 (1) Giả sử lực mặt đường tác dụng lên hệ thống f(t), we have: m1 x  k s ( y  x)  b( y  x )  k w x  f (t )  x  (k  k w ) k f (t ) b b x s y x  y  s m1 m1 m1 m1 m1 (2) Biểu diễn biến trạng thái (0.5đ) x2  y x3  x x4  x Đặt x1  y  x1  x2   x   k s x1  b x2  k s x3  b x4 m2 m2 m2 m2    x3  x4  (k  k w ) f (t ) b b ks x3  x4  x2  s x1   x   m1 m1 m1 m1 m1  Hệ thống tuyến tính (0.5đ) Có thể sử dụng điều khiển PID Fuzzy-PID điều khiển thích nghi (1đ) Câu 3: Dự đốn hệ phi tuyến bậc dựa vào phương pháp LSA sử dụng Dahlin Controller để điều khiển  Main program clc; clear all; global F; F=1; delta_t = 0.01; i_end_2 = 1000; yPID_max = 3; tsamp = 0.01; x0=[0 0]; tspan = [0 tsamp]; ThetaHat = [0 0 0]'; Phi = [0 0 0]'; Up = ………; %SV tự chọn giá trị cụ thể theo hệ khác initP = [Up 0 0;0 Up 0 0;0 Up 0;0 0 Up 0;0 0 Up]; y1Open = 0; y2Open = 0; u0Open = 0; u1Open = 0; u2Open = 0; u0Close = 0; u1Close = 0; u2Close = 0; y1Close = 0; y2Close = 0; y3Close = 0; error1_Close = 0; error2_Close = 0; beta_select =………; %SV tự chọn giá trị cụ thể theo hệ khác yout = 0; Sum_error = 0; for i = 1:i_end_2 ref(i) = 3; y = yout; Theta = ThetaHat+initP*Phi*(y-Phi'*ThetaHat)/(1+Phi'*initP*Phi); P = initP-initP*Phi*Phi'*initP/(1+Phi'*initP*Phi); initP = P; ThetaHat = Theta; aa1(i) = Theta(1); aa2(i) = Theta(2); bb0(i) = Theta(3); bb1(i) = Theta(4); bb2(i) = Theta(5); y_estimate(i) = Phi'*ThetaHat; if (bb0(i)~=0) || (bb1(i)~=0) || (bb2(i)~=0) value1 = (1-exp(-beta_select*tsamp))/(bb0(i) + bb1(i) + bb2(i)); value2 = [1 value1 -aa1(i)*value1 -aa2(i)*value1]; error_Close = ref(i)-y3Close; u3Close = value2*[u1Close error_Close error1_Close error2_Close]'; value3 = [aa1(i) aa2(i) bb0(i) bb1(i) bb2(i)]; y3Close = value3*[y1Close y2Close u0Close u1Close u2Close]'; yClose(i) = y3Close; error2_Close = error1_Close; error1_Close = error_Close; error_save(i,:) = error_Close; u2Close = u1Close; u1Close = u0Close; u0Close = u3Close; y2Close = y1Close; y1Close = y3Close; else yClose(i) = 0; end if (i==1) yClose(i)=9.87; end F = (1.515*10^3)*yClose(i); s_t = (i-1)*delta_t; e_t = i*delta_t; tspan = [s_t e_t]; x_tmp = size(x0,1); x = x0(x_tmp,:); [t,y] = ode45(@state1,[tspan],x); y_tmp = size(y,1); x0(x_tmp+1,:) = y(y_tmp,:); yout = x0(i,1); y3Close= yout + sin(i); y2Open = y1Open; y1Open = yout; y_real(i,:) = y1Open; u2Open = u1Open; u1Open = yPID_max; Phi = [y1Open y2Open u0Open u1Open u2Open]'; end runtime = 0:0.01:(i_end_2/100)-0.01; figure(1); subplot(511); plot(runtime,aa1); ylabel('a1 hat'); title('Estimation value of system using LSE method'); subplot(512); plot(runtime,aa2); ylabel('a2 hat'); subplot(513); plot(runtime,bb0); ylabel('b0 hat'); subplot(514); plot(runtime,bb1); ylabel('b1 hat'); subplot(515); plot(runtime,bb2); ylabel('b2 hat'); xlabel('Time (s)'); figure(2); plot(runtime,y_estimate,' k','LineWidth',2); hold on; plot(runtime,y_real,'r','LineWidth',1.5); grid on; legend('Depth Estimate','Depth Real'); title('System output using Dahlin controller'); ylim([0,4]); ylabel('Depth (m)'); xlabel('Time (s)');  Sub program function dy = state1(t,y) global F; dy = zeros(2,1); dy(1) = y(2); dy(2) = -(50/40)*y(2)+(F/40); Câu 4: (2đ) Đoạn chương trình sử dụng thuật toán PID rời rạc để điều khiển hệ thống (có thể phi tuyến tuyến tính) (1đ) Nếu thay thơng số b0_c, b1_c, b2_c, a1_c, a2_c thông số b1_c, b2_c, a1_c, a2_c đáp ứng hệ thống khơng thay đổi nhiều (với điều kiện điều khiển thiết kế tốt)

Ngày đăng: 20/05/2018, 12:02

TỪ KHÓA LIÊN QUAN