1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Xử lý tín hiệu số: Chương 4 - Lã Thế Vinh

42 22 0

Đ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

Định dạng
Số trang 42
Dung lượng 479,51 KB

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

Nội dung

Cùng tìm hiểu bắt đầu với MATLAB; biến; véc-tơ và ma trận; các toán tử cơ bản; File mã MATLAB; chương trình con; lệnh lập trình cơ bản;... được trình bày cụ thể trong Bài giảng Xử lý tín hiệu số: Chương 4 do Lã Thế Vinh biên soạn.

Trang 1

Bài giảng môn học

Xử Lý Tín Hiệu Số

Giảng viên: Lã Thế Vinh Email: vinhlt@soict.hut.edu.vn

Chú ý: bài giảng có sử dụng các học liệu được cung cấp bởi Giáo sư Tae-Song Kim,

Trường Đại học Kyung Hee, Hàn Quốc.

Trang 3

Giới thiệu MATLAB

• MATLAB: MATrix LABoratory

• Phát triển bởi Cleve Moler từ 1970

• Được sử dụng nhiều trong tính toán:

Trang 4

Giới thiệu MATLAB

• Ưu điểm của MATLAB (so với các ngôn ngữ khác):

– Dễ lập trình

– Khả năng tạo các đồ thị, biểu đồ dễ dàng

– Giao diện thân thiện

• Trong môn học này MATLAB được dùng để:

– Làm các thí nghiệm đơn giản: tạo, xử lý và hiển thị các tín hiệu

– Phân tích phổ tín hiệu

– Thực hiện các bộ lọc tín hiệu

Trang 5

Bắt đầu với MATLAB

• Cài đặt MATLAB

Trang 6

Bắt đầu với MATLAB

• Chạy MATLAB

Trang 7

Biến trong MATLAB

• MATLAB là ngôn ngữ lập trình có kiểu biến

động

• Biến được khai báo và khởi tạo mà không cần chỉ định kiểu

• Ví dụ: x = 1.0; y = [1 2;3 4];

Trang 8

Biến trong MATLAB

• Phép gán: x = y, MATLAB tự khai báo x và gán

cho x kiểu tương ứng

Trang 9

Biến trong MATLAB

Trang 10

Các lệnh cơ bản của MATLAB

• Panel trái: Thư mục / Không gian biến

– A) Thư mục hiện tại MATLAB đang làm việc

– B) Biến và giá trị của biến đã được tạo ra

• Panel phải: Cửa sổ lệnh

– Nhập lệnh cho MATLAB

– Lệnh không có dấu ; sẽ in kết quả thực thi ra cửa sổ lệnh – Lệnh có dấu ; sẽ không in kết quả thực thi

Trang 11

Các lệnh cơ bản của MATLAB

• Cách nhập lệnh:

– Một lệnh một dòng kết thúc bằng ENTER

– Nhiều lệnh một dòng:

• Dùng ; để tách lệnh

• Dùng , để tách lệnh (in kết quả thực thi)

• Nhập tên biến + ENTER = xem giá trị biến

• Nhập một giá trị + ENTER , MATLAB tạo ra biến ans

(answer) với giá trị đã nhập

Trang 12

Các lệnh cơ bản của MATLAB

Trang 13

• who: Hiện các biến đã được tạo ra

Trang 14

Các lệnh cơ bản của MATLAB

Trang 15

• Giá trị trong MATLAB có thể là phức

– X=1+2i

– Y=1+2j

Trang 16

Các lệnh cơ bản của MATLAB

• Cửa số lịch sử: Các lệnh đã dùng gần đây

• Nháy đúp để chạy lại lệnh

đã dùng

Trang 18

Véc-tơ và Ma trận

• Khai báo véc-tơ, ma trận

– C / Java: int a[4] = {1, 2, 3, 4}; – MATLAB:

• a = [1 2 3 4] – Véc-tơ hàng

• a = [1 2 3 4]’ – Véc-tơ cột

• a = [1;2;3;4] – Véc-tơ cột

• MATLAB tự động co giãn các ma trận

Trang 21

– Không phân tách bởi ngoặc

– , phân tách các chiều của ma trận

– Chỉ số từ 1

– Chỉ số đầu là hàng, chỉ số sau là cột

Trang 25

Véc-tơ và Ma trận

• Sao chép ma trận

– J = a(:,:);

– J = a;

Trang 26

Véc-tơ và Ma trận

Trang 27

• Tạo các véc-tơ, ma trận với các giá trị tăng/giảm đều

Trang 30

Các toán tử cơ bản

Trang 31

• Các phép *, /, \, và ^, có thể thực hiện trên từng phần tử

– Thêm vào trước toán tử

• Ví dụ: A * B

– Nhân từng cặp phần tử của A và B

• Ví dụ: [ 1 2; 3 4] * [1 2; 3 4] = ?

Trang 32

• sum(M, 2): Cộng các giá trị của M theo hàng

• prod(M): tương tự như sum nhưng tính tích

• sum, prod của một véc-tơ tính tổng/tích của các phần tử

Trang 33

File mã MATLAB

• Các chương trình phức tạp chứa nhiều lệnh không thể soạn thảo trực tiếp trong cửa sổ lệnh

• Một tập lệnh phức tạp thường được ghi vào file

mã m của MATLAB (text file)

• Có thể debug (break) khi dùng file m

• MATLAB chỉ chạy file m nếu nó nằm trong thư

mục hiện tại hoặc trong đường dẫn thư mục đã được khai báo

• Khai báo các đường dẫn thư mục

Trang 34

File mã MATLAB

Trang 35

Chương trình con

• Mỗi chương trình con được đặt trong một file

mã riêng, với tên file và tên chương trình con giống nhau

function [ra] = <Tên chương trình con>(vào)

End

• Khi có một lời gọi chương trình con, MATLAB

sẽ tìm file tương ứng trong thư mục làm việc hoặc trong các thư mục đã được khai báo

Trang 36

Chương trình con

• Biến trong chương trình con là cục bộ

• Tham số được dùng để truyền dữ liệu vào chương trình con

• Biến global cũng có thể được dùng:

– global x – quy định x là biến toàn cục được truy xuất ở khắp nơi

– Ví dụ: ?

• Dấu % để chú thích

Trang 38

Đồ thị và biểu đồ

• figure – tạo ra một cửa sổ

• subplot(m,n,k) chia cửa sổ vẽ thành lưới mxn chọn ô k để vẽ (trái -> phải, trên -> dưới)

• hold on: vẽ chồng

• hold off: xóa trước khi vẽ

• plot(x,y) vẽ hàm y theo biến x

Trang 40

Đồ thị và biểu đồ

• title(‘…’) Thêm tiêu đề

• xlabel(‘…’), ylabel(‘…’) tên các trục

Trang 41

Đồ thị và biểu đồ

Trang 42

Ví dụ:

• Vẽ một chu kỳ hàm sin tần số 50Hz

• Vẽ 10 chu kỳ hàm sin tần số 100Hz

• Cộng hai hàm và vẽ hàm tổng

• Tạo sóng sin và ghi vào file wave

• Đọc file wave và hiển thị sóng âm

• Nhận xét gì về tần số tín hiệu và tần số lấy mẫu?

wavwrite(x1,1/Ts,'c:\temp\100.wav');

wavwrite(x2,1/Ts,'c:\temp\50.wav');

wavwrite(x3,1/Ts,'c:\temp\mixed.wav');

Ngày đăng: 08/05/2021, 15:21

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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