一种应用单片机的汽车防盗报警装置研发

2020-10-13 09:37郭晶
微型电脑应用 2020年9期
关键词:无线通信

郭晶

摘 要: 主要完成了一种汽车远程防盗报警系统装置总体设计方案的构建,详细阐述了系统的硬件构成及软件实现路径,该系统的核心控制器采用了STM32F103单片机,汽车防盗报警功能主要通过中央模块控制器和钥匙模块实现,中央模块控制器通过无线方式将生成的密码地址(一种随机码)发送给钥匙模块,然后中央模块会对接收到的由钥匙模块发回的加密信息进行解密和校验,并返回校验结果,系统据此判断是否发出声光报警,通过无线遥控方式不能更改或泄露密码信息。

关键词: 汽车防盗报警系统; STM32F103; 中央模块; 钥匙模块; 无线通信

中图分类号: TP 393      文献标志码: A

Abstract: This paper mainly completes the construction of a general design scheme for a car remote anti-theft alarm system device, and details the systems hardware composition and software implementation path. The core controller of the system uses the STM32F103 single-chip microcomputer. The module controller and the key module are disigned. The central module controller wirelessly sends the generated password address (a random code) to the key module, and then the central module decrypts the encrypted information sent back by the key module, and verifies and returns the verification result. Based on this, the system judges whether an audible and visual alarm is issued. The password information cannot be changed or leaked through wireless remote control.

Key words: car anti-theft alarm system; STM32F103; central module; key module; wireless communication

0 引言

快速發展的社会经济及科学技术促使汽车成为一项不可或缺的交通工具,随着汽车拥有量的不断增加在人们出现带来极大便利的同时,汽车被盗的案件越来越普遍,汽车失窃案件也不断发生,带来不同程度的经济损失。通过在汽车上安装有效的防盗设备成为解决上述问题的重要手段,汽车防盗技术主要经历了机械式、电子式、芯片式、和网络式防盗技术几种发展阶段,目前国内以电子式防盗技术应用较为普遍,为满足市场需求现阶段的汽车大多安装了相应的防盗设备,犯罪分子的但面对作案手段多样化,传统的汽车防盗系统已难以满足现代汽车防盗的需求,普遍存在远程防盗报警效果不佳、防盗报错率高、缺少车辆定位功能等问题和不足[1]。针对目前汽车防盗报警系统存在的这些问题,本文设计了一种基于单片机的防盗报警系统。

1 汽车防盗报警系统总体设计方案

随着汽车应用的不断普及车辆被盗问题日益突出,给人们的财产安全带来较大的危害,并增加了社会不安和不和谐因素。汽车的安全是市场用户的一项关注重点,目前市场上已有多种汽车防盗产品投入到了实际应用,但仍然普遍存在防盗效果不佳、报警误报率较高等问题。汽车防盗报警系统大多仅实现了单向通信,因加密方法较为简单而极易被破解。为此本文完成了一种汽车防盗报警系统的设计,该系统采用随机加密方法实现了双向通信过程,提高了加密方法的复杂程度,并且可根据实际需要对密码和加密方法进行更改,从而使汽车防盗报警性能及车辆安全性得到显著提升,具有一定的实际应用价值。

本文在设计汽车防盗报警系统时选用了具有功能强大、实时性好等优势的STM32F103单片机(ST公司)作为控制器,并结合运用现代无线通信技术在不受距离约束的前提下实现了双向通信功能,能够直接向车主手机发送汽车状态信息,实现一对一防盗报警功能,所构建的防盗报警系统的结构示意图,如图1所示。

主要由人体感应、振动等传感器构成的信息采集模块负责完成对汽车警情相关信息的采集,具体由传感器向单片机微处理器传送所采集到的警情信息并由其进行处理后,根据处理结果执行相应的报警程序,向车主手机发送短信报警信息,报警器发出语音警告(以不同警情为依据)。车主想要查询车辆状态时可随时向系统发送指令。设防和撤防通过无线遥控器控制。此外,系统在防盗器处于设防状态下会控制后视镜折叠,撤防状态下则展开后视镜,对后视镜的控制通过使用一个步进电机(负责转动后视镜)和两个按键(负责增加或减小角度)完成,驾驶员可根据需要通过按键对后视镜角度减小设定,设定的角度值显示于液晶显示屏幕上[1]。

(1) 信息采集模块,主要由后视镜角度采集电路及相应传感器(人体感应、振动等传感器)构成,负责检测包括汽车被撞、被砸、被晃动、被牵动、是否有人进入车内等的不安全因素,STM32F103的PC10引脚连接数据输出端。由STM32F103 的PB0引脚对振动传感器检测到的相关信息进行处理。防盗报警系统中左右两个角度传感器同STM32F103 的PC4、PC5引脚相连完成相关角度数据的输入,再将模拟电压量通过两个引脚的A/D转换功能完成到数字量的转换后显示于LCD1602屏幕上[2]。

(2) GSM模块选用了支持串行接口的EM310GSM(华为公司),包含标准的SIM卡接口,同单片机的RXD0和TXD0引脚相连,其同外界的串行通信过程通过支持数据宽度、数据停止位、奇偶校验或无校验(可编程)的UART(支持波特率掉电保存)接口实现,同单片机间的通信使用AT指令进行控制。

(3) 录音时间长达790s的WT588D语音模块,供电电压为2.8~3.6V,包含8kHz采样时、32Mb存储器,可使系统的语音提醒需求得到有效满足,报警系统语音提醒的分贝较高,选用性价比较高的TDA2030作为功率放大器(额定功率达14W),语音模块电路的R1和C1并联到地接功放,采用DAC接功放的输出形式实现对大功率扬声器的有效驱动,采用3线串口模式控制语音模块同STM32F103间的连接,P01、P02、P03分别对应DATA数据接口、片选CS和CLK时钟,并分别连接STM32F103的PC7、PC/8、PC6,WT588D只负责接收STM32F103发送的信息(包括数据、指令和时钟信号等)无需发送数据。BUSY代表忙信号输出端,发光二极管在输出低电平时发光对应放音状态[3]。

(4) 控制模块设计,除了油路控制电路和后视镜控制电路外,本系统控制模块的关键在于安装在车上的中央模块(主要负责实现解密、验证和修改功能)和手持的钥匙模块(主要负责实现开锁和关锁功能),两个模块的通信过程,如图2所示。

中央模块和钥匙模块采用无线双向通信模式,两个电路模块设置相同的密码,不同密码对应不同的地址,在系统开始工作后,中央模块等待开锁关锁,钥匙模块等待车况信息(由中央模塊发送),钥匙模块询问中央模块是否开始解锁,钥匙模块根据接收的随机地址(包含8个密码,由中央模块发送)对相应的密码进行查看和加密后,再发送到中央模块由其校验密码并据此执行相应的动作,为避免系统掉电时丢失密码信息,中央模块产生的随机密码用EEPROM储存,并且在解锁后能够对密码及加密方法进行更改,使汽车防盗系统的稳定性和安全性得到显著提高。经过多次试验测试后验证了本文所构建系统的有效性,基本达到了预期的要求,取得了良好的防盗报警效果,为优化和完善汽车防盗功能提供参考[3]。

2 系统硬件设计

系统的硬件主要包括电源模块、液晶显示模块、STM32F103最小系统、无线通信模块、储存芯片等,为确保电路整体性能的稳定,STM32F103作为系统主控制器主要负责连接和组合不同模块从而形成一个完整的电路系统,系统硬件电路框图,如图3所示。

各模块电路的硬件原理为:(1) STM32F103最小系统电路,主控制器选用32位的基于ARM Cortex内核的单片机STM32F103(STM公司),其工作频率高达72M,处理速度较快,包含丰富的外设、5个UART接口、RAM(64KB)、Flash(512KB,可编程)、SPI接口3个、可编程GPIO,可使防盗报警系统的主控功能需求得到有效满足。(2) 稳压电源电路,为满足单片机工作对5V电压的使用需求采用线性电源芯片L7805(输入电压在6~21 V之间,发热量较大,要加散热片)设计了一个稳压电源电路,输入输出端接两个电容的L7805可通过虑波减少纹波的影响,因无线通信芯片使用3.3 V电压,需在L7805的基础上使用外围电路相同的稳压芯片ASM1117-3.3 V[4]。(3) 无线通信芯片电路,通过SPI通信方式只需要4根线即可同STM32F103相连,具体选用了无线收发芯片CC1101,另接GDO0和GDO2两根线,设置其工作频率为433M。(4) 报警电路,本文系统主要采用光和声两种报警方式,采用倒灌式的LED在单片机输出高电平时不亮、在低电平时亮。通过脉冲驱动产生声音,开关状态的控制过程采用一只NPN三极管完成,给三极管基极一个高电平(通过单片机)导通、给低电平关闭,从而使喇叭振动发出不同的声音(通过控制脉冲的频率),发出报警提示。(5) 储存芯片电路,选用了AT24C02(Atmel公司,一种EEPROM),I2C总线可同时挂多个器件(器件间需外加4.7 K的上拉电阻),由单片机通过I2C通信方式(具体使用SDA和SCK即时钟线和数据线)对其进行控制。(6) 液晶显示模块采用了包含16个端口的LCD1602,采用并口通信方式连接单片机[5]。

3 系统软件设计

3.1 总体程序流程

本文采用C语言编写完系统程序后将其写入单片机,采用MDK编译环境完成单片机源程序的编写,编译后产生的程序代码为.heX,然后在目标单片机的flash中下载.heX文件(通过JTAG下载线完成)。系统总程序流程,如图4所示。

系统初始化STM32F103后检测车辆是否为设防状态,采用无需软件编码的遥控器PT2262只需对接收模块的设防控制接收情况进行检测,在不设防状态下执行遥控接口扫描及后视镜控制循环操作,在设防状态控制后视镜闭合折叠,同时启动人体感应模块、振动模块完成对警情信息的随时采集和上传,系统调用GSM通信程序在车主查询各接口状态时(通过短信)发送相应状态信息。系统在发生警情时通过检测单片机接口判断具体情况(振动或有人非法入侵),并据此调用相应子程序(人体感应或振动报警)完成相应处理后,再由单片机控制遥控器决定设防或撤防,后视镜在撤防后会展开到设定角度[6]。

3.2 软件主程序设计

系统由STM32单片机连接各功能模块实现各种功能,系统软件总体结构示意图如图5所示。

中央模块通过无线方式将对应密码地址的随机码(由定时器产生)发送至钥匙模块,由钥匙模块在EEPROM根据地址(每次地址都不同)查找密码并加密后返回信息,即使能够窃听到信号也是地址和加密后的密码,不知道约定好的密码和加密方法的情况下无法通过校验。修改密码时,钥匙模块在中央模块每发出一个新密码时均会返回一个校验码,以确保两个模块密码一致。中央模块主程序流程(钥匙模块在系统初始化后需判断信号的发送情况,其余流程同中央模块相同)[7],如图6所示。

3.3 随机码产生程序及双向无线通信程序设计

对应EEPROM地址(256字节,地址范围在0~255间)的随机码由中央模块产生,EEPROM共包含256个储存单元,为使计数范围也为0~255,设置定时器0为方式2、计数初值为0,系统开始运行后设置定时器0并开始计时,在0~255范围内持续循环的定时器接收到信号后(由钥匙模块发送)随机取出当前值,间隔一段时间再取一个,连续取8个。CC1100E无线通信芯片通过SPI同单片机通信,通过接收子程序INT8U halRfReceivePacket(rxBuffer,length)的返回值判断是否接收到信号,接收到信号时返回一个1、未接收到则返回一个0,接收到信号后调用halRfReceivePacket()后返回一个1即可读取接收到的数据(在RxBUF[]数组里读取)。钥匙模块在中央模块发出信号后需处于等待接收信号状态[8]。

3.4 密码修改和校验程序设计

开锁后仅可在中央模块中修改密码,以保证密码安全。且修改密碼时需在主机收到确认信号(由钥匙模块发送)后方可进行,以避免新的密码被窃听。钥匙模块确认后的随机密码产生方法同上文所述相同,从定时器中抽取512个计数值TL0并在AT24C02中存储,修改完后向钥匙模块同步密码,分64次发送512个密码,钥匙每接收一次密码即原样返回接收数据,中央模块据此发送下一次。

3.5 系统性能测试

为检测本文所设计相同的有效性进行了实验测试,经多次调试和修改后有效的实现了无线双向通信、修改密码及报警功能,中央模块完成了准确的解密和校验过程并开启了车辆,钥匙模块完成了相应的开关锁功能,实验测试结果如表1所示。

本系统具有较高的关、解锁成功率,具有一定的实用性。发生的失误主要由无线通信受环境电磁干扰导致,可通过转换遥控方向提高通信质量。

4 总结

本文采用STM32单片机构建的汽车防盗报警系统的功能主要通过所设计的中央模块和钥匙模块实现,通过无线通信方式实现了远程双向通信功能,通过无线遥控不能更改、泄露密码信息,该系统由中央模块负责完成对加密信息(由钥匙模块发送)的校验过程,并根据校验结果执行相应动作,解锁后可更改密码和加密方法(根据实际需要通过中央模块完成),修改后通过无线通信方式确保同钥匙模块的加密方法相同,采用EEPROM储存随机密码避免了密码信息的丢失,显著提高了汽车的安全性。

参考文献

[1] 牟如,强李乐.基于PLC的太阳能自防盗汽车防护装置设计[J].机械设计与研究,2019(2):12-15.

[2] 钟滨,王亚星.多功能汽车移动视频监控防盗报警系统[J].现代工业经济和信息化,2019(12):46-47.

[3] 孙嘉兴,朱宝全,王飞奇,等.基于Arduino控制的汽车进入与防盗报警系统[J].中小企业管理与科技(上旬刊),2019(3):153-155.

[4] 方泽强,黄剑锋. 一种机动车可定位自动报警智能防盗系统[J].物联网技术,2017(1):102-104.

[5] 李政清,关晓磊. 基于北斗RDSS的远程环境监测预警系统[J].单片机与嵌入式系统应用, 2016(6):40-42.

[6] 袁姜红,陈二阳,蒋毅.基于嵌入式的车载视频监控防盗系统的设计与实现[J].安阳师范学院学报,2019(5):50-52.

[7] 宫唤春.基于单片机的汽车防盗报警系统设计与实现[J].汽车工程师,2018(5):28-30.

[8] 郑乾,李馥安,武超,等. 基于STC89C51单片机和GSM的汽车防盗系统设计[J].河北北方学院学报(自然科学版), 2019(5):36-41.

(收稿日期: 2020.03.12)

猜你喜欢
无线通信
宽带脉冲无线电通信关键技术及应用研究
基于单片机无线数显温湿度计的设计
基于FPGA的语音无线传输系统
无线通信技术未来发展趋势分析
超宽带无线通信技术及其应用综述
餐饮业油烟在线监控系统的设计与研究
基于ZigBee的舱内人员巡检系统的应用研究
基于ARM的大棚种植环境检测系统设计