红外自动循迹小车实验报告
51红外循迹小车报告(舵机版)最终版

简易教程前言往届全国大学生电子设计竞赛曾多次出现了集光、机、电于一体的简易智能小车题目,此次,笔者在通过多次论证、比较与实验之后,制作出了简易小车的寻迹电路系统。
整个系统基于普通玩具小车的机械结构,利用小车的底盘、前后轮电机及其自动复原装置,能够平稳跟踪路面黑色轨迹运行。
系统分为检测、控制、驱动三个模块。
首先利用光电对接收管和路面信号进行检测,然后经过比较器处理,对软件控制模块进行实时控制,输出相应的信号给驱动芯片驱动电机转动,从而控制整个小车的运动。
智能小车能在画有黑线的白纸“路面”上行驶,这是由于黑线和白纸对光线的反射系数不同,小车可根据接收到的反射光的强弱来判断“道路”---黑线,最终实现简单的循迹运动。
个人水平有限,有错误不足之处,还望各位前辈同学多多包含,指出修正,完善。
谢谢!李学云王维2016年7月27号目录前言 (1)第一部分硬件设计 (1)1.1 车模选择 (1)1.2传感器选择 (1)1.3 控制模块选择 (2)第二部分软件设计及调试 (3)2.1 开发环境 (3)2.2总体框架 (3)2.3 舵机程序设计与调试 (3)2.3.1 程序设计 (3)2.3.2 调试 (3)2.3.3 程序代码 (4)2.4 传感器调试 (5)2.4.1 传感器好坏的检测 (5)2.4.2 单片机能否识别信号并输出信号 (5)2.5 综合调试 (7)附录1 (9)第一篇舵机(舵机及转向控制原理) (9)1.1概述 (9)1.2舵机的组成 (10)1.3舵机工作原理 (11)1.4舵机使用中应注意的事项 (12)1.5如何利用程序实现转向 (12)1.6舵机测试程序 (13)附录2 (14)第二篇光电红外传感器 (14)2.1传感器的原理 (14)2.2红外光电传感器ST188 结构图 (15)2.3传感器的选择 (15)2.4传感器的安装 (16)2.5使用方法 (16)2.7红外传感器输入输出调试程序 (17)一、课题任务及要求用360°连续舵机设计一个自动循迹小车,可以自动行驶并检测到地面黑色轨迹,沿着黑色轨迹行驶.二、小车行驶基本原理小车在白色地板上循黑线行走,由于黑线和白色地板对光线的反射系数不同,可以根据接收到的反射光的强弱来判断“道路”。
寻迹小车实验报告

自动寻迹小车设计报告一、系统设计1、设计要求(1)自动寻迹小车从安全区域启动。
(2)小车按检测路线运行,自动区分直线轨道和弯路轨道,在弯路处拐弯,实现灵活前进、转弯、等功能2.小车寻迹的原理这里的寻迹是指小车在白色地板上寻黑线行走,通常采取的方法是红外探测法。
红外探测法,即利用红外线在不同颜色的物体表面具有不同的反射性质的特点,在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色纸质地板时发生漫反射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,小车上的接收管接收不到红外光。
单片机就是否收到反射回来的红外光为依据来确定黑线的位置和小车的行走路线。
红外探测器探测距离有限,一般最大不应超15cm。
对于发射和接收红外线的红外探头,可以自己制作或直接采用集成式红外探头。
3、模块方案根据设计要求,本系统主要由控制器模块、寻迹传感器模块、直流电机及其驱动模块等构成。
控制器模块:控制器模块由AT89C51单片机控制小车的行走。
寻迹传感器模块:寻迹传感器用光电传感器ST188检测线路并反馈给单片机执行。
ST188采用高发射功率红外光电二极管和高灵敏度双光电晶体管组成。
检测距离:4--13mm直流电机及其驱动模块:直流电机用L298来驱动。
L298N是一个具有高电压大电流的全桥驱动芯片,它相应频率高,一片L298N可以分别控制两个直流电机,而且还带有控制使能端。
用该芯片作为电机驱动,操作方便,稳定性好,性能优良。
4.系统结构框图:二、硬件实现及单元电路设计1、微控制器模块的设计在本次设计中我们采用了AT89C51位主控制器。
它具有智能化,可编程,小型便携等优点。
2.光电传感器:本次试验我们采用了ST188光电传感器,ST188采用高发射功率红外光电二极管和高灵敏度双光电晶体管组成。
检测距离:4--13mm。
其连接电路图如下:3.直流电机及其驱动模块在直流电机驱动问题上,我们采用一片L298来驱动直流电机。
循迹小车实习报告

一、实习背景随着科技的发展,自动化技术在各个领域得到了广泛应用。
智能循迹小车作为自动化技术的一个重要应用,具有广泛的前景。
为了提高我们的实践能力,培养我们的创新精神,我们参加了智能循迹小车实习课程。
通过本次实习,我们学习了智能循迹小车的设计、制作和调试方法,了解了其工作原理,提高了我们的动手能力和团队协作能力。
二、实习目的1. 熟悉智能循迹小车的结构、原理和功能。
2. 掌握智能循迹小车的制作方法,提高动手能力。
3. 学习电路设计、传感器应用、单片机编程等知识。
4. 培养团队协作精神,提高沟通能力。
三、实习内容1. 智能循迹小车原理及结构智能循迹小车主要由以下几部分组成:车体、驱动电机、传感器、单片机、控制电路等。
车体是智能循迹小车的承载部分,驱动电机负责提供动力,传感器用于检测路面信息,单片机负责处理传感器信息,控制电路负责将单片机的指令转换为电机驱动信号。
2. 电路设计电路设计主要包括以下几个方面:(1)电源电路:为智能循迹小车提供稳定的电源。
(2)驱动电路:将单片机的控制信号转换为电机驱动信号。
(3)传感器电路:将传感器信号转换为单片机可识别的信号。
(4)控制电路:对单片机输出的控制信号进行放大、滤波等处理。
3. 传感器应用智能循迹小车主要采用红外传感器进行路面检测。
红外传感器具有体积小、成本低、安装方便等优点。
在制作过程中,我们需要对红外传感器进行调试,使其能够准确检测路面信息。
4. 单片机编程单片机编程是智能循迹小车实现智能控制的关键。
我们主要学习了C语言编程,掌握了单片机的基本指令、函数、中断等知识。
在编程过程中,我们需要编写程序,使单片机能够根据传感器信息控制小车行驶。
5. 调试与优化在制作过程中,我们需要对智能循迹小车进行调试,使其能够稳定、准确地行驶。
调试过程中,我们需要对电路、传感器、单片机等部分进行调整,以达到最佳效果。
四、实习成果通过本次实习,我们成功制作了一台智能循迹小车,并使其能够稳定、准确地行驶。
智能循迹小车实验报告

智能循迹小车实验报告第一篇:智能循迹小车实验报告摘要本设计主要有单片机模块、传感器模块、电机驱动模块以及电源模块组成,小车具有自主寻迹的功能。
本次设计采用STC公司的89C52单片机作为控制芯片,传感器模块采用红外光电对管和比较器实现,能够轻松识别黑白两色路面,同时具有抗环境干扰能力,电机模块由L298N芯片和两个直流电机构成,组成了智能车的动力系统,电源采用7.2V的直流电池,经过系统组装,从而实现了小车的自动循迹的功能。
关键词智能小车单片机红外光对管 STC89C52 L298N 1 绪论随着科学技术的发展,机器人的设计越来越精细,功能越来越复杂,智能小车作为其的一个分支,也在不断发展。
在近几年的电子设计大赛中,关于小车的智能化功能的实现也多种多样,因此本次我们也打算设计一智能小车,使其能自动识别预制道路,按照设计的道路自行寻迹。
设计任务与要求采用MCS-51单片机为控制芯片(也可采用其他的芯片),红外对管为识别器件、步进电机为行进部件,设计出一个能够识别以白底为道路色,宽度10mm左右的黑色胶带制作的不规则的封闭曲线为引导轨迹并能沿该轨迹行进的智能寻迹机器小车。
方案设计与方案选择3.1 硬件部分可分为四个模块:单片机模块、传感器模块、电机驱动模块以及电源模块。
3.1.1 单片机模块为小车运行的核心部件,起控制小车的所有运行状态的作用。
由于以前自己开发板使用的是ATMEL公司的STC89C52,所以让然选择这个芯片作为控制核心部件。
STC89C52是一种低损耗、高性能、CMOS八位微处理器,片内有4k字节的在线可重复编程、快速擦除快速写入程序的存储器,能重复写入/擦除1000次,数据保存时间为十年。
其程序和数据存储是分开的。
3.1.2 传感器模块方案一:使用光敏电阻组成光敏探测器采集路面信息。
阻值经过比较器输出高低电平进行分析,但是光照影响很大,不能稳定工作。
方案二:使用光电传感器来采集路面信息。
循迹小车报告

循迹小车设计报告学校:定西师范高等专科学校产品名称:循迹小车日期:二〇一一年八月十八日摘要:本设计是一种基于单片机控制的简易自动寻迹小车系统,包括小车系统构成软硬件设计方法。
小车以AT89C51 为控制核心, 用单片机产生PWM波,控制小车速度。
利用红外光电传感器对路面白色轨迹进行检测,并将路面检测信号反馈给单片机。
单片机对采集到的信号予以分析判断,及时控制驱动电机以调整小车转向,从而使小车能够沿着白色轨迹自动行驶,实现小车自动寻迹的目的。
循迹小车的电路系统包括电源模块、单片机模块、传感器模块、电机驱动模块。
一、工作原理:1.利用红外采集模块中的红外发射接收对管检测路面上的轨迹将轨迹信息送到单片机2.单片机通过输入的信息分别控制小车左右两个电机的转速,用来控制小车的方向3.最终完成智能小车可以按照路面上的白色轨迹运行二、设计方案该车采用红外传感器对白色路面进行道路检测,把采集到的信号传给AT89C51单片机,AT89C51单片机根据收到的信号判断小车当前状态,通过电机驱动芯片L298N发出控制命令,控制电机的工作状态以实现对小车姿态的控制。
三、硬件模块设计:3.1 电源模块:电源采用自制直流稳压电源,通过对220V的交流电压的变压,整流、滤波、稳压,分别输出12V和5V的直流电压。
用来给小车各模块供给所需电压。
电源电路如图:3.2电机驱动模块:电机驱动芯片L298N是SGS公司的产品,内部包含4通道逻辑驱动电路。
是一种二相和四相电机的专用驱动器,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机。
其引脚排列如图1中U4所示,1脚和15脚可单独引出连接电流采样电阻器,形成电流传感信号。
L298可驱动2个电机,OUT1、OUT2和OUT3、OUT4之间分别接2个电动机。
5、7、10、12脚接输入控制电平,控制电机的正反转,ENA,ENB 接控制使能端,控制电机的停转。
模拟循迹小车实验报告

一、实验目的1. 理解循迹小车的工作原理,掌握模拟循迹技术。
2. 学习使用传感器检测道路情况,并根据检测结果进行小车控制。
3. 提高嵌入式系统设计和编程能力。
二、实验原理循迹小车是一种能够按照预设轨迹运行的智能小车。
其工作原理是:通过安装在车身上的传感器检测道路情况,并将检测到的信息传输给单片机,单片机根据接收到的信息对小车进行控制,使小车按照预设轨迹运行。
本实验中,我们采用红外对管作为传感器,通过检测红外对管对光线反射的强弱来判断小车是否偏离预设轨迹。
当红外对管检测到光线反射较强时,表示小车偏离了预设轨迹;当红外对管检测到光线反射较弱时,表示小车位于预设轨迹上。
三、实验器材1. 单片机开发板(如STC89C52)2. 红外对管传感器3. 电机驱动模块4. 电机5. 轮胎6. 跑道7. 电阻、电容等电子元件8. 编程软件(如Keil)四、实验步骤1. 硬件连接:将红外对管传感器连接到单片机的I/O口,将电机驱动模块连接到单片机的PWM口,将电机连接到电机驱动模块。
2. 编程:编写程序,实现以下功能:(1)初始化红外对管传感器和电机驱动模块;(2)读取红外对管传感器的状态,判断小车是否偏离预设轨迹;(3)根据红外对管传感器的状态,控制电机驱动模块使小车按照预设轨迹运行。
3. 调试:将程序烧录到单片机中,进行调试。
观察小车是否能够按照预设轨迹运行。
五、实验结果与分析1. 实验结果:经过调试,小车能够按照预设轨迹运行。
2. 分析:(1)红外对管传感器能够有效地检测道路情况,判断小车是否偏离预设轨迹;(2)单片机能够根据红外对管传感器的状态,及时调整电机的转速,使小车按照预设轨迹运行;(3)电机驱动模块能够稳定地驱动电机,使小车运动平稳。
六、实验总结通过本次实验,我们掌握了模拟循迹小车的工作原理,学会了使用传感器检测道路情况,并根据检测结果进行小车控制。
同时,我们还提高了嵌入式系统设计和编程能力。
七、改进建议1. 可以尝试使用其他类型的传感器,如光电传感器、红外线传感器等,以提高循迹精度。
循迹小车研究报告

循迹小车研究报告1. 引言循迹小车是一种能够根据特定路线上的黑线进行自动导航的智能机器人。
该研究报告旨在探讨循迹小车的工作原理、应用领域以及未来发展趋势。
循迹小车在工业自动化、教育培训和娱乐等领域具有广泛的应用前景。
本报告将深入研究循迹小车的算法、传感器技术以及控制系统,并分析其在实际应用中的优势和局限性。
2. 工作原理循迹小车通过搭载在车身下方的红外传感器,来检测路线上的黑线。
传感器会发射红外光束,当红外光束碰触到黑线时,传感器会接收到反射回来的光束。
基于这个原理,通过检测反射光强的变化,循迹小车可以判断当前车辆所处的位置和方向。
3. 系统设计循迹小车的系统设计涵盖硬件和软件两个方面。
下面将分别讨论这两个方面的关键设计要素。
3.1 硬件设计循迹小车的硬件设计包括车身结构和传感器模块。
车身结构应具备稳定性和灵活性,以适应不同路面的运动需求。
传感器模块通常采用红外线传感器阵列,以提高检测精度和鲁棒性。
3.2 软件设计循迹小车的软件设计主要包括控制算法和用户界面。
控制算法用于处理传感器数据,判断小车应如何运动以跟随黑线。
用户界面则提供了交互操作的接口,用户可以通过界面实时监控车辆状态和调整路径规划。
4. 应用领域循迹小车在工业自动化、教育培训和娱乐领域都有广泛的应用。
4.1 工业自动化循迹小车可以在工厂流水线上配备传感器阵列,用于自动化物流和生产线控制。
它可以通过追踪黑线,识别并搬运特定物品,极大提高生产效率和减少人力成本。
4.2 教育培训循迹小车作为一种教育工具,可以帮助学生理解基本控制原理和编程思维。
学生可以通过编写控制程序,让循迹小车按照设定的路径行驶,提高对编程和算法的理解能力。
4.3 娱乐循迹小车的智能导航功能使其成为一种有趣的玩具。
用户可以通过操控界面,让小车在复杂迷宫中自动寻找最快捷的路径。
这不仅增加了娱乐性,还可以锻炼空间思维和逻辑推理能力。
5. 优势和局限性循迹小车作为一种智能机器人,具有以下优势和局限性。
红外寻迹小车实验报告

重庆交通大学计算机与信息学院综合性设计性实验报告班级:电子信息工程专业2013 级01 班姓名(学号):杨云森(631306020101)实验项目名称:红外循迹智能小车实验项目性质:设计性实验所属课程:电子设计实践实验室(中心):现代电子实验中心指导教师:李星星实验完成时间: 2016 年 6 月 17日一、实验目的学习智能小车的制作流程,加深对单片机开发的理解和应用二、实验内容及要求做好单片机外扩,电源模块,寻迹模块,驱动模块四块板子,使小车能够正常的循迹。
三、实验原理这里的循迹是指小车在地板白纸上循黑线行走,通常采取的方法是红外探测法。
激光探测法,即利用激光激光在黑白颜色的物体表面具有不同的反射性质的特点,在小车行驶过程中不断地向地面发射激光,当激光遇到白色纸质地板时发生漫反射,反射光被装在小车上的接收管接收;如果遇到黑线则激光被吸收,小车上的接收管接收不到激光。
单片机就是否收到反射回来的激光为依据来确定黑线的位置和小车的行走路线。
激光探测器探测距离可以比较远,一般有60cm 左右。
1. 单片机最小系统单片机最小系统采用5V供电,并接有指示灯, 5mA左右电流足以驱动LED,LED 导通电压1.7V左右,因此配上1K电阻;蜂鸣器由8550驱动,1N4007二极管起到保护左右。
单片机根据接收的按键输入数据和传感器输出电平信号,输出一定脉冲数控制电机A和电机B的转动,从而控制小车的运动。
2. 电源电路设计智能车控制系统中,不同电路模块需要的工作电压和电流容量各不相同。
芯片需要提供5V的工作电压,而电机所需的电压为9V,本设计中用到的是9V的电源供电,然后通过三端稳压器LM7805将电压变换为5V电压供给电路系统。
电源系统的电路图如图所示。
3.电机驱动电路设计电路采用PWM(脉冲宽度调制(PWM)是一种对模拟信号电平进行数字编码的方法。
通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要本实验完成采用红外反射式传感器的自寻迹小车的设计与实现。
采用与白色地面色差很大的黑色路线引导小车按照既定路线前进,在意外偏离引导线的情况下自动回位,并能显示小车停止的时间。
本设计采用单片机STC89C51作为小车检测、控制、时间显示核心,以实验室给定的车架为车体,两直流机为主驱动,附加相应的电源电路下载电路,显示电路构成整体电路。
自动寻迹的功能采用红外对管LTH1550实现,信号经三极管9012放大,经LM339电压比较器比较之后将信号送给单片机,由单片机通过控制驱动芯片L298N驱动电动小车的电机,实现小车的动作。
同时还可以将小车的停留时间通过四位数码管显示。
关键词:STC89C51单片机;红外对管LTH1550;红外传感器;寻迹一、系统设计任务与要求小车从上坡处开始行驶,到达坡顶停留5秒,由数码管显示停留时间,然后继续行驶,到达坡底开始沿黑线行驶,直到终点宽黑线停止。
二、方案分析与论证总体方案设计:根据题目,我们设计了以下方案并进行了综合的比较论证,自动寻迹电动小车系统由小车主体部分、微控制器模块、寻迹传感器模块、电机驱动模块、显示模块、电源模块构成。
2.1 总体方案论证与比较方案一:采用数字电路来组成小车的各部分系统,实现各部分功能。
本方案电路复杂,灵活性不高,效率低,不利于小车智能化的扩展,设计困难。
方案二:采用单片机来作为整机的控制单元。
黑线检测采用红外对管对光源信号进行采集,再经过三极管放大,电压比较使输出转化为数字信号送到单片机系统处理。
此系统比较灵活,采用软件方法来解决复杂的硬件电路部分,使系统硬件简洁化,各类功能易于实现,能很好地满足题目的要求。
方案二简洁、灵活、可扩展性好,能达到题目的设计要求,因此采用方案二来实现。
方案二的基本结构图如下:图1总体系统结构框图2.2 寻迹检测方案的选择方案一:采用CCD传感器。
利用CCD传感器进行自动导航的机器人已得到初步应用。
但CCD传感器价格较高,体积较大,数据处理复杂,不适合本次实验使用。
方案二:用红外对管作为寻迹传感器。
红外反射式传感器由1个红外发射管(发射器)和1个光电二极管(接收器)构成。
红外发射管发出的红外光在遇到反光性较强的物体(表面为白色或近白色)后被折回,被光电二极管接收到,引起光电二极管光生电流的增大。
将这个变化转为电压信号,该电压通过比较器LM339后转换为高电平(单片机的有效电平),检测出白线;若接收不到发射管发出的光线则输出为低电压,该电压通过比较器LM339后转换为低电平(单片机的有效电平),检测出黑线。
方案可行,且红外对管使用方便,所以选用方案二。
原理图见图2。
图2正确选择检测方法和传感器件是决定循迹效果的重要因素,而且正确的器件安装方法也是循迹电路好坏的一个重要因素。
从简单、方便、可靠等角度出发,同时在底盘装设5个红外探测头,进行两级方向纠正控制,将大大提高其循迹的可靠性。
2.3 电机驱动方案的选择方案一:采用继电器对电动机的开或关进行控制,通过开关的切换对小车的进行调整.此方案的优点是电路较为简单,缺点是继电器的响应时间慢,易损坏,寿命较短,可靠性不高。
方案二:采用专用芯片L298N作为电机驱动芯片。
L298N是一个具有高电压大电流的全桥驱动芯片,它相应频率高,一片L298N可以分别控制两个直流电机,而且还带有控制使能端。
用该芯片作为电机驱动,操作方便,稳定性好,性能优良。
因此决定采用方案三.2.4 电机的选择方案一:采用步进电机,步进电机具有快速启动和停止能力,其转换灵敏度比较高,正转、反转控制灵活。
但是步进电机的价格比较昂贵,且该实验对小车速度等没有特殊要求,因而,不选用该方案。
方案二:采用普通的直流电机。
直流电机具有优良的调速特性,调速平滑、方便。
调整范围广;过载能力强,能承受频繁的冲击负载,可实现频繁的无极快速启动、制动和反转。
可以满足实验要求。
2.5 稳压模块的选择7805稳压芯片使用方便,用很简单的电路即可以输入一个直流稳压电源,使其输出电压恰好为5v,达到逻辑电路电压要求,因此,直接选用7805作为稳压芯片,将电压稳压至5V给单片机系统和其他芯片供电。
2.6 显示模块方案的选择方案一:使用液晶显示屏显示时间。
液晶显示屏(LCD)优点是:低耗电量、无辐射危险,平面直角显示以及影象稳定不闪烁等优势,可视面积大,画面效果好,分辨率高,抗干扰能力强等。
缺点是:液晶显示屏是以点阵的模式显示各种符号,需要利用控制芯片创建字符库。
编程工作量大,控制器的资源占用较多,在使用时,不能有静电干扰,否则易烧坏液晶的显示芯片,不易维护,其成本也偏高。
并且本系统只需要显示时间,信息量比较少,因此并不适于选用液晶显示屏。
方案二:使用数码管显示行驶时间。
数码管具备数字接口,显示清晰,价格较低,作为时间显示的器件性价比非常高,方便易行。
决定采用数码管显示行驶时间.三、单元电路设计3.1控制部分设计:小车控制单元是整个小车运行的核心部件,起着控制小车所有运行的作用。
本实验采用的是STC89C51单片机。
控制部分设计包括单片机的复位电路及起振电路。
单片机晶体振荡模块采用最常用的内部时钟方式,即用外接晶体和电容组成的并联谐振回路。
振荡晶体选择11.0592MHz。
具体电路见图3。
单片机启动运行时,都需要先复位,单片机本身是不能自动进行复位的,必须配合相应的外部电路复位。
复位电路采用按键手动复位,电路见图4。
图3 图43.2寻迹部分设计题目要求小车要沿着画出的黑线运动,但在运动过程中,车体不可避免地会偏离运动轨迹,为了能使车体在偏离后可以自动调整方向,重新回到运动轨迹上,系统需要将车体的运动状态及时地以电信号的形式反馈到控制部分,控制部分控制两个电机的左转,右转,使小车重新回到轨迹上。
本设计中共使用5个集成的红外对管LTH1550装在车体的前方。
当检测到黑线时,红外对管的接收端接收到黑白线反射回来的红外光,其输出经LM339电压比较器后立即发生高低电平转换,该信号经9012放大后送到单片机进行分析处理。
然后将处理后的结果发送到电机驱动模块,进行校正。
电路见图5。
图53.3.驱动部分设计由于单片机输出的信号不仅点压偏低,而且负载能力不够,不能用来直接驱动电机L298N驱动芯片是性能优越的小型直流电机驱动芯片之一。
它可被用来驱动二个直流电机。
在4—6V的电压下,可以提供2A的驱动电流。
L298N还有过热自动关断功能,并有反馈电流检测功能,符合电机驱动的需要。
因此需要使用驱动芯片L298N,单片机输出的信号,经过L298N实现功率的放大,从而驱动电机工作。
L298N芯片是一种高压,大电流双全桥式驱动器,其设计是为接受标准TTL逻辑电平信号和驱动电感负载的.电路图见图6.图63.4稳压部分设计直流电机需要6V供电,但是单片机需要的电压是5V,这就需要稳压片将6V左右的电压较为准确的控制为5V,而6V的电压直接给直流电机供电,保证用一路信号实现两路功能。
首先将电压源输出的6V转换为5V直流稳压电源,实现方法是应用滤波电路(电解电容)使电压变为平稳的直流电,然后通过稳压电路即7805使输出5V直流稳压供给单片机及驱动芯片的相应电压。
电路见图7。
图73.5.显示部分设计本实验采用四位共阳极数码管进行数码显示,它有四个位选,由于本实验只需显示小车停止行驶的时间,因而只需选通一位位选线,当各段阴极上的电平为“0”时,该段点亮,电平为“1”时,该段熄灭。
数码管与单片机之间通过反相器74LS04连接,具体电路见图8。
图83.6下载电路设计下载电路用来下载程序,其中用MAX232实现电平转化,将PC机输出的RS-232(12V)电平转化为标准的TTL电平(5V)。
电路见图9。
图9四、系统软件设计4.1 主程序流程图寻迹子程序中红外对管与小车偏转方向关系如表一.:表一五、系统功能测试5.1测试仪器及设备测试仪器及设备如表2:仪器名称型号数量电源HH1713 直流稳压电源1双踪示波器COS5040CH 1电脑方正科技1万用表DT9025A 1导线若干5.2 安装调试及测量数据分析整机焊接完毕,首先对硬件进行检查联线有无错误,再逐步对各模块进行调试。
我负责的电源部分,驱动部分,黑线寻迹部分,具体测试过程如下:1.电源测试过程6V电压输入,经稳压片7805之后的电压为4.80V,电压在4.8~5.2V之间,所以该部分符合要求。
2.驱动部分测试过程将驱动部分与单片机正确连接之后,在单片机中写入电机控制小程序,控制其转动与停止,用万用表测试输出电压正常。
3.黑线寻迹部分测试首先,通过调每一路的电位器(50K),使9012的C管脚输出电压为4.7V~4.8V,然后调节10K的电位器,使其两端的电压为2.9V左右,作为阈值电压。
设置好阈值电压之后,将电路板上有红外对管的那一面朝下,分别对着白纸和黑线,测每个红外对管的输出信号经电压比较器之后的电压,数据记录如表3:由测量结果可知,每个红外对管检测到白纸和黑线的输出电压均位于阈值电压两侧,且相差较大,经反相器比较后可以立即发生高低电平的转换,符合要求。
至此,这三部分硬件调试完毕。
整体综合调试将所有模块连接(加入最小系统,显示部分),检查连接无误之后,写入总程序。
开始整车测试,数码管有显示,但是小车电机不转,但有很轻的声音从电机中发出,想到可能是驱动电路部分电压不够,在输入电压加到6.4V后测试过程一切正常。
六.结论完成了控制部分各模块的焊制及连接,以及51版的程序下载,数码管按照既定的计划轮换闪亮.七:结束语在实验过程中,由于焊接的工艺不是很到位,初次完成电路板的焊制并下载程序后,数码管并没有亮,通过检查焊点并更换排针排线,克服了接触不良的故障,由于是自己完成实验的控制部分,故小车实际上并没有真正按照设计目的行驶,但同样在这次实验中,熟悉了MCS51的功能及焊制方法,以及程序的下载方法,在老师的帮助下,感觉收获很大.八.附录1.总电路图(见图9,图10)图9图102.元件表(见表三)元件名称规格数量STC89C51 1MAX232 174LS04 1 四位一体数码管LG5641BH 1 9针串口 1晶振11.0592MHz 1按键 1直流电机6V 2L298N 13.程序#include <reg51.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned int //定义用uint表示无符号整形常量sbit wei0=P2^0;sbit wei1=P2^1;sbit wei2=P2^2;sbit wei3=P2^3;/*****电机控制部分的数据定义********/sbit a0=P1^0; //分别用a0,b0,a1,b1替代P1口的P0到sbit b0=P1^1; //P3引脚sbit a1=P1^2;sbit b1=P1^3;/*********寻迹部分的变量定义**********/sbit lefter_det=P3^2; //最左边的红外信号传给P3^2 sbit left_det=P3^3; //左边的红外信号传给P3^3 sbit mid_det=P3^4; //中间的红外信号传给P3^4 sbit right_det=P3^5; //右边的红外信号传给P3^5sbit righter_det=P3^6; //最右边的红外信号传给P3^6 bit mid,left,lefter,right,righter, stop; //一些标志位,用来表示偏向哪边,从而做出适当的调整void status(void);void run_forward(void);void turn_left (void);void turn_lefter(void);void turn_righter(void);void turn_right(void);void stop_run(void);uchar code dis_7[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82, 0xF8,0x80,0x90};/***********寻迹模块***************///void status(void) //高电平说明检测到信号{if(lefter_det&&righter_det) //全都检测到信号,说明小车到达终点{left=0;lefter=0;mid=0;right=0;righter=0;stop_run();}else if(mid_det){left=0;lefter=0;mid=1;right=0;righter=0;run_forward(); }else if(left_det) {left=0;lefter=0;mid=0;right=1;righter=0;turn_left(); }else if(right_det) {left=1;lefter=0;mid=0;right=0;righter=0;turn_right(); }else if(lefter_det) {left=0;lefter=0;mid=0;right=0;righter=1;turn_lefter();}else if(righter_det) {left=0;lefter=1;mid=0;right=0;righter=0;turn_righter(); }else{left=0;lefter=0;mid=1;right=0;righter=0;run_forward();}}void run_forward(void) {P1=0xcc;}void turn_left(void){P1=0x0c;}void turn_right(void) {P1=0xc0;}void turn_lefter(void) {P1=0x0c;}void turn_righter(void) {P1=0xc0;}void stop_run(void){P1=0x00;}void delay (uchar x) {uchar i,j,k;for (i=0;i<x;i++){for (j=0;j<100;j++)for (k=0;k<100;k++);}}void xianshi (){uchar i;wei0=1;wei1=1;wei2=1;wei3=0;for (i=1;i<6;i++){P0=dis_7[i];delay(20);}}void xianshi2 (){wei0=1;wei1=1;wei2=1;wei3=1;P0=0x00;}/*主函数*/main(){run_forward() ;delay (100);stop_run() ;xianshi ();xianshi2 ();while(1){if (P3==0x00) {run_forward() ;}else{status();}}}。