Tạo sóng âm ngược pha để triệt tiêu tiếng ồn xe cộ

18/05/2026
tao-song-am-nguoc-pha-de-triet-tieu-tieng-on-xe-co

🎧 Vì sao tai nghe ANC hiệu quả nhưng phòng thì khó?

Tai nghe:

  • Khoảng không rất nhỏ (chỉ quanh tai)
  • Vị trí micro + loa cố định
  • Sóng âm dễ triệt tiêu chính xác

Phòng:

  • Không gian lớn
  • Sóng âm phản xạ khắp nơi
  • Bạn di chuyển → vị trí tai thay đổi
    👉 Nên triệt tiêu hoàn hảo toàn phòng gần như không khả thi.

NHƯNG… vẫn có thể giảm 20–40% tiếng xe nếu làm đúng cách.


🧠 Nguyên lý chống ồn bằng sóng âm trong phòng

Quy trình chuẩn:

1️⃣ Micro thu tiếng ồn ngoài (tiếng xe)
2️⃣ Bộ xử lý tính toán pha ngược (đảo 180°)
3️⃣ Loa phát “anti-noise”
→ Hai sóng triệt tiêu nhau tại vị trí nghe.

Công thức:

 
AntiNoise = -Noise(t)

🚗 Vì sao tiếng xe là loại ồn phù hợp nhất?

Tiếng xe có đặc điểm:

  • Tần số thấp (20–300 Hz)
  • Dạng đều đều, lặp lại
  • Dễ dự đoán

👉 ANC xử lý tiếng tần số thấp rất tốt.

Các tiếng khó xử lý:

  • người nói chuyện
  • tiếng chó sủa
  • tiếng va đập

🔊 Cách làm hệ chống ồn chủ động DIY cho phòng

1️⃣ Đặt micro ngoài cửa sổ

Quan trọng nhất: thu tiếng trước khi nó vào phòng

Đặt:

  • Micro ở cửa sổ / ban công
  • Hướng ra đường

Nếu đặt trong phòng → quá trễ → không triệt được.


2️⃣ Loa phát anti-noise đặt gần cửa sổ

Không đặt giữa phòng.

Mục tiêu:
👉 Triệt tiêu ngay tại “cửa vào” của tiếng ồn.

Vị trí tốt:

  • Dưới cửa sổ
  • Hai bên cửa sổ
  • Trên cửa sổ

3️⃣ Xử lý bằng Arduino / ESP32 / PC

Pipeline xử lý:

 
Micro → ADC → đảo pha → DAC → Loa

Pseudo code:

 
noise = readMic()
antiNoise = -noise
playSpeaker(antiNoise)

Thực tế cần thêm:

  • Delay tuning (trễ vài ms)
  • Filter tần số thấp (low-pass filter)

🎚️ Tần số cần triệt tiêu (rất quan trọng)

Tiếng xe chủ yếu nằm ở:

Loại xe Tần số
Xe máy 70–250 Hz
Ô tô 40–200 Hz
Xe tải 20–120 Hz

👉 Chỉ cần triệt dải 20–300 Hz là đã giảm ồn rất mạnh.

Dùng lọc:

 
Low pass filter: 300 Hz

⚠️ Sự thật quan trọng (đừng bỏ qua)

Chống ồn chủ động KHÔNG thể thay thế cách âm vật lý.

Cách hiệu quả nhất là:

Chống ồn thụ động + chống ồn chủ động = hoàn hảo

Nếu chỉ dùng sóng âm → hiệu quả thấp.


🎯 Combo hiệu quả nhất cho tiếng xe ngoài đường

Làm đủ 3 bước này:

Bước 1 — Bịt khe cửa + rèm dày

Giảm ngay 40–50%

Bước 2 — Loa tạo anti-noise tại cửa sổ

Giảm thêm 20–30%

👉 Tổng giảm cảm nhận: 60–70% tiếng xe

Đây là mức rất dễ chịu khi ngủ hoặc làm việc.

🎧 Mục tiêu hệ thống

Giảm tiếng xe lọt qua cửa sổ bằng anti-noise.

Sơ đồ tổng:

 
Micro ngoài cửa → PC xử lý realtime → Loa phát anti-noise trong phòng

🧰 1️⃣ Phần cứng cần chuẩn bị

🎤 Micro thu tiếng ồn

Yêu cầu:

  • Nhạy tốt tần số thấp
  • Thu tiếng xa

Nên dùng:

  • Micro condenser USB rẻ cũng OK
  • Hoặc micro lavalier + sound card

👉 Đặt ngoài cửa sổ / ban công, hướng ra đường.


🔊 Loa phát anti-noise

Cực kỳ quan trọng:

  • Phải phát tốt bass (20–300 Hz)

Chọn:

  • Loa vi tính có sub
  • Loa bookshelf
  • Loa sub điện càng tốt

👉 Đặt sát cửa sổ (nguồn tiếng vào phòng).


💻 PC hoặc laptop

Chỉ cần:

  • Sound card stereo
  • Càng ít delay càng tốt.

⚙️ 2️⃣ Nguyên lý xử lý realtime

Chúng ta sẽ làm 3 việc:

1️⃣ Thu tín hiệu micro
2️⃣ Lọc chỉ lấy dải tần tiếng xe (low pass 300Hz)
3️⃣ Đảo pha 180° → phát ra loa


🧠 3️⃣ Cài phần mềm (rất dễ)

Cài:

  • VB-Audio VoiceMeeter Banana
  • Equalizer APO

Đây là combo DIY ANC phổ biến.


Bước A — Cài VoiceMeeter

Dùng để:

  • Lấy tín hiệu micro
  • Route sang loa realtime

Thiết lập:

 
Hardware Input 1  → chọn Micro ngoài cửa
Hardware Out A1   → chọn Loa phát anti-noise

Bước B — Cài Equalizer APO

Dùng để:

  • Lọc bass
  • Đảo pha

Mở file config → thêm:

 
Preamp: -6 dB
Filter: ON LP Fc 300 Hz
Copy: L= -L
Copy: R= -R

Ý nghĩa:

  • LP 300 Hz → chỉ giữ tiếng xe
  • Copy L= -L → đảo pha âm thanh

👉 Đây chính là anti-noise 🎉


⏱️ 4️⃣ Chỉnh độ trễ (bước quan trọng nhất)

Bạn cần delay anti-noise vài ms để khớp thời gian.

Trong Equalizer APO thêm:

 
Delay: 7 ms

Sau đó chỉnh thử:

  • 5 ms
  • 7 ms
  • 10 ms
  • 15 ms

👉 Khi nghe tiếng xe nhỏ đi rõ rệt → đúng delay.

Mỗi phòng có delay khác nhau.


📍 5️⃣ Vị trí đặt loa chuẩn

Đặt:

  • sát cửa sổ
  • hướng vào phòng

KHÔNG đặt giữa phòng.

Mục tiêu: triệt tiếng ngay khi nó vừa lọt vào.


🎯 Kết quả thực tế

Nếu làm đúng:

Trạng thái Cảm nhận
Chưa bật nghe rõ xe
Bật ANC tiếng xe nhỏ đi rõ
Đóng cửa + rèm gần như nền yên

Giảm thực tế: 20–40% tiếng xe
Kết hợp rèm + bịt khe: 60–70%


❤️ Lưu ý quan trọng

ANC hiệu quả nhất:

  • khi bạn ngồi/ ngủ tại vị trí cố định
  • phòng không quá rộng

Không cần triệt hết → chỉ cần giảm nền ồn là đủ dễ chịu.

🎧 Mục tiêu

Thiết bị nhỏ gọn đặt gần cửa sổ:

 
Micro ngoài → ESP32 xử lý realtime → Loa phát anti-noise

Hoạt động 24/7, bật là chạy.


🧰 1️⃣ Linh kiện cần mua

🎤 Micro thu tiếng ồn

Chọn micro digital I2S để giảm delay.

Khuyên dùng:

  • INMP441 (rất phổ biến)
  • ICS43434 (xịn hơn)

👉 Bắt buộc dùng I2S, KHÔNG dùng micro analog.


🔊 Module DAC phát âm thanh

ESP32 không phát âm thanh chất lượng cao trực tiếp → cần DAC.

Chọn:

  • MAX98357A I2S Amplifier ⭐ (chuẩn nhất)
    • Vừa là DAC vừa là ampli loa.

🔈 Loa

Chọn loa:

  • 4Ω – 5W hoặc 10W
  • Loa fullrange hoặc loa sub nhỏ.

👉 Anti-noise chủ yếu là bass, không cần loa treble.


🔌 Nguồn

  • Nguồn 5V 3A (rất quan trọng, thiếu nguồn → delay tăng).

🧠 2️⃣ Sơ đồ kết nối

Micro INMP441 → ESP32

INMP441 ESP32
VCC 3.3V
GND GND
WS GPIO25
SCK GPIO26
SD GPIO33

MAX98357A → ESP32

MAX98357A ESP32
VIN 5V
GND GND
DIN GPIO22
LRC GPIO21
BCLK GPIO19

Loa nối trực tiếp vào MAX98357A.


⚙️ 3️⃣ Nguyên lý xử lý realtime

Pipeline trong ESP32:

 
I2S Mic → Buffer → Low pass filter → đảo pha → I2S DAC → Loa

Quan trọng nhất: độ trễ cực thấp (<10ms).


💻 4️⃣ Code ESP32 hoàn chỉnh (Arduino IDE)

Bạn cài thêm thư viện:

 
ESP32 I2S

Code:

 
#include <driver/i2s.h>

#define I2S_MIC_PORT I2S_NUM_0
#define I2S_SPK_PORT I2S_NUM_1

#define SAMPLE_RATE 16000
#define BUFFER 256

int32_t samples[BUFFER];

void setupI2SMic() {
  i2s_config_t config = {
    .mode = (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_RX),
    .sample_rate = SAMPLE_RATE,
    .bits_per_sample = I2S_BITS_PER_SAMPLE_32BIT,
    .channel_format = I2S_CHANNEL_FMT_ONLY_LEFT,
    .communication_format = I2S_COMM_FORMAT_I2S,
    .dma_buf_count = 4,
    .dma_buf_len = BUFFER
  };

  i2s_pin_config_t pins = {
    .bck_io_num = 26,
    .ws_io_num = 25,
    .data_out_num = -1,
    .data_in_num = 33
  };

  i2s_driver_install(I2S_MIC_PORT, &config, 0, NULL);
  i2s_set_pin(I2S_MIC_PORT, &pins);
}

void setupI2SSpeaker() {
  i2s_config_t config = {
    .mode = (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_TX),
    .sample_rate = SAMPLE_RATE,
    .bits_per_sample = I2S_BITS_PER_SAMPLE_32BIT,
    .channel_format = I2S_CHANNEL_FMT_ONLY_LEFT,
    .communication_format = I2S_COMM_FORMAT_I2S,
    .dma_buf_count = 4,
    .dma_buf_len = BUFFER
  };

  i2s_pin_config_t pins = {
    .bck_io_num = 19,
    .ws_io_num = 21,
    .data_out_num = 22,
    .data_in_num = -1
  };

  i2s_driver_install(I2S_SPK_PORT, &config, 0, NULL);
  i2s_set_pin(I2S_SPK_PORT, &pins);
}

void setup() {
  setupI2SMic();
  setupI2SSpeaker();
}

void loop() {
  size_t bytesRead, bytesWritten;

  // đọc micro
  i2s_read(I2S_MIC_PORT, samples, BUFFER * 4, &bytesRead, portMAX_DELAY);

  // xử lý anti-noise
  for (int i = 0; i < BUFFER; i++) {
    samples[i] = -samples[i];   // đảo pha 180°
    samples[i] = samples[i] / 2; // giảm gain tránh hú
  }

  // phát loa
  i2s_write(I2S_SPK_PORT, samples, bytesRead, &bytesWritten, portMAX_DELAY);
}

🎚️ 5️⃣ Nâng cấp cực quan trọng – lọc tần số xe

Thêm filter để chỉ triệt tiếng xe:

Thay đoạn xử lý bằng:

 
float alpha = 0.05;
static float lowPass = 0;

for (int i = 0; i < BUFFER; i++) {
  lowPass = alpha * samples[i] + (1 - alpha) * lowPass;
  samples[i] = -lowPass;
}

👉 Đây là low-pass filter ~300Hz

Hiệu quả tăng mạnh.


📍 6️⃣ Vị trí lắp đặt chuẩn

  • Micro: ngoài cửa sổ hướng ra đường
  • Loa: trong phòng sát cửa sổ

Không đặt giữa phòng.


🎯 Hiệu quả thực tế

Nếu làm đúng:

  • giảm 20–40% tiếng xe
  • ngủ dễ hơn rõ rệt
  • phòng “êm nền” hơn nhiều

Kết hợp rèm + bịt khe → gần mức phòng yên tĩnh.

Có thể áp dụng cho ban công, nhưng phải hiểu đúng một điều rất quan trọng:

👉 Ngoài trời không thể triệt tiêu toàn bộ tiếng ồn như trong phòng.
Vì âm thanh bay tự do, không gian mở → sóng phản xạ liên tục.

NHƯNG 👍 bạn vẫn có thể tạo “vùng yên tĩnh cá nhân” (quiet zone) ngay tại chỗ ngồi.

Kiểu như tai nghe chống ồn nhưng cho 1 cái ghế.


🎧 Nguyên lý khi dùng ngoài ban công

Ta không triệt cả không gian → chỉ triệt tại vị trí tai bạn.

Tạo một “bubble chống ồn” đường kính ~50–80cm quanh đầu.

👉 Đây là cách các hãng đang làm cho:

  • ghế máy bay
  • ghế làm việc chống ồn
  • buồng điện thoại công cộng

🪑 Cách bố trí chuẩn cho ban công

🔊 1️⃣ Loa KHÔNG đặt ở cửa sổ nữa

Ngoài trời → phải đặt loa quanh ghế ngồi.

Bố trí tốt nhất:

 
   Loa trái      Loa phải
        \        /
         \      /
          👤 (đầu)
           Ghế

Khoảng cách loa → đầu: 40–60 cm

👉 Anti-noise phải phát gần tai mới triệt được.


🎤 2️⃣ Micro đặt hướng ra đường

Micro vẫn phải thu tiếng trước khi nó tới bạn.

Đặt:

  • trên lan can
  • hướng ra đường
  • cao ngang đầu

🔊 3️⃣ Số loa cần dùng

Trong phòng: 1 loa đủ
Ngoài trời: cần 2 loa stereo

Vì đầu bạn có 2 tai → cần tạo trường âm quanh đầu.

Nếu chỉ 1 loa → hiệu quả giảm rất nhiều.


🧠 4️⃣ Nguyên lý hoạt động lúc này

Pipeline mới:

 
Micro → ESP32 → anti-noise stereo → 2 loa → triệt tại đầu

Bạn sẽ cảm nhận:

  • tiếng xe xa hơn
  • nền ồn giảm
  • dễ nói chuyện / làm việc

🎯 Hiệu quả thực tế ngoài ban công

Mức Cảm nhận
Không ANC ồn rõ
ANC 1 loa giảm nhẹ
ANC 2 loa giảm rõ
ANC + vách chắn rất dễ chịu

Ngoài trời thường đạt 15–30% giảm ồn
Nhưng cảm giác dễ chịu tăng rất nhiều.

Vì não người rất nhạy với bass ồn.


⭐ Mẹo cực mạnh (rất nên làm)

Thêm vách chắn nhỏ sau ghế:

  • Tấm gỗ
  • Rèm dày
  • Vách mút

Chỉ cần cao 1–1.2m phía sau lưng.

👉 Tác dụng:

  • chặn phản xạ âm
  • giữ “vùng chống ồn” ổn định hơn

Hiệu quả tăng gấp đôi luôn.


🏆 Setup lý tưởng cho ban công

✔ Micro hướng ra đường
✔ 2 loa hai bên ghế
✔ ESP32 chạy anti-noise
✔ Có tấm chắn phía sau ghế

=> Tạo bubble chống ồn cá nhân.

Bình luận
Nội dung này chưa có bình luận, hãy gửi bình luận đầu tiên của bạn.
VIẾT BÌNH LUẬN CỦA BẠN