1. Trang chủ
  2. » Tất cả

Báo cáo nhập môn ngành điện nhóm 3 tìm hiểu về matlab

13 7 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Tìm Hiểu Về Matlab
Tác giả Giảng Viên Cao Thành Trung, Sinh Viên Thực Hiện Phụng Văn Khoa, Trần Minh Kỳ, Nguyễn Nhật Huy, Tụ Duy Hướng, Lờ Việt Hoàng
Trường học Trường Điện – Điện Tử, Đại Học Bách Khoa Hà Nội
Chuyên ngành Ngành Điện – Điện Tử
Thể loại Báo cáo nhập môn ngành điện
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 13
Dung lượng 564,33 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƯỜNG ĐIỆN – ĐIỆN TỬ BÁO CÁO NHẬP MÔN NGÀNH ĐIỆN NHÓM 3 TÌM HIỂU VỀ MATLAB Giảng viên hướng dẫn Cao Thành Trung Sinh viên thực hiện Phùng Văn Khoa – 20222310 Trần Minh Kỳ 202[.]

Trang 1

ĐẠI HỌC BÁCH KHOA HÀ NỘI

TRƯỜNG ĐIỆN – ĐIỆN TỬ

-BÁO CÁO NHẬP MÔN NGÀNH ĐIỆN NHÓM 3: TÌM HIỂU VỀ MATLAB

Giảng viên hướng dẫn: Cao Thành Trung Sinh viên thực hiện

: Phùng Văn Khoa – 20222310 Trần Minh Kỳ - 20222574

Nguyễn Nhật Huy – 20222554

Tô Duy Hướng – 20222293

Lê Việt Hoàng - 20222131

MATLAB LÀ GÌ?

Trang 2

MATLAB là phần mềm cung cấp môi trường tính toán số và lập trình, do công

ty MathWorks thiết kế MATLAB cho phép tính toán số với ma trận, vẽ đồ thị hàm

số hay biểu đồ thông tin, thực hiện thuật toán, tạo các giao diện người dùng và liên kết với những chương trình máy tính viết trên nhiều ngôn ngữ lập trình khác.

Với thư viện Toolbox, MATLAB cho phép mô phỏng tính toán, thực nghiệm nhiều

mô hình trong thực tế và kỹ thuật.

Lịch sử

Trang 3

Matlab là viết tắt từ "MATrix LABoratory", được Cleve Moler phát minh vào cuối thập niên 1970, và sau đó là chủ nhiệm khoa máy tính tại Đại học New Mexico

MATLAB, nguyên sơ được viết bởi ngôn ngữ Fortran, cho đến 1980 nó vẫn chỉ là một bộ phận được dùng nội bộ của Đại học Stanford

Năm 1983, Jack Little, một người đã học ở MIT và Stanford, đã viết lại MATLAB bằng ngôn ngữ C và nó được xây dựng thêm các thư

viện phục vụ cho thiết kế hệ thống điều khiển, hệ thống hộp công cụ (tool box), mô phỏng Jack xây dựng MATLAB trở thành mô hình ngôn ngữ lập trình trên cơ sở ma trận (matrix-based programming language) Steve Bangert là người đã viết trình thông dịch cho MATLAB Công việc này kéo dài gần 1½ năm Sau này, Jack Little kết hợp với Moler

và Steve Bangert quyết định đưa MATLAB thành dự án thương mại - công ty The MathWorks ra đời thời gian này - năm 1984

Phiên bản đầu tiên MATLAB 1.0 ra dời năm 1984 viết bằng C cho MS-DOS PC được phát hành đầu tiên tại IEEE Conference on Design and Control (Hội nghị IEEE về thiết kế và điều khiển) tại Las Vegas, Nevada Ban đầu Matlab được phát triển để hỗ trợ sinh viên sử dụng hai thư viện LINPACK và EISPACK dùng cho đại số tuyến tính (viết bằng Fortran)

mà không cần biết lập trình Fortran

Năm 1986, MATLAB 2 ra đời trong đó hỗ trợ UNIX

Năm 1987, MATLAB 3 phát hành

Năm 1990 Simulink 1.0 được phát hành gói chung với MATLAB

Năm 1992 MATLAB 4 thêm vào hỗ trợ 2-D và 3-D đồ họa màu và các

ma trận truy tìm Năm này cũng cho phát hành phiên bản MATLAB Student Edition (MATLAB ấn bản cho học sinh)

Năm 1993 MATLAB cho MS Windows ra đời Đồng thời công ty này có trang web là www.mathworks.com

Năm 1995 MATLAB cho Linux ra đời Trình dịch MATLAB có khả năng chuyển dịch từ ngôn ngữ MATLAB sang ngôn ngữ C cũng được phát hành trong dịp này

Năm 1996 MATLAB 5 bao gồm thêm các kiểu dữ liệu, hình ảnh hóa, bộ truy sửa lỗi (debugger), và bộ tạo dựng GUI

Năm 2000 MATLAB 6 cho đổi mới môi trường làm việc MATLAB, thay thế LINPACK và EISPACK bằng LAPACK và BLAS.[2]

Năm 2002 MATLAB 6.5 phát hành đã cải thiện tốc độ tính toán, sử dụng phương pháp dịch JIT (Just in Time) và tái hỗ trợ MAC

Năm 2004 MATLAB 7 phát hành, có khả năng chính xác đơn và kiểu nguyên, hỗ trợ hàm lồng nhau, công cụ vẽ điểm, và có môi trường phân tích số liệu tương tác

Trang 4

Đến tháng 12, 2008, phiên bản 7.7 được phát hành với SP3 cải thiện Simulink cùng với hơn 75 sản phẩm khác

Năm 2009 cho ra đời 2 phiên bản 7.8 (R2009a) và 7.9 (R2009b)

Năm 2010 phiên bản 7.10 (R2010a) cũng đã được phát hành

Matlab được dùng rộng rãi trong giáo dục, phổ biến nhất là giải các bài toán số trị (cả đại số tuyến tính lẫn giải tích) trong nhiều lĩnh vực kĩ

thuật

Ngôn ngữ lập trình

Ngôn ngữ lập trình dùng trong hệ tính toán số cũng có tên gọi

là MATLAB Nó thuộc kiểu lập trình thủ tục (với một số đặc điểm của lập trình hướng đối tượng mới được bổ sung trong các phiên bản gần đây

Các kiểu dữ liệu

MatLab có đầy đủ các kiểu dữ liệu đơn giản như: số nguyên, số thực, ký

tự, logic (boolean)

Chuỗi ký tự được đặt trong dấu nháy đơn hoặc nháy kép, chẳng

hạn "Viet Nam"

Kiểu dãy (sequence) có dạng dau:buoc:cuoi bao gồm một véc-tơ gồm các phần tử bắt đầu từ số dau tăng dần theo từng buoc cho đến bằng (không vượt quá) số cuoi Kết quả cho ra một véc-tơ hàng:

1.2 : 0.2 : 1.7 %chú thích: tương đương với [1.2 1.4 1.6]

1.2 : 0.2 : 1.8 %chú thích: tương đương với [1.2 1.4 1.6 1.8]

Kiểu ma trận đóng vai trò trung tâm trong MatLab Ví dụ một ma trận hai hàng ba cột như sau (hết một hàng cần dấu chấm phẩy để phân tách, nhưng không nhất thiết xuống dòng):

[ -3 4 5.2 ;

2.1 -8 7.6 ]

MatLab còn có một số kiểu dữ liệu khác cao cấp hơn:

kiểu cell, kiểu struct (bản ghi)

Các phép tính với ma trận

Trang 5

Các phép cộng trừ hai ma trận cùng kích thước được thực hiện bình thường Đặc biệt với phép nhân, MatLab phân biệt hai toán tử: * dành cho phép nhân ma trận và * dành cho nhân từng cặp phần tử tương ứng của hai ma trận

>> a = [ 2 3 ; 2 4]

2 3

2 4

>> a * a % chính là bình phương ma trận A

10 18

12 22

>> a * a % chỉ là bình phương TỪNG PHẦN TỬ của A

4 9

4 16

Với phép tính lũy thừa cũng tương tự Chẳng hạn, với ví dụ trên ta có thể viết lần lượt là a^2 và a.^2

Cú pháp

Trước đây MatLab không phân biệt chữ in, chữ thường (giống như Fortran) Các phiên hơn gần đây lại có sự phân biệt này (theo ngôn ngữ C) Các từ khóa đều viết chữ thường

 Lệnh gán có dạng giống như nhiều ngôn ngữ lập trình khác: tên_biến = giá_trị_biểu thức Thông thường máy sẽ in ra kết quả của biến sau khi gán, nếu ta không kết thúc lệnh gán bởi dấu ;

Ví dụ

t = 2 * 3 % hiện thị t = 6

t = t + 1 ; % t có giá trị bằng 7 nhưng không hiển thị lên màn hình.

 Khai báo hàm số (ví dụ như hàm bình phương tên tham số vào

là x, tên tham số ra là y:

function y = binhPhuong (x)

y = x * x;

end

 Cấu trúc rẽ nhánh, lặp:

Trang 6

for i = 1 : 3 % chú ý rằng vòng lặp theo dạng dãy

disp ( 1/ i )

end

i = 0

while i < 4

i = i + 1 ; % không cho hiển thị ra màn hình

disp ( i ) % hiển thị giá trị i

end

Cú pháp đặc biệt (syntactic sugar)

Để tăng tốc độ lập trình, nhất là thao tác từ dấu nhắc lệnh, MatLab cho phép nhiều kiểu cú pháp viết tắt Chẳng hạn để xem hướng dẫn về lệnh plot thì hai câu lệnh sau là tương đương:

doc ( 'plot' )

doc plot % chú thích: cách viết gọn, đồng thời bỏ dấu ngoặc tròn và dấu nháy

Một ví dụ nữa là các số trong một véc-tơ hàng không cần có dấu phẩy ngăn cách

v1 = [ 2 , 3 , 4 ]

v2 = [ 5 6 7 ] % cũng hợp lệ!

Và ngay cả cách gọi file lệnh từ dấu nhắc cũng là một dạng rút gọn đặc biệt Chẳng hạn ta cần chạy file tinhtong.m trong thư mục hiện hành:

>> tinhtong

Trang 7

Vẽ đồ thị là một tính năng được trau chuốt trong MatLab; với rất nhiều kiểu đồ thị khác nhau như biểu đồ dạng đường, biểu đồ chấm điểm, các lớp màu (patch) hai chiều, đường đồng mức và các đường cong, mặt cong ba chiều Ngoài ra MatLab còn cung cấp giao diện để người dùng trực tiếp biên tập hình vẽ, điền vào các ghi chú theo ý muốn

Vẽ đồ thị dạng đường

Giả sử có dãy số liệu V đo theo thời gian t Trong MatLab, V và t đều

có dạng vec tơ có cùng độ dài Khi đó lệnh vẽ đồ thị với trục hoành

là t và trục tung là V có dạng:

plot (t, V)

xlabel ( 't (s)' ) % viết tiêu đề các trục

ylabel ( 'V (m/s)' )

Vẽ đồ thị dạng lớp màu

Một cách hiệu quả để biểu thị các trường vật lý trong không gian hai chiều là dùng lớp màu Chẳng hạn T là một ma trận 2 chiều lưu giữ giá trị nhiệt độ của một tấm kim loại hình chữ nhật, thì việc hiển thị phân phối nhiệt độ bằng một lớp màu được thực hiện dễ dàng:

pcolor (T)

Vẽ trường vec tơ

Cũng như đồ thị lớp màu, việc hiển thị trường vec tơ rất cần thiết trong các ngành khoa học - vật lý Để vẽ trường véc-tơ hai chiều của các ma trận u và v, dùng lệnh:

quiver (u,v)

Trang 8

Control system toolbox

Control System Toolbox là 1 thư viện của matlab dùng trong lĩnh vực điều khiển tự động Cùng với các lệnh của matlab, tập lệnh của Control System Toolbox sẽ giúp ta thiết kế, phân tích và đánh giá các chỉ tiêu chất lượng của 1 hệ thống tuyến tính

Control System Toolbox cung cấp các thuật toán và ứng dụng để phân tích, thiết kế và điều chỉnh một cách có hệ thống các hệ thống điều khiển tuyến tính Ta có thể chỉ định hệ thống của mình dưới dạng hàm truyền, không gian trạng thái, độ lợi bằng không cực hoặc mô hình đáp ứng tần số Các ứng dụng và chức năng, chẳng hạn như biểu đồ phản hồi bước và biểu đồ Bode, cho phép ta phân tích và trực quan hóa hành

vi của hệ thống trong miền thời gian và tần số

Ta có thể điều chỉnh các tham số của bộ bù bằng các kỹ thuật tương tác như định hình vòng lặp Bode và phương pháp quỹ tích nghiệm Hộp công cụ tự động điều chỉnh cả bộ bù SISO và MIMO, bao gồm cả bộ điều khiển PID Bộ bù có thể bao gồm nhiều khối có thể điều chỉnh kéo dài qua một số vòng phản hồi Ta có thể điều chỉnh bộ điều khiển

khuếch đại theo lịch trình và chỉ định nhiều mục tiêu điều chỉnh, chẳng hạn như theo dõi tham chiếu, loại bỏ nhiễu và biên độ ổn định Ta có thể xác thực thiết kế của mình bằng cách xác minh thời gian tăng, độ vọt lố, thời gian ổn định, độ lợi và biên pha cũng như các yêu cầu khác

Trang 9

Simscape

Simscape cho phép chúng ta nhanh chóng tạo các mô hình hệ thống vật

lý trong môi trường Simulink Với Simscape, ta xây dựng các mô hình thành phần vật lý dựa trên các kết nối vật lý tích hợp trực tiếp với sơ đồ khối và các mô hình mô hình hóa khác Ta có thể lập mô hình các hệ thống như động cơ điện, bộ chỉnh lưu cầu, bộ truyền động thủy lực và

hệ thống làm lạnh bằng cách lắp ráp các bộ phận cơ bản thành một sơ

đồ Các sản phẩm bổ sung của Simscape cung cấp các thành phần phức tạp hơn và khả năng phân tích

Simscape giúp ta phát triển các hệ thống điều khiển và kiểm tra hiệu suất ở cấp độ hệ thống Ta có thể tạo các mô hình thành phần tùy chỉnh bằng ngôn ngữ Simscape dựa trên MATLAB, ngôn ngữ này cho phép tác giả dựa trên văn bản của các thành phần, miền và thư viện mô hình hóa vật lý Ta có thể tham số hóa các mô hình của mình bằng cách sử dụng các biến và biểu thức MATLAB, đồng thời thiết kế các hệ thống điều khiển cho hệ thống vật lý của ta trong Simulink Để triển khai các

mô hình của ta sang các môi trường mô phỏng khác, bao gồm các hệ thống phần cứng trong vòng lặp (hardware-in-the-loop hay HIL),

Simscape hỗ trợ tạo mã C

Trang 10

Định nghĩa của PID

PID là sự kết hợp của 3 bộ điều khiển: tỉ lệ, tích phân và vi phân, có khả năng điều chỉnh sai số thấp nhất có thể, tăng tốc độ đáp ứng, giảm độ vọt lố, hạn chế sự dao động

Bộ điều khiển PID hay chỉ đơn giản là PID là một kỹ thuật điều khiển quá trình tham gia vào các hành động xử lý về “tỉ lệ, tích phân và vi phân“ Nghĩa là các tín hiệu sai số xảy ra sẽ được làm giảm đến mức tối thiểu nhất bởi ảnh hưởng của tác động tỉ lệ, ảnh hưởng của tác động tích phân và được làm rõ bởi một tốc độ đạt được với tác động vi phân số liệu trước đó

Điều khiển PID là một kiểu điều khiển có hồi tiếp vòng kín được sử dụng rộng rải trong hệ thống điện, tự động hóa, điện tử,…

Tìm hiểu về PID

Ví dụ: Khi bạn muốn điều khiển lò nung, theo như bình thường thì bạn

phải cài đặt mức nhiệt độ là 38ºC, khi đạt ngưỡng 38ºC thì ngắt nhiệt Nhưng theo cách này thì độ chính xác là 38ºC sẽ thấp vì có sai số lớn

Do đó, khi sử dụng bộ điều khiển PID thì nó sẽ điều chỉnh giá trị điều khiển ở ngõ ra Ouput sao cho sai lệch giữa giá trị đo được của hệ thống với giá trị cài đặt nhỏ nhất có thể ( sai số∼0), tạo sự ổn định và có đáp ứng nhanh

Một cách đơn giản nhất để hiểu về PID như sau:

 P (Proportional): là phương pháp điều chỉnh tỉ lệ, giúp tạo ra tín hiệu điều chỉnh tỉ lệ với sai lệch đầu vào theo thời gian lấy mẫu

 I (Integral): là tích phân của sai lệch theo thời gian lấy

mẫu Điều khiển tích phân là phương pháp điều chỉnh để tạo ra các tín hiệu điều chỉnh sao cho độ sai lệch giảm về 0 Từ đó cho

ta biết tổng sai số tức thời theo thời gian hay sai số tích lũy trong quá khứ Khi thời gian càng nhỏ thể hiện tác động điều chỉnh tích phân càng mạnh, tương ứng với độ lệch càng nhỏ

 D (Derivative): là vi phân của sai lệch Điều khiển vi phân tạo ra tín hiệu điều chỉnh sao cho tỉ lệ với tốc độ thay đổi sai lệch đầu vào Thời gian càng lớn thì phạm vi điều chỉnh vi phân càng mạnh, tương ứng với bộ điều chỉnh đáp ứng với thay đổi đầu vào càng nhanh

Trang 11

PID được coi là là bộ điều khiển lý tưởng của các hệ thống điều khiển quy trình hiện đại Nó được sử dụng hầu hết trong các ứng dụng điều khiển quá trình tự động trong công nghiệp hiện nay Để điều chỉnh lưu lượng, nhiệt độ, áp suất, vv…

 Giảm sai số xác lập đến mức tối thiểu nhất

 Hạn chế độ dao động

 Giảm thời gian xác lập và độ vọt lố

Điều khiển mức nước bằng PID

Bộ điều khiển có thể chạy hoàn toàn tự động mà không cần sự can thiệp của con người, cần có những điều sau đây:

 Bộ điều khiển nhận tín hiệu 4-20mA ngõ ra PID 4-20mA

 Cảm biến đo mức nước 4-20mA

 Van điều khiển nước xả ra tín hiệu 4-20mA

– Mức nước đo được từ cảm biến, được gọi là biến quá trình (PV) – SV là giá trị cài đặt cần mong nuốn

Khi SV khác với PV thì PID sẽ tự điều chỉnh để duy trì mức nước trong bể một cách chính xác nhất

Trang 12

V

í dụ:

Có một bể chứa dung dịch vừa cần trộn đều dung dịch vừa có thể điều khiển nhiệt độ tại 70ºC

Để điều khiển tự động với PID, cần có sự kết hợp của các thiết bị như sau:

 Van điều khiển lưu lượng

 Cảm biến nhiệt độ

 Biến tần điều khiển PID cho động cơ

 Bộ điều khiển nhiệt độ PID cho van điều khiển

Cảm biến nhiệt độ có thể điều khiển được tốc độ của biến tần và lưu lượng nước đi qua van điều khiển Nhằm đảm bảo mức độ trộn đều dung dịch và nhệt độ trong bể Việc tăng hay giảm nhiệt độ phụ thuộc vào lưu lượng dung dịch đi qua van điều khiển Còn trộn dung dịch đều hay không lại phụ thuộc vào biến tần

Điều khiển tín hiệu PID là một quá trình phức tạp Để điều khiển chính xác các đối tượng: nhiệt độ, độ ẩm, chiều dài, mực nước, lưu lượng, áp suất,…Cần phải thiết kế từng PID độc lập cho từng đối tượng

Trang 13

 Bộ điều khiển tỉ lệ – P (Proportional Controller)

 PI (Proportinal and Integral Controller) gọi là bộ điều khiển tỉ lệ

và tích phân

 PD (Proportional and Derivative (PD) Controller) gọi là bộ điều khiển đạo hàm

 PID (Proportional, Integral, and Derivative (PID) Controller) là bộ điều khiển tỉ lệ – tích phân- đạo hàm (vi phân)

Nguyên lý hoạt động của bộ điều khiển PID là gì?

Hệ thống điều khiển PID tự động bao gồm:

 Thiết bị điều khiển và cài đặt (PLC, HMI)

 Cơ cấu chấp hành (thiết bị gia nhiệt)

 Thiết bị hồi tiếp (cảm biến nhiệt độ, cảm biến áp suất)

Ngày đăng: 02/03/2023, 15:09

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w