今天在雷锋网上看了一篇文章说2G/3G即将退出历史舞台,NB-IoT逐渐取代它们成为新一代通信的主流。
https://www.leiphone.com/news/202004/muG57GU8JLJSFWuH.html
这让我想起了去年做的一个项目,一款基于NB-IoT网络实现远程控制开关。领导说客户要求必须基于NB-IoT。但是截至到今年年初,我所在的城市NB-IoT网络都不是特别的好。虽然最近几年NB-IoT在网络中特别火可在实际项目中应用的相对还是比较少的起码我所在的城市是这样的。
虽然它有很多优点,但是最关键的确是当地有没有基站。对于二三线城市的运营商来说还没有强大的驱动力让他们大面积铺设NB-IOT设备。
文章也提到了这点,NB-IOT现阶段的问题:
但是文章中也说了,今年国家会大力推动网络的升级,所以NB-IOT假以时日必然会兴起。
项目介绍:
整个项目说白了很简单,就是通过手机远程控制开关实现开关的开启和关闭、定时,联动等功能。整个项目是根据客户要求定制的数量大概有几万个。
项目选择:
设备端:stm32f030+SIM7000C AT指令
服务器:阿里云 +mqtt
代码编写部分:服务器端程序相对来说比较简单,搭一个开源的mqtt服务器即可。
设备端stm32与sim7000C通过串口通信,这里着重介绍sim7000c,它的功能很强大只需要stm32通过串口发送几个简单的AT指令就可以了。
SIM7000C模块介绍:
在调试阶段我直接购买了微雪的模块:
SIM7000C NB-IoT HATwww.waveshare.net微雪提供的资料已经很全面了,SIM7000C支持多种网络协议,HTTP ,COAP MQTT,FTP等,我使用的是MQTT协议。
相关的AT指令:
具体介绍参照微雪提供的文档:
http://www.waveshare.net/w/upload/1/1c/Alibaba_MQTT_and_COAP_AT_Application_Note.pdfwww.waveshare.net串口调式工具
这里面已经为用户设置好了相关指令,按照这些指令逐一发送即可完成对SIM7000C的MQTT操作。
介绍完毕,个人觉得这个模块用起来还是比较简单的喜欢的小伙伴可以试试。