基于单片机的电动车进楼报警器的设计与实现

摘 要

近年来,我国电动车数量呈现出持续快速增长的势态,电动车管理问题日益突出,一旦管理不好,就容易引发
火灾等严重的情况。针对当前情形,设计一款系统,本系统采用2单片机作为主控单元,通过视觉模块进行电动车的
识别,结合WiFi模块进行识别数据的处理,并通过按键模块、语音模块、实现了识别模块的选择、识别结果的反馈
等功能,整设计最后通过对设计进行相关的测试与功能调试,完整实现了系统的预期功能,本次的设计从价格、功
能方面都体现了很大的亲民性,其较传统的方式而言,具有更高的编程灵活性,可以实现更高自由度的控制以及更
高精度的操作,具有重要意义。
关键词:32;语音播报;WiFi;模块;电动车

1 绪 论

研究的背景和意义
  物联网的诞生,造福了人类社会。在当前,以物联网为基础的智慧产品已经逐步占据人们工作和生活的各个阵
地,成为了人们无法离开的智慧工具。这些智慧产品种类繁多,但都具有一个共通点,还帮助各种生产活动提高效
率,加快了社会发展的步伐。智能产品对于人们的生活和工作而言,是非常具有前景的,对于智能产品的研究,依
然存在大量需解决的难题。
  基于物联网技术的智能产品,可以实现大量人类需要花费大量精力才能完成的工作。例如GIS地理信息系统实现
人们出行的智能导航、老人儿童的实时定位、物品运送实时跟踪等。基于这些物联网技术,可以研发出大量不同用
途的智慧产品,在人类社会的各个角落发光发亮,使各种不可能变成了有可能。随着我国城市化发展越来越快,社
区建设越来越加规范,在很多小区重要的区域中,往往设计有电动车禁放区域,而有的人,经常将电动车放置于该
区域,容易对其他社区人员的正常活动造成影响。同时,电动车车主都习惯把车带回家充电,而“进楼入户”、
“人车同屋”等场景恰恰就是最容易引发火灾的隐患。已有很多因在室内或楼道内电动车充电而引起火灾的事例发
生。这关系到所有社区家人的安全,因此,本文设计了一款社区电动车智能识别系统,该系统能够识别出电动车是
否停放在禁放区,以及是否在进入电梯,并在放入之后,进行语音提醒,进而有效的减少将电动车放入禁放区域的
发生。同时,在电梯中对电动车识别分析,自动对视频图像信息进行分析识别,无需人工干预,能对小区电梯进行
实时监测,当监测到电梯内部存在电动车时,立即触发报警,有效的协助管理人员工作,并最大限度地降低误报和
漏报现象,减少人力监管的成本。
研究的现状
  目前停车管理系统正在朝着智能化无人化方向发展。未来停车场将打破单一模式,实现联网数据共享。对电动
车停放的管理也亦是如此,在物联网技术发展初始阶段,相关人员开始了停车管理方面的研究,相关的企业也嗅到
其中的商机,逐步引入相关产品的使用。至目前为止,社区电动车智能识别系统的研发,依然有待创新,需要研发
出功能更全面,满足人们个性化需求的产品。
1.3 研究的主要方法
  本次课题研究对象为社区电动车智能识别,为了更好设计出该系统,首先需要进行功能的设定,根据功能设计
来大体确定其所需要的硬件模块类型,根据对比同类型的模块,选取更适合本设计的硬件模块。硬件部分设计好之
后,还需要让其更好的进行数据显示和信息交互。了解其工作原理、模块的引脚功能、电路的走向、焊接的方式等
等都需要平时的积累或者通过查询相关资料才能完成。对此,本次研究主要工作:
1、查询该课题相关的文献记录:从网上或者线下图书馆来查询系统这类的文献或者研究报告,来进行功能方案的设
定。
2、选择合适的硬件模块:根据设计好的功能,来确定本系统所需的硬件功能模块,需要结合其工作方式、内存以及
性能等各个方面去考虑,选择出最适合设计模块与。
3、硬件:完成硬件和程序的编写之后,需要系统来进行功能的验证,通过验证各个模块的功能为整体系统的运行提
供保障。
1.4 论文工作安排
  (一)绪论:通过相关资料的查询,详细阐述了社区电动车智能识别系统的背景和设计的意义、以及对社区电
动车智能识别系统目前的研究状况进行分析,接着是对研究主要的工作进行展开描述。
  (二)系统方案设计:第二章分为系统可行性分析、系统的总体方案选择以及总体方案的设计,为后续的软硬
件展开描述打下了基础。
  (三)系统硬件电路设计:第三章开头描述了硬件设计的原则,主要阐述的是设计硬件时的一些注意事项。接
着就是对本系统核心模块的设计,包括其工作原理、电路连接以及在本系统的作用展开了详细的阐述。
  (四)系统软件设计:第四章分别为软件设计的思路、采用到的编程语言进行描述、接着是系统主流程图的设
计以及主要子程序的设计,采用了图文结合的方式进行描述,可清楚了解软件的设计流程。
(五)系统调试与分析:第五章分为三个部分,分别为硬件测试、软件测试以及测试之后进行整体的分析。

2 系统方案设计

2.1 系统可行性分析
1.技术可行性
  本次设计采用智能控制芯片搭配各元器件实现各模块的电路设计,逻辑程序的实现采用当前流行的编程语言实
现,这些硬件技术和软件技术在市场上已存在运行了较长的时间,不仅具有一定的稳定性,其可扩展性也很丰富,
总的来说本次设计在技术实现方面,前面的研究者们给予了很大的帮助,其可行性是很高的。
2.经济可行性
  本次设计开发所需要的硬器件、相关技术文档及文献;应用到的各模块硬器件可以从市场上以极低的成本采
购,开发需要的相关技术文献及资料等可以从网络、学校图书馆等地方获得,且各模块的功能实现所需添加的成本
都不高,总的来说,本次设计在基础条件、知识条件的采购上性价比很高,可以通过较低的成本实现用户所需,并
且操作方式简单
3.运行可行性
既保证了运行的可行度,也提高了用户的使用满意度。
2.2 系统设计方案选择
  根据系统的设计功能要求,进行设计方案选择是实现系统功能的关键步骤。本次设计的社区电动车智能识别系
统可以供我们选择核心控制电路主要有两种。一是智能控制电路,另外一种就是非智能控制电路。具体介绍如下
  方案一:非智能控制电路这种电路主要由许多不同逻辑元器件组成系统所需的各种逻辑功能电路以此实现系统
所需要的功能;采用繁多的电容和电阻调整系统中的电流与电压。这种电路设计过程复杂保证其稳定性,想要进行
简单的功能拓展时则需要对整个电路进行改变,灵活性低且功能单一。
  方案二:智能控制电路。这种电路采用可编程的控制器件作为核心进行设计的电路。这种器件相当于微型计算
机,其内部集成了运算器控制器和存储器等等,能够高效率地控制电路中每个电子器件有条不紊地工作且这种电路
中电路图设计普遍比较简洁,当电路出现异常时,能够方便技术人员进行排查。
综合考虑,本次设计

2.主控芯片选择

单片机是整个系统的核心信息处理器件,一般由多个存储器、CPU以及多个外部接口,部分高端单片机还具有专的数据运算芯片用于提高运算速度,负责处理所有模块输出的数据并控制系统各部分电路的工作,目前市场上的
单片机型号种类繁多,每种单片机都具有自己特的优势以及应用场景,经过对与本课题相关的各种产品设计以及市
场上单片机的优缺点进行对比,
STM32系列单片机,采用ARM Cortex内核,
  综合以上两种方案可以得出,综合考虑项目所需的性能对比来看,的运算速度相对于单片机来说具有较大差
距,而本次设计对于系统的反应速度具有较高的要求,所以本次设计采用单片机。

3 系统硬件电路设计

3.1 硬件设计原则
  硬件电路是一个系统的重要组成部分,对硬件是十分必要的,它重要影响着系统的功能是否得以实现。所以这
次主要从以下几个方面来考虑硬件电路的实施。
  其一、为了保证硬件系统标准化,在设计电路时应该尽可能地选择使用一些经典的电路,经典的电路可以让我
们走前人走的路,更加容易上手,同时前人也出现过错误,在排查错误时可以借鉴前人的宝贵经验,为我们节约大
量的时间。
  其二、为了系统能够平稳运行,对系统的各个元件选择要与系统的性能匹配,当外围电路过多时会造成系统的
驱动能力不足,从而系统工作不平稳,应该减少降低芯片的功耗或者增加驱动能力,此外也要考虑系统的可靠性以
及系统的抗干扰能力问题。
  其三、对于硬件电路的设计,不能单独只考虑硬件,硬件结构应当与应用软件结合在一起考虑,硬件结构也会
受软件方案的影响,为了使硬件结构更加简化,降低功耗。软件能够实现的功能,应该由软件部分来实现,但使用
软件来实现的话会增加CPU处理时间,降低工作效率,需要经过合理地分析研究,才能设计出最佳电路。
3.2单片机模电路设计
  本次开发的数据处理单元由最小单片机电路的芯片和相应的外围电路组成该芯片具、价格、功耗等是单片机改
进系列标杆。晶振电路的频率稳定性极好,而且这类电路能有效抵御外界因素的不利干扰,所以我们通常选择晶振
电路来产生系统参考频率。使用晶振电路产生的频率可以保证其频率精度。在高级的掉电保护模式下随机存储器里
的数据会自己进行保存,主控器件停止任何操作。单片机电路的示意图如下
3.3 视觉模块电路设计
在本系统中使用视觉模块,视觉模块电路图如下图所示:

3.电源模块电路设计
  由于本设计中不同模块所需的最佳工作电压不同,如果直接使用输入电源为系统供电,会影响部分模块的工作
稳定性,降低系统性能。因此采用AMS1117对系统进行稳压供电,AMS1117是一款正电压输出的低压降三端线性稳压
电路,内部集成过热保护和限流电路,固定输出电压为3.3V,5.0V这样进行分压供电的方式,可以保证不同模块的
最佳运行状态。

4 系统软件设计

4.1 开发平台介绍
  本系统采用发平台进行系统软件的开发。一种支持汇编以及C语言开发的ARM系列专用开发平台,可以实现编
辑、编译以及仿真功能,是当前最为优秀的开发平台之一,也是ARM单片机系列首选的开发平台。在平台完成代码的
编写后,通过编译可以快速的进行代码格式错误检查以及语法检查,无误后生成的HEX文件可以直接下载入单片机执
行,整个过程都非常简单与方便,而且支持库函数调用,可以很大的提高项目开发效率,缩短开发周期。
4.2 开发语言介绍
  一般单片机进行开发时可以采用汇编与C语言两种方式,汇编语言可以直接对单片机的寄存器进行操作,单片机
执行时无需进行额外的转换工作,所以汇编语言所编写的程序执行率最高C语言作为一种主流的开发语言,具有非常
灵活的算法结构,而且C语言的结构清晰、编写效率高,相对于汇编语言来说更加适合进行单片机项目的开发,能够
有效缩短项目的开发周期,提高代码的观赏度,同时在后期的调试过程中,可以非常轻易的定位程序错误,方便开
发人员进行修改,综上所述,本次设计采用C语言进行开发。
4.3 软件设计思路
  系统的软件开发是一个循序渐进的过程,单片机需要与各个模块之间进行大量的数据交换并实现各个电路的控
制功能,为了最大限度地避免程序开发过程中出现的未知问题,一般在进行系统开发时采用模块化编程方式,首先
将系统的各个模块分别于单片机之间进行设计,确定单片机可以正确实现与各个模块之间的信息交互以及控制功
能,将每个信息获取以及控制功能封装为单个函数,以有效降低系统的开发难度,提高开发效率,而且在后续进行
错误排查或者二次开发时,开发人员可以直接通过模块化编程的思路定位错误位置或开发位置,在不影响其他模块
的前提下对单个模块进行修改,有效的改善代码结构,提高系统整体性能。同时在开发过程中,将严格按照规范化
的软件设计流程进行软件实现。第一步是要对系统整体有明确的认知,理清系统所要完成的功能。在代码编写的过
程中尽量保持良好的代码编写习惯,多加注释,能够方便代码今后的移植和纠错,节约时间。

5 系统调试与分析

5.1 硬件调试
  首先通过原理图来查看电路连接顺序是否错误,查看一些线路是否已经完全连接在其相应的管脚上,因为模块
需要加上线路多的情况下是非常容易连接错误的,接着需要借助万能表来测试焊接电路是否能够正确导通,用万能
表测试过程中如果万能表的蜂鸣器正常响起那就说明是可以导通,反之就是不导通,有可能就是存在虚焊、焊接错
误等问题,这时就需要仔细去排查,虚焊问题可以通过电烙铁来重新焊接,焊接完成再用万能表测试,蜂鸣器正常
响起那就说明是焊接正确的,最后需要对电源进行测试,在给系统上电之前,需要对各个模块承受电流的估量,可
以借助稳压电源来进行测试,系统上电之后需要仔细观察各个模块的反应是否正常,发现异常后,需要立即断掉电
源,正常运行一分钟后,观察系统整体反应,正常运行就完成了硬件电路的测试。
5.1.1 硬件连接测试
  首先是完成系统的整体电路设计后,在进行系统电路的焊接时,焊接时发现电烙铁出现拖丝现象,每一个焊接
点在完成后都会出现一个锡刺,不仅影响美观,而且还在引脚密集的地方出现了短路现象,烙铁温度调的太高反而
导致显示屏烧毁。
  解决方法:在焊接时使用助焊剂进行辅助,情况得以解决,且显示屏烧毁原因并非只是因为烙铁温度过高焊接
导致的,而是因为在焊接过程中由于锡刺现象,烙铁长时间贴附在显示屏引脚上,导致显示屏高温损坏,在后续焊
接中使用助焊剂,烙铁不必再长时间紧贴引脚,故不会再对显示屏造成伤害。
其次是在测量系统各模块的引脚电压时,发现主控芯片发热明显。
  解决方法:发现主控芯片发热明显后,立刻断电,检查系统供电电路,后发现将主控芯片的3.3V引脚误接至系
统5V电压,所幸发现及时,未对芯片造成实质性损坏,修复电路错误后,主控芯片能够继续工作。
5.1.2 硬件功能测试
5.2 软件调试
5.2.2 软件测试过程
()完成代码编程,代码编译,调试过程中出现显示异常,出现乱码,通过修订代码,编译成功;
()将编译成功的文件下载到单片机;
连接下载口,打开软件进行程序烧录。此时可以观察电路指示灯是否亮起。
()进行电动车识别、数据传输、LED点亮、语音、按键输入等子程序调试观察。
()验证该设计的功能,系统能正常检测电动车并进行声光提示的功能。
5.3 整机调试分析
  完成硬件和软件的调试之后,就是对系统的整体测试了,这时候需要借助程序下载工具来完成,在下载时,需
要注意选好单片机型号芯片、串口号以及波特率,下载成功后,观察系统上出现的情况,接着对单个模块功能分别进
行功能测试,观察是否成功实现功能,出现模块未能成功实现,就需要去进行软件结合硬件的测试了,直到找到问
题并解决。
经过多次测试,本系统能够实现其基本的功能,供电稳定,当系统正常运行时能够进行电动车的识别检测、语音、
LED功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值