版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于ST89C52单片机的一款智能儿童防丢器系统设计目录TOC\o"1-3"\h\u233271绪论 2153942系统方案设计 257802.1系统整体设计 2264282.2主控制器模块的选择 330682.3电源选取 4300892.4测距方案的选取 475942.5蓝牙模块的选取 5292782.6手机App设计的选取 6232103系统硬件设计 7177863.1主控模块 7217883.2报警模块的设计 9175243.3电源部分的设计 9123873.4测距部分的设计 10165433.5手机APP部分的设计 10199694系统软件设计 12320114.1系统软件设计 12302244.2程序结构分析及流程图 1355135系统调试与测试结果 151795.1安装步骤 15263375.2硬件调试 15286735.3软件调试 16188395.4系统测试结果 1697666结论 2015343参考文献 20摘要社会的不断发展,让我们的生活节奏在迅速地成倍加快,常常在购物广场、公交车站、旅游场所等地方常常丢失物品,带小孩的家长也常常担心孩子丢失。因此需要一款防丢器来解决这个生活烦恼。本设计是基于ST89C52单片机设计的一款智能儿童防丢器系统,传统的防丢器大多只能通过触发声光报警来警示用户,而这款是为儿童和老人特意量身定制的一款可以随时随地查询个人的位置距离的产品。无论目标在什么地方,都可以通过手机实时关注周围一定范围内目标位置移动方向。该设计智能化,简洁化,可以帮助我们日常生活并且提高生活幸福感。关键词:51单片机;蓝牙模块;防丢器。1绪论过去的车马很慢,但在现代生活中,快节奏的都市生活往往让人经常粗心大意,丢三落四,时常忘记自己的手提包,手提包里往往都是贵重物品。值得关注的是当虎爸虎妈带小孩上街时,最容易粗心让孩子跑丢了。小偷最喜欢在人流量大的时候顺走你随身携带的贵重物品。为了防止在我们不注意时弄丢重要物件或人,电子防丢报警器有着不可或缺的地位。
防丢器的外观迷你小巧方便携带,当我们的贵重物品和小孩与防丢器放在一起时,如果物品丢失或孩子走失都会向用户发出警报。我选择了研究电子防丢器的原因是电子防丢器具有众多优点,才能在今后的发展中脱颖而出。蓝牙通信不仅方便,而且抗干扰性能好。电子防丢器的防丢体现在一定范围内可监控物品距离并且物体超出范围后会有警示音响起,省电、环保、小巧方便、性能稳定可靠都是电子防丢器的优点。电子防丢器在外部进行拓展便可以拥有更多的功能,比如接上功率放大器就可以收音,加上闪存便可作移动U盘,可根据不同的用户群体对电子防丢器进行相应的拓展,具有十分值得期待的市场前景,以后必定会成为人们工作生活的好帮手。防丢器由蓝牙模块、单片机最小系统和智能手机软件来构成,当蓝牙模块的蓝牙信号被手机蓝牙搜索到时两者可进行连接配对,当被监控物超过手机蓝牙的阈值距离时手机和防丢器就会同时发出报警。2系统方案设计2.1系统整体设计防丢器由手机APP和STC89C52RC为控制核心的设备器件构成,两者通过蓝牙通讯模块进行有效的连接。蓝牙防丢器的设计主要有单片机控制电路、蓝牙控制电路及声光报警电路等组成REF_Ref5076\w\h[1],如图2-1所示。蓝牙控制电路基于蓝牙的智能化控制实现了自动发送和接收信息的功能,单片机控制电路和蓝牙模块共同实现报警功能,即在无法搜索到蓝牙信号或者连接蓝牙失败时,单片机控制电路使声光报警电路运作。电子防丢器使用手机作为接收端时不仅可以实现对贵重物品进行实施监控的功能,而且只会占用极小的手机内存,当我们实时监视的物品超出监控范围的时候可以通过蜂鸣器向用户发出警报REF_Ref5112\w\h[2]。图2-1整体电路图2.2主控制器模块的选择方案1:主控制器采用可编程逻辑器件(CPLD)。CPLD使用的是并行输入输出方式来改良系统的运行速度,CPLD规模大,结构复杂,属于大规模集成电路范围并且要求使用者自己去设计逻辑功能的数字集成电路。所以CPLD能够用来实现多种复杂的逻辑功能。在本系统对数据的处理速度要求低,并且只需要简单的逻辑功能的情况下考虑,我们不选择该方案。方案2:设计整个系统的核心时选择STC89C52RC单片机最小系统,是足够用来完成防丢器既定的功能。单片机的主要优势在于控制简单,本设计的关键在于防丢报警功能,使用单片机的话将会大大的节省工作量和工作时间。这样不仅可以让单片机强大的控制功能得到充分的发挥并且单片机低廉的价位可为我们节省一笔费用。STC89C52RC单片机具备8K字节程序存储空间,属于增强型8051单片机,I/0口都可以按位寻址,指令代码完全兼容8051。STC89C52RC便宜实惠的价格对我们来说是相当便利的。综上,选择方案二。2.3电源选取方案1:采用5V蓄电池为防丢器设计提供电源。蓄电池电压输出性能稳定而且电流驱动能力强。由于蓄电池的体积过大,与本系统小巧便捷的设计初衷大相庭径。因此我们不选择此方案。
方案2:本项目STC89C52RC使用的是5V供电设备,所以电源模块设计部分使用的是USB端口供电。此外,当对防丢器硬件电路进行测试时,容易因使用笨重的电池供电带来诸多不便,所以本项目用USB接口电路可方便为整个电路的测试提供电源。在进行硬件测试时,将USB接口连上充电头或者插入电脑主机就可以方便地为电子防丢器系统供电。2.4测距方案的选取方案1:超声波发射器向某一方向发射超声波后立马计时,超声波在空气中传播,传输途中遇到障碍物时它就会立刻掉头,最后超声波接收器在接收到反射波后会立即中止计时,这就是时间差测REF_Ref17460\w\h[4]。此方案超声波测距慢,超声波的测量阈限距离大概是3米,若超过此距离,声音便可能无法传回来;其次还需顾虑超声测距必须是平面这一特性,由于声音在空气中以声波的形式传输是会相互干扰的,不能同时检测,只能依次检测。综上,我们不选用此方案。方案2:蓝牙测距信号强度的获取途径主要是经过接收端的接口获取,所以不需要设备端提供服务。GPS、红外线和超声波三种测距的方法都需要在原有的基础上去增加额外的硬件,超声波测距的精度可以达到精确的+10cm,但是这会增加系统的成本,造成不必要的负担REF_Ref4988\w\h[3]。相反,RSSI的测距是不需要增加额外的成本,而且RSSI的测距误差可以达到1m-3m,这可以达到我们的测量距离要求,综上,本设计采用基于RSSI的测距方法。所以选择方案2。2.5蓝牙模块的选取只要用户的蓝牙开启并且处于可被附近的其他用户搜索到状态时,都可以与附近的其它蓝牙相连接,这样既可以保障蓝牙防丢器具有实用性强、使用简单的特点,而且用户只需要进行简单的使用流程。跳频扩频通信的工作方式特点是应用的频率比较高,而蓝牙正好采用这种工作方式的优点在于可大大的降低其他设备的外部射频干扰,也可以提高蓝牙防丢器的稳定性和抗干扰性。蓝牙的正常工作电流范围一般是在几百微安之内REF_Ref4952\w\h[4],这样的功耗是很低的。综上选择低功耗蓝牙。低功耗蓝牙模块指的是支持短距离无线通信、蓝牙集成功能的电路板,简称BLE模块,适用于跟踪监控设备以便帮助寻回个人物品。BLE模块平均发射功率仅0.6mA,功耗更低,供电时间长REF_Ref4922\w\h[5]。低功耗蓝牙模块连接连接时间间隔一般是几毫秒到几十秒不等,但其连接速度是极快的。低功耗蓝牙BLE运行的频段是2.4GHz,该频段让低功耗蓝牙设备处于一个免执照频段,正是完全免费的一个频段,不需要向专门去交无线电管理部门的授权费用,价格更低REF_Ref4877\w\h[6]。标准蓝牙和低功耗蓝牙在可连接到主设备的从设备数量上有所不同,在标准蓝牙中,只允许1个主设备和7-16777184个从设备可以同时通讯REF_Ref4766\w\h[7],而低功耗蓝牙的1个主设备却可以和无数个从设备进行通信。低功耗蓝牙模块操作简单,匹配起来不需要其它终端设备,更适合智能产品。因此本设计选取HC-42蓝牙5.0BLE串口模块。HC-42蓝牙5.0BLE蓝牙模块用来接收控制信号,
蓝牙模块的串口引脚TXD和RXD与单片机上的P30和P31引脚进行连接通信,蓝牙模块可与手机蓝牙进行连接匹配,这样就可以通过串口和单片机进行通信。2.6手机App设计的选取APP的设计选用的是MITAppInventor平台编程,AppInventor是一个完全在线开发的APP编程环境,它用简易的积木式堆叠法代替复杂繁琐的编程代码去完成用户的需求。使用浏览器打开网址新建项目,AppInventor具有标签、按钮、水行布局、垂直布局、文本输入框等基本的元件,设计好后输出打包文件就可以完成一个App原型的开发了。
3系统硬件设计3.1主控模块主控模块系统由单片机最小系统来构成,如图3-1所示。单片机最小系统主要由单片机、电源电路、复位电路、晶振电路等构成。通常
STC89C52RC单片机的工作电压范围:
4V-5.5V,所以给单片机40脚接的是+5V直流电源(也称VCC或VDD),代表电源正极;20脚接GND,代表电源负极。
STC89C52RC单片机芯片上,拥有灵活8位CPU和在系统可编程Flash,使得STC89C52RC在众多芯片中脱颖而出。重置电路指的是让单片机运行恢复到原来的初始状态从而完成启动过程。单片机上电后,在启动工作时先要进行复位,使CPU及系统各部件处于初始状态。
在单片机最小系统在运行的时候,容易受到外界环境干扰而导致程序出现乱跑的情况,这时就可以通过手动复位按下复位按钮让程序从头开始运行。本系统可使用上电自动复位和手动复位是两种复位方式,单片机在时钟电路工作以后,当外部电路使RST端出现2个机器周期高电平时,系统内部复位。手动复位就是RST端与电源端相连实现。对于51系列的单片机来说,RESET引脚接收到的高电平信号小于0.1s,上电复位时间比较稳定。手动复位是为了设计遇到故障时方便重启电路清除数据恢复到稳定的运行状态。本方案采用的是外部按键手动复位电路,需接上上拉电阻来将输出高电平的值拉高。时钟电路是单片机的核心组件,它控制着单片机的工作时间。时钟电路就是振荡电路,向微控制器提供一个正弦波信号作为决定微控制器执行速度的参考。XTAL1和XTAL2分别为内部高增益反向放大器的输入端和输出端REF_Ref14687\w\h[8],所以在使用外部时钟时,XTAL1引脚输入外部时钟脉冲,XTAL2引脚接地。所以当我们要判断单片机振荡电路的工作状态时可以通过使用示波器观察XTAL2引脚是否有脉冲信号输入。内部时钟是一种依靠芯片内部振荡的电路方式。但本系统采用外部时钟电路是出于考虑到石英晶体的外部时钟相较于内部时钟电路具有温飘更低,精度更高的优点,电路图如图3-2所示所示,当在单片机的XTALI(18)和XTAL2(19)引脚外接入石英晶体和电容,此时在单片机内部产生时钟脉冲信号,形成了自激振荡器,组成的并联谐振回路。晶体振荡频率一般选择12MHz,电容值选择范围是5~30pF,电容值的大小对频率起到微调作用。图3-2时钟电路图图3-2时钟电路图图3-1单片机管脚图STC89C52RC单片机最小系统主要特性:一个8位的CPU(微处理器),主要包括运算器和控制器。片内数据存储器RAM,用来存放程序运行时的数据和中间结果。片内程序存储器ROM,增强型89C52单片机片内有8KB,地址为0000H~1FFFH。用来存放编写好的程序、常数和数据表格。4个8位并行I
/0端口都是准双向口(每个端口既可用作输入口,也可用作输出口)。两个定时器/计数器,实际是加一的计数器(计数部件),既可以在计数模式下对外部事件进行计数,也可在定时模式下由计算机进行控制。为了方便设计串行通信,
52子系列单片机内部有三个可编程的16位定时器/计数器。五个中断源的中断控制系统。片内振荡器和时钟发生器,只要外面接上晶振或输入振荡信号,就可以产生单片机运行需要的各种信号,最高允许振荡频率为12MHz。3.2报警模块的设计本设计使用的是有源蜂鸣器REF_Ref3822\w\h[9],蜂鸣器俗称喇叭,广泛运用于各类信息电子技术产品的一种重要元件,它用于报警、提示、音乐等诸多不同运用场合。只要蜂鸣器通电,就会发出声音。蜂鸣器的优点是:价格实惠、可以发出多种音调、在某些情况下控制端口可以重复使用、具有编程控制简单。本设计中,蜂鸣器引脚接单片机,当上位机(手机蓝牙)与下位机(蓝牙模块芯片)二者连接已断开时,本设计用三极管、电阻等元件构成的放大电路来驱动蜂鸣器发出声音,首先利用单片机发送一个低电压到S8550三极管的发射极,此时三级管导通,蜂鸣器工作就会报警,如图3-3所示。图3-3蜂鸣器报警电路图3.3电源部分的设计在这个设计中单片机的工作电压稳定性能要满足系统运行的基本要求,蓝牙被用于无线距离的数据传输,因此需要一个稳压电路REF_Ref3678\w\h[10]。如下图3-4所示,在本设计中采用了电容C4和C5来进行滤波,为蓝牙模块芯片提供的稳定的电源。其中J2为电源接口,
SW1为电源开关,LED1为电源指示灯,
R3为二极管的限流电阻。所以此设备电源模块的能量来源可以通过计算机的USB口供给,也可以由手机充电头进行提供REF_Ref3554\w\h[11]。图3-4电源电路图3.4测距部分的设计获取蓝牙信号强度的途径是用户通过设备服务发现并针对每一个服务,获得相应服务的唯一识别码。通过读取对于那个蓝牙的请求,去自动设置对应设备的特征属性得到返回值RSSI,连接后,因为手机和蓝牙设备端的距离会不断地发生变化,所以要不断地读取返回值RSSI,实时计算手机和防丢设备之间的距离才能有效保证防丢报警功能设计能够顺利实现,即通过手机软件逻辑设计和单片机的控制实时计算主机和子机之间的距离才能保证防丢报警功能的顺利实现REF_Ref3188\w\h[12]。3.5手机APP部分的设计APP的设计选用的是MITAppInventor编程,新建项目后使用基本的元件例如按钮、标签、文本输入框等进行基本的界面组建。如图3-5所示。再进行后续的逻辑设计通过蓝牙强度测距公式进行蓝牙测距,Android控制端可以在与蓝牙设备连接之后,根据接收到的RSSI值计算信号点与接收点的距离,进而根据数据进行相应测距,距离计算公式如下REF_Ref2561\w\h[13]:d=10^(abs(RSSI)-A)/(10*n))其中,A:发射端和接收端相隔1米时的信号强,d:计算所得距离,RSSI接收信号强度(负值),n环境衰减因子,主要逻辑结构如下图3-6所示。图3-5APP界面组建图图3-6逻辑设计图
4系统软件设计4.1系统软件设计开发环境本系统采用KeilSoftware公司出品的集成环境来进行C语言编程,Keil是属于德国KeilSoftware公司出品的51/32系列单片机C语言软件开发系统REF_Ref2904\w\h[14];Keil提供了包含C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境将这些部分组合在一起;如果使用C语言编程,那Keil是个不错的选择,就算不使用C语言而是用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会让你轻松许多。与汇编等语言相比较,C语言在节省编写时间和节省阅读时间、易于维护以及功能的完善管理方面具有非常明显的优势,方便用户学习和使用。主程序设计软件的部分设计一共有两部分,一是对STC89C52单片机的初始化、对蜂鸣器的调用程序、第二部分是软件代码的设计,主要用到的语言是C语言。本设计使用STC89C52RC单片机最小系统作为控制芯片,软件设计部分主要分为:系统初始化、蓝牙模块、报警模块等部分,各个模块在总体设计中起着不可或缺的作用。本设计的主程序的流程图,如图4-1所示。图4-1系统软件流程图4.2程序结构分析及流程图蓝牙防丢器系统的软件设计运用模块化的设计思想,模块化设计思想就是把一个非常复杂的软件设计分成几个比较简单的模块后,方便对各个各模块进行设计。当蓝牙防丢器上电后,电源指示灯(发光二极管)亮起,
STC89C52RC单片机自动复位后就开始运行主程序。主程序先开始系统初始化单片机和串口,然后再给数据串口赋值,通过串口从蓝牙模块发送数据字符串最后返回继续赋值发射REF_Ref22916\w\h[15]。当通过手机接收蓝牙数据却接收不到蓝牙模块发送的数据时,则就会激活报警功能,具体工作时的程序流程图如下图4-2所示。图4-2程序流程图
5系统调试与测试结果5.1安装步骤检查元件的好坏
按照预先设计好的电路图购买元件后,首先要一个一个的和原理图对比看看是否一致,元件的性质可能不尽相同,所以要用不同的检测方法来检查元件是否损坏的。确认好元件状态良好后才可以进行焊件,这样就可以预防焊件焊错后不便改正。
2.放置、焊接各元件
按照电路原理图各元器件的位置将元件依次放在万用板上,在放置过程中根据从小到大原则先放置小元器件,后放置大元器件。容易损坏的元器件留到最后焊,芯片最好焊接底座方便芯片插入,可以防止芯片安装方向弄反的问题,如果没有底座的话,焊芯片时间最好不要超过10s。5.2硬件调试要做好元器件的组装焊接工作,首先需要准备好需要的元件,焊接工具。准备好需要的工具和元器件之后,先根据基本电路原理图安装好元器件,安装的时候要特别注意元件是否安装平整。安装元器件后,焊接时要注意焊接前要处理焊盘上的氧化层。焊接要注意先焊接小元件,然后再焊接大元件,要先处理不容易焊接的元器件,这个和连接元器件的原则是一模一样的。将元器件都进行正确的安装固定后,进行组装电路最后个步骤,也是最关键的一个步骤,那就是焊接。在焊接完成后通电前,须认真检查电路连线是否有错误。焊接完成后的实物图如下图5-1所示。图5-1硬件电路实体图5.3软件调试该系统使用主要在KEIL5平台上实现的C语言编程。当手机app启动时,主板上的应用程序启动并成功初始化后,app启动时对蓝牙连接状态的检测,如果连接,程序的内部功能将保留在当前指令上,如果连接是断开的,则会打开蜂鸣器警和手机报警提醒。主控制应用是为Android4.0及更高版本的操作系统设计的,所使用的开发工具是一个广泛的跨平台集成开发环境MITAppInventor。蓝牙主机系统APK安装在智能手机上,点击蓝牙防丢器程序中的相应按钮,应用程序将弹出启动蓝牙请求接口进行蓝牙连接,点击蓝牙连接。连接防丢设备后,STC89C52RC单片机会将自动置位并重新开始运行程序。对于能接收蓝牙数据时,手机app界面则会显示安全距离;对于不能接收到蓝牙数据时,手机app端预先设计好的报警声响起,即当蓝牙模块和手机超出蓝牙能检测到信号的范围时,手机蓝牙会和蓝牙模块连接不上,超过能检测到的安全距离,此时有源鸣器和手机同时响起报警。5.4系统测试结果对电源模块进行测试:利用万用表测得数据线的输出电压分别为5V,表明都能正常提供稳压电源,电源模块设计良好,开启电源后电源指示灯(发光二极管)正常亮起,则电路进行正常REF_Ref24892\w\h[16],如图5-2所示。图5-2电源电路实物图对报警模块进行测试:运行报警测试程序,蜂鸣器发出蜂鸣声如图5-3所示;表明防丢器报警模块与芯片有效连接,可实现报警功能.经过以上测试步骤并对测试结果进行分析可知,防丢器硬件电路各功能模块设计良好,系统能正常运行REF_Ref2006\w\h[17]。图5-3蜂鸣器电路实物图对下载电路进行测试.将防丢器硬件电路板上的STC89C52芯片放到单片机开发板上,并把编译并运行产生的hen文件烧录到STC89C52芯片中,这样就可以把设计好的代码烧入开发板。烧入结果如图5-4所示,操作步骤:①选择单片机型号;②打开程序文件,找到相应的HEX文件;③选择串口号,计算机-属性-设备管理器-端口,即可查找相应串口号;④点击“Download/下载”按键.烧入成功下载至STC89C52芯片中,下载电路正常。图5-4烧入程序图给开发板上电后,电源指示灯(发光二极管)亮起,打开手机APP开始搜索蓝牙设备,点击蓝牙设备并与智能手机进行连接配对,如下图5-5所示,配对成功后,智能手机和防丢设备之间的距离一旦超过阈值后蓝牙便会断开连接,同时蜂鸣器会长鸣报警。提醒看护者看管柔弱人群,这样就能起到蓝牙防丢器的关键作用了。图5-5蓝牙配对图基于单片机设计,分为主机和从机(主机为手机端,从机为电子设备),蓝牙模块连接手机作为主机控制从机,在一定范围内不发出警报,超出范围后手机震动向使用用户发出报警信号,单片机和手机上预设距离,可以手机app上实时显示距离,如下图5-6所示。图5-6报警界面图
6结论本设计是一种基于单片机STC89C52的智能防丢器设计方案,STC89C52单片机最小系统为主要控制模块,采用的是HC-42蓝牙5.0BLE为蓝牙模块感应蓝牙信号强度,根据蓝牙信号强度距离公式,计算不同方位的距离;软件开发利用可在线编程,跨平台集成的开发环境MITAppInventor来开发APP。是一款智
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 硅质材料生产项目规划选址论证报告
- 蒸压加气混凝土砌块建筑工程商业计划书
- 混凝土工程施工质量保证措施方案
- 环卫恶劣天气应急预案及应对措施
- 钢结构安装施工方案
- 公路隧道注浆堵漏技术应用
- 2026年山东省青岛市四方区数学四上期末联考模拟试题含解析
- 云南轻纺职业学院《SYB创业课堂》2026-2027学年第一学期期末试卷含解析
- 江苏省江阴市云亭中学2027届七上数学期末考试试题含解析
- 2026年四川省宜宾市数学四上期末质量检测试题含解析
- 工程项目进度控制
- 电气设备安装工程-江西定额
- 婺源县矿产资源开发公司新田金矿采矿权出让收益评估报告
- 2023年江苏江南水务股份有限公司招聘笔试题库及答案解析
- GB/T 11079-2015白油易炭化物试验法
- 学生缓期考试申请表(模板)
- 2023年瑞安市交通运输集团有限公司招聘笔试题库及答案解析
- 信息学奥赛-计算机基础知识(完整版)资料
- 胆管结石护理和查房课件
- Q∕SY 1836-2015 锅炉 加热炉燃油(气)燃烧器及安全联锁保护装置检测规范
- 计算机基础全套完整版ppt教学教程最新最全
评论
0/150
提交评论