1034 基于单片机公交安全预警系统仿真设计-毕设资料

摘要

本文设计了一种基于单片机的公交安全预警系统,通过仿真实验验证了系统的有效性。该系统包含电源电路、三路传感器检测模块、ADC0808数据采集芯片、LCD1602显示模块以及报警机制。电源电路实现220V到5V的电压转换,为系统提供稳定的工作电压。三路传感器分别用于检测CO气体、乘客探头以及下车时后方来车情况,确保公交行驶安全。ADC0808芯片负责采集传感器的模拟信号,并将其转换为数字信号供单片机处理。LCD1602显示屏用于实时显示检测结果和报警信息。当检测值超过设定的报警阈值时,系统会触发报警机制,提醒驾驶员采取相应措施。

一、引言

随着城市公共交通的不断发展,公交车的安全性问题越来越受到人们的关注。为了提高公交车的行驶安全,降低事故发生率,本文设计了一种基于单片机的公交安全预警系统。该系统通过实时监测公交车内外的环境参数和乘客行为,及时发现潜在的安全隐患,并通过报警机制提醒驾驶员采取相应措施,从而保障乘客和驾驶员的安全。

二、系统总体设计

本系统主要由电源电路、传感器检测模块、ADC0808数据采集芯片、LCD1602显示模块以及报警机制组成。电源电路负责为整个系统提供稳定的工作电压;传感器检测模块包括CO气体检测传感器、乘客探头检测传感器以及下车时后方来车检测传感器,用于实时监测公交车内外的环境参数和乘客行为;ADC0808数据采集芯片将传感器的模拟信号转换为数字信号,供单片机处理;LCD1602显示模块用于实时显示检测结果和报警信息;报警机制包括声光报警等方式,用于在检测到异常情况时提醒驾驶员。

三、硬件设计

  1. 电源电路

电源电路采用220V到5V的电压转换设计,通过变压器、整流电路和滤波电路实现电压的稳定输出,为整个系统提供所需的工作电压。

  1. 传感器检测模块

传感器检测模块包括三个子模块,分别用于检测CO气体、乘客探头以及下车时后方来车情况。CO气体检测传感器采用电化学原理,具有高灵敏度和快速响应的特点;乘客探头检测传感器采用红外传感技术,能够准确检测乘客的上下车行为;下车时后方来车检测传感器采用超声波测距原理,能够实时监测公交车后方来车情况。

  1. ADC0808数据采集芯片

ADC0808数据采集芯片负责将传感器的模拟信号转换为数字信号,供单片机处理。该芯片具有8位分辨率和高速转换能力,能够满足系统对数据采集精度和速度的要求。

  1. LCD1602显示模块

LCD1602显示模块用于实时显示检测结果和报警信息。通过编程控制,可以将传感器的数据以及报警状态以文本形式展示在LCD屏幕上,方便驾驶员查看。

  1. 晶振电路与复位电路

晶振电路为单片机提供稳定的时钟信号,确保系统按照预定的时序进行工作。复位电路则用于在系统启动或出现故障时,将单片机复位到初始状态,保证系统的正常启动和运行。

四、软件设计

软件设计主要包括单片机程序的编写和调试。程序需要实现以下功能:初始化各模块、定时采集传感器数据、处理数据并显示在LCD1602上、判断检测值是否超过报警阈值并控制报警机制等。在程序编写过程中,需要充分考虑程序的稳定性和实时性,确保系统能够准确、快速地完成安全预警任务。

五、仿真实验与结果分析

为了验证本设计的可行性和有效性,我们进行了仿真实验。实验结果表明,本系统能够准确检测公交车内外的环境参数和乘客行为,并在检测到异常情况时及时触发报警机制。LCD1602显示屏能够清晰地显示检测结果和报警信息,方便驾驶员查看和判断。同时,系统的稳定性和实时性也得到了验证,能够满足公交车安全预警的需求。

六、结论与展望

本文设计了一种基于单片机的公交安全预警系统,通过仿真实验验证了其有效性。该系统具有结构简单、易于实现和成本较低等优点,适用于公交车的安全预警应用。未来,可以进一步优化系统的硬件和软件设计,提高系统的性能和稳定性,拓展其应用范围。同时,可以考虑引入更多的传感器和算法,提高系统的检测精度和预警能力,为城市公共交通的安全运行提供更加可靠的保障。

#include <reg52.h>                                      /* 包含头文件 */
#include <math.h>
#include "uart.h"
#include "display.h"
#define uint	unsigned int
#define uchar	unsigned char                           /* 宏定义 */
sbit	ale	= P2 ^ 6;
sbit	start	= P2 ^ 7;
sbit	eoc	= P3 ^ 2;
sbit	oe	= P3 ^ 3;                               /* 定义adc0809的控制引脚 */
sbit	adda	= P2 ^ 0;
sbit	addb	= P2 ^ 1;
sbit	addc	= P2 ^ 2;                               /* adc0809的地址引脚 */

sbit		key1	= P3 ^ 4;
sbit		key2	= P3 ^ 5;
unsigned long	voltdata[8];
uint		realvolt, i, j, k, l, t, sum, a[5];     /* 定义全局变量 */
unsigned char	CH;
uchar		add;                                    /* 地址变量 */
uchar		TxBuf[8];                               /* 四个显示的位 */
unsigned char	t0Count;
unsigned char	flagAu = 1;

uchar flag = 0;


/*
 * 函数说明
 */
void addselect()                /* 量程选择 */
{
	CH++;                   /* 通道号加 */
	if ( CH > 7 )           /* 最大到5		  符号&:按位与符号,二进制的对应位如果都为1,那么结果的对应位就为1,否则为0 */
		CH = 0;         /* 清零,一共三个通道0 1 2 对应二进制是0000.0001.0010 */
	adda	= CH & 0x01;    /* 将通道对应的二进制0101&0001,结果就是0001,赋值给adda(引脚只能接受最低位的数据,只有1和0),那么adda引脚就是高电平 */
	addb	= (CH & 0x02) >> 1;
	addc	= (CH & 0x04) >> 2;
	delay( 5 );             /* 短延时 */
}

【资源下载】下载地址:点击下载(1034) 
https://docs.qq.com/doc/p/ffc421513a628b30450ae742547c0b850456d7c8 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值