收藏 分享(赏)

智能循迹避障小车控制系统设计最终版.doc

上传人:HR专家 文档编号:6048121 上传时间:2019-03-25 格式:DOC 页数:26 大小:1.23MB
下载 相关 举报
智能循迹避障小车控制系统设计最终版.doc_第1页
第1页 / 共26页
智能循迹避障小车控制系统设计最终版.doc_第2页
第2页 / 共26页
智能循迹避障小车控制系统设计最终版.doc_第3页
第3页 / 共26页
智能循迹避障小车控制系统设计最终版.doc_第4页
第4页 / 共26页
智能循迹避障小车控制系统设计最终版.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

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

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

3、高仓储的效率,减少仓储的人力资源成本和仓库的直接成本,解决绝对人力不能满足大型物流中心运作的情况,那么我们的仓储行业又能向前迈进一个新阶。 因此,基于上诉当前仓管配货工作的任务繁忙,减小仓管员工作量,提高仓储管理工作效率,我们决定制作一智能避障循迹小车,用于仓库不同货架间货物的自动配送。我们的小车能实现循迹移动,在不同工作点之间穿梭。借助我们的小车,仓管员只需轻松输入目标代码,就可以实现将货物自动送达目标货架或者将不同货架的货物收集到配送点。同时为了避免小车在行进过程中撞击到人员、货物或者货架等障碍物,我们的小车具有自动避障和自动停车功能。2 设计方案的拟定2.1 整体系统设计该整个系统由控制

4、模块、光电传感器检测模块、电源模块、电机及驱动模块等子模块组成。如框图所示:控制模块STC89C52 单片机循迹检测模块两个光电传感器障碍物检测模块两个光电传感器电机驱动模块电机电源模块7805 稳压管复位电路时钟电路- 4 -2.2 控制模块设计针对本设计特点多开关量输入的复杂程序控制系统,需要擅长处理多开关量的标准单片机,而不能用精简 I/O口和程序存储器的小体积单片机,D/A、A/D 功能也不必选用。根据这些分析,我选定了STC89C52单片机作为本设计的主控装置,52 单片机具有功能强大的位操作指令,I/O 口均可按位寻址,并具有如下性能优点:(1)微处理器 该单片机中有一个 8位的微

5、处理器,与通用的微处理器基本相同,同样包括了运算器和控制器两大部分,只是增加了面向控制的处理功能,不仅可处理数据,还可以进行位变量的处理。 (2)数据存储器 片内为 128个字节,片外最多可外扩至 64k字节,用来存储程序在运行期间的工作变量、运算的中间结果、数据暂存和缓冲、标志位等,所以称为数据存储器。 (3)程序存储器 由于受集成度限制,片内只读存储器一般容量较小,如果片内的只读存储器的容量不够,则需用扩展片外的只读存储器,片外最多可外扩至 64k字节。 (4)中断系统 具有 5个中断源,2 级中断优先权。(5)定时器/计数器 片内有 2个 16位的定时器/计数器,具有四种工作方式。 (6

6、)串行口 1 个全双工的串行口,具有四种工作方式。可用来进行串行通讯,扩展并行 I/O口,甚至与多个单片机相连构成多机系统,从而使单片机的功能更强且应用更广。(7) P0 口、P1 口、P2 口、P3 口 为 4个并行 8位 I/O口。(8) 特殊功能寄存器 共有 21个,用于对片内的个功能的部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的 RAM区。 由上可见,STC89C52 单片机的硬件结构具有功能部件种类全,功能强等特点。特别值得一提的是该单片机 CPU中的位处理器,它实际上是一个完整的 1位微计算机,这个一位微计算机有自己的 CPU、位寄存器、I/O

7、 口和指令集。1 位机在开关决策、逻辑电路仿真、过程控制方面非常有效;而 8位机在数据采集,运算处理方面有明显的长处。对于本设计该单片机绰绰有余,更可贵的是 52单片机价格非常低廉。STC89C52 引脚图- 5 -2.3 光电传感检测模块循迹方案设计:方案一:采用摄像头循迹法:利用摄像头对赛道提取信息,分有数字式和模拟式。方案二:红外对管循迹法:利用黑白色对红外线的吸收作用不同,其由发射管和接收管配对组成,发射管发射出红外线,当发射到黑色轨道时,被黑色轨道所吸收,当发射到白色跑道外时,会发射回来,接收管接收到光线信号,产生一电压信号给单片机,从而实现对轨迹信息的读取。方案三:激光管循迹法:其

8、循迹原理与红外对管相同,不同的是其测距比较远。综上所述,又考虑到成本的原因,本次设计采用红外对管循迹法。采用脉冲调制的反射式红外发射接收器。由于采用带有交流分量的调制信号,则可大幅度减少外界的干扰;此外红外发射接收管的工作电流取决于平均电流,如果采用占空比小的调制信号,在平均电流不变的情况下,瞬时电流很大(50100mA) (ST-188 允许的最大输入电流为 50mA) ,则大大提高了信噪比。避障方案设计:方案一:红外线避障。方案二:超声波避障。本次设计本打算利用两种方案混合使用,但是由于后期制作过程中,超声波模块损坏,只能使用红外线避障。其也是由发射管和接收管组成,工作原理与循迹的相同,发

9、射管发出红外线,当遇到障碍物时就会反射回来,接收管接收到反射的信号就会产生一电压信号给单片机,从而实现对障碍物的检测。- 6 -红外线传感器模块实物图2.4 电源模块电源模块,用 9V的锌电源给前、后轮电机供电,然后使用 7805稳压管来把高电压稳成 5V分别给单片机和电机驱动芯片供电。7805 电源模块2.4 电机及电机驱动模块电机方案的选择:方案一:采用直流电机,优点在于硬件电路设计简单。当外加额定直流电压时,转速几乎相等,调速性能较好,且性价比高。对于小车的行驶,能够很好的控制。 方案二:采用步进电机,步进电机可以实现精确的转角输出,只要施加合适的脉冲序列,电机可以按照人们的预定的速度或

10、方向进行连续的转动,便于控速,但是软件程序的编写较直流电机稍显复杂。表 2.1 电机性能对比表对比项 直流电机 步进电机调速性能 较好 较差位置控制精度 较差 好控制难易程度 简单 较难价格 低 中- 7 -综合考虑,本智能车决定采用直流电机作为只能车的动力电机。电机采用直流减速电机,直流减速电机转动力矩大,体积小,重量轻,装配简单,使用方便。由于其内部由高速电动机提供原始动力,带动变速(减速)齿轮组,可以产生较大扭力。 可选用减速比为1:74 的直流电机,减速后电机的转速为 100r/min。若车轮直径为 6cm,则小车的最大速度可以达到0.314m/s能够较好的满足系统的要求。下图为电机的

11、实物图直流减速电机电机驱动方案的选择:方案一:采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调整.此方案的优点是电路较为简单,缺点是继电器的响应时间慢,易损坏,寿命较短,可靠性不高。方案二:采用电阻网络或数字电位器调节电动机的分压,从而达到分压的目的。但电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵。更主要的问题在于一般的电动机电阻很小,但电流很大,分压不仅回降低效率,而且实现很困难。方案三:采用功率三极管作为功率放大器的输出控制直流电机。线性型驱动的电路结构和原理简单,加速能力强,采用由达林顿管组成的 H 型桥式电路(如图 2.1)。用单片机控制达林顿管使之工作

12、在占空比可调的开关状态下,精确调整电动机转速。这种电路由于工作在管子的饱和截止模式下,效率非常高,H 型桥式电路保证了简单的实现转速和方向的控制,电子管的开关速度很快,稳定性也极强,是一种广泛采用的 PWM 调速技术。现市面上有很多此种芯片,我选用了 L293专用驱动器。所用芯片 L293属于 H桥集成电路,其输出电流为 1000mA,最高电流 2A,最高工作电压 36V,可以驱动感性负载,特别是其输入端可以与单片机直接相联,从而很方便地受单片机控制。当驱动小型直流电机时,可以直接控制两路电机,并可以实现电机正转与反转,实现此功能只需改变输入端的逻辑电平。本模块具有体积小,控制方便的特点。采用

13、此模块定会使您的电机控制自如,应对小车题目轻松自如。- 8 -L293D 电机驱动模块电机调速系统的设计:方案一:串电阻调速系统。方案二:静止可控整流器。简称 V-M系统。 方案三:脉宽调速系统。旋转变流系统由交流发电机拖动直流电动机实现变流,由发电机给需要调速的直流电动机供电,调节发电机的励磁电流即可改变其输出电压,从而调节电动机的转速。改变励磁电流的方向则输出电压的极性和电动机的转向都随着改变,所以 G-M系统的可逆运行是很容易实现的。该系统需要旋转变流机组,至少包含两台与调速电动机容量相当的旋转电机,还要一台励磁发电机,设备多、体积大、费用高、效率低、维护不方便等缺点。且技术落后,因此搁

14、置不用。V-M系统是当今直流调速系统的主要形式。它可以是单相、三相或更多相数,半波、全波、半控、全控等类型,可实现平滑调速。V-M 系统的缺点是晶闸管的单向导电性,它不允许电流反向,给系统的可逆运行造成困难。它的另一个缺点是运行条件要求高,维护运行麻烦。最后,当系统处于低速运行时,系统的功率因数很低,并产生较大的谐波电流危害附近的用电设备。PWM 调速系统:其实现方式有两种,一是采用晶闸管的直流斩波器基本原理,将晶闸管处在开关状态,当晶闸管被触发导通时,电源电压加到电机上,当晶闸管关断时,直流电源与电机断开,电动机经二极管续流,两端电压接近于零,脉冲周期不变,只改变晶闸管的导通时间,即通过改变

15、脉冲宽度来进行直流调速;二是利用软件方式实现,采用两个定时器,其中一个用来控制脉冲频率,另一个控制占空比,这种实现方式快捷且有效。 与 V-M系统相比,PWM 调速系统有下列优点: (1)由于 PWM调速系统的开关频率较高,仅靠电枢电感的滤波作用就可以获得脉动很小的直流电流,电枢电流容易连续,系统的低速运行平稳,调速范围较宽,可达 1:10000 左右。由于电流波形比 V-M系统好,在相同的平均电流下,电动机的损耗和发热都比较小。 (2)同样由于开关频率高,若与快速响应的电机相配合,系统可以获得很宽的频带,因此快速响应性能好,动态抗扰能力强。 (3)由于电力电子器- 9 -件只工作在开关状态,

16、主电路损耗较小,装置效率较高。 根据以上综合比较,以及本设计中受控电机的容量和直流电机调速的发展方向,本设计采用了采用了程序的方法实现 PWM脉冲宽度调试。 3 硬件系统的设计3.1 总体设计智能小车采用前轮驱动,前轮左右两边各用一个电机驱动,调制前面两个轮子的转速起停从而达到控制转向的目的,后轮是万象轮,起支撑的作用。将循迹光电对管分别装在车体下的左右。当车身下左边的传感器检测到黑线时,主控芯片控制左轮电机停止,车向左修正,当车身下右边传感器检测到黑线时,主控芯片控制右轮电机停止,车向右修正。避障的原理和循线一样,在车身右边装一个光电对管,当其检测到障碍物时,主控芯片给出信号报警并控制车子倒

17、退,转向,从而避开障碍物。表 3.1 元件清单元件 数量 元件 数量 元件 数量直流电机 2只 电阻 若干 集成电路芯片若干单片机 1 块 二极管 若干 电容 若干红外对管 3只 蜂鸣器 1只 电位器 若干12M晶振 1只 杜邦线 若干 玩具小车 1个排针 若干3.2 光电传感检测模块采用四路红外对管传感器,其中两路置于小车中间,用于循迹检测,另外两路用于避障信号检测,置于小车两侧。其工作原理如下:小车循迹原理是小车在画有黑线的白纸 “路面”上行驶,由于黑线和白纸对光线的反射系数不同,可根据接收到的反射光的强弱来判断“道路”黑线。笔者在该模块中利用了简单、应用也比较普遍的检测方法红外探测法。红

18、外探测法,即利用红外线在不同颜色的物理表面具有不同的反射性质的特点。在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色地面时发生漫发射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,则小车上的接收管接收不到信号,再通过 LM324作比较器来采集高低电平,从而实现信号的检测。避障亦是此原理。电路- 10 -图如图,我们将其接于单片机 P3口。3.3 电源模块电路设计采用 7805稳压模块为系统提供 5V的稳定电压,并设计有电源指示二极管,用以提示电源是否供电正常。3.4 电机驱动模块设计电机驱动模块采用专用驱动器 L293D,所用芯片 L293属于 H桥集成电路,其输出电流为

19、 1000mA,最高电流 2A,最高工作电压 36V,可以驱动感性负载,特别是其输入端可以与单片机直接相联,从而很方便地受单片机控制。其工作电路如下图所示,其中 EN1、EN2 为左右电机使能端,IN1、IN2、IN3、IN4 为- 11 -电机正反转引脚端,它们分别与 P1口各引脚相连。3.5 主控电路主控电路- 12 -复位电路的设计,采用上拉电复位,设计有按钮,按下即可实现复位。复位电路时钟电路的设计,采用 DS1302 时钟模块,接于单片机 P2.0 和 P2.1 口。蜂鸣器电路,接于单片机 P2.3口- 13 -4 软件系统的设计4.1 主程序的设计否否 是 否是 是 否 是 是是

20、是 是否否否 否 否是是初始化 SP、标志位、内部 RAM定时器初始化初始化电机 显示初始化A蜂鸣器嘀的一声启动定时器 T0是否启动小车判断左侧是否有障碍物右转、直行左转、直行停车、报警、降速、后退停车、报警降速、后退判断 P3.7是否按下i#define uchar unsigned char#define uint unsigned intsbit IN1=P12; /定义电机驱动控制引脚sbit IN2=P13;sbit IN3=P16;sbit IN4=P17;sbit EN1=P14;循迹子程序B是否有停车信号停车LOOP- 15 -sbit EN2=P15;sbit BUZZ=P2

21、3; /定义蜂鸣器接线sbit DU=P26 ; /定义显示控制引脚sbit WE=P27;#define left_x P3_4 /传感器引脚 #define right_x P3_3 #define left_b P3_6#define right_b P3_5#define left_moto_pwm P1_4 /PWM 信号端#define right_moto_pwm P1_5unsigned int pwmsd; /定义 pwm 转速变量unsigned int count;unsigned int i;unsigned char code table=0x3f,0x06,0x5b

22、,0x4f,0x66,0x6d, 0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71; /0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,Fvoid delay_nms(unsigned int n) /延时 n ms unsigned int i,j;for(i=0;i=pwmsd) /与设定转速(占空比)比较left_moto_pwm=0; /电机使能端清 0right_moto_pwm=0; 4.5 显示子程序的设计这里只使用一个数码管,用以显示转速,子程序设计如下:unsigned char code table=0x3f,0

23、x06,0x5b,0x4f,0x66,0x6d, 0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71; /0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,Fvoid disp(unsigned int j)DU=1;:P0=tablej ;DU=0;WE=1;P0=0xff;WE=0; - 24 -5 制作安装与调试5.1 小车的制作与安装采用 DXP2004 绘制原理图与 PCB 板,布线的过程中必须注意焊盘的大小与铜线的宽度。我选取的焊盘内径为 0.8mm,外径 2mm;铜线宽 1mm。从做板的情况来看基本达到制作得要求。采用螺丝

24、将循迹板安装在车头,主板与电机驱动安装在车尾。52 小车调试通过改变循迹板滑动变阻器器的大小来调试红外对管的灵敏度,通过改变延时程序来改变速度的大小。下表为小车运行的情况:表 5.1 小车调试情况6 总结 整个系统的设计以单片机为核心,利用了多种传感器,将软件和硬件相结合。本系统能实现如下功能:(1) 自动沿预设轨道行驶小车在行驶过程中,能够自动检测预先设好的轨道,实现直道和弧形轨道的小车运行次数 成功循迹次数 成功避障次数1 1 12 2 13 3 24 4 25 5 4- 25 -前进。若有偏离,能够自动纠正,返回到预设轨道上来。(2)当小车探测到前进前方的障碍物时,可以自动报警调整,躲避

25、障碍物,从无障碍区通过。小车通过障碍区后,能够自动循迹。(3)自动检测停车线并自动停车。从运行情况来看循迹的效果比较好,避障的效果不是很好,经过试验与分析,我认为以下原因造成了这种状况,首先是所选的传感器测距太短,给单片机反映和做出动作的时间太短;其次是采用的传感器数量太少,采集的道路信息不全;还有就是因为硬件的缺陷,只能通过软件弥补,我们只能采用模糊控制小车避障动作,当传感器检测到障碍物时,通过程序预先设计好小车的动作,为其下一步动作给一个预先的判断,并基于这个判断指导小车动作。模糊控制小车动作能基本上实现避障,但是还是存在一些不足,比如有时因执行避障动作而偏离轨道太远,以至于有时不能找到轨

26、道。不过庆幸的是,这种情况偶尔发生。本次设计虽然完成了,并且实现了最初大多数功能,但是它还不能称为合格的产品,不是理想的完成作品,需要我们的进一步完善。我们也会继续将其制作下去,软硬件双管齐下,采用更好的硬件设施,进一步学习这一方面知识,争取写出更加完善的程序,努力使得我们的产品达到最佳。这是我们第一次开发单片机控制系统, 通过本次设计我们初步了解了产品开发的过程,首先制定一可行的任务书,然后根据任务书制定初步的制作方案,然后具体开发制作,伴随着开发过程中遇到问题,然后不断的改善方案,最终直至完成合格的产品。这对我们今后的发展有很大帮助,能够帮助我们以后更好的适应今后的工作。本次设计虽然完成了

27、,但它只是一个开始,因为我们已经在路上。致谢: 感谢沈林勇老师对本工作的指导,在此表示感谢!学生:肖青峰,负责软件编程,完成说明书第四部分;付高峰,负责硬件制作,完成说明书第三部分;徐鹏,负责采购和撰写报告,完成说明书一二部分。- 26 -参考文献:1郭惠,吴迅.单片机 C语言程序设计完全自学手册M.电子工业出版社,2008.10:1-200.2王 东 锋 ,王 会 良 ,董 冠 强 . 单 片 机 C 语 言 应 用 100 例 M. 电 子 工 业 出 版 社 ,2009.3: 145-300.3韩 毅 ,杨 天 .基 于 HCS12 单 片 机 的 智 能 寻 迹 模 型 车 的 设 计 与 实 现 J.学 术 期 刊 , 2008, 29( 18) : 1535-1955.4 王 晓 明 , 电 动 机 的 单 片 机 控 制 J. 学术期刊,2002,13( 15):1322-1755.5 吴舒辞, 张发生.电工与电子技术(上册).北京大学出版社.2011.76 徐卓农,李士军.电工与电子技术(下册).北京大学出版社.2011.77 马献果,刘红伟,张成怀.电路与电子技术基础.北京:中国电力出版社 ,2015.28 万福君,潘松峰,刘芳.MCS-51单片机原理 系统设计与应用.北京:清华大学出版社.2008.6

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 经营企划

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报