Phong vũ biểu trong điện thoại thông minh là cảm biến MEMS đo áp suất khí quyển để xác định độ cao và dự báo thời tiết. Các phong vũ biểu hiện đại ghi lại áp suất trong dải từ 300 đến 1100 hPa với độ chính xác 1 hPa, tương ứng với sai số độ cao dưới 1 mét. Theo Bosch Sensortec BMP580, 2024, độ chính xác tuyệt đối của cảm biến áp suất hiện đại là ±0,5 hPa, cho phép xác định độ cao với độ chính xác 0,4 mét.
Những điểm chính
Phong vũ biểu trong điện thoại di động là cảm biến áp suất tuyệt đối thu nhỏ dựa trên công nghệ MEMS (Hệ thống Vi cơ điện tử). Nó đo áp suất khí quyển bằng hectopascal (hPa), tương đương với millibar. Chiếc điện thoại thông minh đại chúng đầu tiên có phong vũ biểu — Samsung Galaxy Note 2 (2012) — đã khởi đầu xu hướng tích hợp cảm biến vào các thiết bị cao cấp.
Các nhà dẫn đầu thị trường là Bosch Sensortec (dòng BMP) và STMicroelectronics (dòng LPS). Cảm biến BMP580 điển hình có kích thước 2,0×2,0×0,7 mm, tiêu thụ 1,3 µA ở chế độ năng lượng thấp và có dải đo 300–1250 hPa. Độ chính xác tương đối là ±0,08 hPa, cho phép phát hiện thay đổi độ cao 0,7 mét. Theo Bảng dữ liệu BMP580 (2024), mức nhiễu không vượt quá 0,2 Pa.
| Thông số | Giá trị |
|---|---|
| Dải đo | 300–1250 hPa |
| Độ chính xác tuyệt đối | ±0,5 hPa |
| Độ chính xác tương đối | ±0,08 hPa |
| Tiêu thụ điện | 1,3 µA (năng lượng thấp) |
| Kích thước | 2,0×2,0×0,7 mm |
| Giao diện | I²C / SPI |
Chức năng chính là tinh chỉnh độ cao trong định vị. Tại Mỹ, Ủy ban Truyền thông Liên bang (FCC) từ năm 2015 khuyến nghị trang bị phong vũ biểu trong điện thoại thông minh để cải thiện độ chính xác vị trí khi gọi khẩn cấp 911 — độ chính xác theo chiều dọc cứu sống trong các tòa nhà nhiều tầng.
Trái tim của phong vũ biểu MEMS là một màng silicon dày 1–3 micron, uốn cong dưới tác động của áp suất khí quyển. Màng được tích hợp với khoang chân không — áp suất tham chiếu. Để đo độ lệch, người ta sử dụng phương pháp điện dung hoặc áp điện trở.
Trong cảm biến điện dung (Bosch BMP), màng hoạt động như điện cực di động của tụ điện. Khi áp suất thay đổi, khe hở giữa màng và điện cực cố định thay đổi 0,1–1 nm, gây ra sự thay đổi điện dung 5–50 fF. Mạch chuyển đổi C/V (điện dung sang điện áp) khuếch đại tín hiệu đến mức đủ cho ADC 24-bit.
Phong vũ biểu MEMS chứa cảm biến nhiệt độ tích hợp, vì áp suất khí phụ thuộc trực tiếp vào nhiệt độ theo định luật P = ρRT. Nếu không bù, thay đổi nhiệt độ 1 °C gây ra sai số 0,1 hPa — tương đương 0,8 mét độ cao. Cảm biến hiện đại sử dụng hệ số hiệu chuẩn được lưu trong bộ nhớ OTP (Lập trình một lần) để hiệu chỉnh kỹ thuật số trong dải từ -40 đến +85 °C.
GPS xác định độ cao dựa trên phép đo tam giác tín hiệu vệ tinh — sai số thẳng đứng là 10–30 mét do hình học vệ tinh và độ trễ tầng điện ly. Phong vũ biểu cung cấp độ cao với độ chính xác 0,5–1 mét bằng công thức khí áp. Trong các tình huống tầm nhìn bầu trời hạn chế (hẻm núi đô thị, trong nhà), GPS có thể không khả dụng — phong vũ biểu luôn hoạt động.
Độ cao được tính bằng công thức: h = (T₀ / L) × (1 − (P / P₀)^(R×L / g)), trong đó T₀ là nhiệt độ ở mực nước biển, L là gradient nhiệt độ, P là áp suất đo được, P₀ là áp suất ở mực nước biển. Đơn giản hóa: thay đổi áp suất 1 hPa tương ứng với khoảng 8,4 mét ở độ cao thấp. Tính toán chính xác cần dữ liệu trạm khí tượng cho P₀.
Các hệ thống định vị hiện đại (Google Maps, Yandex Maps) sử dụng thuật toán lai: GPS cung cấp độ cao tuyệt đối với sai số 15 mét, phong vũ biểu cung cấp thay đổi tương đối với độ chính xác 0,5 mét. Bộ lọc Kalman kết hợp cả hai tín hiệu, xuất ra độ cao với độ chính xác 1–3 mét theo thời gian thực.
data class BaroReading(
val pressure: Float,
val altitude: Float
)
private val P0_SEA_LEVEL = 1013.25f
fun calculateAltitude(pressure: Float): Float {
return SensorManager.getAltitude(
P0_SEA_LEVEL, pressure
)
}
fun calibratePressure(
gpsAltitude: Float, baroPressure: Float
): Float {
// Hiệu chuẩn P0 theo độ cao GPS
val expectedPressure = P0_SEA_LEVEL *
Math.pow(1f - (0.0065f * gpsAltitude) / 288.15f, 5.255f)
.toFloat()
return P0_SEA_LEVEL * baroPressure / expectedPressure
}
Android cung cấp quyền truy cập vào phong vũ biểu qua Sensor.TYPE_PRESSURE. Dữ liệu được trả về bằng hectopascal (hPa), tương đương với millibar. Giá trị điển hình ở mực nước biển là khoảng 1013,25 hPa. Cảm biến thuộc loại Cảm biến Môi trường — nó không yêu cầu hiệu chuẩn từ người dùng và hoạt động ngay sau khi khởi tạo.
Phong vũ biểu không yêu cầu tốc độ lấy mẫu cao — SENSOR_DELAY_UI (67 ms) hoặc SENSOR_DELAY_NORMAL (200 ms) là hoàn toàn đủ. Áp suất khí quyển thay đổi chậm, tối đa 0,5–1 hPa mỗi giờ khi thời tiết thay đổi hoặc 1–2 hPa mỗi phút khi di chuyển trong thang máy. Tần suất quá mức chỉ làm hao pin.
class BarometerActivity : AppCompatActivity() {
private val sensorManager by lazy {
getSystemService(SENSOR_SERVICE) as SensorManager
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val barometer = sensorManager
.getDefaultSensor(Sensor.TYPE_PRESSURE)
barometer?.let { sensor ->
sensorManager.registerListener(
this, sensor,
SensorManager.SENSOR_DELAY_NORMAL
)
}
}
override fun onSensorChanged(event: SensorEvent) {
val pressure = event.values[0]
val altitude = SensorManager
.getAltitude(1013.25f, pressure)
updateUI(pressure, altitude)
}
}
Không phải tất cả thiết bị Android đều có phong vũ biểu — cảm biến không có trong các mẫu giá rẻ và nhiều thiết bị tầm trung. Trước khi sử dụng, hãy kiểm tra khả năng khả dụng qua PackageManager.hasSystemFeature(PackageManager.FEATURE_SENSOR_BAROMETER) hoặc qua sensorManager.getDefaultSensor(Sensor.TYPE_PRESSURE) — trả về null có nghĩa là không có cảm biến.
Phong vũ biểu được sử dụng trong nhiều ứng dụng — từ khí tượng học đến trình theo dõi thể thao và định vị trong nhà. Ứng dụng WeatherPro sử dụng dữ liệu phong vũ biểu để xây dựng biểu đồ áp suất 24 giờ, cho phép dự báo thay đổi thời tiết trước 6–12 giờ với độ chính xác lên tới 80%.
Khi thời tiết thay đổi, áp suất khí quyển thay đổi 1–3 hPa trong 6–12 giờ. Vùng áp cao (khí áp cao) cho chỉ số 1020–1040 hPa, vùng áp thấp (khí áp thấp) — 970–1010 hPa. Những thay đổi này cần được xem xét khi tính độ cao: nếu hôm qua áp suất mực nước biển là 1013 hPa và hôm nay là 1025 hPa, sai số xác định độ cao nếu không hiệu chỉnh P₀ sẽ là khoảng âm 100 mét. Các ứng dụng định vị hiện đại lấy áp suất tham chiếu P₀ qua internet từ trạm khí tượng gần nhất.
Trong trung tâm thương mại và sân bay, phong vũ biểu được sử dụng để xác định tầng người dùng đang ở. Chênh lệch áp suất giữa các tầng của tòa nhà điển hình (chiều cao tầng 3–4 mét) là 0,35–0,5 hPa — đủ để phát hiện đáng tin cậy. Kết hợp phong vũ biểu với phép đo tam giác Wi-Fi, định vị trong nhà xác định vị trí với độ chính xác lên tới 5 mét.
Thế hệ mới của phong vũ biểu chống nước (Infineon DPS368, 2024) chịu được ngâm sâu tới 10 mét và có độ chính xác ±0,05 hPa. Sự phát triển của công nghệ MEMS đang đưa phong vũ biểu đến gần độ chính xác của chuẩn thạch anh — dự kiến đến năm 2027, sai số điển hình sẽ giảm xuống ±0,2 hPa.
Câu hỏi thường gặp
Bạn có thể kiểm tra bằng ứng dụng Sensor Test từ Google Play. Phong vũ biểu có trong tất cả điện thoại thông minh cao cấp Samsung Galaxy S và Note (từ S3), Google Pixel (tất cả mẫu), iPhone 6 và mới hơn. Trong các mẫu giá rẻ, cảm biến thường không có.
Sử dụng công thức khí áp: áp suất khí quyển giảm theo độ cao. Ở mực nước biển, áp suất là 1013,25 hPa, ở độ cao 500 mét — khoảng 955 hPa. Cứ 8,4 mét lên cao làm giảm áp suất khoảng 1 hPa. Để chính xác, cần hiệu chuẩn theo trạm khí tượng gần nhất.
Có, trong các ứng dụng trạm khí tượng. Giảm áp suất mạnh 3–5 hPa trong 3 giờ cho thấy xoáy thuận đang đến gần và thời tiết xấu đi. Áp suất tăng là dấu hiệu cải thiện. Tuy nhiên, để dự báo chính xác cần dữ liệu từ dịch vụ khí tượng.
Không — việc hiệu chuẩn diễn ra tự động. Nhà sản xuất lập trình hệ số hiệu chuẩn tại nhà máy. Tuy nhiên, nếu bạn sống ở độ cao trên 1000 mét so với mực nước biển, nên đặt áp suất tham chiếu trong ứng dụng định vị để cải thiện độ chính xác.
SENSOR_DELAY_NORMAL (200 ms) là tối ưu — áp suất khí quyển thay đổi chậm. Để theo dõi chuyển động trong thang máy, 200 ms là đủ. Tần suất quá mức (FASTEST) không mang lại lợi ích nhưng làm tăng tiêu thụ điện 20–30%.
Tổng kết
Chúng tôi sẽ phát triển ứng dụng di động chìa khóa trao tay
IT Sectr tạo các ứng dụng iOS và Android cho các công ty khởi nghiệp và doanh nghiệp từ năm 2017. Chúng tôi sẽ tư vấn và đề xuất giải pháp tốt nhất cho bạn.
Đọc thêm