智能灭火小车设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1绪论
1.1
在现代化社会中需要使用大量的电器,而当电器使用不当或者是老化的时候可能引发火灾。当火灾发生后,在消防队赶来之前有一段时间,这段时间可能会造成重大的人员财产伤亡,而且在火势很大的情况下,消防队员可能会有生命危险,在一些恶劣的情况下人类不方便靠近智能汽车火灾产生于第一次火灾,为了有效地扑灭了火灾,人员伤亡和财产损失降到最低。
3
主控制模块主程序流程图如下图,主要用于小车的总体控制,组合各个子程序模块,实现小车的功能整合。计算机将最终通过小车驱动程序控制小车,实现小车的循迹和避障,从而实现本设计的要求。
图主程序流程图
3.1
红外循迹模块子程序主要采集外部电路红外对管的信号进行编译处理,以便判断小车的下一步动作。流程图如下图所示。
当红外对管检测到黑线时所在红外对管输出高电平,外围电路红外对管状态进行信号编码后对应表格如表4.1,将信号进行处理编码之后,判断信号类型,当信号为:1000,1100,1110,0100时单片机送出左转信号;当信号为:0001,0011,0111,0010时单片机送出右转信号;当信号为:0111,1111时单片机送出直走信号;当信号为:0000时停止。而信号0101,1010,1101,1011,1001为无效信号。
红外避障模块外围电路信息处理编码表
3.3
电机控制子程序等待单片机发送指令,接受到指令后,判断指令类型,从而控制驱动电机电路的输出,控制小车的运动状态。流程图如图4.5所示。
当接收指令0x00:无数据,无PWM波,无方向信号。当接收指令0x01:小车前进,两个电机驱动器给予相同的PWM波,相同的方向信号。当接收指令0x02:小车后退,在前进的基础上改变方向信号。当接收指令0x03:小车停止,无PWM波,无方向信号。当接收指令0x04:结合循迹模块的信号向左微转或左转。当接收指令0x05:结合循迹模块的信号向右微转或右转。
此子程序通过单片外避障传感器的信息,当前方无15cm内障碍物时小车保持前进状态,若有障碍物则可通过小车前方及左右方的红外避障传感器,获得障碍物的具体情况进行信息处理编码,编码方式如下表4.2。
将外部信息进行编码后,通过对信号的判断,控制小车的移动方向:探测结果111,表明前方15cm内无障碍物单片机送出“前进”指令,小车保持前进状态;探测结果000,表明前方及左右两边15cm内均有障碍物,单片机送出“停止”指令;探测结果若为101,则前方15cm内有障碍物左右两边都无障碍物,单片机送出“右转”指令(左右均无障碍物默认右转);探测结果001,表明前方及左边15cm内有障碍物,单片机送出“右转”指令;探测结果100,表明前方及右边15cm内有障碍物,单片机送出“左转”指令;探测结果110,表明右边15cm内有障碍物,单片机送出“左转”指令;探测结果011,表明左边15cm内有障碍物,单片机送出“右转”指令;探测结果010,表明左边及右边15cm内有障碍物,单片机送出“停止”指令。
{
shaomiao=6;
}
}
if(hou_C==0)
{
DelayMS(10);
if(hou_C==0)
{
shaomiao=7;
}
}
}
/*******主程序********/
X
停止
1
0
0
制动
1
0
1
正转
1
1
0
反转
1
1
1
制动
若要对小车进行转向控制,则需要对ENA和ENB输入不同的PWM信号,来实现直流电机的差动转速,从而实现小车的转弯。本设计中有微调转弯和转弯两种转弯状态,微调转弯是其中一个PWM信号不变,另一个的占空比减少一半。
2.
选用常见的智能小车模型,小车总长20cm,宽140cm,长25cm.车轮直径6cm。
红外避障传感器具有很强的抗背景光干扰能力外,可在阳光下工作,这是与信号发送和接收的要求一致。红外避障传感器可广泛应用于管道件,智能车辆和机器人的避障等众多场合所以,灭火小车最终使用红外避障传感器。
E18-D80NK
E18-D80NK原理图
E18-D80NK电气特性如表3.1。
表3.1 E18-D80NK电气特性
sbit IN2=P3^1;
sbit IN3=P3^2;
sbit IN4=P3^3;
sbit ENA=P3^4;
sbit ENB=P3^5;
sbit RS=P3^6;
sbit E=P3^7;
void DelayMS(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=120;y>0;y--);
AT89C51的主要的特性
•4K字节可编程FLASH存储器
•与MCS-51 兼容
•数据保留时间:10年
•寿命:1000写/擦循环
三级程序存储器锁定
•全静态工作:0Hz-24MHz
•32可编程I/O线
•128×8位内部RAM
•5个中断源
•可编程串行通道
•低功耗的闲置和掉电模式
该系统采用AT89C51单片机为中央处理器。
if(start_stop==0)
{
DelayMS(10);
if(start_stop==0)
{
shaomiao=1;
}
}
if(s_fire==0)
{
DelayMS(10);
if(s_fire==0)
{
shaomiao=2;
}
}
if(put_fire==0)
{
DelayMS(10);
if(put_fire==0)
/*uchar code table_m[]="Mea:";
uchar code table_s[]="Set:";
uchar code table_qd[]="<ON> ";
uchar code table_tz[]="<OFF>";
uchar code table_bengsu[]="speed:";
小车右转
2.3电机驱动方案选择
方案1:继电器控制
电动机的开或关由继电器进行控制,小车的速度由开关的切换进行调整。此方案的优
方案2:使用L298驱动芯片
L298芯片的电气特性
电压
电流
功率
L298的主要特点
工作电压高
输出电流大
额定功率25W
46V
L298的结构与功能
功能
性负载
端
在out1、out2,out3、out4之间分别接上2个直流电机
方案2:用RPR220型光电对管
该RPR220反射式光电探测器的发射机和接收机的集成,砷化镓红外发光二极管的发射管,硅平面晶体管的高灵敏度接收机。
其具有如下特点:
2、结构紧凑所以体积小。
4、工作性能稳定而且电路结构简单。
方案1容易受到光照影响选择RP所以选择R220型光电对管。
RPR220实物图
循迹模块电路图如下图所示
L298引脚的功能
Pin1和Pin15
Enable
input1~input4输入控制电位
L298N引脚图
方案1:采用步进电机
步进电机的优点
步进电机的缺点
所以步进电机不适合。
方案2:采用直流减速电机
经过分析,步进电机不适用于汽车设计的要求,所以用直流电机车驱动电机电路
ENA
IN1
IN2
直流电机状态
0
X
{
shaomiao=3;
}
}
if(left_C==0)
{
DelayMS(10);
if(left_C==0)
{
shaomiao=4;
}
}
if(right_C==0)
{
DelayMS(10);
if(right_C==0)
{
shaomiao=5;
}
}
if(head_C==0)
{
DelayMS(10);
if(head_C==0)
为了保证小车沿着黑色线驱动,使用四个探测器平行排列的探测器的位置,如图所示。
图3循迹模块电路图
检测器位置
避障方案设计
方案1:使用超声波探测器
超声波探测器的优点
超声波探测器的缺点
精度不够好,成本高。同时,超声检测有一个很大的弊端,是一个几厘米至几十厘米的盲点,这辆车的避障是一个很大的不便
方案2:使用红外避障传感器
lcd_write_com(0x06);
lcd_write_com(0x01);
}
/************三位数显式******************/
/*void lcd_sanweixianshi(uchar wz ,uchar xs)
{
lcd_write_com(wz);
lcd_write_dat(xs/100+0x30);
}Biblioteka Baidu
/*************液晶显示函数****************/
/****液晶延时*****/
/* void lcd_delay(uint ms)
{
uchar i;
while(ms--)
{
for(i=0;i<20;i++);
}
}
*/
/************液晶写命令函数***************/
从运行情况上看,循迹效果符合要求,而避障效果不太理想。
能够使我熟悉以前的知识。在本次论文中有很多不足之处,还需要改正。
附
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uint shaomiao ;
bit CLK;
循迹模块方案设计
方案1:使用光敏电阻来做光敏探测器
光敏电阻随环境光线的变化而变化。当光照在上面有白色的线,反射光是比较强的,当光照射在黑色的线,反射光会比较弱。因此,光敏电阻以白色和黑色的线,电阻的变化。将比较器输出高电平后,光敏电阻值的变化。但探测器受光照影响,但我们不能保证光已经在一个稳定的,所以这个方案不能稳定工作。
1.
这次研究的课题主要有如下几点
的内容
MCU控制模块
外部中断程序
2系统方案设计
2.1总体设计框图
MCU是本系统的控制核心,负责处理由红外对管循迹模块,红外避障模块得到的电平信号。最后单片机把信号处理的结果传递给小车电机模块,让小车做出正确的反应。
系统结构框图如下图所示。
总体设计框
2.2核心控制单元的选择
红外循迹模块子程序流程图
111
000
101
001
100
110
011
010
3.2
红外避障模块子程序流程图如下图所示。子程序利用红外线光电传感器检测前方障碍物(通过红外避障模块的电位器可以调节红外传感器的检测距离)在定距(15cm)之内便视为出现阻碍行动的障碍物,反之视为无阻碍行动的障碍物。
图4红外避障程序流程图
*/
sbit start_stop=P2^0;
sbit s_fire=P2^1;
sbit put_fire=P2^2;
sbit left_C=P2^3;
sbit right_C=P2^4;
sbit head_C=P2^5;
sbit hou_C=P2^6;
sbit mie=P2^7;
sbit IN1=P3^0;
lcd_write_com(wz+1);
lcd_write_dat(((xs/10)%10)+0x30);
lcd_write_com(wz+2);
lcd_write_dat(xs%10+0x30);
}
/************键盘扫描函数***************/
void keyscan()
{
Tab . 3.1 Electrical Characteristics
红色
绿色
黄色
工作电压
工作电流
驱动电流
感应距离
VCC
GND
OUT
5VDC
10-15mA
100mA
3-80CM
避障模块采用三只红外避障传感器,安装于小车两侧及下中央,可以检测两侧和正前方是否有障碍,检测后将信号送入单片机,单片机对信号进行处理并发出相应的信号驱动小车电机,使小车躲避障碍。单片机的PB0、PB1、PB2端口分别接左中右三个传感器的硬件电路。
图电机控制程序流程图
结
本智能小车系统实现了以下功能:
(1)能够按照程序沿预设轨道行驶。小车在行驶过程中不仅能够实现直道的前进还能实现弧形轨道的前进。若有偏差,能够自动更正,返回原来预设的轨道上来。
(2)当小车检测到前方有障碍物时,能自动向右转弯行驶,避开前方障碍。探测到左右方向有障碍时,也能自动的避开障碍行驶。
/*void lcd_write_com(uchar com)
{
lcdrs=0;
P0=com;
lcd_delay(5);
lcden=1;
lcd_delay(5);
lcden=0;
}
*/
/************液晶写数据函数****************/
/* void lcd_write_dat(uchar dat)
{
lcdrs=1;
P0=dat;
lcd_delay(5);
lcden=1;
lcd_delay(5);
lcden=0;
}
/************液晶初始化函数***************/
/* void lcd_init (void)
{
lcd_write_com(0x38);
lcd_write_com(0x0c);