基于单片机的校车超载系统设计

2019-09-24 01:16袁青松高琳琳姚建红
常熟理工学院学报 2019年5期
关键词:通讯单片机电路

袁青松,高琳琳,姚建红,周 玮

(常熟理工学院 汽车工程学院,江苏 常熟 215500)

生活水平的不断提高,使人们出行时对车辆的依赖程度越来越高,随之引发的交通事故也越来越频繁,尤其是学校这类短时间内人流量大的场所,一旦发生事故,就将给国家和人民带来重大的经济损失和情感伤害. 为了从根本上遏制车辆超载,保证行车安全,本文设计了一种校车超载检测装置[1]. 该系统以STM32型单片机为控制芯片,以超声波传感器作为信息采集端,并基于C语言编写控制程序. 通过对上车以及下车人数的检测及综合判断,一旦发现车辆超载,则立即向车辆CPU发出指令禁止车辆启动[2]. 该系统体积小、成本低、调节方式简单方便,能够准确检测车内实际人数,相对于传统的车辆超载检测更加简洁方便[3],实用价值高.

1 系统整体设计

图1 系统结构图

系统整体设计如图1所示. 车辆超载检测装置以STM32单片机为控制核心,超声波传感器将上下车辆的人数数据采集后传递给单片机,经过STM32单片机的运算处理后计算出车内实际人数,并与设定好的额定人数相比较,判断出车辆是否超载[4]. 其中STM32单片机相当于电脑CPU,负责接收各传感器发来的数据,并对接收的数据进行综合判断. 然后通过CAN通讯模块向车辆CPU发送指令,控制车辆的启动,同时将数据显示在显示屏上. 本系统设计包含3部分:第一部分为信号采集电路,获取上下车的人数;第二部分为控制系统,进行数据的处理和运算,并控制车辆的启动;第三部分为显示模块,显示控制模块的结构,方便使用人员查看.

2 系统硬件设计

2.1 主控芯片选择

综合考虑选用芯片的性能、价格以及适用范围后,本系统选用了型号为STM32F103ZET6的单片机.这款单片机的性能良好,其总线宽度有32位,工作频率最高可达72 MHz,运算速度以及数据处理速度都非常快,完全能够满足校车超载系统对数据快速处理的要求. 同时该款STM32芯片拥有极大的运算空间,可以方便多路数据同时采集和处理,也方便后期的调试. 单片机上的CAN通道方便与车载CPU连接.

2.2 电源模块

电源模块关乎整个系统能否正常工作. 电路中各模块对所需电压都有严格要求,整个系统的单片机及其他各模块所需要的电压均为3.3 V或5 V,故在电路设计中选用LM1117IMP-5.0与LM1117IMP-3.3两种芯片,以使整个电路系统中的电压稳定在3.3 V和5 V之下. 其中为了减小电压降要先将高伏电压转为5 V,然后再转为3 V. 具体电路如图2、图3所示.

2.3 OLED显示模块

OLED显示屏是超载检测系统中不可缺少的一个模块. 在整个超载检测系统调试中,可以通过OLED上人数的变化判断系统是否工作,同时也可以在调试检测系统时提示超声波传感器的工作状态. 除此之外,可将上车人数显示在OLED上,以便使用人员在使用时直接通过OLED屏清点车内人数,减少了使用人员的工作量,其设计电路如图4所示.

2.4 信息采集模块

信息采集模块在本系统中起到眼睛的作用,不论是单片机还是其他模块的工作都基于信息采集模块采集的数据. 所以该模块传感器的选择十分重要. 在比较了红外传感器和超声波传感器的优劣后,本系统选用两个超声波传感器作为信息采集模块,其中一个用于采集上车人数,另一个则用于采集下车人数,两个传感器同时工作为单片机提供实时数据. 其电路如图5所示.

2.5 CAN通讯模块

本系统需要将单片机的处理结果发送给汽车CPU以达到控制车辆启动的目的,故设置CAN通讯模块. CAN通讯模块由STM32单片机的CAN通道端口和CAN总线收发器两部分组成. 在CAN通讯模块中,STM32单片机主要负责CAN通讯协议的配置以及对报文数据的打包、拆分、校验,并且与车辆主控单元ECU建立连接. 其中CAN收发器选用TJA1050型号的芯片,用来实现CAN控制器和CAN总线的硬件连接. 之所以选用TJA1050,是因为其瞬间抗干扰能力强,还可以降低射频干扰便于数据传输,同时该芯片数据传输速率可以达到1 MBaud,完全满足本系统需求. CAN通讯模块的电路图如图6所示.

2.6 继电器控制电路

继电器在本系统中起到执行器的作用,方便整个系统的演示. 在系统里继电器将续接一个小灯,当车辆内人数超载时单片机控制继电器工作,小灯点亮. 反之,车内未超载时小灯则不亮,其电路如图7所示.

2.7 独立键盘

独立键盘在本系统中起到复位、清除的作用,可用键盘控制清除单片机中的无用数据,减轻单片机的工作负担. 同时,当系统出现故障后,也可以通过复位键还原系统. 其电路如图8所示.

图2 5 V稳压电路

图3 3.3 V稳压电路

图4 OLED显示电路

图5 信息采集模块电路

图6 CAN通讯模块电路

2.8 控制模块

控制模块主要由人数采集电路、单片机最小系统机组成. 单片机选用最小系统板,直接与PCB板接触便可使用. 人数采集的工作则由超声波传感器完成,所选用超声波传感器可将采集到的人数信息传递给单片机,然后经单片机对数据进行处理,最终确定车辆内实际人数,执行相关决策.

图7 继电器控制电路电气结构图

3 系统软件设计

车辆超载检测装置控制程序由数据采集和处理执行两部分组成. 数据采集包括:上车人数和下车人数的采集. 处理执行包括:数据的处理与比较、通讯数据传输、继电器控制. 具体执行流程为:数据采集模块用于获取相关数据,单片机接收数据后对数据进行处理计算出实际人数,与设定值进行比较判断车载状态,单片机根据车载状态向车辆CPU发送指令,控制车辆启动,如图9所示.

图9 主控程序流程图

4 系统测试

为检验设计效果,本系统专门用实验板焊接了整个系统电路,如图10所示. 同时以Keil5编程软件编写程序,然后将预编译成功程序烧录至单片机中. 在进行系统[5]检测时,可以直接通过OLED显示屏显示检测结果.测试结果如下:当车辆载客人数正常未超载时,OLED显示如图11界面所示;当车辆超载时,则车辆将无法启动,OLED显示如图12界面所示.

图8 独立按键电路

5 结论

基于STM32设计的车辆超载检测装置能够实现车内人数实时检测,可改变传统检查车辆超载的方式. 通过车辆超载检测装置检测更方便,效果更明显,可减少人为因素导致的超载现象,大大提高了车辆在载客方面的规范性,提高行车安全.

图10 系统实验板

图11 车辆正常

图12 车辆超载

猜你喜欢
通讯单片机电路
《茶叶通讯》简介
《茶叶通讯》简介
通讯报道
电路的保护
基于单片机的SPWM控制逆变器的设计与实现
解读电路
基于单片机的层次渐变暖灯的研究
基于单片机的多功能智能插排
基于单片机的便捷式LCF测量仪
巧用立创EDA软件和Altium Designer软件设计电路