文章目录

  • 前言
  • 一、准备工作
    • 1.硬件准备
    • 2.软件准备
    • 3.微信公众号
  • 三、AT指令
  • 四、相关配置
  • 五、订阅信息和上报数据到公众号
  • 六、联系我们

前言

本文将介绍如何使用将A9G通过GPS定位得到的经纬度等数据上报至服务器,然后在微信公众号上可以显示定位。

一、准备工作

1.硬件准备

  • A9G开发板
  • GSM天线
  • GPS天线
  • SIM卡
  • USB转TTL
  • 杜邦线若干

2.软件准备

  • 安信可串口调试助手 查看输出的log

3.微信公众号

关注“安信可科技”公众号,在公众号里的定位器可以显示设备上报的定位信息。微信公众号定位器的源码网址:https://github.com/xuhongv/AiThinkerWechatForNB-IoT

三、AT指令

涉及到的AT指令主要有:
初始化A9G:

AT+RST=1 //复位A9G
AT+CGATT=1 //附着网络,如果需要上网,这条指令是必选的
AT+CGDCONT=1,"IP","CMNET" //设置PDP参数
AT+CGACT=1,1 //激活PDP,正确激活以后就可以上网了

初始化GPS :

AT+GPS=1 //开启GPS
AT+GPS? // 查询 GPS 的状态
AT+GPSRD=N //N秒输出一条 NEMA 信息,从AT串口

创建MQTT客户端:

AT+MQTTCONN="wx.ai-thinker.com",1883,"cloud",120,0,"admin","public" //连接MQTT服务器

订阅数据:

AT+CGSN  //获取IMEI
867959033016029AT+MQTTSUB="/IMEI/devPub",1,0  //订阅MQTT主题信息,IMEI可通过AT+CGSN指令进行获取

上报数据:

AT+MQTTPUB="/IMEI/devPub",43,1,0,0  //上报定位数据到MQTT服务器
{"long":value,"lat":value,"qos":0}  //定位数据,要符合JSON格式

四、相关配置

  1. 将SIM卡插入A9G开发板的SIM卡槽,并且接上GSM天线和GPS天线去室外进行测试
  2. 当USB转TTL打印GPS数据,出现A字母就表示A9G已经定位成功,如下图
  3. 由于GPS定位信息输出的是NMEA的信息,需要通过公式进行转换
    以下数据进行演示 A,2236.1467,N,11350.4585(格式:IMEI的格式)
    计算公式如下:
    22度+36.1467/60=22.602445(经纬度)
    113度+50.4585/60=113.840975
  4. A9G开发板发送入网和MQTT连接指令,对应相关的指令可以查看第三章,如下图:
  5. 通过AT+CGSN指令进行获取到IMETI码,在后面加上/W20210011003770字符串,通过在线二维码器生成二维码,如867959033016029/W20210011003770字符串
  6. 微信关注 《安信可科技》 微信公众号后,找到定位器
  7. 在定位器中选择NB系列模组
  8. 进入到安信可NB系列模组定位应用界面

五、订阅信息和上报数据到公众号

  1. 点击扫描模组二维码,扫描之前生成的IMEI/W20210011003770二维码,扫描成功后会提示订阅成功
  2. 订阅成功后,通过串口调试助手发送MQTT发布指令,公众号界面上显示对应的定位位置

六、联系我们

官方官网:https://www.ai-thinker.com
开发DOCS:https://docs.ai-thinker.com
官方论坛:http://bbs.ai-thinker.com
技术支持:support@aithinker.com

A9G开发板上报GPS定位数据实现微信公众号定位显示相关推荐

  1. html微信定位转高德定位,JS微信公众号定位坐标转高德定位坐标,微信公众号定位精度转换高德精度,微信腾讯地图坐标转高德地图坐标

    前言 微信公众号获取的用户当前位置直接放到高德地图api上会偏差非常大,所以需要校正. 如下我分为三步调用:获取当前用户位置->转换成高德坐标->再初始化地图或者设置地图标点 实现 微信定 ...

  2. 第六篇 :微信公众平台开发实战Java版之如何自定义微信公众号菜单

    我们来了解一下 自定义菜单创建接口: http请求方式:POST(请使用https协议) https://api.weixin.qq.com/cgi-bin/menu/create?access_to ...

  3. 微信公众号定位用户所在位置

    微信公众号定位用户所在位置 最近由于项目的原因,涉及到了微信公众号,看了几天文档加上问了问同事,对这个玩意有一点了解,写一下微信公众号定位的方法,记一下以后方便用. //获取codevar url = ...

  4. python 数据拟合 预测_GitHub - wanng-ide/Python-WeChat-Predict: 用现有的数据对微信公众号的一些数据做一个预测,主要采用多项式拟合来构建模型。...

    Python-WeChat-Predict 用现有的数据对微信公众号的一些数据做一个预测,主要采用多项式拟合来构建模型. 概述 项目主要内容是对32个微信公众号在30天的数据进行处理,初始数据全部保存 ...

  5. 微信 php 地图定位,微信公众号定位地图位置写入数据库,再显示地图的方法

    有一个表单,需要在填报过程中获取地理位置.定位方式有三种:H5,百度,公众号.因大家习惯了微信操作,最终选择通过微信公众号接口获取位置数据并写入数据库,再调用腾讯地图展示. 开发架构是laravel6 ...

  6. 使用代理爬去微信公众号_Python3网络爬虫开发实战之使用代理爬取微信公众号文章...

    本节目标 我们的主要目标是利用代理爬取微信公众号的文章,提取正文.发表日期.公众号等内容,爬取来源是搜狗微信,其链接为 http://weixin.sogou.com/,然后把爬取结果保存到 MySQ ...

  7. 微信公众号数据2019_微信公众号榜单排名,2020微信公众号排名

    微信公众号榜单排名,2020微信公众号排名 公众号排名优化的注意事项及细节今天给大家分享一下,作为微信公众号的排名优化对于大多数人来说都已经知道了有这个渠道的事情,其实很多的新产品及渠道出来以后有不少 ...

  8. 开启微信公众号定位服务器,微信公众号的定位是怎样的?

    现在很多的商家为了让自己的生意越做越好,所以他们都会有着属于自己的微信号,这样不但能够让他们有着一个更好的宣传方式,也能够让他们通过这个平台来把自己的事业发展得更大,毕竟现在网络是一个很好的平台,如果 ...

  9. 利用延时处理实现表单系统数据通过微信公众号自动发送消息提醒

    延时处理是指在流程搭建过程中,在第一个步骤完成后不需要立即开启后续步骤,需要几个小时或者几天后再执行,这时可以利用延时处理功能,来实现数据流程. 如:利用集简云无代码软件集成平台, 连接金数据表单系统 ...

最新文章

  1. 我为NET狂官方面试题
  2. Linux 设置 Swap 空间
  3. python对英语和数学的帮助-文科女生学Python:学过初中数学和英语就能懂的编程逻辑...
  4. 阿里巴巴利润暴涨108%
  5. linux装redis环境变量,linux 怎样安装redis
  6. 汉字和utf编码转换
  7. 【经典算法】第八回:桶排序
  8. python 进行后端分页详细代码
  9. Nagios的安装与配置并实现飞信报警
  10. 用代码块在new对象时set属性
  11. [2018.10.15 T1] 或
  12. Matlab 画图函数
  13. idea2020更新功能_idea2020 插件备份
  14. kettle定时调度
  15. 《GNU Emacs Lisp编程入门》读书笔记
  16. 企业微信有网页版登录吗?
  17. 2016 server win 假死_Win7运行程序无缘无故发生假死现象五种解决方法
  18. Win32多语言IME开发概述
  19. Ionic5项目android打包流程
  20. tf.flags用法

热门文章

  1. 如何查看eclipse的版本(Photon/Oxygen/Neon等)
  2. 三星手机sim显示无服务器,三星手机不能拨打电话的现象的解决办法详细介绍
  3. android的spinner字体控制
  4. word如何设置上标形式_word2013批量设置上标地方的方法步骤
  5. 利用twitter官网提供的api 及tweepy库 爬取tweets
  6. 学会如何更系统地批判性地思考问题
  7. vue+iView实现导入与导出excel功能
  8. 是什么让你感受到了中年危机,如何应对即将到来的中年危机
  9. 全新线控制动系统产品发布,清智科技正式完成业务拓展
  10. matlab的多变量dmc源程序,基于MATLAB多变量DMC算法仿真技术研究