新闻中心
新闻中心

接4G模块获取经纬度的完整步骤

2025-06-30 09:32:00     19
今天小编主要跟大家一起分享下接4G模块获取经纬度的完整步骤此文章,希望能给大家一些帮助。

以下是连接4G模块获取经纬度的完整步骤,适用于嵌入式开发(如STM32、树莓派)及Linux系统环境:



 一、硬件准备与连接


 

模块接线

 

4G模块(如移远EC20)通过USB或串口连接主控设备:

4G模块TX‌ → 主控设备‌RX‌(接收GPS数据)

4G模块RX‌ → 主控设备‌TX‌(发送AT指令)

VCC/GND‌ → 匹配电源(通常5V)与共地

安装GPS天线:陶瓷面朝上并朝向天空,避免金属遮挡

 

关键配置

 

插入有效SIM卡,确保4G天线已固定,模块指示灯正常亮起

若使用STM32,需调整拨码开关:第3、4位拨至左侧(GPS功能使能)



二、软件配置与指令操作


步骤1:初始化模块

打开串口调试工具(如Minicom、串口助手),设置波特率 ‌115200‌(部分模块默认9600)

发送基础AT指令检测连通性:

 

ATCopy Code

 

 

AT  // 返回"OK"表示模块就绪:ml-citation{ref="5" data="citationList"}

 

步骤2:激活GPS功能

 

开启GNSS定位:

 

ATCopy Code

 

AT+QGPS=1  // 部分模块需指定模式:1=GPS+北斗双模:ml-citation{ref="3,5" data="citationList"}

 

 

等待返回 "+CGNSSPWR!"‌(约10-30秒)

 

 

设置数据输出接口(EC20为例):

 

 

ATCopy Code

 

 

AT+CGNSSPORTSWITCH=0,1  // 0表示UART串口,1启用数据输出:ml-citation{ref="5" data="citationList"}

 

步骤3:获取经纬度数据

 

方法1:实时流输出(NMEA协议)

 

启动数据流:

 

ATCopy Code

 

 

AT+CGNSSTST=1  // 开启NMEA数据流:ml-citation{ref="5" data="citationList"}

 

 

监听对应串口(如/dev/ttyUSB1),解析$GPRMC帧:

 

textCopy Code

 

 

$GPRMC,<UTC时间>,A,<纬度>,N/S,<经度>,E/W,...*hh

// 示例:$GPRMC,024813.640,A,3158.4608,N,11848.3737,E,...*50:ml-citation{ref="8,9" data="citationList"}

 

经纬度格式转换‌:

纬度 3158.4608 → 31°58.4608' → 小数度:31 + 58.4608/60 ≈ 31.9743°

经度同理,西经/南纬取负值

 

方法2:手动单次查询(适用于低功耗场景)

 

 

ATCopy Code

 

 

AT+CGPSINFO  // 直接返回经纬度(需等待定位完成):ml-citation{ref="5" data="citationList"}

 

 

示例返回值:

 

 

textCopy Code

 

 

+CGPSINFO: 2304.71148,N,11330.96810,E  // 纬度23°04.71148',经度113°30.96810':ml-citation{ref="5" data="citationList"}

 

 




三、调试与问题处理

定位失败排查‌:

检查天线朝向是否开阔,室内需靠近窗户

冷启动等待1-2分钟,若超时重启模块

验证SIM卡网络状态(AT+CREG?返回0,1或1,1)

精度优化‌:

结合网络辅助定位(A-GPS)提升首次定位速度

使用gpsd工具格式化输出(树莓派适用):

 

bashCopy Code

 

 

sudo gpsd /dev/ttyUSB1 -F /var/run/gpsd.sock  // 后台服务

cgps -s  // 可视化查看:ml-citation{ref="7" data="citationList"}

 

 




四、替代方案:网络定位(无GPS模块时)

4G模块无内置GPS,可通过IP或基站定位:

javascriptCopy Code

// H5 JS-API示例(需联网)

navigator.geolocation.getCurrentPosition(pos => {

  const {latitude, longitude} = pos.coords; // 获取WGS84坐标

});  // 精度约100米-1公里,依赖基站密度:ml-citation{ref="4" data="citationList"}

关键提示

模块差异‌:EC20使用ttyUSB1接收数据,其他模块需查手册确认端口

供电要求‌:4G模块峰值电流≥2A,建议独立电源避免重启6

坐标系转换‌:原始WGS84坐标需转换(如GCJ-02)才能在国内地图使用


4G远程控制器厂家  4G远程控制器终端厂家  上海八渡智能科技有限公司

 


关于这篇文章接4G模块获取经纬度的完整步骤小编就和大家分享到这了,如果想要了解更多相关的知识,欢迎继续访问本站更相关资讯。
如果喜欢此文章,请复制http://shbdai.com/industry/1185.html发送给你的朋友。
文章关键词:百度地图sitemap RSS.xml 智能照明系统 智能照明模块 可控硅调光 隧道调光系统