毕设帮助、开题指导、技术解答(有偿)见文末。
目录
摘要
一、硬件方案
二、设计功能
三、实物图
四、原理图
五、PCB图
六、Protues仿真
七、程序
部分代码
八、资料包括
摘要
伴随着电气技术的发展,电气控制控制技术已经成熟,针对电子自动门进行研究。基于8051内核的单片机89c51作为控制核心,热电释红红外传感器作为检测信号源,以伺服电机为动力驱动,研究不同的机械传动方式,红外通信技术自动模式和人工模式多模式控制。实现自动模式当有人靠近门的时候开启,离开的时候关闭,及手动模式,应用电自动门的多领域应用。本课题以C51系列的STC89c52RC为控制核心,热电释红外传感器模块检测信息,设置系统键盘模块,红外通信模块,以ULN2003为驱动器的伺服控制系用组成电自动门系统总成,由无线遥控或系统键盘选择工作模式综合实现所有功能。
关键词:单片机,红外,人体感应
一、硬件方案
单片机的红外遥控人体感应自动门控制系统设计的实现主要有电源5V供电、单片机最小系统、红外感应遥控模块,红外一体接收头,按键电路,步进电机驱动电路,指示灯电路组成。
二、设计功能
1、如果红外模拟为开启状态, 当有人过来时门自动打,把门打开停止5秒左右,如果没人门就会自动关上,关门过程中 遇到障碍物会重新打开门
2 、红外遥控开关
3 、自动感应到人开关 也可以手动控制开关。
4、 可以用红外遥控器控制
三、实物图
四、原理图
五、PCB图
六、Protues仿真
七、程序
部分代码
#include "reg51.h" //头文件
#include "intrins.h"
#define uchar unsigned char //宏定义
#define uint unsigned int
uchar code zz[]={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09}; //步进电机正转数组表
uchar code fz[]={0x09,0x01,0x03,0x02,0x06,0x04,0x0c,0x08}; //步进电机反转数组表
sbit led_1=P0^0; //指示灯控制IO口
sbit led_2=P0^1;
sbit led_3=P0^2;
sbit led_4=P0^3;
sbit key_1=P3^5; //按键控制IO口
sbit key_2=P3^6;
sbit key_3=P3^7;
sbit people_1=P3^1; //红外热释传感器控制IO口
sbit people_2=P3^3;
uint xh = 0; //步进电机转动循环变量
uchar ms,sec; //50ms变量,秒变量
bit mode = 1,open; // 模式标志位默认为手动模式, 状态标志位
//下面这些变量用于红外遥控的解析,关于红外遥控,推荐大家去看下 51单片机天狼星教程里面红外遥控的章节,很详细,优酷上直接搜索即可
uchar irbyte[4]; //解码后红外32位数据
uchar irtime,irflag,bitnum,irdateok;// 定时器1溢出计数变量,转化标志位,下标变量,信号接收完成标志位
uchar irdate[33]; //红外信号
/********************************************************************
* 名称 : delay()
* 功能 : 小延时。
* 输入 : 无
* 输出 : 无
***********************************************************************/
void delay(uint T)
{
while(T--);
}
/********************************************************************
* 名称 : zhengzhuan()
* 功能 : 步进电机正转函数
* 输入 : 无
* 输出 : 无
***********************************************************************/
void zhengzhuan()
{
uchar i;
for(i=0;i<8;i++)
{
P2=zz[i];
delay(150);
// if(!key2F) break;
}
}
/********************************************************************
* 名称 : fanzhuan()
* 功能 : 步进电机反转函数
* 输入 : 无
* 输出 : 无
***********************************************************************/
void fanzhuan()
{
uchar i;
for(i=0;i<8;i++) //8拍数据轮流输送
{
P2=fz[i];
delay(150);
// if(!key3F) break;
}
}
八、资料包括
文章来源:https://www.toymoban.com/news/detail-772193.html
需要完整的资料可以点击下面的名片,找我要资源压缩包的百度网盘下载地址及提取码。 文章来源地址https://www.toymoban.com/news/detail-772193.html
到了这里,关于63、基于51单片机红外遥控人体感应自动门控制系统设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!