汽车超速报警系统设计.docx

上传人:b****8 文档编号:12893529 上传时间:2023-06-09 格式:DOCX 页数:34 大小:811.82KB
下载 相关 举报
汽车超速报警系统设计.docx_第1页
第1页 / 共34页
汽车超速报警系统设计.docx_第2页
第2页 / 共34页
汽车超速报警系统设计.docx_第3页
第3页 / 共34页
汽车超速报警系统设计.docx_第4页
第4页 / 共34页
汽车超速报警系统设计.docx_第5页
第5页 / 共34页
汽车超速报警系统设计.docx_第6页
第6页 / 共34页
汽车超速报警系统设计.docx_第7页
第7页 / 共34页
汽车超速报警系统设计.docx_第8页
第8页 / 共34页
汽车超速报警系统设计.docx_第9页
第9页 / 共34页
汽车超速报警系统设计.docx_第10页
第10页 / 共34页
汽车超速报警系统设计.docx_第11页
第11页 / 共34页
汽车超速报警系统设计.docx_第12页
第12页 / 共34页
汽车超速报警系统设计.docx_第13页
第13页 / 共34页
汽车超速报警系统设计.docx_第14页
第14页 / 共34页
汽车超速报警系统设计.docx_第15页
第15页 / 共34页
汽车超速报警系统设计.docx_第16页
第16页 / 共34页
汽车超速报警系统设计.docx_第17页
第17页 / 共34页
汽车超速报警系统设计.docx_第18页
第18页 / 共34页
汽车超速报警系统设计.docx_第19页
第19页 / 共34页
汽车超速报警系统设计.docx_第20页
第20页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

汽车超速报警系统设计.docx

《汽车超速报警系统设计.docx》由会员分享,可在线阅读,更多相关《汽车超速报警系统设计.docx(34页珍藏版)》请在冰点文库上搜索。

汽车超速报警系统设计.docx

汽车超速报警系统设计

南阳理工学院本科毕业设计(论文)

汽车超速报警系统

AutomobileSpeedingAlarmSystem

学院(系):

计算机与信息工程学院

专业:

通信工程

学生姓名:

底奔腾

学号:

1306734009

指导教师(职称):

鲁庆宾(副教授)

评阅教师:

完成日期:

2015年6月

南阳理工学院

NanyangInstituteofTechnology

 

汽车超速报警系统

通信工程专业底奔腾

[摘 要]为了解决许多非职业驾驶员的无意识的超速问题,本文设计了一个基于单片机的汽车超速报警系统。

该系统实时监控车辆行驶速度,并采用数字显示屏直接显示所测速度。

设计利用霍尔传感器模块产生里程数的脉冲信号,并送到555芯片进行信号的整形,然后送至单片机外部中断口,经过单片机的分析与综合来判断车辆是否超速。

当所测速度超过所设极限值时,蜂鸣器开始报警,提示驾驶员减速行驶,达到防患于未然的效果。

软件部分用C语言编程,采用模块化的设计思想。

该系统结构简单,可靠性高,操作方便,可广泛应用于各类机动车辆。

[关键词]单片机;霍尔传感器;蜂鸣报警器

 

AutomobileSpeedingAlarmSystem

MajorofCommunicationEngineeringDiBen-teng

Abstract:

Inordertosolvetheproblemofthenonprofessionaldriver'sunconsciousspeeding,thisarticledesignedaspeedingcaralarmsystembasedonsinglechipmicrocomputer.Thevehiclespeedforreal-timemonitoringofthesystem,andUSESthedigitaldisplayshowsthemeasuredspeeddirectly.Thisdesignusinghallsensormodulemileagepulsesignal,andsendtothe555chiptoplasticsignalsandthensenttothesingle-chipmicrocomputerintheexternalfracture,theanalysisandsynthesisintoasinglechipmicrocomputertodeterminewhetherthevehiclespeed.Whenmeasuredatafasterratethanthesetlimitvaluewhenthebuzzeralarm,promptdriversslowdown,toachievetheeffectofnipinthebud.SoftwarepartinClanguageprogramming,usingmodulardesignthought.Thesystemhassimplestructure,highreliability,convenientoperation,canbewidelyusedinvarioustypesofmotorvehicles.

Keywords:

Singlechipmicrocomputer;Hallelement;Visualalarm

1绪论

1.1设计研究背景

随着现代汽车控制技术和高速公路的飞速发展,无论是运输业还是个人,汽车都已成为人们生活中不可或缺的产品。

在我国,每年平均发生50万起交通事故,而机动车辆超速行驶依旧是最主要的罪魁祸首。

国内外许多国家开始认识到超速行驶对交通安全具有极大的危害,都加大了对车辆超速行驶的管制力度,研发先进的信息采集设备,并对车辆超速进行了大量的研究,以保证车辆的行驶安全,减少交通事故的发生。

本设计是为解决汽车行驶过程中存在的安全隐患的角度出发,设计出一种检测车辆超过一定速度的报警系统。

它采用MCS-51系列单片机设计一种体积小、操作简单的测速报警器。

当车辆行驶速度大于设置的最高速度时,自动启动蜂鸣报警器报警。

它利用霍尔传感器产生里程数的脉冲信号,脉冲信号经过555芯片的整形,然后利用单片机自带的计数器T0对霍尔传感器脉冲信号进行计数,进而求出转速。

再利用软件编程,对数据进行处理并与极限值进行比较,当速度大于极限值时启动蜂鸣器进行报警。

1.2设计研究的内容

本文主要工作是利用霍尔元件、单片机、蜂鸣报警器、555芯片等部件设计一个汽车超速自动报警器。

主要介绍了汽车超速报警器的设计思想、电路原理以及元件的选择等内容,整体上分为硬件部分设计和软件部分设计。

硬件部分包括传感器的选择、单片机的选择、报警器的设计。

汽车超速报警器的软件设计,包括传感器模块设计、显示模块设计等;再对仿真过程进行了具体说明与展示;最后对本次设计进行了系统的总结。

具体的硬件电路包括STC89C52单片机的外围电路以及报警器的显示部分。

程序部分采用C语言编写,设计的思想主要是自顶向下,模块化设计,各个子模块逐一设计。

1.3本文所做工作

设计的主体有四个主要部分,分别是系统整体设计、系统硬件设计、系统软件设计、系统仿真与测试。

其中第2章是对系统整体设计的说明,包括系统设计任务和系统总体设计;第3章对硬件设计的描述,包括总体硬件电路

的设计和各子电路的设计说明,总结了各个硬件功能,给出电路图并加以解释;第4章软件设计部分对编程软件的进行了介绍;第5章系统仿真与测试部分包括所用仿真软件的解释和说明以及在超速和不超速状态下系统结果的显示

2系统整体设计

2.1系统设计任务

本设计的任务是:

以通用STC89C52单片机为处理核心,用传感器将车轮的转数转换为电脉冲的个数,经过555芯片的处理之后送到单片机进行计数,经过单片机的定时/计数器测出总的脉冲个数和每转一圈所需要的的时间,再经过单片机的计算得出速度数值,并将该结果和极限值进行比较并在LCD上显示,当行驶速度超过速度极限值时,系统自动启动蜂鸣报警器进行报警,进而达到提醒司机注意安全驾车的功能。

2.2系统总体设计方案

系统由单片机最小系统、霍尔元件、555芯片、1602液晶构成的,霍尔元件检测外部信号,输出信号到555芯片,经过整形后输出到单片机,经过单片机的分析与判断,进行1602液晶显示转速并控制蜂鸣报警器。

系统总体设计框图如图2-1所示。

 

图2-1系统框图

(1)传感器模块

在被测物体上放置磁钢,在被测物体转动过程中,磁钢经过霍尔传感器产生脉冲信号,将信号输入到555芯片进行信号的整形。

(2)控制模块

555芯片的输出端口连接单片机的外部中断口,通过定时器每秒对外部中断计数,得到每秒钟电机转过的圈数,就可以得到电机的转速,并送至1602进行转速的显示。

(3)显示模块

显示部分是由1602液晶显示器组成的,液晶是由单片机端口控制。

传感器得到的脉冲经过555整形输入到单片机外部中断口,通过定时得到电机转速,再显示在1602液晶上。

随着电机转速的不断改变,液晶

显示的数值也随着定时器设置的定时1s不断改变。

(4)报警模块

报警部分是由蜂鸣器组成的,蜂鸣器由三极管驱动,当转速达到一定值时,蜂鸣器自动发声报警。

3系统硬件

设计

根据前面对设计任务的分析,该系统硬件的硬件设计需要包括四大模块:

STC89C52单片机控制模块(STC89C52单片机、电源、复位电路、时钟电路、排阻)、霍尔传感器测速模块(霍尔传感器的接线图、555芯片原理图)、1602数码显示模块(显示电路原理图)和蜂鸣报警器报警模块(报警电路原理图)。

其中主控模块主要完成外围硬件的控制以及一些运算功能;测速模块完成信号的采样和整形功能;数码显示模块完成字符、数字的显示功能;报警模块主要负责声音报警。

硬件设计原理图如图3-1所示。

图3-1硬件设计原理图

3.1主控模块

3.1.1单片机的介绍

STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-FlashProgramableandErasableReadOnlyMemory)的低电压,高性能CMOS8的微处理器,俗称单片机。

该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

采用的是40引脚双列直插封装方式。

具有看门狗定时器,三个16位的定时器/计数器,一个6向量2级中断结构等标准功能,并且是全双工串行口。

另外还有就是STC89C52可以降到0Hz静态逻辑操作,并且能够完全支持2种软件而且可以自由的选择是否在节电的模式下工作。

在空闲的模式下,CPU就会

停止工作,但是能够保持RAM、定时器/计数器、串口、中断一直工作下去。

掉电保护模式下,会把RAM的内容保存下来,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

最高运作频率35Mhz,6T/12T可选。

STC89C52单片机的外部引脚图如图3-2。

图3-2STC89C52的外形图

Vss:

接地端。

XTAL1:

片内振荡电路的输入端。

XTAL2:

片内振荡电路的输出端。

RST/VPD:

复位输入/备用电源输入复位信号。

ALE:

地址锁存输出/编程脉冲输入。

PSEN:

程序存储器允许,是读外部程序存储器的选用信号。

EA/Vpp:

外部程序存储器地址允许输入/编程电压输入。

P0口(P0.0-P0.7):

字节地址80H,位地址80H-87H,它可作为普通的I/O接口,也可作为地址/数据线的复用端口。

P1口(P1.0-P1.7):

字节地址90H,位地址90H-97H,它8位准双向的I/O接口。

P2口(P2.0-P2.7):

字节地址A0H,位地址A0H-A7H。

P3口(P3.0-P3.7):

字节地址B0H,位地址B0H-B7H,P3口除了做一般的I/O接口使用之外,还具有第二功能。

P3口在做第二功能时,只有一个功能有效,它是一个准双向的、多功能的I/O接口。

P3口第二功能的详细介绍如表3-1。

表3-1P3口第二功能

口线

第二功能

备注

P3.0

RXD

串行输入

P3.1

TXD

串行输出

P3.2

INT0

外部中断0

P3.3

INT1

外部中断1

P3.4

T0

定时器0

P3.5

T1

定时器1

P3.6

WR

写选通

P3.7

RD

读选通

3.1.2单片机最小系统

单片机最小系统主要由电源、复位、振荡电路等部分组成。

在本设计中,单片机选用的是STC89C52,由电容、晶振、电阻、电源等组成最小系统。

本设计中最小系统设计原理图如图3-3所示。

图3-3单片机最小系统原理图

(1)复位电路

复位是指单片机的CPU或系统中其它的部件处于某一确定的初试状态,并从这一状态开始工作。

除了进入系统的正常初始化之外,当由于程序运行出错或是操作错误使系统处于锁死状态,为摆脱困境,需要进行按键复位。

本设计采用上电复位,原理是当电源接通后,上电瞬间RESET引脚获取高电平,该高电平需要电容充电来维持,当高电平维持在两个机械周期以上则单片机能被复位。

一般为了能够可靠复位,复位时间一般在10ms以上,对于振荡频率为12MHZ的复位电路,本设计选择了典型RC系数为:

C=10uF,R=10千欧。

具体复位电路设计原理图如图3-4所示。

图3-4复位电路

(2)时钟电路

晶体振荡电路用于产生单片机工作时所需的时钟信号,从而保证各部分工作的同步。

单片机内部有一个高增益反相反大器,只要在输入端XTAL1与输出XTAL2之间挂一个晶体振荡器和微调电容就可以构成一个稳定的自激震荡器并在单片机内部产生的时钟脉冲信号,电容器C1与C2用于稳定频率和快速起振,电容一般在0PF—100PF,本设计电容为22PF。

本设计的时钟电路如图3-5所示。

图3-5时钟电路

3.2测速模块

本模块选择了霍尔传感器和555芯片作为测速器件。

在被测物体上放置磁钢,被测物体转动时,磁钢经过霍尔传感器产生脉冲信号,并输入到555芯片进行信号的整形,然后送至单片机进行数据的分析与判断。

3.2.1霍尔传感器简介

根据霍尔效应,人们用半导体材料制成的元件叫霍尔元件。

它具有对磁场敏感、结构简单、体积小、频率响应宽、输出电压变化大和使用寿命长等优点,因此,在测量、自动化、计算机和信息技术等领域得到广泛的应用。

本设计选用的A3144E系列单极高温霍尔效应集成传感器是由稳压电源、霍尔电压发生器、差分放大器、施密特触发器和输出放大器组成的磁敏传感电路,其输入为磁感应强度,输出是一个数字电压讯号。

霍尔传感器的外形图如图3-6所示。

图3-6霍尔传感器的外形图

本设计中我们将霍尔传感器的输出端接到555定时器的接收端,电路连接的原理图如图如图3-7所示。

图3-7霍尔传感器的接线图

3.2.2霍尔传感器测量原理

在本设计中霍尔传感器是利用霍尔器件将电机的转速转化为脉冲信号。

霍尔测速模块由霍尔传感器3144和555芯片构成。

霍尔传感器需要和磁钢配合使用,在实际应用中,将磁钢安装在车轮上,在车轮附近的其他位置安装霍尔传感器。

在车辆行驶过程中,磁钢转到接近霍尔元件的时候就会产生磁感应,远离时磁感应消失,这样就形成了一系列的脉冲信号。

3.2.3转速测量方法

转速的测量方法有很多,根据脉冲计数来实现转速测量的方法主要有一下几种:

M法(测频法)、T法(测周期法)和MPT法(频率周期法)等,该系统采用的就是M法(测频法)。

因为转速就是用单位时间内的转数来进行衡量的,在不断变换的过程当中大多数都是有规则的不断的重复的运动。

并且依据霍尔效应的原理,在车轮转轴上的转盘的边沿上固定一块永久磁钢,转盘就会随着侧轴一块去旋转,磁钢也会随着侧轴和转盘同时旋转,将一个霍尔器件安装在转盘下方,转盘在跟着侧轴旋转的时候,就会被磁钢所产生的磁场影响到,这时霍尔器件就会输出一个一个的脉冲信号,其频率和转速是成一定的正比例的。

脉冲信号的周期与车轮的转速有以下关系:

n=60/PT(3-1)

公式中:

n为车轮转速;P为车轮转一圈的脉冲个数;T为输出方波信号的周期时间。

根据式(3-1)即可计算出小车的转速。

本设计中只用了一个磁钢,所以车轮转动一圈,只产生了一个脉冲,P=1。

3.2.4555芯片

555定时器成本非常的低,性能可靠,并且仅仅需要外部去接几个电阻或者电容或者电阻和电容的组合,就能实现多谐振荡器、单稳态触发器和施密特触发器等脉冲产生和变换的电路。

它内部组成是两个电压比较器,三个等值串联电阻,一个RS触发器,一个放电管T及功率输出级。

它提供两个基准电压VCC/3和2VCC/3。

将555定时器的阈值输入端和触发输入端相接就组成了施密特触发器,它可以对霍尔传感器输出的信号进行整形,然后再输出给单片机的外部中断口进行计数,可以有效减少计数干扰。

芯片连接图如图3-8所示。

图3-8555芯片原理图

3.3报警模块

电磁式蜂鸣器是一种一体化结构的电子讯响器,它采用的是直流电压供电,并且广泛的应用于计算机、打印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。

本设计中选用电磁式蜂鸣器作为报警器。

电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。

接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。

振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。

报警器的外形图和电路原理图如图3-9和图3-10。

图3-9电磁式蜂鸣器图3-10报警电路原理图

3.4显示模块

显示电路由LCD和单片机连接而成,LCD的横截面好像是很多层三明治重叠在一起的感觉,并且每面最外边一层是基本透明的玻璃基体,玻璃基体中部应该就是薄膜电晶体。

通常,LCD后面都有照明灯用来显示画面。

一般只要电流没有什么变动,液晶都是在非结晶的状态下的。

这时液晶允许任何光线通过。

液晶层受到电压变化的影响后,液晶仅仅只是允许一定数量的光线去通过。

光线的反射角度也会严格按照液晶控制。

当液晶的供电电压一旦发生变化时,液晶就会同时发生变形,所以光线的折射角度就会有所不同,从而就会使色彩去发生一定的变化。

一个完完全全的TFT显示屏是由很多像素组成的,每个像素像是一个能够打开和关闭的晶体管。

这样就可以控制TFT显示屏的分辨率。

本设计采用的仿真元件是LM016L,它有十四个管脚,下面表3-2是各管脚的具体介绍。

表3-21602管脚介绍

管脚名称

备注

VSS

0V

VDD

5.0V

VEE

——

RSH/LH

H:

数据线上为数据信号;L:

数据线上为指令信号

RWH/LH

H:

读数据模式;L:

写数据模式

EH/L

使能信号端

DB0-DB7

数据线

在本设计中,分别将1602显示屏的RS、RW、E管脚接单片机的P2.0、P2.1、P2.2管脚;数据端接在单片机的P0口。

具体连接如图3-11所示。

图3-11显示电路原理图

4系统软件设计

通过软件控制单片机的功能是单片机的主要特点和优点,程序的设计要考虑合理性和可读性,遵循模块化设计的原则,采用自顶向下的设计方法。

模块化设计使程序的可读性好、修改及完善方便。

软件设计总体分为三部分,分别是传感器模块设计、显示模块设计和系统整体流程。

4.1传感器模块设计

先进行初始化设置各定时器的初值,然后判断是不是开始用系统进行测量。

如果是,就启动系统运行开始测量。

如果不是就等待系统的启动。

启动系统后,霍尔传感器检测脉冲到来以后,就接着启动外部中断指令,每次过来一个脉冲就中断一次,然后记录脉冲的个数。

同时启动T0定时器工作,每1秒定时中断一次,读取最后记录的脉冲的个数,这个数值就是电机的转速。

然后接着进行数值的判断,若计算出的数值高于120km/h(33m/s),则自动报警并返回初始化阶段,否则就进行正常显示。

如图4-1所示。

 

 

图4-1传感器流程图

4.2显示模块设计

显示模块是由1602液晶组成的,其数据端DB0-DB7相应的与P0.0-P0.7。

程序开始进行1602的初始化编程,并将要显示的字符和数字进行入栈保护;将显示内容转化成ASCLL码,存入内部寄存器;进行1602写命令的编写,进行结果的显示。

显示模块设计的流程图如图4-2。

 

 

图4-2显示模块流程图

4.3系统整体流程

对于整个系统,主要是由上面传感器模块和显示模块组成,系统稳定地运行离不开每个模块的工作。

所以,一个系统都是由许多个小系统构成的,小系统之间的连带工作就使得整个系统运行起来,整个系统的流程图如图4-3所示。

 

 

 

图4-3系统整体流程图

 

 

5系统仿真和测试

5.1硬件仿真设计

5.1.1仿真软件的介绍——ProteusISIS

Proteus是英国Labcenter公司开发的多功能EDA软件。

(该软件中国总代理为广州风标电子技术有限公司)。

它是一个基于ProSPICE混合模型反震器的完整的嵌入式统软、硬件设计仿真平台。

它运行于Windows操作系统上,主要由两部分构成:

分别是ProteusISIS和ProteusARES。

ProteusISIS可以仿真、分析各种模拟器件和集成电路。

该软件有以下几个特点:

(1)实现了单片机仿真和SPICE电路仿真相互结合。

(2)完善的电路仿真功能(Prospice)和独特的单片机协同仿真功能(VSM),支持当前的大部分的单片机类型的系统的仿真,并且具有软件调试的功能,同时也能够支持第三方的软件编译和调试环境,例如KeiluVision4等软件。

(3)智能原理图设计(ISIS),具有强大的原理图绘制功能;

(4)实用的PCB设计平台。

原理图到PCB的快速通道:

原理图设计完成后,一键便可进入ARES的PCB设计环境,实现从概念到产品的完整设计。

5.1.2硬件仿真过程

(1)双击桌面上的ISIS7Professional图标,打开软件进入ProteusISIS集成环境,可以看到其工作界面,如图5-1所示。

图5-1ProteusISIS工作界面

(2)单击对象选择器端左侧“P”按钮,选择所需要的仿真元件,如图5-2所示。

图5-2查找所需元件界面

(3)根据本设计的系统分析画出仿真电路原理图,如图5-3所示。

图5-3仿真电路原理图

5.2软件仿真设计

5.2.1程序编辑软件描述——KeiluVision4C51

单片机虽然功能很强,但只是一个芯片,既没有键盘也没有任何系统开发软件(如编辑、汇编、调试程序等)。

本次设计中使用的是KeilμVision4软件,进入KeilμVision4后的编辑界面如下图所示。

在编辑区编辑所要实现的功能程序。

图5-4KeilμVision4编辑界面

5.2.2软件仿真结果

按照流程原理图设计并编写能实现自己所需功能的程序,总体程序如附录所示,编写后,在KeilμVision4中建立一个新工程,添加已经编好的程序,在编辑界面中编译。

图5-5程序编译结果显示

本设计使用的就是这种语言,遵循自顶向下的编辑原则进行程序的编写。

5.3硬件电路显示结果

在ProteusISIS中连接好所需的电路原理图,将在Keil中生成的.hex文件加入已连接好的系统电路图中运行,可达到预期结果。

因为霍尔元件是个感应器,用它来感应汽车车轮的转速,但是霍尔传感器在ProteusISIS中找不到对应仿真器件,因此用几个不同频率的信号源来替代外部感应源对霍尔传感器的感应结果,信号源的频率不同,就会得到不同的速度显示结果。

点击“运行”按钮,可观察到1602液晶点亮,在程序里预置的极限值是120km/h(33m/s),所以当设置的输入频率为800Hz或者1.3KHz时,处于不超速状态,电路显示结果如图5-6所示。

图5-6不超速状态结果显示

通过改变输入脉冲的频率为1.6KHz或者2.2KHz时,此时处于超速状态,蜂鸣器响。

结果如图5-7所示。

图5-7超速状态结果显示

结论

该课题设计需要完成的任务是开发一个以STC89C52单片机为核心的汽车超速报警器。

它主要分为硬件部分和软件部分的设计。

硬件部分着重考虑了硬件电路的简单性,所以在设计的过程中我尽可能的简化电路设计,达到硬件电路最优化设计。

软件部分采用C语言编写,采用了模块化设计思想,程序的可读性强。

通过软件仿真、测试验证了系统的可行性。

通过自己的努力和老师的帮助,此次设计的系统大致基本完成了这些功能:

在汽车行驶过程中,霍尔传感器实时监控机动车辆的行驶速度并在LCD显示屏上显示,当所测速度超过了最高值,就会启动蜂鸣器报警以提示驾驶员减速行驶。

该系统具有结构简单,易操作,成本低,实用性强的特点,可以进一步的保障驾驶人员开车期间的安全问题。

参考文献

[1]李朝青编著.单片机原理及接口技术(第3版).北京:

北京航空航天大学出版社,2006.

[2]谢维成,杨加国主编.单片机原理与应用及C51程序设计.北京:

清华大学出版社,2006

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2