Đo dao động công trình: chọn gia tốc kế theo mức nhiễu, dải đo, tần số lấy mẫu và độ dài bản ghi
Đo dao động công trình nhà, sàn, cầu, móng máy: dải tần và biên độ điển hình, chọn gia tốc kế theo mật độ nhiễu µg/√Hz, MEMS hay IEPE, tần số lấy mẫu 2,56 lần, độ dài bản ghi, quy trình đo.
Đo dao động công trình (nhà cao tầng, sàn, cầu, móng máy) để tìm tần số riêng, đánh giá cảm giác rung khi người đi lại, hoặc theo dõi ảnh hưởng của thi công, máy móc. Phần khó không nằm ở chương trình mà ở chỗ chọn đúng thiết bị: dao động công trình thường rất nhỏ và rất chậm, nhiều gia tốc kế MEMS rẻ tiền có nhiễu lớn hơn chính tín hiệu cần đo. Bài này hướng dẫn chọn gia tốc kế theo dải tần và mức nhiễu, chọn tần số lấy mẫu, độ dài bản ghi, kèm script Python tính sơ bộ cho từng trường hợp.
1. Biết trước mình đo cái gì

- Dải tần: công trình càng lớn tần số riêng càng thấp. Nhà 20 tầng có tần số riêng thứ nhất cỡ 1 Hz, nhà rất cao xuống dưới 0,5 Hz; sàn bê tông 5–15 Hz; máy quay ở tần số quay và các bội số.
- Biên độ: dao động nền (gió, giao thông) của nhà cao tầng chỉ cỡ phần mười mg (1 mg ≈ 0,01 m/s²); sàn khi người đi vài mg; cầu đi bộ vài chục mg; máy móc tới hàng trăm mg.
- Mục đích: tìm tần số riêng cần độ phân giải tần số nhỏ (bản ghi dài); đánh giá rung theo tiêu chuẩn cần đúng đại lượng (gia tốc hay vận tốc) và đúng bộ lọc tần số của tiêu chuẩn đó.
2. Chọn gia tốc kế theo mức nhiễu

Datasheet gia tốc kế ghi mật độ nhiễu, đơn vị µg/√Hz. Nhiễu RMS trong dải tần cần đo bằng mật độ nhiễu nhân căn bậc hai của băng thông. Ví dụ MPU-6050 khoảng 400 µg/√Hz, đo dải 0,2–5 Hz thì nhiễu khoảng 0,9 mg, lớn hơn dao động nền 0,3 mg của nhà cao tầng: đo được toàn nhiễu. Cùng MPU-6050 đó đo cầu đi bộ, máy bơm thì dư sức.
- MEMS phổ thông (MPU-6050 và tương tự): máy móc, cầu nhỏ, thí nghiệm, học tập. Rẻ, nối I2C với ESP32 dễ dàng.
- MEMS nhiễu thấp (loại ADXL355): sàn, cầu, kết cấu nhỏ; đo nhà cao tầng thì ở mức biên, phải ghi lâu và trung bình nhiều đoạn.
- Gia tốc kế áp điện IEPE loại địa chấn, cảm biến cân bằng lực: đo dao động nền của nhà cao tầng, cầu lớn; giá cao, cần bộ ghi chuyên dụng.
Ngoài nhiễu, kiểm tra thêm: dải đo (±2 g là đủ cho công trình; máy có va đập cần lớn hơn), đáp ứng tần số thấp (gia tốc kế IEPE thường không đo được dưới 0,5–1 Hz, MEMS đo được cả thành phần tĩnh), độ trôi theo nhiệt khi đo dài. Cấu tạo MEMS và áp điện có ở bài cảm biến gia tốc: MEMS, áp điện.
Script dưới đây tính nhiễu RMS, tỉ số tín hiệu trên nhiễu, tần số lấy mẫu và độ dài đoạn ghi cho các trường hợp mẫu; sửa danh sách để tính cho công trình của mình. Chạy bằng Python 3:
# PYWORLD.VN - Chọn gia tốc kế đo dao động công trình: so mức tín hiệu với mức nhiễu của cảm biến trong dải tần cần đo
# PYWORLD.VN - Nhiễu RMS = mật độ nhiễu (µg/√Hz) × √(băng thông); tần số lấy mẫu ≥ 2,56 × tần số cao nhất; độ dài bản ghi = 1 / độ phân giải tần số
# PYWORLD.VN - Chạy: python chon_gia_toc_ke.py (bảng các trường hợp mẫu, số điển hình để chọn sơ bộ)
"""Mật độ nhiễu lấy theo datasheet điển hình; biên độ dao động của từng loại công trình là bậc độ lớn, không thay cho đo thực tế."""
import math
CAM_BIEN = {"MPU-6050": 400.0, "ADXL355": 22.5, "IEPE địa chấn": 0.5} # µg/√Hz
TRUONG_HOP = [ # tên, f thấp, f cao (Hz), gia tốc RMS dự kiến (mg), độ phân giải tần số cần (Hz)
("Nhà cao tầng, dao động nền", 0.2, 5, 0.3, 0.01),
("Sàn nhà, người đi lại", 3, 20, 5, 0.1),
("Cầu đi bộ, cầu nhỏ", 0.5, 15, 50, 0.02),
("Móng máy, máy bơm", 5, 500, 300, 0.5),
]
def nhieu_mg(mat_do_ug: float, f_thap: float, f_cao: float) -> float:
return mat_do_ug * math.sqrt(f_cao - f_thap) / 1000.0
def tan_so_lay_mau(f_cao: float) -> float:
"""Tần số lấy mẫu tròn lên các mức thường có của cảm biến, bộ ghi."""
can = 2.56 * f_cao
return next((f for f in (10, 20, 50, 100, 200, 500, 1000, 2000, 4000) if f >= can), can)
if __name__ == "__main__":
for ten, f1, f2, a_mg, df in TRUONG_HOP:
fs = tan_so_lay_mau(f2)
print(f"{ten}: {f1:g}-{f2:g} Hz, du kien {a_mg:g} mg RMS")
for cb, n in CAM_BIEN.items():
nh = nhieu_mg(n, f1, f2)
print(f" {cb:<13} nhieu {nh:8.4f} mg ti so tin hieu/nhieu {a_mg / nh:8.1f} {'dung duoc' if a_mg / nh >= 10 else 'khong du'}")
print(f" lay mau {fs:g} Hz; do phan giai {df:g} Hz -> moi doan {1 / df:g} s ({int(fs / df)} mau)")
3. Tần số lấy mẫu và độ dài bản ghi
- Lấy mẫu ít nhất 2,56 lần tần số cao nhất cần xem (con số quen dùng trong máy phân tích phổ, dư hơn mức tối thiểu 2 lần để bộ lọc chống chồng phổ có chỗ dốc xuống). Muốn xem tới 20 Hz thì lấy mẫu từ 51,2 Hz, làm tròn 100 Hz.
- Bật bộ lọc chống chồng phổ: dao động tần số cao hơn một nửa tần số lấy mẫu sẽ "giả dạng" thành tần số thấp. Gia tốc kế MEMS thường có bộ lọc số chỉnh được (DLPF), đặt tần số cắt thấp hơn một nửa tần số lấy mẫu.
- Độ phân giải tần số = 1 / thời gian mỗi đoạn ghi. Phân biệt hai tần số riêng 0,50 và 0,52 Hz cần độ phân giải 0,01 Hz, tức mỗi đoạn 100 giây. Đo dao động nền thường ghi 20–30 phút, cắt thành nhiều đoạn rồi lấy trung bình phổ để giảm nhiễu.
Cách tính phổ FFT trên ESP32 và đọc gia tốc kế ở tần số lấy mẫu cố định có ở bài cùng cụm về FFT trên ESP32.
4. Quy trình một lần đo

- Ước lượng dải tần, biên độ từ thiết kế, từ công trình tương tự, hoặc từ một lần đo thử bằng thiết bị nhạy.
- Chọn cảm biến theo nhiễu (bảng trên), dải đo, đáp ứng tần số thấp.
- Gá lắp: gắn chặt vào kết cấu chịu lực (không gắn lên lớp gạch ốp, trần treo), đúng hướng trục; ghi lại vị trí, hướng. Cách gá và ảnh hưởng của giá gá có ở bài gá lắp gia tốc kế theo ISO 5348.
- Ghi đủ dài, lọc, tính phổ, lấy trung bình; ghi kèm thời tiết (gió), hoạt động xung quanh.
Kiểm tra thiết bị trước khi đo bằng bộ hiệu chuẩn hiện trường như bài máy đo rung và kiểm tra hiện trường; hiệu chuẩn tĩnh MEMS bằng trọng trường có ở bài hiệu chuẩn tĩnh gia tốc kế MEMS.
5. Lỗi hay gặp
| Hiện tượng | Nguyên nhân | Cách xử lý |
|---|---|---|
| Phổ không thấy đỉnh nào rõ | Nhiễu cảm biến lớn hơn tín hiệu | Cảm biến nhiễu thấp hơn; ghi lâu, trung bình nhiều đoạn |
| Có đỉnh lạ ở tần số không giải thích được | Chồng phổ do thiếu bộ lọc; đỉnh của giá gá | Bật lọc chống chồng phổ; gá cứng hơn |
| Hai lần đo cùng chỗ cho tần số khác nhau | Độ phân giải tần số quá thô, đoạn ghi ngắn | Ghi dài hơn |
| Đường gia tốc trôi dần | Độ lệch không và trôi nhiệt của MEMS | Bỏ thành phần trung bình, lọc thông cao rất thấp |
| Biên độ lớn bất thường ở một điểm | Cảm biến gắn lên chi tiết lỏng | Gắn vào kết cấu chịu lực |
Bài cùng cụm chủ đề: phân tích FFT rung động bằng ESP32; đo chuyển vị bằng cảm biến laser; giới hạn rung theo DIN 4150-3.
Xem thêm