- 收藏
- 加入书签
基于STM32开发板控制SIM868模块实现位置数据上传
摘要:本论文介绍了基于STM32开发板和SIM868模块的设计与实现,旨在将位置数据上传到ONEnet平台。首先,介绍了STM32开发板和SIM868模块的基本原理和特点。然后,详细阐述了系统的硬件设计和软件实现过程。通过使用STM32的串口通信功能,将SIM868模块与开发板进行连接,并编写相应的代码实现位置数据的获取和上传。最后,对系统进行了功能测试和性能评估,验证了设计的可行性和稳定性。
关键词:STM32开发板;SIM868模块;ONEnet平台
引言
随着国防军工企业的发展,我国军工企业涉密笔记本已有约5.39万台。而在外出过程中往往因笔记本与员工分离,导致公司机密被窃取。本论文将介绍防丢器产品的客户端及服务器之间位置数据的传输问题的解决方法。ONEnet平台作为一个集成了云计算和物联网技术的平台,提供了位置数据上传和管理的功能。我们利用STM32开发板和SIM868模块,实现位置数据的采集和上传到ONEnet平台。
1.STM32开发板
1.1 主控芯片介绍
STM32开发板是一款基于STMicroelectronics的STM32微控制器系列的硬件平台,用于嵌入式系统开发和物联网应用。STM32是一系列广泛应用于各种嵌入式系统的32位ARM Cortex-M内核微控制器,提供了丰富的外设集成和强大的计算能力。在防丢器产品的设计中,本论文中的防丢器产品选取STM32F103C8T6作为该设计的主控芯片,其具有IIC,SPI传输以及UART,ADC输出等功能。在系统结构中,外部电路是通过连线至主控芯片的控制引脚以实现相应的功能,起着“大脑”的作用。[1]
1.2优势特点
STM32具有强大的处理能力,丰富的外设和功能,丰富的开发生态系统,低功耗设计,可靠与稳定等优点。
2.SIM868模块单元
SIM868是一款集成了GSM/GPRS、GNSS和Bluetooth功能的多模块无线通信解决方案。它由SIMCom公司开发,旨在为物联网(IoT)和远程通信应用提供可靠的连接性。防丢器位置信息的获取和相关参数的上传终端分别采用GPS和GPRS方式设计,而传统终端GPS定位和GPRS数传因模块设计不同,不仅花费成本较高,而且体积较大,不易携带[2]。本文所选的SIM868模块设计体积小,内置了全球卫星导航系统(GNSS)接收器,包括GPS、GLONASS、BeiDou和Galileo等多个卫星系统。这使得SIM868能够获取准确的位置信息,用于定位和导航应用,如车辆定位、船舶追踪、物流管理等。[3]而CPU(中央处理器)STM32F103串口与SIM868模块GPRS和GPS串口通信都使用兼容3~5V的TTL(晶体管—晶体管逻辑电平)转换电路设计。为了避免SIM卡插拔导致终端故障,可采用ESD静电保护电路。同时,为确保SIM868模块能够实现无线信号的有效传输,GPS可采用有源天线设计,GPRS、GPS、蓝牙天线PCB电路都采用阻抗匹配设计[4]。
3.硬件设计和软件实现
3.1连接STM32开发板和SIM868模块
将STM32开发板的TX引脚连接到SIM868模块的RX引脚。将STM32开发板的RX引脚连接到SIM868模块的TX引脚。确保连接正确可靠,避免引脚接错或松动。
3.2电源供应
根据SIM868模块的电源需求,选择合适的电源电压和电流。将电源正极连接到SIM868模块的VCC引脚,将电源负极连接到GND引脚。为确保电源稳定可靠,本产品使用电源管理模块,也可选用稳压电源进行替换。
3.3配置USART串口通信
在STM32的开发环境中创建一个新的工程。在工程中选择对应的STM32型号,并配置相应的时钟源和系统时钟。在工程中添加对应的串口库文件,例如采用HAL库。打开主函数(main.c)文件,找到初始化函数,使用HAL库或其他相关库配置USART串口通信参数。设置串口的数据位、波特率、校验位和停止位等参数,与SIM868模块的通信要求相匹配。
3.4AT指令控制
使用USART串口与SIM868模块建立通信连接。发送AT指令给SIM868模块,以控制其功能和获取位置数据。定义和调用AT指令控制函数,根据需要,可以定义不同的AT指令控制函数,用于发送不同的AT指令并处理响应。例如,可以发送AT+CGNSPWR=1来启动GPS定位功能,然后发送AT+CGNSINF来获取位置数据。
3.5数据上传到ONEnet平台
在ONEnet开发者中心,创建产品。创建完成后,根据模块参数设置并添加设备。接着创建数据流,即电路板向ONEnet发送数据的参数。使用ONEnet平台提供的API,将位置数据上传到平台上。最后在STM32开发板上编写代码,通过HTTP或其他通信协议与ONEnet平台建立连接。将获取到的位置数据封装成JSON格式或其他适合平台的数据格式,并通过POST或其他方式上传到ONEnet平台。
4.功能测试和性能评估
通过编写测试代码,日志记录和分析,反复测试和调试等方式进行功能测试和性能评估。
功能测试方面,验证SIM868模块的连接和通信:确保STM32开发板与SIM868模块之间的串口通信正常,能够发送和接收数据。并测试AT指令控制:发送各种AT指令来控制SIM868模块的功能,例如启动GPS定位、获取位置数据等。最后验证指令是否能正确响应并获取到预期的结果。数据上传测试,可使用ONEnet平台提供的API,将位置数据封装成JSON格式或其他适合平台的数据格式,并通过POST方式上传到平台。验证数据能够成功上传到平台并被平台接收和处理。
而性能评估方面,进行定位精度评估:使用SIM868模块进行多次位置获取,并与实际位置进行比对,评估定位精度。以及数据上传稳定性评估:进行连续的数据上传测试,观察数据上传的稳定性和可靠性。也要考虑到模拟不同网络环境下的上传情况,如弱信号、网络延迟等。最后进行整体系统响应评估:测试整个系统的响应时间,包括从获取位置数据到上传到ONEnet平台的整个流程。评估系统的实时性和响应性能。
5.结束语
本文详细介绍了基于STM32开发板控制SIM868模块实现位置数据上传的硬件设计和软件实现过程。通过正确连接STM32开发板和SIM868模块,配置USART串口通信参数,并使用AT指令控制SIM868模块的功能,成功获取位置数据并上传到ONEnet平台。通过功能测试和性能评估,验证了系统的可行性和稳定性。
通过这样的系统实现,我们可以实时获取防丢器的位置信息,并将其上传到云平台,为实时定位、追踪和监控等应用提供了便利。同时,基于STM32开发板和SIM868模块的硬件设计和软件实现,具有较低的成本和较小的体积,适用于各种物联网应用场景。
参考文献
[1]潘玉玥,梁凤严,黄月霞等.基于STM32单片机的智能窗户设计[J].中国仪器仪表,2022(10):46-49.
[2]庞然.基于SIM868的智能车联网终端设计[J].电信快报,2019,(05):25-28.
[3]韩进,马双.基于SIM800C的GPRS数据传输系统设计[J].电子产品世界,2016,23(11):39-42.
[4]林砺宗,徐俊锋,翟俊忠.基于SIM900A的工程车辆远程监控系统[J].仪表技术与传感器,2018(02):79-82.
京公网安备 11011302003690号