Xử lý tín hiệu là việc phân tích hoặc biến đổi một tín hiệu để bạn có thể rút ra thông tin hữu ích từ nó. Tín hiệu có thể là điện áp thay đổi theo thời gian, một bản ghi âm, dao động cơ học hoặc ánh sáng được đo bởi đầu dò. Trong thực tế, các câu hỏi chính thường là: có những tần số nào trong tín hiệu, phần nào nên được giữ lại, và cần lấy mẫu nhanh đến mức nào để lưu tín hiệu dưới dạng số mà không tạo ra sai lệch?

Ba ý tưởng đảm nhiệm phần lớn công việc. Biến đổi Fourier cho biết thành phần tần số. Bộ lọc giữ lại một số phần của tín hiệu và làm suy giảm các phần khác. Lấy mẫu biến một tín hiệu liên tục thành dữ liệu số, nhưng chỉ khi tốc độ lấy mẫu đủ cao đối với các tần số bạn cần.

Miền thời gian và miền tần số

Trong miền thời gian, bạn quan sát tín hiệu thay đổi theo từng thời điểm. Cách nhìn này hữu ích khi yếu tố thời điểm là quan trọng, chẳng hạn khi một xung đến nơi hoặc khi cảm biến xuất hiện đột biến.

Trong miền tần số, bạn xem cùng một tín hiệu như sự kết hợp của các thành phần tần số. Cách nhìn này hữu ích khi bạn muốn tách sự trôi chậm khỏi dao động nhanh, xác định âm chủ đạo hoặc hiểu bộ lọc sẽ tác động như thế nào.

Hai cách nhìn này mô tả cùng một tín hiệu. Chúng trả lời những câu hỏi khác nhau.

Biến đổi Fourier cho bạn biết điều gì

Biến đổi Fourier viết lại một tín hiệu theo các thành phần hình sin. Nói đơn giản, nó hỏi rằng mỗi tần số có mặt trong tín hiệu với mức độ bao nhiêu.

Với tín hiệu liên tục x(t)x(t), phép biến đổi được viết là

X(f)=x(t)ei2πftdtX(f) = \int_{-\infty}^{\infty} x(t)e^{-i 2\pi f t}\,dt

Bạn không cần tự tay tính tích phân đó để sử dụng tốt ý tưởng này. Trực giác chính là một dạng sóng phức tạp thường có thể được hiểu như tổ hợp của những dao động đơn giản hơn.

Nếu tín hiệu từ micro chứa tiếng ù 200 Hz200\ \mathrm{Hz} và một âm 2000 Hz2000\ \mathrm{Hz}, đồ thị trong miền thời gian có thể trông rất rối, nhưng cách nhìn trong miền tần số có thể cho thấy các đỉnh gần những tần số đó. Đây thường là cách nhanh nhất để thấy điều gì thực sự đang xảy ra.

Bộ lọc làm thay đổi tín hiệu như thế nào

Bộ lọc làm thay đổi mức độ mà các tần số khác nhau có thể đi qua một hệ.

  • Bộ lọc thông thấp giữ lại các tần số thấp và làm giảm các tần số cao.
  • Bộ lọc thông cao giữ lại các tần số cao và làm giảm các tần số thấp.
  • Bộ lọc thông dải giữ lại một khoảng tần số được chọn và làm giảm các tần số nằm ngoài khoảng đó.

Mô tả này phụ thuộc vào tần số. Nó không có nghĩa là bộ lọc tự động biết phần nào là "nhiễu". Bộ lọc chỉ hữu ích nếu phần bạn muốn loại bỏ được tách biệt khỏi phần bạn muốn giữ lại theo tần số, hoặc theo một tính chất khác mà bộ lọc được thiết kế để khai thác.

Đó là lý do bộ lọc xuất hiện trong xử lý âm thanh, làm mượt tín hiệu cảm biến, hệ thống thông tin liên lạc và thiết bị đo lường.

Vì sao tốc độ lấy mẫu lại quan trọng

Lấy mẫu là quá trình ghi lại một tín hiệu liên tục theo thời gian tại các thời điểm rời rạc. Nếu tần số cao nhất bạn cần bảo toàn là fmaxf_{\max}, thì tốc độ lấy mẫu phải thỏa mãn

fs>2fmaxf_s > 2f_{\max}

để tránh aliasing trong mô hình lấy mẫu lý tưởng. Ngưỡng này, 2fmax2f_{\max}, được gọi là tốc độ Nyquist.

Aliasing có nghĩa là thành phần tần số cao có thể giả dạng thành tần số thấp hơn sau khi lấy mẫu. Một khi điều đó xảy ra, dữ liệu đã lấy mẫu có thể dẫn bạn đến một tín hiệu sai.

Trong các hệ thực, kỹ sư thường lấy mẫu cao hơn mức tối thiểu và thường dùng bộ lọc chống alias trước khi số hóa. Phần dư an toàn này quan trọng vì tín hiệu thực không bị giới hạn băng tần một cách hoàn hảo.

Ví dụ có lời giải: loại bỏ nhiễu tần số cao khỏi cảm biến

Giả sử một cảm biến nhiệt độ chỉ nên thay đổi chậm, nhưng điện áp đo được lại chứa một gợn điện nhanh. Một mô hình đơn giản là

x(t)=2+0.3sin(2π1t)+0.05sin(2π60t)x(t) = 2 + 0.3\sin(2\pi \cdot 1\, t) + 0.05\sin(2\pi \cdot 60\, t)

Ở đây, hạng không đổi 22 là mức nền, hạng 1 Hz1\ \mathrm{Hz} là biến thiên vật lý chậm mà bạn quan tâm, còn hạng 60 Hz60\ \mathrm{Hz} là nhiễu không mong muốn.

Theo cách nhìn của biến đổi Fourier, tín hiệu có năng lượng tại ba vị trí tần số chính:

  • 0 Hz0\ \mathrm{Hz} từ độ lệch không đổi
  • 1 Hz1\ \mathrm{Hz} từ biến thiên nhiệt độ chậm
  • 60 Hz60\ \mathrm{Hz} từ nhiễu

Nếu mục tiêu của bạn là giữ lại xu hướng chậm, bộ lọc thông thấp có thể hữu ích vì phần có ích nằm ở tần số thấp còn nhiễu thì cao hơn nhiều. Một tần số cắt nằm cao hơn đáng kể so với 1 Hz1\ \mathrm{Hz} nhưng thấp hơn đáng kể so với 60 Hz60\ \mathrm{Hz} sẽ làm giảm gợn nhiễu trong khi vẫn giữ phần biến thiên chậm gần như nguyên vẹn.

Bây giờ hãy xét việc lấy mẫu. Nếu bạn lấy mẫu tại fs=20 Hzf_s = 20\ \mathrm{Hz}, thì tần số Nyquist là 10 Hz10\ \mathrm{Hz}. Thành phần 60 Hz60\ \mathrm{Hz} nằm trên giới hạn đó, nên dữ liệu lấy mẫu không thể biểu diễn nó một cách chính xác trừ khi nó được loại bỏ trước khi lấy mẫu. Trong phép tính aliasing lý tưởng, một sóng sin 60 Hz60\ \mathrm{Hz} được lấy mẫu ở 20 Hz20\ \mathrm{Hz} rơi đúng vào các điểm mẫu lặp lại hoàn toàn, nên nó thậm chí có thể biến mất khỏi các mẫu. Điều đó không có nghĩa là nhiễu ban đầu là vô hại. Nó có nghĩa là quá trình lấy mẫu đã che giấu nó theo một cách gây hiểu lầm.

Ví dụ này gắn kết ba ý tưởng lại với nhau:

  • biến đổi Fourier giúp bạn xác định thành phần không mong muốn
  • bộ lọc loại bỏ nó vì nó nằm trong một dải tần riêng biệt
  • quy tắc lấy mẫu cho bạn biết vì sao việc lọc trước lại quan trọng trước khi số hóa

Những sai lầm thường gặp trong xử lý tín hiệu

Xem biến đổi Fourier như một bức tranh hoàn chỉnh

Các phép đo thực là hữu hạn, có nhiễu và thường thay đổi theo thời gian. Đồ thị tần số rất hữu ích, nhưng nó vẫn chỉ là một cách diễn giải dữ liệu đo được, không phải dấu vân tay hoàn hảo của thực tại.

Lọc mà không nêu rõ điều gì cần được bảo toàn

Bộ lọc thông thấp làm giảm nhiễu tần số cao, nhưng nó cũng làm giảm mọi tín hiệu thực ở tần số cao. Một bộ lọc chỉ là "tốt" khi xét theo một mục tiêu rõ ràng.

Dùng tốc độ Nyquist như một mục tiêu thiết kế thoải mái

fs>2fmaxf_s > 2f_{\max} là điều kiện tối thiểu trong lý tưởng. Trong thực tế, làm việc quá sát giới hạn đó khiến bạn hầu như không còn khoảng trống cho các bộ lọc không lý tưởng và thành phần tín hiệu ngoài đời thực.

Cho rằng lấy mẫu tạo ra thông tin

Lấy mẫu chỉ ghi lại những gì đã có sẵn. Nếu tốc độ quá thấp, việc số hóa sẽ không thể khôi phục chi tiết bị mất về sau.

Xử lý tín hiệu được dùng ở đâu

Xử lý tín hiệu xuất hiện ở bất cứ đâu mà phép đo hoặc sóng mang thông tin. Trong vật lý và kỹ thuật, điều đó bao gồm micro, địa chấn kế, máy thu vô tuyến, thiết bị ECG và EEG, đầu dò quang học và hệ điều khiển.

Nó đặc biệt hữu ích khi tín hiệu thô không thể đọc hiểu trực tiếp. Thay vì nhìn chằm chằm vào một dạng sóng phức tạp, bạn dùng các phép biến đổi, bộ lọc và quy tắc lấy mẫu để biến nó thành thứ có thể diễn giải được.

Hãy thử một bài toán xử lý tín hiệu tương tự

Xét một tín hiệu như

x(t)=sin(2π5t)+0.4sin(2π40t)x(t) = \sin(2\pi \cdot 5\, t) + 0.4\sin(2\pi \cdot 40\, t)

Sau đó hãy đặt ra hai câu hỏi thực tế: bộ lọc thông thấp sẽ cố giữ lại tần số nào, và tốc độ lấy mẫu nào sẽ cao hơn giới hạn Nyquist một cách đủ an toàn cho toàn bộ tín hiệu? Bước tiếp theo hữu ích là so sánh ý tưởng này với hàm truyền và xem các hệ định hình tín hiệu trong miền tần số như thế nào.

Cần trợ giúp giải bài?

Tải câu hỏi lên và nhận lời giải từng bước đã được xác minh trong vài giây.

Mở GPAI Solver →