电气072队 技术报告Word格式文档下载.docx
- 文档编号:17380872
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:38
- 大小:1.27MB
电气072队 技术报告Word格式文档下载.docx
《电气072队 技术报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《电气072队 技术报告Word格式文档下载.docx(38页珍藏版)》请在冰豆网上搜索。
第二章主要介绍了总体设计方案。
第三章硬件电路的实现。
第四章道路信号的采集与传感器的布局。
第五章软件的实现。
第六章系统调试主要介绍了对车模的整体调试过程。
第七章车模改装。
第八章总结了调试的心得体会。
第二章智能车的总体设计方案
本次比赛要求制作一个能自主识别线路的智能车,共有三个组别,分别为光电组、电磁组、摄像头组。
2.1电磁组的介绍
电磁组是第五届新增加的一个比赛,竞赛车模需要能够通过自动识别赛道中心线位置处由通有100mA交变电流的导线所产生的电磁场进行路径检测。
除此之外在赛道的起跑线处还有永磁铁标志起跑线的位置。
2.2方案的选择
我们选择了电磁组,在传感器的选择上,经过我们对各种传感器检测磁场的精度,还有其频率响应、尺寸、价格、功耗以及实现的难易程度进行考虑,最终我们选择了电磁感应线圈的方案,它具有原理简单、价格便宜、体积小(相对小)、频率响应快、电路实现简单等特点。
感应线圈检测的信号经过谐振、放大、检波过后测量其输出电压,线圈在赛道线不同的位置输出的电压不同,这样就可以判断出车模处于赛道的位置,然后控制车模的转向以及加减速。
此次比赛的最终目的就是在规则允许下一最短时间跑完规定赛道路程,然而小车限制了长度,使得电磁组的前瞻变得很小(相对于光电组和摄像头组),这样电磁小车就不能很明显的切内道过弯,所以我们从开始做车的思想就是让小车能在高速运行中巡线跑,以最短的时间完成比赛。
为了使小车很稳定的加减速,于是我们采用了速度闭环控制。
下图为系统方框图:
以上设计的思路是:
感应线圈采集电磁信号,经过谐振、放大、检波输入到单片机的AD模块中,单片机通过算法判断小车相对赛道的位置,来合理的控制电机的转速和舵机的转向。
由于要精确的控制小车的速度所以我们使用了红外对管与光栅检测小车的当前速度,形成速度闭环控制。
拨码开关对一些参数进行设置,增强了小车的适应性。
2.3小结
本章重点介绍了电磁小车的总体设计方案,以及简要的分析了整个系统的
运行方式,在后面的章节将会仔细的讲解各个模块的工作原理。
第三章硬件电路的实现
3.1电源模块
电源模块关系到整个系统能否稳定运行,因此在设计过程中应选择合适的电源芯片。
本次比赛使用的电源是7.2V的电池供电,而我们使用的单片机供电电压为5V,舵机的额定电压为6V。
因此需要我们将7.2V的电压转换成5V和6V的电压。
由于电机频繁的加减速,可能使得电池的电压变化很大或降低,如果不选用性能很好的稳压芯片,可能使稳定的电压低于5V,从而使得单片机重启,而且单片机需要的电流也不是很大,所以我们采用了LM2940-5V稳压芯片为单片机供电,LM2940是线性稳压器件,能在较低压差下稳定的工作。
该芯片的典型应用电路如图3.1所示:
图3.1LM2940应用
由于舵机要不停的转动,所以需要的电流比较大,因此我们采用了LM2576-ADJ芯片稳压,该芯片为开关型稳压,输出电压可调,最大电流为3A,具有热关闭和限流保护作用,工作效率高,完全满足了舵机的要求,该芯片的典型应用电路如图3.2所示;
图3.2LM2576应用图
3.2电机驱动电路
电机驱动原理图如图3.3所示:
由于组委会推荐的33886电机驱动芯片相对于MOS管发热现象明显,内阻大,频率比较小,且芯片比较贵。
因此我们选用了一种比较成熟的MOS管搭建的H桥来驱动电机,我们使用了IRF3205、IRF4905MOS管组成H桥,他们的导通内阻小PWM控制频率可以很高,这样可以很平稳的控制电机,而且发热非常小。
由单片机PWM模块输出的两路PWM信号与HEF4011相连接。
我们使用HEF4011来作为MOS管驱动芯片,用于电平转换。
四只大功率MOS管构成H桥,PWM占空比大,则转速高;
PWM占空比小,则转速低。
电路中MOS驱动芯片和MOS管都工作在开关状态,开关损耗小。
当PWM1为高电平、PWM2为低电平时,Q1导通、Q3截止、Q2截止、Q4导通,电机正转;
当PWM1为低电平、PWM2为高电平时,Q1截止、Q3导通、Q2导通、Q4截止,电机反转。
当PWM0和PWM1同时为高电平或低电平时无电流,电机不转。
图3.3电机驱动电路
3.3测速模块
测速模块主要是由红外对管和光栅组成,由于红外对管输出的电压只有2V-3V不符合单片机检测的要求,所以我们使用了比较器,将红外对管输出的波形整形,于是我们选用了LM393做了一个比较器。
如图3.4所示:
图3.4测速电路
图3.5自制的光栅
经过我们的试验,这种测速方案稳定,满足了我们小车控制的要求。
3.4HC9S12XS128MAA电路
因为在电路设计过程中发现xs128单片机(144引脚)的所有的引脚不是都会被用到,所以使用了汽车及芯片MAA(80引脚),而且这块板子的大小可以减小很多,所以质量更为轻便。
图3.5HC9S12XS128MAA实物图
图3.7HC9S12XS128MAA原理图
3.5小结
本章分析了一个合理简单的硬件电路的设计以及使用的单片机,为小车提供了一个安全,可靠的硬件,也为后面方便的调试打下了基础。
第四章道路信号的采集与传感器的布局
4.1赛道磁场的分析
根据麦克斯韦电磁场理论,交变电流会在周围产生交变的电磁场。
智能汽车竞赛使用路径导航的交流电流频率为20kHz,产生的电磁波属于甚低频(VLF)电磁波。
甚低频频率范围处于工频和低频电磁破中间,为3kHz~30kHz,波长为100km~10km。
如下图4.1所示:
图4.1直线磁场分布
而在十字交叉上时磁场会发生叠加,如下图4.2所示:
图4.2十字交叉磁场分布
4.2传感器的选型
现在我们有很多测量磁场的方法,磁场传感器利用了物质与磁场之间的各种物理效应:
磁电效应(电磁感应、霍尔效应、磁致电阻效应)、磁机械效应、磁光效应、核磁共振、超导体与电子自旋量子力学效应。
下面列出了一些测量原理以及相应的传感器:
(1)电磁感应磁场测量方法:
电磁线磁场传感器,磁通门磁场传感器,磁阻抗磁场传感器。
(2)霍尔效应磁场测量方法:
半导体霍尔传感器、磁敏二极管,磁敏三极管。
(3)各向异性电阻效应(AMR)磁场测量方法。
(4)载流子自旋相互作用磁场测量方法:
自旋阀巨磁效应磁敏电阻、自旋阀三极管磁场传感器、隧道磁致电阻效应磁敏电阻。
(5)超导量子干涉(SQUID)磁场测量方法:
SQUID薄膜磁敏元件。
(6)光泵磁场测量方法:
光泵磁场传感器。
(7)质子磁进动磁场测量方法。
(8)光导纤维磁场测量方法。
以上各种磁场测量方法所依据的原理各不相同,测量的磁场精度和范围相差也很大
。
我们从各个传感器检测磁场的精度,传感器的频率响应、尺寸、价格、功耗以及实现的难易程度进行考虑。
最终选择了电磁感应线圈(电感量10mH内阻10Ω),它具有原理简单、价格便宜、体积小(相对小)、频率响应快、电路实现简单等特点。
4.3磁场信号的检测
图4.3信号处理电路
由于感应线圈测得的信号非常的小,不能满足单片机的要求。
而且在空间中存在多种频率的磁场,所以需要对感应线圈测得的信号进行处理,于是我们将感应线圈测得的信号进行谐振,放大。
为了使单片机读取数据的方便,我们还将放大后的信号进行检波,然后直接用单片机的AD模块读取信号。
电路图如图4.3所示:
4.4传感器的布局
为了使小车满足爬坡的要求,综合传感器检测的距离,以及4.1所讲的赛道磁场的分布,我们最终确定了传感器水平多排的布局方式,如下图4.4所示:
图4.4传感器的布局
说明:
传感器为两排水平布局(如上图),由于电磁小车前瞻距离只有十几厘米,所以我们必须准确的判断赛车现在所处的位置,使小车能有较高的速度,因此前面三个传感器是用于判断转向,后面两个是用于判断小车处于赛道的位置。
4.5小结
由于电磁组比赛是第一届比赛,在传感器的选择与布局上我们花了很多的时间,因为这关系到小车能否高速运行,于是我们设计了一个比较好的多排水平放置传感器的方案。
第五章软件的实现
赛车控制系统的设计主要由赛道信息的采集与数据分析、方向控制、速度控制着三个部分组成。
框图如下:
由上图,我们就可以将系统细分为:
AD采集赛道信息、数据分析、舵机PWM控制、定时测速、电机PWM控制、起跑线检测这六个部分。
将系统细分可以让软件与底层硬件模块接口的配合更紧密,同时也是把软件系统的实现从具体的硬件中尽量抽象出来,使控制更方便,程序更易读,也是把团队分工整合起来的有效途径。
5.1赛道信息的采集与数据分析
赛道信息的采集分为路况信息的采集和起跑线的采集这两个部分。
路况信息的采集主要是由安装在赛车前面的多排感应线圈来完成。
感应线圈通过检测赛道上方的磁场,采集到的信号经过谐振、放大、检波,然后直接送到单片机的AD口。
单片机通过AD采样模块直接就可以得到感应线圈感应到磁场信号的大小。
另外,赛车安装完成后,感应线圈之间的距离以及对地的高度都是恒定的,因此通过多次对比采集得到的感应线圈信号的大小即可得到赛道中心相对于感应线圈的位置,为赛车的转向控制提供依据。
起跑线的采集主要是由安装在车头上的一排干簧管来完成。
由于干簧管是连接在单片机的T3口上的,当采集到起跑线时触发单片机的中断,然后使赛车停止。
数据处理方面要分别对采集的两部分信息进行处理。
赛道信息的处理,主要
是对AD采样得到的数据进行归一化,以消除不同的感应线圈之间的差异。
而起跑线信号则主要是去抖动,防止因抖动而误动作。
赛道信息的采集与数据分析的程序流程如下图所示:
图5.2赛道信息的采集以及数据处理程序的流程图
图5.3起跑线检测程序的流程图:
部分程序代码:
/*******************************************
AD转换初始化;
*******************************************/
voidAD_Init(void)//AD初始化一个通道一个通道的转换
{
ATD0CTL1=0x00;
//7:
1-外部触发,65:
00-8位精度,4:
放电,3210:
ch
ATD0CTL2=0x40;
//禁止外部触发,中断禁止
ATD0CTL3=0xA0;
//右对齐无符号,每次转换13个序列,NoFIFO,Freeze模式下继续转11101000
ATD0CTL4=0x0F;
//765:
采样时间为4个AD时钟周期,ATDClock=[64M*0.5]/[PRS+1]
ATD0CTL5=0x30;
//6:
0特殊通道禁止,00000000
ATD0DIEN=0x00;
//禁止数字输入
}
/**************************************
定时测速PT7口输入;
每10ms读取一次速度值;
存在V[2]中
PT3输入捕捉
***************************************/
voidECT_Init(void)//ECT初始化PT7引脚
{
PACTL=0x50;
//PT7PIN,PACN3216BIT,FALLingedge,NOTINTERRUPT
TSCR2=0X06;
TCTL3=0xc0;
//c-输入捕捉7任何沿有效,
TCTL4=0X80;
TIE=0x08;
//每一位对应相应通道中断允许,0表示禁止中断
TIOS=0x00;
//每一位对应通道的:
0输入捕捉,1输出比较
PACNT=0x00;
TSCR1=0X80;
PITCFLMT_PITE=0;
//disablePIT
PITCE_PCE0=1;
//enabletimerchannel0
PITMTLD0=256-1;
//timebase240clockcycles,it'
s0.1MHz
PITMUX=0x00;
//ch0connectedtomicrotimer0
PITLD0=1250-1;
//INTVERALmicrotimebasestime-outperiod=(PITMTLD+1)*(PITLD+1)/fBUS.
PITINTE_PINTE0=1;
//enableinteruptchannel0
PITCFLMT_PITE=1;
//enablePIT
读取AD转换值的函数D一个通道一个通道的转换
voidReadAD2(unsignedint*Data,unsignedcharchannel)//读AD一个通道一个通道的转换
bytei=0;
for(i=channel;
i<
channel+5;
i++)//AD转换
{
ATD0CTL5_Cx=i;
while(!
ATD0STAT0_SCF);
Data[i-channel]=ATD0DR0L;
}
5.2转向控制
赛车的转向主要是由舵机来完成的。
赛车的转向控制就是对舵机的控制,并考虑速度对于转向的影响。
舵机的角度分配一般有两种方式:
查表方式、PID方式。
分析比赛的要求,不难看出精确的转向控制是完成比赛的关键,而我们采样得到的电压值也是连续变化的,如果采用查表方式的话,还需要对数据进行模糊化的处理,很难完成精控制的要求。
实践也发现,采用查表方式时,舵机的转角会出现不连续的状况,影响赛车的稳定性。
而使用PID调节方式对舵机进行控制,该方式在不论是反应速度,还是舵机转向连续以及转角预测上都优于查表方式,因此,在实际过程中,我们使用的是PID方式。
方向的控制主要是根据预瞄区赛道中心的位置,初步确定舵机转角,并根据赛道变化的趋势对舵机转角进行修正。
简单的说,转向控制就是以偏离纠正的思想为原则。
在实际的系统中,数据进行归一化的处理,一方面消除了传感器差异的影响;
另一方面也为获得赛车与跑道的偏离度提供方便。
下图为赛车与赛道偏离的示意图,ABCD表示赛车,Y轴是赛车的中轴线,EF为赛道的趋势线。
在实际的转向过程中,赛车的转向是靠前轮来完成的。
结合下图,传感器之间的距离以及安装的高度都是确定的,我们就可以将赛车的偏离度简单的转化成车前方左右两边传感器电压的差值。
并以电压差为输入量,用增量式的PID控制算法直接计算,获得舵机的动作增量。
在模拟系统中,PID算法的表达式为
(公式5-1)
----调节输出信号;
----调节器偏差信号,为测量值与给定值之差;
----调节器比例系数;
----调节器积分时间;
----调节器微分时间。
由于单片机控制是一种采样控制,它只能根据采样时刻的偏差值来计算控制量。
因此必须将公式(5-1)离散化处理,用数字形式的差分方程代替连续系统的微分方程,此时积分项和微分项可用求和及增量式表示:
(公式5-2)
(公式5-3)
将公式(5-1)和公式(5-2)代入公式(5-3),可得到离散的PID表达式:
(公式5-4)
式中,
=T----采样周期,必须使T足够小,才能保证系统有一定的精度;
----第k次采样时的偏差值;
----第(k-1)次采样时的偏差值;
----采样序号,
=0,1,2,3·
·
;
----第k次采样时调节器的输出。
要想计算
,不仅需要本次与上次的偏差信号E(k)和E(k-1),而且还要在积分项把历次的偏差信号E(j)进行相加,即
根据推理原理,可写出(k-1)次的PID输出表达式:
(公式5-5)
用公式(5-4)减去公式(5-5),可得:
(公式5-6)
式中,
=
------积分系数;
------微分系数。
由公式(5-6)可知,要计算第k次输出值P(k),只需知道P(k-1),E(k),E(k-1),E(k-2)即可。
把公式(5-4)和公式(5-5)相减,得到:
(公式5-7)
公式(5-7)表示第k次输出的增量
,等于第k次与第(k-1)次调节器输出的差值,即在第(k-1)次的基础上增加(或减少的)量,所以公式(5-7)叫做增量型PID控制算式。
图5.4单位反馈的PID控制原理框图
其中e表示理想输入与实际输出的偏差,再将此偏差送入控制器,经控制器计算可得到偏差值的比例、积分和微分值的线性组合u。
(公式5-8)
其中,Kp、Ki、Kd分别称为比例系数、积分系数、微分系数。
u接着被送到了执行机构获得新的输出信号Y。
Y被再次送到感应器以产生新的偏差信号,这个过程就反复地进行。
运用PID控制的关键是调整三个比例系数,即参数整定。
PID控制器参数整定的方法很多,概括起来有两大类:
一是理论计算整定法。
它主要是依据系统的数学模型,经过理论计算确定控制器参数。
二是工程整定方法,它主要依赖工程经验,直接在控制系统的试验中进行。
一般来说,增大比例系数能够减小上升时间,并减小稳态误差,但不能消除。
增大积分系数能够消除稳态误差,但会使瞬时响应变差。
增大微分系数能够增强系统的稳定特性,减小超调,并且改善瞬时响应。
由实验获知,当I为零,D比P较小时系统相对较稳定。
对于直道而言,P应该适中,如果太大,极易出现超调振荡,如果太小,由弯道进直道时车模不能及时摆正,不利于直道的加速。
且由直道入弯时,舵机会因响应不及时而冲出跑道。
对于弯道而言,P应该稍大,这样有利于弯道走内线,同时也提高了舵
机的响应速度和幅度,拐弯更顺畅,大大降低了冲出跑道的可能性。
对于蛇形道而言,P要稍小,P小,舵机响应稍小,有利于走蛇形道。
若P太大,舵机响应变大,蛇形道极易按照弯道行驶策略行驶,这样就大大的增加了车模行驶的路程,行驶时间也必然长得多。
另外,还考虑到舵机具有良好的线性响应,所以我们实际使用的PD控制器来控制舵机的转向,而且为了调试的方便还是用了拨码开关调节PD控制器的系数。
设置舵机转角的函数
以电压的偏差判断舵机的转向和转量
voidSet_PWMA(void)//首先是c<
a判断左转;
右边传感器c;
左边a;
中间b
P1=0,P11=0;
//摆正943极左623;
极右1263
if(a>
50||b>
50||c>
50||d>
50||e>
50)//判断传感器的值是否有效
if(e<
50)//50
if(a<
d)
PWMDTY01=P1_Min;
}
else
PWMDTY01=P1_Max;
{
if((D[3]>
0&
&
DD[3]>
0)||(D[3]<
DD[3]<
0))
P1=kp*D[3]/10+kd*(D[3]-D[2])/10;
P1=943+P1;
if(P1<
623)//舵机的最小值
P1=623;
elseif(P1>
1263)//舵机的最大值
P1=1263;
PWMDTY01=P1;
5.3速度控制
比赛要求赛车在寻迹的前提下尽可能快的完成比赛(竞速类比赛)。
由于赛道的情况比较复杂,速度过高很可能会使赛车不稳定或者来不及转向而冲出赛道。
在随动控制系统中,如果速度控制采用开环控制其鲁棒性很差,极易受到扰动量的干扰使使系统不稳定。
赛车对稳定性和速度的要求都很高,因此要求系统的抗干扰性能很强。
所以开环控制不适合赛车的控制系统,必须使用闭环控制。
一般而言在采集到实时的速度以后速度控制方式有两种,一种是对动力进行控制,当速度高于一定值的时候减小赛车的动力,而速度过小的时候需要增加赛车的动力。
这种方法有很大的缺点,它不能快速降低速度,可能会使赛车在直道进入弯道的时候因速度过高而转向不及时。
另外一种是对赛车的速度进行控制,只在当赛车速度高于一定值的时候对赛车进行减速,这种方法能很好的保证赛车的稳定性,而且程序简单容易实现。
另外电磁组前瞻距离很小,对赛道类型的判断也不能保证很准确,为了稳中求胜,我们在速度控制时只对速度进行了控制。
减速的子程序
voidjiansu(void)
intj1,j2;
if(V>
Vp)
V=0;
PWMDTY3=0;
PWMDTY2=0;
for(j1=0;
j1<
20;
j1++)
for(j2=0;
j2<
50;
j2++);
PWMDTY2=Stop_PWM;
Stop_Time;
for(j2=0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电气072队 技术报告 电气 072 技术 报告