基于单片机的智能小车控制
- 格式:doc
- 大小:8.73 MB
- 文档页数:28
基于单片机智能遥控小车的设计引言:一、硬件设计:智能遥控小车的硬件设计包括机械结构和电子模块两个方面。
1.机械结构设计:机械结构设计为小车提供了良好的稳定性和移动能力。
首先,选取适合的底盘结构,确保小车的稳固性和均衡性。
其次,选择合适的电机和轮子,以实现小车的前进、后退和转向功能。
最后,在机械结构中添加传感器支架和摄像头支架,方便后续的传感器和摄像头模块的安装。
2.电子模块设计:电子模块设计包括主控模块、通信模块和电源模块三个部分。
(1)主控模块:主控模块是整个智能遥控小车的核心,它负责接收遥控命令、控制电机的转动并实时处理传感器数据。
选择一款性能较强的单片机作为主控芯片,如STM32系列,以满足小车处理复杂任务的需求。
(2)通信模块:(3)电源模块:电源模块为智能遥控小车提供稳定的电源,要保证小车的正常工作需要满足一定的电流和电压要求。
选取合适的锂电池组或者干电池组作为电源,通过适当的电压调节和保护电路,保证电源的稳定性和安全性。
二、软件设计:智能遥控小车的软件设计包括底层驱动程序的编写和上层应用程序的开发。
1.底层驱动程序:底层驱动程序主要用于控制电机和监测传感器数据。
通过编写合适的电机驱动程序,实现小车的前进、后退和转向功能。
同时,编写传感器驱动程序获取传感器的数据,如超声波测距、红外线检测和摄像头采集等,为上层应用程序提供数据支持。
2.上层应用程序:三、功能拓展:智能遥控小车的功能可以通过添加各种传感器和模块进行拓展,如以下几个功能:1.环境检测功能:通过添加温湿度传感器、二氧化碳传感器等,实时监测环境数据,可以应用于室内空气质量、温湿度调节等应用。
2.避障功能:通过添加超声波传感器、红外线传感器等,在小车前方进行信号检测,实现小车的避障功能。
3.图像识别功能:通过添加摄像头模块,对图像进行处理和分析,实现小车的图像识别功能,如人脸识别、物体识别等。
结论:基于单片机的智能遥控小车设计通过合理的硬件结构和软件设计,实现了远程遥控和实时传输数据的功能。
基于单片机的智能循迹小车设计智能循迹小车是一种基于单片机控制的小型车辆,通过传感器检测路面信息,结合预设路线实时调整行驶方向,实现自动循迹行驶。
智能循迹小车在无人驾驶、智能物流、探险救援等领域具有广泛的应用前景。
智能循迹小车的硬件主要包括单片机、传感器、电机和电源。
其中,单片机作为整个系统的控制中心,负责接收传感器信号、处理数据并输出控制指令;传感器用于检测路面信息,一般选用红外线传感器或激光雷达;电机选用直流电机或步进电机,为小车提供动力;电源为整个系统提供电能。
智能循迹小车的软件设计主要实现传感器数据采集、数据处理、控制指令输出等功能。
具体来说,软件通过定时器控制单片机不断采集路面信息,结合预设路线信息进行数据分析和处理,并根据分析结果输出控制指令,实现小车的自动循迹。
为提高智能循迹小车的稳定性和精度,需要对算法进行优化。
常用的算法包括PID控制、模糊控制等。
通过对算法的优化,可以实现对路面信息的精确检测,提高小车的循迹精度和稳定性。
为验证智能循迹小车的实际效果,需要进行相关测试。
可以在平坦的路面上进行空载测试,检验小车的稳定性和循迹精度;可以通过加载重量、改变路面条件等方式进行负载测试,以检验小车在不同条件下的性能表现;可以结合实际应用场景进行综合测试,以验证智能循迹小车在实际应用中的效果。
测试环境的选择要具有代表性,能够覆盖实际应用中可能遇到的各种情况。
测试过程中要保持稳定的行驶速度,以获得准确的测试数据。
对于测试过程中出现的问题,要及时记录并分析原因,以便对系统进行改进。
测试完成后,要对测试数据进行整理和分析,评估系统的性能表现,提出改进意见。
通过以上测试,我们发现基于单片机的智能循迹小车在循迹精度、稳定性等方面表现良好,能够满足实际应用中的需求。
同时,通过对算法的优化和硬件的改进,可以进一步提高小车的性能表现。
本文介绍了基于单片机的智能循迹小车的设计和实现过程。
通过合理选择硬件和优化软件算法,实现了小车的自动循迹功能。
基于 stm32 单片机的智能小车控制摘要:进入21世纪以来,智能化已成为时下最热门的课题。
智能小车在日常生活、交通、军事等领域中发挥了独有作用,不仅断提高了人们的生活品质,而且还能够提升人们的服务效率、工作效率,成为了智能化研究的热门课题。
利用超声波传感器和SG90舵机组成超声波云台,以stm32单片机作为控制核心,对智能小车控制进行详细研究。
关键词:stm32单片机;智能小车;控制引言本文所设计的基于STM32F103的无线智能小车控制系统,其中以STM32F103单片机为控制核心,小车辅助避障模块为E18-D80NK光电传感器,使用超声波传感器和SG90舵机组成超声波云台,并将红外发射管、红外接收管和LM339电压比较器进行组合作为智能小车巡航传感器。
该小车在前进时能够检测一定范围内的障碍物距离,实现智能小车巡航、防摔等功能。
并且智能小车上安装GPS定位模块和无线模块,能够控制智能小车能够避开障碍自由行走。
GPS模块用于智能小车定位,无线模块能够使智能小车通过无线通信连接,与PC无线通信连接,将智能小车定位信息及障碍物距离信息显示到PC上,从而通过PC端控制智能小车的行走。
另外,为了驱动智能小车行走,并测量左右轮转速,直流电机驱动分别采用了TB6612FNG电机驱动模块和槽型光耦传感器、测速码盘,在PWM脉宽改变电机转速上,通过PID控制器实现小车调速功能。
一、基于STM32单片机的智能小车的硬件设计1.1主控芯片设计为了满足大多数嵌入式系统控制要求,采用STM32F103单机片,其性能优越且性价比较高。
1.2传感器设计避障系统传感器采用成本低、距盲区小及灵敏度高的HC-SR04超声波测距模块,该模块具有更好的抗干扰能力、可非接触测量0.02~4m的障碍物距离;巡航传感器选用模块价格便宜、体积较小的红外传感器,但该传感器多在没有强光的环境中使用,抗干扰能力较差,可控制小车巡航,防止摔倒;测速模块采用槽型光耦传感器和测速光电码盘组成测速系统,模块采用施密特触发器抖动触发脉冲,只要有非透明物体阻挡模块光电射槽,就可以触发模块输出5VTTL电压,触发脉冲稳定。
基于单片机的红外遥控智能小车设计引言:随着科技的不断发展,智能物联网已经走进了我们的生活。
智能小车作为一种智能化的产品,能够实现远程遥控、自动避障等功能,受到了广大消费者的青睐。
本文就基于单片机的红外遥控智能小车设计进行详细介绍。
一、设计目标本设计的目标是通过红外遥控,实现对智能小车的远程控制,小车能够根据收到的指令进行行驶、避障等操作。
二、设计原理1.主控芯片:本设计使用单片机作为主控芯片,常用的单片机有51系列、AVR系列等,可根据实际需求选择合适的芯片型号。
2.红外遥控模块:红外遥控模块是实现红外通信的设备,可以将遥控器发出的红外信号解码成数据,实现遥控操作。
3.电机驱动模块:电机驱动模块可将单片机的PWM信号转化为电机的动力驱动信号,控制小车的行驶方向和速度。
4.超声波传感器:超声波传感器可以感知到小车前方的障碍物距离,根据测得的距离,进行相应的避障操作。
5.电源模块:小车需要使用适当的电源,通常是锂电池或者直流电源供应。
三、系统设计1.硬件设计:(1)搭建小车底盘:根据所选择的底盘,搭建小车结构,并安装好电机驱动模块、电源模块等硬件设备。
(2)连接电路:将红外遥控模块、超声波传感器等硬件设备与主控芯片进行连接,确保每个模块正常工作。
2.软件设计:(1)红外遥控程序设计:通过红外遥控模块接收红外信号,并解码成相应的指令。
根据指令控制电机驱动模块,实现小车的行驶方向和速度控制。
(2)超声波避障程序设计:根据超声波传感器测得的距离,判断是否有障碍物,如果有障碍物就停止或者转向。
四、实验结果和讨论经过实验验证,本设计的红外遥控智能小车能够准确接收红外信号,并根据指令控制小车的行驶方向和速度。
同时,超声波传感器能够及时感知到前方的障碍物,并进行相应的避障操作。
然而,该设计仍然存在一些不足之处,比如超声波传感器的测距范围有限,可能无法感知到较小的障碍物。
此外,红外遥控信号的传输距离也有一定限制,需要保持遥控器与小车之间的距离不过远。
基于单片机智能小车在科技飞速发展的今天,智能小车作为一种融合了机械、电子、控制等多学科知识的产物,正逐渐走进我们的生活。
其中,基于单片机的智能小车凭借其成本低、灵活性高、易于开发等特点,成为了研究和应用的热门领域。
单片机,就像是智能小车的“大脑”,负责接收和处理各种信息,并指挥小车的行动。
常见的单片机有 51 系列、STM32 系列等,它们具有不同的性能和特点,可以根据实际需求进行选择。
比如说,如果对小车的控制精度要求不高,51 单片机就能满足需求;但要是需要处理更复杂的任务,像实现图像识别、高速通信等,STM32 这样性能更强的单片机则是更好的选择。
要让智能小车跑起来,首先得有动力系统。
一般来说,直流电机是比较常用的选择。
通过单片机输出的脉冲宽度调制(PWM)信号,可以精确地控制电机的转速和转向。
为了测量电机的转速,我们还会用到编码器。
编码器能够将电机的旋转运动转化为电信号,反馈给单片机,从而实现闭环控制,让小车的速度更加稳定和精确。
传感器是智能小车感知周围环境的“眼睛”和“耳朵”。
常见的传感器有红外传感器、超声波传感器、灰度传感器等。
红外传感器可以检测前方是否有障碍物,但其检测距离较短;超声波传感器则能够测量较远的距离,但精度相对较低;灰度传感器则能帮助小车识别不同颜色的地面,从而实现循迹功能。
这些传感器将采集到的信息传递给单片机,单片机经过分析和处理,做出相应的决策,控制小车的行驶路径。
在智能小车的硬件设计中,电源管理也是非常重要的一环。
单片机、电机、传感器等各个模块都需要稳定的电源供应。
一般会使用电池作为电源,然后通过稳压芯片将电池电压转换为各个模块所需的电压。
同时,为了减小电源噪声对系统的影响,还会在电路中添加滤波电容。
除了硬件,软件也是智能小车的关键部分。
编写单片机程序通常使用 C 语言或者汇编语言。
程序的主要任务是初始化各个硬件模块,读取传感器数据,进行数据处理和分析,然后输出控制信号。
基于 STC 单片机的智能语音控制小车一、实验目的1.随着科技的进步和社会的发展, 汽车技术的发展越来越智能化。
本次接口实验 设计就是基于简单智能化的基础上, 采用LD3320 语音单元和 STC 单片机和L298N 机电驱动, 开辟出基于语音无线控制与智能避障的小车, 实现非特定人声语音控 制小车, 以及小车超声波自动避障行驶的功能, 同时液晶显示出超声波前方障碍 物的距离。
2.掌握用 Altium Designer10 软件绘制原理图和 PCB 电路,以及电路板的制作 过程(包括转印、腐蚀,焊接,下载与调试),熟练 Keil uVision4 环境以及单 片机 C 代码的编写、 调试和 hex 文件的生成并下载到单片机芯片内, 掌握软硬联 调技巧与方法。
3.掌握 基于 LD3320 的语音单元的编程、语音处理及与单片机间的通信。
二、系统总体方案本次设计的小车采用 STC89C52 单片机作为主控芯片, 通过 LD3320 语音单元 接单片机控制小车行驶状态(包括前进、后退、左转、右转及停车);小车行驶 过程中遇到障碍物, 如果没有接收到语音信号而超声波检测模块检测周围障碍物 小于安全距离 40cm ,小车自动转向, 距离通过 LCD1602 液晶显示出来; 采用 L298 作为机电驱动芯片驱动小车行驶。
系统总体框图如图 2.1:图 2.1 系统总体框图LCD1602 液晶显示STC89C52 单片机7805 稳压电路18650 锂电池电源HC-SR04 超声波模块L298N 机电驱动直流减 速机电降压模块扬声器LD3320 语音单元三、硬件设计3.1 主控系统本次设计采用 STC89C52 单片机作为控制芯片, STC89C52RC 是 STC 公司生产的一种低功耗、高性能 CMOS8 位微控制器,具有 8K 字节系统可编程 Flash 存储器。
单片机系统电路图 2:图 3.1 单片机最小系统原理图复位电路:手动复位,按下复位按钮,复位脚得到 VCC 的高电平,单片机复位,按钮松开后,单片机开始工作。
基于单片机的智能小车避障循迹系统设计一、本文概述随着科技的不断进步和智能化趋势的深入发展,单片机技术在现代电子系统中扮演着日益重要的角色。
特别是在智能机器人、自动化设备等领域,基于单片机的智能系统设计成为研究的热点。
其中,智能小车作为一种典型的移动机器人平台,具有广泛的应用前景。
智能小车能够在复杂环境中自主导航、避障和完成任务,这对于提高生产效率、降低人力成本以及实现智能化管理具有重要意义。
本文旨在设计一种基于单片机的智能小车避障循迹系统。
该系统利用单片机作为核心控制器,结合传感器技术、电机驱动技术和控制算法,实现小车的自主循迹和避障功能。
通过对小车硬件和软件的设计与优化,使其在复杂环境中能够稳定、高效地运行,并具备一定的智能化水平。
本文首先介绍了智能小车的研究背景和意义,阐述了基于单片机的智能小车避障循迹系统的研究现状和发展趋势。
然后,详细描述了系统的总体设计方案,包括硬件平台的搭建和软件程序的设计。
在硬件设计方面,重点介绍了单片机的选型、传感器的选择与配置、电机驱动电路的设计等关键部分。
在软件设计方面,详细阐述了避障算法和循迹算法的实现过程,以及程序的编写和调试方法。
本文还通过实验验证了所设计系统的可行性和有效性。
通过实验数据的分析和对比,证明了该系统在避障和循迹方面具有较高的准确性和稳定性。
本文也探讨了系统存在的不足之处和未来的改进方向,为相关领域的研究提供了一定的参考和借鉴。
本文设计的基于单片机的智能小车避障循迹系统具有较高的实用价值和广泛的应用前景。
通过不断优化和完善系统的设计,有望为智能机器人和自动化设备的发展做出积极的贡献。
二、系统硬件设计在智能小车避障循迹系统设计中,硬件设计是整个系统的基石。
我们选用了性价比较高、易于编程控制的单片机作为核心控制器,围绕它设计了整个硬件系统。
核心控制器:选用了一款高性能、低功耗的单片机作为核心控制器,负责处理传感器数据、执行避障和循迹算法,以及控制小车的运动。
毕业设计(论文)课题名称:基于单片机控制的循迹小车指导教师:系别:专业:班级:姓名:摘要本文论述了基于单片机的智能循迹小车的控制过程。
智能循迹是基于自动引导机器人系统,用以实现小车自动识别路线,以及选择正确的路线。
智能循迹小车是一个运用传感器、单片机、电机驱动及自动控制等技术来实现按照预先设定的模式下,不受人为管理时能够自动实现循迹导航的高新科技。
该技术已经应用于无人驾驶机动车,无人工厂,仓库,服务机器人等多种领域。
本设计采用89C52单片机作为小车的控制核心;采用RPR220红外反射式开关传感器作为小车的循迹模块来识别白色路面中央的黑色引导线,采集信号并将信号转换为能被单片机识别的数字信号;采用驱动芯片L298N构成双H桥控制直流电机,其中软件系统采用C程序,本设计的电路结构简单,容易实现,可靠性高目录摘要 (1)目录 (1)第1章绪论 (2)1.1课题背景 (2)1.2课题研究的目的和意义 (3)1.3 本设计的意义 (4)第二章方案论证 (4)2.1 控制器方案论证 (4)2.2 供电单元方案论证 (5)2.3 智能循迹小车电源模块的选择 (5)2.4智能循迹小车电机驱动电路的选择 (5)2.5 检测循迹模块 (5)2.5 显示模块论证 (6)第三章智能循迹小车硬件部分 (6)3.1 系统总体方案 (6)3.2 单片机最小系统 (7)3.3 电源模块 (8)3.4 电机驱动模块 (9)3.5 循迹单元电路 (10)3.6测速模块电路 (13)3.7 显示模块电路 (13)第四章循迹小车项目软件流程图 (14)4.1 总体软件流程图 (14)4.2小车循迹流程图 (15)4.3中断程序流程图 (16)第五章总结 (17)第六章致谢 (18)第七章参考文献 (18)附图设计总体图 (19)封底.................................................................................................................... 错误!未定义书签。
基于单片机的智能小车的设计与制作一、引言:智能小车的概念和应用背景(100字)近年来,随着科技的快速发展,智能小车成为了智能化领域一个备受关注的研究方向。
智能小车作为一种能够自主感知环境、进行智能决策和灵活运动的机器人平台,广泛应用于诸多场景,如仓储物流、智能家居、无人驾驶等。
本文主要介绍了一种,以期能够提供一种参考和借鉴。
二、硬件设计与制作过程(600字)在硬件设计与制作过程中,首先需要明确小车的核心模块,包括电路板、传感器模块和执行器模块等。
其中,单片机是智能小车的“大脑”,其选择和连接是关键一步。
根据实际需求,本文选用了广泛应用的Arduino单片机,并将其与各类传感器(如红外线传感器、超声波传感器等)和执行器(如电机、舵机等)进行连接。
接下来,需要组装小车的机械部分。
通过设计和制作合适的底盘结构,进行电动机的安装和连线,以及舵机和轮子的连接。
这一步需要充分考虑小车的稳定性和灵活性,以确保小车能够平稳运行和方便操作。
为了实现小车的智能化控制,还需要进行编程。
以Arduino作为平台,通过编写相应的代码,实现小车的功能,如环境感知、路径规划、动作执行等。
在编程过程中,需要结合传感器的输入和执行器的输出,使得小车能够根据不同的场景而做出相应的反应和决策。
最后,完成电路板和机械部分的组装后,还需要对整体进行调试和测试。
通过连接电源和运行程序,可以对小车进行上电测试和功能测试,以确保各模块能够正常工作,并进行适当的调整和优化。
三、软件设计与功能实现(200字)在软件设计方面,本文使用Arduino IDE进行编程,采用C/C++语言。
通过对传感器的数据采集和处理,结合运动控制算法,使得小车能够在不同场景下做出智能决策。
例如,在遇到障碍物时,利用超声波传感器测距,通过程序控制小车避开障碍物;在追踪线路时,利用红外线传感器进行线路识别和导航等。
根据实际需求,还可以加入其他功能。
例如,通过无线模块实现与远程设备的通信,利用摄像头实现图像识别和物体跟踪等。
摘要本次设计的单片机控制的智能小车,采用AT89C51单片机为小车的控制核心。
运用L298芯片实现对小车前进、后退、左行、右行、以及全速和减速的控制,同时单片机会自动根据超声波传感器检测到的情况播放相对应的音乐并点亮相对应颜色的LED灯,实现了自动避障和声光报警两大功能。
此外本次设计还运用液晶显示器LCD1602对小车行驶里程和实时日期、时间进行显示。
在液晶显示器的第一行显示根据霍尔元件A44E获得的脉冲数而计算出的小车行驶的里程数;在液晶显示器的第二行显示从时钟芯片DS1302读取的实时日期和时间,实现了液晶显示功能。
由以上各部分共同实现了设计要求的自动避障、液晶显示、声光报警三大功能。
关键词:AT89C51;L298 ;DS1302;液晶显示Abstract The AT89C51 microcontmller is taken as the control core for the design of an intelligentcar in the paper,with the using of L298 chip it can control the automatic advancebackwardturn leftturn right and with the speed full or slowalso it according to the case of ultrasonicsensors detected play the corresponding music and light the color-codedleds.Besidesthisdesign uses LCD1602 for car trip mileage and real-time date and time display.The first row ofthe LCD display the mileage which based on the number of pulses that the Hall element A44Egot.The second row of LCD display the date andtime which read from the clock chipDS1302.By above all the design request partially realized automatic obstacle avoidanceliquidcrystal display sound-light alarm three major functions.Keyword:AT89C51L298DS1302 liquid crystal display 目录1 绪论1 1.1 研究背景1 1.2 选题意义12 整体方案设计3 2.1 整体方案的设计思路3 2.2 整体设计的构成图33 硬件的选择 5 3.1 电源模块的选择 5 3.2 电机控制模块中硬件的选择 5 3.2.1 电机的选择5 3.2.2 电机控制模块的选择 6 3.3 时间与里程显示模块中的硬件的选择8 3.3.1 显示器的选择8 3.3.2 时钟芯片的选择11 3.3.3 里程检测元件的选择15 3.4 声光报警模块中的硬件的选择16 3.5 障碍检测模块中硬件的选择18 3.6 单片机的选择与简介184 设计所用软件以及模块程序设计21 4.1 所用软件的简介21 4.1.1 Keil的简介21 4.1.2 Protues的简介22 4.2 主程序设计23 4.3 电机控制程序设计24 4.4 声光报警程序设计25 4.5 显示程序设计27结论29致谢30参考文献31附录A 文献及翻译33附录B 程序清单48附录C 元件清单64附录D 电路图65 大学学士学位论文 1 绪论1.1 研究背景当今世界,传感器技术和自动控制技术正在飞速发展,机械、电气和电子信息已经不再明显分家,自动控制在工业领域中的地位已经越来越重要,“智能”这个词也已经成为了热门词汇。
基于单片机的智能小车设计基于单片机的智能小车设计引言智能小车是近年来快速发展的一种智能设备,它可以根据程序控制自主地移动、避障、遥控等,具有广泛的应用前景。
本文将介绍基于单片机的智能小车的设计方案,包括硬件设计和软件实现。
硬件设计主控模块智能小车的主控模块采用单片机,常见的选择有Arduino、Raspberry Pi等。
在本设计中,我们选择了Arduino Uno作为主控模块,因为它价格实惠,易于上手,且具有丰富的扩展模块。
电源模块智能小车的电源模块可以选择直流电池,输入电压需符合主控模块和驱动模块的工作电压范围。
为了保证电池寿命和安全性,建议加装合适的电池保护模块,以防止过充、过放等问题。
驱动模块智能小车需要具备前进、后退、左转、右转等动作,因此需要使用驱动模块控制电机的转动。
常见的驱动模块有L298N、TB6612FNG等,可以根据实际需求选择合适的驱动模块。
传感器模块为了实现智能小车的避障功能,需要添加传感器模块来检测前方障碍物。
常见的选择有红外传感器、超声波传感器等。
在本设计中,我们选择了HC-SR04超声波传感器,它具有较高的测距精度和稳定性。
编码器模块为了实现智能小车的精确控制和位置监测,可以添加编码器模块来监测电机的转速和转向。
编码器模块可以是光电编码器、磁编码器等。
软件实现智能小车的软件实现主要涉及以下几个方面:控制算法智能小车的控制算法可以使用PID算法、模糊算法等。
PID算法是一种经典的控制算法,通过对速度和位置误差进行调节,实现小车的平稳运动。
遥控功能为了方便用户操作,可以添加无线遥控模块,实现对智能小车的遥控功能。
常见的无线遥控模块有蓝牙、Wi-Fi等。
避障功能智能小车的避障功能可以利用传感器模块实现。
通过检测前方障碍物的距离,如果距离过近,则停车或转向避开障碍物,保证小车的安全运行。
数据通信如果需要将智能小车的状态数据传输到其他设备,可以添加数据通信模块,如串口、无线模块等。
基于单片机控制的智能自动往返小汽车设计随着现代科技的发展和自动化水平的提高,智能小汽车作为生活中的常用工具,人们对其智能性、可靠性等提出了越来越高的要求,因此需要对智能小汽车进行优化设计. 本文对硬件系统和主要功能模块进行了规划,设计了一个基于单片机控制的自动往返小汽车系统,以STC89C52 单片机为核心器件,可实现电动小汽车的速度控制、自动停车、往返控制等功能,从而满足人们对小汽车智能化功能的要求.1 系统总体设计系统设计以单片机STC89C52 芯片为核心控制部件,LG9110 作为电机驱动芯片,利用传感器检测技术原理、AD 画图、KEIL 软件编程,将程序烧录到单片机中,实现各个子模块的功能. 此外,系统采用红外探测法来检测实时路况信息,并通过PWM 调制自动调节电机转速. 系统总体设计框图如图1 所示.图1 系统总体设计框图2 系统硬件设计系统硬件模块设计主要包含电机驱动模块、路况检测模块、智能防撞报警模块、寻迹模块等.2.1 电机驱动模块电机驱动模块是目前遥控小车普遍采用的驱动模块[3]. 直流电机有两个控制端,通过设置输入电平值来改变电机的运转,单片机通过控制引脚电平的高低来控制直流电机的转速. 由于单片机自身管脚输出的高电平电压很小,不足以驱动电机进而带动整个小车运行,因此最适合小车驱动的是运用电机驱动芯片来完成,我们采用的是电机驱动芯片LG9110.2.2 路况检测模块该模块使用红外探测法. 由于黑线和白纸对光线的反射系数不同,故可根据接收到反射光的强弱来判断路面情况和前方是否存在障碍物. 红外发射管发射红外信号,经路面反射后传给红外接收管进行判断处理. 上电后,红外发射管导通,向地面以及前方发射红外信号,当遇到白色路面时,红外信号经白色路面进行漫反射,这时红外接收探头刚好接收到红外信号,探头导通,将低电平送给单片机进行判断处理.2.3 智能防撞报警模块智能小车能够自动识别前方的障碍物,如果有障碍物则调节小车的运动轨迹来避开障碍物,同时在遇到障碍物时,能够报警提示.2.4 寻迹模块所谓寻迹,就是在一条有弯曲黑线的白纸跑道上,利用红外线在不同颜色的物理表面具有不同的反射性质的特点来改变小车的运行轨迹. 小车在行驶过程中不断地向地面发射红外光,当红外光遇到白色地面时发生漫发射,而当红外光遇到黑色地面时,不产生反射. 如果小车右边稍微跑出黑色跑道,发出的红外光就会遇到白色地面而产生漫反射,这时旁边的黑色接收探头接收到反射信号后会导通. 探头接收到红外信号,会产生一个低电平,送给单片机处理,使小车进行左转操作;同理,当小车左边跑出黑线时,左侧探头识别之后给小车低电平,提示小车右转,这样就完成了小车的自动寻迹功能.3 系统软件设计在系统软件设计时,我们将所有的模块程序嵌入到单片机中,这种嵌入式设计主要是为了便于控制,且不占用CPU 资源,因为寻迹模块以及避障模块等都同时用到了实时检测扫描,这样不仅占CPU,而且多个程序同时运行还会产生冲突. 系统程序设计流程图如图2 所示.软件设计主要子模块介绍:(1) 红外解码的实现红外解码是实现小车的自动寻迹功能的前提条件,因此单片机的红外解码是贯穿整个程序设计的主线,在整个系统中起着重要作用.(2) 电机驱动从实际情况来说,在整个系统中,电机的驱动在小车运行中占据主导地位,是很重要的一部分,同时也是小车在接收到控制命令之后单片机的最终输出部分,是所有模块在执行控制命令时的外在表现.图2 系统程序设计流程(3) 小车寻迹寻迹的基本原理:黑白跑道对红外光的反射不同. 所以通过编写扫描单片机管脚值的程序,来实现相应功能. 小车寻迹模块的程序流程如图3 所示.(4) 小车防撞报警开启小车防撞功能时,主程序调用防撞报警子函数,当道路前方遇到障碍物时,小车内部的防撞函数将调用电机驱动子函数来调节小车的运行轨迹,避免小车撞击障碍物,同时报警提示.图3 寻迹程序流程图4 系统功能实现4.1 硬件作品(1) 对基于单片机控制的自动往返小汽车主要的STC89C52 核心主控模块、电机驱动模块、显示模块、避障模块进行组装,确保接线无误,完成实物的制作. 硬件作品如图4 所示.(2) 接通电源,整个小车处于启动状态,由于小车头部下方的红外探头未接收到自身发出的红外光,小车不运动,处于静止状态. 启动状态如图5 所示.图4 作品实物图5 小车启动状态(3) 在接通电源的状态下,将手放在左红外探头的下方,红外探头发出的红外光由于碰到手指发生漫反射而被探头接收,从而驱动电机驱动模块,左电机处于运行状态,左轮向前转动. 同理,右轮向前转动. 运动状态如图6 所示.图6 小车运动状态4.2 功能实现本系统实现的主要功能如下:(1)实现小汽车自动往返;(2)当小汽车偏离行驶轨道时,会及时转向,返回跑道;(3)当检测到障碍物时,能自动报警.STC89C52 芯片可以发挥数据处理与实时控制的功能,提高整个系统灵敏度. 当要驱动自动小车前进时,可以通过寻迹模块返回给单片机的信号,使单片机做出相应的控制判断,进而控制电机驱动模块,同时还需要进行PID 算法的测试,精准地控制自动小车在黑线上实现前进、后退和转向,从而实现小车自动往返.4.3 系统实现效果评价对系统功能进行了分析、拓展和延伸,其根本目的是为了实现小汽车的智能化. 通过系统调试,本设计可实现小汽车的自动寻迹和报警功能,且系统设计稳定. 实验结果与理论分析吻合较好,表明该设备在技术上有一定智能性和可靠性.5 总结本文采用的是以STC89C52 为核心的单片机,LG9110 为电机驱动芯片,利用传感器检测技术,结合硬件AD 画图及软件KEIL 的编译与烧录[5],使单片机控制的小汽车能自动寻迹、防撞报警,从而实现小车的自动往返功能. 本设计最大的特色:无需有线或者无线遥控来控制小车的往返,只需要装上电源,其他功能都可以由单片机来实现,消除了一般玩具小车需无线或有线控制的弊端,是未来玩具小车发展的趋势;同时也可以推广至公交车,实现无人驾驶,降低安全事故的发生,既环保又安全,因此具有一定的应用价值.。
信息工程专业课程设计(二)题目基于《STC89C52》单片机的智能小车姓名学号所在院系所在班级完成时间基于单片机的智能小车摘要:智能化作为现代电子产品的新趋势,是今后的电子产业的发展方向。
智能化设计的电子产品可以按照预先设定的模式在一个环境里自动运作,不需要人为的管理,可应用于科学勘探、环境监测、智能家居等方面。
基于单片机的智能小车控制就是其中的一个体现。
本设计实现了一种基于51单片机的按键操作控制和温度检测显示系统,通过温度传感器采集温度数据并且通过显示模块显示出来,通过对按键的操作,自动控制转向电机转向,改变行驶方向。
本课题设计的智能小车,具有按键控制前后左右的功能,温度采集功能,液晶显示功能。
序言 (1)第1章总体设计方案 (2)1.1课题任务分析 (2)1.2 方案论证 (3)1.2.1小车驱动部分 (3)1.2.2 温度显示部分 (3)第2章系统硬件构成 (4)2.1系统设计原理 (4)2.2主要元器件简介 (4)2.2.1 STC89C52RC简介 (4)2.2.2 液晶显示电路 (5)2.2.3 L298N芯片直流电机驱动模块 (6)2.2.4遥控部分独立按键电路 (7)第3章软件的设计与说明 (8)3.1软件设计 (8)3.2软件的说明 (9)3.2.1 控制部分主程序流程 (9)3.2.2 温度检测显示部分主程序流程图 (10)第4章调试与总结 (12)4.1 调试的总结 (12)参考文献 (13)致谢 (14)附录 (15)附件1 L298N电机驱动模块 (15)附件2 小车侧视图 (16)附件3 小车俯视图 (16)附件4 小车最终硬件图 (17)附件5 程序清单 (18)序言随着我国科学技术的进步,智能化和自动化技术越来越普及,各种高科技也广泛应用于智能小车和机器人玩具制造领域,使智能机器人越来越多样化。
智能小车是一个多种高新技术的集成体,它融合了机械、电子、传感器、计算机硬件、软件、人工智能等许多学科的知识,涉及到当今许多前沿领域的技术[1]。
而智能电动车正是智能机器人的一种,具有不可估量的实际意义。
智能车辆是一个运用计算机、传感、信息、通信、导航、人工智能及自动控制等技术来实现环境感知、规划决策和自动行驶为一体的高新技术综合体。
它在军事、民用和科学研究等方面已获得了应用,对解决道路交通安全提供了一种新的途径。
随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。
全国电子大赛和省内电子大赛几乎每次都有智能小车这方面的题目,全国各高校也都很重视该题目的研究,许多国家已经把电子设计比赛作为创新教育的战略性手段。
电子设计涉及到多个学科,机械电子、传感器技术、自动控制技术、人工智能控制、计算机与通信技术等等,是众多领域的高科技。
电子设计技术,它是一个国家高科技实例的一个重要标准,可见其研究意义很大。
第1章总体设计方案1.1课题任务分析本文设计了智能小车控制系统。
智能小车是一个运用传感器、单片机、信号处理、电机驱动及自动控制等技术来实现环境感和自动行驶为一体的高新技术综合体,它在军事、民用和科学研究等方面已获得了应用。
通过各种选题之后,我发现制作智能小车非常有意思,它唤起我们对玩具的革新思想,智能小车制作的兴趣。
自己遇到过的汽车的功能是怎样的,想通过自己的手创作出属于自己的智能汽车。
也夹杂一种童年时对玩具智能化的假想。
所以我选定制作单片机智能小车。
通过这次设计,掌握51单片机的原理,了解简单传感器组成原理,初步掌握传感器的调整及测试方法,提高动手能力和排除故障的能力。
同时通过本课题设计与装配、调试,提高自己的动手能力,巩固已学的理论知识,建立单片机理论和实践的结合,了解传感器各单元电路之间的关系及相互影响,从而能正确设计、计算定时计数的各个单元电路。
初步掌握传感器的调整及测试方法。
提高动手能力和排除故障的能力。
本设计采用直流电机,电机专用驱动芯片L298N进行电机驱动控制,主控芯片为STC89C52,控制器部分采用简单按键,温度数据的采集采用DS18B20温度传感器模块,显示部分采用1602液晶。
本次设计虽然只是一个演示模型,但是具有充分的科学性和实用性。
首先我们根据汽车的复杂情况,按照现有材料搭建一个小车模型,车轮,车身,直流电机,按键,温度传感器,单片机,L29BN电机驱动模块等。
DS18B20温度传感器将检测到的温度数据传给单片机,单片机根据接收到的信号进行处理再传给显示模块显示,由按键模块控制小车进行倒车、前进、左转、右转等动作。
1.2 方案论证1.2.1小车驱动部分方案一:小车的电机驱动部分采用自己搭建的9012三极管电路来实行小车的驱动,9012三极管电路具有电路简单,操作方便的等特点。
方案二:小车的电机驱动部分采用L298N芯片直流电机驱动模块,该模块具有较大的驱动带载能力,驱动部分端子供电范围Vs:+5V~+35V,并且另外自带了5V、3V的输出端口。
方案论证:本设计为2轮驱动的小车,对于小车驱动部分要求能够有较大的帯载能力,并且在小车的实际设计过程中,需要不同的输出电压来提供给小车的各个模块。
因此综上所述采用方案二,小车的电机驱动部分使用L298N芯片直流电机驱动模块。
1.2.2 温度显示部分方案一:温度的显示通过数码管显示,数码管驱动简单,但是所能显示的字符数量有限有局限性方案二:用液晶来显示温度传感器采集到的温度,虽然操作比数码管要复杂一点,但是功能比数码管要强大很多,能够显示各种各样的字符方案论证:本设计是要显示温度,并且要显示需要显示英文字符,数码管无法满足要求,因此采用1602液晶来做显示模块第2章系统硬件构成2.1系统设计原理本设计主要分为两部分:按键控制部分和温度检测部分。
控制部分主要由电源电路,单片机最小系统,按键模块和电机驱动模块组成,遥控部分的系统框图如图2-1所示。
小车部分由电源电路,单片机最小系统,显示电路,无线电木块,报警电路,超声波电路等电路模块组成,小车部分的系统框图如图2-2所示。
2.2主要元器件简介2.2.1 STC89C52RC简介常用的单片机有很多种:Intel8051系列、Motorola和M68HC系列、Atmel 的AT89系列、台湾华邦(Winbond)W78系列、荷兰PiliPs的PCF80C51系列、MicrochiP公司系列4位单片机、台湾义隆的EM-78系列等[1]。
本次设计最终选用了STC89C52单片机。
图2-11 液晶显示电路2.2.3 L298N芯片直流电机驱动模块该模块由L298N作为双H桥直流电机驱动芯片,驱动部分端子供电范围Vs:+5V~+35V。
如果在模块上取电压供电,则模块供电范围为Vs:+7V~+35V。
模块的驱动不封峰值电流Io为2A。
其他相关参数见表2-1。
模块的实物图见附录附件1(注:红色线框部分为电源接口)。
表2-1 L298N芯片直流电机驱动模块产品参数逻辑部分端子供电范围Vss +5V~+7V(可板内取电+5V)逻辑部分工作电流范围0~36mA控制信号输入电压范围低电平:-0.3V≤Vin≤1.5V高电平:2.3V≤Vin≤Vss使能信号输入电压范围低电平:-0.3≤Vin≤1.5V(控制信号无效)高电平:2.3V≤Vin≤Vss(控制信号有效) 最大功耗20W(温度T=75℃时)存储温度-25℃~+130℃驱动板尺寸82mm*57mm*33mm(带固定铜柱,散热片高度)驱动板重量60g其他扩展控制方向指示灯、逻辑部分板内取电接口2.2.4遥控部分独立按键电路遥控部分的独立按键与单片机的接口设置为P1.2、P1.3、P1.4、P1.5,分别控制小车的前进、后退、左转弯、右转弯。
独立按键采用低电平触发,即当按下按键时给单片机一个低电平信号,单片机随后做出相应的处理,当按键松开时,单片机接收到一个高电平信号,单片机随后继续做出相应处理。
控制部分的独立按键电路如图2-12所示。
图2-12 控制部分独立按键电路第3章软件的设计与说明3.1软件设计系统功能的实现依赖于软、硬件的协同工作。
主控芯片为STC89C52RC单片机。
单片机控制软件实现遥控和小车的各项功能。
程序编译采用Keil uVision4编程软件,Keil uVision4程序编译界面如图3-1所示。
程序部分采用目前单片机最通用的C语言进行编程。
程序的烧录软件采用STC_ISP_V479软件烧写编译好的HEX文件,STC_ISP_V479软件程序烧写界面如图3-2所示。
图3-1 Keil uVision4编程软件界面图3-2 STC_ISP_V479软件程序烧写界面3.2软件的说明3.2.1 控制部分主程序流程遥控部分主程序流程图如图3-3所示。
程序从主函数开始执行,独立按键模块初始化,同时在主函数中定义单片机口对应的按键按下时所发出的函数值。
接下来判断是否有按键按下,如果有按键按下,则发送相应的按键对应的函数值,接着判断是否又有按键按下。
如果未发现按键按下则在主函数中循环判断是否有按键按下。
图3-3 遥控主程序流程图3.2.2 温度检测显示部分主程序流程图小车部分主程序流程图如图3-5所示。
程序从主函数开始执行,液晶显示模块初始化,按键模块初始化。
各个模块初始化完毕后,单片机判断是否接受到了DS18B20采集的数据信号,如果接收到信号,处理相应的数值,如果没有接收到新的数值则返回继续判断是否接受到新的信号。
接收到信号后,单片机对应的对液晶的读写进行命令。
图3-5 温度检测显示部分流程图第4章调试与总结基于单片机的智能小车控制有许多的模块,在做整体设计之前首先是对每个模块的调试。
只有在确保每个模块都正常的情况下才能进行总体的设计和总体的调试。
每个模块都需要软硬件的调试才能确保模块的正常。
单片机的电路系统相对于简单一些,对于焊接只要多练习就不会出现问题,但是,单片机的电路系统中只要出于一处的错误,则会对检测造成很大的不便,而且电路的交叉线较多,对于各种锋利的引脚都要注意处理,否则会刺破带有包皮的导线,则会对电路造成短路现象。
在本次单片机的设计调试中遇到了很多的问题。
回想这些问题只要认真多思考都是可以避免的,主要问题在于电机不能正常速度驱动,原因出于电源电压不够造成的。
解决方案:更换大功率电源。
4.1 调试的总结通过这次设计,掌握51单片机的原理,了解简单传感器组成原理,初步掌握传感器的调整及测试方法,提高动手能力和排除故障的能力。
同时通过本课题设计与装配、调试,提高自己的动手能力,巩固已学的理论知识,建立单片机理论和实践的结合,了解传感器各单元电路之间的关系及相互影响,从而能正确设计、计算定时计数的各个单元电路。
初步掌握传感器的调整及测试方法。
提高动手能力和排除故障的能力。