收藏 分销(赏)

智能小车专业课程设计.doc

上传人:快乐****生活 文档编号:2656126 上传时间:2024-06-03 格式:DOC 页数:57 大小:778.04KB 下载积分:14 金币
下载 相关 举报
智能小车专业课程设计.doc_第1页
第1页 / 共57页
智能小车专业课程设计.doc_第2页
第2页 / 共57页


点击查看更多>>
资源描述
. 智能巡线小车设计(A) [摘要] 此次毕业设计分为四个模块:电源模块、路面检测模块、单片机最小系统 、电机驱动模块。电源模块是采取12V电源双路供电,一路直接供给电机,一路经过稳压电路输出5V电源给LM324、单片机和L298N。循迹模块是采取三个单反射式红外传感器TCRT5000并排安装,来检测路面情况,输出给单片机TTL电平信号。单片机最小系统是满足单片机工作系统。电机驱动选择是驱动芯片L298直接驱动两个直流减速电机,并采取PWM调整速度,达成两个电极不一样速度,从而控制小车行驶速度。 [关键词] 单片机 电源 路面检测 电机驱动 PWM Smart Patrol Line Vehicle Yangbin (Grade 07,Class 02, Major Technique of Measuring Control and Instrument,Mechanical Engineering Dept.,Shaanxi University of Technology,Hanzhong 723003,Shaanxi) Tutor:Liang yingxuan Abstract:The graduation project is divided into four modules: power supply module, the road detection module, the smallest single chip system, the motor drive module. 12V power supply module is the use of dual power supply, direct supply of the motor all the way, all the way through the 5V output voltage regulator to power the LM324, MCU and L298N. Tracking module is the use of three single-reflection infrared sensor TCRT5000 side by side, to detect the road conditions, the output TTL level signal to the microcontroller. Minimum system MCU is to meet the minimum system work system. Motor driver chips L298 is selected to drive two DC gear motor directly, and use PWM to adjust the speed to achieve two electrodes at different speeds to control car speed. Key words:MCU power supply the road detection Motor driver PWM 目 录 1引言 1 1.1智能小车意义和作用 1 1.2智能小车现实状况 2 1.3 论文各部分关键内容 2 2 方案论证和选择 3 2.1 任务 3 2.2 电源模块设计 3 2.3 路面检测模块设计 4 2.3.1 传感器类型选择 4 2.3.2 红外传感器方案 4 2.3.3 电压比较器选择 5 2.4 控制电机方案比较 5 2.5 电机驱动方案比较 5 2.6 主控制芯片选择 6 2.7 本章小结 6 3 硬件电路设计 7 3.1 总体设计 7 3.2 单片机最小系统 7 3.2.1 时钟电路 8 3.2.2 复位及复位电路 9 3.3路面检测模块 12 3.3.1 传感器TCRT5000介绍 12 3.3.2 比较器LM324 13 3.3.3 具体电路 14 3.3.5 TTL电平 16 3.4 电源模块 17 3.5 电机驱动模块 18 3.5.1 电机驱动芯片L298N 18 4 软件设计 20 4.1 PWM 20 4.2 主函数程序设计 22 4.3 寻迹子函数程序设计 23 4.4 调速子程序 25 5 整体调试 28 5.1 测试方法及仪器: 28 致谢 30 参考文件 31 外文翻译 32 附录A 硬件连接图 44 附录B 硬件清单 45 附录C 程序清单 46 1 引言 1.1 智能小车意义和作用 自第一台工业机器人诞生以来,机器人发展已经遍布机械、电子、冶金、交通、宇航、国防等领域。多年来机器人智能水平不停提升,而且快速地改变着大家生活方法。大家在不停探讨、改造、认识自然过程中,制造能替换人劳动机器一直是人类梦想。 伴随科学技术发展,机器人感觉传感器种类越来越多,其中视觉传感器成为自动行走和驾驶关键部件。视觉经典应用领域为自主式智能导航系统,对于视觉多种技术而言图像处理技术已相当发达,而基于图像了解技术还很落后,机器视觉需要经过大量运算也只能识别部分结构化环境简单目标。视觉传感器关键器件是摄像管或CCD,现在CCD已能做到自动聚焦。但CCD传感器价格、体积和使用方法上并不占优势,所以在不要求清楚图像只需要粗略感觉系统中考虑使用靠近觉传感器是一个实用有效方法。 机器人要实现自动导引功效和避障功效就必需要感知导引线和障碍物,感知导引线相当给机器人一个视觉功效。避障控制系统是基于自动导引小车(AVG—auto-guide vehicle)系统,基于它智能小车实现自动识别路线,判定并自动避开障碍,选择正确行进路线。使用传感器感知路线和障碍并作出判定和对应实施动作。 该智能小车能够作为机器人经典代表。它能够分为三大组成部分:传感器检测部分、实施部分、CPU。机器人要实现自动避障功效,还能够扩展循迹等功效,感知导引线和障碍物。能够实现小车自动识别路线,选择正确行进路线,并检测到障碍物自动躲避。基于上述要求,传感检测部分考虑到小车通常不需要感知清楚图像,只要求粗略感知即可,所以能够舍弃昂贵CCD传感器而考虑使用价廉物美红外反射式传感器来充当。智能小车实施部分,是由直流电机来充当,关键控制小车行进方向和速度。单片机驱动直流电机通常有两种方案:第一,勿需占用单片机资源,直接选择有PWM功效单片机,这么能够实现正确调速;第二,能够由软件模拟PWM输出调制,需要占用单片机资源,难以正确调速,但单片机型号选择余地较大。考虑到实际情况,本文选择第二种方案。CPU使用STC89C52单片机,配合软件编程实现。 1.2 智能小车现实状况 现智能小车发展很快,从智能玩具到其它各行业全部有实质结果。其基础可实现循迹、避障、检测贴片、寻光入库、避崖等基础功效,这几届电子设计大赛智能小车又在向声控系统发展。比较出名飞思卡尔智能小车更是走在前列。我此次设计关键实现循迹、检测铁片、显示小车行走时间这三个功效。 1.3 论文各部分关键内容 第1章对智能循迹小车意义和作用,现实状况进行简单叙述。 第2章介绍了该智能循迹小车系设计方案比较和选择,分析了各模块功效。 第3章叙述了智能小车系统硬件电路设计,其中包含电源模块、路面检测模块、单片机最小系统、电机驱动模块,和部分辅助电路。 第4章首先介绍了该系统软件编程,和程序调试过程中所用到程序调试软件及其调试环境。 最终总结部分说明了本论关键内容,举出了在系统测试过程中所发觉问题,并提出了可能处理方案。 2 方案论证和选择 2.1 任务 设计一个基于单片机控制自动寻迹小车,使小车能够自动检测地面黑色轨迹,并沿着黑色车轨迹行驶。系统方案方框图图2.1所表示 检测黑线 软件控制 驱动电机 控制小车 图2.1 小车工作原理框图 设计要求: 基础要求:实现小车自动循迹,能前进、左转弯、右转弯、后退,检测沿途铁片并显示铁片数目跟小车行走时间。(根据程序预设); 扩展部分:实现小车避障功效(如时间充足); 关键设计内容: 1:电源模块设计。 2:路面检测模块设计。 3:单片机最小系统设计。 4:电机驱动模块设计。 2.2 电源模块设计 方案1:采取单电源供电,经过单电源同时对单片机和直流电机进行供电,此方案优点是,降低机身重量,操作简单,其缺点是,这么会使单片机波动变大,影响单片机性能,稳定性比较弱。 方案2:采取双电源供电,经过两个独立电源分别对单片机和直流电机进行供电,此方案优点是,降低波动,稳定性比很好,能够让小车愈加好运作起来,唯一缺点就是会增加小车重量。 综合以上优缺点,本设计决定采取第二种方案。 2.3 路面检测模块设计 2.3.1 传感器类型选择 循迹模块对于智能巡线小车来说就像来说有如人眼睛对于人,是提供给小车“眼睛”,这类光电传感器能够分为:可见光传感器、红外传感器、紫外线传感器等(此处不考虑光电耦合器件和位置敏感器件,因为它们占用太多MCU资源,用起来不方便)。 方案1:可见光传感器是基于可见光源传感器,它结构简单、设计成熟,不过它工作在可见光波段,轻易被外界干扰。 方案2:红外光传感器。红外线是波长为 830nm~950nm 电磁波,自然环境物理在该波段辐射量是很微弱,所以红外反射式传感器受外界干扰较小,可靠性高。设计技术成熟,应用广泛。 方案3:紫外线传感器。在自然环境下该类传感器极难受干扰,可靠性高,不过它价格昂贵。所以我们最终选择方案二,即红外光传感器作为传感器检测模块基础器件。 2.3.2 红外传感器方案 循迹关键是检测路面情况,利用光反射原理,当光线照射在白在线,反射量比较大,反之,照在黑在线,因为黑色对光吸收,反射回来量比较少,这么就能够判定黑带轨道走向。为此我们产生以下三种方案。 方案1:用光敏电阻组成光敏探测器。光敏电阻阻值能够跟随周围环境光线改变而改变。当光线照射到白线上面时,光线发射强烈,光线照射到黑线上面时,光线发射较弱。所以光敏电阻在白线和黑线上方时,阻值会发生显著改变。将阻值改变值经过比较器就能够输出高低电平。 不过这种方案受光照影响很大,不能够稳定工作。所以我们考虑其它愈加稳定方案。 方案2:用红外发射管和接收管自己制作光电对管寻迹传感器。红外发射管发出红外线,当发出红外线照射到白色平面后反射,若红外接收管能接收到反射回光线则检测出白线继而输出低电平,若接收不到发射管发出光线则检测出黑线继而输出高电平。这么自己制作组装寻迹传感器基础能够满足要求,不过工作不够稳定,且轻易受外界光线影响,所以我们放弃了这个方案。 方案3:采取TCRT50000光电传感器,该传感器模块是基于TCRT5000红外光电传感器设计一款红外反射式光电开关,传感器采取高发射功率红外光电二极管和高灵敏度光电晶体管组成,输出信号经施密特电路整形,稳定可靠。 2.3.3 电压比较器选择 市场上能够做电压比较器运放,实在是太多,依据试验室现有条件和器件选择经济而且能满足使用要求标准,此次电压比较器选择试验室现有LM324,此器件价格廉价,而且带有真差动输入四运算放大器。 2.4 控制电机方案比较 方案1:采取步进电机作为该系统驱动电机。因为其转过角度能够正确定位,能够实现小车前进旅程和位置正确定位。即使采取步进电机有很多优点,步进电机输出力矩较低,随转速升高而下降,且在较高转速时会急剧下降,其转速较低,不适适用于小车等有一定速度要求系统。经综合比较考虑,我们放弃了此方案。 方案2:采取小型直流减速电机。直流减速电机转动力矩大,体积小,重量轻,装配简单,使用方便。因为其内部由高速电动机提供原始动力,带动变速(减速)齿轮组,能够产生较大扭力。 为了能够很好满足系统要求,我们选择了方案2。 2.5 电机驱动方案比较 方案1:采取继电器对电动机开或关进行控制,经过开关切换对小车速度进行调整.此方案优点是电路较为简单,缺点是继电器响应时间慢,易损坏,寿命较短,可靠性不高。 方案2:采取电阻网络或数字电位器调整电动机分压,从而达成分压目标。但电阻网络只能实现有级调速,而数字电阻元器件价格比较昂贵。更关键问题在于通常电动机电阻很小,但电流很大,分压不仅回降低效率,而且实现很困难。 方案3:采取功率三极管作为功率放大器输出控制直流电机。线性型驱动电路结构和原理简单,加速能力强,采取由达林顿管组成 H型桥式电路(图2.1a)。用单片机控制达林顿管使之工作在占空比可调开关状态下,正确调整电动机转速。这种电路因为工作在管子饱和截止模式下,效率很高,H型桥式电路确保了简单实现转速和方向控制,电子管开关速度很快,稳定性也极强,是一个广泛采取 PWM调速技术。现市面上有很多此种芯片,我选择了L298N(图2.1b)。 这种调速方法有调速特征优良、调整平滑、调速范围广、超载能力大,能承受频繁负载冲击,还能够实现频繁无级快速开启、制动和反转等优点。所以决定采取使用功率三极管作为功率放大器输出控制直流电机。 a H型桥式电路 b L298N实物图 图2.1 2.6 主控制芯片选择 方案1:能够采取ARM为系统控制器,优点是该系统功效强大,片上外设集成度搞密度高,提升了稳定性,系统处理速度也很高,适合作为大规模实时系统控制关键。 方案2:选择51系列单片机,AT89S52单片机算术运算功效强,软件编程灵活、自由度大,功耗低、体积小、技术成熟,成本也比ARM低。 依据自己知识能力,试验室现有条件,选择STC89C52RC单片机作为此次毕业设计主控芯片,而且此芯片烧程序也不需要专用下载器,其次节省了成本,只要安装USB转串口驱动,在一般计算机上就能够烧写程序,很方便。 2.7 本章小结 经过主动论证,最终采取以STC89C52单片机为控制关键,黑白线信号经过TCRT5000输出高低电压信号,再经过LM324电压比较器输出给单片机标准TTL电平信号,而单片机依据输入口高低电平改变来实施相对应指令,使小车达成稳定行驶。 3 硬件电路设计 3.1 总体设计 智能小车采取前轮驱动,后轮左右两边各用一个直流电机驱动,调制前面两个轮子转速起停从而达成控制转向目标,前轮是万象轮,起支撑作用。将循迹光电对管分别装在车体下左中右,分别检测来自路面信息,比如当只有左边传感器检测到黑线时候(即对应输出是高电平时候),经过主控制器控制左边电机速度慢一点,同时右边速度快一点,就能够完成小车转弯,为了使小车平稳过渡弯道,能够将对应电机占空比调整范围小一点,这么能够避免急转弯,对小车稳定行驶也有作用。 STC89C52 路面检测电路 时钟电路 复位电路 电机驱动电路 图3.1 硬件总体电路框图 3.2 单片机最小系统 此次设计所用STC89C52是一个带8K字节闪烁可编程可檫除只读存放器(FPEROM-Flash Programmable and Erasable Read Only Memory )低电压,高性能COMOS8微处理器,俗称单片机。该器件采取ATMEL搞密度非易失内存制造技术制造,和工业标准MCS-51指令集和输出管脚相兼容。 图3.2 STC89C52单片机 3.2.1 时钟电路 STC89C52内部有一个用于组成振荡器高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器输入端和输出端。时钟能够由内部方法产生或外部方法产生。内部方法时钟电路图3.3(a) 所表示,在XTAL1和XTAL2引脚上外接定时组件,内部振荡器就产生自激振荡。定时组件通常采取石英晶体和电容组成并联谐振回路。晶体振荡频率能够在1.2~12MHz之间选择,电容值在5~30pF之间选择,电容值大小可对频率起微调作用。 外部方法时钟电路图3—3(b)所表示,XTAL1接地,XTAL2接外部振荡器。对外部振荡信号无特殊要求,只要求确保脉冲宽度,通常采取频率低于12MHz方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。 (a)内部方法时钟电路 (b)外部方法时钟电路 图3.3 时钟电路 此次采取是内部方法。C1,C2为30PF瓷片电容。 3.2.2. 复位及复位电路 (1)复位操作 复位是单片机初始化操作。其关键功效是把PC初始化为0000H,使单片机从0000H单元开始实施程序。除了进入系统正常初始化之外,当因为程序运行犯错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新开启。 除PC之外,复位操作还对其它部分寄存器有影响,它们复位状态如表一所表示。 表3.1 部分寄存器复位状态 寄存器 复位状态 寄存器 复位状态 PC 0000H TCON 00H ACC 00H TL0 00H PSW 00H TH0 00H SP 07H TL1 00H DPTR 0000H TH1 00H P0-P3 FFH SCON 00H IP XX000000B SBUF 不定 IE 0X000000B PCON 0XXX0000B TMOD 00H (2)复位信号及其产生 RST引脚是复位信号输入端。复位信号是高电平有效,其有效时间应连续24个振荡周期(即二个机器周期)以上。若使用颇率为12MHz晶振,则复位信号连续时间应超出2us才能完成复位操作。 产生复位信号电路逻辑图3.4所表示: 图3.4 复位信号电路逻辑图 整个复位电路包含芯片内、外两部分。外部电路产生复位信号(RST)送至施密特触发器,再由片内复位电路在每个机器周期S5P2时刻对施密特触发器输出进行采样,然后才得到内部复位操作所需要信号。 复位操作有上电自动复位相按键手动复位两种方法。 上电自动复位是经过外部复位电路电容充电来实现,其电路图3.5(a)所表示。这佯,只要电源Vcc上升时间不超出1ms,就能够实现自动上电复位,即接通电源就成了系统复位初始化。 按键手动复位有电平方法和脉冲方法两种。其中,按键电平复位是经过使复位端经电阻和Vcc电源接通而实现,其电路图3.5(b)所表示;而按键脉冲复位则是利用RC微分电路产生正脉冲来实现, 其电路图3.5(c)所表示: (a)上电复位 (b)按键电平复位 (c)按键脉冲复位 图3.5复位电路 上述电路图中电阻、电容参数适适用于6MHz晶振,能确保复位信号高电平连续时间大于2个机器周期。 本系统复位电路采取图3.5(a)上电复位方法。 STC89C52具体引脚介绍以下: ① 主电源引脚(2根) VCC(Pin40):电源输入,接+5V电源 GND(Pin20):接地线 ②外接晶振引脚(2根) XTAL1(Pin19):片内振荡电路输入端 XTAL2(Pin20):片内振荡电路输出端 ③控制引脚(4根) RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期高电平将使单片机复 图3.6 STC89C52引脚图 位。 ALE/PROG(Pin30):地址锁存许可信号 PSEN(Pin29):外部内存读选通信号 EA/VPP(Pin31):程序内存内外部选通,接低电平从外部程序内存读指令,假如接高电平则从内部程序内存读指令。 ④可编程输入/输出引脚(32根) STC89C52单片机有4组8位可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。 PO口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7 P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7 P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7 P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.7 STC89C52关键内部资源如表二所表示。 表3.2 STC89C52内部资源 关键功效特征 兼容MCS51指令系统 32个双向I/O口 3个16位可编程定时/计数器中止 2个串行中止 2个外部中止源 2个读写中止口线 低功耗空闲和掉电模式 8K可反复擦写Flash ROM 256x8bit内部RAM 时钟频率0-24MHz 可编程UART串行通道 共6个中止源 3级加密位 软件设置睡眠和唤醒功效 3.3 路面检测模块 3.3.1 传感器TCRT5000介绍 TCRT5000红外光电传感器是一款红外反射式光电开关。传感器采取高发射功率红外光电二极管和高灵敏度光敏三极管组成,其输出信号经过施密特电路整形,稳定可靠。 图3.7 红外光电传感器TCRT5000 传感器红外发射二极管不停发射红外线,当发射出红外线照射在黑色物体上,因为黑颜色物体反射基数低,没有反射回来或反射回来强度不够大时,光敏三极管一直处于关断状态,此时图3.6中4跟5之间压降就比较大,经过稳定测试以后压降大约在4.62V左右,当发射到白颜色物体上时候,因为白颜色反射基数大,足以是光敏三极管饱和,所以此时上图中4跟6之间压降比较低,经过稳定测试以后压降在0.56V左右,改变较为显著。 图3.8 红外光电传感器模型 3.3.2 比较器LM324 LM324为四运放集成电路,采取14脚双列直插塑料封装。内部有四个运算放大器,有相位赔偿电路。电路功耗很小,工作电压范围宽,可用正电源3~32V,或正负双电源±1.5V~±15V工作。 在黑线检测电路中用来确定红外接收信号电平高低,以电平高低判定黑线有没有。在电路中,LM324一个输入端需接滑动变阻器,经过改变滑动变阻器阻值来提供适宜比较电压。 图3.9 LM324引脚图 3.3.3具体电路 经过TCRT5000检测黑线,输出接收到信号给LM324,接收电压和比较电压比较后,输出信号变为标准TTL高低电平,再输入到单片机中,用以判定是否检测到黑线。 图3.10 路面检测模块具体电路图 参数讲解: 1:前面说到TCRT5000是由一个红外线发光二极管和一个光敏三极管组成, 图3.11 TCRT5000红外发光二极管伏安曲线(20摄氏度时) 图所表示,当红外发光管电压达成1.3V左右时候,流经红外发光管电流是最大,即此时红外发光管发射功率最大。传感器安装在小车地盘,距离路面距离很短,再者对于小车续航能力来说,功耗低话续航能力好一点,鉴于此两方面考虑,我们选择红外发射管压降在1.1V左右,也经过反复测试,此时发射功率检测1cm左右距离黑白线,效果较为显著,假如电源电压为5V,则分流电阻R=(5-1.2)/0.01=380奥姆,考虑到发光二极管发烧和二极管阻抗,对于限流电阻R1,我们选择150奥姆,经过测试,TCRT5000也工作很稳定。 2:对于分压电阻R2选择,因为R2跟光敏三极管串联,所以R2大小和接收管电压改变相关系。初步选择R2=20k,经过测试,我们得出下面一组资料,当发光二极管发射红外光照射到黑线时候,黑线将光线吸收,造成光敏三极管截止,此时加在图中4、5点压降为4.69V,当为白线时,4、5两点压降在0.76V,那么输出给电压比较器异相端电压就是在黑白两种状态下此分压电阻压降,即黑线时为(5-4.69)=0.31V,白线时为(5-0.76)=4.24V,经过现场测试二者电压出入不大,基础符合预想。 3:参考电压选择,从上面测试,我们得出R1,R2为150,20k时TCRT5000检测黑线时候输入给电压比较器电压为0.27V,白线时候是4.38V,所以我们将参考电压定为2V,即检测到白线时候,参考电压小于异相端电压,所以输出为低电平,反之则为高电平。对于参考电压,我们选择10k电位器输出,要输出2V电压给电压比较器同相端,那么电位器阻值分配为6k和4k,经过测试,为3.6k,分析原因,一是因为10k电位器全部阻值并不是很标准10k,我拿到为9.6k左右,还有此时加在电位器上电压也并不是很正确5V电压,所以才出现这么情况。 3.3.4传感器安装 在小车具体循迹行走过程中,为了能正确测定黑线位置并确定小车行走,需要再车底盘安置三个传感器,装置位置图3.6所表示, 三个传感器,那就意味着八种1,0组合状态,为了使小车平稳转弯,设置“大拐”“小拐”,意思有左大拐,左小拐,右大拐,右小拐,直线前进,后退,还有两种无效状态(101,111),下来有必需说下传感器安装距离,为了检测方便我们使小车两个传感器之间距离刚好大于黑线距离,这么目标就是,当一个传感器检测不到时候,它旁边传感器就要检测到黑线呢,这么就使传感器无盲区。 左电机 右电机 后万 向轮 左传感器 中传感器 右传感器 图3.12 传感器安装布局图 3.3.5 TTL电平 TTL电平信号被利用最多是因为通常数据表示采取二进制要求,+5V等价于逻辑“1”,0V等价于逻辑“0”,这被称做TTL信号系统。TTL电平VCC是5V。当光电对管检测到黑线时,输出高电平,高于电压比较器“+”输入端设定比较电压,相当于5V,等价于逻辑“1”; 当光电对管检测到白线时,输出低电平,低于电压比较器“+”输入端设定比较电压,相当于0V,等价于逻辑“0”。TTL电路是电流控制器件,通常提供25毫安驱动能力。TTL电路速度快,传输延迟时间短(5-10ns),不过功耗大。 TTL输出低电平<0.8V ;输出低电平>2.4V。在室温下,通常输出高电平是3.5V,输出低电平是0.2V。 TTL输入低电平 <1.2V ;输入高电平>2.0V。所以,TTL器件输出低电平要小于0.8V,高电平要大于2.4V。输入时,低于1.2V就认为是0,高于2.0V就认为是1。 3.4 电源模块 电源对于一个系统来说作用是巨大,它是系统工作稳定前提。下表是整个方案中需要电源及电源值。 表3.3 本系统供电项目及数值 电源供电专案 电源数值 电机驱动芯片L298N +4.5V--+7V STC单片机 +3.3V--+5.5V 电压比较器LM324 +3V—+32V 直流减速电机 +6V--+24V 对于电压比较器,我们期望比较出来电平是TTL电平,这个输出电平高电平电压值跟LM324供电电压相关,假如供电电压为5V,因为比较器内部晶体管压降,则它输出高电平电压值应该小于5V,大约保持在4.5V左右,所以我们选择给LM324+5V电压供电,此电压能够供给STC89C52、L298也很适宜.对于电机,我们选择+12V电压。一路供给直流减速电机,一路经过稳压芯片LM2576输出+5V电压给LM324、L298、单片机(考虑到散热,我们选择LM2576,而放弃LM7805) 下图就是电源原理图,输入是12V,输出是+5V。 图3.13 12V电源转5V电源电路原理图 3.5电机驱动模块 3.5.1 电机驱动芯片L298N 电机驱动芯片L298N是SGS企业产品,内部包含4信道逻辑驱动电路。是一个二相和四相电机专用驱动器,即内含二个H桥高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下电机。其引脚排列图3.14所表示,1脚和15脚可单独引出连接电流采样电阻器,形成电流传感信号。L298可驱动2个电机,OUT1、OUT2和OUT3、OUT4之间分别接2个电动机。5、7、10、12脚接输入控制电平,控制电机正反转,ENA,ENB接控制使能端,控制电机停转。也利用单片机产生PWM信号接到ENA,ENB端子,对电机转速进行调整。 图3.14 L298N引脚图 经过单片机I/O口输入改变芯片控制端电平,即能够对电机进行正反转,停止操作,输入引脚和输出引脚逻辑关系图为下表 表3.4 L298N输入输出也逻辑表 使能端ENA In1 In2 运转状态 0 × × 停止 1 1 0 正转 1 0 1 反转 1 1 1 刹停 1 0 0 停止 用一个L298N驱动左右两个电机,In1、In2控制左电机,In3、In4控制右电机,而使能端一直为高电平,采取In1、In2、In3、In4同时为0来达成电机停止,从而是小车停止。 图3.15 电机驱动电路图 4 软件设计 在进行单片机控制系统设计时,除了系统硬件设计以外,大量工作就是怎样让依据系统每一个现象或作用设计应用程序。所以,软件设计在单片机控制系统设计中占相关键地位。对于本系统,软件更为关键。此次软件设计需要完成以下两个任务。 1:单片机依据传感器I/O口输入状态,来对应实施判定程序,来达成小车前进,后退,停止; 2:单片机两个I/O口同时产生两个占空比不相同方波,来控制小车电机车速,来达成小车左转弯、右转弯; 为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。所谓“模块”,实际上就是完成一定功效,相对独立程序段,这中程序设计方法叫做模块化程序设计法。 模块化程序设计方法关键优点是: 1、 单个模块化起一个完整程序易编写及调试; 2、 模块能够共存,一个模块能够被多个任务在不一样条件下调用; 3、 模块程序许可设计者分割任务和利用已经有程序,为设计者提供方便。 本系统软件采取模块化结构,由主程序,寻迹子程序,调速子程序等组成。 4.1 PWM 脉冲宽度调制(PWM),是英文“Pulse Width Modulation”缩写,简称脉宽调制,是利用微处理器数字输出来对模拟电路进行控制一个很有效技术,广泛应用在从测量、通信到功率控制和变换很多领域中。脉冲宽度调制是一个模拟控制方法,其依据对应载荷改变来调制晶体管栅极或基极偏置,来实现开关稳压电源输出晶体管或晶体管导通时间改变,这种方法能使电源输出电压在工作条件改变时保持恒定,是利用微处理器数字输出来对模拟电路进行控制一个很有效技术。 伴随电子技术发展,出现了多个PWM技术,其中包含:相电压控制PWM、脉宽PWM法、随机PWM、SPWM法、线电压控制PWM等,而在镍氢电池智能充电器中采取脉宽PWM法,它是把每一脉冲宽度均相等脉冲列作为PWM波形,经过改变脉冲列周期能够调频,改变脉冲宽度或占空比能够调压,采取合适控制方法即可使电压和频率协调改变。能够经过调整PWM周期、PWM占空比而达成控制充电电流目标。 模拟信号值能够连续改变,其时间和幅度分辨率全部没有限制。9V电池就是一个仿真器件,因为它输出电压并不正确地等于9V,而是随时间发生改变,并可取任何实数值。和这类似,从电池吸收电流也不限定在一组可能取值范围之内。模拟信号和数字信号区分在于后者取值通常只能属于预先确定可能取值集合之内,比如在{0V, 5V}这一集合中取值。模拟电压和电流可直接用来进行控制,如对汽车收音机音量进行控制。在简单模拟收音机中,音量旋钮被连接到一个可变电阻。拧动旋钮时,电阻值变大或变小;流经这个电阻电流也随之增加或降低,从而改变了驱动扬声器电流值,使音量对应变大或变小。和收音机一样,模拟电路输出和输入成线性百分比。尽管模拟控制看起来可能直观而简单,但它并不总是很经济或可行。其中一点就是,模拟电路轻易随时间漂移,所以难以调整。能够处理这个问题精密模拟电路可能很庞大、粗笨(如传统家庭立体声设备)和昂贵。模拟电路还有可能严重发烧,其功耗相对于工作组件两端电压和电流乘积成正比。模拟电路还可能对噪声很敏感,任何扰动或噪声全部肯定会改变电流值大小。 经过以数字符方法控制模拟电路,能够大幅度降低系统成本和功耗。另外,很多微控制器和DSP已经在芯片上包含了PWM控制器,这使数字控制实现变得愈加轻易了。脉冲宽度调制(PWM)是一个对模拟信号电平进行数字编码方法。经过高分辨率计数器使用,方波占空比被调制用来对一个具体模拟信号电平进行编码。PWM信号仍然是数字,因为在给定任何时刻,满幅值直流供电要么完全有(ON),要么完全无(OFF)。电压或电流源是以一个通(ON)或断(OFF)反复脉冲序列被加到模拟负载上去。通时候即是直流供电被加到负载上时候,断时候即是供电被断开时候。只要带宽足够,任何模拟值全部能够使用PWM进行编码。多数负载(不管是电感性负载还是电容性负载)需要调制频率高于10Hz,通常调制频率为1kHz到200kHz之间。 很多微控制器内部全部包含有PWM控制器。比如,Microchip企业PIC16C67内含两个PWM控制器,每一个全部能够选择接通时间和周期。占空比是接通时间和周期之比,调制频率为周期倒数。实施PWM操作之前,这种微处理器要求在软件中完成以下工作: 1、设置提供调制方波片上定时器/计数器周期 2、 在PWM控制寄存器中设置接通时间 3、设置PWM输出方向,这个输出是一个通用I/O管脚 4、开启定时器 5、使能PWM控制器本系统采取PWM来调整直流电机速度。 PWM是经过控制固定电压直流电源开关频率,从而改变负载两端电压,进而达成控制要求一个电压调整方法。PWM能够应用在很多方面,如电机调速、温度控制、压力控制等。 在PWM驱动控制调整系统中,按一个固定频率来接通和断开电源,并依据需要改变一个周期内“接通”和“断开”时间长短。经过改变直流电机电枢上电压“占空比”来改变平均电压大小,从而控制电动机转速。所以,PWM又被称为“开关驱动装置”。 在脉冲作用下,当电机通电时,速度增加;电机断电时,速度逐步降低。只要按一定规律,改变通、断电时间,即可让电机转速得到控制。 4.2 主函数程序设计 对于小车行驶,我这么设想,整个系统供上电以后,就不停实施扫描端口,当此输入口为低电平时,意味着小车开关已经按下,小车已经发动起来了,单片机实施对应子程序,不然就一直扫描。这么比较贴合实际部分。一样,当此输入口为高电平时,小车停止行驶。前面第2章讲到,L298N和单片机相连接6个I/O口,in1~in4是输出控制电机端口,in5~in6是使能端,in5控制in1和in2,in6控制in3和in4,只有当它们为高电平时,in1~in4才输出有效,那么要达成两个电机同时转动,就必需使in5~in6同时为高电平。 对于小车停止,预想是,当开关按下时,小车开始行驶,计数器也开始计数,当不再检测到黑线时候就停止,这么,对于B部分时间显示来说,能够设定外部中止,停止时候定时器停止计数,在数码管上就显示目前计数值,即为小车行驶时间。 所以主函数能够这么写: Void mian() { In5=1; In6=1; //L28N使能端,只有二者全部为高电平时,in1~in4输入高低电平才有效// While(kaiguan==0)//“发动机钥匙”// { Xunji();//循迹程序// } } 总体程序步骤图:结束 停止 N Y 是否检测到黑线 Y 转向子程序 是否偏离黑线 继续直线前进 N Y N 开关是否按下 开启小车 开始 图4.1 程序主体步骤图 4.3 寻迹子函数程序设计 寻迹,顾名思义,就是单片机寻求正确路线,以达成正确行驶,本设计采取黑 线行驶,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服