Hiệu chỉnh thời gian

Một phần của tài liệu Nghiên cứu phát triển vi mạch định vị toàn cầu GNSS thiết kế khối giải mã tính toán vị trí (Trang 63)

Thời gian truyền tín hiệu từ vệ tinh tới máy thu đƣợc kí hiệu là . Kí hiệu 𝑐

là vận tốc ánh sáng trong chân không, và khoảng cách giả định đƣợc định nghĩa là:

54

𝑐 (2.9)

Gọi một mốc (epoch) bất kì trong thời gian GPS (GPST) là . Đồng hồ ở vệ tinh và đồng hồ ở bộ thu không đồng bộ với GPST. Do đó chúng ta đƣa ra khoảng dịch đồng hồ đƣợc định nghĩa là

𝑑 (2.10)

( ) 𝑑 (2.11)

Trong phƣơng trình sau chúng ta thay thế: 𝑑 𝑎 𝑎 ( ) vì đã cho từ lịch thiên văn:

( ) (𝑎 𝑎 ( ) ) (2.12)

Số hạng bên trái đƣợc sử dụng nhƣ là đối số khi tính toán vị trí vệ tinh. Phƣơng trình 2.9 đƣợc viết lại dƣới dạng sau:

𝑐 (2.13)

Một cách sử dụng phƣơng trình này là để xem nhƣ ti đã biết. Đó là mốc thời gian vì đƣợc định nghĩa theo các số hạng của đồng hồ máy thu. Khoảng cách giả định thì cũng đƣợc coi nhƣ là có thể đo đƣợc. Vì có thể đƣợc tính và sau khi hiệu chỉnh khoảng dịch đồng hồ vệ tinh 𝑑 chúng ta nhận đƣợc thời gian phát theo GPST. Đây là thủ tục đƣợc các máy thu triển khai trên phần cứng sử dụng.

Với các máy thu triển khai phần mềm, trƣờng hợp này có một sự khác biệt nhỏ. Thời gian là chung cho tất cả các sự quan sát khoảng cách đƣợc xác định dƣới dạng thời gian phát bản tin ở các vệ tinh. Do đó việc tính toán vị trí của vệ tinh

k đƣợc hoàn thành ở:

𝑑 (2.14)

Chỉ có “thời gian máy thu” đƣợc sử dụng làm thời gian tƣơng đối của của việc thu mỗi một trong số các vệ tinh và do đó mà đƣa ra các khoảng cách tới từng vệ tinh.

55

Một hệ quả của định nghĩa thời gian này là các tọa độ vệ tinh đƣợc tính toán trực tiếp trên hệ tọa độ ECEF và do đó các tọa độ vệ tinh không bị quay đối với trục một góc bằng thời gian truyền nhân với vận tốc quay của trái đất.

2.4.2.Phương trình quan sát và phương pháp giải gần đúng phương trình quan sát

Giải thuật thông dụng nhất đƣợc sử dụng trong việc tính toán vị trí từ các khoảng cách giả định là giải thuật dựa trên phƣơng pháp bình phƣơng bé nhất. Phƣơng pháp này đƣợc sử dụng khi có nhiều hơn một sự quan sát không đƣợc biết. Phần này chỉ ra làm thế nào phƣơng pháp bình phƣơng bé nhất đƣợc sử dụng để tìm kiếm vị trí máy thu từ các khoảng cách tới bốn hoặc hơn bốn vệ tinh.

Kí hiệu khoảng cách hình học giữa vệ tinh k và máy thu là , kí hiệu 𝑐 là vận tốc ánh sáng, kí hiệu dti là khoảng dịch đồng hồ ở máy thu, kí hiệu 𝑑 là khoảng dịch đồng hồ ở vệ tinh, kí hiệu là trễ gây bởi tầng đối lƣu và là trễ gây bởi tầng điện ly và kí hiệu 𝑒 là sai số quan sát khoảng cách. Khi đó phƣơng trình quan sát cơ bản đối với khoảng cách là:

𝑐(𝑑 𝑑 ) 𝑒 (2.15)

Khoảng cách hình học giữa vệ tinh và máy thu đƣợc tính nhƣ sau:

√( ) ( ) ( ) (2.16)

Thay phƣơng trình 2.15 vào phƣơng trình 2.16 ta đƣợc:

√( ) ( ) ( ) 𝑐(𝑑 𝑑 )

𝑒 (2.17)

Chúng ta tính toán vị trí của vệ tinh ( ) từ các tham số thiên văn ở trong lịch thiên văn phát quảng bá mà chứa cả khoảng dịch đồng hồ vệ tinh 𝑑 .

Trễ gây bởi tầng đối lƣu đƣợc tính thông qua một mô hình tiên nghiệm riêng; trễ gây bởi tầng điện ly có thể đƣợc ƣớc lƣợng từ một mô hình tiên nghiệm khác và các hệ số của một phần các lịch thiên văn phát quảng bá. Phƣơng trình chứa bốn thành phần chƣa biết và 𝑑 số hạng sai số 𝑒 đƣợc tối thiểu hóa nhờ sử

56

dụng phƣơng pháp bình phƣơng nhỏ nhất. Để tính toán vị trí của máy thu, cần ít nhất bốn khoảng cách giả định.

Phƣơng trình 2.17 là không tuyến tính đối với vị trí máy thu ( ), vì thế phƣơng trình đƣợc tuyến tính hóa trƣớc khi sử dụng phƣơng pháp bình phƣơng nhỏ nhất.

Chúng ta phân tích số hạng không tuyến tính trong phƣơng trình 2.17

𝑓( ) √( ) ( ) ( ) (2.18)

Sự tuyến tính hóa bắt đầu bằng cách tìm một vị trí ban đầu cho máy thu ( ). Điểm này thƣờng đƣợc chọn là tâm của trái đất ( ).

Các gia số đƣợc định nghĩa là:

(2.19)

Các tọa độ gần đúng của máy thu đƣợc cập nhât. Sử dụng khai triển Taylor của

𝑓( ), ta có: 𝑓( ) 𝑓( ) 𝑓( ) 𝑓( ) 𝑓( ) (2.20)

Phƣơng trình 2.20 chỉ chứa các số hạng bậc nhất; do đó hàm số này xác định một vị trí xấp xỉ. Đạo hàm riêng phần trong phƣơng trình 2.20 là:

𝑓( ) 𝑓( )

57

𝑓( )

Kí hiệu là khoảng cách đƣợc tính từ vị trí gần đúng của máy thu; phƣơng trình quan sát đƣợc tuyến tính hóa trở thành:

𝑐(𝑑 𝑑 ) 𝑒 (2.21) Trong đó rõ ràng chúng ta có: √( ) ( ) ( ) (2.22)

2.4.3.Tính toán tọa độ máy thu bằng phương pháp bình phương bé nhất

Bài toán bình phƣơng bé nhất đƣợc đƣa ra khi một hệ thống 𝑏 không giải đƣợc. có hàng và cột với ; số lần quan sát 𝑏 , 𝑏 nhiều hơn các tham số tự do . Lựa chọn tốt nhất ở đây là chúng ta gọi ̂ là vector làm tối thiểu hóa chiều dài của vector sai số 𝑒̂ 𝑏 ̂. Nếu chúng ta đo chiều dài theo cách thông thƣờng, để mà ‖𝑒‖ (𝑏 ) (𝑏 ) là tổng của các bình phƣơng sai số thành phần, việc tối thiểu hóa dạng toàn phƣơng này đƣa tới phƣơng trình chuẩn sau: ̂ 𝑏 Hay ̂ ( ) 𝑏 (2.23) Và vector lỗi là: 𝑒̂ 𝑏 ̂ (2.24)

Ma trận hiệp biến của các tham số ̂ là:

̂

̂ ( ) ̂ 𝑒̂ 𝑒̂

58

Phƣơng trình quan sát đƣợc tuyến tính hóa 2.23 có thể đƣợc viết lại theo dạng vector nhƣ sau: * + [ 𝑐 𝑑 ] 𝑐𝑑 𝑒 (2.26)

Chúng ta sắp xếp lại phƣơng trình này sao cho giống với dạng thông thƣờng của bài toán bình phƣơng bé nhất 𝑏:

* + [ 𝑐 𝑑 ] 𝑐𝑑 𝑒 (2.27)

Một nghiệm duy nhất không thể đƣợc tìm từ một phƣơng trình đơn lẻ. Đặt

𝑏 𝑐𝑑 𝑒 . Khi đó nghiệm cuối cùng đến từ:

[ ] [ 𝑐𝑑 ] 𝑏 𝑒 (2.28)

Nếu có một nghiệm duy nhất . Nghiệm này phải đƣợc cộng vào giá trị vị trí gần đúng của máy thu để có đƣợc vị trí gần đúng tiếp theo.

59

Việc lặp tiếp theo bắt đầu lại từ phƣơng trình 2.26 tới phƣơng trình 2.29 với ,0 đƣợc thay thế bởi ,1 . Những lần lặp này tiếp tục cho đến khi nghiệm

có giá trị khoảng vài mét. Thƣờng thì hai tới ba lần lặp là đủ nhận đƣợc kết quả mong muốn đó.

Tới lúc này chúng ta đã nhận đƣợc tọa độ máy thu với độ chính xác chấp nhận đƣợc. Muốn tăng độ chính xác của phép ƣớc lƣợng, chúng ta có thể tăng số lần lặp trong thủ tục tính toán vị trí, nhƣng nếu số lần lặp tăng chúng ta phải trả giá về thời gian đáp ứng, do đó tùy từng điều kiện mà chúng ta lựa chọn số lần lặp và độ chính xác thích hợp.

2.5. Độ chính xác của phép tính toán vị trí

Ma trận hiệp biến của tham số ̂, đƣợc trình bày trong công thức (2.25) có chứa các dữ liệu quyết định đến độ chính xác của phép tính toán vị trí.

Ma trận hiệp biến ̂ là một ma trận nếu ta chỉ tính toán vị trí ( )

của máy thu và sẽ là ma trận 4x4 nếu ta tính toán 4 thông số ( 𝑐 ). Ma trận này là ma trận dƣơng xác định, vì vậy tồn tại một ma trận nghịch đảo của nó và ma trận nghịch đảo này cũng là một ma trận dƣơng xác định. Để dễ dàng trong việc tính toàn, trong phần này ta sử dụng hệ tọa độ có gốc tại ( ̂ ̂ ̂) và có các trục tọa độ cùng phƣơng, cùng hƣớng với các trục của hệ tọa độ địa tâm địa tĩnh đã trình bày ở phần 2.4. Trong hệ tọa độ mới này chọn điểm ( ) nằm trên một bề mặt có phƣơng trình:

̂ 𝑐 (2.30)

Nếu ̂ là ma trận đƣờng chéo, ta có thể biến đổi 2.30 thành:

𝑐 𝑐 𝑐 (2.30)

Nếu ̂ không phải là ma trận đƣờng chéo, nó có thể đƣợc biễn đôi thành ma trận đƣờng chéo bằng các phép xoay ma trận.

60

Vì ̂ là ma trận dƣơng xác định, bề mặt đang xét có dạng là bề mặt elip, và ma trận này chính là khoảng xác định elip của một điểm nằm trên bề mặt elip. Gọi

𝑎 là xác suất mà vị trí chính xác của máy thu nằm trong mặt elip. Với 𝑎 , và 𝑐 đƣợc cho bới , hệ số tỉ lệ của khoảng xác định elip là

𝑐 √ .

Để tăng xác suất mà vị tri chính xác của máy thu nằm trong khoảng xác định elip, ta có thể tăng xác suất 𝑎, tăng kích thƣớc các trục của elip, tăng giá trị 𝑐, hoặc tăng cả 3 giá trị nêu trên.

Nhắc lại ma trận hiệp biến trong hệ tọa độ địa tâm địa tĩnh đã trình bày trong công thức (2.28): [ ] (2.31)

Biến đổi ma trận hiệp biến trong hệ trục tọa độ địa tâm địa tĩnh thành ma trận hiệp biến trong hệ trục tọa độ đang xét, có tọa độ (𝑒 ). Xét ma trận con không chứa thành phần hiệu chỉnh thời gian 𝑐 của ma trận , sau khi biến đổi với ma trận , ta có:

[

] (2.32)

Trong thực tế, ta có thể sử dụng đƣợc mốt số dạng của độ chính xác tính toán (dilution of precision) nhƣ sau:

Độ chính xác hình học: √ √ ( )

Độ chính xác theo phƣơng ngang: √

61 Độ chính xác thời gian:

Độ chính xác theo phƣơng dọc:

Cả 5 giá trị độ chính xác DOP kể trên đều không có thứ nguyên, dựa trên sai số về khoảng cách để ƣớc lƣợng tìm ra sai số về vị trí. Phƣơng trình mối quan hệ giữa 5 đại lƣợng kể trên là:

Tại một thời điểm, luôn có những vệ tinh có vị trí trên quỹ đạo thuận lợi cho việc quan sát và ƣớc lƣợng hơn các vệ tinh khác. Vì vậy, khi thu đƣợc nhiều tín hiệu vệ tinh đồng thời, có thể sử dụng các phƣơng pháp để chỉ chọn sử dụng những vệ tinh có vị trị trên quỹ đạo thuận lợi nhất cho việc quan sát nhằm nâng cao độ chính xác cho phép tính toán dữ liệu định vị PVT. [1] chỉ ra rằng sự quan sát vệ tinh đạt đƣợc tốt nhất khi và tính toán vị trí với tối thiểu 5 vệ tinh.

62

CHƢƠNG 3. TRIỂN KHAI KHỐI GIẢI MÃ TÍNH

TOÁN VỊ TRÍ

3.1. Thuật toán

Phần này sẽ trình bày các thuật toán đƣợc áp dụng cho nhiệm vụ giải mã và tính toán vị trí của phần giải mã và tính toán vị trí. Trong phần này, mỗi bộ giá trị của một vệ tinh trong quá trình tính toán có thể đƣợc gọi là một kênh.

3.1.1.Đồng bộ các bít dữ liệu

Thuật toán này đƣợc thực hiện là bƣớc đầu tiên trong quá trình sau khi nhận đƣợc các mẫu tín hiệu từ khối bám kênh. Sau khi thực hiện phần bám kênh xong thì dữ liệu đầu ra của phần bám kênh là năng lƣợng trên kênh P và số mẫu đã đƣợc xác định sẽ phải đƣợc lƣu lại để tiến hành phần giải mã và tính toán ra vị trí. Đồng thời từ các dữ liệu đầu ra của phầm bám kênh cũng có thể xác định đƣợc các vệ tinh khả dụng cho khối giải mã tính toán vị trí. Trong các bƣớc tính toán đồng bộ các bít dữ liệu các kênh sẽ đƣợc xử lý qua các bƣớc chính:

 Chuyển đổi năng lƣợng kênh P thành các bít dữ liệu

 Xác định thời điểm bắt đầu của khung dữ liệu (hay “đồng bộ”)

 Kiểm tra đảm bảo xác định đúng khung dữ liệu

 Cuối cùng là kiểm tra tính toàn vẹn của dữ liệu đã đƣợc đồng bộ

Thuật toán đồng bộ các bít dữ liệu sẽ xử lý trên năng lƣợng kênh P có tốc độ 1000 biểu tƣợng mỗi giây. Còn tốc độ dữ liệu ta cần phải chuyển đổi về là 50 bít mỗi giây. Ở đây có hai hƣớng xử lý:

 Chuyển đổi từ tốc độ 1000 biểu tƣợng mỗi giây về thành 50 bít mỗi giây rồi tiến hành đồng bộ và các bƣớc tiếp theo.

 Hoặc đồng bộ ở tốc độ 1000 biểu tƣợng mỗi giây rồi biến đổi về 50 bít mỗi giây và xử lý các bƣớc tiếp theo.

63

Nhân chuỗi bit mào đầu lên 20 lần

Kết thúc thành công Bắt đầu

Tương quan chéo

Tìm các đỉnh của chuỗi kết quả tương

quan Đỉnh có thời điểm X ms, tìm X+6000 ms Chuỗi giá trị đầu vào X+6000 ms có phải là 1 đỉnh không? Không X+6000 ms có tồn tại không? Có Có

Thông báo không thành công

Không Chuyển đổi thành

dạng bit 1 và -1

Kiểm tra parity khung dữ liệu thành công? Không Có X là thời điểm bắt đầu khung dữ liệu Kiểm tra parity khung dữ liệu Kết thúc thất bại

Hình 3-1 Sơ đồ thuật toán đồng bộ bít dữ liệu

Thuật toán này làm cách thứ 2 cũng là cách đƣợc [1] gợi ý thực hiện. Ƣu điểm của cách này là độ phân giải tín hiệu cao hơn nên tránh đƣợc những sai số có thể xảy ra. Các thủ tục để đồng bộ bít dữ liệu còn bao gồm thêm 2 bƣớc nữa là kiểm tra trong chuỗi kết quả tƣơng quan và kiểm tra parity, để đảm bảo tính toàn vẹn dữ liệu.

64

Kết thúc thất bại Bắt đầu

Chuỗi 60 bít (2 từ HOW bà TLM) đầu khung dữ liệu và

2 bit D29*, D30* của khung dữ liệu liền trước

Không thực hiện đảo bít D1, ... D24 để nhận được d1, ... d24 Bít D30* = 0 ? Thực hiện đảo bít D1, ... D24 để nhận được d1, ... d24 Có Không Thay d1, ... d24 và D29*, D30* vào phương trình kiểm tra (Bảng 2,2) Các bit D1, ... D30 tính toán ra có bằng các bit đầu vào D1, ...,

D30 không ?

Kiểm tra parity thành công

Kiểm tra parity thất bại

Không

Kết thúc thành công

Hình 3-2 Sơ đồ thuật toán kiểm tra parity trong đồng bộ các bít dữ liệu

Chuỗi mã biểu tƣợng này đã đƣợc điều chế trải phổ ở máy phát, vì vậy các bít dữ liệu trong phần này là 1 và -1. Cũng có nghĩa là ta phải thực hiện lấy trị tuyệt đối khi tìm đỉnh của chuỗi giá trị tƣơng quan. Chuỗi bít mào đầu có độ dài ngắn, do đó có khả năng xuất hiện ngẫu nhiên những chuỗi bít không phải là chuỗi mào đầu cũng có giá trị vƣợt ngƣỡng sau khi thực hiện tƣơng quan. Cần thiết phải xác định tại thời điểm 6000ms sau có xuất hiện chuỗi mào đầu tƣơng tự hay không.

65

Kể cả khi một chuỗi bít đã thỏa mãn 2 điều kiện này, vẫn có xác suất ngẫu nhiên đó không phải là chuỗi mào đầu của khung dữ liệu. Lúc này thay vì lặp lại bƣớc tìm ở 6000ms tiếp theo, ta thực hiện kiểm tra parity nhƣ sơ đồ trình bày trong hình 3.2. Ta kiểm tra parity trên 1240 mẫu tín hiệu, bao gồm 40 mẫu tín hiệu ngay trƣớc thời điển đang xét và 1200 mẫu tín hiệu đầu tiên kể từ thời điểm đang xét. Biến đổi 1200 biểu tƣợng này thành 60 bít nhị phân bằng cách tính tổng giá trị 20 mẫu liên tiếp rồi so sánh với ngƣỡng 0. Nếu tổng 20 mẫu > 0 ta có bít 1 và ngƣợc lại ta có bít 0.

Nhƣ vậy với tối thiểu là 6000ms dữ liệu từ khối bám kênh ta có thể xác định đƣợc vị trí chuỗi bít mào đầu, cũng là thời điểm bắt đầu khung dữ liệu mới. Nếu việc thực hiện sơ đồ thuật toán đồng bộ bít dữ liệu thất bại, khối giải mã tính toán vị trí sẽ tạm ngừng đợi các dữ liệu đầu ra mới từ khối bám kênh.

3.1.2.Giải mã dữ liệu định vị

Thuật toán này đƣợc thực hiện sau khi đã thực hiện đồng bộ bít thành công và thu đƣợc 1) Thời điểm bắt đầu khung dữ liệu và 2) chuỗi các mẫu tín hiệu kể từ thời điểm bắt đầu khung dữ liệu.

Biến đổi chuỗi các mẫu tín hiệu từ khối bám kênh về dạng nhị phân đƣợc thực hiện tƣơng tự nhƣ phần giải mã parity đã trình bày trong mục 3.1.1. Chỉ khác là ở

Một phần của tài liệu Nghiên cứu phát triển vi mạch định vị toàn cầu GNSS thiết kế khối giải mã tính toán vị trí (Trang 63)

Tải bản đầy đủ (PDF)

(102 trang)