技术文档

红外传感器单片机 单片机实例分享,红外感应自动移门的设计

小编 2024-10-09 技术文档 23 0

单片机实例分享,红外感应自动移门的设计

红外感应自动移门无需人工干预,全自动运行,运转时平稳、安静。其高可靠性使得它适用于许多场合,是方便和舒适的理想产品。

红外感应自动移门由以下7部分构成。

(1)主控制器:它是自动感应门的指挥中心,通过内部编有指令程序的单片机,发出相应指令,指挥电机或电锁类系统工作。人们还可以调整自动感应门门扇的开启速度、开启幅度等参数。

(2)感应探测器:可以采用红外、激光或超声波等探测器。目前主要采用红外探测器,负责采集外部信号,如同人们的眼睛。当有移动物体进入它的工作范围时,它就给主控制器一个启动信号。

(3)动力电机:提供开门与关门的主动力,控制自动感应门门扇加速或减速运行。

(4)门扇吊具走轮系统:用于吊挂活动门扇,同时,在动力牵引下带动门扇运行。

(5)门扇行进轨道:就像火车的铁轨,约束门扇的吊具走轮系统,使门扇按特定方向行进。

(6)同步皮带(或三角皮带):这是用于传输电机所产生的动力,牵引门扇吊具走轮系统。目前大部分产品使用同步皮带。

(7)下部导向系统:这是门扇下部的导向与定位装置,防止门扇在运行时前后摆动。

工作过程

上电后,红外感应自动移门先进行初始化工作:以学习速度缓慢开门,撞墙后停下,并清除长度计数器。然后,以学习速度缓慢关门,门关拢后停下,将测得的正确行程(开门或关门长度)存入单片机的EEPROM,从而进入待机状态。

在待机状态下,如果红外感应探测器探测到有人进入,便输出一个启动信号给主控制器。主控器得到此信号后,控制电机运行,同时监控电机转数(开门长度),以便控制电机在什么时候加速、什么时候匀速、什么时候减速运行。电机得到一定运行电流后,正向运行,将动力传给同步带,再由同步带将动力传给吊具系统,使门扇开启,完成一次开门过程。

自动感应门扇开启后,由控制器作出判断,如较长时间没有探测到人员进出,则通知电机反向运动,关闭门扇。

一次开门与关门过程中,电机的转速变化分析如图1.1所示。

在待机状态时,操作员可以输入红外感应自动移门的相关工作参数,见表1.1。

表1.1 红外感应自动移门的相关工作参数

图1.1 一次开门或关门过程中,电机的转速变化

系统方案设计

红外感应自动移门的主控制器由单片机控制器、数码管显示器、直流电机推动-驱动电路、速度信号反馈电路、继电器控制电路、按键输入电路、用户状态设置电路、红外线感应探测器及电源等组成,如图1.2所示。

图1.2 红外感应自动移门主控制器的构成

图1.3 遮断式光电开关的电路图

为了控制开门长度,我们需要监控电机转数,因此需要取得电机的旋转脉冲。常用的元器件为光栅式编码器,为了降低成本,我们使用遮断式光电开关(见图1.3)和自制的光栅盘构成转速信号反馈组件,如图1.4所示,光栅盘上的透光孔依需要可打8~24个。

在不明显降低使用寿命的前提下,为了降低成本,可以选用优质的24V有刷电机。这样,电机的控制芯片就可使用目前很流行的LMD18200。LMD18200是美国国家半导体公司的单通道直流电机驱动芯片,在12~60V电压下,可输出高达3A的电流,可以驱动一个较大功率的直流电机或步进电机。它内部集成有续流二极管,并有一个电流检测反馈输出,过热时能自动关断。它具有一个方向引脚和一个PWM信号输入引脚,制动引脚输入支持再生制动。只要PWM信号的频率低于1kHz,芯片内部的电容就足以让电荷泵为H桥集成功放电路上的MOS场效应管提供较高的电压。当PWM信号频率高于1kHz时,引脚1和引脚2之间、引脚10和引脚11之间,需要各加一个0.01μF的电容。LMD18200的典型应用方式如图1.5所示。

电路设计

由于红外感应自动移门的主控制器电路比较复杂,我们采取了层次化设计,共分为cpu&relay、sen&in、power 三个子电路(层次),子电路之间的连接方法如图1.6所示。

1.cpu&relay 子电路

cpu&relay子电路如图1.7所示。单片机控制器IC101是整个系统的核心,负责整个红外感应自动移门的运行,这里使用功能强大、高性价比的ATmega16L,有效利用了它的片上资源。IC102为3位的数码管显示器,用来显示按键输入。SW101~SW103为按键输入电路。JP102为调试使用的JTAG仿真口。JP101为短路所用的双排针,用于选择是否启用JTAG仿真。继电器K101、K102用于通/断驱动电机的32V电压及锁停门扇。

图1.4 转速信号反馈组件示意图

图1.5 LMD18200的典型应用

图1.6 子电路的连接

2. sen&in 子电路

sen&in子电路如图1.8所示。IC201为高速光电耦合器,它将直流电机旋转编码器输出的15V脉冲信号转换为5V脉冲,送入单片机处理。JP202、JP203连接到用户状态设置面板上。用户状态设置面板由两把钥匙控制,其中一把钥匙控制锁停门扇,另一把钥匙控制自动移门的8种工作状态。IC202~IC205为光电耦合器。门外侧的红外感应探测器1的输出信号加到JP203的1号脚,门内侧的红外感应探测器2的输出信号加到JP202的6号脚。红外感应探测器的作用是探测是否有人靠近自动移门,一旦有人靠近,会输出一个低电平。IC206为美国国家半导体公司生产的直流电机专用推动电路LMD18200,单片机发出的调宽脉冲信号经PWM端输入,OUT1、OUT2端即输出对应的直流电机调宽推动脉冲。SACE端为刹车信号控制端,加高电平后实现直流电机的紧急刹车。FA端为正反转控制端,高电平控制电机正转,低电平控制电机反转。LMD18200的输出端扩展了以VT205~VT208为分立元件构成的直流电机桥式驱动器,功率余量大,性能稳定。R236、VT208、VT209等构成电机堵转检测电路,当检测门扇全开或全关时(这时电机产生堵转),光电耦合器IC208导通,产生一个低电平给单片机。

图1.7 cpu&relay 子电路图

3. power 子电路

power子电路如图1.9所示。T301为控制变压器,次级共有4个绕组,经整流、滤波后,得到15V DC OUTPUT、12V DC OUTPUT、5V DC OUTPUT、SAMP OUTPUT 四组直流电压,供应红外感应自动移门的主控制器电路工作。其中SAMP OUTPUT目前未使用,留待将来系统升级时使用。T302为主变压器,其次级24V AC经整流、滤波后,得到32V DC供应直流电机工作。

设计完成的红外感应自动移门控制器PCB如图1.10所示。

图1.8 sen&in 子电路图

图1.9 power 子电路图

图1.10 红外感应自动移门控制器 PCB

程序设计

控制程序采用C语言设计,使用ICC7.14C编译器编译,比较简洁易懂。限于篇幅,这里就不做具体分析了。

保养及维护

红外感应自动移门由于受安装质量及使用环境的影响,使用过程中难免会发生问题。如果长期缺乏保养,导致自动门存在的隐患及小故障得不到及时处理,将会由小故障变成大故障,最终可能导致自动门的瘫痪,因此用户平时需要定期进行以下项目的保养工作。

(1)清洁机箱内部的油污、灰尘。

(2)检查自动门各种部件的磨损情况,检查自动门的支位偏差及螺丝松紧情况。

(3)检查皮带的松紧情况。

(4)检查控制器对电机输出、开关门宽度、速度、制动等状态是否正常。

(5)检查电压参数是否正常。

(6)维修、更换损坏的部件。

单片机实例分享,反射式红外测速仪DIY

常用的测速方法

常用的测速传感器可输出脉冲信号,只要通过频率电压或电流转换就能与电压、电流输入型的指针表和数字表匹配。频率电流转换的方法有阻容积分法、电荷泵法和专用集成电路法,前两种方法在磁电转速仪中也有运用。专用集成电路大多数是阻容积分法、电荷泵法的综合。目前,常用的专用集成电路有LM331、AD654和VF32等,转换精度在0.1%以上;但在低频时,这种转换就无能为力。采用单片机或FPGA做F/D和D/A转换,转换精度在0.5%~0.05%,量程从0~2Hz到0~20kHz,频率低于10Hz时反映时间也会变长。

在显示精度、可靠性、成本和使用灵活性上有一定要求时,就可直接采用脉冲频率运算型测速仪。频率运算方法有定时计数法(测频法)、定数计时法(测周法)和同步计数计时法。测频法在测量上有±1的误差,低速时误差较大。测周法也有±1个时间单位的误差,在高速时,误差也很大。同步计数计时法综合了上述两种方法的优点,在整个测量范围都达到了很高的精度,万分之五以上精度的测量转速仪表基本都采用同步计数计时法。

反射式红外测速仪的设计

这里我们介绍一款实用的反射式红外测速仪的设计与制作。

反射式红外测速仪在测量物体运转速度时,首先向被测物体发射出红外线脉冲,利用被测物体表面的反射能力(可在被测物体表面粘贴白色的反射纸等),使红外接收器收到光脉冲信号,然后通过光电转换电路将光脉冲信号转变为电脉冲信号,电脉冲信号通过放大和处理后,输入到单片机的计数控制门,与内部的标准表秒脉冲信号相比较,经运算后,通过显示器将被测物体运动的旋转速度显示出来。

红外探头的测量距离根据实际需要,可设计成近距离和远距离两类。近距离的探头可采用小功率发光管和光敏受光管。如果是远距离的测量,探头就可采用中、大功率的发光二极管或者是合适的激光二极管。

1.系统设计方案

图26.1为反射式红外测速仪的系统构成方框图,由单片机控制器、38kHz载频振荡器、红外线发射/接收电路、8×2点阵字符型液晶屏及工作电源等组成。

图26.1 反射式红外测速仪的系统构成方框图

2.转速测试原理

转速测试原理见图26.2。进入测试状态后,38kHz的载频振荡器起振工作,驱动红外发射管向外发射红外载频信号。单片机首先检测信号的边沿,当一个脉冲的下降沿到来时(图中A点),计数器开始对脉冲计数,同时,单片机还启动定时器进行测试计时。当定时器计时到1000ms时(图中B点),单片机发出一个准备结束本次测试的信号,这时程序又开始检测信号的下降沿,当下降沿到来时(图中C点),单片机对脉冲的计数cnt及对测试时间的计时time完成。此时根据公式:转速=(cnt/time)×60000即可算出此时的转速。当计时到1300ms时(图中D点),单片机输出显示,将测得的转速显示到液晶屏上。此次测试、显示完成后,又进入下一次的测试、显示,周而复始。

图26.2 转速测试原理

测速仪常用于电机、电扇、纸张、塑料、化纤、洗衣机、汽车、飞机、轮船等制造业中。依据对转速检测原理的不同,测速仪可分为以下几种类型。

离心式测速仪:利用离心力与拉力的平衡来检测转速,是最传统的机械式测速工具,测量精度一般在1~2级。

磁性测速仪:利用旋转磁场,在金属罩帽上产生旋转力,通过旋转力与游丝力的平衡来检测转速。

电动式测速仪:电动式测速仪由小型交流发电机、电缆、电动机和磁性表头组成。磁性表头与小型交流电动机同轴连接在一起,小型交流发电机产生交流电,交流电通过电缆输送,并驱动小型交流电动机,小型交流电动机的转速与被测轴的转速一致,磁性表头指示的转速自然就是被测轴的转速。

闪光式测速仪:闪光式测速仪可发出频率可调的脉冲闪光,利用人眼视觉暂留的原理对转动物体进行测速。除了检测转速(往复速度)外,还可以观测循环往复运动物体的静像。

电子式测速仪:电子式测速仪是以现代电子技术及计算机技术为基础而设计的,一般有传感器和显示器,有的还有信号输出和控制。

3.电路设计

反射式红外测速仪的电路如图26.3所示。单片机选择Atmel公司的ATmega48,负责整个测试系统的运行。IC2及阻容元件组成了38kHz的载频振荡器,其载频经VT1放大后驱动红外发射管IR向外发射红外线。IC4为38kHz的一体化红外接收头,它负责红外线的接收、放大及解调,它将解调出的脉冲信号送入单片机进行计数处理。IC5为液晶显示模块,使用了8×2的点阵字符型液晶屏(带背光),形体较小,用于显示测试得到的转速。

图26.3 反射式红外测速仪电路图

整机供电使用9V积层单池,经稳压器IC5稳定为5V后,供单片机工作。笔者实际制作的发射、接收组件如图26.4所示,使用热熔胶固定。制作完成的样机上的液晶屏、电源开关及按键如图26.5所示,按键SB目前没有使用,作为备用,整机照片如图26.6所示。

图26.4 发射、接收组件

图26.5 液晶屏及控制按键

图26.6 反射式红外测速仪整机照片

主函数

void main(void)//主函数

{

uchar temp;//定义单字节无符号局部变量

float count,time,x;//定义浮点型局部变量

Delay_nms(400);//延时400ms,等待电源稳定

init_devices();//初始化单片机

InitLcd();//初始化液晶模块

display1();//液晶屏显示欢迎界面

Delay_nms(2000);//等待2s

display2();//液晶屏显示工作界面

DisFlag=1;//测速显示标志置1

while(1)//无限循环

{

WDR();//看门狗喂狗指令

if(DisFlag==1)//如果测速显示标志为1

{

time=(float)tx;//整数转成浮点数

count=(float)cx;

x=count/time;x=x*30000;//数学计算

DisVal=(uint)x;

/******将测得的4位转速值存放于显示缓冲区*******/

disx[3]=(DisVal/1000)%10;

disx[2]=(DisVal/100)%10;

disx[1]=(DisVal%100)/10;

disx[0]=DisVal%10;

/**********在液晶屏上显示转速值*********/

DisplayOneChar(4,1,disx[3]+0x30);

DisplayOneChar(5,1,disx[2]+0x30);

DisplayOneChar(6,1,disx[1]+0x30);

DisplayOneChar(7,1,disx[0]+0x30);

/**此次显示完成后,相关变量初始化,准备进入下一次的测试**/

DisFlag=0;WorkTime=0;

DisTime=0;

EndFlag=0;Start=0;cnt=0;

}

else//否则如果测速显示标志为0则进行脉冲取样

{

do{

temp=PIND&0x04;WDR();JS=1;//等待下降沿后下一次测试

if(Counter>1500)

{Counter=0;JS=0;DisFlag=1;cx=0;goto END;}

}while(temp==0x04);

BeginFlag=1;Start=1;GICR=0x40;

//重开INT0中断

END:;

}

}

}

4.软件设计

程序主要分为主控程序、液晶屏驱动程序和头文件三大部分,这样设计速度快、结构完善,并且也便于整个程序的装配。程序使用ICC7.14C集成开发环境编译。限于篇幅,这里仅介绍一下主函数,完整程序可以到QQ群下载。

调试与应用

本机唯一需要调整的是红外发射电路的38kHz载频,它关系到红外测速仪的使用灵敏度及可靠性。整机检查无误后通电,用一个10kΩ的多圈可调电位器代替R6,用示波器或频率计测R7电阻的任一端,细调电位器,使频率为38.000kHz,越准确越好。调好后,取下电位器,测出其阻值,用一个同阻值的固定电阻代替电位器,焊在R6位置。整机其他部分全是数字信号处理,因此只要器件良好,就无需调整了。

红外发射管需要套一个直径5mm的黑色热塑套管,并且与红外接收头稍微隔开一点距离安装,防止发射出的红外光直接进入红外接收头。当然也不能离开太远,以免降低接收灵敏度。

相关问答

热释电人体 红外 感应模块直接能跟 单片机 相连么?

热释电人体红外感应模块输出就是数字信号,可以直接跟单片机IO管脚相连。只是如果需要中断触发,需要注意极性。热释电人体红外感应模块输出就是数字信号,可以...

人体 红外 感应模块是 单片机 吗?

不是。单片机把cpu,存储,总线等,都集中在了一块芯片上,而人体红外感觉模块不具备这些条件不是。单片机把cpu,存储,总线等,都集中在了一块芯片上,而人体红外感...

单片机 温度 传感器 红外 线接收器作用?

红外线传感器就是利用红外线的物理性质来进行测量的传感器。红外线又被叫做红外光,它包含有反射、折射、散射、干涉、吸收等性质。红外传感器的这种性质使得它...

怎么把 红外传感器 信号用 单片机 实时输入到电脑屏幕?

需要根据红外传感器的使用说明来做,一般有模拟量、数字量信号输出到单片机。单片机在用串口与电脑实时通信,需要上位机PC软件配合。这方面的开发定制我这可以...

51 单片机 怎么与 红外 测距 传感器 连起来?

与I/O连接,用软件处理数据,先把单片机搞懂,光连传感器没用。与I/O连接,用软件处理数据,先把单片机搞懂,光连传感器没用。

单片机 实现电视遥控器功能?

遥控器信号的发射,就是将某个按键所对应的控制指令和系统码(由0和1组成的序列),调制在32~56KHz范围内的载波上,然后经放大、驱动红外发射管将信号发射出去。...

红外 头是什么?

农民兄弟杂货铺,通俗易懂,不讲多余的废话。你的情况应该是手机上下载了一万能遥控的软件,有些手机有带红外头的,有些没有带,没有的就会提示的,苹果手机是...农...

求解! 红外 测温防疫检测机器人参数及原理,防疫检测机器人服...

[回答]考试场地的系统已经经历多次改进。其中一代的原理:多对高灵敏度红外线传感器安放在库边线上。每一对包括发射端和接受端。接收端的输出则接到单片机...

最简单51 单片机红外 编码获取问题?

对于最简单的51单片机红外编码获取问题,答案是可以的。原因是,在使用51单片机进行红外编码获取时,可以利用红外接收头将红外信号接收到单片机的IO口上,然后通...

8051 单片机红外 遥控原理?

通常彩电遥控信号的发射,就是将某个按键所对应的控制指令和系统码(由0和1组成的序列),调制在38KHz的载波上,然后经放大、驱动红外发射管将信号发射出去。不同...

猜你喜欢