智能循迹避障小车控制系统设计最终版讲解_第1页
智能循迹避障小车控制系统设计最终版讲解_第2页
智能循迹避障小车控制系统设计最终版讲解_第3页
智能循迹避障小车控制系统设计最终版讲解_第4页
智能循迹避障小车控制系统设计最终版讲解_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、上海大学20162017学年秋季学期研究生课程考试研究生姓名肖青峰、徐鹏、付高峰学号:16721678论文评语:成绩:任课教师:沈林勇评阅日期:课程名称:微机接口技术与数字控制课程编号:09Z077005论文题目:基于STC89C52片机自动避障循迹小车控制系统的设计基于STC89C52单片机自动避障循迹小车控制系统设计肖青峰、徐鹏、付高峰上海大学 机电工程与自动化学院,上海 200072摘要:本设计是基于STC89C5单片机的自动循迹避障小车的控制系统设计。利用红外对管检测黑线与障碍 物,并以STC89C5单片机为控制芯片控制电动小汽车的速度及转向,从而实现自动循迹避障的功能。其中 小车驱动

2、由L298N驱动电路完成,速度由单片机输出的PW波控制。关键词:循迹避障小车;STC89C52单片机;红外对管;pwm调速-21 -1设计目标和任务制定随着社会水平提高与电子商务的快速发展,大型化集成化商品多元化的仓储集散中心应运而生。这些仓库通常面积巨大,(有的可达上万平方米,)并且物品种类繁多,仓储流量大,可是当前大多数仓储中心 依旧采用传统的人工管理,工人管理工作繁琐且工作效率低下,综上所述,现代仓储业正面临着发展瓶颈,制约着仓储行业的进一步发展。如果有一种智能仓储,使得我们能够在实际的物流活动中提高仓储的效率,减少仓储的人力资源成本和仓库的直接成本,解决绝对人力不能满足大型物流中心运作

3、的情况,那么我们 的仓储行业又能向前迈进一个新阶。因此,基于上诉当前仓管配货工作的任务繁忙,减小仓管员工作量,提高仓储管理工作效率,我们决定制作一智能避障循迹小车,用于仓库不同货架间货物的自动配送。我们 的小车能实现循迹移动,在不同工作点之间穿梭。借助我们的小车,仓管员只需轻松输入目标代码,就可 以实现将货物自动送达目标货架或者将不同货架的货物收集到配送点。同时为了避免小车在行进过程中撞 击到人员、货物或者货架等障碍物,我们的小车具有自动避障和自动停车功能。2设计方案的拟定2.1整体系统设计该整个系统由控制模块、光电传感器检测模块、电源模块、电机及驱动模块等子模块组成。如框图所示:2.2控制模

4、块设计针对本设计特点一一多开关量输入的复杂程序控制系统,需要擅长处理多开关量的标准单片机,而不能用精简I/O 口和程序存储器的小体积单片机,D/A、A/D功能也不必选用。根据这些分析,我选定了STC89C52单片机作为本设计的主控装置,52单片机具有功能强大的位操作指令,I/O 口均可按位寻址,并具有如下性能优点:(1)微处理器 该单片机中有一个 8位的微处理器,与通用的微处理器基本相同,同 样包括了运算器和控制器两大部分,只是增加了面向控制的处理功能,不仅可处理数据,还可以进行位变 量的处理。(2)数据存储器片内为128个字节,片外最多可外扩至64k字节,用来存储程序在运行期间的工作变量、运

5、算的中间结果、数据暂存和缓冲、标志位等,所以称为数据存储器。(3)程序存储器 由于受集成度限制,片内只读存储器一般容量较小,如果片内的只读存储器的容量不够,则需用扩展片外的 只读存储器,片外最多可外扩至64k字节。(4)中断系统 具有5个中断源,2级中断优先权。(5)定时器/计数器 片内有2个16位的定时器/计数器,具有四种工作方式。(6)串行口 1个全双工的串行口,具有四种工作方式。可用来进行串行通讯,扩展并行I/O 口,甚至与多个单片机相连构成多机系统,从而使单片机的功能更强且应用更广。(7) P0 口、P1 口、P2 口、P3 口为4个并行8位I/O 口。(8) 特殊功能寄存器 共有21

6、个,用于对片内的个功能的部件进行管理、控制、监视。实际上是一些控制寄存器和 状态寄存器,是一个具有特殊功能的 RAM区。由上可见,STC89C52单片机的硬件结构具有功能部件种类 全,功能强等特点。特别值得一提的是该单片机 CPU中的位处理器,它实际上是一个完整的1位微计算机,这个一位微计算机有自己的CPU位寄存器、I/O 口和指令集。1位机在开关决策、逻辑电路仿真、过程控制方面非常有效;而 8位机在数据采集,运算处理方面有明显的长处。对于本设计该单片机绰绰有余,更 可贵的是52单片机价格非常低廉。STC89C52引 脚图124115167311112131415161?2994020Pl 0

7、JT2PO.tVADOP1.1JT2EXP0.17AD1P1 2P0.2/AD2P1 3P0.3?AD3P1 4P0.4?AD4P1 5P0.5;ADiP1 6P0.67AD6P1 7P0.77AD7P3 0/RXDP2.7/A15P3 IfTXDP2.6/A14P3 2/INT0P2.5/A13P3.3/INT1P2 4/A12P3 47T0P2.3/A11P3 VT1P2.2/A10P3 6/WRP2.1/A9P3.7/WP2.0ZA8PSENRSTALEVCCXT AL IGHDXTAL2STC39C52393S22353422322S27至互23222?1S2.3光电传感检测模块循迹方

8、案设计:方案一:采用摄像头循迹法:利用摄像头对赛道提取信息,分有数字式和模拟式。方案二:红外对管循迹法:禾U用黑白色对红外线的吸收作用不同,其由发射管和接收管配对组成,发射管发射出红外线,当发射到黑色轨道时,被黑色轨道所吸收,当发射到白色跑道外时,会发射回来,接收管接收到光线信号,产生一电压信号给单片机,从而实现对轨迹信息的读取。方案三:激光管循迹法:其循迹原理与红外对管相同,不同的是其测距比较远。综上所述,又考虑到成本的原因,本次设计采用红外对管循迹法。采用脉冲调制的反射式红外发射接收器。由于采用带有交流分量的调制信号,则可大幅度减少外界的干扰;此外红外发射接收管的工作电流取决于平均电流,如

9、果采用占空比小的调制信号, 在平均电流不变的情况下,瞬时电流很大(50100mA)(ST-188允许的最大输入电流为 50mA ,则大大提高了信噪比。避障方案设计:方案一:红外线避障。方案二:超声波避障。本次设计本打算利用两种方案混合使用,但是由于后期制作过程中,超声波模块损坏,只能使用红外线避障。其也是由发射管和接收管组成,工作原理与循迹的相同,发射管发出红外线,当遇到障碍物时就会反射回来,接收管接收到反射的信号就会产生一电压信号给单片机,从而实现对障碍物的检测。2外變趣逋更调电阻LED状态指示灯44mm16mm.原毂红夕卜接枚管红外线传感器模块实物图2.4 电源模块电源模块,用9V的锌电源

10、给前、后轮电机供电,然后使用7805稳压管来把高电压稳成5V分别给单片机和电机驱动芯片供电。7805电源模块2.4 电机及电机驱动模块电机方案的选择:方案一:采用直流电机,优点在于硬件电路设计简单。当外加额定直流电压时,转速几乎相等,调速 性能较好,且性价比高。对于小车的行驶,能够很好的控制。方案二:采用步进电机,步进电机可以实现精确的转角输出,只要施加合适的脉冲序列,电机可以按 照人们的预定的速度或方向进行连续的转动,便于控速,但是软件程序的编写较直流电机稍显复杂。表2.1电机性能对比表对比项直流电机步进电机调速性能较好较差位置控制精度较差好控制难易程度简单较难价格低中综合考虑,本智能车决定

11、采用直流电机作为只能车的动力电机。电机采用直流减速电机,直流减速电机转动力矩大,体积小,重量轻,装配简单,使用方便。由于其内部由高速电动机提供原始动力,带动变速(减速)齿轮组,可以产生较大扭力。可选用减速比为1:74 的直流电机,减速后电机的转速为 100r/min。若车轮直径为6cm,则小车的最大速度可以达到0.314m/s能够较好的满足系统的要求。下图为电机的实物图直流减速电机电机驱动方案的选择 方案一:采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调整此方案的优点是电路较为简单,缺点是继电器的响应时间慢,易损坏,寿命较短,可靠性不高。万案一:采用电阻网络或数字电位器调

12、节电动机的分压,从而达到分压的目的。 但电阻网络只能实现有级调速, 而数字电阻的元器件价格比较昂贵。更主要的问题在于一般的电动机电阻很小,但电流很大,分压不仅回 降低效率,而且实现很困难。采用功率三极管作为功率放大器的输出控制直流电机。线性型驱动的电路结构和原理简单,加速能力强,采用由达林顿管组成的H型桥式电路(如图2.1)。用单片机控制达林顿管使之工作在占空比可调的开关状态下,精确调整电动机转速。这种电路由于工作在管子的饱和截止模式下,效率非常高,H型桥式电路保证了简单的实现转速和方向的控制,电子管的开关速度很快,稳定性也极强,是一种广泛采用的PWM调速技术。现市面上有很多此种芯片,我选用了

13、L293专用驱动器。所用芯片 L293属于H桥集成电路,其输出电流为1000mA最高电流2A,最高工作电压36V,可以驱动感性负载,特别是其输入端可以与单片机 直接相联,从而很方便地受单片机控制。当驱动小型直流电机时,可以直接控制两路电机,并可以实现电 机正转与反转,实现此功能只需改变输入端的逻辑电平。本模块具有体积小,控制方便的特点。采用此模 块定会使您的电机控制自如,应对小车题目轻松自如。L293D电机驱动模块电机调速系统的设计:方案一:串电阻调速系统。方案二:静止可控整流器。简称V-M系统。方案三:脉宽调速系统。旋转变流系统由交流发电机拖动直流电动机实现变流,由发电机给需要调速的直流电动

14、机供电,调节 发电机的励磁电流即可改变其输出电压,从而调节电动机的转速。改变励磁电流的方向则输出电压的极性 和电动机的转向都随着改变,所以G-M系统的可逆运行是很容易实现的。该系统需要旋转变流机组,至少包含两台与调速电动机容量相当的旋转电机,还要一台励磁发电机,设备多、体积大、费用高、效率低、 维护不方便等缺点。且技术落后,因此搁置不用。V-M 系统是当今直流调速系统的主要形式。它可以是单相、三相或更多相数,半波、全波、半控、全 控等类型,可实现平滑调速。V-M系统的缺点是晶闸管的单向导电性,它不允许电流反向,给系统的可逆运行造成困难。它的另一个缺点是运行条件要求高,维护运行麻烦。最后,当系统

15、处于低速运行时,系统 的功率因数很低,并产生较大的谐波电流危害附近的用电设备。PWM调速系统:其实现方式有两种, 一是采用晶闸管的直流斩波器基本原理,将晶闸管处在开关状态,当晶闸管被触发导通时,电源电压加到电机上,当晶闸管关断时,直流电源与电机断开,电动机经二极管 续流,两端电压接近于零,脉冲周期不变,只改变晶闸管的导通时间,即通过改变脉冲宽度来进行直流调 速;二是利用软件方式实现,采用两个定时器,其中一个用来控制脉冲频率,另一个控制占空比,这种实 现方式快捷且有效。与V-M系统相比,PW碉速系统有下列优点:(1)由于PW碉速系统的开关频率较高,仅靠电枢电感的滤波作用就可以获得脉动很小的直流电

16、流,电枢电流容易连续,系统的低速运行平稳,调速范围较宽,可达1: 10000左右。由于电流波形比 V-M系统好,在相同的平均电流下,电动机的损耗和发热都比较小。(2)同样由于开关频率高,若与快速响应的电机相配合,系统可以获得很宽的频带,因此快速响应性能好,动态抗扰能力强。(3)由于电力电子器件只工作在开关状态,主电路损耗较小,装置效率较高。根据以上综合比较,以及本设计中受控电机的容量和直流电机调速的发展方向,本设计采用了采用了程序的方法实现PWM脉冲宽度调试。3硬件系统的设计3.1 总体设计智能小车采用前轮驱动,前轮左右两边各用一个电机驱动,调制前面两个轮子的转速起停从而达到控 制转向的目的,

17、后轮是万象轮,起支撑的作用。将循迹光电对管分别装在车体下的左右。当车身下左边的 传感器检测到黑线时,主控芯片控制左轮电机停止,车向左修正,当车身下右边传感器检测到黑线时,主 控芯片控制右轮电机停止,车向右修正。避障的原理和循线一样,在车身右边装一个光电对管,当其检测到障碍物时, 主控芯片给出信号报警并控制车子倒退,转向,从而避开障碍物。表3.1元件清单元件数量元件数量元件数量直流电机2只电阻若干集成电路芯 片若干单片机1块二极管若干电容若干红外对管3只蜂鸣器1只电位器若干12M晶振1只杜邦线若干玩具小车1个排针若干3.2光电传感检测模块采用四路红外对管传感器,其中两路置于小车中间,用于循迹检测

18、,另外两路用于避障信号检测,置 于小车两侧。其工作原理如下:小车循迹原理是小车在画有黑线的白纸“路面”上行驶,由于黑线和白纸对光线的反射系数不同,可根据接收到的反射光的强弱来判断“道路”一黑线。笔者在该模块中利用了 简单、应用也比较普遍的检测方法一一红外探测法。红外探测法,即利用红外线在不同颜色的物理表面具 有不同的反射性质的特点。在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色地面时发生漫 发射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,则小车上的接收管接收不到信 号,再通过LM324作比较器来采集高低电平,从而实现信号的检测。避障亦是此原理。电路图如图,我们将其接

19、于单片机P3 口。iMDI GND寸匕屮Ct?XIN3N4C5104匚FK一 Em tdLnlol丄vcc4路传感器模块3.3电源模块电路设计采用7805稳压模块为系统提供5V的稳定电压,并设计有电源指示二极管,用以提示电源是否供电正常。电源指示g”ii-gndU7 78W电梓幵去 ( CGNDVCCgD JXCADVCCJ4AGNDVCCJD7囱GND/aJ2 J17灯MU1 470uF220uFGND电源供电系统3.4电机驱动模块设计电机驱动模块采用专用驱动器L293D,所用芯片L293属于H桥集成电路,其输出电流为 1000mA最高电流2A,最高工作电压36V,可以驱动感性负载,特别是其

20、输入端可以与单片机直接相联,从而很方便地受单片机控制。其工作电路如下图所示,其中EN1、EN2为左右电机使能端,IN1、IN2、IN3、IN4为电机正反转引脚端,它们分别与P1 口各引脚相连。EN(Ml3GNDl|-3DM277-2V1-OTIOT2QMW4?INIIN4ouriOUT4GNDGNpGNDGNDDUT2CMJT31N2wVCC2EN2VCC 审14OT411|bGNDOT3JI3 EN2Cl 5 1043.5 主控电路电机驱动模块主控电路复位电路的设计,采用上拉电复位,设计有按钮,按下即可实现复位。ccCiND丁一 单复位电路时钟电路的设计,采用DS1302时钟模块,接于单片机

21、P2.0和P2.1 口。rCC2P2,17CLKVCC1 OSC1P2.06RIO I OKP2.4 5I/ORSTOSC2VSS8;T 32.76KKBl IrB02 . “ 亠 *DS1302时钟模块GND蜂鸣器电路,接于单片机P2.3 口FM接到P2.3 IO口,对应该PCE3网络编号FM报警器模块4软件系统的设计4.1主程序的设计初始化SP、标志位、内部RAM蜂鸣器嘀的一声定时器初始化初始化电机显示初始化启动定时器TO*显示子程序冒I LOOP i=0i+曹否是否启动小车 A循迹子程序停车主程序流程图如主程序流程框图所示,主程序主包括了系统的初始化,小车的启动,和循迹避障动作实现程序。

22、这里需要说明一点:之所以将避障程序放在主程序内而将循迹作为一子程序这样设计,一是为了方便实现小 车在自动循迹的基础上实现自动避障并能够在避障后自动找回轨迹继续循迹移动;二是实现程序模块化, 以便以后再开发。具体算法思路是小车启动后,首先判断轨迹前方有无障碍物。无障碍物时直接执行循迹 移动。有障碍物时,判断是那一侧有障碍物,然后根据传感器采集的障碍物信息作出指令,比如右侧有障 碍物时,先执行停止、报警、降速、后退等指令,其次先左转再直行左转、直行直至绕开障碍物,然后右转、直行再右转、直行直至重新回到轨迹上,循迹移动。左侧或者前方有障碍物时程序算法类似于前 者,不同在于执行的动作顺序不同。在程序的

23、最后又补充添加了一红外遥控控制,以方便人为地控制随时 停车。详细程序设计如下:#in clude#defi ne uchar un sig ned char#defi ne uintun sig ned intsbit IN仁P1A2;/定义电机驱动控制引脚sbit IN2=P1A3;sbit IN3=P1A6;sbit IN4=P1A7;sbit EN1=P1A4;sbit EN2=P1A5;sbit BUZZ=P2A3; sbit DU=P2A6 ; sbit WE=P2A7; #defi ne left_x #defi ne right_x#defi ne left_b#defi ne

24、right_b定义蜂鸣器接线定义显示控制引脚P3_4II传感器引脚P3_3P3_6P3_5#define left_moto_pwmP1_4 IIPWM 信号端#defi ne right_moto_pwm un sig ned int pwmsd; un sig ned int count;P1_5II定义pwm转速变量un sig ned int i;un sig ned charcode table=0x3f,0x06,0x5b,0x4f,0x66,0x6d.0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39

25、,0x5e,0x79,0x71;void delay_nms(unsigned int n)延时 n msun sig nedint i,j;for(i=0;i n; i+)for(j=0;j125;j+)void mingdi(void)II蜂鸣器嘀的一声响BUZZ=0;delay_ nm s(50);BUZZ=1;voiddisp( un sig ned int j)voidqianj in( void)voidturnl eft(void)voidturn right(void)void houtui(void)void stop(void)void timer。nt()i nterru

26、pt 1void Timer1n t() in terrupt 2void xunji(void)void mai n(void)P0=0X00;P仁 OXFO;/前进/左转/右转/后退停止/定时器中断B: for(i=0;i=pwmsd)与设定转速(占空比)比较left_moto_pwm=0;/ 电机使能端清 0right_moto_pwm=0;4.5显示子程序的设计这里只使用一个数码管,用以显示转速,子程序设计如下:un sig ned char code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0

27、x39,0x5e,0x79,0x71;0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,Fvoid disp( un sig ned int j)DU=1;:P0=tablej;DU=0;WE=1;P0=0xff;WE=0;5制作安装与调试5.1小车的制作与安装采用DXP2004绘制原理图与 PCB板,布线的过程中必须注意焊盘的大小与铜线的宽度。我选取的 焊盘内径为0.8mm,外径2mm;铜线宽1mm。从做板的情况来看基本达到制作得要求。采用螺丝将循迹板安装在车头,主板与电机驱动安装在车尾。5. 2小车调试通过改变循迹板滑动变阻器器的大小来调试红外对管的灵敏度,通过改变延时程序来改变

28、速度的大小。下表为小车运行的情况:表5.1小车调试情况小车运行次数成功循迹次数成功避障次数1112213324425546总结整个系统的设计以单片机为核心,禾U用了多种传感器,将软件和硬件相结合。本系统能实现如下功能:(1) 自动沿预设轨道行驶小车在行驶过程中,能够自动检测预先设好的轨道,实现直道和弧形轨道的前 进。若有偏离,能够自动纠正,返回到预设轨道上来。(2) 当小车探测到前进前方的障碍物时,可以自动报警调整,躲避障碍物,从无障碍区通过。小车通过障碍区后,能够自动循迹。(3) 自动检测停车线并自动停车。从运行情况来看循迹的效果比较好,避障的效果不是很好,经过试验与分析,我认为以下原因造成 了这种状况,首先是所选的传感器测距太短,给单片机反映和做出动作的时间太短;其次是采用的传感器 数量太少,采集的道路信息不全;还有就是因为硬件的缺陷,只能通过

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论