运水小车设计.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 小车 设计
- 资源描述:
-
前 言 --------------------------------------------------- 随着生产自动化的发展需要,机器人已经越来越广泛地应用到生产自动化上,随着科学技术的发展,机器人的传感器种类也越来越多,其中红外传感器已经成为自动行走和驾驶的重要部件。 红外的典型应用领域为自主式智能导航系统,机器人要实现自动避障功能就必须要感知障碍物,感知障碍物相当给机器人一个视觉功能。智能避障是基于红外传感系统,采用红外传感器实现前方障碍物检测,并判断障碍物远近。 本设计通过小车这个载体再结合以AVR系列的Mage16单片机为核心的控制板可以达到其基本功能,再辅加由漫反射式光电开关组成的避障电路、遥控模块、电源电路、差分驱动电路和显示电路就可以完善整个设计。 目录 一、摘要: 4 二、功能介绍: 4 三、 硬件设计: 4 3.1 避障电路: 5 3.2 单片机电路: 8 3.3 显示电路: 8 3.4 电源电路: 9 3.5 电机驱动电路 10 3.6 无线遥控电路: 11 四 、程序设计 12 4.1 主程序流程图 13 4.2 主程序 13 五、系统调试 18 六、小结 19 七、参考文献 19 附录 20 系统实物图 20 一.【摘 要】: 本文提出一种智能循迹,自动运水小车的设计方法,利用红外技术检测障碍物信息,采用Mage16单片机进行实时控制,实现智能循迹,智能小车采用后轮驱动,两轮各用一个直流电机控制,避障用的传感器采用红外漫反射式传感器。 【关键词】: 避障 光电开关 差分控制 LCD 二. 功能概述 本小车可通过2262无线模块进行模式的切换,在手动模式下,通过遥控器按键的不同实现不同动作;在自动模式下,机器人通过RPR220光电管实现对线路的自动识别,智能小车采用两轮驱动,左右两边各用一个电机驱动,分别控制两个轮子的转动从而达到转向的目的。将三个红外线光电传感器分别装在车体的前方和后方,当红外传感器检测到小车左边出黑线时,主控芯片控制右轮电机停止左轮转动,车向右方转向,当传感器检测到小车右边出黑线时,主控芯片控制左轮电机停止转动,车向左方转向,当运行到终点时,主控芯片控制另一个电机将水箱翻起,降水倒出。同时通过NOKIA5510液晶显示运水时间,运水量。 三.硬件设计 如下图所示,是本次设计智能小车的电路框图。以Mage16为电路的中央处理器,来处理传感器采集来的数据,处理完毕之后以便去控制电机驱动电路来驱动电机。电源部分是为整个电路模块提供电源,以便能正常工作。 5110 实时显示 CPU 电源模块5V L298 电机驱动 红外避障 无线接收 模块 2个直流 减速电机 ATmega16L 无线发射 模块 电源 3.1. 避障电路 (1) 障碍物探测方案的选择 方案一:脉冲调制的反射式红外线发射接受器。由于采用该有交流分量的调制信号,则可大幅度减少外界干扰;另外红外线接受官的最大工作电流取决于平均电流。如果采用占空比小的调制信号,再品均电流不变的情况下,顺势电流很大(50—100mA),则大大提高了信噪比。并且其反应灵敏,外围电路也很简单。它的优点是消除了外界光线的干扰提高了灵敏度。 方案二:采用超声波传感器,如果传感器接收到反射的超声波,则通知单片机前方有障碍物,如则通知单片机可以向前行驶。市场上很多红外光电探头也都是基于这个原理。这样不但能准确完成测量,而且能避免电路的复杂性 由以上两种方案比较可知。方案二要比方案一优势大,市场上很多红外观点探头也都基于这个原理。其电路简单,工作可靠,性能比较稳定。从而避免了电路的复杂性,因此我先用方案二作为小车的监测系统。 避障电路采用漫反射式光电开关进行避障。光电开关是集发射头和接收头于一体的检测开关,其工作原理是根据发射头发出的光束,被障碍物反射,接收头据此做出判断是否有障碍物。当有光线反射回来时,输出低电平;当没有光线反射回来时,输出高电平。单片机根据接收头电平的高低做出相应控制,避免小车碰到障碍物,由于接收管输出TTL电平,有利于单片机对信号的处理。 (2)光电开关工作原理: 光电开关是通过把光强度的变化转换成电信号的变化来实现控制的。 光电开关在一般情况下,有三部分构成,它们分为:发送器、接收器和检 测电路。 避障电路如下: 避障电路功能表: 传感器 避障电路输出(上升沿动作) 待执行命令 左 中 右 左转信号(P2.1) 右转信号(P2.0) 0 0 0 √ 右转 0 0 1 √ 右转 0 1 0 √ 右转 0 1 1 √ 右转 1 0 0 √ 左转 1 0 1 √ 右转 1 1 0 √ 左转 1 1 1 前进 注解(“0”表示有障碍物; “1”表示无障碍物) 3.2 单片机电路 本设计的主控芯片选择Mage16,负责检测传感器的状态并向电机驱动电路发出动作命令。复位电路采用手动复位。 单片机电路如下: 3.3显示电路: 显示电路由NOKIA5110组成,它可进行字母,汉字,图片的显示,功能强大,使用方便,所以本系统选用NOKIA5110作为显示模块,其电路如图所示。 NOKIA 5110 3.4 电源电路 本系统所有芯片都需要+5V的工作电压,而干电池只能提供的电压为1.5V的倍数的电压,并且随着使用时间的延长,其电压会逐渐下降,则需要LM7805稳压芯片。L7805能提供300至500mA的电流,足以满足芯片供电的要求。虽然微处理器和微控制器不需要支持电路,功耗也很低,但必须要加以考虑。 电源电路拟定为: 3.5电机驱动电路 市场上用很多种类的小电压直流电动机,很方便的选择到。主要有普通电动机、和步进电动机。 方案一:采用步进电机,步进电动机的一个显著的特点就是具有快速启动和停止能力,能够达到我们所要求的标准。如果负荷不超过步进电机所能提供的动态转矩值,就能够立即是步进电机启动或反转。其转换灵敏度比较高。正转、反转控制灵活。但是步进电机的价格比较昂贵,对于我们的现状相差太远。 方案二:采用普通的直流电机。直流电机具有优良的调速特性,调速平滑、方便。调整范围广;过载能力强,能承受频繁的冲击负载,可实现频繁的无极快速启动、制动和反转。能满足各种不容的特殊运行要求。 由于普通直流电机价格适宜,更易于购买,并且电路相对简单,因此采用直流电机作为动力源 本设计采用L298电机驱动芯片为直流电机驱动,由L298芯片组装直流电机驱动模块,同时利用光耦隔离模块,实现电路保护,构成的电路结构简单,方便,可靠! 驱动电路原路框图如下: 驱动电路原路框图 LM298应用电路图: 电机驱动连接电路图 3.6无线模块: 为了能对小车进行手动控制,我们选用了简易的基于HS2272和HS2262的无线收发模块。利用2272和2262分别实现接收模块和发射模块电路设计。 无线收发模块 四. 程序设计: 本系统利用外部中断来接受遥控信号,通过接受信号的不同来改变运水模式,主程序在不断检测模式是否改变,通过不同模式实现不同动作!系统中还利用了定时器来计算运水时间,当小车到达终点时,把水倒出,同时显示运水时间! 4.1 主程序流程图: 开始 初始化设置 自动模式 自动循迹运水模式 手动控制模式 N Y 主程序流程图 4.2源程序: #include <ioM16v.h> #include <macros.h> #include "5110.h" #include "motor.h" #include "wireless.h" #include "init.h" /*------宏定义------*/ #define uchar unsigned char #define uint unsigned int uchar potemp1=0,potemp2=0,potemp3=0,potemp4=0,potemp5=0,potemp6=0,pox=1,poy=0; uint x_1,x_2; uint ms_conter=0,s_conter=0,m_conter=0,h_conter=0; uint receive=0,key=0,flot=0; uint shuiliang=0; uint x_220=255,y_220=0,z_220=0; void main(void) { init_devices(); motor_1(2); motor_2(2); motor_3(2); motor_4(2); DDRB = 0x00; PORTB = 0xFF; key=PINB&0xF0; delay_ms(15); //在这继续添加你的代码 //LCD_clear(); delay(100); while(1) { DDRB = 0x0F; //PORTB = 0xFF; key=PINB&0xF0; delay_ms(15); if(key==0B00010000) { ////前进 motor_1(2); motor_2(2); motor_3(0); motor_4(0); } else if(key==0B00100000) { //后退 motor_1(2); motor_2(2); motor_3(1); motor_4(1); } else if(key==0B01000000) { //右转 motor_1(2); motor_2(2); motor_3(1); motor_4(0); } else if(key==0B10000000) { //左转 motor_1(2); motor_2(2); motor_3(0); motor_4(1); } else if(key==0B00110000) { //左转 motor_1(0); motor_2(2); motor_3(2); motor_4(2); } else if(key==0B01010000) { //左转 motor_1(1); motor_2(2); motor_3(2); motor_4(2); } else if(key==0B01100000) { //左转 motor_2(0); motor_1(2); motor_3(2); motor_4(2); } else if(key==0B10100000) { //左转 motor_2(1); motor_1(2); motor_3(2); motor_4(2); } else if(key==0B10010000) { motor_1(2); motor_2(2); motor_3(2); motor_4(2); //break; } else if(key==0B01110000) { DDRA=0X00; PORTA=0XFF; x_1=0XF0|PINA; x_2=0X0f|PINA; while(x_1!=0xf0) { front_220(); x_1=0XF0|PINA; } motor_1(2); motor_2(2); motor_3(2); motor_4(2); delay(20); motor_1(0);//转盘转向,水箱在前 delay(280); //motor_1(1); motor_2(1);//倒水 delay(200); motor_2(0);//水箱放平 //delay(100); motor_1(1);//转盘转向,水箱在后 delay(300); x_2=0X0f|PINA; while(x_2!=0x0f) { back_220(); x_2=0X0f|PINA; } motor_1(2); motor_2(2); motor_3(2); motor_4(2); //LCD_clear(); LCD_write_chinese_string1(19,0,12,4,0,2);//欢迎使用 LCD_write_chinese_string0(0,2,12,5,0,1);//运水时间: // LCD_write_english_string(53,2,":"); LCD_write_char2(1,4,48+h_conter/10); LCD_write_char2(7,4,48+h_conter%10); LCD_write_english_string(15,4,"H"); LCD_write_char2(25,4,48+m_conter/10); LCD_write_char2(31,4,48+m_conter%10); LCD_write_english_string(39,4,"M"); //LCD_write_char2(23,4,'.'); LCD_write_char2(49,4,48+s_conter/10); LCD_write_char2(55,4,48+s_conter%10); LCD_write_english_string(64,4,"S"); /* ///PA0电压采集 receive=mega16_ad(0); receive=receive/20.1;//修正系数 LCD_write_char2(12,5,48+receive%100/10); LCD_write_char2(18,5,'.'); LCD_write_char2(24,5,48+receive%10); LCD_write_char2(32,5,'V'); ///PA1电压采集 receive=mega16_ad(1); receive=receive/20.1;//修正系数 LCD_write_char2(42,5,48+receive%100/10); LCD_write_char2(48,5,'.'); LCD_write_char2(54,5,48+receive%10); LCD_write_char2(62,5,'V'); */ // NOP(); //motor_2(0); //front_220(); delay(300); } else { motor_1(2); motor_2(2); motor_3(2); motor_4(2); } } } 五、系统调试: 我们在调试阶段遇到很多的问题,首先是光电管的调试很复杂,由于外界光线的影响,调节光电管的灵敏度是个很重要的问题;其次就是系统不稳定的问题,由于本系统总共使用了4个电机,并且在很多时候都同时运行,经常出现系统电压波动很大,对系统的稳定性带来了很大的影响,我们通过很多方法才得以解决!还有就是对电机速度的控制,速度过快容易冲出跑道,过慢则浪费时间,我们通过不断的调试才找到一个合适的速度! 六、小结: 本系统虽说不是很大,但是也涉及到了好多常用的模块,例如:无线遥控、电机控制、液晶显示、光电管循迹等;通过这一次的制作,我们都有了很大的提高,不管是硬件电路的设计还是软件程序的编写,总之一句话,以前从来没有感觉过单片机的引脚会如此紧张,这次制作我们把单片机的硬件资源都充分利用了,可见对其又得到了进一步的学习与认识,对他的掌握得到了进一步的提升!反正就是,好多东西只有自己动手做了才知道! 七、参考文献 【1】 李朝青.单片微机原理及接口技术(第三版)。 [M]北京航空航天大学出版社 【2】 阎 石. 数字电子技术基础(清华大学电子学教研组编 第五版) 高等教育出版社 【3】 康华光. 电子技术基础(第五版) 高等教育出版社 【4】 《无线电》2009年第2期 宋泽清 关于灵活避障 快速循迹 【5】 杨加国 单片机原理与应用及C51程序设计 清华大学出版社 附录: 实物图: 18展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




运水小车设计.doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/2397139.html