标题 | 小型自动灭火机器人 |
范文 | 吴秉慧++徐嘉欢++高超禹++朱斐 摘要:随着现代化建设进程的加速发展,城市化进程也在快速发展,但是也带来了安全隐患,大量的建筑在使用过程中稍不注意就会引发火灾。本文将以智能小车为基础,在智能小车基础上研究自动灭火机器人功能,主要目标是建立一个自动的探索火源并进行灭火的自动灭火的机器人系统,使安装的传感器能够检测到障碍物,从而自动避障,然后进行火源定位灭火。根据设计要求,确定采用目前流行的开源硬件产品Arduino做控制板,加装舵机、超声波等感应器,由Arduino进行处理,实现小车避障,对智能小车的控制与开发进行了有效的尝试。以后还要对小车进行自动灭火。 关键词:Arduino;超声波感应器;舵机;直流电机驱动板;温度传感器 中图分类号:TP202 文献标识码:A DOI: 10.3969/j.issn.1003-6970.2015.11.015 0 引言 机器人技术是综合了计算机、信息传感技术、控制技术、机械制造等多个学科形成的一门高新技术学科,在当代的研究领域十分活跃。如今,机器人的研究应用情况,标志着一个国家的自动化发展水平。近年来,由于许多高楼、仓库、地下建筑等建筑材料的特殊性,极易发生火灾,且一旦发生火灾,给参与救火的消防人员的人身安全带来极大的威胁。智能灭火机器人就给消防人员在参与救援带来了极大的帮助,尤其是在危险性极大以及消防人员不易接近的地方,智能灭火机器人就起到了很大的作用。 超声波作为智能车避障的一种重要手段,以其避障实现方便,计算简单,易于做到实时控制,测量精度也能达到实用的要求,在未来汽车智能化进程中必将得到广泛应用。我国作为一个世界大国,在高科技领域也必须占据一席之地,未来汽车的智能化是汽车产业发展必然的,在这种情况下研究超声波在智能车避障上的应用具有深远意义,这将对我国未来智能汽车的研究在世界高科技领域占据领先地位具有重要作用。 1 总体设计 智能小车采用四轮驱动,每个轮子配备一个电机驱动。将超声波感应器和舵机装在车头部分。舵机旋转0-180度,默认前方是90度。当超声波感应器探测到前方障碍物,控制4个车轮做出相应的动作。系统主要包括5个模块:单片机控制模块、舵机模块、电源模块、避障模块、电机驱动模块。系统功能如图1所示。 1.1 主控模块 这里采用Arduino单片机来做主控模块,其核心是ATmega328P芯片。此单片机主要负责传感器的状态并控制4轮的直流电机和舵机,同时完成对4轮电机的PWM调速任务以及舵机的转动角度。在所编写的程序基础上,给予电机与舵机控制信号,根据道路情况自动调整转速与方向。 Arduino是一个能够用来感应和控制现实物理世界的一套工具。它由一个基于单片机并且开放源码的硬件平台,和一套为Arduino板编写程序的开发环境组成。Arduino可以用来开发交互产品,比如它可以读取大量的开关和传感器信号,并且可以控制各式各样的电灯、电机和其他物理设备。Arduino项目可以是单独的,也可以在运行时和你电脑中运行的程序(例如:Flash,Processing)进行通讯。Arduino板你可以选择自己去手动组装或是购买已经组装好的;Arduino开源的IDE可以免费下载得到。Arduino的编程语言就像似在对一个类似于物理的计算平台进行相应的连线,它基于处理多媒体的编程环境。 1.2 驱动模块 智能车前进的动力是通过直流电机来驱动的。这里直接用单片机的PWM驱动直流电机,电流太小。所以采用L293D扩展板驱动模块。通过单片机给予L293D芯片PWM信号来控制小车的速度,起步,停止。PWM控制电机速度是通过:高速地开关三极管实现电机控制占空比(打开时间:关闭时间)决定输出给电机的能量份额 L293D是一款常用的直流电机驱动模块,采用293D芯片小电流直流电机驱动芯片。管脚被做成了Arduino兼容的,也方便了爱好者快速的基于Arduino的开发。 2个SV伺服电机端口联接到Arduino的高解析高精度的定时器。 多达4个双向DC电机各自带有8位速度选择(大约0.5%的解析度) 多达2个步进电机(单极或双极)单线圈,双线圈,交错或微步。 4路H-桥:L293D芯片每路桥提供_06A(峰值1.2A)电流并且带有热断电保护,4.5V to 36V。 端口定义: 数字端口11:直流电机#1/步进#l(PWM) 数字端口3:直流电机#2/步进#1(PWM) 数字端口5:直流电机#3/步进#2(PWM) 数字端口6:直流电机#4/步进#2(PWM) 当使用任何直流或者步进电机时数字端口4,7,8和12被占用,通过74HC595(串转并)锁存器来控制直流或者步进电机。 数字端口9:舵机控制#1 数字端口10:舵机控制#2 L293D驱动芯片管脚介绍,如图4。 速度控制,使用Arduino模拟输出引脚,将产生PWM信号连接到L293D的使能引脚。 方向控制,使用Arduino的数字输出引脚,将产生的数字信号连接到L293D的A/B两个方向引脚。 正转:A为高,B为低反转:A为低,B为高制动:AB同时为高或者低 1.3 L293D控制板以及库安装使用方法 这里使用MSMotorShield库进行控制,安装库文件方法:将库文件解压到Arduino安装目的的libraries目录下。例如:D:\Program Files\arduino-0022\libraries然后重新打开Arduino IDE就可以使用了。 首先include 2 舵机模块 舵机(英文叫Servo):它由直流电机、减速齿轮组、传感器和控制电路组成的一套自动控制系统。通过发送信号,指定输出轴旋转角度。本设计中使用辉创公司的SG90。 型号:SG90 尺寸:21.5mmX11.8mmX22.7mm 重量:9克 无负载速度:0.12秒/60度(4.8V) 堵转扭矩:1.2-1.4公斤,厘米(4.8V) 使用温度:-30~+60摄氏度 死区设定:7微秒 工作电压:4.8V-6V 舵机只有3个PIN正极,负极,和信号。三个线分别用不同颜色, 橙红褐橙——信号 红——正极 褐——负极 2.1 舵机原理以及构造 下图是一个普通模拟舵机的分解图,其组成部分主要有齿轮组、电机、电位器、电机控制板、壳体这几大部分。详细如图6。 电机控制板主要是用来驱动电机和接受电位器反馈回来的信息。电机是动力的来源。电位器这里的作用主要是通过其旋转后产生的电阻的变化,把信号发送回电机控制板,使其判断输出轴角度是否输出正确。齿轮组的作用主要是力量的放大,使小功率电机产生大扭矩。下图是舵机工作原理图,如图7。 2.2 超声波模块及工作原理介绍 超声波传感器(Ultrasonic Sensor),它是测距常用模块。普通的超声波传感器测距范围大约是2cm到3-5m。传感器模块的工作原理大致是这样的,如 模块收到10us以上的高电平脉冲触发信号;模块自动发送8个40KHz的方波并检测回波;若有回波信号返回,通过10输出一高电平,高电平持续的时间就是超声波从发射到返回的时间.测试距离=(高电平时间*声速(340m/s))/2。具体时序如图9。 常见的超声波传感器有3脚的,4脚和5脚的:3脚的比如Parallax的PING))),三脚分别是5v电源脚(5V),I/O信号端(SIG),地端(GND)。4脚的比如HC-SR04,四个脚分别是5v电源脚(Vcc),触发控制端(Trig),接收端(Echo),地端(GND)。 5脚的比4脚的多出一个OUT脚,是防盗模块时的开关量输出脚,测距模块不用此脚。 我们这里采用HC-SR04四角的模块。 2.3 电源模块 电源模块为系统其他各个模块提供可靠的工作电压,设计中,除了需要考虑电压范围和电流容量等。基本参数之外,还要在电源转换效率、降低噪声、防止干扰等方面进行优化。可靠的电源方案是整个硬件电路稳定可靠运行的基础。7.2V 2000mAh Ni-Cd蓄电池,其中7.2V供驱动电机使用,6V供舵机使用,5V供控制芯片和速度传感器使用,3V供超声波感器使用。各种所需电源均从7.2V经电源转换芯片转换得到。系统各模块电路结构如图13所示。 3 模块集成调试 将超声波模块,舵机模块结合起来。先从Arduino开发板测试,成功后将对应pin移植到L293D驱动板上。以上硬件部分已经完全桥接并测试成功,如系统框图14。 自动灭火机器人模型的运行效果如图15所示。
|
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。