Mô hình hóa tín hiệu rời rạc trong Matlab. Xử lý tín hiệu số: Lập mô hình trong MATLAB (RUB 367,00)

A.I.Slonina S. M. Arbuzov Được UMO khuyến nghị về giáo dục trong lĩnh vực viễn thông như một công cụ hỗ trợ giảng dạy cho sinh viên của các cơ sở giáo dục đại học đang nghiên cứu trong lĩnh vực đào tạo các chuyên gia được chứng nhận 210400 "Viễn thông" St. Petersburg "BHV-Petersburg" 2008

Trang 1

UDC 681.3.06 (075.8) BBK 32.973(ya73) S60 Solonina, A.I.S60 Xử lý kỹ thuật số tín hiệu. Lập mô hình trong MATLAB / A. I. Solonina, S. M. Arbuzov. - St. Petersburg: BHV-Petersburg, 2008. - 816 tr.: ill. - (Hướng dẫn) ISBN 978-5-9775-0259-7 Đã được xem xét phương pháp cơ bản và các thuật toán xử lý tín hiệu số (DSP) và mô phỏng máy tính của chúng bằng MATLAB. Các chế độ hoạt động chính của hệ thống MATLAB, tính toán ma trận, phương pháp số tiêu chuẩn và vẽ đồ thị được phác thảo. Các chi tiết cụ thể về việc biểu diễn các tín hiệu và hệ thống DSP trong MATLAB sẽ được thảo luận chi tiết, các hệ thống rời rạc tuyến tính, tổng hợp bộ lọc FIR và IIR, lọc kỹ thuật số thích ứng, lượng tử hóa, sóng con và mô hình hóa các đối tượng này cũng như các quy trình DSP sử dụng phần mềm MATLAB được mô tả. một số chương trình đồ họa được đưa vào gói phần mở rộng MATLAB và được thiết kế để giải quyết các vấn đề DSP bằng giao diện đồ họa người dùng mà không cần truy cập trực tiếp vào phần mềm MATLAB. Dành cho sinh viên và giáo viên đại học cũng như các chuyên gia về xử lý tín hiệu số Người phản biện: M. S. Kupriyanov, Tiến sĩ Khoa học Kỹ thuật, Giáo sư của Đại học Kỹ thuật Điện bang St. Petersburg "LETI" V. A. Vargauzin, Tiến sĩ, phó giáo sư của St. Petersburg Đại học Bách khoa Bang UDC 681.3.06 (075.8) BBK 32.973 (ya73) Nhóm chuẩn bị xuất bản: Phó Tổng biên tập. Trưởng ban biên tập. Biên tập Biên tập Bố cục máy tính Người đọc soát lỗi Thiết kế dòng sản phẩm Đầu thiết kế bìa. được sản xuất bởi Ekaterina Kondukova Tatyana Lapina Grigory Dobin Nina Sedykh Natalia Smirnova Victoria Piotrovskaya Igor Tsyrulnikov Elena Belyaeva Nikolay Tverskikh ID giấy phép số 02429 ngày 24/07/2017. Ký xuất bản ngày 30/05/08. Định dạng 70×1001/16. In nền. Đúng. ïå `. ë. 65,78. Lưu hành 1500 ýêç. Đặt hàng ¹ "Bal-Paratórðr", 194354, Sásíkò-Prátórðr, óë. Tam Á, 5A. Kết luận vệ sinh dịch tễ đối với sản phẩm số 77.99.60.953.Ä.002108.02.07 ngày 28/02/2007. do Cơ quan Giám sát Liên bang về Bảo vệ Quyền lợi Người tiêu dùng và Phúc lợi Con người ban hành. Được in từ các tờ giấy trong suốt làm sẵn tại Xí nghiệp Thống nhất Nhà nước "Nhà in "Nauka" 199034, Sashaykt-Paparya, ngày 9, 12 ISBN 978-5-9775-0259-7 © Solonina A. I., Arbuzov S. M., 2008 © Thiết kế, nhà xuất bản "BHV-Petersburg", 2008

Trang 2

Nội dung MỞ ĐẦU................................................................................. .................................................... .............1 DANH SÁCH CÁC CHỮ VIẾT TẮT TRONG NGÔN NGỮ...................... ...................................3 DANH MỤC TỪ VIẾT TẮT BẰNG TIẾNG ANH............... ................................. ...5 PHẦN I. GIỚI THIỆU VỀ MATLAB .................................... ....................................7 CHƯƠNG 1. GIỚI THIỆU HỆ THỐNG MATLAB.. ................................................................. ............9 1.1. Các chỉ định được chấp nhận.................................................................. ...........................................10 1.2. Cài đặt và khởi chạy MATLAB................................................................. ......................11 1.3. Giao diện Matlab................................................................................. ....................................13 1.4. Hệ thống trợ giúp MATLAB.................................................................. ....................................16 CHƯƠNG 2. PHƯƠNG THỨC TÍNH TRỰC TIẾP.................................................................. ....................24 2.1. Đội................................................. ........................................................... ............25 2.2. Toán tử: toán tử gán.................................................................. ......................26 2.3. Các hằng số................................................................................. ........................................................... .............27 2.4. Biến................................................. ........................................................... ............34 2.5. Chức năng................................................. ........................................................... ............37 2.6. Biểu thức................................................. ........................................................... ............43 2.7. Ký hiệu và chức năng của các hoạt động.................................................. .............................44 2.8. Vùng bộ nhớ làm việc Vùng làm việc: ra lệnh who, whos, clear...........51 2.9. Lưu dữ liệu vào đĩa: lệnh lưu, tải................................................................. ............53 2.10. Tạo thư mục của riêng bạn và lưu đường dẫn đến nó.................................53

Trang 3

IV Nội dung CHƯƠNG 3. PHÒNG THÍ NGHIỆM MA TRẬN....................................... .............................55 3.1. Các phần tử của ma trận và cách truy cập chúng................................................................. ............56 3.2. Độ dài vectơ và kích thước ma trận: độ dài, kích thước hàm.................................58 3.3. Hàm tạo ma trận chuẩn.................................................................. ......................58 3.4. Sự hình thành vectơ và ma trận con từ ma trận.................................................. ............61 3.5. Ghép các ma trận con và vectơ thành ma trận................................................. ......63 3.6 . Sao chép ma trận: hàm Repmat................................................................. ......................64 3.7. Các phép toán phần tử với ma trận.................................................. ......................................65 3.8. Các phép tính với ma trận trong bài toán đại số tuyến tính.................................66 3.9. Các phép toán với ma trận trong các bài toán thống kê toán học: hàm max, min, Sort, sum, prod, cumsum, diff, Mean, std, var, cov, corrcoef ........... .................................................................. ............................................103 CHƯƠNG 4. CÁC LOẠI Mảng.................................................................. ......................................111 4.1. Mảng số................................................................................. ........................................................... ..111 4.2. Mảng không phải số.................................................................. ......................................114 4.3. Định nghĩa kiểu dữ liệu: hàm lớp.................................................................. ............124 CHƯƠNG 5. HÌNH ẢNH........... ...................................................... ............127 5.1. Đồ họa 2D: ra lệnh hình, giữ, giữ; chức năng biểu đồ phụ................................................................................. .................................................... ............127 5.2. Thiết kế đồ thị: lệnh lưới, tiêu đề hàm, xlabel, ylabel, gtext, legend, xlim, ylim ...................... ................................................. .. ............129 5.3. Đồ thị hai chiều: đồ thị hàm, loglog, semilogx, semilogy, logspace, fplot........... .................................................................. ............130 5.4. Quản lý thuộc tính đồ thị.................................................................. ......................................135 5.5. Đồ thị hai chiều đặc biệt: hàm gốc, bậc thang, cực, la bàn, thanh, bánh, lịch sử .................... ................................................................. ......................139 5.6. Đồ họa 3D................................................................................. ....................................145 5.7. Tạo lưới trên mặt phẳng XOY: hàm lưới lưới..................145 5.8. Đồ họa ba chiều: các chức năng cốt truyện3, lưới, lưới, lưới, lướt, lướt, lướt, đường viền3............................ ...................................................... ............146 5.9. Quản lý các thuộc tính của đồ thị ba chiều: hàm colormap; lệnh đổ bóng, thanh màu................................................................. ......................................150 CHƯƠNG 6. PHƯƠNG PHÁP SỐ GIẢI CÁC BÀI TẬP ĐẶC BIỆT.. ............153 6.1. Các phép tính với đa thức.................................................................. .................................................... .153 6.2. Nghiệm của phương trình: hàm fzero ................................................................. ............................159

Trang 4

Nội dung V 6.3. Phép xấp xỉ và phép nội suy.................................................................. ......................................161 6.4. Giảm thiểu các hàm: hàm fminbnd, fminsearch ....................169 6.5. Tích phân số: các hàm bẫyz, cumtrapz, quad, quad1, dblquad ...................... ................................................................. ......................172 6.6. Tích phân số của các phương trình vi phân thông thường................................................. ................................................................. ...................................................174 CHƯƠNG 7. CHẾ ĐỘ LẬP TRÌNH.................................................................. ............187 7.1. Chương trình người dùng - M-files................................................. ............188 7.2. Cấu trúc các file hàm: hàm nargin, nargout; loại lệnh, toàn cầu; báo cáo trả lại................................................................................. ......................................188 7.3. Cấu trúc file script: lệnh echo on, echo off..................192 7.4. Xây dựng chương trình trong MATLAB................................................................. ............194 7.5. Làm việc với tập tin M................................................................................. ......................................................208 PHẦN II. MÔ PHỎNG DSP SỬ DỤNG PHẦN MỀM MATLAB....................................................... ............................................217 CHƯƠNG 8. TÍN HIỆU RỜI RÀNG.................................................. ......................219 8.1. Biểu diễn dãy số.................................................................. .... ..........220 8.2. Chuỗi ngẫu nhiên: các hàm rand, randn, xcorr, xcov..........244 CHƯƠNG 9. HỆ THỐNG RẰNG TUYẾN TÍNH...................... ......................257 9.1. Mô hình hóa hệ thống rời rạc tuyến tính trong miền thời gian....257 9.2. Mô hình hóa hệ thống rời rạc tuyến tính trong miền z.................................................285 9.3. Mô hình hóa các hệ thống rời rạc tuyến tính trong miền tần số.........302 CHƯƠNG 10. CẤU TRÚC CỦA HỆ THỐNG RỠNG TUYẾN TUYẾN TÍNH...................... .. ..313 10.1. Các loại cấu trúc của hệ thống FIR và IIR.................................................. .............313 10.2. Mô tả cấu trúc của hệ thống FIR và IIR dưới dạng đối tượng dfilt...........318 10.3. Các hàm MATLAB cho các đối tượng dfilt.................................................. ..........325 10.4. Sắp xếp các liên kết và chia tỷ lệ trong các đối tượng dfilt: sos, hàm tỷ lệ. ................................................................. ...................................................... ...332 CHƯƠNG 11 BIẾN ĐỔI Fourier rời rạc........................................... ...................339 11.1 . Tính toán DFT: các hàm fft, ifft, fftshift; các hàm bên ngoài fft_e1, fft_e2................................................ ........................................................... .............................342

Trang 5

VI Nội dung 11.2. Tính toán tích chập bằng DFT: hàm fftfilf; hàm bên ngoài iir_iir................................................................. .................................................... ............356 11.3. Tính toán tích chập với phân vùng: hàm fftfilt...........363 CHƯƠNG 12. XỬ LÝ TÍN HIỆU NGẪU NHIÊN BẰNG HỆ THỐNG RẰNG TUYẾN TÍNH ĐẶC BIỆT............ ................................................................. ......................367 12.1. Sự hình thành tín hiệu ngẫu nhiên với luật phân bố xác suất cho trước................................................. ............................................367 12.2 . Sự hình thành các tín hiệu ngẫu nhiên với hàm tương quan cho trước................................................. ........................................................... ......................................370 12.3. Phương pháp phân tích quang phổ không tham số: hàm wvtool, psd.................................. ................................................................. ....................371 12.4. Dự đoán tuyến tính: hàm lpc................................................................. ............381 12.5. Các phương pháp tham số phân tích quang phổ: hàm pcov, arcov, pmcov, armcov, pburg, arburg, pyulear, aryule .......387 CHƯƠNG 13. TỔNG HỢP FIR BỘ LỌC.................................................................. ............................391 13.1. Bộ lọc kỹ thuật số................................................................................. ...........................................391 13.2. Đặc tính của bộ lọc FIR.................................................................. ......................................393 13.3. Chỉ định yêu cầu về đặc tính tần số của bộ lọc FIR.......395 13.4. Tổng hợp các bộ lọc FIR sử dụng phương pháp cửa sổ: hàm Fir1, kaiserord; các hàm bên ngoài check_low, check_high, check_pass, check_stop,plot_fir......400 13.5. Tổng hợp các bộ lọc FIR sử dụng phương pháp gần đúng thống nhất tốt nhất (Chebyshev): hàm Firpm, Firpmord, Firgr; chức năng bên ngoài MAG_fir.................................................. ....................................417 13.6. Bộ chuyển đổi Hilbert số.................................................................. .......442 13.7. Bộ phân biệt kỹ thuật số.................................................................. ....................449 13.8. Cấu trúc bộ lọc FIR sau: mô tả như một đối tượng dfilt.................................. ............................................. ...................................453 13.9. Phân tích các đặc tính của bộ lọc kỹ thuật số: Hàm fvtool......456 CHƯƠNG 14. TỔNG HỢP BỘ LỌC IIR.................................................................. ......................457 14.1. Đặc tính của bộ lọc IIR.................................................................. ................................................................. .457 14.2. Xác định các yêu cầu về đặc tính tần số của bộ lọc IIR và quy trình tổng hợp.................................. ................................................................. ......................458 14.3. Tổng hợp các bộ lọc analog: chức năng butter, cheby1, cheby2, ellip, buttord, cheb1ord, cheb2ord, ellipord, freqs............................ ... ......................460 14.4. Tổng hợp bộ lọc IIR sử dụng phương pháp bất biến đáp ứng xung: hàm impinvar, xung....................... ......................463

Trang 6

Nội dung VII 14.5. Tổng hợp các bộ lọc IIR sử dụng phương pháp biến đổi Z song tuyến tính: các hàm song tuyến tính, butter, cheby1, cheby2, ellip, buttord, cheb1ord, cheb2ord, ellipord....... .................................................................. ............................469 14.6. Cấu trúc bộ lọc IIR: mô tả dưới dạng đối tượng dfilt.......................480 14.7 . Mô tả các yêu cầu về đáp ứng tần số của bộ lọc FIR và IIR dưới dạng đối tượng thiết kế ................................................. .................................................... ............481 14.8. Tổng hợp bộ lọc FIR và IIR dạng đối tượng dfilt dựa trên đối tượng fdesign ................................................. .................................................................. ............486 CHƯƠNG 15. LỌC KỸ THUẬT SỐ THÍCH ỨNG................... ...................................493 15.1. Ứng dụng nguyên tắc thích ứng trong hệ thống DSP.................................................493 15.2. Thuật toán Adaptive LMS: hàm lms và nlms cho đối tượng Adaptfilt....................................... ............................................. ....................................499 15.3. Thuật toán Adaptive RLS: hàm rls cho đối tượng Adaptfilt ....504 CHƯƠNG 16. LƯỢNG TỬ TRONG HỆ THỐNG DSP ĐIỂM CỐ ĐỊNH...513 16.1. Hiệu ứng lượng tử hóa trong cấu trúc của bộ lọc số..................................515 16.2. Mô hình hóa cấu trúc của bộ lọc điểm cố định số.................................................. ............................................ ...................................542 16.3. Phân tích đặc tính của bộ lọc FIR và IIR bằng FT.......................566 16.4. Mô phỏng lượng tử hóa trong ADC....................................................... ............581 16.5. Tính toán đáp ứng của bộ lọc FIR và IIR với FT: hàm lọc ............. 601 CHƯƠNG 17. HỆ THỐNG DSP ĐA TỐC ĐỘ............. ....................618 17.1. Hệ thống nội suy một lần.................................................................. ......................619 17.2. Mô phỏng phép nội suy đơn trong MATLAB: hàm interp, upfirdn................................................. ............................................. ................... 624 17.3. Hệ thống thập phân dùng một lần.................................................................. ....................................629 17.4. Mô phỏng phép thập phân đơn lẻ trong MATLAB: hàm thập phân, hàm upfirdn................................................. ............................................. ...635 17,5. Hệ thống lấy mẫu lại một lần ............. ......................638 17.6. Mô phỏng quá trình lấy mẫu lại đơn lẻ trong MATLAB: các hàm resample, upfirdn....................................... ............................................ ..639 17,7. Mô tả cấu trúc nhiều pha của hệ nội suy và thập phân dưới dạng đối tượng mfilt....................................... ...................................642 CHƯƠNG 18. XỬ LÝ TÍN HIỆU WAVELET....................................... ....651 18.1. Các khái niệm cơ bản về phân tích wavelet.................................................. ..........652 18.2. Wavelet trong MATLAB: các hàm wavemngr, waveinfo, wavefun, centfrq ...................................... ............................................. ................................................................. 655

Trang 7

VIII Nội dung 18.3. Biến đổi wavelet liên tục: hàm cwt.................................667 18.4. Bộ lọc tỷ lệ: chức năng dbwavf, symwavf, coifwavf, biorwavf, rbiowavf........................................... .................................................................. ............671 18.5. Bộ lọc phân rã và phục hồi: hàm orthfilt, wfilters, qmf, dwt, iwdt....................... ................................................................. ......................672 18.6. Phân tích wavelet đa cấp: các hàm wavedec, waverec, appcoef, detcoef, swt, iswt............................ ................................................. .680 18.7. Các gói Wavelet: hàm wpdec, wpcoef, wprec, goropy, besttree ........684 CHƯƠNG 19. TƯƠNG TÁC VỚI CÁC NGUỒN TÍN HIỆU BÊN NGOÀI........690 19.1. Các định dạng dữ liệu tương thích với các công cụ phân tích tín hiệu trong MATLAB................................................. ........................................................... ...................................690 19.2. Sử dụng tín hiệu có sẵn: chức năng wnoise..................................692 19.3. Nhập tập tin bên ngoài: chức năng wavread.................................................. ........ ..697 19.4. Phát âm thanh: các chức năng âm thanh, âm thanh, wavplay...........700 19.5. Ghi tập tin âm thanh: các hàm wavrecord, wavwrite.......................702 PHẦN III. MÔ HÌNH DSP SỬ DỤNG GUI.................................................. .705 CHƯƠNG 20. THIẾT KẾ BỘ LỌC KỸ THUẬT SỐ SỬ DỤNG GUI FDATOOL... ................................... .................................................... ....................707 20.1. Tổng hợp các bộ lọc số.................................................................. ................................................................. ..708 20.2. Thông số đầu vào của bộ lọc số.................................................................. ......................710 20.3. Ví dụ về tổng hợp bộ lọc số.................................................................. ......................715 20.4. Lựa chọn cấu trúc bộ lọc số.................................................................. ............721 20.5. Phân tích bộ lọc số.................................................................. ......................................722 20.6. Tổng hợp bộ chuyển đổi Hilbert số.................................................. ....724 20.7. Tổng hợp các bộ phân biệt số.................................................. ...............726 20.8. Lưu các bộ lọc kỹ thuật số trong suốt phiên trong GUI FDATool.........728 20.9. Xuất các bộ lọc kỹ thuật số dưới dạng đối tượng dfilt.................................................. ............729 10.20. Nhập các bộ lọc kỹ thuật số dưới dạng đối tượng dfilt.................................................. .....732 20.11. Mô hình hóa cấu trúc của bộ lọc điểm cố định số.................................................. ........................................................... ....733 CHƯƠNG 21. LỌC MÔ HÌNH KỸ THUẬT SỐ SỬ DỤNG GUI SPTOOL .................... ................................................................. ...................................742 21.1. Tổng hợp các bộ lọc số.................................................................. ................................................................. ..743 21.2. Thông số đầu vào của bộ lọc số.................................................................. .............747

Trang 8

Mục lục IX 21.3. Ví dụ về tổng hợp bộ lọc số.................................................................. ......................750 21.4. Phân tích bộ lọc số.................................................................. ......................................755 21.5. Nhập tín hiệu đầu vào.................................................................. ................................................................. ..756 21.6. Mô phỏng lọc số.................................................................. .............760 21.7. Phân tích tín hiệu miền thời gian.................................................................. ............761 21.8. Phân tích tín hiệu trong miền tần số.................................................. ............763 21.9. Xuất dữ liệu từ GUI SPTool .................................................... ...........766 21.10. Thoát GUI SPTool................................................................. ......................................772 CHƯƠNG 22. MÔ HÌNH BIẾN ĐỔI WAVELET SỬ DỤNG WAVELET GÓI GUI HỘP CÔNG CỤ.................................................. ............ 773 22.1. Xem Wavelet................................................................................. ....................................774 22.2. Phân tích wavelet rời rạc một chiều................................................................. ............775 22.3. Phân tích gói wavelet một chiều................................................................. ......................782 22.4. Phân tích sóng con liên tục một chiều thực và phức tạp................................................. ................................................................. ...................................785 22.5. Loại bỏ nhiễu khỏi tín hiệu một chiều ngẫu nhiên đứng yên......787 22.6. Đánh giá mật độ phân bố.................................................................. .............789 22.7. Ước lượng hồi quy................................................................................. ................................................................. ......791 22.8. Lựa chọn hệ số wavelet................................................................. ......................793 TÀI LIỆU THAM KHẢO........... ................................................................. ....................................795 CHỈ SỐ.......... ................................................................. ...................................798

Trang 9

Lời nói đầu Xu hướng hiện đại trong lĩnh vực viễn thông phần lớn gắn liền với sự phát triển của các thiết bị số và sản phẩm phần mềm, và điều này làm thay đổi hoàn toàn bản chất công việc của các kỹ sư và nhà khoa học - nó ngày càng được giảm bớt thành mô hình hóa máy tính. Một đặc điểm của thiết bị xử lý tín hiệu số (DSP) là các bộ phận phần mềm của các thiết bị này được tạo trực tiếp trong quá trình mô hình hóa máy tính, do đó việc làm chủ các công nghệ hiện đại của nó là điều quan trọng nhất. Tất nhiên, những công nghệ như vậy bao gồm môi trường (hệ thống) phần mềm MATLAB do The Math Works, Inc. và dành cho mô hình hóa máy tính trong các lĩnh vực khoa học và công nghệ khác nhau. Trong những năm gần đây, môn học “Xử lý tín hiệu số” và các sửa đổi của nó đã được đưa vào tiêu chuẩn giáo dục chung của các trường đại học Nga. Điều đáng chú ý là các cuốn sách trong nước và sách dịch về lý thuyết DSP, các ứng dụng của nó và việc triển khai các thuật toán DSP ngày càng được xuất bản nhiều hơn - “quá trình đã bắt đầu”. Thông thường các phần lý thuyết được hỗ trợ bởi các ví dụ tính toán trong MATLAB. Những cuốn sách mang tính chất ứng dụng bắt đầu xuất hiện, không rời rạc mà hoàn toàn dành cho việc mô hình hóa trong MATLAB, chẳng hạn như cuốn sách của R. Gonzalez và cộng sự “Xử lý ảnh kỹ thuật số trong MATLAB”, nhà xuất bản “Technosphere”, 2006. Tuy nhiên, ngày nay nhu cầu về mô hình hóa DSP tài liệu trong MATLAB vượt xa đề xuất. Đây là một chủ đề rất rộng và cuốn sách được đề xuất đề cập đến các phương pháp và thuật toán DSP cơ bản, nền tảng lý thuyết của chúng được trình bày trong nhiều nguồn, bao gồm sách giáo khoa của cùng các tác giả, "Cơ bản về xử lý tín hiệu số", nhà xuất bản "BHV-Petersburg", 2005. (Trong tương lai gần, bản tái phát hành thứ ba của nó đang được thực hiện.) Hãy nói ngay rằng MATLAB là một hệ thống to lớn, và ngay cả trong lĩnh vực hạn chế này, các tác giả không hề tuyên bố sẽ cung cấp một mô tả đầy đủ về các khả năng của MATLAB. Các sắc thái, sự tinh tế và chi tiết cũng như sự đa dạng của các công cụ được cung cấp để giải quyết vấn đề chỉ có thể hiểu được trong thực tế bằng cách sử dụng hệ thống trợ giúp MATLAB mạnh mẽ. Phương pháp dạy mô hình máy tính rất đặc biệt. Trên thực tế, nó phụ thuộc vào việc tự giáo dục - mở rộng kiến ​​thức một cách độc lập sau khi tiếp thu

Trang 10

2 Lời mở đầu cho những kỹ năng ban đầu, nắm vững các kỹ thuật tiêu chuẩn và xác định vectơ tìm kiếm trong hệ thống MATLAB rộng lớn mà tác giả đã cố gắng hệ thống hóa và mô tả để ứng dụng vào mô hình hóa DSP trong MATLAB. Cuốn sách bao gồm nhiều ví dụ - với sự trợ giúp của họ, “không cần phải loay hoay thêm nữa”, bạn có thể nhanh chóng thành thạo công nghệ mô hình hóa. Để giúp những người mới sử dụng dễ dàng hơn và tính chất khép kín của cuốn sách, phần đầu tiên được đưa vào, bao gồm những kiến ​​thức cơ bản khi làm việc trong MATLAB. Cuốn sách này có thể hữu ích cho tất cả các kỹ sư và nhân viên kỹ thuật quan tâm đến lĩnh vực DSP, nhưng nó chủ yếu hướng tới sinh viên đại học, nghiên cứu sinh và giáo viên đại học và có thể được khuyến nghị, đặc biệt, cho các ngành học bắt buộc sau: Bộ vi xử lý và xử lý tín hiệu số (chuyên ngành 210405);  Xử lý tín hiệu số và bộ xử lý tín hiệu trong hệ thống thông tin di động (chuyên ngành 210402);  Xử lý kỹ thuật số tín hiệu âm thanh và video (chuyên ngành 210312). Giả định rằng người đọc đã quen thuộc với những kiến ​​thức cơ bản về lý thuyết và lập trình DSP bằng bất kỳ ngôn ngữ nào cấp độ cao. Cuốn sách chỉ cung cấp thông tin lý thuyết ngắn gọn về các phần có liên quan của DSP. Nội dung cuốn sách gồm 22 chương, được chia theo chủ đề làm 3 phần: 1. Giới thiệu về MATLAB. 2. Mô hình hóa DSP bằng phần mềm MATLAB. 3. Lập mô hình DSP bằng GUI. Tác giả các phần và chương:  A. I. Solonina - phần I; ở phần II chương 8-11, 13, 14, 16, 17; ở phần III, chương 20, 21.  S. M. Arbuzov - ở phần II, chương 12, 15, 18, 19; trong phần III - chương 22. Alla Ivanovna Solonina, giáo sư, tiến sĩ, và Sergey Mikhailovich Arbuzov, phó giáo sư, tiến sĩ, giảng dạy tại Khoa Xử lý tín hiệu số của Đại học Viễn thông bang St. Petersburg. giáo sư M.A. Bonch-Bruevich, đứng đầu là Giáo sư Artur Abramovich, Tiến sĩ Khoa học Kỹ thuật. Lanne, Xin vui lòng gửi mọi ý kiến ​​đóng góp và nhận xét được các tác giả chấp nhận với lòng biết ơn tới nhà xuất bản "BHV-Petersburg" qua email: [email được bảo vệ].

Việc tạo tín hiệu trong Simulink đương nhiên có những đặc điểm riêng. Hãy nhìn vào chúng.

Hãy lấy hai khối từ thư viện khối Simulink: Sóng hình sin(từ phần Nguồn) Và Phạm vi(từ phần bồn rửa). Bằng cách kết nối chúng, chúng ta có được một mạch đơn giản (Hình 4).

Hình 4. Mạch tạo và hiển thị tín hiệu hình sin

Sau đó, bằng cách nhấp đúp vào khối máy hiện sóng (máy hiện sóng), chúng ta kích hoạt cửa sổ mô phỏng màn hình máy hiện sóng và khởi chạy mô hình (nút Bắt đầu mô phỏng). Kết quả là chúng ta thu được hình ảnh của một đoạn hình sin (Hình 5).

Hình.5. Hiển thị đoạn sóng hình sin trên màn hình máy hiện sóng

Như bạn có thể thấy, việc tạo ra tín hiệu hài trong môi trường Simulink thậm chí còn dễ dàng hơn trong môi trường MATLAB. Tuy nhiên, ấn tượng đầu tiên này rất dễ gây nhầm lẫn. Thật vậy, điều quan trọng là có thể kiểm soát các thông số của tín hiệu hài. Việc biên độ của tín hiệu hài hóa ra bằng 1 đơn giản là điều “may mắn” đối với chúng ta. Thật vậy, theo mặc định, biên độ của tín hiệu được tạo được đặt ở mức thống nhất. Tuy nhiên, chúng ta chưa kiểm soát được tần số, pha ban đầu và thời lượng của tín hiệu.

Nhấp đúp chuột vào khối Sóng hình sin– kết quả là cửa sổ cài đặt tham số sẽ xuất hiện (Hình 6). Bằng cách nhấp vào nút Giúp đỡ, chúng tôi nhận được hướng dẫn cho khối này, bản chất của nó là thực tế là một thao tác được thực hiện trong khối này

Từ công thức trên và các dòng chữ trong Hình 6, ý nghĩa của bốn biến trở nên rõ ràng: biên độ, tần số góc, pha ban đầu và thành phần không đổi. Hiện tại, ý nghĩa của biến “thời gian” vẫn được mã hóa.

Dừng lại ở đó vấn đề quan trọng, chúng ta hãy lưu ý sự khác biệt giữa các khái niệm “thời gian” và “thời gian mẫu”. Do đó, việc tạo đoạn tín hiệu có thời lượng 1 giây (thời gian mô hình) có thể kéo dài hơn đáng kể so với khoảng thời gian ngắn hơn, ví dụ: 0,1 giây ( thời gian thực). Tốc độ tạo phụ thuộc vào số lượng phép tính, tốc độ của máy tính và “bộ giải” được chọn, tức là. thuật toán mô hình hóa, v.v. Nhân tiện, hiệu ứng ngược lại hoàn toàn có thể xảy ra - đối với một thuật toán phức tạp, quy trình mô hình hóa một đoạn tín hiệu có thời lượng 0,1 giây có thể kéo dài trong vài giây.

Tín hiệu có thể được tạo thành hai loại: liên tục dựa trên thời gian và rời rạc dựa trên mẫu. Theo đó, để mô phỏng công việc hệ thống liên tục Nên sử dụng loại liên tục dựa trên thời gian và để mô hình hóa hoạt động của các hệ thống rời rạc - loại rời rạc dựa trên mẫu.

Nếu loại được đặt dựa trên thời gian, thì tham số thời gian mẫu có thể nhận các giá trị:

– 0 (mặc định) – thiết bị hoạt động ở chế độ liên tục;

– > 0 – khối hoạt động ở chế độ rời rạc;

– -1 – khối kế thừa chế độ giống như khối nhận.

Như đã nêu trong Giúp đỡ, hoạt động ở chế độ liên tục có thể dẫn đến lỗi phát điện lớn trong khoảng thời gian dài của mô hình.

Hình 6. Cửa sổ cài đặt tham số chặn Sóng hình sin

Hoạt động ở chế độ rời rạc làm cho khối hoạt động như thể một khối được kết nối với đầu ra của bộ dao động liên tục Giữ lệnh bằng 0(từ phần rời rạc). Thật vậy, bằng cách lắp ráp hai mạch (Hình 7) và đặt giá trị tham số trong cả hai trường hợp thời gian mẫu bằng 0,5 (cửa sổ cài đặt khối Giữ lệnh bằng 0được hiển thị trong Hình 8), chúng tôi thu được kết quả giống hệt nhau (Hình 9).

Hình 7. Chèn sóng hình sin vào mạch tạo và hiển thị sóng hình sin

khối Giữ lệnh bằng 0

Hình.8. Chặn cửa sổ cài đặt Giữ lệnh bằng 0

Hình.9. Sự giống hệt kết quả của các mạch thể hiện trong hình. 7

Vì vậy khối Giữ lệnh bằng 0 có thể được hiểu là một "bộ lấy mẫu", tức là bộ phận của bộ chuyển đổi tương tự sang số (ADC) chịu trách nhiệm lấy mẫu tín hiệu. Đôi khi một khối Giữ lệnh bằng 0 gọi là ADC. Theo quan điểm của chúng tôi, điều này không đúng vì tín hiệu được lấy mẫu trong ADC “chính hãng” cũng phải chịu sự lượng tử hóa mức. trong khối Giữ lệnh bằng 0, tuy nhiên, không có lượng tử hóa nào được thực hiện.

Một số lưu ý về phương pháp vẽ đồ thị. Ngoài khối Phạm vi, đồ thị cũng có thể được xây dựng bằng khối Đồ thị X-Y, đến lối vào phía trên X mà bạn cần gửi một chuỗi các khoảnh khắc kịp thời bằng cách sử dụng một khối Cái đồng hồ(đồng hồ) và đến lối vào phía dưới Y– giá trị của tín hiệu được tạo ra (Hình 10).

Hình 10. Ứng dụng vẽ khối Đồ thị X-Y

Kết quả là, được định cấu hình trước (trong cửa sổ cài đặt tương ứng, các giá trị giới hạn của đối số và hàm được đặt và giá trị của tham số cũng được chỉ định thời gian mẫu) máy vẽ sẽ tạo ra đồ thị như ở Hình 11 nếu đối với khối Đồ thị X-Yđược cho Thời gian lấy mẫu=-1(tức là thời gian lấy mẫu được kế thừa).

Hình 11. Hiển thị sóng hình sin dưới dạng khối Đồ thị X-Y

Đồ thị sẽ hơi khác một chút (Hình 12) nếu đối với khối Đồ thị X-Yđược cho Thời gian lấy mẫu = 0,5.

Hình 12. Hiển thị sóng hình sin dưới dạng khối Đồ thị X-Y, Thời gian mẫu = 0,5

Một cách khác để xây dựng đồ thị. Mảng mẫu thời gian và giá trị tín hiệu tương ứng có thể được sử dụng bằng cách sử dụng khối Đến không gian làm việc xuất từ ​​môi trường Simulink sang môi trường MATLAB (Hình 13).

Hình 13. Ứng dụng của khối Đến không gian làm việc

Trong trường hợp này, như thực tế cho thấy, tốt nhất nên đặt định dạng mảngđối với dữ liệu đã xuất (Hình 14).

Hình 14. Thiết lập định dạng mảng cho khối Đến không gian làm việc

Việc vẽ đồ thị sâu hơn trong môi trường MATLAB bằng cách sử dụng lệnh cốt truyện (x, y) không khó (Hình 15).

Hình 15. Vẽ dữ liệu được xuất

sử dụng một khối Đến không gian làm việc

Hãy tóm tắt các kết quả thu được.

Loại tín hiệu dựa trên thời gian khi tổ máy phát điện hoạt động ở chế độ thời gian liên tục thì có dạng hàm trơn theo thời gian, còn ở chế độ thời gian rời rạc thì có dạng tín hiệu bước, chẳng hạn như khối được nối với đầu ra của tín hiệu trơn. máy phát điện Giữ lệnh bằng 0,đó là một loại discretizer lưu trữ mẫu.

Nói cách khác, bằng cách thiết lập chế độ thời gian rời rạc, chúng ta tránh được việc phải sử dụng khối Giữ lệnh bằng 0.

Bây giờ hãy tạo ra Simulink một đoạn tín hiệu hài rời rạc có cùng tham số được chỉ định trong MATLAB: biên độ 1, tần số 100 Hz, tần số lấy mẫu 1000 Hz, pha ban đầu π/2, số lượng mẫu 20.

Chúng tôi lắp ráp lại mạch từ máy phát điện và máy hiện sóng. Trong cửa sổ mặt nạ cài đặt trình tạo, chúng tôi chỉ định các giá trị số cần thiết của các tham số, đặt loại dựa trên thời gian và gán một giá trị thời gian mẫu= 0,001 (Hình 16).

Hình 16. Cửa sổ cài đặt máy phát điện

Sau khi khởi động mô hình, trên màn hình máy hiện sóng, chúng ta thấy một hình ảnh hoàn toàn khác so với những gì chúng ta mong đợi (Hình 17).

Hình 17. Kết quả dao động

Lý do rất đơn giản - bạn vẫn cần định cấu hình các tham số mô hình hóa: đặt thời gian bắt đầu và kết thúc của mô hình (trong trường hợp của chúng tôi, lần lượt là 0 và 0,02 giây) và cũng chọn thuật toán mô hình hóa (loại “bộ giải” ). Hình 18 hiển thị cửa sổ cài đặt các tham số mô phỏng, được kích hoạt khi chọn một mục menu Thông số mô phỏng/mô phỏng. Thông thường các tham số này được cấu hình tự động, nhưng cần có kiến ​​thức về chúng để tách riêng từng phần của hàm.

Hình 18. Cửa sổ cài đặt tham số mô hình

Ngoài ra, hãy cấu hình các thông số của máy hiện sóng bằng cách nhấp vào nút Thông số trên cửa sổ Phạm vi(Hình 19 a, b).

Hình 19. Thiết lập thông số máy hiện sóng:

a) thiết lập tab Chung; b) thiết lập tab Lịch sử dữ liệu

Sau khi khởi động mô hình, một hình ảnh sẽ xuất hiện trên màn hình máy hiện sóng (Hình 20).

Hình 20. Kết quả của máy hiện sóng sau khi cài đặt xong

Do các tham số của máy hiện sóng được đặt sao cho mảng hai chiều được hiển thị trong không gian làm việc Phạm viDữ liệu giá trị đối số và hàm, sử dụng lệnh

>> y1=ScopeData(:,1);

>> y2=ScopeData(:,2);

>> cốt truyện(y1,y2)

bạn có thể vẽ đồ thị hàm được tạo bằng MATLAB (Hình 21).

Hình 21. Đồ thị của hàm được tạo bằng MATLAB

So sánh Hình 21 và Hình 2, chúng tôi chỉ nhận thấy một điểm khác biệt - khi lập mô hình trong Simulink, 21 điểm được tạo ra, trong khi ở MATLAB 20 điểm được tạo ra. Lý do cho sự khác biệt rất đơn giản: trong khoảng thời gian của mô hình ở tốc độ lấy mẫu F S xác định vị trí TF S +1 thời điểm mà tín hiệu sẽ được tạo ra. Rõ ràng, trường hợp này có thể dễ dàng được tính đến, đạt được kết quả mô phỏng hoàn toàn trùng khớp trong môi trường MATLAB và Simulink.

Nhận xét kết luận 1.1.

Lấy mẫu tín hiệu tương tự là bước đầu tiên để giải quyết vấn đề kết nối các thiết bị và hệ thống tương tự với các thiết bị và hệ thống rời rạc.

Việc mô hình hóa các tín hiệu rời rạc có thể được thực hiện trong MATLAB hoặc trong Simulink. Có lẽ chia sẻ những môi trường này, làm tăng tính linh hoạt của bộ công cụ.

Có ba cách để tạo tín hiệu trong MATLAB:

    ở chế độ hộp thoại (chuỗi lệnh trong cửa sổ lệnh);

    ở chế độ tự động, bằng cách tạo và chạy m-script;

    ở chế độ tự động, bằng cách tạo và gọi hàm m.

Việc mô hình hóa các tín hiệu trong Simulink rất thuận tiện do tính rõ ràng của nó, nhưng nó đòi hỏi những kỹ năng quen thuộc trong việc thiết lập các tham số của các khối mà từ đó mô hình được xây dựng.

Một tính năng quan trọng của mô phỏng trong Simulink là sự khác biệt rõ ràng giữa khái niệm “thời gian thực” và “thời gian mô hình”. Thời gian thực là thời gian cần thiết để thực hiện các phép tính (mô phỏng). Thời gian mô hình là khoảng thời gian của quá trình mô phỏng.

Thời gian mô hình có thể liên tục ( dựa trên thời gian) và rời rạc ( dựa trên mẫu). Thời gian liên tục được khuyến nghị sử dụng khi mô hình hóa các hệ thống liên tục (analog), thời gian rời rạc - rời rạc (kỹ thuật số). Việc giám sát kết quả mô phỏng trong Simulink có thể được thực hiện bằng cách vẽ đồ thị và in các giá trị của mảng số.

Sẽ thuận tiện hơn khi xây dựng đồ thị trong môi trường Simulink. Sẽ thuận tiện hơn khi phân tích dữ liệu số bằng cách xuất dữ liệu đó sang không gian làm việc MATLAB.

Xử lý tín hiệu số và MATLAB, Solonina A.I., Klionsky D.M., Merkucheva T.V., Perov S.N., 2013.

Các phương pháp và thuật toán cơ bản để xử lý tín hiệu số và phương tiện mô hình hóa máy tính trong MATLAB được mô tả. Cơ sở của thuật toán ngôn ngữ MATLAB. Các tín hiệu rời rạc, hệ thống rời rạc tuyến tính, biến đổi Fourier rời rạc sử dụng thuật toán FFT, tổng hợp và phân tích bộ lọc FIR và IIR, bao gồm điểm cố định, phân tích phổ tín hiệu, xử lý tín hiệu đa tốc độ và lọc kỹ thuật số thích ứng được xem xét. Công nghệ đào tạo trong quá trình mô hình hóa máy tính dựa trên các chương trình do tác giả tạo ra hoặc giao diện người dùng đồ họa MATLAB mở rộng kiến ​​thức lý thuyết và cho phép bạn hiểu nhiều vấn đề và khía cạnh quan trọng của ứng dụng thực tế của các phương pháp và thuật toán DSP. Đĩa CD đi kèm chứa các chương trình đào tạo và bảng dữ liệu nguồn.
Dành cho sinh viên đại học, nghiên cứu sinh và giáo viên đại học cũng như các chuyên gia trong lĩnh vực xử lý tín hiệu số

2.4. Phân công công việc độc lập
Một nhiệm vụ độc lập được khuyến khích để củng cố kiến ​​​​thức thu được và bao gồm các điểm sau:
1C. Các phép toán với ma trận.
Cho một ví dụ về biểu thức số học trong đó tất cả các biến và kết quả của phép tính đều là ma trận.
Tính toán các đặc tính và chỉ tiêu thống kê của ma trận kết quả.
2C. Đảo ngược, chuyển vị và liên hợp Hermiti của ma trận.
Thực hiện ma trận Toeplitz bậc 5.
ZS. Giải pháp SLAU:

Mục lục
Lời nói đầu.,
PHẦN 1 GIỚI THIỆU MATLAB.
Chương I. Giới thiệu MATLAB. Đối tượng chính và đỉnh của MATLAB.
1.1. Nền tảng lý thuyết ngắn gọn.
1.1.1. Chế độ tính toán trực tiếp.
1.1.2. Các đối tượng cơ bản của ngôn ngữ MATLAB.
1.1.3. Không gian làm việc bộ nhớ không gian làm việc.
1.1.4. Lưu dữ liệu vào đĩa.
1.2. Nội dung công việc của phòng thí nghiệm.
1.3. Nhiệm vụ phòng thí nghiệm.
1.4. Phân công công việc độc lập.
1.5. Báo cáo và kiểm soát các câu hỏi.
1.6. Văn học.
Chương 2. Các phép toán với ma trận.
2.1. Nền tảng lý thuyết ngắn gọn.
2.1.1. Các hàm tạo ma trận chuẩn.
2.1.2. Chuyển đổi ma trận.
2.1.3. Các phép toán phần tử với ma trận.
2.1.4. Các phép toán với ma trận trong các bài toán đại số tuyến tính.
2.1.4.1. Các phép toán với ma trận.
2.1.4.2. Chuyển vị và liên hợp Hermiti của ma trận.
2.1.4.3. Đảo ngược ma trận.
2.1.4.4. Phép chia ma trận.
2.1.5. Chuẩn của ma trận và vectơ.
2.1.6. Các phép toán với ma trận trong các bài toán thống kê toán học.
2.2. Nội dung công việc của phòng thí nghiệm.
2.3.Bài tập - cho công việc trong phòng thí nghiệm*.
2.4. Phân công công việc độc lập.
2.5. Báo cáo và kiểm soát các câu hỏi.
2.6. Văn học.
Chương 3. Các kiểu mảng.
3.1. Nền tảng lý thuyết ngắn gọn.
3.1.1. Ma trận kiểu số và kiểu logic.
3.1.2. Ma trận kiểu tượng trưng.
3.1.3. Cấu trúc (mảng bản ghi).
3.1.4. Mảng tế bào.
3.1.5. Định nghĩa kiểu mảng.
3.2. Nội dung công việc của phòng thí nghiệm.
3.3. Bài tập - cho công việc trong phòng thí nghiệm*.
3.4. Phân công công việc độc lập*.
3.5. Báo cáo và kiểm soát các câu hỏi.
3.6. Văn học.
Chương 4. Công cụ đồ họa.
4.1. Nền tảng lý thuyết ngắn gọn.
4.1.1. Đồ thị hai chiều.
4.1.2. Quản lý thuộc tính của các ô 2D.
4.1.3. Đồ họa ba chiều.
4.1.4. Quản lý thuộc tính của đồ thị 3D.
4.2. Nội dung công việc của phòng thí nghiệm.
4.3. đi xe đến phòng thí nghiệm làm việc.
4.4. -Nhiệm vụ làm việc độc lập.
4.5. Báo cáo và kiểm soát các câu hỏi.
4.6. Văn học.
Chương 5. Chế độ lập trình: file script và file chức năng.
5.1. Nền tảng lý thuyết ngắn gọn.
5.1.1. Các tập tin kịch bản.
5.1.2. Các tập tin chức năng
5.1.3. Thiết kế và đầu ra của danh sách M-files.
5.1.4. Dữ liệu vào/ra.
5.1.5. Tạm dừng và chấm dứt sớm chương trình.
5.1.6. Tạo và lưu trữ M-files.
5.2. Nội dung công việc của phòng thí nghiệm.
5.3. đi xe đến phòng thí nghiệm làm việc.
5.4. -Nhiệm vụ làm việc độc lập.
5.5. Báo cáo và kiểm soát các câu hỏi.
5.6. Văn học.
Chương 6. Chế độ lập trình: tổ chức các nhánh và vòng lặp.
6.1. Nền tảng lý thuyết ngắn gọn.
6.1.1. Toán tử phân nhánh.
6.1.2. Các toán tử để tổ chức vòng lặp.
6.2. Nội dung công việc của phòng thí nghiệm.
6.3. đi xe đến phòng thí nghiệm làm việc.
6.4. -Nhiệm vụ làm việc độc lập.
6.5. Báo cáo và kiểm soát các câu hỏi.
6.6. Văn học.
PHẦN II. MÔ PHỎNG XỬ LÝ TÍN HIỆU SỐ BMATLAB.
Chương 7. Tín hiệu rời rạc.
7.1. Nền tảng lý thuyết ngắn gọn.
7.1.1. Tín hiệu rời rạc xác định.
7.1.2. Tín hiệu rời rạc ngẫu nhiên.
7.2. Nội dung công việc của phòng thí nghiệm.
7.3. đi xe đến phòng thí nghiệm làm việc.
7.4. Một tập lệnh điển hình để thực hiện công việc trong phòng thí nghiệm.
7.5. Phân công công việc độc lập.
7.6. Báo cáo và kiểm soát các câu hỏi.
7.7. Văn học.
Chương 8. Tín hiệu rời rạc tuyến tính.
8.1. Nền tảng lý thuyết ngắn gọn.
8.1.1. Mô tả LDS trong miền thời gian.
8.1.2. Mô tả LDS trong vùng z.
8.1.3. Mô tả LDS trong miền tần số.
8.1.4. Cấu trúc liên kết bậc 2
8.2. Nội dung công việc của phòng thí nghiệm.
8.3. Nhiệm vụ trong phòng thí nghiệm *.
8.4. Một tập lệnh điển hình để thực hiện công việc trong phòng thí nghiệm.
8.4.1. Các chức năng bên ngoài được sử dụng.
8,5. đu để làm việc độc lập*.
8.6. Báo cáo và kiểm soát các câu hỏi.
8.7. Văn học.
Chương 9. Biến đổi Fourier rời rạc (phần 1).
9.1. Nền tảng lý thuyết ngắn gọn.
9.1.1. Biến đổi Fourier rời rạc.
9.1.2. Cách ly các sóng hài rời rạc của tín hiệu hữu ích.
9.1.3. Khôi phục mật độ quang phổ
9.1.4. Phục hồi tín hiệu analog.
9.2. Nội dung công việc của phòng thí nghiệm.
9.3. Nhiệm vụ trong phòng thí nghiệm *.
9.4. Một tập lệnh điển hình để thực hiện công việc trong phòng thí nghiệm.
9.4.1. Các chức năng bên ngoài được sử dụng.
9,5. đu cho công việc độc lập.
9.6. Báo cáo và kiểm soát các câu hỏi.
9,7. Văn học.
Chương 10. Biến đổi Fourier rời rạc (phần 2).
10.1. Nền tảng lý thuyết ngắn gọn.
10.1.1. Sự trải rộng của quang phổ.
10.1.2. Cải thiện khả năng phân biệt giữa các sóng hài rời rạc ở các tần số có khoảng cách gần nhau.
10.1.3. Tính toán các tích chập tuyến tính và tròn bằng DFT.
10.1.4. Tính toán các tích chập được phân vùng bằng LPF.
10.2. Nội dung công việc của phòng thí nghiệm.
10.3. Nhiệm vụ phòng thí nghiệm.
10.4. Một tập lệnh điển hình để thực hiện công việc trong phòng thí nghiệm.
10.4.1. Các chức năng bên ngoài được sử dụng.
10,5. Phân công công việc độc lập.
10.6. Báo cáo và kiểm soát các câu hỏi.
10.7. Văn học.
Chương 11 Tổng hợp các bộ lọc FIR bằng phương pháp cửa sổ.
11.1. Nền tảng lý thuyết ngắn gọn.
11.1.1. Thuộc tính của bộ lọc FIR.
11.1.2. Chỉ định các yêu cầu đối với LCH.
11.1.3. Cấu trúc bộ lọc FIR
11.1.4. Quy trình tổng hợp các bộ lọc FIR bằng phương pháp cửa sổ.
11.1.5. Tổng hợp bộ lọc FIR sử dụng phương pháp cửa sổ trong MLT1-LV.
11.2. Nội dung công việc của phòng thí nghiệm.
11.3. Nhiệm vụ phòng thí nghiệm.
11.4. Một tập lệnh điển hình để thực hiện công việc trong phòng thí nghiệm.
11.4.1. Tổng hợp và phân tích bộ lọc thông thấp FIR.
11.4.2. Tổng hợp và phân tích bộ lọc thông cao FIR.
11.4.3. Tổng hợp và phân tích bộ lọc PF FIR.
11.4.4. Tổng hợp và phân tích bộ lọc RF FIR.
11.4.5. Các chức năng bên ngoài được sử dụng.
11.5. Phân công công việc độc lập.
11.6. Báo cáo và kiểm soát các câu hỏi.
11.7. Văn học.
Chương 12. Tổng hợp bộ lọc FIR sử dụng phương pháp xấp xỉ thống nhất tốt nhất (Chebyshev).
12.1. Nền tảng lý thuyết ngắn gọn.
12.1.1. Quy trình tổng hợp các bộ lọc FIR bằng phương pháp gần đúng Chebyshev.
12.1.2. Tổng hợp bộ lọc FIR sử dụng phương pháp xấp xỉ Chebyshev trong MATLAB.
12.1.3. Mô tả các yêu cầu đối với đặc tính suy giảm ở dạng đối tượng thiết kế.
12.1.4. Tổng hợp các bộ lọc FIR dạng đối tượng dfild dựa trên đối tượng fdesign.
12.2. Nội dung công việc của phòng thí nghiệm.
12.3. Nhiệm vụ phòng thí nghiệm.
12.4. Một tập lệnh điển hình để thực hiện công việc trong phòng thí nghiệm.
12.4.1. Tổng hợp và phân tích bộ lọc FIR.
12.4.2. Tổng hợp và phân tích bộ lọc thông cao FIR.
12.4.3. Tổng hợp và phân tích bộ lọc PF FIR.
12.4.4. Tổng hợp và phân tích bộ lọc RF FIR.
12.4.5. Các chức năng bên ngoài được sử dụng.
12,5. Phân công công việc độc lập.
12.6. Báo cáo và kiểm soát các câu hỏi.
12.7. Văn học.
Chương 13. Tổng hợp bộ lọc IIR sử dụng phương pháp biến đổi Z - song tuyến tính.
13.1. Nền tảng lý thuyết ngắn gọn.
13.1.1. Thiết lập các yêu cầu cho đặc tính suy giảm.
13.1.2. Cấu trúc bộ lọc IIR
13.1.3. Quy trình tổng hợp các bộ lọc IIR bằng phương pháp biến đổi Z song tuyến tính.
13.1.4. Tổng hợp các bộ lọc tương tự trong MATGAV.
13.1.5. Tổng hợp bộ lọc IIR sử dụng phương pháp biến đổi Z song tuyến tính trong MATLAB.
13.1.6. Tổng hợp các bộ lọc IIR dưới dạng đối tượng dfild dựa trên đối tượng /design.
13.1.7. Vị trí liên kết và chia tỷ lệ trong cấu trúc bộ lọc IIR xếp tầng.
13.2. Nội dung công việc của phòng thí nghiệm.
13.3. Nhiệm vụ phòng thí nghiệm.
13.4. Một tập lệnh điển hình để thực hiện công việc trong phòng thí nghiệm.
13.4.1. Tổng hợp và phân tích bộ lọc IIR FIC.
13.4.2. Tổng hợp và phân tích bộ lọc thông cao IIR.
13.4.3. Tổng hợp và phân tích bộ lọc IIR PF.
13.4.4. Tổng hợp và phân tích bộ lọc IIR RF.
13.4.5. Các chức năng bên ngoài được sử dụng.
13,5. Phân công công việc độc lập.
13.6. Báo cáo và kiểm soát các câu hỏi.
13.7. Văn học.
Chương 14. Tổng hợp các bộ lọc số sử dụng GUI FDAT Tool và FilterBuilder.
14.1. Nền tảng lý thuyết ngắn gọn.
14.1.1. Tổng hợp các bộ lọc kỹ thuật số trong GUI FDATool.
14.1.2. Xuất từ ​​GUI FDATool sang Workspace.
14.1.3. Tổng hợp các bộ lọc kỹ thuật số trong FillerBuilder GUI.
14.2. Nội dung công việc của phòng thí nghiệm.
14.3. Nhiệm vụ phòng thí nghiệm.
14.4. Phân công công việc độc lập.
14,5. Báo cáo và kiểm soát các câu hỏi.
14.6. Văn học.
Chương 15. Bộ lọc số điểm cố định.
15.1. Nền tảng lý thuyết ngắn gọn.
15.1.1. Hiệu ứng lượng tử hóa trong cấu trúc của CF FT.
15.1.2. Mô hình hóa cấu trúc của bộ lọc kỹ thuật số gốc trong GUI FDATool.
15.1.3. Mô hình hóa cấu trúc bộ lọc số với FT trong GUI FDATool.
15.1.3.1. Đặt thuộc tính của bộ lọc kỹ thuật số bằng FT trên tab Hệ số.
15.1.3.2. Đặt thuộc tính của bộ lọc kỹ thuật số bằng FT trên tab Inpul/Outpul.
15.1.3.3. Đặt thuộc tính của bộ lọc kỹ thuật số bằng FT trên tab Filler Internals.
15.1.4. Mô hình hóa cấu trúc của các bộ lọc kỹ thuật số với GUI FT FilterBuilder.
15.2. Nội dung công việc của phòng thí nghiệm.
15.3. Nhiệm vụ phòng thí nghiệm.
15.4. Phân công công việc độc lập.
15,5. Báo cáo và kiểm soát các câu hỏi.
15.6. Văn học.
Chương 16. Phân tích phổ: phương pháp phi tham số.
16.1. Nền tảng lý thuyết ngắn gọn.
16.1.1. Phương pháp biểu đồ.
16.1.2. Các chỉ số chính về chất lượng ước tính của JMP.
16.1.3. Phương pháp biểu đồ Daniell.
16.1.4. Phương pháp biểu đồ của Bartlett.
16.1.5. Phương pháp biểu đồ của Welch.
16.1.6. Phương pháp Blackman Tukey.
16.1.7. Lập mô hình chuỗi ngẫu nhiên với LCF cần thiết.
16.1.8. Các thông số cửa sổ cơ bản
16.1.9. Quang phổ.
16.2. Nội dung công việc của phòng thí nghiệm.
16.3. Nhiệm vụ phòng thí nghiệm.
16.4. Một tập lệnh điển hình để thực hiện công việc trong phòng thí nghiệm.
16,5. Phân công công việc độc lập.
16.6. Báo cáo và kiểm soát các câu hỏi.
16.7. Văn học.
Chương 17. Phân tích phổ: phương pháp tham số.
17.1. Nền tảng lý thuyết ngắn gọn.
17.1.1. Các mô hình ARSS-, AR- và SS.
17.1.2. Phương pháp Yule-Walker (tự tương quan) để ước tính các tham số của mô hình AR.
17.1.3. Các phương pháp ước lượng tham số mô hình AR.
17.1.4. Các phương pháp đánh giá SPM
17.1.5. Ước tính thứ tự của mô hình AR.
17.1.6. So sánh ước tính PSD với PSD thực sự.
17.2. Nội dung công việc của phòng thí nghiệm.
17.3. Nhiệm vụ phòng thí nghiệm.
17.4. Một tập lệnh điển hình để thực hiện công việc trong phòng thí nghiệm.
17,5. Phân công công việc độc lập.
17.6. Báo cáo và kiểm soát các câu hỏi.
17.7. Văn học.
Chương 18. Phân tích quang phổ bằng GUI SPTool.
18.1. Nền tảng lý thuyết ngắn gọn.
18.1.1. Truy cập vào GUI SPTool.
18.1.2. Tín hiệu: Nhóm tín hiệu.
18.1.3. Mô hình hóa hệ thống lọc số: Nhóm bộ lọc.
18.1.4. Phân tích quang phổ: Nhóm quang phổ.
18.1.5. Xuất dữ liệu từ GUI SPTool.
18.2. Nội dung công việc của phòng thí nghiệm.
18.3. Nhiệm vụ phòng thí nghiệm.
18.4. Phân công công việc độc lập.
18,5. Báo cáo và kiểm soát các câu hỏi.
18.6. Văn học.
Chương 19. Hệ thống DSP đa tốc độ.
19.1. Nền tảng lý thuyết ngắn gọn.
19.1.1. Hệ thống nội suy đơn.
19.1.2. Hệ thống thập phân đơn.
19.1.3. Hệ thống lấy mẫu lại đơn.
19.1.4. Cấu trúc nhiều pha của hệ thống đa tốc độ.
19.2. Nội dung công việc của phòng thí nghiệm.
19.3. Nhiệm vụ phòng thí nghiệm.
19.4. Một tập lệnh điển hình để thực hiện công việc trong phòng thí nghiệm.
19,5. Phân công công việc độc lập.
19.6. Báo cáo và kiểm soát các câu hỏi.
19.7. Văn học.
Chương 20. Mô hình hóa cấu trúc nhiều pha của hệ thống đa tốc độ sử dụng GUI FDATool và FilterBuilder.
20.1. Nền tảng lý thuyết ngắn gọn.
20.1.1. Mô hình hóa cấu trúc polyphase trong GUI FDATool.
20.1.2. Mô hình hóa cấu trúc polyphase trong GUI FilterBuilder.
20.1.3. Mô hình hóa hệ thống đa tốc độ với cấu trúc nhiều pha.
20.2. Nội dung công việc của phòng thí nghiệm.
20.3. Nhiệm vụ phòng thí nghiệm.
20.4. Một tập lệnh điển hình để thực hiện công việc trong phòng thí nghiệm.
20.4.1. Hệ thống nội suy một lần với cấu trúc nhiều pha.
20.4.2. Hệ thập phân đơn có cấu trúc nhiều pha.
20.4.3. Hệ thống lấy mẫu lại một lần với cấu trúc nhiều pha
khi tăng tần số lấy mẫu.
20.4.4. Hệ thống lấy mẫu lại một lần với cấu trúc nhiều pha
khi giảm tốc độ lấy mẫu.
20,5. Phân công công việc độc lập.
20.6. Báo cáo và kiểm soát các câu hỏi.
20.7. Văn học.
Chương 21. Bộ lọc thích ứng.
21.1. Nền tảng lý thuyết ngắn gọn.
21.1.1. Bộ lọc Wiener
21.1.2. Thuật toán 1.MS.
21.1.3. Thuật toán RLS.
21.1.4. Áp dụng các bộ lọc thích ứng
21.1.4.1. Nhận dạng hệ thống.
21.1.4.2. Ước tính đáp ứng xung của một hệ thống chưa biết.
21.1.4.3. Xóa tín hiệu khỏi nhiễu.
21.1.4.4. Cân bằng đáp ứng tần số của một hệ thống chưa biết.
21.2.4.5. Ước tính các tham số dự đoán tín hiệu tuyến tính.
21.2. Nội dung công việc của phòng thí nghiệm.
21.3. Nhiệm vụ phòng thí nghiệm.
21.4. Một tập lệnh điển hình để thực hiện công việc trong phòng thí nghiệm.
21,5. Phân công công việc độc lập.
21.6. Báo cáo và kiểm soát các câu hỏi.
21.7. Văn học.
Danh sách các từ viết tắt trong tiếng Anh.
Danh sách các từ viết tắt bằng tiếng Nga.
Chỉ số chủ đề.

A.B.Sergienko. Hộp công cụ xử lý tín hiệu - ôn tập

Xử lý tín hiệu luôn là một trong những lĩnh vực ứng dụng quan trọng nhất của hệ thống MATLAB. Điều này chủ yếu được chứng minh bằng việc Hộp công cụ xử lý tín hiệu là một trong những gói chuyên dụng đầu tiên - nó xuất hiện vào năm 1988, chỉ bốn năm sau khi hệ thống MATLAB được tạo ra.

Cho đến nay, gói Xử lý tín hiệu chứa gần hai trăm chức năng chuyên biệt được phát triển cẩn thận cho phép giải quyết nhiều vấn đề phân tích và xử lý tín hiệu.

Phiên bản MATLAB 6.1 (Bản phát hành 12.1) hiện đang được phân phối có chứa gói Xử lý Tín hiệu phiên bản 5.1. Bản phát hành sắp tới của MATLAB 6.5 (Phiên bản 13) sẽ bao gồm gói Xử lý tín hiệu phiên bản 6.0.

Dựa theo tài liệu chính thức Các chức năng của gói được chia thành hai mươi loại. Danh sách dưới đây kết hợp các danh mục này thành các nhóm lớn hơn. Vì vậy, theo mục đích của chúng, các chức năng của gói Xử lý tín hiệu có thể được chia như sau:

Ngoài ra, gói còn bao gồm ba môi trường đồ họa S:

MATLAB và các gói mở rộng của nó tập trung chủ yếu vào kỹ thuật số xử lý tín hiệu do đó, các chức năng liên quan đến tính toán mạch tương tự được coi là phụ trợ. Chúng chủ yếu nhằm mục đích được gọi từ các chức năng khác sử dụng nguyên mẫu tương tự trong quá trình tổng hợp các bộ lọc kỹ thuật số. Tuy nhiên, bản thân các chức năng này có thể rất hữu ích. Đổi lại, chúng có thể được chia thành nhiều nhóm.

Nhóm đầu tiên là các hàm tính toán các bộ lọc tương tự nguyên mẫu, tức là các bộ lọc thông thấp có tần số cắt là 1 rad/s. Các hàm trả về số 0, cực và mức tăng của bộ lọc và cho phép bạn tính toán các bộ lọc Butterworth nguyên mẫu ( vỗ vào mông), Chebyshev loại một ( cheb1ap), Chebyshev loại thứ hai ( cheb2ap), hình elip (Kauer) ( hình elip) và Bessel ( besselap).

Nhóm thứ hai là các chức năng chuyển đổi bộ lọc tương tự cho phép bạn chuyển đổi nguyên mẫu bộ lọc thông thấp thành bộ lọc thông thấp với tần số cắt khác ( lp2lp), vào bộ lọc thông cao (HPF) với tần số cắt cho trước ( lp2hp), vào bộ lọc thông dải có tần số và băng thông trung bình nhất định ( lp2bp) và vào bộ lọc notch có tần số trung bình và độ rộng dải dừng nhất định ( lp2bs). Các hàm có thể chấp nhận và trả về các mô tả bộ lọc dưới dạng vectơ hệ số của đa thức tử số và mẫu số của hàm truyền hoặc dưới dạng tham số không gian trạng thái.

Nhóm thứ ba là các hàm tính toán các bộ lọc tương tự với các tham số cho trước. Trong quá trình tính toán, họ gọi hàm của 2 nhóm đầu tiên. Tập hợp dữ liệu ban đầu cần thiết để tính toán bao gồm thứ tự của bộ lọc, loại của nó (bộ lọc thông thấp, bộ lọc thông cao, dải thông hoặc khía), tần số hoặc một số tần số cắt và cả các tham số gợn sóng (tùy thuộc vào nguyên mẫu) của đáp ứng biên độ-tần số (AFC). Có các hàm tính toán bộ lọc Butterworth ( ), Chebyshev loại một ( cheby1), Chebyshev loại thứ hai ( cheby2), hình elip (Kauer) ( hình elip) và Bessel ( ít). Tất cả các chức năng này ngoại trừ chức năng ít, cũng có thể được sử dụng để tính toán các bộ lọc rời rạc (xem bên dưới). Dấu hiệu của tùy chọn tính toán tương tự là dấu hiệu của chuỗi "s" làm tham số đầu vào cuối cùng.

Nhóm thứ tư là các chức năng xác định thứ tự bộ lọc cần thiết dựa trên các tham số đáp ứng tần số đã chỉ định (tần số cắt của dải thông và dải dừng, cũng như các gợn sóng cho phép trong dải thông và dải dừng). Mỗi loại bộ lọc có chức năng riêng để xác định thứ tự cần thiết: đối với bộ lọc Butterworth - cái mông, đối với bộ lọc Chebyshev loại thứ nhất - cheb1ord, đối với bộ lọc Chebyshev loại thứ hai - cheb2ord, đối với bộ lọc hình elip - hình elip. Cũng giống như các hàm của nhóm trước, các hàm này cho phép bạn xác định thứ tự cần thiết cho các bộ lọc rời rạc (xem bên dưới). Dấu hiệu của tùy chọn tính toán tương tự là dấu hiệu của chuỗi "s" làm tham số đầu vào cuối cùng.

Nhóm thứ năm là các hàm chuyển đổi dạng mô tả của hệ thống tuyến tính tương tự. Đối với các hệ thống tương tự, bốn phương pháp mô tả như vậy được hỗ trợ:

Gói Xử lý tín hiệu chứa các chức năng thực hiện các phép biến đổi lẫn nhau của bốn dạng biểu diễn hệ thống tương tự này (chỉ có chức năng phần còn lại, hoạt động với các cực và phần dư, không thuộc gói Xử lý tín hiệu mà thuộc thư viện MATLAB cơ bản). Những tính năng này được liệt kê trong bảng sau.

Hình thức cuối cùng Hàm truyền hệ số đa thức Số không và cực Cực và dư lượng Không gian trạng thái
Mẫu ban đầu
tf2zp phần còn lại tf2ss
Số không và cực zp2tf zp2ss
Cực và dư lượng phần còn lại
Không gian trạng thái ss2tf ss2zp

phần còn lại có thể chuyển đổi theo cả hai hướng. Hướng của phép biến đổi được xác định bởi số lượng tham số đầu vào và đầu ra.

Các chức năng được liệt kê trong bảng, ngoại trừ chức năng phần còn lại, cũng có thể thực hiện chuyển đổi các hệ thống rời rạc, vì công thức chuyển đổi cho hệ thống tương tự và hệ thống rời rạc là như nhau.

Cuối cùng, nhóm thứ sáu nên bao gồm chức năng duy nhất tần số, cho phép bạn tính toán hoặc hiển thị bằng đồ họa các đặc tính biên độ và tần số pha (AFC và PFC) của một hệ thống tuyến tính tương tự. Dữ liệu ban đầu là các hệ số của đa thức tử số và mẫu số của hàm truyền hệ thống.

Như một ví dụ về việc sử dụng các hàm để làm việc với các hệ thống tương tự, hãy tính toán bộ lọc thông thấp hình elip bậc bốn có tần số cắt là 3 kHz, độ gợn đáp ứng tần số trong băng thông bằng 1 dB và triệt tiêu tín hiệu trong băng tần dừng bằng 20 dB, sau đó vẽ đồ thị đáp ứng tần số và đáp ứng pha của nó.

Hình elip(4, 1, 20, 2*pi*3000, "s"); tính toán % bộ lọc
f = 0:10:10000; % vectơ tần số để tính toán đáp ứng tần số và đáp ứng pha
h = tần số(b, a, 2*pi*f); % hệ số truyền phức tạp
cốt truyện phụ(2, 1, 1)

lưới
cốt truyện phụ(2, 1, 2)
cốt truyện(f, unwrap(angle(h))*180/pi) % biểu đồ phản hồi pha (tính bằng độ)
lưới

Hàm được sử dụng trong mã ví dụ mở gói loại bỏ những bước nhảy không đáng kể trong phản ứng pha ở 360°.

Loại hàm này khá nhiều và kết hợp nhiều công cụ khác nhau để phân tích các hệ tuyến tính rời rạc - thường được biểu diễn dưới dạng vectơ hệ số đa thức của tử số và mẫu số của hàm truyền (trong z-vùng).

Chức năng tần số là một dạng tương tự rời rạc của hàm tần số, nó cho phép bạn tính toán hệ số truyền phức tạp hoặc vẽ biểu đồ đáp ứng tần số và đáp ứng pha hệ thống rời rạc. Dữ liệu ban đầu là các hệ số của đa thức tử số và mẫu số của hàm truyền hệ thống.

Tương tự với chức năng tần số chức năng hoạt động sự chậm trễ, cho phép bạn tính toán hoặc hiển thị bằng đồ họa sự phụ thuộc tần số của độ trễ nhóm do bộ lọc rời rạc đưa ra.

Chức năng impz nhằm mục đích tính toán hoặc Hiển thị đồ họađáp ứng xung của hệ thống rời rạc. Dữ liệu ban đầu, đối với chức năng trước đó, là các hệ số của đa thức tử số và mẫu số của hàm truyền hệ thống.

Chức năng máy bay z cho phép bạn hiển thị các số 0 và cực của hệ thống trên mặt phẳng phức tạp, đồng thời mô tả một vòng tròn đơn vị giới hạn diện tích cho phép đối với vị trí của các cực bền vững hệ thống rời rạc. Dữ liệu ban đầu có thể là vectơ hệ số của đa thức tử số và mẫu số hoặc trực tiếp là vectơ của số 0 và cực của hàm truyền hệ thống.

Chức năng định mức lọc cho phép bạn tính toán chuẩn mực bộ lọc rời rạc. Ví dụ: tham số này được sử dụng khi chọn hệ số tỷ lệ cho các phần riêng lẻ của bộ lọc được triển khai ở dạng tuần tự (xếp tầng) để giảm lỗi làm tròn. Hai tùy chọn được hỗ trợ: 2-norm và -norm. Chuẩn 2 biểu thị căn bậc hai có nghĩa là bình phương giá trị đáp ứng tần số của bộ lọc (hoặc, tương tự, là gốc của tổng các mẫu bình phương của đáp ứng xung của bộ lọc) và -norm là tối đa giá trị đáp ứng tần số.

Chức năng fvtool về cơ bản là một môi trường đồ họa được thiết kế để phân tích và trực quan hóa các đặc điểm của các hệ thống riêng biệt (Công cụ Trực quan hóa Bộ lọc). Tuy nhiên, không giống như các môi trường đồ họa khác trong gói, fvtool thật sự là chức năng, vì khi được gọi, nó yêu cầu sự có mặt của các tham số đầu vào - các hệ số của đa thức của tử số và mẫu số của hàm truyền của bộ lọc được phân tích. Ưu điểm đáng kể của chức năng này là khả năng xem đồng thời các đặc điểm một số bộ lọc. Giao diện đồ họa người dùng được cung cấp bởi chức năng này gần giống như trong môi trường tổng hợp và phân tích bộ lọc FDATool. Dưới đây là một ví dụ về lệnh gọi hàm fvtool và cửa sổ đồ họa mà nó tạo ra ở chế độ hiển thị sự phụ thuộc tần số của độ trễ nhóm do bộ lọc đưa ra.

b = ;
một = ;
fvtool(b, a)

Một nhóm lớn bao gồm các hàm dùng để chuyển đổi dạng mô tả của các hệ thống rời rạc. Nhiều hình thức biểu diễn được hỗ trợ cho các hệ thống rời rạc hơn so với các hệ thống tương tự:

  • Hệ số của đa thức tử số và mẫu số của hàm truyền hệ thống.
  • Điểm 0, điểm cực và mức tăng hệ thống (phân tích hệ số của hàm truyền).
  • Các cực và phần dư (biểu diễn hàm truyền hệ thống dưới dạng tổng của các phân số đơn giản).
  • Các tham số không gian trạng thái
  • Biểu diễn dưới dạng một tập hợp các phần thứ tự thứ hai (xếp tầng).
  • Biểu diễn dưới dạng cấu trúc mạng hoặc lưới-thang.

Các hàm chuyển đổi giữa các cách biểu diễn khác nhau được liệt kê trong bảng sau.

Hình thức cuối cùng Hàm truyền hệ số đa thức Số không và cực Cực và dư lượng Không gian trạng thái Phần đặt hàng thứ hai Cấu trúc mạng
Mẫu ban đầu
Hàm truyền hệ số đa thức tf2zp dư lượng tf2ss tf2sos tf2latc
Số không và cực zp2tf zp2ss zp2sos
Cực và dư lượng dư lượng
Không gian trạng thái ss2tf ss2zp ss2sos
Phần đặt hàng thứ hai sos2tf sos2zp sos2ss
Cấu trúc mạng lat2tf

Như có thể thấy từ bảng, chức năng tương tự dư lượng(đây là chức năng tương tự phần còn lại, được thiết kế để làm việc với các mô tả của các hệ thống rời rạc) có thể thực hiện các phép biến đổi theo cả hai hướng. Hướng của phép biến đổi được xác định bởi số lượng tham số đầu vào và đầu ra.

Hai hàm nữa thao tác các vectơ hệ số của đa thức, sửa đổi vị trí các nghiệm của đa thức trên mặt phẳng phức. Chức năng đa giác nhân tất cả các nghiệm của đa thức đã xử lý với một hệ số cho trước và hàm polystab làm cho tất cả các nghiệm của đa thức nằm bên trong vòng tròn đơn vị - vì mục đích này, các nghiệm vượt quá một trong giá trị tuyệt đối, bị đảo ngược, nghĩa là các mô đun của chúng được thay thế bằng các giá trị nghịch đảo và dấu của các pha của chúng thay đổi ngược lại.

Các chức năng còn lại trong danh mục này là phụ trợ. Chức năng không gian tần số tính toán một vectơ các giá trị tần số cách đều nhau, hàm tần sốđược thiết kế để vẽ đồ thị các đặc tính tần số và hàm mở gói cho phép bạn loại bỏ các bước nhảy không đáng kể trong các đặc tính tần số pha thêm 2p, tìm kiếm các bước nhảy này giữa các phần tử vectơ và dịch chuyển các đoạn vectơ mong muốn thêm 2p N.

Hoạt động của lọc rời rạc tuyến tính thường được mô tả như sau:

Đây x(k)- mẫu tín hiệu đầu vào, y(k)- mẫu tín hiệu đầu ra, tôibj- các hệ số không đổi. Số lượng tối đa tôiNđược gọi là thứ tự lọc.

Các mẫu đầu ra trước đó có thể không được sử dụng trong tính toán, khi đó tất cả a tôi = 0 và bộ lọc được gọi là không đệ quy hoặc ngang. Nếu các mẫu đầu ra trước đó được sử dụng, bộ lọc được gọi là đệ quy.

Lọc rời rạc tuyến tính đề cập đến các công nghệ xử lý dữ liệu tùy ý, do đó hàm tương ứng là lọc- không thuộc gói Xử lý tín hiệu mà được tích hợp sẵn trong lõi MATLAB. Chức năng bộ lọc2, cũng là một phần của thư viện lõi MATLAB, thực hiện lọc rời rạc hai chiều.

Do bộ lọc hệ số không đổi là một hệ thống rời rạc tuyến tính bất biến theo thời gian nên đáp ứng của nó đối với tín hiệu đầu vào tùy ý có thể được biểu diễn dưới dạng tích chập rời rạc tín hiệu đầu vào với bộ lọc đáp ứng xung:

Đây HK)- mẫu đáp ứng xung của bộ lọc. Đáp ứng xung là phản hồi của bộ lọc đối với một mẫu có giá trị đơn vị được áp dụng cho đầu vào.

Tất nhiên, các phép tính sử dụng công thức tích chập chỉ có thể được thực hiện trong thực tế nếu chiều dài cuối cùngđáp ứng xung của bộ lọc. Hoạt động này được thực hiện bởi hàm đối thoại; giống như việc triển khai thuật toán lọc rời rạc, nó không thuộc gói Xử lý tín hiệu mà thuộc thư viện MATLAB cơ bản. Trong thực tế, việc triển khai hàm đối lưu bao gồm việc gọi hàm lọc với các thông số đầu vào tương ứng. Chức năng đối lưu2 thực hiện tích chập rời rạc hai chiều. Một chức năng khác của thư viện lõi MATLAB là giải mã- thực hiện đảo ngược tích chập, cho phép xác định vectơ đầu vào thứ hai từ kết quả tích chập và một trong các vectơ đầu vào.

Các hàm lọc rời rạc cơ bản được đề cập ở trên, như đã nêu, thuộc về thư viện MATLAB cơ sở; Trên thực tế, gói Xử lý Tín hiệu chứa các chức năng giải quyết các vấn đề lọc cụ thể hơn.

Trước hết cần lưu ý rằng hàm lọc cho phép truy cập trạng thái bên trong ban đầu và cuối cùng của bộ lọc, từ đó cho phép tổ chức xử lý tín hiệu khối. Đôi khi cần phải tạo một vectơ trạng thái bên trong của bộ lọc, biết một số mẫu đầu vào và đầu ra trước đó. Tính toán này được thực hiện bằng cách sử dụng hàm chất bẩn.

Chức năng bộ lọc thực hiện lọc rời rạc bằng cách sử dụng biến đổi Fourier nhanh (FFT) kết hợp với phân chia tín hiệu thành các khối. Chỉ các bộ lọc không đệ quy mới có thể được thực hiện theo cách này. Kết quả của hàm trùng khớp (đến mức lỗi tính toán) với kết quả của quá trình lọc thông thường được thực hiện bằng hàm lọc. Tuy nhiên, tốc độ tính toán của bộ lọc FFT có thể cao hơn đáng kể, đặc biệt nếu độ dài của tín hiệu đầu vào lớn hơn nhiều lần so với độ dài đáp ứng xung của bộ lọc (hoặc ngược lại).

Chức năng lọc lọc cho phép bạn bù cho sự dịch pha do quá trình lọc thông thường gây ra (nói cách khác, chức năng này thực hiện lọc mà không gây ra độ trễ thời gian). Điều này được thực hiện bằng cách xử lý tín hiệu hai chiều. Lần lọc đầu tiên được thực hiện theo cách thông thường và sau đó tín hiệu đầu ra thu được sẽ được lọc lần thứ hai - từ đầu đến cuối. Do đó, sự dịch pha được bù và thứ tự bộ lọc thu được sẽ tăng gấp đôi. Cần lưu ý rằng bộ lọc kết quả (tương đương với hai lần lọc) không thỏa mãn điều kiện nhân quả.

Tại triển khai thực tếĐối với các bộ lọc đệ quy bậc cao, chúng thường được biểu diễn dưới dạng các phần bậc hai được kết nối nối tiếp. Điều này cho phép chúng ta giảm các lỗi tính toán phát sinh từ lỗi làm tròn và lượng tử hóa các hệ số bộ lọc. Các công cụ phân tích lỗi cho loại lỗi này tập trung ở gói Filter Design, còn gói Signal Treatment có chức năng chất bẩn, cho phép bạn triển khai lọc dữ liệu rời rạc bằng cách sử dụng bộ lọc được trình bày dưới dạng các phần thứ hai.

Một cấu trúc bộ lọc rời rạc khác có thể có là cấu trúc mạng. Để thực hiện lọc bằng bộ lọc được trình bày ở dạng này, hãy sử dụng hàm chất lỏng.

Chức năng medfilt1, thực hiện lọc trung vị một chiều, thuộc về thuật toán lọc phi tuyến. Bản chất hoạt động của nó là một cửa sổ trượt có độ dài nhất định được áp dụng cho tín hiệu đầu vào, các mẫu trong cửa sổ được sắp xếp và giá trị từ giữa cửa sổ được sắp xếp (hoặc tổng một nửa của hai phần tử gần nhất ở giữa nếu cửa sổ có độ dài chẵn) được trả về dưới dạng mẫu đầu ra. Ví dụ: lọc trung vị được sử dụng để loại bỏ nhiễu xung (tiếng nhấp chuột) khi xử lý tín hiệu âm thanh. Chức năng medfilt2, triển khai phiên bản lọc trung vị hai chiều, nằm trong gói Xử lý hình ảnh.

Chức năng sgolayfilt thực hiện lọc rời rạc bằng bộ lọc Savitzky-Golay. Bản chất của nó nằm ở chỗ tín hiệu đầu vào được chia thành các khối có kích thước nhất định và trong mỗi khối, phép tính gần đúng đa thức của tín hiệu theo đa thức ở một mức nhất định được thực hiện theo tiêu chí sai số bình phương trung bình tối thiểu. Nếu bậc của đa thức nhỏ hơn kích thước của các khối một đơn vị thì tín hiệu đầu ra sẽ bằng tín hiệu đầu vào; với mức độ đa thức nhỏ hơn, tín hiệu sẽ được làm mịn. Bộ lọc Savitzky-Golay được sử dụng để “làm sạch” tín hiệu khỏi nhiễu.

Tổng hợp bộ lọc rời rạc có nghĩa là việc lựa chọn các bộ hệ số như vậy ( tôi) Và ( tôi), tại đó các đặc tính của bộ lọc thu được thỏa mãn các yêu cầu đã chỉ định. Nói đúng ra, nhiệm vụ thiết kế còn bao gồm việc lựa chọn cấu trúc bộ lọc phù hợp, có tính đến độ chính xác cuối cùng của phép tính. Điều này đặc biệt đúng khi triển khai các bộ lọc “trong phần cứng” - sử dụng LSI hoặc bộ xử lý tín hiệu số chuyên dụng. Các hiệu ứng liên quan đến độ chính xác cuối cùng của phép tính có thể được phân tích bằng các chức năng của gói Thiết kế Bộ lọc; các hàm tổng hợp bộ lọc không tính đến các hiệu ứng này.

Gói Xử lý Tín hiệu có một số lượng lớn các chức năng thực hiện các thuật toán khác nhau để tổng hợp các bộ lọc rời rạc. Chúng tôi trình bày các đặc điểm chính của các chức năng này dưới dạng bảng và sau đó đưa ra một số nhận xét bổ sung.

Chức năng Tuýt lọc phản hồi thường xuyên Phương pháp tổng hợp
đệ quy Butterworth Biến đổi z song tuyến tính
cheby1 đệ quy Chebyshev thuộc loại đầu tiên Biến đổi z song tuyến tính
cheby2 đệ quy Chebyshev loại thứ hai Biến đổi z song tuyến tính
hình elip đệ quy Cauera (hình elip) Biến đổi z song tuyến tính
song tuyến tính đệ quy Biến đổi z song tuyến tính
impinvar đệ quy Nguyên mẫu tương tự tùy ý Biến đổi đáp ứng xung bất biến
bước đi trong lễ giáng sinh đệ quy Tuyến tính từng phần Phương pháp tự hồi quy
invfreqz đệ quy miễn phí Giảm thiểu sự khác biệt giữa tử số của hàm truyền và tích của mẫu số của nó và đáp ứng tần số mong muốn
nghiêng ngả đệ quy Tổng hợp từ một đáp ứng xung nhất định Xấp xỉ Prony hàm mũ
linh sam1 Không đệ quy Đa băng tần
linh sam2 Không đệ quy Tuyến tính từng phần Biến đổi Fourier nghịch đảo bằng windows
linh sam Không đệ quy Giảm thiểu sai số bình phương trung bình
cây thông Không đệ quy Hằng số từng phần
linh1 Không đệ quy LPF, HPF Giảm thiểu sai số bình phương trung bình gốc với giới hạn độ lệch tối đa
linh sam Không đệ quy LPF Làm mịn cosin
xâm nhập Không đệ quy LPF Xấp xỉ Minimax
nhớ lại Không đệ quy Tuyến tính từng phần với các sọc chuyển tiếp Xấp xỉ Minimax
kem Không đệ quy (bao gồm đáp ứng pha phi tuyến và các hệ số phức) Tuyến tính từng phần với các sọc chuyển tiếp Xấp xỉ Minimax

Các phương pháp tổng hợp các bộ lọc rời rạc có thể được chia thành hai nhóm lớn: có và không sử dụng nguyên mẫu tương tự. Khi sử dụng bộ lọc tương tự nguyên mẫu, cần phải biểu diễn bằng cách nào đó hàm truyền tương tự được xác định trong miền s sang hàm truyền rời rạc được xác định trong miền z. Gói Xử lý Tín hiệu thực hiện hai phương pháp chuyển đổi như vậy: phương pháp đáp ứng xung bất biến và phương pháp biến đổi z song tuyến tính. Cả hai phương pháp đều dẫn đến các bộ lọc rời rạc đệ quy.

Khi sử dụng phương pháp đáp ứng xung bất biến, đáp ứng xung của nguyên mẫu tương tự sẽ được lấy mẫu. Đáp ứng tần số của bộ lọc rời rạc thu được tương ứng là đáp ứng tần số lặp lại định kỳ của nguyên mẫu tương tự. Vì lý do này, phương pháp này không phù hợp để tổng hợp các bộ lọc thông cao và nói chung các bộ lọc có hệ số truyền không có xu hướng về 0 khi tần số tăng dần. Phương thức đáp ứng xung bất biến được triển khai trong gói Xử lý tín hiệu bằng hàm impinvar.

Khi sử dụng phương pháp biến đổi z song tuyến tính, các đặc tính của nguyên mẫu tương tự chỉ bị biến dạng dọc theo trục tần số. trong đó Dải tần số bộ lọc tương tự (từ 0 đến vô cùng) được chuyển đổi về dải tần hoạt động của bộ lọc rời rạc (từ 0 đến một nửa tần số lấy mẫu). Sự biến đổi trục tần số được mô tả bằng hàm arctang, do đó các tần số thấp hơn đáng kể so với tốc độ lấy mẫu được chuyển đổi gần như tuyến tính. Phương pháp này được thực hiện bằng cách sử dụng hàm song tuyến tính cho một nguyên mẫu tương tự tùy ý. Ngoài ra, còn có chức năng làm sẵn tính toán các bộ lọc thông thấp và thông cao, các bộ lọc thông dải và khía sử dụng phương pháp biến đổi z song tuyến tính sử dụng các nguyên mẫu tương tự có đáp ứng tần số của Butterworth, Chebyshev loại thứ nhất và loại thứ hai, cũng như Cauer (bộ lọc elip). Đây là theo chức năng bơ, cheby1, cheby2hình elip. Tất cả các hàm này cũng có thể được sử dụng để tính toán các bộ lọc tương tự (xem phần trước). Dấu hiệu của phương án tính toán rời rạc là không có chuỗi “s” trong danh sách tham số đầu vào. Ngoài ra còn có các chức năng để xác định thứ tự cần thiết của các bộ lọc này dựa trên các tham số đáp ứng tần số được chỉ định (tần số cắt của dải thông và dải dừng, cũng như gợn sóng cho phép trong các dải này). Đây là theo chức năng mông, cheb1ord, cheb2ord, hình elip. Giống như các hàm tổng hợp bộ lọc, các hàm này cho phép bạn xác định thứ tự cần thiết cho các bộ lọc tương tự (xem phần trước). Dấu hiệu của phương án tính toán rời rạc là không có chuỗi “s” trong danh sách tham số đầu vào.

Ví dụ: chúng tôi tổng hợp bộ lọc thông thấp hình elip bậc bốn có cùng tham số với bộ lọc tương tự ở một trong các ví dụ trước (tần số cắt 3 kHz, gợn đáp ứng tần số trong băng thông 1 dB và triệt tiêu tín hiệu trong băng tần dừng 20dB). Giả sử tần số lấy mẫu là 12 kHz. Sau khi tổng hợp, chúng ta sẽ xây dựng đồ thị đáp ứng tần số và đáp ứng pha của bộ lọc thu được bằng hàm tần số.

    Fs = 12000; % tần số lấy mẫu
    F0 = 3000; % tần số cắt
    = hình elip(4, 1, 20, F0/Fs*2); tính toán % bộ lọc
    tần số(b, a, , Fs); % đầu ra biểu đồ

Các phương pháp tổng hợp không sử dụng nguyên mẫu tương tự được gọi là trực tiếp. Ngược lại, chúng cũng có thể được chia thành hai nhóm: các phương pháp tổng hợp các bộ lọc đệ quy và không đệ quy.

Các chức năng tổng hợp trực tiếp của các bộ lọc không đệ quy bao gồm:

  • Các hàm thực hiện tổng hợp bộ lọc bằng phép biến đổi Fourier nghịch đảo của đáp ứng tần số mong muốn và nhân tiếp theo của đáp ứng xung thu được với một hàm trọng số (cửa sổ) nhất định để làm giảm các gợn sóng đáp ứng tần số xuất hiện do hiệu ứng Gibbs. Đây là những chức năng linh sam1linh sam2. Điều này cũng bao gồm chức năng tổng hợp bộ lọc thông thấp với việc làm mịn cosin của đáp ứng tần số - linh sam. Ngoài ra, chức năng kaiserord cho phép, dựa trên các tham số đã cho của đáp ứng tần số, ước tính thứ tự bộ lọc cần thiết trong quá trình tổng hợp bằng cửa sổ Kaiser.
  • Các hàm thực hiện giảm thiểu độ lệch chuẩn của đáp ứng tần số của bộ lọc kết quả so với bộ lọc được chỉ định. Đây là những chức năng linh sam, cây thônglinh1. Hai hàm cuối cùng giải quyết vấn đề tối ưu hóa với giới hạn độ lệch tối đa của đáp ứng tần số so với giá trị được chỉ định. Điều này cho phép bạn tránh sự xuất hiện của phát xạ đáp ứng tần số lớn gần các dải chuyển tiếp.
  • Các hàm thực hiện tối ưu hóa minimax, nghĩa là giảm thiểu độ lệch cực đại của đáp ứng tần số của bộ lọc kết quả so với bộ lọc được chỉ định. Kết quả là các bộ lọc có xung đáp ứng tần số đồng đều. Nhóm này bao gồm các chức năng nhớ lại (tùy chọn tiêu chuẩn Phương pháp Remez, được triển khai trong các phiên bản đầu tiên của gói Xử lý tín hiệu) và kem(phiên bản mở rộng hỗ trợ tổng hợp các bộ lọc có đáp ứng pha phi tuyến và hệ số phức). Ngoài ra, chức năng nhớ lại cho phép, dựa trên các tham số đã cho của đáp ứng tần số, ước tính thứ tự bộ lọc cần thiết trong quá trình tổng hợp bằng phương pháp Remez.

Ví dụ: chúng tôi tổng hợp bộ lọc thông thấp không đệ quy bậc 32 bằng phương pháp Remez với cùng tần số cắt và tần số lấy mẫu như trong ví dụ trước (tần số cắt 3 kHz, tần số lấy mẫu 12 kHz). Hãy đặt điểm bắt đầu của dải dừng thành 3,5 kHz. Sau khi tổng hợp, chúng ta sẽ xây dựng biểu đồ đáp ứng xung, cũng như đáp ứng tần số của bộ lọc thu được (đáp ứng tần số của bộ lọc là tuyến tính nên việc hiển thị biểu đồ của nó là vô nghĩa). Chúng tôi hiển thị đáp ứng tần số trên thang đo tuyến tính dọc để thể hiện rõ ràng tính đồng nhất của các xung của nó.

    Fs = 12000; % tần số lấy mẫu
    F0 = 3000; % tần số cắt
    F1 = 3500; % bắt đầu của dải chặn
    b = remez(32, , ); tính toán % bộ lọc
    biểu đồ đáp ứng xung impz(b) %
    = tần số(b, 1, , Fs); % hệ số truyền phức tạp
    nhân vật
    biểu đồ đáp ứng tần số% (f, abs(h))
    lưới

Các chức năng tổng hợp trực tiếp của bộ lọc đệ quy bao gồm:

  • bước đi trong lễ giáng sinh- tổng hợp bộ lọc đệ quy với đáp ứng tần số tuyến tính từng đoạn tùy ý bằng phương pháp Yule-Walker.
  • invfreqz- hàm này nhằm giải quyết vấn đề nhận dạng hệ thống, nó cho phép bạn xác định các hệ số của tử số và mẫu số của hàm truyền của một hệ rời rạc từ một tập hợp các giá trị của hàm truyền này ở các tần số khác nhau.

Để kết luận, chúng tôi sẽ liệt kê một số chức năng không có trong các nhóm được liệt kê ở trên. Chức năng maxflatđược dùng để tổng hợp bộ lọc Butterworth tổng quát (đối với các bộ lọc như vậy, số lượng 0 của hàm truyền vượt quá số cực của nó). Chức năng xâm nhập thực hiện tổng hợp các bộ lọc được thiết kế để lọc tín hiệu khi thực hiện phép nội suy và phép thập phân. Phép toán tích chập vectơ có thể được biểu diễn dưới dạng tích ma trận vectơ và ma trận liên quan đến tích này có thể được tính bằng hàm chuyển đổi. Cuối cùng, chức năng sgolay thực hiện tổng hợp bộ lọc làm mịn Savitzky-Golay. Vì, như đã mô tả ở trên, bộ lọc Savitzky-Golay xử lý các khối tín hiệu riêng lẻ nên bộ lọc như vậy không phải là một hệ thống cố định. Do đó chức năng sgolay trả về toàn bộ ma trận các hệ số thay đổi theo thời gian của bộ lọc không đệ quy tương đương.

Ngoài gói Xử lý Tín hiệu, một số chức năng tổng hợp bộ lọc rời rạc cũng có sẵn trong gói Thiết kế Bộ lọc và Truyền thông.

Cụm từ “phân tích quang phổ” trong tâm trí của nhiều người sử dụng MATLAB gắn liền với hàm fft(xem thêm phần "Các hàm chuyển đổi tín hiệu rời rạc"), thực hiện phép biến đổi Fourier rời rạc (DFT). Tuy nhiên, đây chỉ là phép biến đổi tuyến tính một-một, cho hiệu suất tín hiệu xác định trong miền tần số. Nếu tín hiệu được phân tích là ngẫu nhiên, đối với anh ấy điều đó chỉ có ý nghĩa cấp mật độ quang phổ quyền lực, để tính toán cần thực hiện tính trung bình của dữ liệu có sẵn bằng cách này hay cách khác. Ngoài ra, trong một số trường hợp, chúng tôi biết một số thông tin bổ sung về tín hiệu đang được phân tích và nên tính đến thông tin này trong quá trình phân tích quang phổ.

Các phương pháp phân tích phổ của tín hiệu ngẫu nhiên được chia thành hai loại lớn - không tham số và tham số. TRONG phi tham số(không tham số) chỉ sử dụng thông tin có trong các mẫu tín hiệu được phân tích. Tham số(tham số) phương pháp giả định sự hiện diện của một số thông số thống kê mô hình tín hiệu ngẫu nhiên và quá trình phân tích quang phổ trong trong trường hợp này bao gồm định nghĩa thông số Mô hình này. Thuật ngữ Phân tích phổ dựa trên mô hình (MBSA) cũng được sử dụng.

Gói Xử lý Tín hiệu chứa các chức năng thực hiện nhiều phương pháp phân tích quang phổ - cả tham số và phi tham số (phải nhấn mạnh một lần nữa rằng bằng phân tích quang phổ, chúng tôi muốn nói đến việc đánh giá mật độ phổ công suất của một quá trình ngẫu nhiên). Ngoài ra, còn có các hàm để thu được các đặc tính trung bình khác của các tín hiệu rời rạc ngẫu nhiên.

Để xác định các đặc tính phổ của một quá trình ngẫu nhiên rời rạc, phổ công suất trung bình của đoạn có độ dài giới hạn được tính toán và sau đó độ dài của đoạn có xu hướng vô cùng:

. (1)

Đây x(k) - mẫu của một quá trình ngẫu nhiên, T- Thời gian lấy mẫu. Thanh ở trên biểu thị mức trung bình của toàn bộ các nhận thức.

Ngoài ra, phổ này có thể được biểu diễn thông qua hàm tương quan của quá trình ngẫu nhiên:

. (2)

Biểu thức này là một dạng tương tự rời rạc của định lý Wiener-Khinchin: phổ của một quá trình ngẫu nhiên rời rạc là biến đổi Fourier của hàm tương quan của nó.

Như đã đề cập, khi sử dụng các phương pháp phi tham số để tính phổ của một quá trình ngẫu nhiên, chỉ thông tin có trong các mẫu tín hiệu được sử dụng mà không có bất kỳ giả định bổ sung nào. Gói Xử lý Tín hiệu thực hiện ba phương pháp như vậy - biểu đồ, phương pháp Welch và phương pháp Thomson.

Biểu đồ tuần hoàn là ước tính mật độ phổ công suất thu được từ Nđếm một lần thực hiện quá trình ngẫu nhiên theo định nghĩa (1) (đương nhiên, không phải bằng cách lấy giới hạn mà bằng cách lấy trung bình một số hữu hạn các số hạng). Nếu hàm trọng số (cửa sổ) được sử dụng trong tính toán phổ thì ước tính phổ công suất thu được được gọi là đồ thị sửa đổi(biểu đồ đã sửa đổi):

Do đó, mối quan hệ (2) chỉ được thỏa mãn với vô số mẫu được sử dụng, với bất kỳ hữu hạn nào NƯớc tính chu kỳ của mật độ phổ công suất hóa ra là di dời- hóa ra bên trong tổng (2), hàm tương quan của tín hiệu được nhân với hàm trọng số hình tam giác. Ngoài ra, có thể chỉ ra rằng biểu đồ chu kỳ không phải là ước tính hợp lệ về mật độ phổ công suất, vì sự phân tánước tính như vậy có thể so sánh với bình phương kỳ vọng toán học của nó đối với bất kỳ N. Khi số lượng mẫu được sử dụng tăng lên, các giá trị biểu đồ bắt đầu dao động ngày càng nhanh hơn - biểu đồ của nó ngày càng trở nên lởm chởm.

Trong gói Xử lý tín hiệu, biểu đồ chu kỳ (bao gồm cả biểu đồ đã sửa đổi) được tính toán bằng hàm biểu đồ thời kỳ.

Để giảm độ lởm chởm của biểu đồ, cần phải áp dụng một số phương pháp lấy trung bình. Bartlett đề xuất chia tín hiệu được phân tích thành các phân đoạn không chồng chéo, tính toán biểu đồ cho mỗi phân đoạn và sau đó lấy trung bình các biểu đồ này. Nếu hàm tương quan của tín hiệu trong suốt thời gian phân đoạn giảm xuống các giá trị không đáng kể thì biểu đồ tuần hoàn của các phân đoạn riêng lẻ có thể được coi là độc lập. Welch đã thực hiện hai cải tiến cho phương pháp của Bartlett: sử dụng hàm trọng số và phân chia tín hiệu thành qua nối chồng mảnh vỡ. Việc sử dụng hàm trọng số giúp giảm trải phổ và giảm độ lệch trong ước tính kết quả của phổ mật độ công suất với cái giá phải trả là độ phân giải bị suy giảm đôi chút. Các phân đoạn chồng chéo đã được giới thiệu nhằm tăng số lượng của chúng và giảm phương sai của ước tính.

Việc tính toán bằng phương pháp Welch (còn gọi là phương pháp biểu đồ trung bình đã sửa đổi) được tổ chức như sau: vectơ của các mẫu tín hiệu được chia thành các đoạn chồng chéo, mỗi đoạn được nhân với hàm trọng số được sử dụng, các biểu đồ đã sửa đổi được tính cho các đoạn có trọng số, các biểu đồ của tất cả các phân đoạn được tính trung bình.

Phương pháp Welch là phương pháp phân tích quang phổ phổ biến nhất. Trong gói Xử lý tín hiệu, nó được triển khai bằng hàm tiếng vỗ tay.

Phương pháp Thomson được thực hiện bởi hàm chiều, dựa trên cách sử dụng mở rộng chức năng hình cầu(tăng cường các chức năng hình cầu). Các hàm thời lượng hữu hạn này cung cấp mức tập trung năng lượng tối đa trong một dải tần số nhất định. Ngoài việc đánh giá phổ, chức năng chiều có thể trả về khoảng tin cậy của nó. Việc tính toán hàm cầu hình cầu sẽ mất một chút thời gian nên khi sử dụng hàm nhiều lần chiều Bạn có thể tăng tốc độ tính toán bằng cách tính toán trước các hàm cần thiết để phân tích và lưu trữ chúng trong cơ sở dữ liệu. Để làm việc với cơ sở dữ liệu như vậy (đó là tệp MAT có tên dpss.mat) là một họ hàm có tên bắt đầu bằng các chữ cái dps (dps- tính toán các chức năng, dpssload- tải một nhóm chức năng từ cơ sở dữ liệu, dpsssave- lưu một nhóm chức năng trong cơ sở dữ liệu, dpssdir- đầu ra của thư mục cơ sở dữ liệu, dpssclear- xóa một họ hàm khỏi cơ sở dữ liệu).

Ví dụ: chúng tôi sẽ hình thành việc triển khai quy trình ngẫu nhiên tương quan theo cấp số nhân và thực hiện phân tích quang phổ của nó bằng ba phương pháp được liệt kê. Tín hiệu ngẫu nhiên mà chúng ta cần được tạo ra bằng cách truyền nhiễu trắng rời rạc thông thường qua bộ lọc đệ quy bậc nhất:

X0 = randn(1, 1000);
a = 0,9;
X = bộ lọc(1, , X0);

Chúng tôi xây dựng một biểu đồ:

biểu đồ chu kỳ(X, , 1)

Như bạn có thể thấy, biểu đồ định kỳ hóa ra khá lởm chởm. Bây giờ, hãy ước tính phổ của việc triển khai tương tự bằng phương pháp của Welch:

pwelch(X, , , , 1)

Sự bất thường của biểu đồ hóa ra ít hơn nhiều. Cuối cùng, chúng tôi sử dụng phương pháp của Thomson:

pmtm(X, , , 1)

Về đầu ra của hàm chiều Biểu đồ hiển thị ranh giới của khoảng tin cậy cùng với ước tính phổ công suất.

Việc sử dụng các phương pháp tham số ngụ ý sự hiện diện của một số vấn đề toán học mô hình phân tích quá trình ngẫu nhiên Trong trường hợp này, phân tích quang phổ nhằm giải quyết vấn đề tối ưu hóa, nghĩa là tìm kiếm thông số mô hình trong đó nó gần nhất với tín hiệu thực tế được quan sát. Gói Xử lý tín hiệu thực hiện một số loại phân tích tự hồi quy và hai phương pháp dựa trên phân tích giá trị riêng và vectơ của ma trận tương quan tín hiệu: MUSIC (Phân loại nhiều tín hiệu) và EV (Vector riêng).

Dựa theo mô hình tự hồi quy tín hiệu được tạo ra bằng cách truyền nhiễu trắng rời rạc qua bộ lọc "hoàn toàn đệ quy" N-thứ tự. Mật độ phổ công suất của tín hiệu như vậy tỷ lệ với bình phương mô đun hệ số hàm truyền của bộ lọc định hình. Do đó, phương pháp phân tích quang phổ này nhằm xác định các hệ số lọc của một thứ tự nhất định, ước tính công suất của nhiễu trắng thú vị và tính toán mật độ phổ công suất một cách phân tích. Để xác định các hệ số của mô hình, sai số được giảm thiểu dự đoán tuyến tính tín hiệu. Phân tích lý thuyết cho thấy các hệ số tối ưu của mô hình chỉ được xác định bởi hàm tương quan của tín hiệu.

Trong thực tế, chúng tôi không biết hàm tương quan thực sự của tín hiệu đang nghiên cứu, do đó, để giảm thiểu sai số dự đoán, chúng tôi sử dụng đánh giá CF thu được bằng cách lấy trung bình theo thời gian. Một số phương pháp phân tích tự hồi quy đã được phát triển, khác biệt chủ yếu ở cách tiếp cận xử lý các hiệu ứng cạnh (nghĩa là trong phương pháp tính toán các mẫu tín hiệu cạnh không có cặp dịch chuyển khi tính toán CF). Gói Xử lý tín hiệu triển khai phương pháp Burg, phương pháp hiệp phương sai, phương pháp hiệp phương sai được sửa đổi và phương pháp Yule-Walker tự hồi quy.

Các phương pháp phân tích phổ tự hồi quy phù hợp nhất với các tín hiệu thực sự là quá trình tự hồi quy. Nhìn chung, các phương pháp này cho kết quả tốt khi phổ của tín hiệu được phân tích có các đỉnh được xác định rõ ràng. Đặc biệt, các tín hiệu như vậy bao gồm tổng của một số hình sin có nhiễu.

Khi sử dụng các phương pháp tự hồi quy, điều quan trọng là phải chọn đúng thứ tự của mô hình tự hồi quy - nó phải gấp đôi số dao động hình sin được cho là có trong tín hiệu được phân tích.

Mỗi phương pháp phân tích tự hồi quy trong gói Xử lý tín hiệu tương ứng với hai chức năng - chức năng tính toán hệ số mô hình và chức năng phân tích phổ. Hàm phân tích phổ gọi hàm tính toán hệ số mô hình rồi tính toán phổ. Tên các hàm được tóm tắt trong bảng sau.

Tên phương thức

Hàm tính hệ số mô hình

Chức năng phân tích quang phổ

Phương pháp hiệp phương sai arcov pcov
Phương pháp hiệp phương sai sửa đổi áo giáp pmcov
phương pháp Berg Arburg pburg
Phương pháp Yule-Walker tự hồi quy aryule trụ cột

Tín hiệu ngẫu nhiên tương quan theo cấp số nhân được tạo ra trong ví dụ trên là quá trình tự hồi quy bậc một, do đó các phương pháp phân tích quang phổ được liệt kê là khá phù hợp cho nó. Hãy áp dụng phương pháp của Berg, thiết lập thứ tự của mô hình tự hồi quy, bằng một(đây là tham số thứ hai của hàm pburg):

pburg(X, 1, , 1)

Đường cong trơn thu được trên thực tế trùng khớp với phổ lý thuyết của quá trình ngẫu nhiên này.

Phương pháp MUSIC (Phân loại nhiều tín hiệu) nhằm mục đích phân tích quang phổ của các tín hiệu là tổng của một số hình sin (chính xác hơn là trong trường hợp chung là một số hàm mũ phức tạp) có nhiễu trắng. Theo quy luật, mục đích của việc phân tích phổ của các tín hiệu đó không phải là tính toán phổ như vậy mà là để xác định tần số và mức (biên độ hoặc công suất) của các thành phần hài. Phương pháp MUSIC được thiết kế chính xác cho mục đích này, do đó sự phụ thuộc của mức tín hiệu vào tần số thu được với sự trợ giúp của nó được gọi là quang phổ giả(giả quang phổ).

Phương pháp này dựa trên việc phân tích các giá trị riêng và vectơ riêng của ma trận tương quan tín hiệu. Khi thực hiện phân tích, cần xác định thứ tự của mô hình, tức là số lượng hàm mũ phức dự kiến ​​sẽ chứa trong tín hiệu.

Trong gói Xử lý tín hiệu, phương thức MUSIC được triển khai bằng hàm chiều âm nhạc, và hàm nhạc gốc cho phép bạn có được ước tính về tần số và công suất của các thành phần hài của tín hiệu.

Một họ hàng gần của MUSIC là phương pháp vectơ riêng (EV). Sự khác biệt duy nhất của nó là trong các công thức tính toán, các vectơ riêng được nhân với các hệ số có trọng số tỷ lệ nghịch với các giá trị riêng tương ứng. Tài liệu báo cáo rằng phương pháp EV tạo ra ít đỉnh phổ sai hơn MUSIC và thường cung cấp sự thể hiện tốt hơn về hình dạng phổ nhiễu.

Trong gói Xử lý tín hiệu, phương thức EV được triển khai bằng hàm chim bồ câu, và hàm rooteig cho phép bạn có được ước tính về tần số và công suất của các thành phần hài của tín hiệu.

Cần nhấn mạnh rằng phổ giả không phải là ước tính của phổ mật độ công suất thực mà chỉ là phổ ước tính giả, cho phép người ta ước tính tần số của các thành phần tín hiệu hình sin hoặc băng hẹp với độ phân giải cao hơn một chút so với các phương pháp tự hồi quy.

Biến đổi Fourier rời rạc, được sử dụng trong tất cả các phương pháp ước lượng phổ không tham số, ngụ ý sự tiếp tục định kỳ của đoạn tín hiệu được phân tích. Trong trường hợp này, các bước nhảy có thể xảy ra tại điểm nối của các mảnh, dẫn đến sự xuất hiện của các thùy bên ở mức đáng kể trong vùng quang phổ. Để làm suy yếu hiệu ứng này, tín hiệu được nhân với tín hiệu giảm dần từ tâm ra các cạnh trước khi thực hiện DFT hàm trọng lượng (cửa sổ). Kết quả là, cường độ nhảy tại các điểm nối của các phân đoạn giảm đi và mức độ của các dải bên không mong muốn của quang phổ cũng trở nên nhỏ hơn - cái giá phải trả cho việc này là sự mở rộng nhất định của các đỉnh phổ.

Ngoài phân tích quang phổ, các hàm trọng số còn được sử dụng trong quá trình tổng hợp các bộ lọc không đệ quy bằng phép biến đổi Fourier nghịch đảo của đáp ứng tần số mong muốn. Trong trường hợp này, chúng cho phép bạn tăng khả năng triệt tiêu tín hiệu trong băng tần chặn của bộ lọc do sự mở rộng nào đó của băng thông.

Hiện tại, gói Xử lý tín hiệu có khoảng chục chức năng đo trọng số. Sự phổ biến của một số trong số chúng là do tính đơn giản trong tính toán, trong khi một số khác lại tối ưu theo một nghĩa nào đó.

Đơn giản nhất là một cửa sổ hình chữ nhật được thực hiện bởi hàm chỉnh thẳng(trong các phiên bản gói lên tới 5.0, chức năng này có tên toa chở hàng). Cửa sổ hình chữ nhật tương ứng với việc không có cân, chức năng này chỉ được bao gồm trong gói để hoàn thiện hình thức của bộ chức năng cân. Cửa sổ hình tam giác được thực hiện bởi hàm tam giác, cửa sổ Bartlett cũng có dạng tam giác (chức năng barlett), nó chỉ khác một chút ở phương pháp tính toán.

Một số hàm trọng số là sự kết hợp của các thành phần điều hòa. Chúng tôi liệt kê chúng theo thứ tự tăng dần của số hạng cosin:

  • Cửa sổ Hanna (chức năng Hann), đôi khi được gọi không chính xác là cửa sổ Hanning, là một số hạng cosine.
  • Cửa sổ Hamming (chức năng haming) - một số hạng cosin.
  • Cửa sổ Blackman (chức năng người da đen) - hai số hạng cosin.
  • Cửa sổ Blackman-Harris (chức năng blackmanharris) - ba số hạng cosin.
  • Cửa sổ Nuttall (một phiên bản thay thế của cửa sổ Blackman-Harris, có chức năng hấp dẫn) - ba số hạng cosin.

Các cửa sổ còn lại được mô tả bằng các mối quan hệ toán học phức tạp hơn. Hình dạng cửa sổ Gaussian (chức năng gausswin) là tự giải thích. Cửa sổ Bartlett-Hanna đã sửa đổi (chức năng barthannwin) là tổ hợp tuyến tính của cửa sổ Bartlett và Hanna. Cửa sổ Beauman (chức năng bohmanwin) là tích chập của hai xung cosin giống hệt nhau. Cửa sổ Chebyshev (chức năng chebwin) có các búp bên ở mức cố định (được chỉ định trong quá trình tính toán) và được tính bằng phép biến đổi Fourier nghịch đảo của đáp ứng tần số của cửa sổ. Cửa sổ Kaiser (chức năng hoàng đế) cũng có một tham số điều chỉnh mức của các búp bên và độ rộng của búp chính; các hàm Bessel sửa đổi được sử dụng khi tính toán cửa sổ này. Cửa sổ Tukey (chức năng tukeywin) là một hình chữ nhật có các cạnh được làm phẳng bằng cosine. Ở giá trị cực đại của hệ số làm mịn, nó biến thành cửa sổ hình chữ nhật hoặc cửa sổ Hann.

Cuối cùng, chức năng cửa sổ cung cấp một giao diện chung để gọi các hàm tính toán dành riêng cho cửa sổ.

Các chức năng thuộc danh mục này tính toán các thông số thống kê khác nhau của tín hiệu. Chức năng có thể được chia thành nhiều nhóm.

Nhóm đầu tiên liên quan đến việc tính toán các hàm tương quan và hiệp phương sai (ở đây cần nhắc lại rằng trong thuật ngữ trong và ngoài nước, các khái niệm này không trùng nhau; bài đánh giá này sử dụng phiên bản nước ngoài được áp dụng trong MATLAB). Chức năng xcorr cho phép bạn ước tính hàm tương quan của một tín hiệu hoặc hàm tương quan chéo của hai tín hiệu. Một biến thể của chức năng này được thiết kế để hoạt động với tín hiệu hai chiều được gọi là xcorr2. Chức năng xcov nhằm mục đích ước tính hàm hiệp phương sai của một tín hiệu hoặc hàm hiệp phương sai lẫn nhau của hai tín hiệu. Chức năng covsửa lỗi, có trong thư viện MATLAB cơ sở, cho phép bạn thu được ma trận hiệp phương sai và ma trận hệ số tương quan bằng cách lấy trung bình một số lần thực hiện dữ liệu ngẫu nhiên. Chức năng sửa lỗi trả về một ma trận dữ liệu trung gian để ước tính ma trận tương quan của tín hiệu và cũng có thể trả về chính ma trận này.

Nhóm hàm tiếp theo tính toán các đặc tính thống kê trong miền tần số bằng phương pháp phi tham số của Welch (xem ở trên). Chức năng csd dành cho việc đánh giá mật độ phổ lẫn nhau hai quá trình ngẫu nhiên Nó cũng có thể trả về khoảng tin cậy cho ước tính kết quả. Chức năng mạch lạcđưa ra ước tính cho mô đun bình phương chức năng gắn kết lẫn nhau hai quá trình ngẫu nhiên Chức năng tfe cho phép bạn đánh giá hệ số truyền phức tạp hệ thống thực hiện các tín hiệu đầu vào và đầu ra của nó.

Cuối cùng, chức năng psdplotĐược sử dụng bởi tất cả các hàm ước lượng phổ để vẽ mật độ phổ công suất. Nó cũng có thể được gọi một cách rõ ràng - ví dụ: để hiển thị biểu đồ theo tỷ lệ tuyến tính thay vì biểu đồ logarit mặc định hoặc để hiển thị một số quang phổ trên một biểu đồ.

Mô hình tham số và chức năng dự đoán tuyến tính

Dưới mô hình tham số có nghĩa là sự lựa chọn của một số mô hình toán học Quá trình ngẫu nhiên và lựa chọn tiếp theo các tham số của mô hình này để đảm bảo sự tương ứng tối đa giữa tín hiệu do mô hình tạo ra và mẫu dữ liệu thực có sẵn.

Một mô hình được sử dụng rộng rãi trong thực tế là mô hình tự hồi quy (AR), trong đó tín hiệu ngẫu nhiên được tạo ra bằng cách truyền nhiễu trắng rời rạc qua bộ lọc định hình “hoàn toàn đệ quy” (nghĩa là không sử dụng các mẫu tín hiệu đầu vào bị trễ). Bốn tính năng của gói Xử lý tín hiệu - Arburg, arcov, áo giáparyule- nhằm mục đích thu được ước tính về các hệ số của bộ lọc định hình và độ phân tán (công suất) của tiếng ồn trắng kích thích bộ lọc. Các phương pháp tính toán được sử dụng bởi các hàm này đã được chỉ ra trước đó, trong phần “Các phương pháp tự hồi quy”, trong đó phân tích quang phổ tự hồi quy đã được thảo luận.

Nếu chúng ta có ước tính hệ số truyền phức tạp các hệ thống ở các tần số khác nhau, có thể xây dựng một mô hình khả thi của hệ thống, đáp ứng tần số của nó sẽ càng gần với mô hình đo được càng tốt. Khả năng thực hiện được của hệ thống ở đây có nghĩa là khả năng biểu diễn hàm truyền của nó dưới dạng hàm hữu tỉ phân số với thứ tự cho trước của đa thức tử số và mẫu số. Mô hình tham số trong trường hợp này tập trung vào việc tìm ra các hệ số tối ưu của đa thức tử số và mẫu số của hàm truyền. Nhiệm vụ nàyđược giải quyết bằng hai chức năng của gói Xử lý tín hiệu: chức năng tần suất cho phép bạn xây dựng mô hình của một hệ thống tương tự và chức năng invfreqz thực hiện một hoạt động tương tự khi áp dụng cho các hệ thống rời rạc.

Một phiên bản khác của bài toán lập mô hình tham số liên quan đến việc xây dựng một mô hình của hệ thống dựa trên ước tính hiện có về đáp ứng xung. Có hai chức năng trong gói Xử lý tín hiệu cho mục đích này. Chức năng nghiêng ngả sử dụng thực tế là đáp ứng xung của một hệ thống rời rạc đệ quy, trong trường hợp không có nhiều cực, là tổng của các hàm mũ rời rạc (trong trường hợp phức tạp tổng quát). Thuật toán được thực hiện bởi hàm này ban đầu được phát triển vào thế kỷ 18 bởi Baron de Prony với mục đích khớp các tham số của mô hình phân tích hàm mũ với dữ liệu thực nghiệm. Tính ổn định của hệ thống thu được không được đảm bảo, nhưng điều đầu tiên Nđếm ( N- thứ tự tử số của hàm truyền hệ thống) của đáp ứng xung của nó được xác định trong quá trình tính toán chính xác trùng với những cái đã chỉ định.

Hàm thứ hai của việc mô hình hóa hệ thống bằng đáp ứng xung là hàm stmcb- không tìm cách đảm bảo sự khớp chính xác của các đoạn ban đầu của phản ứng xung - thay vào đó, nó giảm thiểu độ lệch chuẩnđặc tính thu được từ đặc tính đã cho, nghĩa là tổng bình phương của các mô-đun của sự khác biệt trong các mẫu có đặc tính xung thu được và mong muốn. Hàm này thực hiện phương pháp lặp Steiglitz-McBride, làm giảm việc giải liên tục một hệ phương trình tuyến tính đối với các hệ số của đa thức của hàm truyền của hệ mong muốn.

Để làm ví dụ, chúng ta thu được mô hình của hệ thống bậc ba bằng cách sử dụng phương pháp Prony và Steiglitz-McBride, đặt đáp ứng xung hình tam giác làm mẫu:

h = ; % đáp ứng xung
= prony(h, 3, 3); Phương pháp % Prony
= stmcb(h, 3, 3); Phương pháp % Steiglitz-McBride
Biểu đồ % đáp ứng xung của hệ thống thu được
impz(b1, a1, 30)
tiêu đề ("Prony")
nhân vật
impz(b2, a2, 30)
tiêu đề ("Stmcb")

Việc so sánh các biểu đồ cho thấy rõ sự khác biệt giữa hai thuật toán. Khi sử dụng phương pháp Prony, bốn mẫu đầu tiên của đáp ứng xung thu được hoàn toàn trùng khớp với các giá trị đã chỉ định, tuy nhiên, độ lệch xa hơn so với các giá trị đã chỉ định sẽ tăng lên rất nhiều và sau khi kết thúc đoạn được chỉ định, một “đuôi” có mức độ khá cao được quan sát thấy, vì chức năng nghiêng ngả không đưa ra bất kỳ giả định nào về các giá trị đáp ứng xung yêu cầu bên ngoài một đoạn nhất định. Chức năng stmcb giảm thiểu bậc hai Lỗi phát lại bất tậnđáp ứng xung và ở phần cuối của một đoạn được chỉ định rõ ràng, nó được coi là bằng 0. Kết quả là không quan sát thấy sự tương ứng chính xác của các mẫu với các phản ứng xung đã cho và nhận được (ngoại trừ mẫu đầu tiên), nhưng lỗi trong việc tái tạo đặc tính được “trải ra” đồng đều hơn trên các mẫu.

Nếu một quá trình ngẫu nhiên rời rạc không phải là nhiễu trắng thì các mẫu của nó sẽ là tương quan cùng nhau. Điều này cho phép biết được hàm tương quan của quá trình, dự đoán giá trị của lần đếm tiếp theo. Giá trị dự đoán được tính toán dưới dạng kết hợp tuyến tính của các mẫu quy trình trước đó. Đây là ý tưởng chính dự đoán tuyến tính. Dự đoán tuyến tính được sử dụng để phân tích phổ tham số (xem phần trước), nhận dạng hệ thống, phân tích tín hiệu giọng nói và nén thông tin trong quá trình truyền chúng.

Các mô hình của hệ thống dựa trên dự đoán tuyến tính có thể được trình bày dưới nhiều dạng khác nhau và theo đó, được mô tả bằng các bộ tham số khác nhau. Một số chức năng trong gói Xử lý tín hiệu cho phép bạn chuyển đổi mô tả mô hình từ dạng này sang dạng khác. Những tính năng này được liệt kê trong bảng sau.

Hình thức cuối cùng

Trình tự tự tương quan

hệ số phản xạ

Hệ số dự đoán

Thông số arcsine

Tỷ lệ logarit

Tần số vạch quang phổ

Mẫu ban đầu

Trình tự tự tương quan

ac2rc, schurc

hệ số phản xạ

Hệ số dự đoán

Thông số arcsine

Tỷ lệ logarit

Tần số vạch quang phổ

Ngoài ra, gói Xử lý tín hiệu còn có một số chức năng khác liên quan đến dự đoán tuyến tính. Vì vậy, để tính các hệ số của bộ lọc dự đoán, cần phải giải hệ phương trình tuyến tính, ma trận của nó là ma trận tương quan của tín hiệu đầu vào. Ma trận này có một số tính chất có thể làm giảm số lượng phép tính cần thiết để giải một hệ phương trình tuyến tính. Đầu tiên, ma trận tương quan là tự liên kết(nghĩa là nó không thay đổi sau khi áp dụng nó vào Cách chia động từ Hermiti- sự kết hợp của chuyển vị với cách chia động từ phức tạp). Đối với tín hiệu thực, tính tự liên hợp đơn giản có nghĩa là tính đối xứng của ma trận qua đường chéo chính. Thứ hai, trong trường hợp quá trình ngẫu nhiên dừng (và chỉ đối với các quá trình như vậy mới có thể sử dụng bộ lọc dự đoán với các tham số không đổi), ma trận tương quan là Ma trận Toeplitz- dọc theo các đường chéo của nó, song song với đường chéo chính, có các số giống nhau. Cuối cùng, vế phải của hệ phương trình biểu thị cột đầu tiên của ma trận tương quan được dịch chuyển một vị trí. Hệ phương trình tuyến tính với ma trận có các tính chất đã chỉ ra được gọi là hệ phương trình Yule-Walker và để giải quyết chúng một cách đệ quy Phương pháp Levinson-Durbin. Thuật toán lặp này được thực hiện bởi hàm Levinson. Chức năng rlevinson giải quyết vấn đề nghịch đảo - cho phép bạn tìm vectơ mẫu của hàm tương quan tín hiệu từ các hệ số dự đoán tuyến tính đã cho.

Chức năng lpc thực hiện tính toán các hệ số dự đoán tuyến tính bằng phương pháp tự tương quan và là một hàm tương tự aryule(Xem phần trước về phân tích phổ tham số). Sự khác biệt duy nhất giữa hai hàm là mã MATLAB được sử dụng để tính toán ước tính ma trận tương quan. Kết quả họ đưa ra trùng khớp với độ chính xác cho đến lỗi tính toán.

Chức năng tạo tín hiệu

Gói Xử lý Tín hiệu có một số chức năng được thiết kế để tạo ra các dạng sóng tiêu chuẩn thường gặp trong quá trình ra quyết định. Các nhiệm vụ khác nhau xử lý tín hiệu.

Tạo tín hiệu không định kỳ

Tất cả các hàm tạo tín hiệu không tuần hoàn đều nhận dưới dạng tham số là vectơ thời gian và các đối số bổ sung mô tả các tham số của xung được tạo. Kết quả trả về là một vectơ mẫu của tín hiệu thu được. Có các hàm tạo tín hiệu có dạng sau:

  • trực tràng
  • - tạo ra một xung hình chữ nhật, tham số bổ sung duy nhất là độ dài xung;
  • ba lần
  • - tạo ra một xung tam giác đơn, các tham số bổ sung là độ dài xung và hệ số bất đối xứng của nó; - tạo ra xung có phổ hình chữ nhật, theo công thức sinc( x) = tội lỗi(p x)/(P x). Hàm này không có tham số bổ sung;
  • gauspuls
  • - tạo ra xung vô tuyến có đường bao Gaussian. Các tùy chọn bổ sung là tần số sóng mang, độ rộng phổ tương đối và mức (tính bằng decibel) mà tại đó độ rộng phổ này được đo;
  • gmonopuls
  • - tạo ra xung đơn Gaussian (hình dạng của nó là đạo hàm bậc nhất của hàm Gaussian). Một tham số bổ sung là tần số trung bình phổ của tín hiệu được tạo ra.

Tạo tín hiệu định kỳ

Các hàm thuộc nhóm này nhận dưới dạng tham số một vectơ thời điểm và các đối số bổ sung mô tả các tham số của xung được tạo. Chu kỳ của tín hiệu được tạo ra là 2p. Để tạo tín hiệu có chu kỳ khác, cần phải điều chỉnh tỷ lệ đối số thời gian được truyền cho hàm cho phù hợp. Kết quả trả về là một vectơ mẫu của tín hiệu thu được. Có các hàm tạo tín hiệu định kỳ có dạng sau:

  • quảng trường
  • - tạo ra một chuỗi xung hình chữ nhật định kỳ. Một tham số bổ sung là chu kỳ hoạt động của xung (tỷ lệ giữa thời lượng xung và chu kỳ lặp lại xung);
  • răng cưa
  • - tạo ra tín hiệu răng cưa định kỳ. Một tham số bổ sung là hệ số bất đối xứng của các xung tam giác tạo nên chuỗi tuần hoàn;
  • chỉ trích
  • - Chức năng Dirichlet. Một tham số bổ sung là thứ tự số nguyên của hàm. Hàm Dirichlet được tính bằng công thức diric( x) = tội lỗi( nx/2)/(N tội( x/2));

Tạo ra dao động với tần số khác nhau

Nhóm này bao gồm hai chức năng - ríu rítvco. Chức năng ríu rít tạo ra các dao động, tần số tức thời của chúng thay đổi theo một trong ba định luật có thể - tuyến tính, bậc hai hoặc hàm mũ. Chức năng này có nhiều khả năng hơn vco(Bộ tạo dao động điều khiển bằng điện áp - bộ tạo dao động điều khiển bằng điện áp), cho phép bạn tạo ra các dao động theo quy luật thay đổi tùy ý trong tần số tức thời. Về bản chất, chức năng này thực hiện việc điều chế tần số.

Tạo xung

Chức năng xung điện dùng để tạo ra một chuỗi hữu hạn các xung có cùng hình dạng với độ trễ và hệ số nhân biên độ được chỉ định tùy ý. Hình dạng của xung có thể được chỉ định theo một trong hai cách: bằng tên của hàm tạo xung hoặc bằng vectơ mẫu đã được tính toán.

Ví dụ, hãy xem xét việc sử dụng các hàm xung điệnchân thànhđể khôi phục tín hiệu tương tự từ các mẫu rời rạc của nó theo định lý Kotelnikov.

t = -5:0,1:10; % thời gian cho tín hiệu analog
k = 0:5; % số mẫu của tín hiệu rời rạc
sd = ; % tín hiệu rời rạc
sa = pulstran(t, , "sinc"); % tín hiệu analog được tái tạo
biểu đồ gốc(k, sd) % của tín hiệu rời rạc
giữ lấy
biểu đồ (t, sa, "r") % của tín hiệu tương tự
giữ lại

Chức năng chuyển đổi tín hiệu rời rạc

Có lẽ phép biến đổi tín hiệu rời rạc nổi tiếng nhất là phép biến đổi Fourier rời rạc (DFT). Hàm tương ứng sử dụng thuật toán biến đổi Fourier nhanh (FFT) trong MATLAB được phân loại là hàm xử lý dữ liệu và được tích hợp sẵn (các hàm fftđánh rơi- tùy chọn một chiều, fft2ifft2- phiên bản hai chiều, fftshiftdịch chuyển ifft- sắp xếp lại các nửa vectơ của các mẫu phổ để chuyển tần số 0 vào giữa vectơ). Trên thực tế, gói Xử lý tín hiệu chứa các hàm thực hiện các phép biến đổi cụ thể hơn.

Giống như bất kỳ phép biến đổi tuyến tính nào, DFT có thể được biểu diễn dưới dạng nhân ma trận biến đổi với một cột mẫu của tín hiệu được chuyển đổi. Ma trận biến đổi này cho DFT được tính bằng hàm dftmtx.

Một lần nữa, do tính tuyến tính của DFT, bất kỳ mẫu phổ nào cũng có thể được biểu diễn dưới dạng kết quả của việc xử lý tín hiệu gốc bằng một số bộ lọc. Việc biểu diễn bộ lọc này ở dạng đệ quy sẽ cho Thuật toán Goertzel, được thực hiện bởi hàm goertzel. Nếu chỉ cần tính toán một vài mẫu phổ thì thuật toán này nhanh hơn FFT.

Họ hàng gần của DFT là phép biến đổi cosine rời rạc. Khi tính toán nó, thay vì sự tiếp tục định kỳ của tín hiệu, được giả định trong DFT, các đoạn liền kề của tín hiệu tiếp tục được phản ánh theo thời gian. Kết quả là tín hiệu trở thành hàm chẵn theo thời gian và phổ của nó trở thành thực. Vì lý do này, trong công thức DFT, thay vì các số mũ phức tạp, chỉ xuất hiện các cosin, điều này đã đặt tên cho phép biến đổi này. Các phép biến đổi cosine rời rạc thuận và nghịch đảo được tính toán bằng các hàm dctkhông biết tương ứng.

Một phương pháp quan trọng để phân tích dãy số rời rạc là biến đổi z, kết quả của nó là hàm của một biến phức. z:

.

Trong một số bài toán cần phải tính z-biến đổi cho các điểm nằm trên đường viền xoắn ốc: . Phép tính hiệu quả về mặt tính toán của biến đổi z dọc theo đường viền như vậy sử dụng biến đổi Fourier nhanh; nó được thực hiện trong một chức năng czt.

Khi triển khai một số biến thể của thuật toán biến đổi Fourier nhanh, để tăng hiệu quả cần sắp xếp lại các phần tử của vectơ đã xử lý thành thứ tự bit đảo ngược(điều này có nghĩa là trong biểu diễn nhị phân của số phần tử vectơ, các bit được đọc ở dạng thứ tự ngược lại, và sau đó vectơ được sắp xếp theo số phần tử mới). Để thực hiện việc sắp xếp lại như vậy, hãy sử dụng hàm bitrevorder.

Khi phân tích tín hiệu băng hẹp, có thể hữu ích khi coi tín hiệu là một dao động có biên độ và pha ban đầu thay đổi theo thời gian. Để có được sự biểu diễn như vậy, một phức hợp tín hiệu phân tích, phần thực trùng với tín hiệu gốc, phần ảo được xác định phép biến đổi Hilbert từ tín hiệu ban đầu. Trong miền tần số, tín hiệu phân tích được đặc trưng bởi phổ một phía: hàm phổ của nó khác 0 chỉ đối với tần số dương. Chức năng hilbert tính toán tín hiệu phân tích trong miền tần số bằng cách tính DFT chuyển tiếp, loại bỏ một nửa phổ và sau đó tính DFT nghịch đảo.

Ví dụ: hãy tính tín hiệu phân tích cho xung vô tuyến hình chữ nhật:

s = số không(256,1);
s(65:192) = cos(pi/2*(0:127)"); % số xung vô tuyến
sa = hilbert(s); % tín hiệu phân tích
f = (-128:127)/128; % giá trị của tần số chuẩn hóa cho đồ thị
cốt truyện phụ(2,1,1)
lô(f, abs(fftshift(fft(s)))) % phổ tín hiệu thực
cốt truyện phụ(2,1,2)
lô(f, abs(fftshift(fft(sa)))) % phổ của tín hiệu phân tích

Biểu đồ phía dưới cho thấy rõ ràng mức 0 của phổ ở vùng tần số âm và nhân đôi của nó ở vùng tần số dương.

Phân tích não

Phân tích Cepstral có liên quan đến xử lý tín hiệu đồng hình. Việc xử lý như vậy tuân theo nguyên tắc chồng chất tổng quát: nếu tín hiệu đầu vào của hệ thống là sự kết hợp của một số tín hiệu thu được bằng phép toán MỘT, thì ở đầu ra, kết quả xử lý các tín hiệu riêng lẻ được kết hợp bằng thao tác B. Phân tích Cepstral đã tìm thấy ứng dụng của nó, đặc biệt là trong các vấn đề xử lý giọng nói. Xử lý tín hiệu có một số chức năng liên quan đến phân tích não.

Chức năng cơ bắp tính toán tần số thực của tín hiệu, đồng thời bỏ qua thông tin có trong phổ pha. Chức năng tương tự cho phép bạn có được tái thiết giai đoạn tối thiểu tín hiệu. số không z-các phép biến đổi trình tự các mẫu của tín hiệu đó nằm trên mặt phẳng phức bên trong vòng tròn đơn vị và đỉnh của nó trùng với đỉnh của tín hiệu ban đầu.

cestrum phức được tính bằng hàm cơ bắp, tính đến cả thông tin về biên độ và pha, do đó mối quan hệ của nó với tín hiệu ban đầu là một-một. Phép biến đổi nghịch đảo, nghĩa là phép tính tín hiệu sử dụng một cestrum phức đã biết, được thực hiện bởi hàm băng giá.

Thay đổi tốc độ mẫu

Các phép biến đổi cũng bao gồm một nhóm chức năng thay đổi tần số lấy mẫu của tín hiệu. Thông thường, tốc độ lấy mẫu cần được thay đổi theo hệ số nguyên. Trong trường hợp tăng tần số lấy mẫu, thao tác này được gọi là phép nội suy, và trong trường hợp giảm - làm mỏng đi(số thập phân). Bất kỳ việc tính toán lại tốc độ lấy mẫu nào đều yêu cầu thực hiện tuần tự một số hành động. Gói Xử lý Tín hiệu chứa các chức năng thực hiện cả các hành động riêng lẻ và trình tự cần thiết của chúng.

Để thực hiện phép nội suy, số lượng số 0 cần thiết được chèn vào giữa các mẫu tín hiệu (hàm lấy mẫu), sau đó tín hiệu thu được sẽ được truyền qua bộ lọc thông thấp. Hai giai đoạn này cùng nhau được thực hiện bởi chức năng người giao tiếp.

Để thực hiện phép thập phân, tín hiệu được truyền qua bộ lọc thông thấp, sau đó mỗi bộ lọc N số thứ (chức năng lấy mẫu xuống). Hai giai đoạn này cùng nhau được thực hiện bởi chức năng phá huỷ phần lớn.

Sự kết hợp giữa phép nội suy và phép thập phân cho phép bạn thay đổi tần số lấy mẫu theo hệ số được biểu thị bằng phân số hữu tỷ tùy ý. Để tăng hiệu quả tính toán, việc tính toán lại đó được thực hiện bởi một hàm chuyên biệt lấy mẫu lại, và đến lượt nó, nó gọi hàm thẳng thắn(chèn số không, lọc và làm mỏng). Sự khác biệt chính giữa hai chức năng này là ở chỗ thẳng thắn cho phép bạn đặt đáp ứng xung của bộ lọc được sử dụng và khi sử dụng chức năng lấy mẫu lại bộ lọc được tính toán tự động.

Cuối cùng, để tính toán lại mômen tham chiếu một cách hoàn toàn tùy ý, chúng có thể được sử dụng chức năng chung các phép nội suy có trong thư viện lõi MATLAB, chẳng hạn như interp1đường dẫn.

Ví dụ: hãy nội suy tín hiệu được sử dụng ở trên để thể hiện các hàm xung điệnchân thành, tăng tốc độ lấy mẫu lên bốn lần. Không có mẫu nào được thêm vào các cạnh của tín hiệu, vì hàm người giao tiếp yêu cầu độ dài của chuỗi ban đầu phải ít nhất là chín mẫu.

sd = ; % tín hiệu gốc
t = 0:9; % thời gian rời rạc cho tín hiệu gốc
sd4 = interp(sd, 4); % nội suy
t4 = (0:39)/4; % thời gian rời rạc cho tín hiệu nội suy
biểu đồ gốc(t, sd) % của tín hiệu gốc
giữ lấy
đồ thị (t4, sd4, "x") % của tín hiệu nội suy
giữ lại

Trong biểu đồ hiển thị, tín hiệu ban đầu được hiển thị dưới dạng “gốc” và tín hiệu nội suy được hiển thị dưới dạng đường chéo.

Nhóm này chứa một số lượng khá lớn các chức năng. Nhiều trong số chúng chủ yếu nhằm mục đích “sử dụng nội bộ” - chúng được gọi bởi các chức năng khác trong gói. Tuy nhiên, một số hàm trong danh mục này có giá trị hoàn toàn độc lập.

Chức năng đệm cho phép bạn biểu diễn một vectơ mẫu tín hiệu thành một ma trận gồm các khung liên tiếp và các khung này có thể chồng lên nhau.

Chức năng moddemo thực hiện điều chế và giải điều chế tương ứng. Được hỗ trợ các loại sauđiều chế: biên độ, biên độ với sóng mang bị triệt tiêu, dải biên đơn, pha, tần số, cầu phương, độ rộng xung, xung thời gian.

Chức năng mã uenmã udecode lần lượt thực hiện lượng tử hóa thống nhất và khôi phục tín hiệu theo số lượng mức lượng tử hóa.

Chức năng dảiđược thiết kế để hiển thị biểu đồ tín hiệu trong một số dòng. Điều này có thể hữu ích nếu bạn cần xem toàn bộ tín hiệu dài và độ phân giải dọc theo trục tung không quá quan trọng.

Nhóm hàm có tên bắt đầu bằng ký hiệu dps, được dùng để tính toán các hàm hình cầu tăng dần rời rạc và làm việc với cơ sở dữ liệu được thiết kế để lưu trữ các hàm được tính toán. Các hàm hình cầu tăng dần rời rạc được sử dụng trong phân tích quang phổ bằng phương pháp Thomson (xem phần trên “Chức năng phân tích quang phổ và xử lý tín hiệu thống kê”, tiểu mục “Các phương pháp phi tham số”).

Chức năng tế bào2sossos2cell cho phép bạn lưu trữ thông tin về bộ lọc, được trình bày dưới dạng các phần được bao gồm tuần tự theo thứ tự thứ hai, không chỉ ở dạng ma trận mà còn ở dạng mảng ô. Hai hàm này thực hiện chuyển đổi biểu diễn giữa hai dạng này.

Chức năng biểu đồ phổ thực hiện tính toán biểu đồ phổ tín hiệu, nghĩa là phổ của các đoạn tín hiệu liên tiếp được phân lập bằng cửa sổ trượt. Kết quả tính toán có thể được trả về dưới dạng ma trận hoặc hiển thị màu theo tọa độ tần số thời gian.

Chức năng cplxpair xác định các cặp liên hợp phức trong vectơ số phức.

Chức năng eqtflength cho phép bạn cân bằng độ dài của hai vectơ bằng cách đệm vectơ ngắn hơn bằng các số 0 ở cuối.

Chức năng kỳ tiếp theođược thiết kế để kiểm tra tính tuần hoàn của các phần tử vectơ và xác định chu kỳ lặp lại của chúng.

Chương trình phân tích và tổng hợp bộ lọc FDATool (Công cụ phân tích & thiết kế bộ lọc) là một lớp vỏ để gọi các chức năng tổng hợp và phân tích các bộ lọc rời rạc. Nếu bạn có gói Hộp công cụ thiết kế bộ lọc chương trình này cũng cho phép bạn phân tích các hiệu ứng liên quan đến việc lượng tử hóa các hệ số bộ lọc và thực hiện chuyển đổi các loại bộ lọc (bộ lọc thông thấp sang bộ lọc thông cao, v.v.).

Chương trình cho phép bạn không chỉ tính toán các bộ lọc từ đầu mà còn cho phép lưu và tải các phiên làm việc cũng như chỉnh sửa các bộ lọc đã lưu trước đó. Bạn cũng có thể nhập các định nghĩa bộ lọc từ không gian làm việc MATLAB hoặc từ các tệp XILINX CORE Generator (*.coe). Bộ lọc đã nhập chỉ có thể được phân tích.

Trong quá trình phân tích, bạn có thể xem các đặc điểm bộ lọc sau (trong phiên bản mới nhất gói, bạn có thể xem nhiều biểu đồ cùng một lúc):

  • Đáp ứng biên độ-tần số (AFC).
  • Đáp ứng tần số pha (PFC).
  • Đáp ứng tần số và đáp ứng pha đồng thời.
  • Sự chậm trễ nhóm.
  • Độ trễ pha.
  • Đáp ứng xung.
  • Đặc tính chuyển tiếp.
  • Vị trí của các số 0 và các cực trên mặt phẳng phức.
  • Hệ số lọc.
  • Thông tin về cấu trúc bộ lọc.

Bộ lọc được tính toán có thể được sử dụng như sau:

  • Lưu phiên làm việc để tải tiếp vào chương trình FDATool để chỉnh sửa và phân tích thêm.
  • Xuất sang không gian làm việc MATLAB.
  • Xuất sang một tập tin văn bản.
  • Xuất sang tệp MAT.
  • Xuất sang tệp tiêu đề C (*.h).
  • Xuất sang SPTool (xem bên dưới).

Hình dưới đây thể hiện cửa sổ chương trình FDATool với kết quả tính toán bộ lọc thông thấp hình elip sử dụng phương pháp biến đổi z song tuyến tính. Biểu đồ đáp ứng tần số và độ trễ nhóm được hiển thị.

Chương trình xử lý tín hiệu SPTool (Công cụ xử lý tín hiệu) cho phép bạn thực hiện hoạt động sau đây: Nhập tín hiệu từ tệp MAT hoặc không gian làm việc MATLAB; xem đồ thị tín hiệu (bao gồm nhiều đồ thị cùng một lúc); áp dụng cho tín hiệu Các phương pháp khác nhau phân tích quang phổ và xem đồ thị kết quả; tính toán các bộ lọc rời rạc bằng cách sử dụng các hàm gói (bao gồm bằng cách chỉnh sửa trực tiếp vị trí của số 0 và cực); truyền tín hiệu qua các bộ lọc và phân tích tín hiệu đầu ra thu được.

Cần lưu ý rằng về mặt phân tích và tổng hợp các bộ lọc, khả năng của chương trình SPTool hẹp hơn so với chương trình FDATool (ngoại lệ duy nhất là FDATool không có khả năng chỉnh sửa trực tiếp vị trí của số 0 và cực) . Tuy nhiên, những hạn chế này được bù đắp bằng khả năng xuất bộ lọc được tính toán từ FDATool sang SPTool.

Các hình bên dưới hiển thị giao diện của cửa sổ chương trình SPTool khi xem biểu đồ tín hiệu, khi phân tích phổ và khi chỉnh sửa vị trí của các điểm 0 và cực của bộ lọc.

Chương trình WinTool (Công cụ phân tích và thiết kế cửa sổ) để tổng hợp và phân tích các hàm trọng số (cửa sổ), xuất hiện trong phiên bản 6.0 (R13) của gói, là một shell để gọi các hàm tính toán cửa sổ có sẵn trong gói. Điều này thể hiện các đặc điểm của một cửa sổ (hoặc một số cửa sổ đồng thời) trong miền thời gian và tần số.

Hình dưới đây thể hiện cửa sổ WinTool với kết quả tính toán cửa sổ Chebyshev bậc 64 với mức thùy bên phổ là –100 dB. Biểu đồ miền thời gian của cửa sổ và phổ của nó được hiển thị.