基于STC12C5A08S2单片机履带小车的功率控制
更新时间:2023-04-08 04:04:01 阅读量: 实用文档 文档下载
摘要
本文设计是基于STC12C5A08S2单片机履带小车的功率控制。利用红外传感器控制履带车自动避开前方障碍和自动寻迹动作,实现小车的前进、后退、转弯功能。本设计主要体现小车的自主控制直流电机运行达到智能的目的,综合多个科目知识,从电系统路到软件系统设计完善,整个系统结构紧凑,硬件制作简易,具有较高的可行性和可靠性,实验测试结果满足要求。同时该履带小车可以作为玩具的发展方向,为中国的高端玩具的技术缺乏进行弥补。采用的主要技术有:(1)传感器的有效使用,(2)单片机的应用,(3)对电机的控制。
关键词:履带小车;单片机;STC12CA60S2;寻迹;避障
Abstract
This design is based on SCM STC12C5A08S2crawler for power control. Use infrared sensors to control of tracked vehicle can automatically avoid obstacles ahead and automatic tracing action, realize the car forward, backward, turning function. This design mainly car of the autonomic control of DC motor operation to achieve intelligent, integrated many subjects knowledge, from the electrical system to improve the way software system design, the system has the advantages of compact structure, simple hardware manufacture, with high feasibility and reliability, experimental test results meet the requirements. At the same time the track car can be used as a toy development direction for China's high-end toys, the lack of technology to make amends. The main techniques are: (1) sensor is effective use, (2) the application of SCM, (3) for motor control.
Key words: crawler; MCU; STC12CA60S2; tracing; obstacle avoidance
目录
第一章前言 (1)
第二章系统方案设计 (2)
2.1履带车控制设计 (2)
2.2控制核心方案设计 (2)
2.3控制系统总体设计 (3)
第三章履带车电路设计 (4)
3.1主控电路设计 (4)
3.1.1 单片机最小系统 (4)
3.1.2 复位电路 (4)
3.2稳压电源模块 (5)
3.3LED显示模块设计 (6)
3.4驱动模块设计 (7)
3.4.1 驱动芯片选型 (8)
3.4.2 驱动电路设计 (9)
3.5循迹电路设计 (10)
3.5.1 循迹传感器 (10)
3.5.2 避障传感器设计 (11)
3.6蜂鸣器驱动模块设计 (12)
3.7履带车车体 (13)
第四章行驶方案设计 (14)
4.1循迹方案设计 (15)
4.1.1 循迹流程图 (16)
4.1.2 循迹程序设计 (17)
4.2避障方案 (18)
4.2.1 避障流程图 (19)
4.2.2 避障程序设计 (20)
4.3总体方案 (22)
第五章制作与调试 (24)
5.1PCB设计与制作 (24)
5.2履带车的安装调试 (24)
5.3履带车总体调试运行 (25)
第六章结论 (26)
结束语 (27)
致谢 (28)
参考文献 (29)
附录 (30)
第一章前言
目前我们能见到各式各样的履带车,其中最为大家熟悉的是坦克。坦克是最早应用履带的成熟车辆,发展到现在已经有很多功用的车辆使用履带,如:收割机,挖掘机,玩具车等。履带在特定的路面上有着非常好的机动性、附着性。
随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。全国电子大赛和省内电子大赛几乎每次都有智能小车这方面的题目,我校也有飞思卡尔智能车的项目,并屡次在全国智能车大赛上获奖。可见其研究意义很大。本设计就是在这样的背景下提出的,指导教师已经有充分的准备。本题目是结合科研项目而确定的设计类课题。
履带智能车与平常四轮车有着很大的区别,履带车有灵活的转向和强大的通过性,能适应各种复杂场景,现今很多机器人行动部分也是采用履带的形式,实现行动自如。本设计是履带车的行动控制研究,是智能车研究领域的重要组成部分,实现多学科综合研究。
根据题目的要求,确定如下方案:在现有玩具电动车的基础上,加装光电、红外线实现对履带车位置、运行状况的实时测量,并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据控制电机的转动实现对履带车的智能控制。这种方案能实现对履带车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。
本设计采用STC12CA60S2系列中的08S2单片机。以08S2为控制核心,利用红外传感器检测道路上的障碍,控制电动小汽车的自动避障,以及利用光电传感器检测道路轨迹自动寻迹功能。08S2是一款八位单片机,它的易用性和多功能性受到了广大使用者的好评。
08S2单片机是高速、低功耗、超强抗干扰的新一代8051单片机,内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换,针对电机控制,强干扰场合,正适合履带车的应用[1]。
1
第二章系统方案设计
2.1履带车控制设计
这里用循迹传感器和避障传感器实现履带小车的控制。这两种传感器是制作智能车普遍采用的传感器,性能较稳定。红外传感器比光电传感器的探测距离要大很多。
循迹传感器可用于履带车的探测距离较近循迹控制,循迹是指小车在白色地板上循黑线行走,由于黑线和白色地板对光线的反射系数不同,可以根据接收到的反射光的强弱来判断“道路”,没接收到反射光传感器输出低电平,反之输出高电平,经过单片机数据处理,执行相应的行驶状态。
避障传感器课用于履带车的探测距离较远避障控制,即利用红外线在不同颜色的物体表面具有不同的反射性质的特点,在小车行驶过程中不断地向前方发射红外光,当红外光遇到白色纸质地板时发生漫反射,反射光被装在小车上的接收管接收;反之小车上的接收管接收不到红外光。单片机就是否收到反射回来的红外光为依据来确定小车是否执行避障。如:当左侧红外传感器检测到障碍,向单片机发送低电平信号,单片机执行避障程序[2]。
2.2控制核心方案设计
方案一:
选用一片CPLD(如EPM7128LC84-15)作为系统的核心部件,实现控制与处理的功能。CPLD具有速度快、编程容易、资源丰富、开发周期短等优点,可利用VHDL语言进行编写开发。但CPLD在控制上较单片机有较大的劣势。同时,CPLD的处理速度非常快,而小车的行进速度不可能太高,那么对系统处理信息的要求也就不会太高,在这一点上,MCU就已经可以胜任了。若采用该方案,必将在控制上遇到许许多多不必要增加的难题。为此,我们不采用该种方案,进而提出了第二种设想。
方案二:
采用单片机作为整个系统的核心,用其控制行进中的小车,以实现其既定的性能指
2
标。充分分析我们的系统,其关键在于实现小车的自动控制,而在这一点上,单片机就显现出来它的优势——控制简单、方便、快捷。这样一来,单片机就可以充分发挥其资源丰富、有较为强大的控制功能及可位寻址操作功能、价格低廉等优点。因此,这种方案是一种较为理想的方案。
针对本设计特点——多开关量输入的复杂程序控制系统,需要擅长处理多开关量的标准单片机,而不能用精简I/O口和程序存储器的小体积单片机,D/A、A/D功能也不必选用。根据这些分析,我选定了STC12C5A08S2单片机作为本设计的主控装置,该款单片在实验课程中多次使用,性能稳定。该单片机具有功能强大的位操作指令,I/O口均可按位寻址,程序空间多达8K,对于本设计也绰绰有余,更可贵的是该单片机价格非常低廉[3]。
在综合考虑了传感器、两部电机的驱动等诸多因素后,我们决定采用一片单片机,充分利用STC12C5A08S2单片机的资源。
2.3 控制系统总体设计
智能履带车控制系统由主控模块、稳压电源模块、传感器信号模块、电机及驱动模块等部分组成,控制系统的结构框图如图2.1 所示[4]。
图2.1 控制系统的结构
3
第三章履带车电路设计
3.1 主控电路设计
主控电路主要包括两部分:单片机最小系统和复位电路。这两部分构成整个系统的核心控制整体的运转。
3.1.1 单片机最小系统
主控电路只需要连接单片机最小系统即可,引出单片机的I/O口,采用12MHZ的外部晶振。具体电路如3.1所示[5]。
图3.1 单片机最小系统
3.1.2 复位电路
该模块用于单片机的复位以及外部中断时使用。当要把按键RESET用作复位功能时,必须把J7处的跳帽接在1、2上;当要把它做外部中断使用时,必须把J7的跳帽接在2、
4
5 3上,这时当按下RESET 按键时该电路会产生一个单脉冲。电路图如3.2所示。
图3.2 复位电路
3.2 稳压电源模块
本次设计只需要两种电压供给,一种是6V —12V 的驱动模块供电,一种是单片机和传感器的+5V 稳压供电。驱动模块可直接用7.2V 的高容量电池直接供电,这种电池经过测试实际电压一般在8V 左右,能个驱动模块提供充足电量。5V 稳压电路采用MC7805CT 制作,MC7805CT 是一个三角稳压器,最大输入电压40V
,输出电压5V ,电流1A ,完全胜任本次7.2V 的输入稳压电路。接法如图3.3所示。
图3.3 稳压电源电路图
J4处接7.2V 的电池电源,经过MC7805CT 稳压之后为5V 的输出,可供单片机和传感器使用。接上J3和J5跳帽能给驱动电路供电。
在电源电路中,串联了一个IN4001整流器,并联了2个电容,这里是用于对电源进行处理,外接电源的性质比较复杂不稳定,而单片机需要一个5V 稳定的直流电源,
本设计电源用的是7.2V的高容量电池,我用IN4001整流,得到品质较好的直流电源,二极管在这里能平稳电压消除毛刺,然后经过5V稳压器得到单片机所需要的电压[6]。
3.3 LED显示模块设计
本次设计显示数据比较简单主要体现数码管的动态显示方法,显示模块采用共阴极接法的数码管显示,段码数据线接在单片机P0端口,4个位选分别接在P20-P23端口上。其原理图如3.4所示。
图 3.4 数码管显示电路
从上面电路图我们能看出数码管7段码输入直接由单片机输出,而4位码的控制没有直接由单片机直接驱动,而是由4个三极管作为开关控制选片,当单片机P20到P23输出高电平时三极管导通,位码管教接地导通,输出低电平时三极管高阻态,相应的数码管也不会被点亮。单片机作为核心控制器需要稳定的工作环境,单片机的驱动能力较弱,如果直接有I/O控制,增加了单片机的负荷,数码管电阻较小,没有开关驱动电路,会造成单片机I/O口短接,影响单片机工作,导致损坏单片机[7]。
6
3.4 驱动模块设计
采用功率三极管作为功率放大器的输出控制直流电机。线性型驱动的电路结构和原理简单,加速能力强,采用由达林顿管组成的 H型桥式电路如图3.5所示[8]。
图3.5 H桥式电路
用单片机控制达林顿管使之工作在占空比可调的开关状态下,精确调整电动机转速。这种电路由于工作在管子的饱和截止模式下,效率非常高,H型桥式电路保证了简单的实现转速和方向的控制,电子管的开关速度很快,稳定性也极强,是一种广泛采用的 PWM调速技术。现市面上有很多此种芯片,我选用了L298N如图3.6所示。
图3.6 L298N实物图
7
这种调速方式有调速特性优良、调整平滑、调速范围广、过载能力大,能承受频繁的负载冲击,还可以实现频繁的无级快速启动、制动和反转等优点。因此决定采用使用功率三极管作为功率放大器的输出控制直流电机。
3.4.1 驱动芯片选型
驱动模块采用专用芯片L298N 作为电机驱动芯片,L298N 是一个具有高电压
大电流的全桥驱动芯片外部引脚图如3.7所示。
图3.7 L298N外部引脚
其响应频率高,一片L298N可以分别控制两个直流电机。以下为L298N输入输出关系如表1所示。
表1 L298N输入输出关系
ENA IN1 IN2 电机运行情况
H H L 正转
H L H 反转
H IN2 IN1 快速停止
L X X 停止
8
3.4.2 驱动电路设计
驱动电路如图3.8所示,驱动电路IN1到IN4依次接单片机P1_0到P1_3端口,IN1和IN2控制电机1,IN3和IN4控制电机2。
图3.8 驱动电路图
电路中除了使用了驱动芯片L298N,还使用了发光二极管和续流二极管。发光二级管可以指示电极正反转动的情况,方便设计中观察状态变化,容易调试。电路中还加装了续流二极管。续流二极管经常和储能元件一起使用,防止电压电流突变,提供通路,续流二极管不是一个实质的元件,而是在电路中起到续流作用。
本设计中履带车在时间跑动中会控制电机频繁的正反转,直流电机也相当于发电机电机两级间会产生感应电动势,当电流消失时感应电动势会对电路中其他元件产生反向电压,当方向电压高于元件的反击穿电压时会损坏一些元器件,如三极管,晶闸管。这里我分别在量电机极端接上续流二极管作为保护电路。这些续流二极管构成回路消耗感应电动势产生的能量,从而保护整个电路中其他元件[9]。
9
3.5 循迹电路设计
传感器是智能车的“眼睛”,它能给我提供智能车的周围的信息,在本次设计中采用两种传感器:循迹传感器和避障传感器。循迹传感器探测距离短,但探测效果较好,识别黑白色的能力较强,成本低。而避障方面采用红外传感器,探测距离较远,能有效识别大多数颜色和黑色的差别提供稳定信号,成本稍高点。
3.5.1 循迹传感器
LM324为四运放集成电路,采用14脚双列直插塑料封装。内部有四个运算放大器,有相位补偿电路。电路功耗很小,工作电压范围宽,可用正电源3~30V,或正负双电源±1.5V~±15V工作,其内部电路如图3.9所示[10]。
图 3.9 LM324内部电路
在黑线检测电路中用来确定红外接收信号电平的高低,以电平高低判定黑线有无。在电路中,LM324的一个输入端需接滑动变阻器,通过改变滑动变阻器的阻值来提供合适的比较电压,单个集成运放如图3.10所示。
图 3.10 集成运放的管脚图
循迹电路图如图3.11所示,当TCRT5000感光导通的时候R1和R2接地,3处的电
10
压接近0,R3位滑动电阻,2处的电压设为3V,3处小于2处,LM342的OUT端会输出低电平,供单片机检测。反之LM324处输出高电平。
图3.11 循迹电路图
本次设计采用3路循迹模块,依次排在小车前方,左中右3路接单片机P1_4到P1_6。循迹对应如表2所示。
表2 循迹端口状态对应表
P1_4 P1_5 P1_6
左中右
1 0 1 前进
0 1 1 左转
1 1 0 右转
3.5.2 避障传感器设计
该传感器检测距离为0-80CM,于淘宝购买。该传感器属于市场产品,这里只介绍用法。实物图如3.12所示。
11
12
图3.12 避障传感器
使用于本次设计的避障任务,避障模块采用了2个传感器分别放于小车前方的左侧和右侧,调节该传感器的检测距离为15cm 。当遇到障碍时传感器会给出低电平。左避障传感器接于单片机P3_5端口,右避障传感器接于单片机P3_6端口。
3.6 蜂鸣器驱动模块设计
由于单片机输出电流较小不能驱动蜂鸣器,这里借助S9013 PNP 型三极管放大电路驱动蜂鸣器,三极管Q 起开关作用,其基极的高电平使三极管饱和导通,集电极和发射极导通,蜂鸣器发声;而基极低电平则使三极管关闭,蜂鸣器停止发声。在本设计中只要P1.7输出不同的频率方波信号,蜂鸣器也能发出各种频率声音,电路图如图
3.13所示。
图3.13 蜂鸣器驱动电路
在以上电路中我在蜂鸣器上并联一个续流二极管。蜂鸣器本质上是一个感性元件,其电流不能瞬变,因此必须有一个续流二极管提供续流。否则,在蜂鸣器两端会产生几十伏的尖峰电压,可能损坏驱动三极管[11]。
3.7 履带车车体
本题目要求小车的机械系统稳定、灵活、简单,自己手工制作的履带车通常会出现两侧履带松紧度不一样,跑边,履带脱轮等现象。综合这些因素在网上找到PR5小车底盘符合设计需要,模型如图3.14所示。
图3.14 履带车底盘模型
小车上装有电池、电机、电子器件等,使得电机负担较重。该底盘运动平稳,从图3.7中可以看出在直流电机和轮车轴之间加装了减速齿轮,这样不仅使电机的符合减轻,也符合我的设计需要。
电池的安装:将电池放置在车体前排车轮的上部位置,使车体的重心靠近前排车轮,进行大转弯时小车能以前排轮为圆心转弯,排除履带车转弯时侧滑不确定性。
13
第四章行驶方案设计
在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。因此,行驶设计在微机控制系统设计中占重要地位。对于本系统,行驶方案和软件控制更为重要。
在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。数据处理包括:数据的采集、数字滤波、标度变换等。过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便控制生产。
本系统中我采用了5个传感器,3路循迹传感器,2路避障传感器。总体控制方案如图4.1所示。
图4.1 总体系统
14
4.1循迹方案设计
小车进入循迹模式后,即开始不停地扫描与探测器连接的单片机I/O口,一旦检测到某个I/O口有信号,即进入判断处理程序,先确定3个探测器中的哪一个探测到了黑线,如果左面传感器探测到黑线,即小车左半部分压到黑线,车身向右偏出,此时应使小车向左转;如果左面和中间传感器同时探测到黑线,此种情况为向左急转弯;如果是右面传感器探测到了黑线,即车身右半部压住黑线,小车向左偏出了轨迹,则应使小车向右转。如果右面和中间传感器同时探测到黑线,此种情况为向右急转弯。在经过了方向调整后,如果中间传感器探测黑线,左右没有探测到黑线小车再继续向前行走,并继续探测黑线重复上述动作,履带车控制如表3所示[12]。
表3 小车驱动控制对应表
单片机通过电机驱动电路控制小车的运行方法
P1.0 P1.1 P1.2 P1.3 状态P1.4 P1.5 P1.6
1 0 0 1 前进 1 0 1
1 0 0 1 前进 1 1 1
1 0 0 1 前进0 0 0
0 1 1 0 后退X X X
1 0 0 0 左转0 1 1
0 0 0 1 右转 1 1 0
0 0 1
1 0 1 0 快速左
转
0 1 0 1 快速右
1 1 0
转
15
4.1.1 循迹流程图
由于第二级方向控制为第一级的后备,则两个等级间的转向力度必须相互配合。第二级通常是在超出第一级的控制范围的情况下发生作用,它也是最后一层保护,所以它必须要保证小车回到正确轨迹上来,流程如图4.2所示。
图4.2 循迹流程图
16
4.1.2 循迹程序设计
循迹方面我使用了3个传感器,通过寻黑线实现对履带车的智能控制,本次设计目的实现对履带车的控制,在这里使用3路传感器不仅能达到循迹目的也能显示出对履带车的控制效果。
void ww()//循迹
{
if(P14==0&&P15==1&&P16==1)//右转
{P10=1;P11=0;P12=0;P13=0;P17=0;}
else if(P14==0&&P15==0&&P16==1)//右急转
{P10=1;P11=0;P12=1;P13=0;P17=0;}
else if(P14==1&&P15==1&&P16==0)左转
{P10=0;P11=0;P12=0;P13=1;P17=0;}
else if (P14==1&&P15==0&&P16==0)//左急转
{P10=0;P11=1;P12=0;P13=1;P17=0;}
else if(P14==1&&P15==0&&P16==1) //中寻黑前进
{P10=1;P11=0;P12=0;P13=1;P17=0;}
else if (P14==1&&P15==1&&P16==1)//不寻黑前进
{P10=1;P11=0;P12=0;P13=1;P17=0;}
else
P10=1;
P11=0;
P12=0;
P13=1;
}
}
以上程序我采用了简单明了的if语句将我设计的路线循迹情况和对驱动电路的控制对应起来,类似查询表格方式。这样设计程序使用else if语句我可以很容易添加运行状态,使程序调试相对容易,减小工作量。
17
正在阅读:
基于STC12C5A08S2单片机履带小车的功率控制04-08
102综采工作面巷道及开切眼开凿-段施工安全技术措施05-26
毕业设计-基于UG的基座压铸模设计07-06
贵阳市专科大学有哪些02-15
班长竞选稿作文五年级400字07-06
2020年中级经济基础重点题124304-01
模具例句10-14
市处置大型活动突发事件应急预案09-13
高数(经济数学-微积分)第六章习题209-06
卢沟桥的狮子歇后语02-18
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 履带
- 单片机
- 小车
- STC12C5A08S2
- 功率
- 基于
- 控制
- 建筑施工手册-9_《钢筋工程》
- 2022年中国地质大学(武汉)地质过程与矿产资源国家重点实验室938
- 部编版二年级语文下册《识字2 传统节日(教案+反思)》
- 中级软件测试工程师的岗位职责.doc
- lolS6卡牌大师中单天赋加点S6中单崔斯特出装符文推荐
- 中考复习教案教案:第23课时一元二次方程的复习1(1)
- 2016年广东技术师范学院文学院J217现代汉语(同等学力加试)考研复
- 三年高考(2014-2016)语文试题分项版解析 专题01识记现代汉语普通
- 2022会计继续教育网上考试答案
- 氧化石墨烯的制备方法总结归纳
- 安利销售员一周的业务流程
- 初中英语小组合作学习问卷调查报告分析总结.doc
- 智课网(SmartStudy)TOFEL在线课程-托福独立写作185题库第7题
- 2022中考(广东)英语复习配套第一章+基础知识+第十六节+并列句
- 唐代建筑之琉璃瓦屋顶的色彩与构成意义初探
- 2022年苏州大学东吴商学院434国际商务专业基础考研题
- 重庆传媒职业学院人才培养工作评估任务分解表
- 基于红外热像法的4003铁素体不锈钢及其焊接接头疲劳裂纹扩展行为
- 食堂物资配送整体服务方案
- 看拼音写词语带田字格