上个月买过一个4G+GPS模块,SIM900A算是一个比较有名的通信模块了,不过不知道为什么连不上网,后来就搁置了没有使用。但是前两天又看到一款塔石的4G模块。
模块介绍
买了一款支持4G和GPS的模块,于是来尝试一下上网和获取定位信息。
到手有两组接收器,分别是GPS和4G的接收器,以及模块,在官网下载手册之后,手册算是比较详尽,总共130页的手册。
通过串口支持比较多的功能,但是很多功能我都比较陌生,比较熟悉的只有TCP,UDP,MQTT,HTTP这些,例如阿里云还有OneNet则比较少用没怎么用过。
塔石DTU则是模块厂家的云平台,后续有机会会去尝试一下。
我买的这个模块引脚如上,其中除了电源和串口引脚,其他引脚均可以不使用。
并且有一个官方上位机用于调试,可以一键配置等等,因此本期来测试一下使用。 ** 模块使用和测试 ** 连接上模块和串口之后,通讯指示灯正常亮起来。
可以看到NET指示灯是亮的,这意味着设备已经连接上网络了,但是GPS指示灯没亮,我整了一会也不知道是怎么回事,只能等周末结束问一下技术售后了。
读取参数之后,正常的读取到了设备参数,并且信号强度也是正常的。 然后使用的时候发现一个问题,就是如果我的4G那根天线信号不好的话,设备就会反复重启。
根据AT指令,“+++”退出透传模式,进入AT指令模式。
发送AT成功获得响应。
接着我们获取一下当前时间。
可以正常的获取网络时间。 接着我们测试一下 ** MQTT服务器 **
这里可以用AT指令自己配置,也可以用它的上位机程序来快速配置,我们就麻烦点,采用AT指令来配置,方便以后在配合单片机使用。
首先是设置服务器地址。
总共有三个参数,第三个参数代表所要使用的通道,模块总共有四个通道,当然算上串口的话其实是五个数据通道。 这里我使用之前我常使用的百度云服务器来测试。
首先进入AT指令模式,并设置MQTT服务器地址和使用通道。
设置Cliendid,后续还要设置服务器用户名和密码。
接着设置MQTT的心跳时间,常规为120s.
这样子我们就成功的配置好了MQTT服务器的连接信息,接下来看一下MQTT服务器是否有设备连入。
从MQTT服务器后台可以看到设备成功的连接上了。
接下来我们设置订阅信息,向模块发布订阅信息。
接着,设置推送,它的作用是将透传模式下串口的数据转送到MQTT服务器中。
接下来利用串口发送一段Json字符串,之前有做过一个RCL测量仪,我们利用相同的报文上传一个值。
可以看到,手机也正常的收到消息,并且成功的处理消息。
后续有时间的话将探索更多的消息,毕竟4G模块和GPS模块的使用范围也很广,看一下能不能用4G模块调用百度地图的API获取数据。