Tại sao đôi khi độ cao GPS nhảy?


14

Tôi hiện đang phát triển một ứng dụng nhỏ trong Android sử dụng GPS.

Khi tôi nhấp vào nút, tôi bắt đầu ghi lại "bản nhạc". Nếu tôi đi bộ xung quanh tôi lưu vị trí của tôi mỗi giây vào một tập tin. Điều này hoạt động hoàn hảo ngoại trừ một điều:

Tôi không chỉ lưu kinh độ và vĩ độ mà cả độ cao hiện tại. Nhìn qua dữ liệu tôi nhận ra rằng độ cao nhảy một số lần.

Ví dụ: các giá trị độ cao trông như thế này:

271.4073616670083; 271.5165709069828; 345,6; 271.58538936056465;

Các giá trị khoảng 270 mét là khá tốt. Nhảy như thế này xảy ra bất thường nhưng khá thường xuyên (cứ sau 15 giây lại có ít nhất 1 lần nhảy). Và các giá trị luôn nhảy lên một cái gì đó khoảng 340 mét.

Trong khi ghi lại bản nhạc bằng ứng dụng của mình, tôi cũng đã đi bộ xung quanh với một ứng dụng có tên là NMEA Recorder. Ứng dụng này cũng ghi lại các giá trị độ cao nhưng chúng không nhảy như các giá trị tôi nhận được.

Tôi biết rằng các giá trị độ cao của GPS (được tính toán bởi WGS84-Ellipsoid) không chính xác nhưng điều đó vẫn không giải thích được tại sao đôi khi các giá trị bị giật.

Sẽ thật tuyệt nếu ai đó có thể cho tôi biết tại sao những cú nhảy như thế này lại xảy ra.


1
Còn tọa độ lon / lat thì sao? Họ có khác nhau không?
RK

Tôi chưa có vấn đề gì với kinh độ hay vĩ độ. Đó chỉ là độ cao đôi khi nhảy.
Siggy

Câu trả lời:


20

Hãy tưởng tượng một số vệ tinh trải đều trên bạn. Bây giờ chỉ chọn một vệ tinh. Hình dung một quả cầu tập trung quanh vệ tinh đó với bán kính khoảng cách chính xác của bạn với nó. Làm tương tự cho mọi vệ tinh trong tầm nhìn.

Những gì bạn đang thấy bây giờ là một loạt các quả cầu giao nhau chính xác nơi bạn đang đứng. Đó là cách đọc GPS hoạt động, về cơ bản.

Thật không may, những quả cầu này giao nhau tại nhiều hơn một điểm. Như bạn sẽ thấy trong hình ảnh sau đây, có thể nhận được đọc sai tùy thuộc vào VDOP. Thông thường, một cấu hình vệ tinh khá thấp hoặc cao trên đường chân trời sẽ cung cấp cho bạn đọc này.

nhập mô tả hình ảnh ở đây

Nếu bạn muốn làm cho ứng dụng của mình chính xác hơn, bạn sẽ cần xem xét chất lượng của các tín hiệu và (nếu có) tính toán DOP trước khi 'tin tưởng' vị trí.


Nhưng sau đó, tọa độ sẽ không sai?
RK

2
@RK Tùy thuộc vào cách các quả cầu giao nhau, phần lớn lỗi có thể thẳng đứng.
Dan Neely

2

Là một kỹ sư đã làm việc với các vệ tinh GPS, tôi có thể đưa ra lời giải thích - nó phải liên quan đến số lượng vệ tinh GPS mà bạn đang nhận được tín hiệu từ bài đọc của mình. Có 24 vệ tinh đang hoạt động trong Hệ thống Định vị Toàn cầu hiện tại và tùy thuộc vào vị trí của bạn (bên trong tòa nhà, dưới tán cây, giữa các tòa nhà cao tầng, v.v. bạn sẽ chọn tín hiệu từ 3 hoặc 4 vệ tinh. Tín hiệu từ 3 vệ tinh giao nhau tại cung giữa các quả cầu và dữ liệu độ cao có thể không chính xác. Tín hiệu từ 4 vệ tinh khá chính xác khi chúng giao nhau tại một điểm! Hy vọng điều này sẽ giúp ích.


Trong công ty của tôi, chúng tôi đã có một số mô-đun GPS công nghiệp được phát triển tùy chỉnh và họ LUÔN cung cấp vị trí chính xác nhưng trong Android cùng lúc tại nhiều thiết bị khác nhau đôi khi đưa ra các vị trí JUMPING gần vị trí thực tế. Tại sao nó lại xảy ra?
Nhà phát triển
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.