智能循迹小车___设计报告
智能循迹小车___设计报告
智能循迹小车___设计报告设计报告:智能循迹小车一、设计背景智能循迹小车是一种能够通过感知地面上的线条进行导航的小型机器人。
循迹小车可以应用于许多领域,如仓库管理、物流配送、家庭服务等。
本设计旨在开发一款功能强大、性能稳定的智能循迹小车,以满足不同领域的需求。
二、设计目标1.实现循迹功能:小车能够准确地识别地面上的线条,并按照线条进行导航。
2.提供远程控制功能:用户可以通过无线遥控器对小车进行控制,包括前进、后退、转向等操作。
3.具备避障功能:小车能够识别和避开遇到的障碍物,确保行驶安全。
4.具备环境感知功能:小车能够感知周围环境,包括温度、湿度、光照等参数,并将数据传输给用户端。
5.高稳定性和可靠性:设计小车的硬件和软件应具备较高的稳定性和可靠性,以保证长时间的工作和使用。
三、设计方案1.硬件设计:(1) 采用Arduino控制器作为主控制单元,与传感器、驱动器等硬件模块进行连接和交互。
(2)使用红外传感器作为循迹传感器,通过检测地面上的线条来实现循迹功能。
(3)使用超声波传感器来检测小车前方的障碍物,以实现避障功能。
(4)添加温湿度传感器和光照传感器,以提供环境感知功能。
(5)将无线模块与控制器连接,以实现远程控制功能。
2.软件设计:(1) 使用Arduino编程语言进行程序设计,编写循迹、避障和远程控制的算法。
(2)设计用户界面,通过无线模块将控制信号发送给小车,实现远程控制。
(3)编写数据传输和处理的程序,将环境感知数据发送到用户端进行显示和分析。
四、实施计划1.硬件搭建:按照设计方案中的硬件模块需求,选购所需元件并进行搭建。
2.软件开发:根据设计方案中的软件设计需求,编写相应的程序并进行测试。
3.功能调试:对小车的循迹、避障、远程控制和环境感知功能进行调试和优化。
4.性能测试:使用不同场景和材料的线条进行测试,验证小车的循迹性能。
5.用户界面开发:设计用户端的界面,并完成与小车的远程控制功能的对接。
智能寻迹小车设计报告
目录1.项目设计目的 (1)2.项目设计正文 (3)2。
1.项目分析及方案制定 (3)2。
2.设计步骤及流程图 (4)2。
2.1.寻迹设计步骤 (4)2。
2。
2.流程图 (4)2.3.主要模块介绍 (4)2。
3。
1.LM393 (4)2。
3.1.1 LM393的主要特点 (4)2.3。
1。
2 LM393引脚图及内部框图 (5)2。
3。
1.3 LM393 功能简介 (5)2。
3。
2.89C2051 (5)2.3.2。
1 89C2051简介 (5)2.3.2.2 89C2051 主要性能参数 (5)2.3。
2.3 89C2051 功能特性概述 (6)2.4.电路设计及PCB绘制 (6)2。
4。
1.电源电路 (6)2.4。
2.红外收发电路 (6)2。
4.3.电机驱动电路 (7)2。
4。
4.单片机最小系统 (7)2。
4。
5. 整体电路 (8)2。
4.6。
PCB板的绘制 (8)2.5. 成品展示 (9)3.项目设计总结 (9)4.参考文献 (10)智能寻迹小车——CDIO三级项目王君杰(电子信息工程1501 150070116)一、项目设计目的在科技飞速发展的今天,智能化的概念已经渗入到各行各业,自动控制系统也出现在生活的方方面面,早到工厂的机械化生产,近到目前的自动驾驶.越来越多的领域涉及到电控制技术。
特别是使用单片机一类的MCU的控制,在生活中越来越常见。
因此,基于单片机控制的电路的学习和时间对于我们来说就显得尤为重要。
同时,对于单片机作为软件主控单元,结合模电数电的硬件电路支持的综合项目开发,也是作为大学生需要了解并且熟练运用的基础。
掌握了这些知识,对于我们以后的职业发展也有着莫大的帮助。
二、项目设计正文2.1、项目分析及方案制定首先对于“智能寻迹小车”这个标题而言,我们可以分为两个部分:小车和智能寻迹。
“小车"决定了硬件电路的大致构成:电源、电容、电阻、开关、电机、LED.而“智能”则决定了一些高级电路的选用:MCU、传感器、电机驱动、电位器及一些IC。
智能循迹小车___设计报告
智能循迹小车___设计报告智能循迹小车设计专业:自动化班级:自动化132姓名:罗植升莫柏源梁桂宾指导老师:2014年4月——2010年6月本课题是基于STC89C52单片机的智能小车的设计与实现,小车完成的主要功能是能够自主识别黑色引导线并根据黑线走向实现快速稳定的寻线行驶。
小车系统以 STC89C52单片机为系统控制处理器;采用红外传感获取赛道的信息,来对小车的方向和速度进行控制。
此外,对整个控制软件进行设计和程序的编制以及程序的调试,并最终完成软件和硬件的融合,实现小车的预期功能。
当今世界,传感器技术和自动控制技术正在飞速发展,机械、电气和电子信息已经不再明显分家,自动控制在工业领域中的地位已经越来越重要,“智能”这个词也已经成为了热门词汇。
现在国外的自动控制和传感器技术已经达到了很高的水平,特别是日本,比如日本本田制作的机器人,其仿人双足行走已经做得十分逼真,而且具有一定的学习能力,还据说其智商已达到6岁儿童的水平。
作为机械行业的代表产品—汽车,其与电子信息产业的融合速度也显著提高,呈现出两个明显的特点:一是电子装置占汽车整车(特别是轿车)的价值量比例逐步提高,汽车将由以机械产品为主向高级的机电一体化方向发展,汽车电子产业也很有可能成为依托整车制造业和用车提升配置而快速成为新的增长点;二是汽车开始向电子化、多媒体化和智能化方向发展,使其不仅作为一种代步工具、同时能具有交通、娱乐、办公和通讯等多种功能。
无容置疑,机电一体化人才的培养不论是在国外还是国内,都开始重视起来,主要表现在大学生的各种大型的创新比赛,比如:亚洲广播电视联盟亚太地区机器人大赛(ABU ROBCON)、全国大学生“飞思卡尔”杯智能汽车竞赛等众多重要竞赛都能很好的培养大学生对于机电一体化的兴趣与强化机电一体化的相关知识。
但很现实的状况是,国内不论是在机械还是电气领域,与国外的差距还是很明显的,所以作为机电一体化学生,必须加倍努力,为逐步赶上国外先进水平并超过之而努力。
智能循迹小车课程设计报告
智能循迹小车课程设计报告一、课程设计目标:本次智能循迹小车课程设计的目标是让学生了解智能硬件的基础知识,掌握基本电子元器件的原理及使用方法,学习控制系统的组成和运行原理,并通过实践操作设计出一款功能齐全的智能循迹小车。
二、课程设计内容及步骤:1. 调研与分析——首先要对市面上现有的智能循迹小车进行调研与分析,了解各种类型的循迹小车的特点和优缺点,为后续的设计提供参考。
2. 硬件选型——根据课程设计目标和实际需要,选择合适的主控芯片、电子元器件和传感器等硬件。
3. 原理图设计——根据硬件选型,设计出对应的原理图,并在硬件上进行布局与焊接。
4. 程序设计——先在电路板上测试硬件是否正常,随后进行程序设计,根据传感器的反馈控制小车的运动,让小车能够沿着黑线自动循迹行驶,同时加入避障功能和自动寻迹功能。
5. 调试与优化——完成程序设计后,要对小车进行全面验收测试,发现问题及时解决并优化相关程序。
三、设计思路:本次课程设计基于树莓派电路板,利用循迹模块实现小车的自动循迹和自动寻迹。
同时将超声波模块结合避障算法实现小车的自动避障。
小车的外壳采用3D打印技术制作,操作简单实用。
四、课程设计效果:通过本课程设计,学生们从理论到实践,了解了智能硬件的基础知识,掌握了基本电子元器件的原理及使用方法,学习了控制系统的组成和运行原理。
同时,实践操作过程中,学生们培养了动手能力和实际操作的技能。
通过制作一台智能循迹小车,学生们对智能硬件的认识更加深入,并获得了较高的设计满足感。
五、课程设计展望:智能循迹小车是智能硬件应用领域的一项重要发明,具有广泛的应用前景。
未来,可以将循迹小车应用于快递、物流等行业,实现自动化送货、配送。
同时可以将遥控技术与循迹技术相结合,设计出更加高效、实用的智能循迹小车,推动智能化生产和工作环境。
2024年度-智能循迹小车设计
智能循迹小车设计目录•项目背景与意义•系统总体设计•循迹算法研究•控制系统设计•调试与测试•项目成果展示•总结与展望01项目背景与意义智能循迹小车概述定义智能循迹小车是一种基于微控制器、传感器和执行器等技术的自主导航小车,能够按照预定路径进行自动循迹。
工作原理通过红外、超声波等传感器感知周围环境信息,将感知数据传输给微控制器进行处理,微控制器根据预设算法控制执行器调整小车行驶状态,实现循迹功能。
随着工业自动化的发展,智能循迹小车在生产线、仓库等场景中的应用需求不断增加。
自动化需求教育领域需求娱乐领域需求智能循迹小车作为教学实验平台,在高等教育、职业教育等领域具有广泛应用前景。
智能循迹小车可以作为玩具或模型车进行娱乐竞技活动,满足消费者休闲娱乐需求。
030201市场需求分析通过本项目的研究与实践,掌握智能循迹小车的核心技术,包括传感器技术、微控制器技术、控制算法等。
技术目标将智能循迹小车应用于实际场景中,提高生产效率、降低成本、提升产品品质等方面的效益。
应用目标通过智能循迹小车的研发与教学应用,培养学生动手实践能力、创新精神和团队协作能力。
教育意义推动智能循迹小车相关产业的发展,促进就业和经济增长,提升国家科技竞争力。
社会意义项目目标与意义02系统总体设计主控制器传感器模块电机驱动模块电源管理模块总体架构设计01020304负责接收和处理传感器数据,控制小车运动。
包括红外传感器、超声波传感器等,用于感知环境和障碍物。
驱动小车前进、后退、转弯等动作。
为整个系统提供稳定可靠的电源。
硬件选型及配置选用高性能、低功耗的微控制器,如STM32系列。
选用高灵敏度、低误差的传感器,如红外反射式传感器、超声波测距传感器等。
选用高效、稳定的电机驱动器,如L298N电机驱动板。
选用合适的电池和电源管理芯片,确保系统长时间稳定运行。
主控制器传感器模块电机驱动模块电源管理模块初始化模块传感器数据处理模块运动控制模块调试与测试模块软件功能划分负责系统启动时的初始化工作,包括硬件初始化、参数设置等。
智能循迹小车实验报告
智能循迹小车实验报告第一篇:智能循迹小车实验报告摘要本设计主要有单片机模块、传感器模块、电机驱动模块以及电源模块组成,小车具有自主寻迹的功能。
本次设计采用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 传感器模块方案一:使用光敏电阻组成光敏探测器采集路面信息。
阻值经过比较器输出高低电平进行分析,但是光照影响很大,不能稳定工作。
方案二:使用光电传感器来采集路面信息。
智能循迹小车设计报告
电子作品设计报告项目名称:智能小车学院:机电工程学院专业:应用电子技术班级:09应电(1)班组别: 第三组姓名:杨磊赖焕宁梁广生指导老师:杨青勇玉宁目录摘要: (3)关键词: (3)引言: (3)一、系统设计 (3)1。
1设计要求 (4)1。
2车体方案认证与选择 (4)二、硬件设计及说明 (5)2.1原理图设计 (5)2。
1。
1稳压电源 (5)2。
1.2基本系统 (5)2。
1。
3电机驱动 (5)2。
1.4液晶显示部分 (6)2。
1。
5RS485数据总线 (6)2。
1.6循迹部分 (7)2.2PCB设计 (7)2.2。
1主板PCB (7)2.2.2循迹板PCB (8)三、软件设计及说明 (8)四、系统测试过程 (10)五、总结 (11)六、附录 (11)附录一:系统元器件清单 (11)附件二:系统测试源程序 (12)摘要:本组的智能小车是采用凌阳的车架,是以两个电机来驱动小车,主板部分自行设计。
通过接收器MAX1483来采集信息,传送进主控芯片PIC16F886单片机,进行数据处理后,送进驱动芯片L293D以完成相应的操作。
采用反射式红外光电传感器ST178来实现小车自动循迹功能,并且整个过程采用液晶显示屏RT1602来显示相应的数据。
关键词:PIC16F886 L293D 反射式红外光电传感器ST178 自动循迹引言:近现代,随着电子科技的迅猛发展,人们对技术也提出了更高的要求。
汽车的智能化在提高汽车的行驶安全性,操作性等方面都有巨大的优势,在一些特殊的场合下也能满足一些特殊的需要。
智能小车系统涉及到自动控制,车辆工程,计算机等多个领域,是未来汽车智能化是一个不可避免的大趋势。
本文设计的小车以PIC16f886 为控制核心,用反射式红外光电传感器作为检测元件实现小车的自动循迹前行,并显示等功能.一、系统设计本组智能小车的硬件主要有以PIC16f886 作为核心的主控器部分、自动循迹部分、显示部分、电机驱动部分。
智能循迹小车___设计报告
智能循迹小车设计专业:自动化班级: 0804班姓名:指导老师:2010年8月——2010年10月摘要:本课题是基于AT89C52单片机的智能小车的设计和实现,小车完成的主要功能是能够自主识别黑色引导线并根据黑线走向实现快速稳定的寻线行驶。
小车系统以 AT89S52 单片机为系统控制处理器;采用红外传感获取赛道的信息,来对小车的方向和速度进行控制。
此外,对整个控制软件进行设计和程序的编制以及程序的调试,并最终完成软件和硬件的融合,实现小车的预期功能。
引言当今世界,传感器技术和自动控制技术正在飞速发展,机械、电气和电子信息已经不再明显分家,自动控制在工业领域中的地位已经越来越重要,“智能”这个词也已经成为了热门词汇。
现在国外的自动控制和传感器技术已经达到了很高的水平,特别是日本,比如日本本田制作的机器人,其仿人双足行走已经做得十分逼真,而且具有一定的学习能力,还据说其智商已达到6岁儿童的水平。
作为机械行业的代表产品—汽车,其和电子信息产业的融合速度也显著提高,呈现出两个明显的特点:一是电子装置占汽车整车(特别是轿车)的价值量比例逐步提高,汽车将由以机械产品为主向高级的机电一体化方向发展,汽车电子产业也很有可能成为依托整车制造业和用车提升配置而快速成为新的增长点;二是汽车开始向电子化、多媒体化和智能化方向发展,使其不仅作为一种代步工具、同时能具有交通、娱乐、办公和通讯等多种功能。
无容置疑,机电一体化人才的培养不论是在国外还是国内,都开始重视起来,主要表现在大学生的各种大型的创新比赛,比如:亚洲广播电视联盟亚太地区机器人大赛(ABU ROBCON)、全国大学生“飞思卡尔”杯智能汽车竞赛等众多重要竞赛都能很好的培养大学生对于机电一体化的兴趣和强化机电一体化的相关知识。
但很现实的状况是,国内不论是在机械还是电气领域,和国外的差距还是很明显的,所以作为机电一体化学生,必须加倍努力,为逐步赶上国外先进水平并超过之而努力。
智能循迹小车实验报告
智能循迹小车实验报告一、实验目的本次实验旨在设计并实现一款能够自主循迹的智能小车,通过传感器检测路径信息,控制小车的运动方向,使其能够沿着预定的轨迹行驶。
通过本次实验,深入了解自动控制、传感器技术和单片机编程等方面的知识,提高实际动手能力和问题解决能力。
二、实验原理1、传感器检测本实验采用红外传感器来检测小车下方的黑线轨迹。
红外传感器由红外发射管和接收管组成,当发射管发出的红外线照射到黑色轨迹时,反射光较弱,接收管接收到的信号较弱;当照射到白色区域时,反射光较强,接收管接收到的信号较强。
通过比较接收管的信号强度,即可判断小车是否偏离轨迹。
2、控制算法根据传感器检测到的轨迹信息,采用 PID 控制算法(比例积分微分控制算法)来计算小车的转向控制量。
PID 算法通过对误差(即小车偏离轨迹的程度)进行比例、积分和微分运算,得到一个合适的控制输出,使小车能够快速、准确地回到轨迹上。
3、电机驱动小车的动力由直流电机提供,通过电机驱动芯片(如 L298N)来控制电机的正反转和转速。
根据控制算法计算出的转向控制量,调整左右电机的转速,实现小车的转向和前进。
三、实验器材1、硬件部分单片机开发板(如 STM32 系列)红外传感器模块直流电机及驱动模块电源模块小车底盘及车轮杜邦线、面包板等2、软件部分Keil 等单片机编程软件串口调试助手四、实验步骤1、硬件搭建将红外传感器模块安装在小车底盘下方,使其能够检测到黑线轨迹。
将直流电机与驱动模块连接,并安装在小车底盘上。
将单片机开发板、传感器模块、驱动模块和电源模块通过杜邦线连接起来,搭建好实验电路。
2、软件编程使用单片机编程软件,编写传感器检测程序、控制算法程序和电机驱动程序。
通过串口调试助手,将编写好的程序下载到单片机开发板中。
3、调试与优化启动小车,观察其在轨迹上的行驶情况。
根据小车的实际行驶情况,调整 PID 控制算法的参数,优化小车的循迹性能。
不断测试和改进,直到小车能够稳定、准确地沿着轨迹行驶。
循迹小车课程设计报告
智能循迹小车设计与制作课程设计报告系别:专业:班级:成员:指导老师:时间:二〇一一年6月30日一、设计目的:1、学会智能电子产品的功能设计与任务分析,能进行小型电子产品方案设计;2、掌握基于51单片机、FPGA模数混合硬件系统设计和程序设计;3、熟悉电子信息类企业项目完整的运作过程及管理规范,培养团队协作能力、沟通能力、创新能力和组织能力。
二、智能循迹小车任务分析这是一种基于STC89C51单片机的小车寻迹系统。
该系统采用两组高灵敏度的光电对管,对路面黑色(白色)轨迹进行检测,并利用单片机产生PWM波,控制小车速度。
测试结果表明,该系统能够平稳跟踪给定的路径。
整个系统基于普通玩具小车的机械结构,并利用了小车的底盘、前后轮电机及其自动复原装置,能够平稳跟踪路面黑色轨迹运行三、智能循迹小车循迹原理该智能小车在画有黑线的白纸“路面”上行驶,由于黑线和白纸对光线的反射系数不同,可根据接收到的反射光的强弱来判断“道路”—黑线。
利用了简单、应用比较普遍的检测方法—发光二极管+光敏电阻。
发光二极管+光敏电阻,即利用光线在不同颜色的物理表面具有不同的反射性质的特点。
在小车行驶过程中不断地向地面发射白光,当白光遇到白色地面时发生漫发射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,则小车上的接收管接收不到信号。
四、智能循迹小车总体方案整个电路系统分为检测、控制、显示、驱动四个模块。
首先利用光电对管对路面信号进行检测,经过比较器处理之后,送给软件控制模块进行实时控制,然后显示小车的运行状态,输出相应的信号给驱动芯片驱动电机转动,从而控制整个小车的运动。
系统方案方框图如图1所示。
图1 智能小车寻迹系统框图五、智能循迹小车各模块方案1、循迹模块设计方案1:用红外发射管:接收管自己制作光电对管循迹传感器。
红外发射管发出红外线,当发出的红外线照射到白色的平面后反射,若红外接收管能接收到反射回的光线则检测出白线继而输出低电平,若接收不到发射出的光线则测出黑线继而输出高电平。
智能巡线小车设计报告
智能巡线小车设计报告一、引言智能巡线小车是一种能够自主识别线路并沿线行驶的机器人小车。
它利用多种传感器和控制系统,能够实时感知环境,并做出相应的行驶决策。
本设计报告将详细介绍智能巡线小车的设计思路、硬件组成和软件实现。
二、设计思路智能巡线小车的设计思路主要包括以下几个方面:1. 线路识别:通过摄像头获取图像信息,利用图像处理算法识别出线路的位置和方向。
2. 行驶控制:根据线路识别结果,通过控制系统调整小车的速度和方向,保持小车在线路上行驶。
3. 环境感知:通过其他传感器如红外传感器、超声波传感器等,实时感知周围环境的障碍物,并对小车的行驶做出相应的调整。
4. 远程控制:提供远程控制的功能,通过无线通信模块与小车建立通信连接,实现对小车的遥控操作。
三、硬件组成智能巡线小车的硬件组成主要包括以下几个组件:1. 主控制器:使用单片机或者嵌入式开发板作为主控制器,负责接收各种传感器数据、处理运算并实现相应的控制算法。
2. 摄像头:用于获取环境图像,采集线路的位置和方向信息。
3. 电机驱动模块:控制小车的电机转动,实现小车的前进、后退、转弯等功能。
4. 传感器模块:包括红外传感器、超声波传感器等,用于感知周围环境的障碍物。
5. 无线通信模块:通过无线通信模块与遥控器或者其他设备建立连接,实现远程控制功能。
四、软件实现智能巡线小车的软件实现主要包括以下几个模块:1. 图像处理算法:利用图像处理算法对摄像头采集的图像进行处理,提取线路的位置和方向信息。
2. 行驶控制算法:根据线路识别结果,调整电机驱动模块控制小车的速度和方向,让小车保持在线路上行驶。
3. 环境感知算法:利用传感器模块采集的数据,判断周围环境是否有障碍物,并根据情况调整小车的行驶路线。
4. 远程控制算法:在无线通信模块的支持下,实现与遥控器或者其他设备之间的通信,接收远程控制指令,实现远程遥控小车的功能。
五、实施计划本项目的实施计划如下:1. 准备阶段:收集相关资料,设计硬件电路图和软件流程图,并购买所需的元器件。
智能循迹小车设计报告(总17页)
智能循迹小车设计报告(总17页)一、设计目的本项目旨在设计一款运用机器视觉技术的智能循迹小车,能够自主寻找指定路径并行驶,可用于实现自动化物流等应用场景。
二、设计方案2.1 系统概述本系统基于STM32F103C8T6单片机和PiCamera进行设计。
STM32F103C8T6单片机负责循迹小车的控制和编码器的反馈信息处理,PiCamera则用于实现图像识别和路径规划,两者之间通过串口进行通讯。
2.2 硬件设计2.2.1 循迹模块循迹模块采用红外传感器对黑线进行探测,通过检测黑线与白底的反差判断小车的行驶方向。
本设计采用5个红外传感器,每个传感器分别对应小车行驶时的不同位置,通过对这5个传感器的读取,可以获取小车所在的实际位置和前进方向。
电机驱动模块采用L298N电机驱动模块,通过PWM信号来控制电机的转速和方向。
左右两侧的电机分别接到L298N模块的IN1~IN4引脚,电机转向由模块内部的电路通过PWM 信号控制。
2.2.4 Raspberry PiRaspberry Pi用于图像处理和路径规划。
本设计使用PiCamera进行图像采集,在RPi 上运行OpenCV进行图像处理,识别道路上的黑线,并通过路径规划算法计算出循迹小车当前应该行驶的方向,然后将该方向通过串口传输给STM32单片机进行控制。
本设计的系统结构分为三个层次:传感器驱动层、控制层、应用层。
其中,传感器驱动层实现对循迹小车上的传感器的读取和解析,生成对应的控制指令;控制层对控制指令进行解析和执行,控制小车的运动;应用层实现图像处理和路径规划,将路径信息传输给控制层进行控制。
在应用层,本设计采用基于灰度阈值的图像处理算法,通过寻找图像中的黑色线条,将黑色线条和白色背景分离出来,以便进行路径规划。
路径规划采用最短路径算法,计算出循迹小车当前应该行驶的方向,然后将该方向发送给控制层进行控制。
2.4 可行性分析本设计的硬件设计采用常见的模块化设计,采用Arduino Mega作为基础模块,通过模块之间的串口通信实现对整个系统的控制,扩展性和可维护性良好。
智能小车循迹报告
电工电子实习报告学院:专业班级:学生姓名:指导教师:完成时间:成绩:智能循迹小车设计报告一. 设计要求(1).通过理论学习掌握基本的焊接知识以及电子产品的生产流程。
(2).熟悉掌握手工焊接的方法与技巧。
(3).完成循迹智能小车的安装与调试二. 设计的作用、目的1.利用所学过的基础知识,通过本次电子实习培养独立解决实际问题的能力;2.巩固本课程所学的理论知识和实验技能;3.掌握常用电子电路的一般设计方法,提高设计能力和实验、动手能力,为今后从事电子电路的设计、研制电子产品打下基础。
三.设计的具体实现1. 系统概述智能机器人小车的设计中我们使用的是一体反射式红外对管,所谓一体就是发射管和接受管固定在一起,反射式的工作原理就是接收管接收到的信号是发射管发出的红外光经过反射物的反射后得到的,所以使用红外对管进行循迹时必须是白色地板红外寻迹是利用红外光电对管对路面信号进行检测,经过比较器处理之后,送给软件控制模块进行实时控制,输出相应的信号给驱动芯片驱动电机转动,从而控制整个小车的运动。
(为简化操作,本次实习只安装了两侧的探头)1)行驶直线的控制:利用红外传感器的左右最外端的探头检测黑线,如果全白则说明在道中间,没有偏离轨道,走直线;一旦右侧探头检测到黑线,说明小车外侧探头已跑出轨道,让车左拐;同理一旦左侧检测到黑线,说明左侧探头已经出线,执行右拐命令。
2)拐直角弯的控制:当车前探头检测到黑线,执行直走,让车中心探头去检测,一旦探头检测到黑线开始左拐,直到车位探头检测到跳出左拐命令,继续开始执行循迹,通过设置车中间探头与车尾探头的间距,便可以实现拐弯的角度,进而顺利入弯。
小车的硬件主要包括4大模块:即电源模块、电机驱动模块、红外循迹模块、简易控制模块。
系统工作框图如下:2.单元电路设计与分析1)电源模块电源模块电路板LM2596 开关电压调节器是降压型电源管理单片集成电路,能够输出3A 的驱动电流,同时具有很好的线性和负载调节特性。
课程设计报告循迹小车的设计
循迹小车的设计摘要智能循迹是基于自动引导机器人系统,用以实现小车自动识别路线,以及选择正确的路线。
智能循迹小车是一个运用传感器、单片机、电机驱动及自动控制等技术来实现按照预先设定的模式下,不受人为管理时能够自动实现循迹导航的高新科技。
该技术已经应用于汽车制造业、仓储业,食品加工业等多个行业。
本设计是基于单片机控制的电动小车,小车能够识别地上黑色轨迹线,实现循迹行走,包括电源模块、单片机模块、循迹模块、电机驱动模块。
其中单片机模块作为控制器模块以STC89C52单片机为控制核心,用单片机产生PWM波,控制小车速度。
利用红外光电传感器RPR220型光电对管对路面黑色轨迹进行检测,并将路面检测信号反馈给单片机。
单片机对采集到的信号进行分析判断,及时控制由芯片L298N驱动的电机以调整小车转向,从而使小车能够沿着黑色轨迹自动行驶,实现小车自动寻迹的目的。
在此基础利用E18-D80NK 3-80cm可调红外避障传感器进行小车的避障扩展,还选用PT2262/PT2272组成的无线遥控模块对小车进行无线遥控。
本设计不仅给出了硬件设计流程、完整的硬件电路图和控制程序,还用PROTEUS实现了小车电机控制仿真。
关键词:自动循迹;单片机;Proteus仿真Design on Automated Guided VehicleAbstractIntelligent tracking is based on automatic guided robot system, used to make the car line, and choosing the right route. Automated Guided Vehicle is a use of sensor, microcontroller, motor drive and automatic control technology to achieve according to the preset mode, without human management can achieve automatic tracking navigation technology. This technology has been applied in the automobile manufacturing industry, warehousing industry, food processing industry and other industries.The design is based on SCM control electric trolley, trolley can be identified on the black line, achieve the tracking of walking, including driving module power supply module, microcontroller module, tracking module, motor. The MCU module as the controller module with STC89C52 as control core, using microcontroller PWM wave, control car speed. The tube is used for tracing the use of infrared photoelectric sensor RPR220 type photoelectric, and road test signals back to the scm. Analysis and judgment of the collected signal microcontroller, timely control of motor driven by the chip L298N to adjust the car steering, so that the car can travel along the black path automatically, realize the purpose of automatic tracing. Based on E18-D80NK 3-80cm tunable infrared sensors for obstacle avoidance of car obstacle avoidance, also use wireless remote control module composed of PT2262/PT2272 for wireless remote control car.This design not only gives the hardware circuit diagram and program control hardware design flow, complete, we also use PROTEUS to achieve the car motor control simulation.Key words:tracking,microcontroller, Proteus simulation西华大学课程设计目录摘要 (Ⅰ)ABSTRACT (Ⅱ)1 绪论 (1)1.1智能循迹小车概述 (1)1.1.1循迹小车的发展历程回顾 (1)1.1.2 智能循迹分类 (2)1.1.3 智能循迹小车的应用 (3)1.2 智能循迹小车研究中的关键技术 (4)2 自动循迹小车系统方案设计 (5)2.1 自动循迹小车基本原理 (5)2.2 总体方案设计 (5)2.2.1 系统总体方案的设计 (5)2.2.2 方案选择与论证 (5)3 硬件电路的设计 (8)3.1 自动循迹小车硬件设计.................................. 错误!未定义书签。
循迹小车课设报告
循迹小车课设报告一、引言循迹小车作为自动控制领域的研究热点之一,具有很高的应用价值。
本文旨在介绍循迹小车的设计原理、硬件配置和软件实现,以及实验结果和分析。
二、设计原理循迹小车的设计原理基于反射光线的特性。
通过使用光敏传感器,可以感知地面上的光强度,从而判断小车应该如何行驶。
当地面上的光强度较高时,代表小车离开了黑色轨迹,需要调整方向。
当地面上的光强度较低时,代表小车仍在黑色轨迹上,可以继续沿着当前方向行驶。
三、硬件配置为了实现循迹小车的功能,需要以下硬件配置:1. 电机驱动模块:用于控制小车的速度和方向。
2. 光敏传感器模块:用于感知地面上的光强度。
3. 微控制器:作为控制中心,接收传感器的信号并控制电机驱动模块。
四、软件实现循迹小车的软件实现主要包括以下几个方面:1. 信号采集和处理:通过光敏传感器采集地面上的光强度信号,并对信号进行处理,得到小车应该采取的行动。
2. 控制算法:根据信号处理的结果,通过控制算法计算小车需要调整的方向和速度。
3. 电机控制:将控制算法得到的结果转化为电机的控制信号,控制小车的运动。
五、实验结果和分析在实验中,我们使用了一个简化的迷宫轨迹作为测试场景。
通过对循迹小车的实际测试,我们得到了以下结果和分析:1. 小车能够准确地沿着迷宫轨迹行驶,避免偏离轨迹。
2. 在遇到环形轨迹时,小车能够正确地判断出前进的方向,避免进入死循环。
3. 在遇到多个分支轨迹时,小车能够根据光强度的变化选择正确的分支。
六、总结通过本次循迹小车课设,我们深入了解了循迹小车的设计原理和实现方式。
循迹小车具有广泛的应用前景,可以在工业自动化、智能仓储等领域发挥重要作用。
同时,本次实验也展示了我们团队的合作能力和创新思维。
希望今后能够进一步完善循迹小车的性能,并将其应用于实际生产中。
以上就是本次循迹小车课设报告的内容,通过对循迹小车的设计原理、硬件配置和软件实现的介绍,以及实验结果和分析,我们对循迹小车有了更深入的了解。
智能巡线小车设计报告
方案一:采用两个电源供电,将电动机驱动电源以及其周边电路与单片机电源分别供电,由于单片机得电压较低,而电机需要得电压较高,容易使单片机电压过高而损坏,使用两个电池供电,可以提高系统稳定性,但就是多一组电池,增加了小车得质量,同时也增加了小车得惯性,降低了灵敏度。
方案二:采用单一电源供电。电源直接给单片机供电,通过单片机得IO口连接到电动机上,这样输出得电压稳定,同时也减轻了小车得质量,使小车更加灵活.但就是加高得电压提高了损坏单片机得风险。
通过这种编码器,我们通过它来直接给单片机传送脉冲信号,读取数据,然后进行轮子周长得计算来计算出距离。
图13流程框图
2.5声光报警模块
当系统检测到终点信号时,由主控芯片控制蜂鸣器间歇性鸣响,同时四个发光二极管开始工作,用此时得相应作为到达终点得报警信号。
具体电路如下:
图14声光报警模块电路图
3.系统程序设计及算法分析
4――z(y)2IN13――z(y)2IN2
2――z(y)1pwmIN1――z(y)2pwmIN
2.3LCD显示模块
我们采用1602液晶显示对我们所测得得比赛时间与路程,1602控制相对简单,成本也相对较低,因此我们选用1602作为显示模块.
简介:
工业字符型液晶,能够同时显示16x02即32个字符。(16列2行)
红外探测法,即利用红外线在不同颜色得物体表面具有不同得反射性质得特点,在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色纸质地板时发生漫反射,反射光被装在小车上得接收管接收;如果遇到黑线则红外光被吸收,小车上得接收管接收不到红外光.单片机就就是否收到反射回来得红外光为依据来确定黑线得位置与小车得行走路线.
经经验比较,L298N驱动模块运行可靠,取得效果较好,而且电路得电气性能与散热性能较好,此设计选用L298N驱动模块.
循迹小车报告精选全文完整版
可编辑修改精选全文完整版创新制作循迹小车制作报告班级:学号:姓名:一、设计方案路面检测模块电路检测路面信息,区分黑色与白面,并形成相对应的高电平与低电平提供给单片机;单片机对路面循迹模块提供的高低电平进行分析,并形成相应的对策(直行、左转、右转和停止等),并将其转化成对应的电压输出给电机驱动模块;电机驱动模块根据单片机提供的电压信号驱动对应的电机,得到与对策相同的执行动作;电源模块电路为三个模块提供所需要的电。
电路框图如下图所示:电路框图二、路面检测模块工作原理一对光电开光的发射管不停的发射红外光,经过路面发射回来的被接受管接收到。
因为白色路面和黑线对光的反射不同,所以正对白色路面的光电对管的接收管接收到更多的红外光,而正对黑线的光电对管的接收管收到较少的红外光。
经过光电开关的接收电路将接收到红外光的多少转化为正相关的电流大小,并进一步转化成接收电路的输出电压(A点电压)的较小值和较大值。
输出电压的较小值和较大值进一步与一个居中的基准电压分别进行比较,对应比较器的输出端(C点)分别为高电平还是低电平,并进一步输出给单片机,同时对应指示发光管的不亮与亮。
路面循迹模块电路如下图所示:D1路面循迹模块电路三、单片机最小系统单片机最小系统包括了时钟电路和复位电路。
时钟电路为单片机工作提供基本时钟,复位电路用于将单片机内部各电路的状态恢复到初始值。
单片机是一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号下严格地按时序进行工作。
时钟电路用于产生单片机工作所需要的时钟信号。
时钟信号的产生是在MCS-51系列单片机内部有一个高增益反相放大器,其输入端引脚为XTAL1,其输出端引脚为XTAL2。
只要在XTAL1和XTAL2之间跨接晶体振荡器和微调电容,就可以构成一个稳定的自己振荡器。
复位电路由一个按键、电解电容和电阻组成,它是使CPU 和系统中的其他功能部件都恢复到一个确定的初始状态,并从这个状态开始工作。
智能循迹小车___设计报告
本技术报告主要分为三个部分。第一部分是对整个系统实现方 法的一个概要说明,主要内容是对整个技术原理的概述;第二部分 是对硬件电路设计的说明,主要介绍系统传感器的设计及其他硬件 电路的设计原理等;第三部分是对系统软件设计部分的说明,主要 内容是智能模型车设计中主要用到的控制理论、算法说明及代码设 计介绍等。
本课题是基于 STC89C52 单片机的智能小车的设计与实现,小车 完成的主要功能是能够自主识别黑色引导线并根据黑线走向实现快 速稳定的寻线行驶。小车系统以 STC89C52 单片机为系统控制处理
器; 采用红外传感获取赛道的信息,来对小车的方向和速度进行控制。 此外,对整个控制软件进行设计和程序的编制以及程序的调试,并 最终完成软件和硬件的融合,实现小车的预期功能。
摘要:
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,力根通保据过护生管高产线中工敷资艺设料高技试中术卷资,配料不置试仅技卷可术要以是求解指,决机对吊组电顶在气层进设配行备置继进不电行规保空范护载高与中带资负料荷试下卷高问总中题体资,配料而置试且时卷可,调保需控障要试各在验类最;管大对路限设习度备题内进到来行位确调。保整在机使管组其路高在敷中正设资常过料工程试况中卷下,安与要全过加,度强并工看且作护尽下关可都于能可管地以路缩正高小常中故工资障作料高;试中对卷资于连料继接试电管卷保口破护处坏进理范行高围整中,核资或对料者定试对值卷某,弯些审扁异核度常与固高校定中对盒资图位料纸置试,.卷保编工护写况层复进防杂行腐设自跨备动接与处地装理线置,弯高尤曲中其半资要径料避标试免高卷错等调误,试高要方中求案资技,料术编试交写5、卷底重电保。要气护管设设装线备备置敷4高、调动设中电试作技资气高,术料课中并3中试、件资且包卷管中料拒含试路调试绝线验敷试卷动槽方设技作、案技术,管以术来架及避等系免多统不项启必方动要式方高,案中为;资解对料决整试高套卷中启突语动然文过停电程机气中。课高因件中此中资,管料电壁试力薄卷高、电中接气资口设料不备试严进卷等行保问调护题试装,工置合作调理并试利且技用进术管行,线过要敷关求设运电技行力术高保。中护线资装缆料置敷试做设卷到原技准则术确:指灵在导活分。。线对对盒于于处调差,试动当过保不程护同中装电高置压中高回资中路料资交试料叉卷试时技卷,术调应问试采题技用,术金作是属为指隔调发板试电进人机行员一隔,变开需压处要器理在组;事在同前发一掌生线握内槽图部内 纸故,资障强料时电、,回设需路备要须制进同造行时厂外切家部断出电习具源题高高电中中源资资,料料线试试缆卷卷敷试切设验除完报从毕告而,与采要相用进关高行技中检术资查资料和料试检,卷测并主处且要理了保。解护现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。
智能循迹避障小车报告
摘要:本智能识别小车以STC89C52单片机为控制芯片,以直流电机,光电传感器,超声波传感器,电源电路以及其他电路构成。
系统由STC89C52通过IO口,通过红外传感器检测黑线,利用单片机输出PWM脉冲控制直流电机的转速和转向,循迹由TCRT5000型光电对管完成。
一、系统设计1、小车循迹,避障原理这里的循进是指小车在白色地板上寻黑线行走,通常采取的方法是红外探测法。
红外探测法,即利用红外a在不同颜色的物体表面具有不同的反射性质的特点,在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色地板时,发生漫反射反射光被装在小车上的按收管按收;如果遇到黑线则红外光被吸收,小车上的接收管接收不到红外光,单片机就是否收到反射回来的红外光为依据来确定黑线的位置和小车的行走路线。
红外探测器探测距离有限一殷最大不应超过3cm。
而避障则是通过超声波模块不断向前方发射超声波信号,通过接收反射回来的超声波信号,从而实现的避障。
当前方有障碍物时,超声波会向单片机串口发送一串数字,这些数字就是当前小车距离障碍物得距离。
当串口接收到信号时,会引发串口中断,单片机通过读取距离值,并且对此数值进行分析是不是距离小车很近,是的话就进行转向;否则继续循迹。
当小车遇到第一个障碍后,就计数一次,这样当遇到第二个障碍物时,小车就可以以不同的形式躲避障碍物了。
2、选用方案(1):采用成品的小车地盘,通过改装来完成任务;(2):采用STC89C52单片机作为主控制器;(3):采用7V电源经7805稳压芯片降压后为其他芯片及器件供电。
(4):采用TCRT5000型红外传感器进行循迹;(5):L298N作为直流电机的驱动芯片;(6):通过对L298N使能端输入PWM来控制电机转速和转向;3、系统机构框图如下所示:二、硬件实现及单元电路设计与分析1、微控制模块设计与分析微控制器模块我们采用STC89C52。
该芯片采用双列直插是封装,便于焊接,性能比较稳定,而且在市场上也是比较廉价的单片机。
基于STM32智能循迹避障小车(设计报告)
基于STM32智能循迹避障小车(设计报告)具有丰富的外设和存储器资源,能够满足本设计的需求。
在硬件方面,采用了红外对管和超声波传感器来检测道路上的轨迹和障碍物,并通过PWM调速来控制电动小车的速度。
在软件方面,采用MDK(keil)软件进行编程,实现对小车的自动循迹和避障,快慢速行驶,以及自动停车等功能。
设计方案本设计方案主要分为硬件设计和软件设计两个部分。
硬件设计部分主要包括电路原理图的设计和PCB的制作。
在电路原理图的设计中,需要将stm32芯片、红外对管、超声波传感器、电机驱动模块等元器件进行连接。
在PCB的制作中,需要将电路原理图转化为PCB布局图,并进行钻孔、贴片等工艺流程,最终得到完整的电路板。
软件设计部分主要包括程序的编写和调试。
在程序的编写中,需要先进行芯片的初始化设置,然后分别编写循迹、避障、速度控制等功能的代码,并将其整合到主函数中。
在调试过程中,需要通过串口调试工具来进行数据的监测和分析,以确保程序的正确性和稳定性。
实验结果经过多次实验测试,本设计方案实现了对电动小车的自动循迹和避障,快慢速行驶,以及自动停车等功能。
在循迹和避障方面,红外对管和超声波传感器的检测精度较高,能够准确地控制小车的运动方向和速度;在速度控制方面,PWM调速的方式能够实现小车的快慢速行驶,且速度控制精度较高;在自动停车方面,通过超声波传感器检测到障碍物后,能够自动停车,确保了小车的安全性。
结论本设计方案采用stm32为控制核心,利用红外对管和超声波传感器实现对电动小车的自动循迹和避障,快慢速行驶,以及自动停车等功能。
在硬件方面,电路结构简单,可靠性能高;在软件方面,采用MDK(keil)软件进行编程,实现了程序的稳定性和正确性。
实验测试结果表明,本设计方案能够满足题目的要求,具有一定的实用性和推广价值。
内核采用ARM32位Cortex-M3 CPU,最高工作频率为72MHz,1.25DMIPS/MHz,具有单周期乘法和硬件除法功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
智能循迹小车设计专业:自动化班级:自动化132姓名:罗植升莫柏源梁桂宾指导老师:2014年4月——2010年6月摘要:本课题是基于STC89C52单片机的智能小车的设计与实现,小车完成的主要功能是能够自主识别黑色引导线并根据黑线走向实现快速稳定的寻线行驶。
小车系统以 STC89C52单片机为系统控制处理器;采用红外传感获取赛道的信息,来对小车的方向和速度进行控制。
此外,对整个控制软件进行设计和程序的编制以及程序的调试,并最终完成软件和硬件的融合,实现小车的预期功能。
引言当今世界,传感器技术和自动控制技术正在飞速发展,机械、电气和电子信息已经不再明显分家,自动控制在工业领域中的地位已经越来越重要,“智能”这个词也已经成为了热门词汇。
现在国外的自动控制和传感器技术已经达到了很高的水平,特别是日本,比如日本本田制作的机器人,其仿人双足行走已经做得十分逼真,而且具有一定的学习能力,还据说其智商已达到6岁儿童的水平。
作为机械行业的代表产品—汽车,其与电子信息产业的融合速度也显著提高,呈现出两个明显的特点:一是电子装置占汽车整车(特别是轿车)的价值量比例逐步提高,汽车将由以机械产品为主向高级的机电一体化方向发展,汽车电子产业也很有可能成为依托整车制造业和用车提升配置而快速成为新的增长点;二是汽车开始向电子化、多媒体化和智能化方向发展,使其不仅作为一种代步工具、同时能具有交通、娱乐、办公和通讯等多种功能。
无容置疑,机电一体化人才的培养不论是在国外还是国内,都开始重视起来,主要表现在大学生的各种大型的创新比赛,比如:亚洲广播电视联盟亚太地区机器人大赛(ABU ROBCON)、全国大学生“飞思卡尔”杯智能汽车竞赛等众多重要竞赛都能很好的培养大学生对于机电一体化的兴趣与强化机电一体化的相关知识。
但很现实的状况是,国内不论是在机械还是电气领域,与国外的差距还是很明显的,所以作为机电一体化学生,必须加倍努力,为逐步赶上国外先进水平并超过之而努力。
为了适应机电一体化的发展在汽车智能化方向的发展要求,提出简易智能小车的构想,目的在于:通过独立设计并制作一辆具有简单智能化的简易小车,获得项目整体设计的能力,并掌握多通道多样化传感器综合控制的方法。
所以立“智能循迹小车”一题作为尝试。
此项设计是在以杨老师提供的小车为基础上,采用AT89C52单片机作为控制核心,实现能够自主识别黑色引导线并根据黑线走向实现快速稳定的寻线行驶。
一、实验目的:通过设计进一步掌握51单片机的应用,特别是在嵌入式系统中的应用。
进一步学习51单片机在系统中的控制功能,能够合理设计单片机的外围电路,并使之与单片机构成整个系统。
二、设计方案:该智能车采用红外传感器对赛道进行道路检测,单片机根据采集到的信号的不同状态判断小车当前状态,通过电机驱动芯片L9110发出控制命令,控制电机的工作状态以实现对小车姿态的控制。
三、报告内容安排:本技术报告主要分为三个部分。
第一部分是对整个系统实现方法的一个概要说明,主要内容是对整个技术原理的概述;第二部分是对硬件电路设计的说明,主要介绍系统传感器的设计及其他硬件电路的设计原理等;第三部分是对系统软件设计部分的说明,主要内容是智能模型车设计中主要用到的控制理论、算法说明及代码设计介绍等。
技术方案概要说明本模型车的电路系统包括电源管理模块、单片机模块、传感器模块、电机驱动模块。
工作原理:利用红外采集模块中的红外发射接收对管检测路面上的轨迹 将轨迹信息送到单片机单片机采用模糊推理求出转向的角度和行走速度,然后去控制行走部分最终完成智能小车可以按照路面上的轨迹运行。
硬件电路的设计1、最小系统:小车采用STC89C52单片机作为控制芯片,图1是其最小系统电路。
主要包括:时钟电路、电源电路、复位电路。
其中各个部分的功能如下:1、时钟电路:给单片机提供一个外接的12MHz的石英晶振。
2、电源电路:给单片机提供5V电源。
3、复位电路:在电压达到正常值时给单片机一个复位信号。
图1 单片机最小系统原理图2、电源电路设计:模型车通过自身系统,采集赛道信息,获取自身速度信息,加以处理,由芯片给出指令控制其前进转向等动作,各部分都需要由电路支持,电源管理尤为重要。
在本设计中,51单片机使用5V电源,电机及舵机使用6V电源。
考虑到电源为充电电池组,额定电压为7.2V,实际充满电后电压则为 6.5-6.8V,所以单片机及传感器模块采用7805稳压后的5V电源供电,舵机及电机直接由电池供电。
3、传感器电路:光电寻线方案一般由多对TCRT5000红外收发管组成,通过检测接收到的反射光强,判断黑白线。
原理图由红外对管和电压比较器两部分组成,红外对管输出的模拟电压通过电压比较器转换成数字电平输出到单片机。
图2 赛道检测原理图:4、电机驱动电路:电机驱动芯片L9110,内部包含4通道逻辑驱动电路。
是一种二相和四相电机的专用驱动器,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机。
其引脚排列如图1中U4所示,1脚和15脚可单独引出连接电流采样电阻器,形成电流传感信号。
L9110可驱动2个电机,OUT1、OUT2和OUT3、OUT4之间分别接2个电动机。
5、7、10、12脚接输入控制电平,控制电机的正反转,ENA,ENB接控制使能端,控制电机的停转。
也利用单片机产生PWM信号接到ENA,ENB端子,对电机的转速进行调节。
L9110的逻辑功能:表1 SHARP GP2D12实物图外形及封装:图3 L9110实物图L9110电路原理图:由于一片L298N可以直接驱动两个电机,但是为了加大驱动力,我们采用两路并联的方式来驱动电机。
图3.3 L9110电路图软件系统的实现小车循迹规则:若小车偏左的时候,车轮将向右偏转;若小车偏右,车轮将向左偏转;若没有偏移,小车将继续向前;若小车完全偏离黑色轨迹,小车后退以寻找黑色轨迹。
小车程序:#include <AT89X52.h> //调用51单片机的头文件#include <intrins.h>#include <math.h>#define uchar unsigned char//宏定义#define uint unsigned int//宏定义sbit you1=P1^3;//定义单片机控制右边电机的引脚sbit you2=P1^4;//定义单片机控制右边电机的引脚sbit zuo1=P1^5;//定义单片机控制左边电机的引脚sbit zuo2=P1^6;//定义单片机控制左边电机的引脚sbit z=P1^1;//定义单片机连接循迹板左边光电管的引脚sbit y=P1^0;//定义单片机连接循迹板右边光电管的引脚sbit q=P1^2;//定义单片机连接循迹板前边光电管的引脚sbit chongshua=P3^6;//定义单片机控制冲刷的引脚sbit tuodi=P3^7;//定义单片机控制拖地的引脚//---------------------------------------//1602液晶相关I/O设置sbit E=P2^3; //1602液晶的E脚接在P2.3口上sbit RW=P2^4; //1602液晶的RW脚接在P2.4口上sbit RS=P2^5; //1602液晶的RS脚接在P2.5口上//HC-SR04相关I/O设置sbit TIRG=P3^4; //定义IO口,具体可以去查看原理图sbit ECHO=P3^2; //定义IO口,具体可以去查看原理图bit flag =0;uchar k;uchar a=0;//定义一个变量a,用来读取串口的数据void delay(uint z)//一个带参数的延时程序{int i,j;//定义两个变量for(i=10;i>0;i--)for(j=z;j>0;j--);//将参数z赋值给j}void init()//初始化子程序{TMOD=0x20;//设置定时器T1为工作方式2TH1=0xfd;TL1=0xfd;//T1定时器装初值TR1=1;//启动定时器T1REN=1;//允许串口接收SM0=0;SM1=1;//设置串口工作方式1EA=1;//开总中断ES=1;//开串口中断}void qian()//左右轮协同前进子函数{you1=0;you2=1;zuo1=0;zuo2=1;delay(6);//pwm调速此为pwm有效值you1=1;you2=1;zuo1=1;zuo2=1;delay(4);}void zuo()//左右轮协同左转子函数{you1=0;you2=1;zuo1=1;zuo2=0;delay(9);//pwm调速此为pwm有效值you1=1;you2=1;zuo2=1;delay(1);}void mzuo()//左右轮协同左转子函数{you1=0;you2=1;zuo1=1;zuo2=0;delay(10);//pwm调速此为pwm有效值you1=1;you2=1;zuo1=1;zuo2=1;delay(5);}void you()//左右轮协同右转子函数{you1=1;you2=0;zuo1=0;delay(9);//pwm调速此为pwm有效值you1=1;you2=1;zuo1=1;zuo2=1;delay(1);}void myou()//左右轮协同右转子函数{you1=1;you2=0;zuo1=0;zuo2=1;delay(10);//pwm调速此为pwm有效值you1=1;you2=1;zuo1=1;zuo2=1;delay(5);}void hou()//左右轮协同前进子函数{you1=1;you2=0;zuo1=1;zuo2=0;delay(9);//pwm调速此为pwm有效值you1=1;you2=1;zuo1=1;zuo2=1;delay(1);}void ting()//左右轮都停止转动{you1=1;you2=1;zuo1=1;zuo2=1;}void Delay1602(unsigned int t){unsigned int k; //定义一个16位寄存器用来做延时用for(k=0;k<t;k++); //延时}void LCD1602_busy(void){P0_7=1; //将P0.7置1,为读状态做准备RS=0; //RS=0、RW=1、E=1时,忙信号输出到DB7,由P0.7读入RW=1; //RS=0、RW=1、E=1时,忙信号输出到DB7,由P0.7读入E=1; //RS=0、RW=1、E=1时,忙信号输出到DB7,由P0.7读入while(P0_7==1); //由P0.7读入1,表示1602液晶忙,需要等待 E=0; //读完以后,恢复E的电平}void LCD1602_Write_com(unsigned char combuf){RS=0; //选择指令寄存器RW=0; //选择写状态P0=combuf; //将命令字通过P0口送至DBE=1; //E高电平将命令字写入1602液晶 E=0; //写完以后,恢复E的电平}void LCD1602_Write_com_busy(unsigned char combuf){LCD1602_busy(); //调用忙检测函数LCD1602_Write_com(combuf); //调用忙检测函数}void LCD1602_Write_data_busy(unsigned char databuf){LCD1602_busy(); //调用忙检测函数RS=1; //选择数据寄存器RW=0; //选择写状态P0=databuf; //将命令字通过P0口送至DBE=1; //E高电平将命令字写入1602液晶E=0; //写完以后,恢复E的电平}void LCD1602_Write_address(unsigned char x,unsigned char y){x&=0x0f; //列地址限制在0-15间y&=0x01; //行地址限制在0-1间if(y==0) //如果是第一行LCD1602_Write_com_busy(x|0x80); //将列地址写入else //如果是第二行LCD1602_Write_com_busy((x+0x40)|0x80); //将列地址写入}void LCD1602_init(void){Delay1602(1500); //调用延时函数LCD1602_Write_com(0x38); //8位数据总线,两行显示模式,5*7点阵显示Delay1602(500); //调用延时函数LCD1602_Write_com(0x38); //8位数据总线,两行显示模式,5*7点阵显示Delay1602(500); //调用延时函数LCD1602_Write_com(0x38); //8位数据总线,两行显示模式,5*7点阵显示LCD1602_Write_com_busy(0x38); //8位数据总线,两行显示模式,5*7点阵显示LCD1602_Write_com_busy(0x08); //显示功能关,无光标LCD1602_Write_com_busy(0x01); //清屏LCD1602_Write_com_busy(0x06); //写入新的数据后,光标右移,显示屏不移动LCD1602_Write_com_busy(0x0C); //显示功能开,无光标}void LCD1602_Disp(unsigned char x,unsigned char y,unsigned char buf) {LCD1602_Write_address(x,y); //先将地址信息写入LCD1602_Write_data_busy(buf); //再写入要显示的数据}void Timer0(void) interrupt 1{flag=0;}void xunji(){qian();//调用前进子函数,使小车光电管不满足以下几个条件时都处于前进状态while((z==0)&&(y==1)&&(q==1))//判断当左边光电管遇到黑线,{ //右边和前边的光电管遇到白线时左转zuo();//调用左转函数zd=1;}while((z==1)&&(y==0)&&(q==1))//判断当右边光电管遇到黑线,{ //左边和前边的光电管遇到白线时右转you();//调用右转函数yd=1;}while((z==0)&&(y==0)&&(q==1))//判断当左边光电管遇到黑线,右边光电管也遇到黑线{ //前边的光电管遇到白线时停止ting();//调用停止函数hd=1;}while((z==0)&&(y==0)&&(q==0))//判断当左边、右边、前边光电管同时遇到黑线{ //即遇到十字路口,小车前进qian();//调用前进函数}}void csb(){long S;unsigned int i;unsigned int Timeout;LCD1602_init(); //调用1602液晶初始化函数//***定时器Timer0初始化***TMOD&=0xF0; //将TMOD的低4位定时器0控制部分清零TMOD|=0x01; //设置定时器0为方式1TMOD=0x01;TL0=0; //设置定时器0初值低8位TH0=0; //设置定时器0初值高8位TR0=0; //停止定时器0ET0=1; //Timer0中断允许//***开全局中断设置****//定时器Timer0设置了中断允许,此处要开全局中断EA=1; //开全局中断TIRG=1; //发一个脉冲触发信号i=4; //维持约17US,符合不低于10US的要求while(i>0) //维持约17US,符合不低于10US的要求 i--; //维持约17US,符合不低于10US的要求TIRG=0; //撤销触发信号TR0=0; //关闭定时器TL0=0; //设置定时器0初值低8位为0 TH0=0; //设置定时器0初值高8位为0k=0; //清除溢出标志flag=0;Timeout=0;while((ECHO==0)&&((Timeout++)<50000)); //等待回响高电平TR0=1; //回响高电平来后启动定时器Timeout=0;while((ECHO==1)&&((Timeout++)<50000)); //等待回响高电平结束后TR0=0; //关闭定时器S=((TH0*256+TL0)*1)/58;if(flag==1||S>400) //超出测量范围显示“-”{LCD1602_Disp(0, 0, '-'); //显示百位-LCD1602_Disp(1, 0, '-'); //显示十位-LCD1602_Disp(2, 0, '-'); //显示个位-LCD1602_Disp(3, 0, 'C'); //显示CLCD1602_Disp(4, 0, 'M'); //显示M}else{LCD1602_Disp(0, 0, S%1000/100+'0'); //显示百位LCD1602_Disp(1, 0, S%1000%100/10+'0'); //显示十位LCD1602_Disp(2, 0, S%1000%100%10+'0'); //显示个位LCD1602_Disp(3, 0, 'C'); //显示CLCD1602_Disp(4, 0, 'M'); //显示M}i=18000; //维持约77400US,符合不低于60MS的要求 while(i>0) //维持约77400US,符合不低于60MS的要求i--; //维持约77400US,符合不低于60MS的要求}void main()//主程序{init();//调用初始化子程序while(1)//死循环{switch(a)//判断a从串口读取到的数据{case 0x00://如果是0x1f就前进xunji();break;case 0x01://如果是0x2f就后退qian();break;case 0x02://如果是0x3f就左转break;case 0x03://如果是0x4f就右转mzuo();zd=1;break;case 0x04://如果是0x00就停止hou();break;case 0x05://如果是0xa0车灯打开myou();yd=1;break;case 0x06://如果是0xb0车灯关闭chongshua=1;break;case 0x07://如果是0xc0蜂鸣器鸣响hd=1;break;case 0x08://如果是0xc0蜂鸣器鸣响tuodi=1;break;}}}void chuan() interrupt 4//串口中断服务程序{RI=0;//软件清除串口响应a=SBUF;//读取单片机串口接受的蓝牙模块发送的数据}结论根据本次设计要求,我们小组系统地阅读了大量的资料,并认真分析了设计课题的需求,还系统学习了51系列单片机的工作原理及其使用方法,并独自设计智能小车的整个项目。