Hàm với biến số thực:
abs(x) cho giá trị tuyệt đối của x ;
sign(x) cho dấu của x ;
fix(x) cho phần nguyên của x tức là làm tròn về phía số 0 ;
ceil(x) làm tròn x tới số nguyên nhỏ nhất x tức là làm tròn về phía + ;
floor(x) làm tròn x tới số nguyên lớn nhất x ; tức là làm tròn về phía - ;
round(x) làm tròn về số nguyên gần x nhất;
frac(x) cho phần phân số (thực sự ) của x: frac(x) = x – fix(x);
sqrt(x) cho căn bậc hai dương của x, (nếu x âm ta được số phức);
nthroot(x,n) cho căn bậc n (thực) của số thực x;
exp(x) cho hàm mũ cơ số e tức là ex;
pow2(x) cho hàm mũ cơ số 2 tức là 2x;
log(x) cho logarit tự nhiên (cơ số e) của x;
log10(x) cho logarit thập phân của x;
log2(x) cho logarit cơ số 2 của x;
factor(x) cho kết quả phân tích số x thành các thừa số nguyên tố;
primes(x) cho ra các số nguyên tố nhỏ hơn hoặc bằng x;
91 trang |
Chia sẻ: Mr Hưng | Lượt xem: 1419 | Lượt tải: 0
Bạn đang xem trước 20 trang nội dung tài liệu Tin học chuyên ngành cơ điện - Matlab ứng dụng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
logic 2Nhóm lệnh 2elseif biểu thức logic 3Nhóm lệnh 3......else Nhóm lệnh nendThí dụ 106: Tính tiền nước sạch sinh hoạt của hộ gia đình theo khung giá sau: Sử dụng 20m³ đầu tiên: 5.300 đồng/m³; Sử dụng từ 21m³ - 30m³: 7.500 đồng/m³; Sử dụng từ 31m³ - 40m³: 8.300 đồng/m³; Sử dụng trên 40m³: 10.000 đồng/m³Thí dụ 107: Tìm số n lớn nhất để giai thừa của nó (n!) là một số không vượt quá 10100.Bài tập: Lập trình tính giá điện sinh hoạt theo khung giá bán lẻ:Số TTMức sử dụng của một hộ trong thángGiá (đồng/kWh)1Cho 50 kWh (cho hộ nghèo và thu nhập thấp)9932Cho kWh từ 0 - 100 (cho hộ thu nhập thông thường)1.2423Cho kWh từ 101 - 150 1.3044Cho kWh từ 151 - 2001.6515Cho kWh từ 201 - 300 1.7886Cho kWh từ 301 - 4001.9127Cho kWh từ 401 trở lên1.962§11. Simulink11.1. Đại cương về SimulinkSimulink là chương trình mở rộng của MATLAB cho phép biểu thị các hàm toán học, các quá trình và các hệ thống dưới dạng sơ đồ khối, nhằm mô phỏng quá trình hoạt động của các hệ thống. Sử dụng Simulink đặc biệt hiệu quả với các bài toán khảo sát các hệ thống động, tuyến tính hoặc phi tuyến. Để khởi động Simulink sử dụng lệnh simulink hoặc nhấn chuột vào nút Simulink trên thanh công cụ của cửa sổ MATLAB. Khi đó sẽ xuất hiện cửa sổ thư viện Simulink:11.2. Xây dựng sơ đồ mô phỏng SimulinkĐể xây dựng sơ đồ mô phỏng Simulink, tiến hành mở cửa sổ mô phỏng Simulink bằng cách chọn File -> New-> Model.Việc xây dựng sơ đồ mô phỏng được thực hiện với các thao tác cơ bản:Tạo các khối chức năng: Các khối chức năng được gắp, thả từ cửa sổ thư viện sang cửa sổ mô phỏng, hoặc chọn khối chức năng trong cửa sổ thư viện nhấn chuột phải chọn Add ... để đưa khối vào cửa sổ mô phỏng. Với các khối chức năng giống nhau có thể thực hiện copy trong cửa sổ mô phỏng.Nối liên kết các khối chức năng: Có nhiều cách để tạo liên kết giữa các khối theo đúng sơ đồ thuật toán. Cách 1: Các liên kết được tạo ra bằng cách nhấn chuột vào đầu ra của khối, giữ, di chuột đưa đến đầu cần nối nhả chuột, đường nối sẽ tự động xuất hiện.Cách 2: Nhấn chuột chọn khối nguồn, nhấn chuột đồng thời giữ phím Ctrl để chọn khối đích, đường nối tự động xuất hiện.Để nối một nhóm các khối nguồn vào một khối đích, chọn các khối nguồn (nhấn shift khi chọn), nhấn chuột vào khối đích đồng thời giữ phím ctrl, các đường nối sẽ tự động được đưa ra.Để nối một khối nguồn vào một nhóm các khối đích, chọn các khối đích (nhấn shift khi chọn), nhấn chuột vào khối nguồn đồng thời giữ phím ctrl, các đường nối sẽ tự động được đưa ra.Định dạng khối: Muốn thay đổi định dạng khối nhấn chuột phải vào khối cần thay đổi, khi đó sẽ xuất hiện menu cho phép lựa chọn thay đổi kích cỡ, kiểu chữ, vị trí tên khối, có thể xoay khối theo các chiều thích hợp hoặc lấy đối xứng khối.Điền các tham số cho khối: Để nhập các dữ liệu của khối ta nháy kép vào khối, khi đó sẽ xuất hiện hộp thoại cho phép nhập các dữ liệu tương ứng của khối vào.Điền văn bản trên sơ đồ: Để ghi các chú thích trên sơ đồ ta nháy kép vào vị trí cần ghi, khi đó xuất hiện một ô vuông, cho phép ta nhập văn bản vào.Hiệu chỉnh sơ đồ: Sơ đồ mô phỏng sau khi được xây dựng, có thể được hiệu chỉnh cho phù hợp. Muốn thay đổi vị trí của các khối và đường nối, nhấn chuột vào đối tượng và kéo tới vị trí mới. Để xóa khối hoặc đường nối, nhấn chuột chọn đối tượng rồi xóa như bình thường.11.3. Chuẩn bị và chạy chương trình mô phỏng SimulinkĐặt các tham số mô phỏng và thuật giải: Để đặt các tham số mô phỏng và chọn thuật giải, vào Simulation -> Configuration Paramenters, sẽ xuất hiện một hộp thoại cho phép thay đổi các tham số mặc định sẵn của Matlab phù hợp với bài toán cụ thể mà ta thiết lập.Khởi động và dừng chương trình mô phỏng: Chọn Start để bắt đầu mô phỏng. Trong quá trình mô phỏng, nếu muốn tạm dừng chọn Pause, còn nếu muốn dừng hẳn chọn Stop.Đọc kết quả: Để xem kết quả ở khối Scope nhấn chuột kép vào biểu tượng khối.Thí dụ 108: Tạo sơ đồ mô phỏng như hình vẽ Các khối cần đưa vào sơ đồ mô phỏng: Khối Sine Wave (Thư viện Sources); Khối Scope (Thư viện Sinks); Khối Integrator (Thư viện Continuous); Khối Mux (Thư viện Signals Routing).Sau khi tạo sơ đồ mô phỏng trong cửa sổ mô phỏng chọn: Simulation -> Configuration Parameters để thay đổi các thông số quá trình mô phỏngChọn Start để chạy mô phỏng: Để xem kết quả mô phỏng nhấn chuột kép vào khối Scope, sẽ xuất hiện cửa sổ Scope.11.3. Các thư viện trong SimulinkThư viện Math Operations: Chọn thư viện Simulink -> Math Operations ở ô bên trái của cửa sổ, khi đó các khối chức năng của thư viện sẽ được hiển thị trong ô phía bên phải.Khối Add hoặc Sum: Cho phép cộng các tín hiệu đầu vào. Tín hiệu vào có thể gồm một hoặc nhiều tín hiệu số hoặc vector. Để khai báo các tham số của khối nhấn kép vào biểu tượng khối sẽ xuất hiện hộp thoại để nhập các tham số. Như để khai báo số lượng đầu vào nhập vào List of signs các dấu + hoặc – tùy theo dấu của tin hiệu đầu vào.Khối Product và Dot Product: Khối Product thực hiện phép nhân/chia từng phần tử tín hiệu vào. Khối Dot Product thực hiện phép tích vô hướng của các vectơ đầu vào (Giá trị đầu ra y = sum(conj(x1).x2)).Khối Gain và Slider Gain: Khối Gain dùng để khuếch đại tín hiệu đầu vào. Tham số khuếch đại có thể là một số hoặc một biến (nếu là biến thì nó phải tồn tại trong MATLAB workspace). Khi khai báo, tại ô Multiplication ta lựa chọn phép tính phù hợp. Khối Slider Gain cho phép thay đổi hệ số khuếch đại vô hướng trong quá trình mô phỏng từ giá trị nhỏ nhất (ô Low) đến giá trị lớn nhất (ô High).Khối Math Function và Trigonometric Function: Cho phép lựa chọn các hàm toán học và lượng giác thích hợp. Khối Algebraic Constraint:Cho phép thực hiện vòng lặp bằng cách cho tín hiệu vào khối về giá trị 0 và xuất ở đầu ra một biến z, biến này sẽ tác động ngược trở lại đầu vào thông qua một vòng hồi tiếp thích hợp.Thư viện Sources: Bao gồm các khối nguồn tín hiệu, các khối cho phép nhập dữ liệu từ file hoặc từ Workspace, là đầu vào của hệ thống.Khối Step, Ramp và Clock: Khối Step và Ramp tạo ra các tín hiệu bậc thang và dốc tuyến tính. Khối Step cần khai báo thời điểm bắt đầu (step time), giá trị đầu/cuối (initial value / final value) của tín hiệu nhảy. Khối Ramp cần khai báo độ dốc (slop), thời điểm xuất phát (start time) và giá trị xuất phát (initial output) của tín hiệu ở đầu ra. Khối Clock cung cấp chuỗi thời gian t dưới dạng vectơ.Khối Constant: Khối Constant biểu thị một hằng số, có thể là số thực, số phức, số vô hướng, vectơ. Giá trị này sẽ được khai báo trong ô Constant value.Khối From Workspace và From File: Cho phép lấy số liệu từ Workspace hoặc từ một MAT file có sẵn để sử dụng trong mô hình mô phỏng Simulink. Số liệu đưa vào cần phải khai báo theo đúng yêu cầu của Simulink.Tên khốiChức năng Band – Limited White NoiseTạo nhiễu trắng đã giới hạn băng thôngChirp - SignalTạo sóng sin với tần số bất kỳDigital ClockCấp thời gian thực ở dạng sốDiscrete Pulse GeneratorBộ phát tín hiệu dao động rời rạcPule GeneratorBộ phát xungRandom NumberTạo các số ngẫu nhiên theo phân bố chuẩnRepeating SequanceTạo tín hiệu bất kỳ lặp lại theo chu kỳSignal GeneratorBộ phát các dạng tín hiệu khác nhauSine WaveTạo tín hiệu hình sinUniform Random NumberTạo các số ngẫu nhiên đồng nhấtThư viện Sinks: Bao gồm các khối có vai trò xuất kết quả tính toán. Kết quả được thể hiện ở dạng chữ số hoặc đồ thị quan sát trực tiếp, hoặc đưa vào cửa sổ MATLAB, hoặc lưu trữ trong các file.Khối Scope: Khối Scope cho phép xuất các kết quả tính toán của quá trình mô phỏng. Khối XY Graph: biểu thị hai tín hiệu vô hướng đầu vào trên hệ tọa độ xy dưới dạng đồ thị. Các giới hạn của các trục x, y được khai báo trong x-min, x-max, y-min, y-max.Khối To Workspace: Gửi số liệu đầu vào của khối tới môi trường Workspace của MATLAB.Khối Display: Khối Display cho phép hiển thị kết quả tính toán dưới dạng số liệu. Ta có thể khai báo định dạng dữ liệu xuất thông qua lựa chọn Format.Khối To File: Khối To File cho phép lưu giữ số liệu ở đầu vào của khối cùng với vectơ thời gian dưới dạng MAT file.Thư viện Signal Routing: Bao gồm các khối có chức năng định tuyến các tín hiệu.Khối Mux, Demux: Khối Mux cho phép tập hợp các tín hiệu đưa tới. Tại ô Number of inputs khao báo số lượng và kích cỡ của các tín hiệu vào. Ví dụ nếu khai báo 3 sẽ có 3 tín hiệu đưa vào, nếu khai báo [3 2 2 -1] có nghĩa có 4 tín hiệu đầu vào, bao gồm: đầu thứ nhất có bề rộng 3, đầu thứ 2 và 3 có bề rộng 2, còn đầu thứ 4 chưa xác định (giá trị khai báo -1).Ngược với khối Mux, khối Demux có vai trò tách các tín hiệu mà đã chập trước đó. Khối Bus Selector, Selector: Khối Bus Selector cho phép tái tạo lại các tín hiệu từ một Bus tín hiệu, đồng thời góm chúng thành các tín hiệu riêng ban đầu. Ta có thể lựa chọn các tín hiệu cần tách khỏi Bus trong danh sách của các tín hiệu nằm trong Bus.Khối Selector cũng có tính năng tương tự nhưng linh hoạt hơn so với khối Bus Selector.Thư viện Ports&Subsystems: bao gồm các khối có chức năng tạo các cổng vào ra và hệ thống con của hệ thống cần mô phỏng.Khối Subsystem: Có chức năng tạo ra hệ thống con trong mô hình cần mô phỏng. Sau khi đưa khối Sybsystem vào cửa sổ mô phỏng, nhấn chuột kép vào khối, sẽ xuất hiện cửa sổ Subsystem với hai khối In1 và Out1. Ta bổ sung các khối khác vào và kết nối chúng để hình thành hệ thống con. Sau khi xây dựng xong hệ thống con, đóng cửa sổ Subsystem, trở về cửa sổ mô phỏng kết nối các khối khác với khối Subsystem. Ngoài cách làm trên có thể sử dụng cách khác để tạo hệ thống con như sau xây dựng mô hình mô phỏng bao gồm tất cả các khối, chọn các khối và liên kết muốn đưa vào hệ thống con, chọn Edit-> Create Subsystem. Hệ thống con sẽ được tự động hình thành thay thế các khối đã chọn. Khối Inport, Outport: tạo các cổng đầu vào, đầu ra của hệ thống.Khối Enable, Triger: Cho phép hệ thống con có khả năng khởi động có điều kiện. Khi đưa vào mô hình một trong hai khối trên, thì khối Subsystem sẽ tự động xuất hiện thêm một đầu vào điều khiển, nơi tín hiệu Enable cho phép kích hoạt hoặc Triger kích hoạt xung đưa tới. Thư viện Continuous: bao gồm các khối cơ bản của hệ thống liên tục tuyến tính, các khối biểu diễn hàm tuyến tính chuẩn, đặc chưng cho các quá trình động học.Khối Integrator, Derivative: Khối Integrator cho phép lấy tích phân tín hiệu vào. Các giá trị ban đầu được khai báo trực tiếp qua hộp thoại hoặc gián tiếp qua giá trị Internal ở ô Initial condition source. Nếu chọn External, sẽ xuất hiện thêm một đầu vào của khối. Khối Derivative cho phép lấy đạo hàm tín hiệu đầu vào. Tín hiệu đầu ra có dạng du/dt. Giá trị ban đầu của biến đầu ra là 0.Khối State-Space: Biểu thị mô hình trạng thái một hệ tuyến tính, mô tả bởi phương trình: x’ = Ax +Bu y = Cx +DuVới A, B, C, D là các ma trận trạng thái, có các giá trị được khai báo trong hộp thoại. Khối Transfer Function, Zero-Pole: Khối Transfer cho phép mô hình hóa hàm truyền đạt của một hệ tuyến tính. Khai báo các hệ số của đa thức tử số (Numerator coefficient) và mẫu số (Denominator coefficient) theo thứ tự giảm dần của bậc đại lượng s.Khối Zero-Pole tạo nên từ các tham số Zero, Pole và Gain một hàm truyền đạt dưới dạng số hóa theo điểm không trên tử số, điểm cực dưới mẫu số. Khối Transport Delay, Variable Transport Delay: Khối Transport Delay cho phép là trễ tíhieeujtr trong khoảng thời gian khai báo trong Time Delay trước khi xuất tới đầu ra.Khối Variable Transport Delay điều khiển trễ tín hiệu linh hoạt hơn tín hiệu chứa thời gian trễ được đưa vào đầu thứ hai của khối. Tại ô Maximum delay nhập giá trị trễ tối đa có tác dụng giới hạn giá trị của tín hiệu thời gian điều khiển trễ.Thí dụ 109: Giải hệ phương trình bằng phương pháp mô phỏng Simulinkx2 + y2 – x = 10x + y = 3So sánh kết quả mô phỏng với kết quả giải bằng lệnh fsolve.Thí dụ 110: Giải phương trình vi phân bằng phương pháp mô phỏng Simulink: dy/dx = cos(x+y) + 2,6(x-y)So sánh kết quả mô phỏng với kết quả giải bằng lệnh ode23.Thí dụ 111: Giải hệ phương trình vi phân bằng phương pháp mô phỏng Simulink: -6.7 0 -79 0x’ = 2 -1 0 . x + 0 . u 0 0.15 -0,06 -0.2y = [ 0 0 2 ] . x Thí dụ 112: Một hệ thống được biểu thị bởi phương trình vi phân sau:Hãy xây dựng sơ đồ mô phỏng bằng phương pháp mô phỏng Simulinkcđể khảo sát hệ thống
Các file đính kèm theo tài liệu này:
- bai_giang_matlab_full_1548.ppt