您好,欢迎访问三七文档
基于89c52单片机的寻迹小车设计报告一、实验简介1.1设计目的通过设计进一步掌握STC89c52单片机的应用,特别是在嵌入式系统中的应用。进一步学习STC89c52单片机在系统中的控制功能,能够合理设计单片机的外围电路,并使之与单片机构成整个系统。1.2设计方案介绍该智能车采用红外传感器ST188进行道路检测,并通过运放电路传递给单片机,单片机根据采集到的红外对管的不同状态判断小车当前状态,控制电机的工作状态以实现对小车姿态的控制。1.3设计报告内容安排本技术报告主要分为三个部分。第一部分是对整个系统实现方法的一个概要说明;第二部分是对硬件电路设计的说明,主要介绍STC89c52的最小系统、LM324运放电路、ST188传感器的设计以及LM298驱动电路及滤波的设计;第三部分是源程序,最后是实验心得。1.4器材STC89c52及底座1个ST1883个LM2981个二极管8个0.1f2个100f2个30pf2个100010个滑动变阻器2036个滑动变阻器5021个晶振1个LM324及底座1个30K3个5103个1K6个车模1个导线、排针、排插若干二、实验说明本模型车的电路系统包括单片机模块、传感器模块、电机驱动模块。在整个系统中,由电源管理模块实现对其他各模块的电源管理。其中,对单片机提供5V电压,对直流电机提供12V电压。路径识别电路由3个ST188反射式红外光电传感器组成。由于路面存在黑色引导线,落在黑线区域内的红外接收管接收到反射的光线的强度与白色的路面不同,进而在红外接收管两端产生不同的电压值,在白色路面时产生是高电平1,在黑色路面时产生的是低电平0,由此判断路线的走向。传感器模块将当前采集到的一组电压值通过比较放大电路传递给单片机,进而根据一定得算法对直流电机进行控制,使小车自动寻线行走。单片机模块是智能车的核心部分,主要完成对外围各个模块的管理,实现对外围模块的信号发送,以及对传感器模块的信号采集,并根据软件算法对所采集的信号进行处理,发送信号给执行模块进行任务执行,还对各种突发事件进行监控和处理,保证整个系统的正常运作。直流电机控制模块则根据检测情况经单片机处理后发出相应的控制信号对直流电机进行转向和速度的控制。三、实验内容(1)硬件电路设计3.1.1单片机最小系统设计小车采用STC公司的STC89c52单片机作为控制芯片,如图是其最小系统电路。主要包括:时钟电路、电源电路、复位电路。其中各个部分的功能如下:1、时钟电路:给单片机提供一个外接的11.0592MHz的石英晶振。2、电源电路:给单片机提供5V电源。3、复位电路:在电压达到正常值时给单片机一个复位信号。3.1.2传感器设计电路左边是光电二极管的外形图,由发射二极管和接收管组成,如右图的电路示意图。A、K是红外发射二极管的正负极,C、E是接收管的正负极。因此只要A极接高电平、K极接低电平,红外发射管就能发出红外线。可以在传感器加上外围电路来检测接收管的信号,进而确定是否接受到反射回来的红外线。电路图根据反射式红外光电传感器的原理和内部结构,我们可以设计上面的电路,电阻主要起限流作用,电阻值常设置为:12510,20RRK。这样,如果接收管接收到反射回来的红外线,红外线接头导通,E管脚输出高电平,接近ccV;如果没有接受到反射回来的红外线,红外接收头不导通,E管脚输出低电平,接近GND。我们采用了3个ST188反射式红外光电传感器,分别放置在车头。其中,最中间的传感器压着黑线中心,旁边的两个传感器和中间的传感器分别相距比黑胶带的宽度稍宽一点,同时,为保证最边上留的宽度也刚好小于黑胶带的宽度,这样不管小车怎样在轨道上运行,都能够感应到黑色轨道。3.1.3LM324运放电路设计3.1.43.1.4直流电机驱动电路设计本系统使用的电机驱动板为ST298直流电动机可逆双极型桥式驱动器,其功率元件由四支N沟道功率MOSFET管组成,由此电路,通过设置52输出的PWM波的占空比可以达到控制电机转速的效果。电机驱动芯片L298N是SGS公司的产品,内部包含4通道逻辑驱动电路。是一种二相和四相电机的专用驱动器,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机。其引脚排列如图1中U4所示,1脚和15脚可单独引出连接电流采样电阻器,形成电流传感信号。L298可驱动2个电机,OUT1、OUT2和OUT3、OUT4之间分别接2个电动机。5、7、10、12脚接输入控制电平,控制电机的正反转,ENA,ENB接控制使能端,控制电机的停转。也利用单片机产生PWM信号接到ENA,ENB端子,对电机的转速进行调节。L298N的逻辑功能:表1SHARPGP2D12实物图外形及封装:L298N实物图L298N电路原理图:用L298驱动两台直流减速电机的电路。引脚6,9可用于PWM控制。如果机器人项目只要求直行前进,则可将5,10和7,12两对引脚分别接高电平和低电平,仅用单片机的两个端口给出PWM信号控制6,11即可实现直行、转弯、加减速等动作。IN15IN27ENA6OUT12OUT23ENB11OUT313OUT414IN310IN412SENSA1SENSB15GND8VS4VCC9U1L298+88.8kRPM+88.8kRPMD110BQ015D210BQ015D310BQ015D410BQ015D510BQ015D610BQ015D710BQ015D810BQ015+12+5C10.1uC2100uC30.1uC4100u3.1.5总电路设计3.2程序#includereg51.hvoidserial();voidxunji();sbitIN1=P2^0;sbitIN2=P2^1;//左轮sbitIN3=P2^2;sbitIN4=P2^3;//右轮sbitpl=P1^3;sbitpm=P1^4;sbitpr=P1^5;sbitEA1=P2^4;sbitEA2=P2^5;intflag;intcnt=0;voidmain(){serial();while(1){xunji();}}voidserial(){TMOD=0x01;TH0=(65535-1000)/256;TL0=(65535-1000)%256;EA=1;ET0=1;TR0=1;}voidTime0()interrupt1{TH0=(65535-1000)/256;TL0=(65535-1000)%256;cnt++;if(cnt10)cnt=0;}voidxunji(){if((pl==1)&&(pr==1))flag=0;if((pl==0)&&(pm==0))flag=1;if((pl==0)&&(pm==1))flag=2;if((pr==0)&&(pm==0))flag=3;if((pr==0)&&(pm==1))flag=4;switch(flag){case0://直走{if(cnt=3){EA1=1;EA2=1;IN1=1;IN2=0;IN3=1;IN4=0;}}break;case1://向左小幅度拐弯{if(cnt=2){EA1=0;EA2=1;IN1=0;IN2=0;IN3=1;IN4=0;}}break;case2://向左大幅度转弯{if(cnt=4){EA1=0;EA2=1;IN1=0;IN2=0;IN3=1;IN4=0;}}break;case3://向右小幅度转弯{if(cnt=2){EA1=1;EA2=0;IN1=1;IN2=0;IN3=0;IN4=0;}}break;case4://向右大幅度转弯{if(cnt=4){EA1=1;EA2=0;IN1=1;IN2=0;IN3=0;IN4=0;}}break;}}四、实验心得本设计主要用到了单片机的通用IO口的读写,定时器,中断等基本功能,通过实际操作进一步掌握了51单片机的使用。同时,通过单片机外围电路的设计,更深入学习了51单片机在嵌入式系统中的应用。通过实际焊接电路,编写程序,也进一步提高了我的动手能力以及分析解决错误的能力,是我能够更好的将所学知识应用到实际中来。在本次课程的设计中,我们遇到了很多困难和挑战,对很多知识都是一个重新的学习和认识的过程。在刚开始的一两天里,我们主要对设计的整体思路做大概的整理和了解,然后再详细的查找了解各芯片的功能作用以及源程序代码。在仿真这块,我们对仿真软件用的还不是很熟练,有些器件需要在网上查找和自己摸索才能在器件库中找到。我觉得我们还是练得太少,很多知识没有积累,很多事情没有经验。其中,我们的80C51的最小系统连得不是很充分,不过让我们熟悉了80C51的最小系统,以及它各管脚的作用,这次实验,我们做得相对简单,只是由三部分组成,传感器和比较放大电路,单片机,驱动电路。让我掌握了更多的知识;通过和大四学长的交流,更让我看到了我们小车更多的提升部分。此次课设我最深的一点感受就是,在遇到困难时,不要急躁,要想办法解觉问题。这次课设中,由于知识积累不够,导致一直不出结果,然后就很烦躁,很急很乱,有种拔苗助长的感觉。在检查电路和分析程序时,都静不下心来。虽然,暴露出了性格的许多缺点,但大家都能一直坚持,互相鼓励,从早到晚,周末不间断的在调试,毕竟也尽心尽力了。在以后遇到问题时,一定要沉着稳定,克服骄躁,坚持努力寻求解决问题的最佳方法。在焊电路时,要想连接电路首先要进行仿真,如果不进行仿真便冒然连接电路,假如结果不正确只会浪费精力浪费器件。架构完成整个电路进行仿真正确后开始连接电路。焊接电路时,一要注意电路布局,如果电路布局不合理会造成电路混路,且容易出错,如果连错电路甚至会烧毁器件。二要注意焊接质量,焊点要实在如果造成虚焊查错十分不易,焊点要圆滑有毛刺的焊点会有杂波影响电路质量。焊好电路后,传感器的出的电压值与理论测量较大,信号较弱然后经过我的仔细检查,对关键点的电压测量找出了问题所在,原来有一点焊点不牢。最后在千辛万苦之下终于完美收工这次课设锻炼了自己的思考能力和动手能力。通过题目选择和设计电路的过程中,加强了我们思考问题的完整性和实际生活联系的可行性。在方案设计选择和芯片的选择上,培养了我们综合应用单片机的能力,对单片机的各个管脚的功能也有了进一步的认识。还锻炼我们个人的查阅技术资料的能力,动手能力,发现问题,解决问题的能力。并且我们熟练掌握了有关器件的性能及测试方法。本系统能够基本满足设计要求,能够较快较平稳的是小车沿引导线行驶,但由于经验能力有限,该系统还存在着许多不尽人意的地方有待于进一步的完善。
本文标题:寻迹小车报告
链接地址:https://www.777doc.com/doc-4396551 .html