intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài thí nghiệm 4: Ứng dụng matlab phân tích hệ rời rạc

Chia sẻ: Phạm Tiến Ca | Ngày: | Loại File: PDF | Số trang:5

167
lượt xem
9
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài thí nghiệm 4 "Ứng dụng matlab phân tích hệ rời rạc" giúp sinh viên sử dụng matlab phân tích, đánh giá, thiết kế các hệ thống rời rạc. Mời các bạn cùng tham khảo nội dung tài liệu để nắm bắt nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài thí nghiệm 4: Ứng dụng matlab phân tích hệ rời rạc

  1. BÀI THÍ NGHIỆM 4 ỨNG DỤNG MATLAB PHÂN TÍCH HỆ RỜI RẠC I.MỤC ĐÍCH: Bài thí nghiệm này giúp sinh viên sử dụng Matlab phân tích, đánh giá, thiết kế các hệ thống rời rạc. II.CHUẨN BỊ: Các lệnh mô tả toán học hệ rời rạc tương tự như các lệnh mô tả toán học hệ liên tục, chỉ khác là khi tạo ra hệ thống ta không chỉ nhập vào thông số hệ thống (tử số, mẫu số hàm truyền hoặc các ma trận trạng thái) mà còn phải nhập vào chu kỳ lấy mẫu. Một số lệnh thường dùng khi phân tích hệ rời rạc:  Tạo ra hệ thống mô tả bởi hàm truyền: lệnh tf (transfer function) Cú pháp: G = tf(TS,MS,T) trong đó: TS: đa thức tử số. MS: đa thức mẫu số. T: chu kỳ lấy mẫu. Nếu không xác định T thì đặt T= -1.  Đơn giản hàm truyền: lệnh minreal. Lệnh này triệt tiêu các thành phần giống nhau ở tử số và mẫu số để được dạng hàm truyền tối giản. Cú pháp: G = minreal(G).  Các lệnh series, parallel, feedback hoàn toàn giống như hệ liên tục, dùng để tính hàm truyền của hệ thống nối tiếp, song song và hồi tiếp.  Tạo ra hệ thống mô tả bởi phương trình trạng thái: lệnh ss (state space) Cú pháp: PTTT = ss(A,B,C,D,T) A, B, C, D là các ma trận trạng thái; T là chu kỳ lấy mẫu. Ngoài ra, ta còn có thể biến đổi qua lại giữa dạng hàm truyền và phương trình trạng thái: Cú pháp: G = tf(PTTT) PTTT = ss(G)  Tạo ra hệ thống rời rạc từ hệ thống liên tục: lệnh c2d Cú pháp: c2d(SYS,Ts,method) SYS là hệ thống liên tục đã có, Ts là thời gian lấy mẫu, method là phương pháp rời rạc hóa được sử dụng, nếu để trống thì mặc định là khâu giữ bậc 0 “ZOH”. III.THÍ NGHIỆM: Trang 1
  2. III.1. Tìm hàm truyền tương đương của hệ thống rời rạc: Hãy tìm hàm truyền tương đương của hệ thống rời rạc dưới đây: Biết: III.2. Phân tích hệ thống rời rạc: III.2.a. Cho biến đổi z của một tín hiệu: Vẽ đáp ứng xung của tín hiệu. Lưu hình vẽ để sử dụng làm báo cáo. Hướng dẫn: Dùng lệnh impulse. SV có thể dùng lệnh help để biết rõ hơn cú pháp của lệnh. III.2.b. Cho hệ thống liên tục có hàm truyền: a. Rời rạc hóa hàm truyền sử dụng khâu giữ bậc 0. Tìm hàm truyền hệ thống rời rạc. b. Đưa hàm truyền về dạng tích các đa thức. Từ đó xác định các cực, zero và hệ số khuếch đại của hàm truyền hệ rời rạc. Hướng dẫn: SV tham khảo thêm các lệnh zpk, zpkdata. III.2.c. Hệ thống có hàm truyền rời rạc sau: a. Tìm các cực và zero của hệ thống. Hệ thống có ổn định không? Tại sao? b. Vẽ giản đồ cực-zero của hệ thống. So sánh với kết quả của câu a. Hướng dẫn: SV tham khảo thêm các lệnh pzmap, zgrid. c. Vẽ đáp ứng của hệ thống với tín hiệu vào hàm nấc để chứng minh kết quả trên. Lưu hình vẽ để báo cáo. Trang 2
  3. III.3. Thiết kế bộ điều khiển PID rời rạc: Cho hệ thống có sơ đồ như sau: Hàm truyền hệ liên tục được cho bởi: Giả sử bộ rời rạc hóa sử dụng khâu giữ bậc 0. Thời gian lẫy mẫu là 1s. Thiết kế bộ PID rời rạc thỏa: - Độ dự trữ pha . - Thời gian lên đạt giá trị nhỏ nhất. - Sai số với đầu vào hàm nấc đơn vị bằng 0. Hướng dẫn: Thiết kế dưới đây sử dụng phương pháp khử cực trong miền tần số để thiết kế khâu PID rời rạc. Rời rạc hóa hóa hàm truyền với khâu giữ bậc 0: Do hàm truyền liên tục có khâu delay nên: Trong Matlab ta khai báo như sau: >> s = zpk('s'); >> P1s = 1/((1+10*s)*(1+5*s)); >> Ts = 1; >> P1z = c2d(P1s,Ts,'zoh'); >> z = zpk('z',Ts); >> Pz = P1z/z Kết quả thu được hàm truyền rời rạc của hệ thống: Các cực và zero của hệ thống: Trang 3
  4. >> [zd,pd,kd] = zpkdata(Pz,'v') Khâu PI được sử dụng để đưa sai số xác lập về 0. Khâu PD tăng đáp ứng của hệ thống. Tần số gãy của khâu PI và PD được tính toán như hệ liên tục. Gọi là hằng số thời gian của khâu PI, là hằng số thời gian của khâu PD. Khâu PI: Tần số gãy tại 0.1 Khâu PD: Tần số gãy tại 0.2 Bộ điều khiển rời rạc có dạng: Ta tiếp tục tính toán độ lợi để đạt được độ dự trữ pha 600. Đầu tiên giả sử : >> kc = 1; >> Cz = ((z-0.9048)*(z-0.8187))/((z-1)*z); Hàm truyền rời rạc vòng hở: >> Lz = Cz*Pz; >> minreal(Lz, 0.001); (khử cực và zero) Độ lợi được tính bằng một trong 2 phương pháp sau: 1)Sử dụng lệnh margin. SV tham khảo thêm về lệnh này. >> [mag,phase,w]=bode(Lz); >> kc=margin(mag,phase-60,w); Lệnh bode sẽ kiểm tra thời gian lấy mẫu để xem hệ thống là liên tục hay rời rạc. Nếu thì hệ thống là hệ liên tục, nếu thì hệ thống là hệ rời rạc 2)Thiết lập bảng như sau: >> [numz,denz]=tfdata(Lz,'v'); >> [mag,phase,w]=dbode(numz,denz,Ts); >> T=[mag,phase,w] Quan sát thấy ứng với độ lệch pha -1200 (ứng với độ dự trữ pha là 600) thì biên độ là 0.062. Như vậy, độ lợi được tính như sau: >> kc = 1/0.062 Kiểm tra độ dự trữ pha bằng lệnh margin. >> Cz=kc*((z-pd(1))*(z-pd(2)))/((z-1)*z); Trang 4
  5. >> Lz=Cz*Pz; >> Lz=minreal(Lz); >> margin(Lz); Để đánh giá đáp ứng hệ thống, SV thiết kế sơ đồ Simulink như sau: Chỉnh thời gian lấy mẫu cho khối Zero-Order-Hold là 1s. Thời gian mô phỏng là 20. Chỉnh các khối Scope để xuất dữ liệu ra workspace. Đặt biến My cho ScopeY và Mu cho ScopeU. Sau khi mô phỏng, vẽ đáp ứng ngõ ra và lưu lại để báo cáo. >> ty = My(:,1), y = My(:,2) >> tu = Mu(:,1), u = Mu(:,2) >> subplot(211), plot(ty,y), grid >> subplot(212), stairs(tu,u), grid >> hold on, plot(tu,u,’*’) Hãy đánh giá kết quả thu được, từ đó đánh giá bộ điều khiển PID rời rạc vừa thiết kế. Trang 5
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2