一种超速报警器的设计

2019-03-14 01:23
福建质量管理 2019年4期
关键词:磁钢子程序霍尔

(武汉工程大学 湖北 武汉 430200)

一、引言

目前,作为汽车主动安全装置之一的超速报警系统成为各国汽车行业的重要研发项目之一。通过多次研究超速现象造成的道路交通安全事故,我们得出超速对驾驶员的影响主要有驾驶员的视野变窄、动视力下降、辨别近物的能力下降[1]。目前已上市的超速报警系统主要是采用激光、雷达以及影像传感等方式。例如,我国四川中测电子科技有限公司生产的测速报警装置。就国内技术而言,远近雷达、电子传感等技术的进一步发展,生产更为先进和人性化的超速报警装置已成为可能。

本系统基于单片机设计了一种超速报警装置,主要目的是当汽车行驶在不同限速路段时,依据不同路段速度的要求,利用按键输入初始值来设定汽车最高的行驶速度,同时由液晶显示屏显示当前的速度;再利用测速传感器对汽车行驶速度进行监测,将监测到的信号送入单片机;经由单片机对实时速度与设定速度进行比较。若行驶的速度超过设定的最高速度,则警报器及时报警,提醒驾驶员降低行驶速度。

二、硬件电路设计

(一)主控模块

主控模块由STC89C51为主体的最小系统构成。包括单片机、晶振电路和复位电路三部分[2]。如图1所示,12MHz晶振来提供信号脉冲,引脚XTAL0和XTAL1构成振荡电路产生谐波,此处选用30pf的电容来保持电路的稳定性。本设计采用手动电平复位方式,通过RST(9引脚)端与电源接通来实现。按键后,RST端为高电平,上电后电容缓慢充电,RST端电压逐步转化到稳定的低电平,复位完毕。

图1 STC89C51最小系统电路图

1.按键引脚

13脚/14脚:该引脚为单片机的通用IO口,在此系统中作为按键输入接口,按下键后将IO口电平拉低对报警速度进行设置[3]。

2.并行I/O引脚

12脚:外部中断信号输入端0,该引脚引入霍尔传感器测速电路,作为速度信号的输入端。

(二)测速模块

A3144E系列高温霍尔效应集成传感器由稳压电源,霍尔电压发生器,差分放大器,施密特触发器和输出放大器组成,其输入为磁感应强度,输出为数字电压讯号。霍尔传感器和产生磁场的磁钢需配对使用。

1.霍尔传感器测速原理

测量车速需将车轮转速转换为脉冲信号,从而进行脉冲计数。该系统采用了M法(测频法)来实现转速测量。根据霍尔效应原理,将两块永久磁钢固定在车轮转轴的转盘边沿,转盘随轴旋转时,磁钢也同步旋转。在转盘下方安装霍尔器件,转盘旋转时受磁钢的磁场影响,霍尔器件输出脉冲信号,其频率和转速成正比[4]。脉冲信号的周期与车轮的转速有以下关系[5]。式中,P为车轮转一圈的脉冲数。

(1)

2.霍尔传感器与单片机的连接

霍尔传感器测速电路如图2所示。

图2 霍尔测速电路 图3 LCD1602显示电路 图4 声光报警电路

实际测量时,霍尔传感器固定在底板上,与霍尔探头相对的电机轴上固定两块磁钢块,电机每转一周,霍尔传感器发出两个脉冲信号,将此信号接到C51的P3.2引脚。设定T0定时,每分钟进入P3.2引脚的脉冲个数即车辆的行驶速度。没有磁钢时输出高电平,有磁钢时输出为低电平[6]。

(三)显示模块

本系统显示装置采用可以同时显示32个字符(即16列2行)的字符型液晶LCD1602。如图3所示,第3脚V0为液晶的灰度调整,本电路中第3脚与地之间的阻值为1k,与电源间的阻值为10k。第4~14脚都接单片机的I/O口。

(四)报警模块

本系统采用的是声光报警器,如图4所示,9012型PNP三极管相当于开关,单片机P1.0口输出低电平时,三极管导通,蜂鸣器与发光二极管工作,报警电路工作;P1.0口输出高电平时,报警电路停止运作。

三、软件设计

本系统软件设计主要包括主程序、脉冲计数程序、显示模块以及报警模块程序的设计[7]。

(一)主程序的设计

系统主程序作用是实现硬件初始化、调用计数子程序、显示和报警等功能。接通电源后系统初始化,提取已设置好的限速值,调用计数子程序完成对车速的检测,并计算出车辆的实时速度。若测量的速度高于最初设定值,则主程序调用报警子程序,报警装置发出报警信号;若测量的速度低于最初设定值,则主程序调用显示子程序[8]。

void main()

{

init();//定时器初始化

lcd_init();//1602显示屏初始化

while(1)

{

display();//时速显示子程序

display_shangxian();//设置值显示子程序

key();//超速值设置

alarm();//报警子程序

}

}

(二)脉冲计数程序的设计

STC89C51含有2个用于定时(T0、T1)和计数的16位可编程定时/计数器。在计数模式下,T0和T1对单片机引脚P3.4和P3.5的外部脉冲进行计数。接通电源后,定时/计数器初始化,霍尔传感器将速度信号经转化后输送到可识别脉冲信号的单片机,开始进行计数。定时器每过1s读一次外部中断计数值,此值即为脉冲信号的频率。脉冲计数流程如图6所示。

图6 脉冲计数流程

(三)显示模块程序的设计

LCD1602显示屏由C51驱动进行车速的显示。通过相应的程序设定将实时显示出经由计数脉冲计算的车速(r/min)、最高限定车速值和超速警告等信息。

void lcd_init()//液晶初始化函数

{

uchar a;

write_1602com(0x38);//设置液晶工作模式:16*2行显示,5*7点阵,8位数据

write_1602com(0x0c);//开显示不显示光标

write_1602com(0x06);//整屏不移动,光标自动右移

write_1602com(0x01);//清显示

write_1602com(0x80);//显示固定符号从第一行第1个位置之后开始显示

for(a=0;a<16;a++)

{

write_1602dat(tab1[a]);//向液晶屏写固定符号部分

}

write_1602com(0x80+0x40);//显示固定符号写入位置,从第2个位置后开始显示

for(a=0;a<16;a++)

{

write_1602dat(tab2[a]);//显示固定符号

}

}

(四)报警模块程序的设计

根据道路车辆行驶的速度要求,将设置的最高车速连接到电源后报警模块进行初始化。将单片机计算得到的车辆实时速度与设定值进行比较,若实时速度大于设定的最高速度,则报警器进行报警来提醒驾驶员减速。报警程序流程如图7所示。

void alarm()

{

if(RPM>=shangxian)//判断是否超过设定速度值

BUZZ=0;//超过蜂鸣器置0

else

BUZZ=1;//未超置1

}

(五)软件调试与仿真

此次系统设计中,我们使用Keil c51和Proteus软件来进行程序编写和系统仿真[9]。仿真结果分析如下:

(1)完成电路连接并载入程序,超速报警系统开始运行。如图8所示,LCD1602显示屏显示设定的最高速度为10000r/min,显示正常。

(2)调节电位器来改变电机转速,当转速值超过10000r/min时,报警装置开始运作,如图9所示,而当转速再次调整降到10000r/min以下时,报警装置停止运行,系统继续正常运行。

图8 初始化仿真 图9 报警状态仿真

四、结论

本论文设计的超速报警器,其仿真结果显示该装置运行良好,并且所设计的功能都可以很好的完成。它能对汽车行驶速度进行监测,在汽车的实时行驶速度超过限定速度时提醒驾驶员及时降速,从根本上规避了超速驾驶汽车这一交通安全隐患。由于社会的急速发展,汽车主动安全的研究也快速被人们重视起来。超速报警器作为一种安全、有效的新型装置为解决交通安全问题提供了一个相当合适的方案。

猜你喜欢
磁钢子程序霍尔
小型电机环形磁钢粘接及其粘接强度提高
基于Halbach阵列磁钢的PMSM气隙磁密波形优化
基于有限元分析的表贴式磁性转子工艺技术研究
磁浮平面电机Halbach磁钢阵列中梯形磁钢的应用*
这个大童话讲猫(五)名侦探西尼·霍尔
五相无刷直流电动机霍尔容错控制策略
浅谈子程序在数控车编程中的应用
离子推力器和霍尔推力器的异同
子程序在数控车加工槽中的应用探索
西门子840D系统JOG模式下PLC调用并执行NC程序