基于STM32的新型电动两轮车远程控制系统设计*
*基金项目:国家自然科学基金项目(51507097)。
本文引用地址://www.cghlg.com/article/202204/432709.htm在世界范围内,电动两轮车的使用越来越普及,给出行带来很大方便,同时电动两轮车的功能越来越多,功率可以人为定制,进而出现了很多价格昂贵的改装车。因此车辆的防盗问题日益突出,被盗事件也日益增多,防盗性能亟须增强。目前市面上电动两轮车设计的防盗方法主要是采用车钥匙和机械锁,不能及时获取电动两轮车的位置和状态,更不能及时地防止盗窃的发生;通信方式主要是采用蓝牙和Wi-Fi(wireless fidelity,无线保真),通信距离短,受控制范围小1-3。有学者采用RFID(射频识别)技术设计了电动车防盗监控平台,能够在车辆被盗时及时帮助失主找回车辆。但RFID 通信距离太短,不能远距离实时控制[4]。
本文基于目前电动两轮车防盗和通信的缺陷,设计了一种新的远程防盗控制系统。
1 系统设计方案
本设计采用STM32F103ZET6 为主控芯片,北斗S1216F8-BD 定位芯片构成北斗定位模块, 通信芯片SIM800C 构成GSM(Global System for Mobile Communications,全球移动通信系统)通信模块。如图1 所示。电源模块给整个系统供电。STM32 的工作电压是1.8 V ~ 3.3 V 范围,本设计中使用直流3.3 V 供电。将电源接入到芯片电源引脚即可。北斗定位模块把获取的位置信息传输给控制器。
手机APP(应用程序)界面如图2 所示,获取STM32上传的信息,如位置、报警等。用户发出控制命令,实现相应的控制功能。
通信模块负责信息的传输。位置信息和控制请求经通信模块发送给APP,用户通过APP 发出控制命令经GSM 模块发送给控制器,使用户能随时随地掌握车辆状态和对车辆实时控制。
控制器采用STM32F103ZET6 微控制器,是整个系统的控制核心,完成数据处理和控制功能。
Copyright:广州大学何忠英
图2 APP控制界面
2 硬件电路原理图设计
为节省开发时间和成本,系统采用模块化设计。系统提供相应的电源、时钟和复位电路,以使STM32F103ZET6微控制器正常工作;留有引脚插口,以便接入GSM 模块和北斗模块;因为CPU(中央处理器)引脚输出最高电压为DC 5V,不能直接驱动电机[5],需使用继电器间接控制。
如图3 所示。电池(BT)接入电源模块,经电源模块输出DC 12 V 供给GSM 通信模块;输出DC 3.3 V 供给北斗模块和STM32 芯片;输出DC 5 V 供给STM32的GPIO(通用输入输出)端口相应VDD 引脚(图中未画出);输出DC 48 V 经过开关S1 和继电器K1 供给电机控制模块。电机控制模块输出控制电压驱动电动两轮车电机M1 运转或停止。
S2 是电动车启动开关。开关S2 闭合时,引脚PB13接3.3 V 电源,引脚PB14 接地,进入运行模式;开关S2 关闭时,引脚PB13 接地,引脚PB14 接3.3 V 电源,进入监控模式。
北斗定位模块采用S1216F8_BD 定位芯片,定位信号经过TXD和RXD引脚传输给STM32的PA3(USART2_RX)和PA2(USART2_TX)引脚,进入CPU 进行处理。
GSM 模块SRXD 和STXD 引脚分别连接主控芯片PB10(USART3_TX)和PB11(USART3_RX)引脚,进行信息传输,使得主控芯片经过GSM 通信模块,能可靠地和APP 通信。
3 定位功能实现
北斗定位模块原理图如图4 所示。
U_BD1 是超低静态功耗的稳压芯片,把3.5 V 的电压经过引脚1 输入给芯片,再由芯片的第5 脚输出稳定的3.3 V 电压。
U_BD2 是北斗定位芯片S1216F8_BD,由天线T接收采集卫星信号,从第11 脚RF_IN 输入到芯片,经芯片处理完后,把数据经过串口输出。第21 脚和第20脚分别与主控制板的引脚PA2、PA3 连接,进行串口通信,传输数据。
S1216F8-BD 北斗芯片默认采用NMEA-0183(美国国家海洋电子协会)协议输出北斗定位数据,控制协议为Sky Traq 协议。软件设计流程图如图5 所示。
北斗定位函数初始化硬件之后,通过调用北斗的S1216F8BD_Cfg_Rate 函数判断模块是否在位,如果不在位,则尝试去设置模块的波特率为38400,直到检测到模块在位为止。然后进入死循环,等待串口接收北斗数据。每次接收到北斗模块发送过来的数据,就执行数据解析。最后得到电动两轮车所在位置的经度、纬度和行驶速度。
4 行驶功能实现
4.1 预先设置
插入未停机的中国移动或中国联通的SIM 卡,以便通信使用,并在APP 中设置接收信息的号码。在APP 中设置电动车开机密码和电动车车主身份信息到STM32 内核,以便识别车辆身份。设置50 m 电子围栏,用于非法移动报警。
4.2 正常开机使用
使用流程如图6 所示,电动车主正常使用钥匙开车锁S2,PB13 = 1 和PB14 = 0,进入运行模式。CPU 上电,系统进行初始化,发送开机申请到APP。车主在APP上输入行驶密码。当按下启动开关S1,用户输入密码正确时,PB15 = 1,光电耦合器U100 接通,使得继电器K1 线圈得电,触点吸合,电机控制模块通电,控制电机正常运行,准予骑行。
当开机密码错误且错误次数超过3 次,判断为非法开机,此时,PB15 = 0,光电耦合器U100 断开,继电器K1 触点断开,切断电机供电,锁死电机,并且电动车发出警报,上传位置信息给车主,实现防止车辆非法骑行或被盗。当车主确认输入密码的是本人,可以解除警报,进入监控模式;否则一直报警,并且每隔1 分钟上传一次位置信息给车主。
当合法骑行完毕,锁车后,PB13 = 0,PB14 = 1,进入监控模式。
5 监控和报警
监控模式如图7 所示,会一直在系统后台定位,每隔1 分钟,采样一次经纬度。依据前后2 次经纬度计算出车辆的位置移动距离L。若未超出电子围栏( 如50 m),则继续监控,否则报警并设PB15 = 0 锁电机,且每隔1 分钟发送位置信息给车主,以便车主追回车辆,如图8 所示。当车主把警报解除后,继续监控,否则一直报警和定位。
6 车辆追踪设计
用户可在APP 上随时查看位置信息,以便更人性化的监控车辆所在位置,放心使用该服务,如图9 所示。
图8 显示被盗位置
图9 位置查询
车主在APP 上设置车主身份信息。当车辆被盗时,能在APP 上查询出车主信息,如图10 所示。便于执法人员准确地识别真正的车主,有助于解决纠纷。
图10 显示车主信息
7 结语
系统通过GSM 模块接入全球移动通信网络,通信信号遍布全球每个角落,使得手机APP 与控制器之间的通信不受距离限制,解决了控制距离受限制问题,实现了对电动两轮车的远程控制。
本文从设计电动两轮车新型控制系统的原理方框图出发,设计了系统的各个组成部分、硬件电路原理图、软件流程图和程序代码(因篇幅有限,未列出),介绍了系统的工作原理。经过实验验证,此远程控制系统可行,具有实用和商业推广价值。因篇幅有限,APP 设计的其他功能,本文未阐述。
参考文献:
[1] 周若兰等.共享电单车发展现状的问题及对策分析[J].物流科技,2021(2):47-49.
[2] 李丹.电动自行车安防智能化系统设计与实现[D].成都:电子科技大学,2019.
[3] 王红军,郑帅.基于STM32的无线视频小车设计[J].电子技术应用,2021(1):20-21.
[4] 林健等.基于RFID技术的电动车防盗监控平台设计[J].软件导刊,2020,19(3):62-65.
[5] 黄克亚.ARM Cortex-M3嵌入式原理及应用[M].北京:清华大学出版社,2020.1.
(本文来源于必威娱乐平台 杂志2022年3月期)
评论