检测仪的硬件电路图如图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个实际的距离。