基于单片机的疲劳驾驶检测仪设计

发布者:渤海湾最新更新时间:2011-09-24 关键字:单片机  疲劳驾驶检测仪 手机看文章 扫描二维码
随时随地手机看文章

  针对目前严重的疲劳驾驶行为,研制了一种疲劳驾驶检测装置。在座椅头枕上前方正对驾驶员头部的位置安装1个红外线发射二极管和2个红外线接收头,由单片机控制红外线发射的电流强度,同时检测接收头的信息就可以检测头部的相对位置。如果驾驶员处在疲劳驾驶状态中,头部必定偏离正常位置并且时间超过设定值,则输出报警和制动控制信号。在几种典型车辆上对该系统进行了实验,验证了方法的正确性和有效性,并能达到较高的测量精度。

  1 检测仪结构特点

  如果驾驶员处在疲劳驾驶状态中,头部必定偏离正常位置并且时间超过设定值,装置则输出报警和制动控制信号。检测仪中的反射式红外线传感器由1个红外线发射二极管和2个红外线接收头组成,红外线发射二极管发射经过调制的38 kHz红外线光束,安装在座椅头枕上前方正对驾驶员头部的位置,红外线发射二极管放置在中间, 2个红外线接收头对称放置在左右两边。

  2 驾驶员头部位置分析

  在驾驶过程中,驾驶员正常和疲劳时其头部位置是不同的,侧视图如图1所示,图1 ( a)表示驾驶员在正常驾驶汽车时其头部位置与座椅头枕有几cm的较小距离,而不是完全靠紧头枕,因为靠紧头枕驾驶眼睛会感觉很不舒服,不方便观察距离汽车较近的道路情况。

  图1 ( b)表示驾驶员疲劳驾驶汽车时最常见的开车睡眠姿势,也是驾驶员最初的疲劳睡眠姿势,这时驾驶员头部距离座椅头枕一般大于15 cm,这种情况下应及时报警,如果持续2 s就应启动制动系统自动刹车。但是短暂的其他非疲劳动作,如探身操作仪表板上的开关、回头观察等短时动作也有类似的距离变化,这时可以用时间来区别, 2 s以内恢复正常位置的不作为疲劳驾驶判定。

  图1 ( c)表示驾驶员在有意识地短暂休息和闭上眼睛驾驶,但还没有完全睡着时的姿势,但这是完全睡着的前奏,其头部位置紧靠座椅头枕,距离为0,这种情况下应该及时报警,发展下去就会演变成图1 ( b)的情况。

  

 

  图1 驾驶员头部位置侧视图

  图2为驾驶员头部的俯视图,其中圆形代表驾驶员的头部,箭头代表红外线发射和反射的路线。图2 ( a)为正常驾驶时驾驶员头部与红外线传感器的相对位置示意图,红外线从中间的红外线发射二极管发射出来到被驾驶员头部反射回左右2个红外线接收头,所经过的距离基本相等。

  图2 ( b)表示驾驶员疲劳后的头部位置,是向左或右歪斜的情况,这与图1 ( b)的典型位置有所不同,是一种中间过渡的疲劳形态,最终也会转化到图1 ( b)的位置,这时红外线传感器将检测出左右不同的距离,也应及时报警或输出制动信号。

  图2 ( c)表示驾驶员疲劳后头部继续偏移的位置,一侧的红外线接收头已经不能接收到被反射回来的红外线了,在计算机程序中得到距离无限大的结果,这说明驾驶员疲劳程度进一步增强,应及时报警或输出制动信号。

  

 

  图2 驾驶员头部位置俯视图[page]

3 检测仪的硬件设计

 

  检测仪的硬件电路图如图3所示,图中LED为红外线发射二极管, IC3、IC4 为红外线接收头,MCU 为ATmaga8 单片机。

  

 

  图3 检测仪硬件电路

  LED发射38 kHz的红外线调制光束,经驾驶员头部反射后会照射到IC3、IC4的接收窗口, IC3、IC4对接收信号进行解调,经放大处理后以高或低电平的方式送到单片机MCU的输入口线,计算机程序将口线的值送到内存保存,供后面的程序作为判断依据。

  红外线发射二极管LED发射的红外线的有效检测距离与通过红外线发射二极管的电流是对应的,红外线发射二极管LED的电流由三端集成稳压器IC2的输出电压决定,三端集成稳压器IC2的输出电压受计算机程序输出的控制字控制。

  控制字最大值是二进制11111111d,此时R1 ~R8 全部接地, R12的综合阻值最小,三端集成稳压器IC2的输出电压Vout也最小, LED发射的红外线光束的有效距离也最小,适当调整R1~R8 的数值,可以将LED发射的红外线光束的有效距离调整到1 cm左右。当控制字最小值是二进制00000000d,此时R1 ~R8 电阻全部悬浮, R12的综合阻值就是R12 ,三端集成稳压器IC2的输出电压Vout最大,红外线发射二极管LED发射出的红外线光束的有效距离也最大,适当调整R12的数值,可以将红外线发射二极管LED发射出的红外线光束的有效距离调整到20 cm左右。1~20 cm的有效检测距离能够满足实际需要。

  4 检测仪软件设计

  4. 1距离检测方法

  有效距离检测与单片机发出的控制字相对应,距离检测的方法是:逐渐减少红外线发射的强度,直到接收不到反射的红外线光束,此时的控制字对应的距离值就是当前驾驶员头部与座椅头枕的距离。

  4. 2 驾驶员头部位置的自动标定

  单片机程序框图如图4所示,自动标定头部正常位置的程序在汽车启动发动机再延时一段时间内运行,因为疲劳驾驶不会发生在这段时间内。当行驶到主路后,头部的动作逐步稳定,这时候才是对头部进行正常位置标定的正确时机。每次都要重新标定是因为驾驶员可能换人,每个人头部的位置不完全一样,标定的结果也会有差异。

  

 

  图4 头部正常位置的自动标定程序框图

  自动标定头部正常位置的程序就是使红外线发射二极管的电流强度由强到弱逐步减小,同时检测IC3、IC4的输出状态,判断是否到了接收不到的临界点,这是停止发射电流强度减小的界限,同时读出此刻的控制字数值作为距离标定。当左右2个红外线接收头IC3、IC4所输出的信号电平一致,同时能够保持相当一段时间不变时,就可以用此时的控制字作为标准距离标定。每个控制字都对应1个实际的距离。

[page]

4. 3 驾驶员头部偏离正常位置的检测

 

  如果某个红外线接收头没有接收到红外线信号,则判定为此红外线接收头与驾驶员头部的距离大于此时与控制字相关联的距离。

  2个红外线接收头所输出的信息分别反映了同一时刻驾驶员头部与2个红外线接收头的距离,与标准距离比较就能判断驾驶员的头部是正常位置还是前倾、侧倾、后仰。是否输出报警和制动控制电平由计算机程序根据驾驶员头部偏离正常位置后的持续时间决定。

  5 实验结果分析

  将该检测仪安装在捷达和雨燕等汽车上并进行了大量的实验,对5个驾驶员的正常驾驶状态和疲劳驾驶状态进行测试,测试数据如表1所示。可以看出该检测仪能实时地跟踪和判断测试人员的疲劳状态,同时对醉酒驾驶的不正当坐姿也起到警示作用。

  

 

  6 结束语

  该检测仪完成了驾驶员头部位置正常与否的识别,进而判断驾驶员是否疲劳驾驶,是简单技术的智能化应用。该检测仪可以低成本地装备现有汽车,提高安全几率,便于大规模推广,市场需求潜力巨大。

 

 

关键字:单片机  疲劳驾驶检测仪 引用地址:基于单片机的疲劳驾驶检测仪设计

上一篇:毫欧姆电阻在汽车电子系统中的应用
下一篇:车祸自动定位报警系统的设计与实现

推荐阅读最新更新时间:2024-05-02 21:36

瑞萨电子将展示首颗基于Cortex M85内核的RA系列MCU
瑞萨电子日期宣布,它将与6月纽伦堡Embedded World 2022上现场演示基于Arm Cortex-M85内核的微控制器 (MCU)。 瑞萨电子于 2019 年 10 月推出了基于 Arm Cortex-M 的 RA(瑞萨高级)系列 MCU,凭借强大且功能丰富的基于闪存的 MCU 系列进入通用 Arm-Cortex-M 市场。在大约 30 个月的时间里,瑞萨电子迅速占据了领导地位,推出了 17 个 MCU 系列,超过 200 个产品。此外,瑞萨电子还开发了一个强大的合作伙伴生态系统,为客户提供物联网、人工智能/机器学习、工业自动化、医疗、楼宇自动化、家用电器和其他多种应用的综合解决方案。 “作为 Arm 的主要合作
[单片机]
AVR单片机教程——按键动作
上一篇教程中我们学习了如何读取按键状态。而按键的动作,比如单击,至少需要两个状态才能判定,长按、双击的判定更加复杂。今天我们来学习如何使用库函数判断按键单击,以及其实现原理。 我们要实现的是:当一个按键被单击时,一个LED的状态改变(即亮变暗,暗变亮);4个按键对应4个LED。利用库提供的 button_pressed 函数,很容易就能实现这个功能。 1 #include ee1/button.h 2 #include ee1/led.h 3 #include ee1/delay.h 4 5 int main() 6 { 7 led_init(); 8 button_init(PIN_0, PIN_1
[单片机]
基于51单片机的多功能八路抢答器设计
1.功能介绍 多功能八路抢答器是基于51单片机来设计的,除了可以实现最基本功能——8路抢答外,还具有自动处理犯规选手,抢答时间调整,还可以进行答题,计分,并且可以查询或修改分数。 2.硬件设计 (1)硬件框图 该抢答器的硬件由五个部分组成,包括单片机、按键电路、数码管显示电路、指示灯电路和声音提示电路。硬件框图如下 (2)硬件原理图 由于每个部分的硬件电路都比较简单,就不做介绍了,大家直接看图。 3.软件设计 (1)软件流程图 (2)程序源码 由于本例程代码比较多,这里就只贴出部分代码,有兴趣的小伙伴可以下载源码去看看 复制 void main() { uint j;//用来构成循环 TMOD=0x11
[单片机]
基于51<font color='red'>单片机</font>的多功能八路抢答器设计
单片机的C语言中位操作用法
在对单处机进行编程的过程中,对位的操作是经常遇到的。C51对位的操控能力是非常强大的。从这一点上,就可以看出C不光具有高级语言的灵活性,又有低级语言贴近硬件的特点。这也是在各个领域中都可以看到C的重要原因。在这一节中将详细讲解C51中的位操作及其应用。 1、位运算符 C51提供了几种位操作符,如下表所示: 运算符 含义 运算符 含义 & 按位与 ~ 取反 | 按位或 左移 ^ 按位异或 右移
[单片机]
AT89S51单片机的看门狗功能设计
在ATMEL的89S51系列的89S51与89C51功能相同。指令兼容。HEX程序无需任何转换可以直接使用。89S51只比89C51增加了一个看门狗功能。89S51的其它功能可以参见89C51的资料。 看门狗具体使用方法如下: 在程序初始化中向看门狗寄存器(WDTRST地址是0A6H)中先写入01EH,再写入0E1H。即可激活看门狗。 Org 0000 Ljmp begin Begin: Mov 0A6H,#01EH ;先送1E Mov 0A6H,#0E1H ;后送E1 在程序初始化中激活看门狗。 For: Mov 0A6H,#01EH ;先送1E Mov 0A6H,#0E1H ;后送E1 喂狗指令 Ljmp for
[单片机]
AT89S51<font color='red'>单片机</font>的看门狗功能设计
基于单片机的具有通讯口的智能温控表
1 引言      温控表已广泛应用于工业控制等诸多领域,本文介绍的具有计算机通讯功能的智能温控表是一种新颖的自动化仪表,它以单片机AT89C52为核心,采用电压/频率转换技术和RS-485通信接口芯片MAX487,具有测量精度高、可靠性好、抗干扰性能强、可实现计算机网络控制等优点,可广泛应用于冶金、纺织、化工、医疗等行业。它具有-200~+500°C范围的温度测量和自动控制,是老式温控表的替代产品,市场前景广阔。 2 系统硬件设计      系统硬件框图如图1所示。   系统接通220V交流电源后,通过稳压电路(7805、7905)产生±5V直流工作电源,以满足本系统中集成电路工作需要,系统的遥测电路开始工作:在人
[单片机]
基于赛灵思FPGA和MCU结构的线性调频高度表
1 前言 本文介绍了一种新型调频连续波高度表,主要创新点在于:采用了 FPGA / 单片机 的硬件平台,通用性强,并具备现场软件升级能力;通过软件算法实现了高度搜索、高度跟踪、STC、 AGC 等功能,改变信号处理算法和控制软件能实现多种功能,满足更多应用场合的需要;采用恒定差拍结构,抗干扰能力强,并具有频谱前沿跟踪能力;具有1500m 的大范围测高能 力,在低高度上具有1m 的测高精度。 无线电 高度表不仅可以精确测量飞行器与地面或海面的相对高度,而且还可以测量地表粗糙度、海洋波浪高度等多种参数,在飞机的自动着陆、自动导航、地形匹配等领域得到了广泛的应用。无线电高度表主要分为调频连续波体制和脉冲体制两种,调频连续波体制适合 1
[单片机]
基于赛灵思FPGA和<font color='red'>MCU</font>结构的线性调频高度表
多字节无符号二进制数除法单片机汇编程序举例
例、 将(R2R3R4R5)除于(R6R7),商送(R4R5),余数送(R2R3)。模拟手算方法: 1)从被除数高位开始对齐除数,比较。 2)若前者大于或等于后者,商位为1,并把被除数减除数,形成部分余数。若前者小于后者,商位为0。 3)部分余数左移一位,商也左移一位。 4)整个余数若小于除数,则退出。 5)部分余数从高位开始与除数比较 6)到第2)步。 若被除数高16位大于或等于除数,则溢出。 NDIV:MOV A,R3 CLR C SUBB A,R7 ;先比较是否发生溢出 MOV A,R2 SUBB A,R6 JNC NDVE1 ;溢出 MOV B,#16 ;无溢出,16位 NDVL1:CLR C
[单片机]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved