导航菜单
Toggle navigation
微雪商城
微雪课堂
Raspberry Pi
主板/套件
显示屏
摄像头
扩展板
笔记本
机器人
游戏机
Android/Linux主板
人工智能
主板/套件
显示屏
摄像头
扩展板
机器人
显示屏
LCD/OLED
e-Paper
模块
远距离无线通信
近距离无线通信
有线通信/接口转换
摄像头/音视频
传感器
电机/舵机
大杂烩
机器人
智能车
驱动器/传感器
机械手/云台控制
MCU/FPGA
Arduino
micro:bit
LPC
FPGA
查看“L76X GPS Module”的源代码
←
L76X GPS Module
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看和复制此页面的源代码。
<div class="wiki-pages blue-color"> <div class="tabberlive newwsnav" id="wsnavbar"> <ul class="tabbernav"> <li class="nav-link">[[#myintro|说明]]</li> <li class="nav-link">[[#myresources|资料]]</li> <li class="nav-link">[[#myfaq|FAQ]]</li> <li class="nav-link">[[#mysupport|售后]]</li> </ul> </div> <div class="tabber"> {{外围模块|colorscheme=blue |img=[[File:L76X-GPS-Module-1.jpg|360px |alt= L76X GPS Module |link=https://{{SERVERNAME}}/shop/L76X-GPS-Module.htm]] |category1=GNSS/GPS |category2=光传感器 |brand=Waveshare |feature = 光传感器 | interface1 =UART }} <div class="tabbertab" title="说明" id="myintro"> <h1>说明</h1> =产品说明= 本产品是一款具有GNSS(全球导航卫星系统)功能模块,支持GPS,BD2和QZSS等定位系统,具有体积小、功耗低、定位快等优点。带上我,你可以轻松实现全球定位。<br /> '''本模块提供树莓派、STM32、Arduino控制例程。'''<br> ==产品参数== *接收信道: 22个跟踪信道,66个捕获信道和210个PRN信道 *接收信号: GPS,BD2和QZSS *支持SBAS: WAAS, EGNOS, MSAS, GAGAN *信号频段: GPS L1(1575.42Mhz) BD2 B1 (1561.098MHz) C/A Code *捕获时间: 冷启动:10S(最快);热启动:1S *捕获灵敏度: -148dBm *跟踪灵敏度: -163dBm *重捕捕获灵敏度: -160dBm *定位精度: <2.5mCEP *最高海拔: 18000(M) *最大速度: 515m/s *逻辑电压: 3.3/5V *通信接口: UART *串口通信波特率: 4800bps~115200bps(默认9600) *更新速率: 最大 10Hz(默认 1HZ) *通信协议: NMEA 0183 /PMTK *工作电压: 3.3V/5V *工作电流: 11mA(5V) *工作温度 -40℃ ~ 85℃ *产品尺寸: 32.5X25.5(mm) ==接口说明== {|border=1; style="width:700px;" align="center" |-style="background:#0000ff; color:white;" align="center" |模块||USB转串口 |-align="center" |VCC||电源正(2.7V~5V ) |-align="center" |GND||电源地 |-align="center" |TX||串口数据输出 |-align="center" |RX||串口指令输入 |-align="center" |PPS||状态指示(定位成功输出秒脉冲) |} =windows串口调试= *连接接天线,连接USB转UART模块,再接连接到电脑。如图所示。连接之后,电源指示灯(PWR)长亮。<br> [[file:L76X_GPS_Module_connet.png|center|600px]] <br> 注意:红线不是VCC,黑线不是GND <br> {|border=1; style="width:700px;" align="center" |-style="background:#0000ff; color:white;" align="center" |模块||USB转串口 |-align="center" |VCC||5V/3.3V |-align="center" |GND||GND |-align="center" |RX||TXD |-align="center" |TX||RXD |-align="center" |PPS||不接 |} *打开电脑串口调试助手,设置对应的串口号(我这里是COM5),波特率9600,8 位数据位,1 位停止位,无校验位,无流控制。<br> 串口助手可以在[https://{{SERVERNAME}}/w/upload/5/5f/Sscom.7z 此处下载]<br> [[file:L76X_GPS_Module_sscom.png|center|600px]] <br> <font color="#FF0000"> 注:1.由于 GPS 室内搜星不稳定,请将模块或者天线放到阳台或窗户旁,或者直接在户外进行实验。<br> 2. 模块首次定位(冷启动),在正常情况下(户外,天气良好,没有大型建筑遮挡),需要35秒时间才能定位成功,请耐心等待。如果天气条件不好,可能需要更长的定位时间,甚至无法定位。<br> </font> 下载 [https://{{SERVERNAME}}/w/upload/a/a8/U-centersetup_v8.12.zip u-center]解压打开安装。运行程序,点击 Receiver 菜单,选择 Port,设置实际的串口号,Baudrate: 9600。点击 (连接按钮) ,即可连接到GPS模块, u-center 将显示各种信息,如下图:<br> [[file:L76X_GPS_Module_u-center.png|center|center |1200px]]<br> =树莓派使用= 树莓派提供C与pyton两种程序控制 ==环境配置== ===开启Uart接口=== 打开树莓派终端,输入以下指令进入配置界面<br /> <pre> sudo raspi-config </pre> 选择Interfacing Options -> Serial,关闭shell访问,打开硬件串口: [[file:L76X_GPS_Module_rpi_serial.png|center|1200px]] ===安装相关函数库=== {{RPI_C_lib}} *安装Python函数库 <pre> sudo apt-get update sudo pip install RPi.GPIO sudo apt-get install python-serial </pre> ===硬件连接=== [[file:L76X_GPS_Module_rpi_connet.png|center|1200px]] <br> {|border=1; style="width:700px;" align="center" |-style="background:#0000ff; color:white;" align="center" |模块||RaspberryPi |-align="center" |VCC||5V |-align="center" |GND||GND |-align="center" |TX||P15 |-align="center" |RX||P14 |-align="center" |PPS||不接 |} ===minicom调试=== <pre> sudo apt-get install minicom # 对于树莓派3B\3B+\4B sudo minicom -D /dev/ttyS0 -b 9600 # 对于树莓派ZERO\2B sudo minicom -D /dev/ttyAMA0 -b 9600 </pre> 默认波特率为115200,如需设置波特率为9600加参数 -b 9600,-D代表端口,/dev/ ttySO 类似于windows中的COM1,如果不是树莓派3,那么是minicom -D /dev/ttyAMA0,再将模块连接树莓派。<br> [[file:L76X_GPS_Module_rpi_minicom1.png|center|900px]]<br> 退出:Ctrl+A 然后单独按X,YES 回车<br> ===下载并运行测试例程=== '''下载程序''' <pre> git clone git://github.com/waveshare/L76X-GPS-Module.git cd L76X-GPS-Module/ </pre> '''C程序''' <pre> cd C make clean make sudo ./main </pre> '''python程序''' <pre> cd python sudo python main.py </pre> '''预期效果''' 模块首次定位需要35秒的等待时间。<br> 前面是模块输出的原始数据。<br> Time是L76X GPS Module输出的时间。<br> Latitude and longitude是输出的经纬度和经纬方向。<br> Baudu Coordinates 为转换后的百度地图坐标,复制坐标到http://www.gpsspg.com/maps.htm 左边选择百度地图,就可以看到你的位置了(如果直接去“百度拾取坐标系统”需要交换经纬度两个数的位置)。<br> [[file:L76X_GPS_Module_rpi_test.png|center|800px]]<br> 注意:模块默认波特率是9600,但是运行例程以后全部改为了115200。 <br> =STM32= 本例程是基于HAL库进行开发的,例程已经在XNUCLEO-F103RB上进行了验证。<br> [https://{{SERVERNAME}}/w/upload/3/3e/L76X_GPS_Module_code.7z 点击此处下载代码]或在资料中下载。<br> *硬件连接<br> {|border=1; style="width:700px;" align="center" |-style="background:#00FF00; color:white;" align="center" |模块||STM32 |-align="center" |VCC||5V |-align="center" |GND||GND |-align="center" |TX||PA10 |-align="center" |RX||PA9 |-align="center" |PPS||不接 |} *预期效果<br> 模块首次定位需要35秒的等待时间。<br> 前面是模块输出的原始数据。<br> Time是L76X GPS Module输出的时间。<br> Latitude and longitude是输出的经纬度和经纬方向。<br> Baudu Coordinates 为转换后的百度地图坐标,复制坐标到http://api.map.baidu.com/lbsapi/getpoint/,就可以看到你的位置了(如果直接去“百度拾取坐标系统”需要交换经纬度两个数的位置)。<br> [[file:L76X_GPS_Module_STM32_SERIAL.png|center|800px]]<br> 注意:模块默认波特率是9600,但是运行例程以后全部改为了115200。 <br> =Arduino= 本例程已经在Arduino UNO上进行了验证。<br> [https://{{SERVERNAME}}/w/upload/3/3e/L76X_GPS_Module_code.7z 点击此处下载代码]或在资料中下载。<br> '''硬件连接''' {|border=1; style="width:700px;" align="center" |-style="background:#FFFF00; color:blue;" align="center" |模块||Arduino |-align="center" |VCC||5V |-align="center" |GND||GND |-align="center" |TX||2 |-align="center" |RX||3 |-align="center" |PPS||不接 |} '''预期效果''' 模块首次定位需要35秒的等待时间。<br> 打开串口助手,设置波特率为9600<br> 前面是模块输出的原始数据。<br> Time是L76X GPS Module输出的时间。<br> 由于Arduin数据精度不够就没有做算法,算出来的数据也是误差特别大的。<br> [[file:L76X_GPS_Module_Arduino_Serial.png|center|800px]]<br> 注意:模块默认波特率是9600,但是运行例程以后全部改为了115200。 <br> </div> <div class="tabbertab" title="资料" id="myresources"> <h1>资料</h1> ===文档=== *[https://{{SERVERNAME}}/w/upload/d/df/L76X_GPS_Module_SchDoc.pdf 原理图]<br> *[[:File:l76x_gps_module.zip|3D图纸]] ===程序=== *[https://{{SERVERNAME}}/w/upload/3/3e/L76X_GPS_Module_code.7z 示例程序] *[https://github.com/waveshare/L76X-GPS-Module Github] ==软件== {{GSM-GPRS-GPS-Shield-B-Software}} ==数据手册== {{L76X/GPS/HAT}} </div> <div class="tabbertab" title="FAQ" id="myfaq"> <h1>FAQ</h1> <br /> {{FAQ|为什么定位不准?| 定位精度与所在的环境有关系,一是天气原因下雨天,空气中水分多,影响了信号的传输。这也是为什么夏季手机信号稍弱的原因,夏季雨多潮湿,再加之高温蒸发,使得空气中的水分变多,从而影响卫星信号的传输。二高楼因素在一些高层建筑物旁边容易造成卫星信号不好或者信号偏移问题,在建筑低层或者地下建筑,如地下停车场、地下商场、地铁、隧道等,由于受到墙体的遮挡,室内信号衰减非常大,就形成了信号覆盖弱点,所以造成定位不精准,误差大等情况,同样在一些高山阻挡下也容易导致定位不精准。三是卫星数量农村及偏僻地区上空安置卫星数量少,造成位置偏差大等情况。四卫星信号会受到大气电离层、地面建筑物、森林、水面等因素的影响,导致计算出现偏差|||}} {{FAQ|我在户外还是接收不到数据?| 请检查天线是否接好,还有有字的一面要朝下,天线的接收在没有字的那一面|||}} {{FAQ|为什么和手机定位的不一致?| 此模块定位只是单独靠卫星定位,而手机定位不只是靠卫星定位,手机定位还依靠AGPS(辅助全球卫星定位系统)、LBS基站定位、Wifi定位、蓝牙定位等等各种定位系统结合,因此手机定位有着更加快的定位速度,精度方面在不同给环境下也是有着不同的区别,并且手机的GPS信号支持的多重卫星系统和模块支持的多重卫星系统不一致。所以模块和手机定位的数据有一定的差异。|||}} {{FAQ|为什么发送修改波特率命令,模块波特率还是没有变呢?| 首先保证发送命令的波特率和串口输出的波特率一致,在模块搜索到卫星数比较多的时候波特率从高向低设定可能会无法修改,因为波特率太低模块无法一次性发送所有的数据,可以考虑使用SET_NMEA_OUTPUT指令减少输出的数据字段,然后再修改波特率即可。|||}} {{FAQ|为什么我配置好了,第二次开机又恢复初始状态了?| L76内部没有存储器,无法保存数据,一旦掉电即会回复初始。|||}} {{FAQ|如何解析获取到的定位信息?| 下面以GNRMC为例,解析获取到的定位信息,如下所示:<br> [[File:L76 print.png|800px]] [[File:L76X GNSS Date .png|800px]] |||}} {{FAQ|为什么运行示例程序没有打印位置信息,打开minicom也没有?| #硬件串口没有打开 ===开启Uart接口=== 打开树莓派终端,输入以下指令进入配置界面<br /> <pre> sudo raspi-config </pre> 选择Interfacing Options -> Serial,关闭shell访问,打开硬件串口: [[file:L76X_GPS_Module_rpi_serial.png|center|1200px]] #波特率要用9600 sudo minicom -D /dev/ttyS0 -b 9600 |||}} </div> <div class="tabbertab" title="售后" id="mysupport"> <h1>技术支持</h1> <br /> {{Service18}} </div> </div>
该页面使用的模板:
模板:FAQ
(
查看源代码
)
模板:GSM-GPRS-GPS-Shield-B-Software
(
查看源代码
)
模板:L76X/GPS/HAT
(
查看源代码
)
模板:Note
(
查看源代码
)
模板:Note/styles.css
(
查看源代码
)
模板:RPI C lib
(
查看源代码
)
模板:Service18
(
查看源代码
)
模板:外围模块
(
查看源代码
)
返回至
L76X GPS Module
。