GIÁO TRÌNH MATLAB SIMULINK

90 55 0
GIÁO TRÌNH MATLAB SIMULINK

Đ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

GIÁO TRÌNH MATLAB SIMULINK

Giới thiệu chung Điều khiển tự động hoá đóng vai trò quan trọng phát triển khoa học kỹ thuật Lĩnh vực hữu hiệu khắp nơi từ hệ thống phi thuyền không gian, hệ thống điều khiển tên lửa, máy bay không ngời lái, ngời máy tay, máy trình sản xuất đại đời sống hàng ngày: điều khiển nhiƯt ®é, ®é Èm Trong lý thut ®iỊu khiĨn tù động cổ điển nhà bác học Jame Watt, Hazen, Minorsky, Nyquist, Evan đà đa phơng pháp giải quýêt nhiều vấn đề đơn giản nh: điều tốc ly tâm để điều chỉnh nhiệt độ máy nớc, chứng minh tính ổn định hệ thống đợc xác định từ phơng trình vi phân mô tả hệ thống, xác định tính ổn định hệ thống vòng kín sở đáp ứng vòng hở tín hiệu vào hình Sin trạng thái xác lập Khi máy móc đại ngày phức tạp nhiều tín hiệu vào việc mô tả hệ thống điều khiển đại đòi hỏi lợng lớn phơng trình Lý thuyết điều khiển cổ điển liên quan hệ thống ngõ vào ngõ trở nên bất lực để phân tích hệ thống nhiều đầu vào, nhiều đầu Kể từ khoảng năm 1960 trở nhờ máy tính số cho phép ta phân tích hƯ thèng phøc t¹p miỊn thêi gian, lý thut điều khiển đại phát triển để đối phó với phức tạp hệ thống đại Lý thuyết điều khiển đại dựa phân tích miền thời gian tổng hợp dùng biến trạng thái, cho phép giải toán điều khiển có yêu cầu chặt chẽ độ xác, trọng lợng giá thành hệ thống lĩnh vực kỹ nghệ không gian quân Sự phát triển gần lý thuyết điều khiển đại nhiều lĩnh vực điều khiển tối u hệ thống ngẫu nhiên tiền định Hiện máy vi tính ngày rẻ, gọn nhng khả xử lý lại mạnh nên đợc dùng nh phần tử hệ thống điều khiển Matlab chơng trình phần mềm lớn lĩnh vực tính toán số Matlab chữ viết tắt từ MATrix LABoratory, thể định hớng chơng trình bao gồm số hàm toán chức nhập / xuất nh khả lập trình với cú pháp thông dụng mà nhờ ta dựng nên Scripts Matlab có nhiều phiên nh: 3.5, 4.0, 4.2, 5.0, 5.2,6.0, 6.5 Hiện đà có phiên 7.1 Trong tiểu luận chủ yếu tìm hiểu phiên 6.5 Simulink phần mềm mở rộng Matlab (1 Toolbox Matlab) dùng để mô hình hoá, mô phân tích hệ thống động Thông thờng dïng ®Ĩ thiÕt kÕ hƯ thèng ®iỊu khiĨn, thiÕt kÕ DSP, hệ thống thông tin ứng dụng mô khác Simulink thuật ngữ mô dễ nhớ đợc ghép hai từ Simulation Link, Simulink cho phép mô tả hệ thống tuyến tính, hệ phi tuyến, mô hình miền thời gian liên tục, hay gián đoạn hệ gồm liên tục gián đoạn http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt Phần I : Cơ sở MATLAB MATLAB chơng trình phần mềm lớn lĩnh vực toán số Tên chơng trình chữ viết tắt từ MATrix LABoratory, thể định hớng chơng trình phép tính vector ma trận Phần cốt lõi chơng trình bao gồm số hàm toán , chức nănng nhập /xuất nh khả điều khiển chu trình mà nhờ dựng Scripts Trong phần bao gồm Toolbox liên quan tới §iỊu KhiĨn –Tù §éng hãa nh−: Control System Toolbox, Signal Processing Toolbox, Optimization Toolbox, Stateflow Blockset, Power System Blockset , Real – Time Workshop va SIMULINK SIMULINK lµ mét toolbox có vai trò bặc biệt quan trọng: Vài trò công cụ mạnh phục vụ mô hình hóa mô hệ thống Kỹ thuật Vật lý sở sơ đồ cấu trúc dạng khối Cùng với SIMULINK , Statefow Blockset tạo cho ta khả mô hình hóa mô automat trạng thái hữu hạn 1.1 Những bớc dầu tiên với MATLAB 1.1.1 Màn hình MATLAB Sau khỏi động MATLAB , môi trờng tích hợp với cửa sổ nh− h×nh d−íi : - Cưa sỉ Launch Pad : Cưa sỉ nµy cho phÐp ng−êi sư dơng truy cËp nhanh công cụ MATLAB, Phần Help (trợ giúp) Online Documents (tài liệu trực tuyến), mở Demos (chơng tr×nh tr×nh diƠn) http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt - Cưa sỉ th− mơc hiƯn t¹i Current Directory Browser : Nhê cưa sỉ nµy ng−êi sư dơng nhanh chãng nhËn biÕt, chun đổi th mục môi trờng công tác, mở File, tạo th mục - Cửa sổ môi trờng công tác Workspace Browser : Tất biến, hàm tồn môi trờng công tác đợc hiển thị cửa sổ nàyvới đầy đủ thông tin nh: Tên loại biến/hàm, kích thớc tùy theo Bytes loại liệu Ngoài cất vào nhớ liệu , sử dụng chức Array Editor (soạn thảo mảng) để thay đổi biến - Cửa sổ lệnh Command Windows : Đây cửa sổ MATLAB Tại ta thực toàn việc nhập liệu xuất kết tính toán Dấu nhấp nháy >> báo hiệu chơng trình hoạt động: - Mỗi lần nhập liệu đợc kết thúc động tác nhấn phím ENTER Nguyên tắc nhân, chia thực trớc cộng , trừ th tự u tiên dấu ngoặc nh bình thờng Số có giá trị lớn thờng đợc nhập với hàm e mũ (có thể viết E) Có thể kết thúc chơng trình cách đóng hình MATLAB , gọi lệnh quit, exit nhấn tổ hợp phím Ctrl+q - Cửa sỉ qu¸ khø Command History : TÊt c¸ c¸c lƯnh đà sử dụng Command Windows đợc lu giữ hiển thị đây, lặp lại lệnh cũ bắng cách nháy chuột kép vào lệnh Cũng cắt, xóa nhóm lệnh lệnh riêng rẽ 1.1.2 Tiện ích trợ giúp (Help) MATLAB Tiện ích trợ giúp MATLAB vô phong phú Tùy theo nhu cầu , gọi Help [command] để xem nội dung hỗ trợ lệnh command trực tiếp Command Windows sử dụng c«ng truy cËp Help http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt Cã thể gọi sổ Help cách gọi Menu , gäi lƯnh helpwin hay doc trùc tiÕp trªn cđa sỉ Command Windows B»ng lƯnh loockfor searchstring ta cã thể tìm chuỗi ký tự searchstring dòng đầu mäi MATLAB File th− môc MATLAB >> help log LOG Natural logarithm LOG(X) is the natural logarithm of the elements of X Complex results are produced if X is not positive See also LOG2, LOG10, EXP, LOGM Overloaded methods help gf/log.m help sym/log.m help fints/log.m help designdev/log.m >> C¸c lệnh liên quan tới tiện ích help đợc tập hợp b¶ng sau: Help help[command] helpwin[command] doc[command] lookforsearchstring TiƯn Ých Help trùc tun cđa MATLAB cưa sỉ lƯnh Commmand Workspace TiƯn Ých Help trùc tun cđa MATLAB cưa Sỉ truy cËp Help T− liƯu trùc tun cđa MATLAB cửa sổ truy cập Help Tìm chuỗi ký tự searchstringtrong dòng MATLAB Files th mục MATLAB 1.1.3 Các biến Thông thờng , kết cảu biến đợc gán cho ans Sủ dụng dấu ta có thẻ định nghĩa biến , đồng thời gán giá trị cho biến dó Khi nhập tên biến mà không gán giá trị , ta thu giả trị biến Tất biến biến global Workspace Tên biến chứa tới 32 chữ , gạch ngang thấp (_) nh chữ số Chữ viết hoa to chữ viết nhỏ đợc phân biệt Việc nhập giá trị đợc thực thành chuỗi dòng , chØ c¸ch bëi dÊu (;) NÕu sư dụng dấu phẩy(,) để tách lệnh giá trị đợc xuất hình : >> x=25; y=10; >> x http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt x= 25 >> a=x+y,A=x/y a= 35 A= 2.5000 Mét sè biÕn nh− : pi , i , j inf đà đợc MATLAB dùng đêr số hay ký hiệu, ta phải tránh sử dụng chúng Đối với phép tính bất định (ví dụ 0/0), hình xuất kết NaN (Not a Number) esp cho ta biết cấp xác tơng đối biĨu diƠn sè víi dÊu phÈy ®éng (vÝ dơ : esp = 2.2204e-016): >> 1/0 Warning: Divide by zero (Type "warning off MATLAB:divideByZero" to suppress this warning.) ans = Inf Inf: infinite (v« cïng) >> 0/0 Warning: Divide by zero (Type "warning off MATLAB:divideByZero" to suppress this warning.) ans = NaN NaN: not defined (bất định ) Các ký hiÖu = +-*/^ ; , esp i j inf NaN pi Gán giá trị cho biến Các phép tính Nhập giá trị (còn giữ vai trò dấu cách nhập nhiều giá trị dòng ) Dấu cách xuất nhiều giá trị dòng Cấp xác tơng đối sử dụng giá trị dấu phẩy động Toán tử ảo Vô ( ) Not a Number Hằng số 1.1.4 Các hàm toán học Chơng trình MATLAB có sẵn nhiều hàm toán tập hợp bảng sau Tất hàm bảng có khả sử dụng tính vector http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt Các hàm toán sqrt(x) exp(x) log(x) log10(x) abs(x) sign(x) real(x) imag(x) phase(x) Căn bậc hai Hàm mũ số e Logarit tự nhiên Logarit số thập phân Giá trị tuyệt đối Hàm dấu Phần thực Phần ảo Góc pha số phức sin(x) cos(x) tag(x) Hµm sin Hµm cos Hµm tg rem(x,y) round(x) ceil(x) floor(x) sum(v) prod(v) min(v) max(v) mean(v) Sè d− phép chia x/y Làm tròn số Làm tròn lên Làm tròn xuống Tổng phần tử vector Tích phÇn tư vector PhÇn tư vector bÐ nhÊt PhÇn tư vector lớn Giá trị trung bình cộng Các hàm lợng giác atan(x) atan2(x,y) sinc(x) Hàm arctg 900 Hàm arctg ±1800 Hµm sin( π x)/ ( π x) 1.2 Vector ma trận MATLAB có số lệnh đặc biệt để khai báo sử lý vector ma trận Cách đơn giản để khai báo , tạo lên vector ma trận nhập trực tiếp Khi nhập trực tiếp phần tử hàng đợc cách dấu phẩy vị trí cách bỏ trống1, hàng đợc cách dấu (;) ngắt dßng >> vector=[3 5] vector = >> matran=[vector; 3] matran = Vector có phần tử tiếp diễn với bợc định , nhập cách đơn giản nhờ Toán tử (:) nh sau (start: increment; destination) (xuất phát : bớc; đích) Nếu nhập start destination , MATLAB tự động đặt increment +1 Cũng nhập vector tuyến tính nh vector có phân hạng logarithm cách dùng lệnh linspace(start, destination, number) (Trong number số lơng phÇn tư cđa vector)” Ta cịng cã thĨ nhËp b»ng lệnh logspace, start destination đợc nhập số mũ thập phân , ví dụ : thay nhập 100 = (102)ta chØ cÇn nhËp >> long=1:5 long = >> deep = 10:-2:2 deep = 10 >> longer=linspace(1,15,5) http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt longer = 1.0000 4.5000 8.0000 11.5000 15.0000 >> licreace=logspace(1,2,5) licreace = 10.0000 17.7828 31.6228 56.2341 100.0000 B»ng c¸c hàm ones(line,column)và zeros(line, column) ta tạo ma trận có phần tử Hàm eye(line) tạo ma trận đơn vị, ma trận toàn phơng với phần tử thuộc đờng chéo , tất phần tử lại Kích cỡ ma trËn hoµn toµn phơ thc ng−êi nhËp: >> M= ones(2, 3) M= 1 1 1 ViÖc truy cập phần tử vector ma trận đợc thực cách khai báo số phần tử , cần lu ý : số bé không phảI Đặc biệt , cần xuất hàng hay cột , sử dụng toán tử (:) đứng , điều có nghĩa : phải xuất phần tử hàng hay cột : >> matran(2,2) ans = >> matran(2,:) ans = MATLAB cã mét lƯnh rÊt h÷u Ých , phơc vụ tạo ma trận với chức tín hiệu thử : rand(m,n) Khi gọi ta thu đợc ma trận m hàng n cột với phần tử mang giá trị ngẫu nhiên: >> mt_ngaunhien=rand(2,3) mt_ngaunhien = 0.4565 0.8214 0.6154 0.0185 0.4447 0.7919 Khai báo vector ma trËn [x1 x2 …; x3 x4 …] start: increment: destination linspace (start,destination ,number) logspace (start,destination ,number) eye(line) ones(line,column) zeros(line,column) rand(line,column) Nhập giá trị cho vector ma trận Toán tử (:) Khai b¸o tuyÕn tÝnh cho vector Khai b¸o logarithm cho vector Khai báo ma trận đơn vị Khai báo ma trận với phần tử Khai báo ma trận với phần tử Khai báo ma trận với phần tử nhập ngẫu nhiên http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 1.2.1 Tính toán với vector ma trận Nhiều phép tính áp dụng cho vector ma trËn VÝ dơ : PhÐp nh©n víi ký hiƯu(*) đợc dùng để tính tích vector ma trận Việc chuyển vị vector ma trận đợc thùc hiƯn nhê lƯnh transpose hc (‘) NÕu vector ma trận phức , ta dùng thêm lệnh ctranspose () để tìm giá trị phức liên hợp Đối với giá trị thực hai lệnh nh− >> M*matran ans = 8 NÕu nh− c¸c phÐp tÝnh * / ^ cần đợc thực cho phần tử vector ma trận , ta phải đặt thêm vào trớc ký hiệu phép tình ký hiệu (.) Phép tính biến vô hớng đợc thực cho phần tử : >> M / matran ans = 0.3333 0.2500 0.2000 1.0000 0.5000 0.3333 Phép tính có hiệu lực ma trận có phần tử phức: >> matranphuc = [1+i 1-i; ] matranphuc = 1.0000 + 1.0000i 1.0000 - 1.0000i 1.0000 2.0000 >> matranphuc*matranphuc ans = 1.0000 + 1.0000i 4.0000 - 2.0000i 3.0000 + 1.0000i 5.0000 - 1.0000i >> matranphuc.*matranphuc ans = + 2.0000i 1.0000 - 2.0000i 4.0000 LƯnh diff(vector [n]) tÝnh vector sai ph©n Bằng lệnh conv(vector_1, vvector_2) ta chạp hai vector vector_1 vector_2 Nếu hai vector cần chập có phần tử hệ số hai đa thức, kết thu đợc ứng với hệ số sau nhân hai ®a thøc ®ã víi : >> diff(vector) ans = 1 Hai lệnh inv det dùng để nghịch đảo ma trận toàn phơng tính định thức ma trận Giá trị riêng ma trận matrix đợc tính lệnh eig(matrix) hạng đợc tính lệnh rank(matrix), Nếu cần chuyển vị ma trËn ta dïng lÖnh transpose(matrix): >> matrix=[1 3;3 5;5 7] http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt matrix = 3 5 >> rank(matrix) ns = >> eig(matrix) ans = 12.9282 -0.9282 0.0000 >> det(matrix) ans = >> inv(matrix) Warning: Matrix is close to singular or badly scaled Results may be inaccurate RCOND = 1.850372e-018 ans = 1.0e+016 * 0.4504 -0.9007 0.4504 -0.9007 1.8014 -0.9007 0.4504 -0.9007 0.4504 >> transpose(matrix) ans = TÝnh toán với vector ma trận * / ^ transpose(matrix) hc matrix’ ctranspose(matrix) hc matrix’ inv(matrix) det(matrix) eig(matrix) rank(matrix) diff(vector[n]) conv(vector_1,vector_2) Các phép tính với phần tử Chuyển vị ma trận matrix Chuyển vị ma trận matrix có phần tử phức liên hợp Đảo ma trận Tính định thức ma trận Tính giá trị riêng ma trận Xác định hạng ma trận Tính vector sai phân Chập vector (nhân đa thức) http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 1.2 Cấu trúc trờng 1.2.1 Cấu trúc Để thuận tiện cho việc quản lý sử dụng , ta tập hợp nhiều biến lại cấu trúc Trong môi mảng có tên riêng (một chuỗi ký tự string) đặt hai dấu ( ) có kèm theo giá trị Một cấu trúc đợc tạo nên lệnh struct(name_1,value_1,name_2,value_2, ): >>my_structure = struct(data, matrix, size, [2 3]); Việc truy cập vào liệu đợc thùc hiƯn bëi víi dÊu c¸ch(.); >>my_structure (2) data = matrix.^(-1) ; ans = 1.0000 0.5000 0.3333 Ngoµi MATLAB có lệnh cấu trúc móc vòng nh− cÊu tróc nhËp bëi lƯnh componist 1.2.2 Tr−êng Tổng quát mức độ cao cấu trúc trờng (Cell Array) Đó Array (mảng nhiều chiều), chứa Cell (tế bào) với liệu thuộc loại kích cỡ khác Ta tạo Cell Array lệnh cell , đơn giản cách ghép phần tử bên dấu ngoặc {} Từng phần tử Cell Array đợc truy cập nh vector , ma trận thông thơng nh Array nhiều chiều , cần lu ý : Thay dùng dấu ngoặc tròn ( ) ta sử dụng dấu ngoặc móc {} Giả sử ta tạo Cell Array rỗng có tªn my_cell nh− sau : >> my_cell = cell(2,2) my_cell = [] [] [] [] Bây ta lần lợt gán cho mảng my_cell giá trị sau ®©y: >> my_cell{1,1} ='chao cac ban'; >> my_cell{1,2} ='chuc cac ban hoc tap tot'; >> my_cell{2,1} =[1 2; 4]; >> my_cell{2,2} =10; Khi nhËp tªn cđa Cell Array trªn hình xuất lên đầy đủ cấu trúc Có thể biết nội dung (hay giá trị ) cđa mét hay nhiỊu Cell ta nhËp c¸c chØ sè cña Cell: >> my_cell my_cell = 'chao cac ban' [1x24 char] [2x2 double] [ 10] >> my_cell{1,1} ans = chao cac ban >> my_cell{1,2} http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 10 III Th− viƯn cđa Simulink 1.Th− viƯn Sources Trong th− viƯn bao gồm nguồn phát tín hiệu, khối cho phÐp nhËp sè liÖu tõ mét File, hay tõ Matlab Workspace Sau ta lần lợt điểm qua ý nghĩa khối a Constant: khối tạo nên số ( không phụ thuộc thời gian) thực phức Hằng số vecter hay ma trËn… Ta cã thĨ khai b¸o tham sè constsnt value lµ vecter hµng hay cét víi kÝch cì [n x 1] hay [1 x n] d−íi d¹ng ma trËn b Step vµ Ramp: nhê hai khèi nµy ta cã thĨ tạo nên tín hiệu dạng bậc thang hay dạng dốc tuyến tính dùng để kích thích mô hình Simulink Trong hép tho¹i Block Parameters cđa khèi Step ta khai báo giá trị đầu- giá trị cuối thời điểm bắt đầu tín hiệu bớc nhảy Đối với Ramp ta khai báo độ dốc, thời điểm mà giá trị xuất phát tín hiệu đầu (Chú ý: hai khối Step Ramp không tạo tín hiệu mà tạo tập tín hiệu đợc xử lý dới dạng vector ma trận ) Ví dụ: c Signal Generator vµ Pulse Generator Nhê Signal Generator ta tạo dạng tín hiệu kích thích khác Cung cấp cho dạng sóng khác (giống nh máy phát sóng) + Sóng Sin + Sóng vuông (Square) + Sóng ca (Sawtood) + Sóng ngẫu nhiên (Random) Với Pulse Generator tạo chuỗi xung hình chữ nhật Biên độ tần số khai báo tùy ý Đối với Pulse Generator ta có khả chọn tỉ lệ cho bề rộng xung( tính phần trăm cho chu kì) http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 76 d Repeating sequence Khối cho phép ta tạo nên tín hiệu tuần hoàn tùy ý Tham số Time values phải vecter thời gian với giá trị đơn điệu tăng Vecter biến Output values phải có kích cỡ (chiều dài) phù hợp với chiều dài tham số Time values.Giá trị lớn vecter thời gian định chu kì lặp lại vecter biến e Sine Wave Khối đợc sử dụng để tạo tín hiệu hình Sin cho hai loại mô hình: liên tục (tham số Sample time = 0)và gián đoạn (tham số sample time = 1) Màn hình cài đặt th«ng sè cho khèi Sine Wave f From Workspace Khèi From Workspace cã nhiƯm vơ lÊy sè liƯu tõ cưa sổ Matlab Workspace để cung cấp cho mô hình Simulink Các số liệu lấy vào phải có dạng biểu thức Matlab, khai báo dòng Data http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 77 g From File B»ng khèi From File ta cã thĨ lÊy sè liƯu tõ mét MAT-File cã s½n MAT-File kết lần mô trớc đó, đà đợc tạo nên cất nhờ khối To file sơ đồ Simulink Th viện Sinks Th viện bao gồm khối xuất chuẩn Simulink Ngoài khả hiển thị đơn giản số, có khối dao động kí để biểu diƠn c¸c tÝn hiƯu phơ thc thêi gian hay biĨu diễn hai tín hiệu hệ tọa độ XY a Scope Nhờ khối Scope ta hiển thị tín hiệu trình mô Khi nhấn vào nút Properties, hộp thoại Scope Properties (đặc điểm Scope) mở Chọn general ta đặt chế độ cho trục Khi đặt Number of axes > 1, cửa sổ Scope có nhiều đồ thị giống tơng tự nh lệnh Subplot Matlab Nếu điền số cụ thể vào ô time range, đồ thị đợc biểu diễn tới thời điểm giá trị số xác định Cửa sổ Scope sau më: b XY Graph Khèi nµy biĨu diƠn hai tín hiệu đầu vào hệ tọa độ XY dới dạng đồ họa Matlab đầu vào thứ (bên trên) ứng với trục X đầu thứ hai ứng với trục Y http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 78 c To Workspace Khèi To Workspace gửi số liệu đầu vào khối tới môi trờng Matlab Workspace dới dạng mảng (Array), Stracture hay Stracture with time lấy chuỗi kí tự khai variable name để đặt tên cho tập số liệu đợc ghi d To File Khèi nµy gióp ta cÊt tËp số liệu (mảng hay ma trận) đầu vào khối với véctơ thời gian dới dạng Mat- File Array định dạng giống nh định dạng mà khối From File cần, số liệu To File cất đợc From File đọc trực tiếp mà không cần phải xử lí Ví dụ: hai tín hiệu hình Sin tín hiệu hình ca đợc hiển thị độc lập, đồng thời hệ tọa độ XY, đợc thiết lập nh hình bên Th viện Math Th viện có số khối có chức ghép toán học tín hiệu khác nhau, có khối đơn giản nhằm cộng hay nhân tín hiệu có hàm phức tạp nh lợng giác logicSau ta xét chức số khối quan träng th− viƯn nµy a Sum TÝn hiƯu khối Sum tổng tín hiệu đầu vào (Ví dụ nh tín hiệu đầu vào tín hiệu hình Sin tín hiệu đầu tín hiệu hình Sin) Khối Sum cã thĨ tÝnh tỉng tõng phÇn tư( vÝ dơ tÝn hiƯu vµo gåm hai tÝn hiƯu: Sin(x) vµ [5 3] tín hiệu có dạng [Sin(x)+5 Sin(x)+9 Sin(x)+3]) http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 79 b Product vµ Dot Product Kh i Product th c hi n phÐp nh©n tõng phần tử hay nhân ma trận nh phép chia tín hiệu vào (dạng 1-D hay 2- D) cđa khèi vÝ dơ: nÕu mét khèi Product cã tham sè Number of Inputs = */*, víi ba tÝn hiƯu vµo lµ 5, sinx vµ [4 6] tín hiệu đầu có dạng [20/Sinx 20/sinx 25/Sinx 30/Sinx] Khối Dot Product tính tích vô hớng Vector đầu vào Giá trị đầu khối tơng ®−¬ng víi lƯnh Matlab y = Sum(conj(u1)*u2) c Math Function Trigonometric Function Cả hai khối xư lÝ tÝn hiƯu 2-D Khèi Math Function cã mét lợng lớn hàm toán đà đợc chuẩn bị sẵn cho phÐp ta lùa chän theo nhu cÇu sư dơng Còn khối Trigonometric Function có tất hàm lợng giác quan trọng d Gain Slider Gain Khối Gain có tác dụng khuyếch đại tín hiệu đầu vào (định dạng 1-D hay 2-D) biểu thức khai báo ô Gain Biểu thức biến hay số biến Biến phải tồn môi trờng Matlab Workspace Simulink tính toán đợc với biến Khối Slider Gain cho phép thay đổi hệ số khuyếch đại vô hớng trình mô Th viện Constinuous a.Integrator Khối Integrator lấy tích phân tín hiệu đầu vào khối Giá trị ban đầu đợc khai báo trực tiếp hộp thoại Block Parameters thông qua chọn giá trị Internal ô Initial condition Source để sau điền giá trị ban đầu vào dòng viết ô Initial condition Đầu khối Integrator đợc tín hiệu bên lập giá trị ban đầu biến trạng thái khối Biến trạng thái khối thực chất đồng giá trị với biến ®Çu nh−ng víi Simulink tÝnh hai biÕn ®ã (biÕn biến trạng thái) thời điểm nhiều có khác Nếu mô hình Simulink chứa biến trạng thái chênh lệch kích cỡ giá trị, nên khai báo tham số Absolute Tolerance riêng rẽ thêm cho khối Integrator mô hình, đà khai báo Absolute Tolerance chung hộp thoại Simulation Parameters Việc khai báo thêm buộc Simulink bảo đảm giá trị sai số yêu cầu đối víi tõng khèi http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 80 b Derivative Khèi cho phép ta tính đạo hàm tín hiệu đầu vào Tín hiệu tìm đợc đầu có dạng u/t với biến thiên đại lợng cần tính kể từ bớc tích phân liền trớc Giá trị ban đầu c Transfer Fcn Zero-Pole Khối Transfer Fcn cho phép mô hình hóa hàm truyền đạt hệ tuyến tính Tham số khối hệ số đa thức tử số mẫu số, khai báo theo thứ tự số mũ s giảm dần Bậc mẫu số phải lớn bậc tử số Ví dơ: nÕu nhËp cho tư sè [5 1] vµ mÉu sè [6 1] khèi sÏ tạo hàm truyền đạt: y (s ) s + s + 3s + W(s) = = u (s ) s + 8s + 3s + s + Khèi Zero Pole tạo nên từ tham số Zeros, Poles Gain hàm truyền đạt dới dạng hệ số hóa theo điểm không, điểm cực http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 81 d Transport Delay vµ Variable Transport Delay Khèi Trasnport Delay làm trễ tín hiệu vào khoảng thời gian khai báo ô Time Delay trớc xuất tới đầu Chỉ đến thời gian mô bắt đầu vợt thời gian trễ (so với lúc bắt đầu mô phỏng), khối Transport Delay xuất giá trị khai Initial Input tới đầu Bằng khối Variable Transport Delay cã thĨ ®iỊu khiĨn trƠ tÝn hiƯu cách linh hoạt: tín hiệu chứa thời gian trễ đợc đa tới đầu vào thứ hai (đầu vào phía dới) khối Tại ô Maxmum Delay ta phải khai giá trị trễ tối đa, có tác dụng giới hạn (chặn trên) giá trị tín hiệu điều khiĨn thêi gian trƠ Th− viƯn Tables a Lookup Table Khối tạo tín hiệu từ tín hiệu vào sở thông tin cất bảng tra (Vector of input values x Vector of output values) Nếu giá trị tín hiệu vào trùng với giá trị thuộc Vector of input values, giá trị tơng ứng bảng thuộc Vevtor of output values đợc đa tới đầu Nếu giá trị tín hiệu vào nằm hai giá trị thuộc Vector of output values, Simulink thùc hiƯn néi suy hai gi¸ trị tơng ứng Vector of output values Nếu giá trị tín hiệu vào bé / lớn giá trị / giá trị cuối Vector of input values, http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 82 Simulink sÏ thực ngoại suy hai gía trị / cuèi cïng cña Vector of output values Vector of input values cã thĨ lµ mét Vector hµng hay mét Vector cột b Lookup Table (2-D)1 Khối cho phép tạo nên bảng tra hai chiều Bằng tham số Table ta khai b¸o mét ma trËn cÊt c¸c tÝn hiƯu đầu Muốn tìm đợc giá trị đa tới đầu ta cần biết Row để tìm hàng Column để tìm cột ô giá trị ma trận Tín hiệu đặt đầu vào phía đợc so với Row tín hiệu đặt đầu vào phía dới đợc so với Column II áp dụng Simulink vào thiết kế phân tích Trong việc khảo sát ứng dụng ta thử xây sơ đồ mô cho hệ dao động lò xo khối lợng sau: f k m y http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 83 Hệ lò xo khối lợng đợc mô tả phơng trình vi phân: m&y&+ ky = f m: khối lợng; k: độ cứng lò xo Từ ta có sơ đồ khối sau: f &y& y& y Hình 1: Sơ đồ khối hệ dao động Sau ta thử xây dựng sơ đồ mô Simulink Hình Sơ đồ khối mô hệ khối lợng lò xo Hình Dạng sóng ngõ Scope Từ sơ đồ thiết kế ta thêm vào khối để khảo sát hệ nh: hệ số cứng (gain), thay đổi dạng sóng Trong sách tập điều khiển tự động có khối nhng đợc đáp ứng hệ nh Việc dùng Simulink để khảo sát thuận tiệncho việc phân tích toán http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 84 Hình Sơ đồ khối hệ dới tác động đáp ứng bớc Hình Đáp ứng sơ đồ hình 2.35 2.36 sơ đồ động điện đáp ứng vận tốc quay Hình Sơ đồ khối động điện http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 85 Hình Đáp ứng vận tốc quay Trong điều khiển tự động thên vào khâu P, PI, PID làm cho hệ thống hoạt động tốt ổn định Các sơ đồ điều khiển mô Hình Hệ thống điều khiển có khâu PI Hình Đáp ứng khâu bÃo hòa http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 86 Hình 2.39 Đáp ứng ngõ Hình 10 Hệ thống mô chuyển động rơi banh Hình 11 Kết mô http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 87 Hình 12 Sơ đồ mô khâu bậc hai Hình 13: Đáp ứng khâu bậc hai dới ngõ vào hàm dốc bớc Hình 14 Mô hình động không đồng http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 88 Hình 2.45 Kết mô Hình : Sơ đồ điểu khiển động DC Hình 15 : Đáp ứng động với khâu P http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 89 http://www.ebook.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt 90 ... Cơ sở MATLAB MATLAB chơng trình phần mềm lớn lĩnh vực toán số Tên chơng trình chữ viết tắt từ MATrix LABoratory, thể định hớng chơng trình phép tính vector ma trận Phần cốt lõi chơng trình. .. Lệnh DEMO a) Công dụng: Chạy chơng trình mặc định Matlab b) Cú pháp: demo c) Giải thích: demo: chơng trình có sẵn trong Matlab, chơng trình minh họa số chức Matlab 10 Lệnh DIARY a) Công dụng:... cđa MATLAB cưa sỉ lƯnh Commmand Workspace TiƯn Ých Help trùc tun cđa MATLAB cưa Sỉ truy cËp Help T− liƯu trùc tun cđa MATLAB cưa sỉ truy cập Help Tìm chuỗi ký tự searchstringtrong dòng cđa mäi MATLAB

Ngày đăng: 21/02/2021, 08:19

Từ khóa liên quan

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

Tài liệu liên quan