I. Chuẩn giao tiếp
Ublox hỗ trợ 4 cổng giao tiếp.
1. Cổng UART:
Mỗi Ublox hỗ trợ 1 hoặc 2 cổng UART. Các cổng UART có nhiệm vụ giám
sát trạng thái thông tin và cấu hình cho bộ nhận GPS. UART chỉ hoạt động ở chế
độ bất đồng bộ.Tốc độ baud có thể được cấu hình riêng cho mỗi cổng UART, tuy
nhiên không hỗ trợ việc cấu hình tốc độ baud khác nhau cho đường truyền và
đường nhận của cùng một cổng.
20 trang |
Chia sẻ: hoang10 | Lượt xem: 867 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Tìm hiểu về Module GPS, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Liên kết website Minhhagroup.com & Banlinhkien.vn
1
Nguyễn Quý Nhật
MODULE GPS
MODULE
GPS
R
&
D
Ver: 1.0.0 Date: 01/09/2013
Liên kết website Minhhagroup.com & Banlinhkien.vn
2
Nguyễn Quý Nhật
MODULE GPS
I. Chuẩn giao tiếp
Ublox hỗ trợ 4 cổng giao tiếp.
1. Cổng UART:
Mỗi Ublox hỗ trợ 1 hoặc 2 cổng UART. Các cổng UART có nhiệm vụ giám
sát trạng thái thông tin và cấu hình cho bộ nhận GPS. UART chỉ hoạt động ở chế
độ bất đồng bộ.Tốc độ baud có thể được cấu hình riêng cho mỗi cổng UART, tuy
nhiên không hỗ trợ việc cấu hình tốc độ baud khác nhau cho đường truyền và
đường nhận của cùng một cổng.
Các giá trị tốc độ baud được phép sử dụng:
Tốc độ baud Data bits Parity Stop bits
4800 8 None 1
9600 8 None 1
19200 8 None 1
38400 8 None 1
57600 8 None 1
115200 8 None 1
Tốc độ mặc định là 9600.
2. USB PORT:
Ublox có hỗ trợ một cổng USB. Cổng USB có thể được dùng để kết nối
truyền thông và cung cấp nguồn cho bộ nhận GPS.
Có hai chế độ cấp nguồn cho cổng USB:
a. Chế độ tự cấp: ở chế độ này nguồn nuôi cho bộ nhận (Ublox) được
cấp từ nguồn bên ngoài. VDDUSB được dùng để nhận biết cổng USB
có hoạt động hay không.
b. Chế độ cấp nguồn: Ở chế độ này thiết bị được cấp nguồn từ bus
USB. Do vậy, không cần phải thêm nguồn cấp bên ngoài cho thiết bị.
3. DDC PORT:
DDC (Display Data Channel) được kết nối tương thích với chuẩn I2C.
Liên kết website Minhhagroup.com & Banlinhkien.vn
3
Nguyễn Quý Nhật
MODULE GPS
Tốc độ tối đa 100kHz, Ublox luôn là thiết bị slave. Địa chỉ của Ublox
mặc định là 0x42, tuy nhiên địa chỉ nàycó thể thay đổi được.
4. SPI PORT:
Ublox hỗ trợ cổng giao tiếp SPI có thể hoạt động ở cả 4 chế độ SPI. Mặc
định chế độ của cổng SPI là chế độ 0, tuy nhiên ta có thể thay đổi được
chế độ hoạt động của cổng SPI. Tốc độ SPI tối đa cho phép của các
Ublox là khác nhau và phụ thuộc vào phiên bản và firmware.
Phiên bản Firmware Tốc độ tối đa
Ublox 6 7 200kHz
Ublox 6 6 100kHz
Ublox 5 All 25Khz
II. NMEA Protocol:
1. Cấu trúc bản tin theo giao thức NMEA.
$ {,value} *
- $: Kí tự bắt đầu . luôn luôn là kí tự „$‟.
- Address: Trường địa chỉ: chỉ được phép là số hoặc kí tự hoa. Trường này
được chia làm hai phần nhỏ
o : vùng chỉ thị, luôn là GP với các bộ thu GPS, hoặc P với các
bản tin đặc trưng.
o : Định dạng bản tin, định nghĩa nội dung của bản tin.
- Value: Vùng dữ liệu: độ dài của dữ liệu là không cố định. Các giá trị cách
nhau bằng dấu phẩy “,”.
- Checksum: Trường kiểm tra lỗi: Bắt đầu bằng kí tự * và chứa 2 kí tự kiểm
tra lỗi.
- : Kết thúc bản tin. Luôn luôn là hai kí tự đặc biệt CR ( mã là
0x0D ) và kí tự LF ( 0x0A ).
Ví dụ: $GPZDA,141644.00,22,03,2002,00,00*67
Liên kết website Minhhagroup.com & Banlinhkien.vn
4
Nguyễn Quý Nhật
MODULE GPS
2. Định dạng tọa độ:
- Giá trị tọa độ từ các bộ thu GPS sẽ trả về theo chuẩn NMEA, giá trị đó bao
gồm độ, phút và phần thập phân của phút.
- Ví dụ nếu ta nhận được giá trị 4717.112671 North(Bắc) và 10533.91483
East(Đông) có nghĩa tọa độ là
o 47 độ 17.112671 phút Bắc, 105 độ 33.91483 phút đông
o 47 độ 17 phút 6.76026 giây Bắc, 105 độ 33phút 54.89058 giây Đông.
o 47.28521118 độ Bắc, 105.56524738 độ Đông.
3. Các bản tin chuẩn theo giao thức NMEA:
a. DTM
Mô tả Cột mốc tham chiếu
Firmware Hỗ trợ Ublox 6. Firmware từ 6.00 đến 7.03
Loại Output
Nội dung Cho biết sự khác biệt giữa cột mốc tham chiếu và cột mốc lựa
chọn. Nếu Cột mốc đang cấu hình không phải là WGS72 hoặc
WGS84, thì trường LLL sẽ là 999. Cột mốc tham chiếu luôn là
WGS84
Số lượng trường 11
Cấu trúc $GPDTM,LLL,LSD,lat,N/S,long,E/W,alt,RRR*cs
Ví dụ: $GPDTM,W84,,0.0,N,0.0,E,0.0,W84*6F
$GPDTM,W72,,0.00,S,0.01,W,-2.8,W84*4F
$GPDTM,999,CH95,0.08,N,0.07,E,-47.7,W84*1C
STT Ví dụ Định
dạng
Tên Đơn vị Mô tả
0 $GPDTM Chuỗi $GPDTM Mã bản tin
1 W72 Chuỗi LLL Mã cột mốc, W84=WGS84,
Liên kết website Minhhagroup.com & Banlinhkien.vn
5
Nguyễn Quý Nhật
MODULE GPS
W72=WGS72, 999= người dùng
định nghĩa.
2 Chuỗi LSD Mã cột mốc, trả về mã code cột
mốc đang lựa chọn
3 0.08 Số Lat Phút Sai lệch về vĩ độ.
4 S Kí tự NS Chỉ thị Bắc Nam
5 0.07 Số long phút Sai lệch kinh độ
6 E Kí tự EW Chỉ thị Đông Tây
7 -2.8 Số Alt Mét Sai lệch độ cao
8 W84 Chuỗi RRR Mã cột mốc tham chiếu. luôn là
W84
9 *67 Hex cs Kiểm tra lỗi
10 Kí tự Kết thúc bản tin
b. GBS
Mô tả Hệ thống vị trí
Firmware Hỗ trợ Ublox 6. Firmware từ 6.00 đến 7.03
Loại Output
Nội dung Trả về kết quả của RAIM (Receiver Autonomous Integrity
Montoring Algorithm)
Số lượng trường 11
Cấu trúc $GPGBS,hhmmss.ss,errlat,errlon,erralt,svid,prob,bias
,stddev*cs
Ví dụ: $GPGBS,235503.00,1.6,1.4,3.2,,,,*40
$GPGBS,235458.00,1.4,1.3,3.1,03,,-21.4,3.8*5B
STT Ví dụ Định dạng Tên Đơn vị Mô tả
0 $GPGPS Chuỗi $GPGBS Mã bản tin
1 235503.00 Hhmmss.ss Thời gian UTC.
2 Chuỗi LSD Mã cột mốc, trả về mã code cột
Liên kết website Minhhagroup.com & Banlinhkien.vn
6
Nguyễn Quý Nhật
MODULE GPS
mốc đang lựa chọn
3 1.6 Số Errlat Mét Sai số dự kiến về vĩ độ
4 1.4 Số Errlon Mét Sai số dự kiến về kinh độ
5 3.2 Số Erralt Mét Sai số dự kiến về độ cao
6 - Số Prob Xác suất dò lỗi (không hỗ trợ)
7 -21,4 Số Bias Mét Ước tính lỗi trên vệ tinh.
8 3.8 Số Std Mét Chuẩn hóa bias.
9 *40 Hex cs Kiểm tra lỗi
10 Kí tự Kết thúc bản tin
c. GGA
Mô tả Dò lỗi vệ tinh GNSS
Firmware Hỗ trợ Ublox 6. Firmware từ 6.00 đến 7.03
Loại Output
Nội dung Trả về thời gian và vị trí GPS, và các dữ liệu liên quan
Số lượng trường 17
Cấu trúc $GPGGA,hhmmss.ss,Latitude,N,Longitude,E,FS,NoSV,HDOP
,msl,m,Altref,m,DiffAge,DiffStation*cs
Ví dụ:
$GPGGA,092725.00,4717.11399,N,00833.91590,E,1,8,1.01,499.6,M,48.0,M,,0*5B
STT Ví dụ Định dạng Tên Đơn
vị
Mô tả
0 $GPGGA Chuỗi $GPGGA Mã bản tin
1 235503.00 Hhmmss.ss Thời gian UTC.
2 4717.11399 Ddmm.mm Lat Tọa độ vĩ độ
3 N Kí tự Chỉ thị Bắc Nam
4 00833.91590 Dddmm.mm Long Tọa độ kinh độ.
5 E Kí tự Chỉ thị Đông Tây
6 1 Số FS Chỉ thị trạng thái sửavị trí
7 8 Số Nosv Số lượng vệ tinh sử dụng 0-
Liên kết website Minhhagroup.com & Banlinhkien.vn
7
Nguyễn Quý Nhật
MODULE GPS
12
8 1.01 Số Hpdop
9 499.6 Số Msl Mét Độ cao MSL
10 M Kí tự Umsl Đơn vị, Mét
11 48.0 Số Altref Mét
12 M Kí tự uSep Đơn vị, Mét.
13 Số Diffage S
14 0 Số Diffstation Sai khá địa chỉ trạm
15 *5B Hex Kiểm tra lỗi
16 Kí tự Kết thúc bản tin
d. GLL
Mô tả Kinh độ, vĩ độ, thời gian với vị trí cố định
Firmware Hỗ trợ Ublox 6. Firmware từ 6.00 đến 7.03
Loại Output
Nội dung Giá trị trả về phụ thuộc vào cột mốc chọn hiện tại
Số lượng trường 9
Cấu trúc $GPGLL,Latitude,N,Longitude,E,hhmmss.ss,Valid
,Mode*cs
Ví dụ : $GPGLL,4717.11364,N,00833.91565,E,092321.00,A,A*60
STT Ví dụ Định dạng Tên Đơn vị Mô tả
0 $GPGLL Chuỗi $GPGLL Mã bản tin
1 4717.11364 ddmm.mm Lat Vĩ độ
2 N Kí tự Chỉ thị Bắc Nam
3 00833.91565 Dddmm.mm Kinh độ
4 E Kí tự Chỉ thị Đông Tây
5 092321.00 Hhmmss.ss Thời gian UTC
6 A Kí tự Trạng thái: A: dữ liệu đúng,
V: dữ liệu sai.
7 A Kí tự Chế độ vị trí (AGPS, DGPS)
Liên kết website Minhhagroup.com & Banlinhkien.vn
8
Nguyễn Quý Nhật
MODULE GPS
8 *60 Hex cs Kiểm tra lỗi
9 Kí tự Kết thúc bản tin
e. GPQ
Mô tả Bản tin thăm dò
Firmware Hỗ trợ Ublox 6. Firmware từ 6.00 đến 7.03
Loại input
Nội dung Kiểm tra bản tin chuẩn NMEA
Số lượng trường 4
Cấu trúc $xxGPQ,sid*cs
Ví dụ : $EIGPQ,RMC*3A
STT Ví dụ Định dạng Tên Đơn vị Mô tả
0 $EIGPQ Chuỗi $xxGPQ Mã bản tin. XX: Mã chỉ thị
1 RMC Chuỗi Sid Mã nhận dạng bản tin
2 *3A Hex Kiểm tra lỗi
3 Kí tự Kết thúc bản tin
f. GSV
Mô tả Vệ tinh GNSS
Firmware Hỗ trợ Ublox 6. Firmware từ 6.00 đến 7.03
Loại Output
Nội dung Số lượng vệ tinh quan sát.
Số lượng trường 7-16
Cấu trúc $GPGSV,NoMsg,MsgNo,NoSv,{,sv,elv,az,cno}*cs
Ví dụ:
$GPGSV,3,1,10,23,38,230,44,29,71,156,47,07,29,116,41,08,09,081,36*7F
Liên kết website Minhhagroup.com & Banlinhkien.vn
9
Nguyễn Quý Nhật
MODULE GPS
$GPGSV,3,2,10,10,07,189,,05,05,220,,09,34,274,42,18,25,309,44*72
$GPGSV,3,3,10,26,82,187,47,28,43,056,46*77
STT Ví dụ Định
dạng
Tên Đơn vị Mô tả
0 $GPGSV Chuỗi $GPGSV Mã bản tin
1 3 Số Số lượng bản tin, là tổng số lượng
bản tin GPSGV truyền
2 1 Số Số chỉ thị của bản tin.
3 10 Số Số vệ tinh quan sát
4 23 Số sv ID vệ tinh
5 38 Số elv Độ cao 0-90`
6 230 Số az Phương vị.0-359.
7 44 Số cno
15 *7F Hex Kiểm tra lỗi
16 Kí tự Kết thúc bản tin
g. RMC
Mô tả Dữ liệu thu gon khuyến cáo
Firmware Hỗ trợ Ublox 6. Firmware từ 6.00 đến 7.03
Loại Output
Nội dung
Số lượng trường 15
Cấu trúc $GPRMC,hhmmss,status,latitude,N,longitude,E,spd,cog
,ddmmyy,mv,mvE,mode*cs
Liên kết website Minhhagroup.com & Banlinhkien.vn
10
Nguyễn Quý Nhật
MODULE GPS
Ví dụ:
$GPRMC,083559.00,A,4717.11437,N,00833.91522,E,0.004,77.52,091202,,,A*57
STT Ví dụ Định dạng Tên Đơn vị Mô tả
0 $GPRMC Chuỗi $GPRMC Mã bản tin
1 083559.00 Hhmmss.ss Thời gian UTC
2 A Kí tự Trang thái: A: Dữ liệu đúng.
V: dữ liệu sai.
3 4717.11437 Ddmm.mm Vĩ độ
4 N Kí tự Chỉ thị Bắc Nam
5 00833.91522 Dddm.mm Kinh độ
6 E Kí tự Chỉ thị Đông Tây
7 0.004 Số Hải lý Tốc độ trên mặt đất
8 77.52 Số Độ Độ baophủ mặt đất
9 091202 Ddmmyy Date Ngày tháng năm
10 Số Mv Giá trị từ trường (không hỡ trợ
thiết bị nhận)
11 Kí tự mvE Chỉ thị từ trường Đông/Tây.
12 Kí tự Mode Chế độ chỉ thị.
13 *7F Hex Kiểm tra lỗi
14 Kí tự Kết thúc bản tin
h. VTG
Mô tả Tốc độ mặt đất và độ bao phủ măt đất
Firmware Hỗ trợ Ublox 6. Firmware từ 6.00 đến 7.03
Loại Output
Nội dung
Số lượng trường 12
Cấu trúc $GPVTG,cogt,T,cogm,M,sog,N,kph,K,mode*cs
Liên kết website Minhhagroup.com & Banlinhkien.vn
11
Nguyễn Quý Nhật
MODULE GPS
Ví dụ:
$GPVTG,77.52,T,,M,0.004,N,0.008,K,A*06
STT Ví dụ Định dạng Tên Đơn vị Mô tả
0 $GPVTG Chuỗi $GPVTG Mã bản tin
1 77.52 Số Độc che phủ
2 T Kí tự T Trường sửa chữa: True
3 Số Cogm Độ Từ trường bao phủ
4 M Kí tự Trường sửa chữa: Magnetic
5 0.004 Số Hải lý Tốc độ
6 N Kí tự Trường sửa chữa: Knots
7 0.008 Số Km/h Tốc độ trên mặt đất
8 K Kí tự K Trường sửa chữa: km/hour.
9 A Kí Chỉ thị chế độ
10 *7F Hex Kiểm tra lỗi
11 Kí tự Kết thúc bản tin
i. ZDA
Mô tả Thời gian
Firmware Hỗ trợ Ublox 6. Firmware từ 6.00 đến 7.03
Loại Output
Nội dung
Số lượng trường 9
Cấu trúc $GPZDA,hhmmss.ss,day,month,year,ltzh,ltzn*cs
Ví dụ:
$GPZDA,082710.00,16,09,2002,00,00*64
STT Ví dụ Định dạng Tên Đơn vị Mô tả
0 $GPZDA Chuỗi $GPZDA Mã bản tin
1 082710.00 Hhmmss.ss Thời gian UTC
Liên kết website Minhhagroup.com & Banlinhkien.vn
12
Nguyễn Quý Nhật
MODULE GPS
2 16 Dd Ngày
3 09 Mm Tháng
4 2002 Yy Năm
5 00 -xx Giờ khu vực (không hỗ trợ)
6 00 Zz Phút khu vực (không hỗ trợ)
7 *7F Hex Kiểm tra lỗi
8 Kí tự Kết thúc bản tin
III. Ublox Neo 6
1. Sơ đồ chân:
Số thự tự
chân
Tên chân I/O Mô tả
1 Reserved I Chưa dùng
Liên kết website Minhhagroup.com & Banlinhkien.vn
13
Nguyễn Quý Nhật
MODULE GPS
2 SS_N I Chọn SPI (CS)
3 TimePulse O Xung thời gian. 1 xung/giây
4 EXTINT0 I Ngắt ngoài
5 USB_DM I/O Dữ liệu USB
6 USB_DP I/O Dữ liệu USB
7 VDDUSB I Nguồn USB
8 Reserved
9 VCC_RF O Đầu ra điện áp RF
10 GND I Đất
11 RF_IN IN Đầu vào anten
12 GND I Đất
13 GND I Đất
14 MOSI/
CFG_COM0
O/I SPI MOSI/ Pin cấu hình
Thiết lập cực mở nếu không sử dụng
15 MISO/
CFG_COM1
I SPI MISO/ Pin cấu hình.
Thiết lập cực mở nếu không sử dụng.
16 CFG_GPS0
SCK
I Chân cấu hình chế độ nguồn/ Clock của SPI
17 Reserved I Chưa dùng
18 SDA2 I/O DATA DDC2
19 SCL2 I/O CLOCK DDC
20 TxD1 O Cổng dữ liệu nối tiếp
21 RxD1 I Cổng dữ liệu nối tiếp
22 V_BCKP I Nguồn cấp backup
23 VCC I Nguồn cấp
24 GND I Đất.
Liên kết website Minhhagroup.com & Banlinhkien.vn
14
Nguyễn Quý Nhật
MODULE GPS
2. Thông số hoạt động
Symbol Modulse Min Typ Max Đơn vị
VCC NEO-6G
NEO-
6Q/M/P/V/T
1.75
2.7
1.8
3.0
1.95
3.6
V
V
VDDUSB ALL 3.0 3.3 3.6 V
V_BCKP ALL 1.4 3.6 V
I_BCKP ALL 22 uA
Vil ALL 0 0.2*VCC V
Vih ALL 0.7*VCC VCC V
Vol ALL 0.4 V
Voh ALL VCC-0.4 VCC V
VCC_RF ALL VCC-0.1 V
ICC_RF ALL 50 mA
Gaint ALL 50 dB
Nhiệt độ ALL -40 85 C
IV. Đọc, lấy tọa độ, thời gian từ modulse Ublox Neo-6M
Hiển thị lên màn hình TFT 1.8
1. Sơ đồ kết nối phần cứng:
Liên kết website Minhhagroup.com & Banlinhkien.vn
15
Nguyễn Quý Nhật
MODULE GPS
2. Lập trình phần mềm:
Ublox Neo 6M sẽ trả về cho ta các bản tin GGA,GLL, GSA,
GSV, RMC, VTG tuy nhiên để có thể lấy tọa độ và thời gian ta không
nhất thiết phải đọc tất cả các bản tin. Để đơn giản nhất ta chỉ cần đọc
bản tin RMC là đã đủ lượng thông tin cần lấy.
Bản tin RMC
Mô tả Dữ liệu thu gon khuyến cáo
Firmware Hỗ trợ Ublox 6. Firmware từ 6.00 đến 7.03
Loại Output
Nội dung
Số lượng trường 15
Cấu trúc $GPRMC,hhmmss,status,latitude,N,longitude,E,spd,cog
,ddmmyy,mv,mvE,mode*cs
Ví dụ:
$GPRMC,083559.00,A,4717.11437,N,00833.91522,E,0.004,77.52,091202,,,A*57
Liên kết website Minhhagroup.com & Banlinhkien.vn
16
Nguyễn Quý Nhật
MODULE GPS
STT Ví dụ Định dạng Tên Đơn vị Mô tả
0 $GPRMC Chuỗi $GPRMC Mã bản tin
1 083559.00 Hhmmss.ss Thời gian UTC
2 A Kí tự Trang thái: A: Dữ liệu đúng.
V: dữ liệu sai.
3 4717.11437 Ddmm.mm Vĩ độ
4 N Kí tự Chỉ thị Bắc Nam
5 00833.91522 Dddm.mm Kinh độ
6 E Kí tự Chỉ thị Đông Tây
7 0.004 Số spd Hải lý Tốc độ trên mặt đất
8 77.52 Số cog Độ Độ bao phủ mặt đất
9 091202 Ddmmyy Date Ngày tháng năm
10 Số Mv Giá trị từ trường (không hỡ trợ
thiết bị nhận)
11 Kí tự mvE Chỉ thị từ trường Đông/Tây.
12 Kí tự Mode Chế độ chỉ thị.
13 *7F Hex Kiểm tra lỗi
14 Kí tự Kết thúc bản tin
Để đọc được bản tin ta cần có một bộ đệm để lưu trữ dữ liệu UART. Thuật toán
như sau:
Liên kết website Minhhagroup.com & Banlinhkien.vn
17
Nguyễn Quý Nhật
MODULE GPS
Start
Đúng là bản tin
GPRMC
Set cờ báo có bản tin
RMC
Đọc dữ liệu vào
Buffer
END
SAI
Khi đã có cờ báo nhận được bản tin RMC, trong chương trình ta cần
xử lý bản tin vừa nhận được. Do độ dài dữ liệu là không có định nhưng các
dữ liệu đều cách nhau bằng dấu “,” Do đó ta sẽ dùng dấu “,” để tách dữ liệu.
uint16_t SearchChar(uint8_t Char, uint8_t *Str,uint8_t Time,uint8_t Len)
{
uint16_t i=0;
uint8_t j=0;
while((j<Time)&(i<=Len))
{
Liên kết website Minhhagroup.com & Banlinhkien.vn
18
Nguyễn Quý Nhật
MODULE GPS
if(Str[i]==Char)
j++;
i++;
}
return (i-1);
}
Ta sử dụng hàm trên để tìm vị trí các kí tự “,” trong bản tin RMC.
Ví dụ:
Temp1=SearchChar(',',GpsData[i].Data,1,SIZE_BUFFER_DATA);
// Tim vi tri co dau “,” lan dau tien
Từ vị trí các dấu “,” và vị trí các trường ta có thể lấy được dữ liệu.
Thuật toán chương trình chính:
Liên kết website Minhhagroup.com & Banlinhkien.vn
19
Nguyễn Quý Nhật
MODULE GPS
Start
Dò tọa độ
Có tọa độ
Tọa độ
mới?
Sai
Sai
Hiển thị tọa
độ.
Liên kết website Minhhagroup.com & Banlinhkien.vn
20
Nguyễn Quý Nhật
MODULE GPS
WELLCOME TO MINHHAGROUP.
Thanks For Reading!