基于单片机的胎压监测系统的设计

2023-11-06 05:52

本文主要是介绍基于单片机的胎压监测系统的设计,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

收藏和点赞,您的关注是我创作的动力

文章目录

    • 概要
  • 一、系统整体设计方案
  • 二、 系统设计
    • 4.1 主流程图
  • 三 系统仿真
    • 5.1 系统仿真调试
    • 实物
  • 四、 结论

概要

  本文以STC89C52单片机为控制核心,通过气压传感器模块对汽车各轮胎的胎压进行实时数据的采集与处理,利用2.4G ZigBee无线模块反馈给单片机进行数据处理和判断,当汽车胎压高于和低于系统设定的阙值时,时钟DS1302进行时间记录,单片机给蜂鸣器报警信号并且通过对显示模块进行工作,将胎压的实时信息和报警时间显示到LCD1602液晶显示器上,时相应的胎压警示灯亮起。
关键词:TPMS;STC89C52;无线传输

一、系统整体设计方案

  

在本次汽车胎压监测系统的设计中,主要实现以下几大功能:
(1)液晶显示:通过显示模块实现当前值的压值及当前时间。
(2)数据采集:能够检测出四个轮胎的当前胎压值。
(3)报警控制:当单个胎压超过设定值时或者四个轮胎不平衡时蜂鸣加声光报警同时发送到手机上提醒驾驶员;
(4)无线通信:用无线传感对数据进行传输和执行。
(5)按键控制:能够通过按键设定阈值。

二、 系统设计

4.1 主流程图

系统主流程图如图4-1所示,对于本系统一上来就是待机状态,正常工作后扫描DS1302程序,进行时间信息的采集。然后通过对无线信号的扫描,对胎压传感器采集的信息进行处理和判断。胎压是大于系统所设置的最大限值,如果是则进行高压报警,并亮起高压胎压警示灯;若否则进入下层判定是否时低压报警,如果是则进行低压报警,并亮起低压胎压指示灯并由单片机将数据传输给LCD1602进行显示。
在这里插入图片描述
4-1 系统主控流程图

三 系统仿真

5.1 系统仿真调试

在系统的仿真阶段首先要建立一个工程,然后在元器件库搜索用到的各种元器件,无线通信不能在仿真软件很好的显示,本次采用AD转换器ADC08032与滑动变阻器进行连接来代替传感器监测的信号,将滑动变阻器改变数值进行数模转换并呈递给从机,从机将信号传递给主机模拟无线通信。元器件布局完毕后进行线路的连接,在这个阶段不可出现虚连等问题,否则会出现仿真错误。
  在设计系统的过程中需要进行调试,该步骤是系统设计中必不可少的步骤之一,它的目的是及时在最后阶段进行系统整体测试与校验,而调试分为系统软件调试和硬件调试,软件调试包含了系统程序调试,系统仿真测试。
  在本系统中的仿真软件使用的是Proteus,该软件可以仿真单片机和一些电子电路有关的知识点,通过本软件的仿真可以在很大的程度上缩短系统设计的周期,在焊接电路板之前可以在仿真软件上经过测试,对于发现的瑕疵要认真分析问题的所在,是硬件设计原理问题还是程序编译问题,这样才能具有更加针对性的修改。经过仿真测试得到的正确结果才能进行电路的焊接,如下图5-1所示为系统仿真调试的结果示意图,由于仿真软件库有部分器件是有的,所以达不到全部的预计效果。
图5-1 仿真图

在这里插入图片描述

实物

在这里插入图片描述

四、 结论

本文研究与设计了汽车胎压监测系统。本文的主要工作是研究如何实现实时监测轮胎的压力并记录时间,如何准确地对轮胎故障报警,如何提高系统的可靠性和实用性。本文的工作如下:
1、对威胁行车安全发生爆胎的原因进行了分析,针对当前轮胎监测系统方案的不足之处,提出了基于单片机的胎压监测系统设计方案,在满足系统设计基本需求的同时,简化了电路的设计,提高了TPMS系统的稳定性、安全性和抗干扰能力,并能解决系统低功耗的要求。
2、硬件方面,设计了具备电源转换、STC89C52单片机最小系统、无线传输、胎压传感器、LED驱动、蜂鸣器驱动等功能的集成电路板,将集成电路板安装于车辆OBD诊断接口,电源转换电路将车辆12V电压分别降至3.3V和5V供给整个集成电路板,单片机最小系统保证胎压监测系统的正常运行,XGZP6847型压力传感器采集车辆实时胎压数据,保留轮速数据并传送至STC89C52单片机内部,运行计算后,适时驱动LED指示灯和蜂鸣器。
3、软件方面,构建了胎压监测系统的主程序框架,明确各子程序的功能定义。具体工作如下,各器件的初始化配置和信息接收方式配置、胎压异常判断流程设计、休眠模式设计、报警模式设计,程序运行后,ZigBee无线接收模块和XGZP6847胎压传感器模块正常工作,而休眠模块等待相应的外部条件触发,一旦触发,系统进入休眠。
  本次设计通过焊接完毕实物后将程序下载到单片机中得知,整体的设计符合了任务书的要求,但实物制作过程中也不是十分顺利的,测试过程中发现有一部分功能和预期的不一样,在进行原因的查找,修改程序、下载程序等多次操作,最后完成了一个和预期一样的实物。

这篇关于基于单片机的胎压监测系统的设计的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/354831

相关文章

linux系统中java的cacerts的优先级详解

《linux系统中java的cacerts的优先级详解》文章讲解了Java信任库(cacerts)的优先级与管理方式,指出JDK自带的cacerts默认优先级更高,系统级cacerts需手动同步或显式... 目录Java 默认使用哪个?如何检查当前使用的信任库?简要了解Java的信任库总结了解 Java 信

Oracle数据库在windows系统上重启步骤

《Oracle数据库在windows系统上重启步骤》有时候在服务中重启了oracle之后,数据库并不能正常访问,下面:本文主要介绍Oracle数据库在windows系统上重启的相关资料,文中通过代... oracle数据库在Windows上重启的方法我这里是使用oracle自带的sqlplus工具实现的方

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux查询服务器系统版本号的多种方法

《Linux查询服务器系统版本号的多种方法》在Linux系统管理和维护工作中,了解当前操作系统的版本信息是最基础也是最重要的操作之一,系统版本不仅关系到软件兼容性、安全更新策略,还直接影响到故障排查和... 目录一、引言:系统版本查询的重要性二、基础命令解析:cat /etc/Centos-release详

更改linux系统的默认Python版本方式

《更改linux系统的默认Python版本方式》通过删除原Python软链接并创建指向python3.6的新链接,可切换系统默认Python版本,需注意版本冲突、环境混乱及维护问题,建议使用pyenv... 目录更改系统的默认python版本软链接软链接的特点创建软链接的命令使用场景注意事项总结更改系统的默

在Linux系统上连接GitHub的方法步骤(适用2025年)

《在Linux系统上连接GitHub的方法步骤(适用2025年)》在2025年,使用Linux系统连接GitHub的推荐方式是通过SSH(SecureShell)协议进行身份验证,这种方式不仅安全,还... 目录步骤一:检查并安装 Git步骤二:生成 SSH 密钥步骤三:将 SSH 公钥添加到 github

Mysql中设计数据表的过程解析

《Mysql中设计数据表的过程解析》数据库约束通过NOTNULL、UNIQUE、DEFAULT、主键和外键等规则保障数据完整性,自动校验数据,减少人工错误,提升数据一致性和业务逻辑严谨性,本文介绍My... 目录1.引言2.NOT NULL——制定某列不可以存储NULL值2.UNIQUE——保证某一列的每一

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方