简易智能小车设计报告

时间:2024.4.13

20##年全国大学生电子设计竞赛

简易智能电动车

作者:吴作智   赵  青   董全超  

(山东大学控制科学与工程学院  邮编250061)

赛前辅导老师: 姚福安   万  鹏

           

本设计以89C51为核心,采用双CPU分别进行电动车的前轮转向控制和后轮脉冲宽度调速控制,根据题目要求,前进过程中安放在车身不同位置的检测器件对小车的周围环境进行检测,包括地面埋设物(铁片)、前方障碍物和光源,完成小车在直道区、弯道区、障碍区和停车区的各项任务,并采用LCD实现埋设物个数、行车时间等的显示。其中,步进电机的转向控制是本系统设计的重点和难点。

一、方案论证

1、设计要求

本系统要求电动车按照给出的行使路线,在直道区能够正确的检测出埋设铁片的个数;通过弯道区后能够到达指定的地点并停车要求的时间;在障碍区能够准确的躲避障碍物;然后在光源的引导下驶入车库。

  2、各部分方案论述

(1)调速模块

方案一:采用电阻网络或数字电位器调整电动机的分压来调速。但电阻网络只能实现有级调速,而且数字电阻的元器件价格比较昂贵。尤其是所使用的电动机电阻很小,但电流很大,分压不仅会降低效率,实现也很困难。

方案二:采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调节。此方案电路较简单,但继电器的响应时间有限,机械结构易损坏,寿命不长,可靠性也不太好。

方案三:采用脉冲宽度调制电路。用单片机控制信号的高低电平时间完成调速,用对两个信号的不同控制完成电机的转向和起停的控制。这种电路由于工作在管子的饱和截止状态下,效率非常高,经试验发现,此方法调速简单可行,方便可靠。

基于上述理论分析,拟选择方案三。

(2)转向装置选择

方案一:双电机控制。采用两个直流电机控制小车后轮,直行时两轮转速相等,需要向左转时,增加右轮转速,降低左轮转速;需要向右转时,增加左轮转速,降低右轮转速。但此种方法必须精确控制两车轮转速直行时相等,否则将会出现小摇摆及抖动,达不到平滑运动的效果。

方案二:步进电机控制前轮。步进电机将电脉冲信号转换成相应的角位移的特种电机,步进电机的显著特点是快速启动能力,测到障碍物时能够快速转向;另外步进电机的精度高,每步可以小至0.72度,不会失步,在负荷不超过动态转矩值时,可以瞬间启动和停止。逆转时能够精确返回原始位置。外加机械机构可以把角度变成直线位移。

 经过比较分析,采用步进电机控制转向。

(3)外部传感器选择

校正车行方向即寻迹传感器:

采用红外线光电反射传感器,由于车底盘较低,采用近距离(1――6mm)有效的光电传感器。使CPU根据光电信息精确调整小车的行车方向,使小车运行时达到最小的横向抖动。CPU根据信号发出前轮左转,右转和保持方向的指令,实现自动校正行车方向的目的。

检测两个障碍物传感器:有两种方案可供选择。

方案一:采用超声波测距。超声波传感器测距时有足够的精度,可以达到1cm的近距离,对远距离也有较快的响应信号。但是,本题目的要求是绕过障碍物,这就要求小车在较远距离时即做出绕障的反应,因此没有必要采用精确近距的超声波传感器。

方案二:采用反射式红外线光电开关。本设计采用的光电开关有效距离为1——13cm(对白色障碍物),小车前方只要有障碍,即输出一个开关量,向CPU申请中断,CPU   响应中断即控制电机做出转向反应。所以拟采用此方案。

测车行程传感器:为使小车可以测量并显示小车中心至起点的距离,测小车的圈数换算即可得到。

方案一是采用投射式光电传感器如光电码盘,但对轮子的机械加工较难精确实现。

方案二是采用开关式光电传感器,在车轮上安装一个小磁铁即可实现测圈数,进而得到距离值,为此采用此方案。

二、系统设计与硬件电路

1、  总体设计

小车前后两部分框图如下:

 


    

 

2、  各模块设计

(1)  电机转速控制

本系统利用8050、8550等三极管的组合,构成基于PWM原理的驱动电路。如图     所示,P0.1为正反转控制端,P1.3为起停控制端,原理如下:

①P1.3为低电平

若P0.1为高电平,与低电平或非以后变为低,则Q55基极为低,由Q51构成的反向器使Q51集电极为高。于是,Q52、Q53、Q54导通,Q55、Q56、Q57截止。其中Q52为激励极,Q53、Q54为功放极。电流流向为:电池正极→Q53→电机“+”端→电机“-”端→Q54→地,电机正转。

                              图Ⅱ-3 直流调速驱动电路

若P0.1为低电平,与低电平或非以后变为高,则右边三个管即Q55、Q56、Q57导通,左边三个管截止,电机反转。

②P1.3为高电平

P1.3与低电平或非以后变为低,使Q51和Q55均截止,电机停转。

该电路原理简单、容易控制、带负载能力强,我们采用PWM控制,通过软件控制脉冲宽度的大小,设置高低电平的保持时间,来完成电机转速大小的改变,这样使得工作简单方便,而且准确可靠。

(2)电机转向控制

 这个设计中电机的转向主要有两个作用,一是在直道区和弯道区根据地面黑线使小车按照指定的路线行使,不偏离跑道,并到达要求的位置;二是在障碍区控制小车前轮转向使其准确地躲避障碍物,并在光源的引导下进入车库。

控制原理图如下图Ⅱ-4:

  

具体电机我们使用了35BYJ46型号的步进电机来完成此部分内容。这是一种四相五线制的电机,驱动器采用51单片机的口P1.0――P1.3,依次触发三极管导通,构成四相四拍步进电机。步进电机的工作电流为96mA,由于电机启动电流较大,所以采用额定电流为1500mA的三极管8050驱动电机。本程序采用循环设计法,将控制模型放在内存单元中,按顺序驱动四相四拍电机。

电机接口示意图如下图Ⅱ-5:

              图Ⅱ-5

其励磁顺序如表Ⅱ-1;

技术指标如表Ⅱ-2;                     

                              表Ⅱ-1

                                  表Ⅱ-2

   按照以上资料,在程序中利用P1口的前四个脚依次对两对相的正负进行控制可使电机步进转动,当信号顺序相反时电机反方向步进。每步进一步转动的角度为7.5º/85.25,在行进过程中根据检测的信号对距离、速度等数据进行计算,得电机需要转动的角度。

(3)检测

①  地面埋设物(铁片)

采用金属接近开关LM18—3008NA,工作电压6——36V,有效检测距离8mm,这种专用传感器,使用发便,对金属的检测较可靠。本设计安装此传感器在车的底部,当有接近金属时,输出低电平,送给单片机记下金属片个数,并显示出来。

②路面黑线检测

采用红外反射式二极管和LM324N四运算放大器构成信号发射接收电路,运算放大器对信号比较后产生输出信号,电路图如图Ⅱ-6:

                                    图Ⅱ-6

③前方障碍物

采用专用红外光电开关G18—3A10NA,工作电压10——30V,有效检测距离10cm,当前方有障碍物时传感器内部开关闭合,输出端为低电平,此信号对单片机P3.2产生中断0,控制转向左或右。电路图如图Ⅱ-7             

            图Ⅱ-7

④光源

使用光敏电阻检测前方20cm高白炽灯发出的光,引导小车前进。此部分研究如下:

如图Ⅱ-8所示,200W的白炽灯距离光敏电阻2m时,测得阻值大约为Rmax=10kΩ,而不在光源照射范围内的阻值在50K左右,经过计算,取R1为5.1K,为了方便可调,我们使用了一个50K的电位器。为了使管子能够饱和导通,集电极的电阻尽量取得大些。

                                          

                           图Ⅱ-8

三、软件设计

  控制程序的主要任务是:

(1)       判别旋转方向;(2)按顺序传送控制信号;(3)寻地面黑线;(4)检测障碍物;(5)检测光源。

各部分程序流程如下:

以上程序全部用汇编语言来编写,调试时,经过语法查错和逻辑查错,与硬件联合调试,先单独调试好每一个模块,然后再连接成一个完整的系统。经过最后的调试,总程序可以顺利执行。

四、测试

1、  测试所用仪器设备:

PC机

数字式万用表:Fluke 175

示波器:Instek  GOS-620

万利单片机仿真器

模拟跑道:直道长7m,弯道半径0.8m

卷尺:精度0.001m

秒表:精度0.01s

铁片:三块,厚度0.5mm,大小分别为15×15cm²,15×18 cm²,15×14 cm²

障碍物:用白纸包裹的纸盒两个,长、宽、高为25cm×10cm×10cm

2、  测试内容

(1)速度测试

数据如表Ⅳ-1所示:

                        表Ⅳ-1

                                                   跑道长度:7m

        (2) 寻线控制

      

测试情况如表Ⅳ-2:

                        表Ⅳ-2

由上述结果可知,小车的黑线牵引行驶基本可靠。

       (3)铁片检测

  下表Ⅳ-3是检测路面埋设物(铁片)的实验情况:

                                  表Ⅳ-3

由上我们发现,由于我们使用的安装在车盘底部中心的接近开关测试距离太小,不到1cm,再加上铁片不平整以及路面平整度等的原因,小车在铁片上行驶时,有可能发生误检(多检),这时显示的数目会很快加一并不能保持,这种情况是可以理解的,而且我们相信,只要路面足够平整,铁片检测这一环节是没有问题的。

     (4)障碍物检测

 下图是测试时所用场地及小车所走路线示意图。   

此项是小车功能的一个难点,由于存在诸多因素,如探测距离的偏差、电源供电不稳等,很难使小车及时发现前方障碍并顺利躲避,根据此图,我们计算并调整了小车转向的度数,结合小车前进的速度,发现障碍物时,小车倒车并继续检测,直到绕过障碍。我们发现,如果使小车一进入障碍区就驶向两个障碍物之间的区域,如图中虚线所示,可保证前轮CPU较小的工作量,使小车少走弯路,减少出现错误的可能。总的来说,此部分由于控制因素太多,加上时间非常紧张,我们的小车行驶实际情况距离预想状态还有一定的差距。

(5)光源检测

小车前方光源采用200W的白炽灯,按照题目要求距地面高度20cm,实验示意图如下:

我们在小车的上面正前方安装了黑色内里的圆筒,光敏电阻在里面感受正前方向的光线,由此使小车按照光源的位置来调整方向,实验证明基本是可行的,但是,由于题目中光源在车库的旁边而不在车库内部,小车只能向光源的方向前进,无法准确的进入车库,这是我们目前尚未解决的问题。

3、  误差分析及改善措施

小车转向控制采用模糊控制的思想,由于寻线,测障,测光有不同的精度要求,所以按照寻线,测障,检测光源将小车转动的角位移分为很小一步,一小步,稍大一步,这通过在多次试验中确定小车前轮的步进电机的步数而得到。虽然步数是确定的,但转向属于模糊控制,所以必定造成小车的横向抖动误差较大。基于模糊控制的算法,我们将小车运行的路线分为三部分寻线时步数较少,不至于偏离路线太大;有障碍物时,步数较大,有利于小车迅速绕障;进入光源照射区时,步数中等,直到最后到达终点。这种方法可以减小误差。经过多次实验,证实模糊控制可以较好的完成任务。

测试过程中,一个不可忽略的问题就是小车的不稳定性,这与我们的器件太多,连接复杂有一定的关系,而且我们的电源使用两套(+5V和+12V),在接通时,我们测量两个CPU的电压,为4.85V,这可能也是由于器件较多,电源容量不够所致,进而会影响电路的工作。在电源方面,我们一开始采用的是单一电源供电,这样供电比较简单,但由于电动机启动瞬间电流很大,而且PWM驱动的电动机波动较大,会造成电压不稳、有毛刺等干扰;因此我们考虑将电动机的驱动电源与单片机及其周边电路电源完全隔离,利用光电耦合器传输信号,提高了系统的稳定性。

五、结论

        我们采用双CPU分别进行电动车的脉冲宽度调速控制和步进电机的转向控制,用安放在车身不同位置的检测器件检测地面埋设物(铁片)和前方障碍物,用光敏电阻检测光源,并用LCD实现埋设物个数、指定行程等的显示。但是由于小车前轮与横杆之间有一定的间隙,所以小车在行驶过程中车轮难免会有一定的晃动,但是,我们在程序中进行实时的黑线检测,使小车一离开黑线前轮便小幅转向,这样便使小车始终不离开黑线。在测障方面我们采用了两个放在车两侧的传感器,可以使小车检测的前方障碍物,从而倒车并继续检测,直到绕过障碍物。最后,我们采用光敏电阻方法使小车在光源引导下进入车库。经过四天的奋战,我们较好的完成了任务,不仅基本部分完成,而且对小车的功能进行了我们感兴趣的扩展,如安装行驶指示灯、显示行使时间等。虽然在制作过程中遇到很多困难,但经过我们的团结合作,终于完成了制作。


第二篇:智能寻迹小车的设计报告


                         智能寻迹小车的设计

                   Intelligent Tracing Car Design

 摘要

在智能寻迹小车控制系统的设计中,以AT89C51为核心,用L298N驱动两个减速电机,当产生信号驱动小车前进时,是通过寻迹模块里的红外对管是否寻到黑线产生的电平信号通过LM393再返回到单片机,单片机根据程序设计的要求做出相应的判断送给电机驱动模块,让小车来实现前进、左转、右转、停车等基本功能。

   寻白线时,外部环境光线的强弱对小车的运动会产生很大的影响,基于此原因,本实验中的寻迹是指在白色地板上寻黑线。

   寻迹是指通过红外发射管和接收管识别路径。

   本实验的重点有三个方面:1.硬件的设计实现;2.软件的设计实现;3.方案的比较与论证。

   报告共分为五章:

   第一章是智能小车总体概况。介绍了小车的功能及展示了小车模型。

   第二章是系统要求。介绍了小车设计的要求及寻迹的原理。详细阐述了各模块的方案比较与论证,最后得出最终方案。

   第三章是硬件实现及单元电路实现。详细阐述了各部分电路的设计,并给出了原理图。

   第四章是软件设计。介绍了设计思想、程序流程图及具体程序设计。

   第五章是系统调试。介绍了调试软件WAVE ,以及软件调试过程;硬件测试及测试仪器和设备等。

   最后是参考文献和附录。

关键词:  直流电机  红外对管  L298N   识别路径  智能寻迹小车   

                   ABSTRACT

In the intelligent tracing car control system design, USES AT89C51 as the core, with L298N driven gear motor, when two signal driven forward by car tracing module, the infrared on whether to produce level signals through the black LM393 single-chip microcontroller, return again according to the requirement of design procedure of judgment for motor driver module, let the car to achieve progress, left, right, the basic function such as parking.

Find the white line, and the external environment of the strength of the light of sports car produce very big effect, this based on the experiments of tracing refers to the white striped floor found.

Tracing is through infrared tubes and receive tube recognition path.

The key of this experiment has three aspects:1. The design of hardware, 2 .the software design and implementation, Compared with the three schemes.

Report is divided into five chapters:

The first chapter is intelligent car overview. Introduces the function and the car show car model.

Chapter 2 is the system requirements. Introduces the design requirement and car tracing principle. Each module in detail the plan is demonstrated, and finally reached a final design.

The third chapter is hardware realization and unit circuit implementation. Expounds each part of the circuit design, and gives the principle diagram.

Chapter four is a software design. Introduces the design idea and program flow chart and design program.

The fifth chapter is debugging systems. Introduces the WAVE, and software testing software debugging process, Hardware testing and testing instruments and equipment, etc.

The references and appendix.

Keywords: dc motor    Infrared to tube     L298N   recognition on the path of infrared       intelligent tracing car

 

          

目   录

摘要                                                                1

Abstract                                                            2

目录                                                                3

第一章  智能小车总体概况                                            5

1.1 概况  5

1.2总体结构图  5

第二章  系统设计                                                    6

    2.1 设计要求                                                    6

    2.2 小车寻迹的原理                                              6

2.3模块方案比较与论证                                          7

第三章  硬件实现及单元电路设计                                     11

3.1 AT89C51主控芯片介绍  11

3.2 硬件设计  13

       3.2.1 红外对管电路的设计                                     13

       3.2.2寻迹红外对管的安装                                     15

3.2.3电机驱动电路的设计                                     15 

第四章  软件设计                                                   17 

4.1软件设计思想  17

4.3寻迹模块软件程序设计  17

第五章  系统调试  20

5.1硬件调试                                                    20

5.2调试软件WAVE介绍  21

    5.3软件程序调试                                                22

参考文献                                                           24

第一章  智能小车总体概况

  1.1概况

   智能小车以AT89C51为核心,经焊接相关芯片用电路板自制而成,通过I/O口检测信号,输出信号到L298N,从而驱动两个减速电机控制其前进 停止 左转 右转。检测信号则为三组红外发射和接收管,一组黑线时输出高电平,白线时输出低电平。另两组黑线时输出低电平,白线时输出高电平。

  1.2 总体结构图

                 

第二章 系统设计

2.1设计要求

(1)自动寻迹小车从安全区域启动。

(2)小车按指定路线运行,自动区分直线轨道和弯路轨道,在指定弯路处拐弯,实现灵活前进、转弯、倒退等功能,在轨道上划出设定的地图。

  (3)小车运行后,入库。

寻迹路线如图1所示:

              

 

2.2 小车寻迹的原理                                              

这里的循迹是指小车在白色地板上寻黑线行走,通常采取的方法是红外探测法。  红外探测法,即利用红外线在不同颜色的物体表面具有不同的反射性质的特点,在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色纸质地板时发生漫反射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,小车上的接收管接收不到红外光。单片机就是否收到反射回来的红外光为依据来确定黑线的位置和小车的行走路线。红外探测器探测距离有限,一般最大不应超过3cm。

2.3 模块方案比较与论证   

根据设计要求,本系统主要由控制器模块、寻迹传感器模块、直流电机及其驱动模块、电压比较模块等模块构成。

为较好的实现各模块的功能,我分别设计了几种方案并分别进行了论证。

2.3.1车体设计

方案1:购买玩具电动车。购买的玩具电动车具有组装完整的车架车轮、电机及其驱动电路。但是一般的说来,玩具电动车具有如下缺点:首先,这种玩具电动车由于装配紧凑,使得各种所需传感器的安装十分不方便。其次,这种电动车一般都是前轮转向后轮驱动,不能适应该题目的方格地图,不能方便迅速的实现原地保持坐标转90度甚至180度的弯角。再次,玩具电动车的电机多为玩具直流电机,力矩小,空载转速快,负载性能差,不易调速。而且这种电动车一般都价格不菲。因此我们放弃了此方案。

方案2:自己制作电动车。经过反复考虑论证,我们制定了左右两轮分别驱动,后方向轮转向的方案。即左右轮分别用两个转速和力矩基本完全相同的直流电机进行驱动,车体尾部装一个方向轮。这样,当两个直流电机转向相反同时转速相同时就可以实现电动车的原地旋转,由此可以轻松的实现小车坐标不变的90度和180度的转弯。

在安装时保证两个驱动电机同轴。当小车前进时,左右两驱动轮与方向轮形成了三点结构。这种结构使得小车在前进时比较平稳,可以避免出现后轮过低而使左右两驱动轮驱动力不够的情况。为了防止小车重心的偏移,后方向轮起支撑作用。

对于车架材料的选择,鉴于方便性,我选择了电路板。综上考虑,我选择了方案2。

2.3.2 控制器模块

方案1:采用可编程逻辑期间CPLD 作为控制器。CPLD可以实现各种复杂的逻辑功能、规模大、密度高、体积小、稳定性高、IO资源丰富、易于进行功能扩展。采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模控制系统的控制核心。但本系统不需要复杂的逻辑功能,对数据的处理速度的要求也不是非常高。且从使用及经济的角度考虑我放弃了此方案。

方案2:采用凌阳公司的16位单片机,它是16位控制器,具有体积小、驱动能力高、集成度高、易扩展、可靠性高、功耗低、结构简单、中断处理能力强等特点。处理速度高,尤其适用于语音处理和识别等领域。但是当凌阳单片机应用语音处理和辨识时,由于其占用的CPU资源较多而使得凌阳单片机同时处理其它任务的速度和能力降低。

本系统主要是进行寻迹运行的检测以及电机的控制。如果单纯的使用凌阳单片机,在语音播报的同时小车的控制容易出现不稳定的情况。从系统的稳定性和编程的简洁性考虑,我放弃了单纯使用凌阳单片机而考虑其它的方案。

方案3:采用Atmel公司的AT89C51单片机作为主控制器。AT89C51是一个低功耗,高性能的8位单片机,32个IO口, 2个16位可编程定时计数器。

从方便使用的角度考虑,我选择了方案3。

2.3.3 寻迹方案的设计

这里的寻迹是指小车在白色地板上,寻着黑线行走,通常采取的方法是以下三种方案。

方案1:用光敏电阻组成光敏探测器。光敏电阻的阻值可以跟随周围环境光线的变化而变化。当光线照射到白线上面时,光线发射强烈,光线照射到黑线上面时,光线发射较弱。因此光敏电阻在白线和黑线上方时,阻值会发生明显的变化。将阻值的变化值经过比较器就可以输出高低电平。

但是这种方案受光照影响很大,不能够稳定的工作。因此我考虑其他更加稳定的方案。

方案2:用红外发射管和接收管自己制作光电对管寻迹传感器。红外发射管发出红外线,当发出的红外线照射到白色的平面后反射,若红外接收管能接收到反射回的光线则检测出白线继而输出低电平,若接收不到发射管发出的光线则检测出黑线继而输出高电平。外部环境对其有一定影响。

方案3:用RPR220型光电对管。RPR220是一种一体化反射型光电探测器,其发射器是一个砷化镓红外发光二极管,而接收器是一个高灵敏度,硅平面光电三极管。

RPR220采用DIP4封装,其具有如下特点:

a. 塑料透镜可以提高灵敏度。

b. 内置可见光过滤器能减小离散光的影响。

c. 体积小,结构紧凑。

d. 当发光二极管发出的光反射回来时,三极管导通输出低电平。此光电对管调理电路简单,工作性能稳定。

虽然第三种方案最好,但由于不容易买到,所以我选择了第二种方案。

2.3.4 电机方案设计

本系统为智能电动车,对于电动车来说,其驱动轮的驱动电机的选择就显得十分重要。由于本实验要实现对路径的准确定位和精确测量,我们综合考虑了一下两种方案。

方案1:采用步进电机作为该系统的驱动电机。由于其转过的角度可以精确的定位,可以实现小车前进路程和位置的精确定位。虽然采用步进电机有诸多优点,步进电机的输出力矩较低,随转速的升高而下降,且在较高转速时会急剧下降,其转速较低,不适用于小车等有一定速度要求的系统。经综合比较考虑,我们放弃了此方案。

方案2:采用直流减速电机。直流减速电机转动力矩大,体积小,重量轻,装配简单,使用方便。由于其内部由高速电动机提供原始动力,带动变速(减速)齿轮组,可以产生较大扭力。

我选择了此方案2。

2.3.5 电机驱动模块

方案1:采用专用芯片L298N作为电机驱动芯片。L298N是一个具有高电压大电流的全桥驱动芯片,它相应频率高,一片L298N可以分别控制两个直流电机,而且还带有控制使能端。用该芯片作为电机驱动,操作方便,稳定性好,性能优良。

方案2:对于直流电机用分立元件构成驱动电路。由分立元件构成电机驱动电路,结构简单,价格低廉,在实际应用中应用广泛。但是这种电路工作性能不够稳定。

因此我们选用了方案1。

2.3.6 最终方案

经过反复论证,我最终确定了如下方案:

(1)车体用电路板手工制作。

(2)采用AT89C51单片机作为主控制器。

(3)用HON红外对管进行寻迹。

(5)L298N作为直流电机的驱动芯片。

系统的结构框图如图3所示:

 

        

             第三章 硬件实现及单元电路设计

3.1 AT89C51主控芯片介绍

  AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

1. 主要特性

·与MCS-51 兼容
·4K字节可编程闪烁存储器
·寿命:1000写/擦循环
·数据保留时间:10年
·全静态工作:0Hz-24Hz
·三级程序存储器锁定
·128*8位内部RAM
·32可编程I/O线
·两个16位定时器/计数器
·5个中断源
·可编程串行通道
·低功耗的闲置和掉电模式
·片内振荡器和时钟电路

2管脚说明:

  VCC:供电电压。
  GND:接地。
  P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
    P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。
    P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
    P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表所示:
口管脚 备选功能
P3.0 RXD(串行输入口)
P3.1 TXD(串行输出口)
P3.2 /INT0(外部中断0)
P3.3 /INT1(外部中断1)
P3.4 T0(记时器0外部输入)
P3.5 T1(记时器1外部输入)
P3.6 /WR(外部数据存储器写选通)
P3.7 /RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。 

3.振荡器特性:
XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
 4芯片擦除:
整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。
此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。

3.2 硬件设计
  3.2.1 红外对管电路的设计

我设计并论证了两种红外对管检测及调理电路,电路原理图分别如4和图5所示:

图4  红外对管检测电路1

图10所示电路中,R1起限流电阻的作用,当有光反射回来时,红外对管中的三极管导通,R2的上端变为高电平,此时VT1饱和导通,三极管集电极输出低电平。

当没有光反射回来时,红外对管中的三极管不导通,VT1截至,其集电极输出高电平。

VT1在该电路中起到滤波整形的作用。

经试验和示波器验证,该电路工作性能一般,输出还有杂散干扰波的成分。如果输出加施密特触发器就可以实现良好的输出波形。

但是这种电路用电量比较大,给此种传感器调理电路供电的电池压降较快。究其原因,是因为光敏三极管和三极管VT1导通时的导通电流较大。

因此我考虑用比较器的方案。

图5 红外对管检测电路2

在图3中,可调电阻R3可以调节比较器的门限电压,经示波器观察,输出波形相当规则,可以直接够单片机查询使用。

而且经试验验证给此电路供电的电池的压降较小。因此我选择此电路作为传感器检测与调理电路。

3.2.2 寻迹红外对管的安装

考虑到设计要求,本次设计仅用2对光电传感器就能完成设计要求,后面1对传感器用来校正小车的寻迹路线,保证小车运行的直线性。两侧的传感器用来检测小车过线,可以实现小车的转弯。

3.2.3电机驱动电路的设计

我采用电机驱动芯片L298N作为电机驱动,驱动电路的设计如图7所示:

图7  L298电机驱动电路

L298N的5、7、10、12四个引脚接到单片机上,通过对单片机的编程就可以实现两个直流电机的正反转等功能。

        

第四章 软件设计

4.1 软件设计思想

根据总体设计的思想及本系统实现的功能,在软件设计中完成以下功能。

1.寻迹模块主程序:由是否遇到黑线产生信号的操作,信号返回到单片机,再通过单片机来实现相应的功能。

2.电机驱动模块主程序:主要用来控制两个直流减速电机,实现前进、后退、前左转、前右转、后左转、后右转、停车等功能。

4.2 寻迹模块软件程序设计

   ORG    0000H

   LJMP  MAIN

   ORG   0003H

   LJMP  LEFT

   ORG 0013H

   LJMP  RIGHT

MAIN:

   MOV    SP,#60H

   MOV    P3,#0FFH

   LCALL DELAY5S

   MOV    IE,#85H

LOOP: JB     P1.4,ZX

      JB     P1.5,YX

QIANJIN:ANL P1,#0F0H

      ORL    P1,#0AH

       LCALL   DELAY1

       ANL     P1,#0F0H

       ORL     P1,#00H

       LCALL   DELAY1

      AJMP   LOOP

ZX:   JB      P1.5,QIANJIN

      ANL     P1,#0F0H

      ORL     P1,#09H

      LCALL   DELAY1

     ANL     P1,#0F0H

     LCALL   DELAY1

     AJMP    LOOP

YX:  JB      P1.4,QIANJIN

     ANL     P1,#0F0H

     ORL     P1,#06H

    LCALL   DELAY1

    ANL     P1,#0F0H

    LCALL   DELAY1

    AJMP    LOOP

LEFT: PUSH  ACC

      PUSH   PSW

      ANL P1,#0F0H

      ORL P1,#08H

      LCALL   DELAY1

     JNB    P3.2,$

     ANL P1,#0F0H

     ORL P1,#0AH

     POP PSW

     POP ACC

     RETI

RIGHT: PUSH  ACC

PUSH   PSW

     ANL P1,#0F0H

     ORL P1,#02H

      LCALL   DELAY1

     JNB P3.3,$

     ANL P1,#0F0H

     ORL P1,#0AH

     POP PSW

     POP ACC

     RETI

DELAY5S:        MOV     R1,#28

LP3:            MOV     R2,#0F0H

LP4:            MOV     R3,#0F0H

                DJNZ    R3,$

                DJNZ    R2,LP4

                DJNZ    R1,LP3

                RET

DELAY1:         MOV   R4,#14

OP1:          MOV   R5,#0F9H

OP:        NOP

           NOP

           DJNZ  R5,OP

          DJNZ  R4,OP1

          RET

           END

第五章      系统调试

5.1 硬件调试

  硬件调试是用基本测试仪器(万用表、示波器等)和自己编写的测试程序进行相关的测试,来检查系统硬件中存在的问题。

 1. 测试仪器及设备

                    表1  测试仪器设备清单

2. 红外对管信号产生的调试

图5-1 红外对管信号产生的原理图

如果红外对管遇到黑线,OUT输出为高电平。否则为低电平。两组光电开关传感器输出的信号,经过比较器LM393后再输出送给单片机。 电阻R4为上拉电阻,滑动变阻器R3是用来调节参考电压的,要想输出正常,只要调滑动变阻器即可。符合系统设计要求,最终电路原理图如5-1所示。

5.2调试软件WAVE介绍

在调试过程,使用基于WINDOWS95/98/XP操作平台VC风格软件WAVE。WAVE软件是集编辑、编译、连接、加载、调试等为一体的集成开发环境。可能在同一界面环境中完成所有任务。使用方便、易懂并且节省调试间时。

1.主界面

WAVE软件是集编辑、编译/连接、加载、调试等为一体的集成开发环境用可以在同一界面环境中完成所有任务。

(1)编辑窗口

WAVE提供一个多窗口的源文件编辑器。该编辑器不受文件大小的限制,允许无限的撤销/重复功能。编辑器全面支持汇编、C51和PL/M51语言的语法加亮着色。用户可以自定义各种类型文本的颜色和不同语言的关键词。相应的关键词文件名为ASM.KWD、C51.KWD。这些文件都保存在WAVE安装目录下。编辑器还支持拷贝、剪切、粘贴,全程查找等功能。

( 2 )工作区窗口

工作区窗口有两个页面窗口。工程页面窗口以树型结构显示工程中的项目文件等内容。没有打开工程时,该页面窗口为空。左面为资源管理器页面窗口

( 3 )输出窗口

输出窗口显示用户编译连接过程中的输出信息,用户双击某条编译出错信息提示即可直接定位到源文件的对应行。

a.观察窗口

观察窗口中显示调试过程中长期观察的变量项。用户可以添加、删除、修改、刷新观察项。相应命令在右键菜单中。

b.数据窗口

数据窗口中成批显示实验机相应存储区域的整块数据内容。用户可以察看,修改相应地址单元的数据。相应命令在右键菜单中。

c.对话窗口

用户通过对话窗口可直接用监控命令和实验机对话。

2.菜单介绍

( 1 )文件(F)和文件有关的操作,如打开、关闭、打印等文件操作。

( 2 )编辑(E)包括拷贝、剪切、粘贴、书签、查找和替换等编辑命令。

( 3 )搜索(S)可以为用户查找。

( 4 )项目(P)和工程有关的操作,如编译、加入模块、加入包含文件等工程操作。

( 5 )执行(R)包括调试等编译操作。

( 6 )窗口(W)包括等显示一些窗口等信息命令。

( 7 )外设(L)包括端口、定时器/计数器、串行口等的设置。

( 8 )仿真器(O)包括仿真器、设置编辑器等命令。

( 9 )帮助(H)显示相应帮助文件和软件版本信息。

5.3 软件程序调试

1.调试的主要方法和技巧

在使用WAVE软件时,调试的方法和技巧最为重要,不同的情况采用不同的调试方法,有助于程序的实现。在设计过程中显示运行结果一般用全速调试,调试时主要使用了跟踪调试、断点调试。

( 1 )跟踪调试

跟踪应用程序用户能够在运行应用程序时,看到PC指针在应用源代码程序中的确切位置,WAVE提供了跟踪型单步和通过型单步。

跟踪型单步仅执行一条源语句程序,有利于观察变量。但是,如果调用函数,则进入函数中,在执行函数的第一条源泉语句行前停止。有利于用在延时子程序中。

通过跟踪型单步仅执行一条源语句程序,然后又停止。

( 2 )断点调试

如果已知程序中某块代码实际运行正常的情况下,仍用跟踪调试,将大大浪费时间,而且很枯燥,因此调试中第二个重要工具是在源代码中预定处设置断点,大多数调试程序通过使用断点中止程序执行。如果用断点调试,由比较容易观察出程序变量的改变及程序运行的结果。

( 3 )查看变量

 WAVE软件提供了以下几种方法以变量进行查看:观察窗口、数据窗口(程序空间窗口、内部数据窗口、外部数据窗口。)通过添加窗口菜单可以将用户希望观察的变量添加到观察窗口及数据窗口观察。在设计过程中常用观察窗口观察程序中的变量,修改程序中的错误。

( 4 )更改数值

如果用户在调试过程中了解到变量的内容(超值、未定义等)会对程序性能产生影响或引起异常时,立即更改变量的内容是很有交往的方法以确保该值在正确范围内不会产生错误。WAVE软件提供一系列更改变量数值的方法,以便用户能检查程序对整个变量值范围的反应,而无需为设置每个值而重新加载调试。在更改对话框中用户输入要更改的取值,点击确定按钮。用户可以在输入框中输入十六进制或十进制数据。 

2.利用WAVE调试本系统

首先打开变量观察窗口并添加要观察的变量,然后用跟踪型单步的方式对各个子程序逐条指令执行,观察变量的变化,查看是否达到子程序的功能要求。对子程序调试完成后,用跟踪型单步从START开始逐条执行指令,当遇到WAVE指令调用子程序时使用通过型跟踪的方式跳过子程序,通过这种方式对主程序进行调试。当对主程序进行调试时,如果遇到某段程序存在问题不法继续执行时,可用断点调试的方法,在已知的程序中能够正常运行的代码处设置断点,这样可以大大节省时间。

测试经验总结:

1.在调试程序之前,先检查各模块间的连接是否连接无误,有无断路现象。

2.调试程序时,首先用全速运行的方法进行总体调试,以便快速发现程序中存在问题的部分。然后设置断点调试。主要针对有问题的程序调试,更快地确定出现问题的位置。最后,利用单步调试方法,分析程序中出现的问题,解决问题,使程序正常运行。

3.在多次调试不成功的基础上,考虑思路是否正确,如果确定思路无误,考虑两个问题:一是程序中是否有笔误的地方;二是运行软件是否正常。

                   

参考资料

1.    传感器和信号调节

2.    单片机基础

3.    www.csdn.com

 

更多相关推荐:
智能小车设计报告

机器人控制技术实验设计报告书题目基于STC89C52的智能小车的设计姓名李如发学号073321032专业电气工程及其自动化指导老师李东京设计时间20xx年6月目录1引言111设计意义112系统功能要求113本组...

循迹智能小车的设计报告

20xx年全国大学生电子设计大赛报告智能小车设计摘要智能车辆是目前世界车辆研究领域的热点和汽车工业新的增长点未来的车辆也一定是智能化的车辆所以智能化的车辆是未来人们生活重要的载体因此有必要对智能车辆进行研究研制...

电子设计大赛智能小车设计报告

简易智能电动车设计报告简易智能电动车设计报告小组成员日期1简易智能电动车设计报告摘要本设计以STC89C52单片机为控制核心经光敏电阻和红外对射完成循迹寻光以及躲避障碍物测距的检测停车控制时间等经比较器LM39...

智能小车设计报告

智能小车设计报告组员指导老师专业应用电子技术班级班学院智能小车设计报告1摘要本设计以AT89C52单片机小系统作为控制与检测的核心用L298N为主控芯片组成的驱动模块作为直流电机驱动用主控芯片为ST188组成的...

智能小车设计报告

天津理工大学第二届电子设计大赛智能小车竞赛设计报告10航海二班潘学院海运学院班级队员李ampamp刘1摘要智能作为现代的新发明是以后的发展方向他可以按照预先设定的模式在一个环境里自动的运作不需要人为的管理可应用...

智能循迹小车设计报告

电子作品设计报告项目名称智能小车学院机电工程学院专业应用电子技术班级组别第三组姓名杨磊赖焕宁梁广生指导老师杨青勇玉宁1目录摘要3关键词3引言3一系统设计311设计要求412车体方案认证与选择4二硬件设计及说明5...

20xx全国电子设计大赛报告终极版(智能小车)

20xx年全国大学生电子设计竞赛智能小车C题本科组20xx年9月3日智能小车摘要本文以两个STC89C52单片机为核心设计了两辆智能小车单片机产生周期性脉冲信号控制全桥驱动芯片L298N驱动直流电机实现小车的转...

简易智能小车设计报告

简易智能电动车技术创新论文摘要本设计以89C51为核心采用双CPU分别进行电动车的前轮转向控制和后轮脉冲宽度调速控制根据题目要求前进过程中安放在车身不同位置的检测器件对小车的周围环境进行检测包括地面埋设物铁片前...

基于单片机的多功能智能小车设计论文(电路+程序+论文) 增强版

摘要关键词智能车AT89S52单片机金属感应器霍尔元件1602LCD智能作为现代的新发明是以后的发展方向他可以按照预先设定的模式在一个环境里自动的运作不需要人为的管理可应用于科学勘探等等的用途智能电动车就是其中...

20xx年全国大学生电子设计大赛C题(智能小车设计报告)

20xx全国大学生电子设计大赛设计报告智能小车C题20xx0903前言摘要本设计以STC12C5A60S2单片机为控制核心STC12C5A60S2是一款16位Flash单片机它的易用性和多功能性受到了广大使用者...

智能小车实验报告

北京邮电大学实习报告附1实习总结为期两周的电子工艺实习我过得十分忙碌和充实从茫然地走进实验室到学习最基本的焊接到组装小车再到无数次地调试程序最后获得全院比赛的二等奖有很多的辛苦但是有更多的收获焊接是电子工艺实习...

电子设计大赛智能小车设计报告

简易智能电动车学校辽宁工程技术大学小组成员日期20xx年8月4日摘要本设计以STC89C52单片机为控制核心经光敏电阻和红外对射完成循迹寻光以及躲避障碍物测距的检测经比较器LM393进入单片机单片机通过内部程序...

智能小车设计报告(24篇)