基于单片机公交安全预警系统仿真设计

news/2023/11/30 9:19:32

**单片机设计介绍, 基于单片机公交安全预警系统仿真设计

文章目录

  • 一 概要
  • 二、功能设计
    • 设计思路
  • 三、 软件设计
    • 原理图
  • 五、 程序
  • 六、 文章目录

一 概要

  基于单片机的公交安全预警系统可以被设计成能够实时监测公交车辆的行驶状态,并在发生异常情况时进行即时报警,以保障乘客和车辆的安全。

该系统的主要组成部分包括:

  1. 单片机(如Arduino):作为系统的核心控制器,负责采集和处理车辆传感器的数据、控制报警器工作、与显示器通信等。

  2. 车辆传感器:例如加速度传感器、碰撞传感器、倾斜传感器等,用于感知车辆的运行状态和姿态。

  3. 报警器:根据预设的条件(如碰撞、倾斜等)进行报警通知。

  4. 显示器:用于显示当前的车辆状态和系统状态信息。

  5. 电源供应:提供系统所需的电能,可以是车载电池或外部电源。

在使用该系统时,车辆传感器会不断地采集车辆的运行状态数据,并将数据传输到单片机上进行处理。单片机根据设定的报警条件,如果检测到异常情况(如车辆碰撞、倾斜等),报警器将会被触发,同时系统状态信息也会被显示在显示器上。

为了确保系统的性能和可靠性,设计阶段可以通过仿真来模拟和评估系统的效果。例如,可以使用仿真软件来模拟公交车辆的运行场景,并模拟各种异常情况,以验证系统的报警功能和灵敏度。同时,还可以通过仿真测试来调整系统的参数,以提高系统的准确性和可靠性。

公交安全预警系统的设计旨在保护乘客和车辆的安全,通过及时报警和预警,可以及早发现潜在的危险因素,采取适当的措施,减少事故的发生。

二、功能设计

基于单片机公交安全预警系统仿真设计,通过三路传感器进行检测,注:A.CO Over Limit…表示co超限;B.Safe Attention 表示有乘客伸出窗外;C.Car Attention 下车时后方有来车。通过LCD进行显示当前预警系统状态。包含的电路有显示电路,电源电路,三路传感器电路。

设计思路

设计思路
文献研究法:搜集整理相关单片机系统相关研究资料,认真阅读文献,为研究做准备;

调查研究法:通过调查、分析、具体试用等方法,发现单片机系统的现状、存在问题和解决办法;

比较分析法:比较不同系统的具体原理,以及同一类传感器性能的区别,分析系统的研究现状与发展前景;

软硬件设计法:通过软硬件设计实现具体硬件实物,最后测试各项功能是否满足要求。

在这里插入图片描述

三、 软件设计

本系统原理图设计采用Altium Designer19,具体如图。在本科单片机设计中,设计电路使用的软件一般是Altium Designer或proteus,由于Altium Designer功能强大,可以设计硬件电路的原理图、PCB图,且界面简单,易操作,上手快。Altium Designer19是一款专业的整的端到端电子印刷电路板设计环境,用于电子印刷电路板设计。它结合了原理图设计、PCB设计、多种管理及仿真技术,能够很好的满足本次设计需求。

————————————————

仿真实现
本设计利用protues8.7软件实现仿真设计,具体如图。

Protues也是在单片机仿真设计中常用的设计软件之一,通过设计出硬件电路图,及写入驱动程序,就能在不实现硬件的情况进行电路调试。另外,protues还能实现PCB的设计,在仿真中也可以与KEIL实现联调,便于程序的调试,且支持多种平台,使用简单便捷。
————————————————

原理图

在这里插入图片描述

在这里插入图片描述

五、 程序

本设计利用KEIL5软件实现程序设计,具体如图。作为本科期间学习的第一门编程语言,C语言是我们最熟悉的编程语言之一。当然,由于其功能强大,C语言是当前世界上使用最广泛、最受欢迎的编程语言。在单片机设计中,C语言已经逐步完全取代汇编语言,因为相比于汇编语言,C语言编译与运行、调试十分方便,且可移植性高,可读性好,便于烧录与写入硬件系统,因此C语言被广泛应用在单片机设计中。keil软件由于其兼容单片机的设计,能够实现快速调试,并生成烧录文件,被广泛应用于C语言的编写和单片机的设计。
在这里插入图片描述

————————————————

在这里插入图片描述

六、 文章目录

目 录

摘 要 I
Abstract II
引 言 1
1 控制系统设计 2
1.1 主控系统方案设计 2
1.2 传感器方案设计 3
1.3 系统工作原理 5
2 硬件设计 6
2.1 主电路 6
2.1.1 单片机的选择 6
2.2 驱动电路 8
2.2.1 比较器的介绍 8
2.3放大电路 8
2.4最小系统 11
3 软件设计 13
3.1编程语言的选择 13
4 系统调试 16
4.1 系统硬件调试 16
4.2 系统软件调试 16
结 论 17
参考文献 18
附录1 总体原理图设计 20
附录2 源程序清单 21
致 谢 25


https://www.xjx100.cn/news/3092479.html

相关文章

ky10 server arm 在线编译安装openssl3.1.4

在线编译脚本 #!/bin/shOPENSSLVER3.1.4OPENSSL_Vopenssl versionecho "当前OpenSSL 版本 ${OPENSSL_V}" #------------------------------------------------ #wget https://www.openssl.org/source/openssl-3.1.4.tar.gzecho "安装OpenSSL${OPENSSLVER}...&q…

EANet:用于医学图像分割的迭代边缘注意力网络

EANet: Iterative edge attention network for medical image segmentation EANet:用于医学图像分割的迭代边缘注意力网络背景贡献实验方法Dynamic scale-aware context module(动态规模感知上下文模块)Edge attention preservation module&a…

云备份——初步认识及环境搭建

文章目录 整体功能简介云备份功能实现目标服务器程序负责功能细分服务端模块划分客户端功能细分客户端模块划分 环境搭建gcc安装 jsoncppbundle库 与 httplib库安装 整体功能简介 云备份功能 自动将本地计算机上指定文件夹中需要备份的文件上传备份到服务器中 并且能够通过浏…

Transformer——encoder

本文参考了b站的Eve的科学频道中的深入浅出解释Transformer原理和DASOU讲AI中的Transformer从零详解。 入浅出解释Transformer原理 Transformer从零详解 前言: 在自然语言识别中,之前讲过lstm,但是lstm有明显的缺陷,就是当文本过…

Blender中的集合(collection)概念

集合是一种逻辑上的分组方式,它可以让你把一些相似或相关的对象放在一起,而不影响它们的变换关系(不像父子关系那样)。集合可以用来简化你的场景,或者方便你在不同的文件或场景之间进行追加或链接。 集合有以下的特点…

【OpenCV实现图像:使用OpenCV进行物体轮廓排序】

文章目录 概要读取图像获取轮廓轮廓排序小结 概要 在图像处理中,经常需要进行与物体轮廓相关的操作,比如计算目标轮廓的周长、面积等。为了获取目标轮廓的信息,通常使用OpenCV的findContours函数。然而,一旦获得轮廓信息后&#…

金蝶云星空套打设计

文章目录 金蝶云星空套打设计下载登录打开需要创建套打的单据新建套打模板数据中心-发货通知单-设置预览 金蝶云星空套打设计 下载 登录 打开需要创建套打的单据 KD开头,是标准产品预设。 新建套打模板 默认A4纸 默认插入三行三列。 拖入文本,填写内容…

谷歌浏览器任意文件访问漏洞(CVE-2023-4357)复现

1.漏洞级别 高危 2.漏洞描述 该漏洞的存在是由于 Google Chrome中未充分验证 XML 中不受信任的输入。远程攻击者可利用该漏洞通过构建的 HTML 页面绕过文件访问限制&#xff0c;导致chrome任意文件读取。 总结&#xff1a;一个XXE漏洞 3.利用范围 Google Chrome < 116.…