飞思卡尔感想.docx

上传人:b****7 文档编号:9063504 上传时间:2023-02-03 格式:DOCX 页数:12 大小:184.21KB
下载 相关 举报
飞思卡尔感想.docx_第1页
第1页 / 共12页
飞思卡尔感想.docx_第2页
第2页 / 共12页
飞思卡尔感想.docx_第3页
第3页 / 共12页
飞思卡尔感想.docx_第4页
第4页 / 共12页
飞思卡尔感想.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

飞思卡尔感想.docx

《飞思卡尔感想.docx》由会员分享,可在线阅读,更多相关《飞思卡尔感想.docx(12页珍藏版)》请在冰豆网上搜索。

飞思卡尔感想.docx

飞思卡尔感想

主讲人:

汪超

哈尔滨工业大学航天学院控制科学与工程系自动化专业

wangchaohit2011@

QQ:

893051481

欢迎与各位交流

光电组

•特点

•巡线原理

•软件模块

•特点:

1原理简单,数据量少,方便处理

以光电之星二队为例,小车整体有23个激光发射管,却仅仅只有8个接收管,而且这8个接收管直接输出0或1,XS12经过滤波可以立即判断黑线的位置。

整个过程无需经过A/D或者D/A转换;

2赛道适应性差

数据量小一方面有利于程序处理,另一方面,在高速行驶中,碰到S弯、上下坡、虚线时常常由于数据量的不足而丢失视野,只能通过算法的改进来进行处理,这就限制了速度的进一步提高;

3传感器模块不易维护

激光发射器焊接时容易静电烧毁;安装好之后,由于震动、碰撞或者人为不小心触碰容易使激光打偏,不能在地上连成一条直线;巡线激光板子以及摇头舵机使得小车整体重心提升,为使整车重心以及总重下降,需要在其他不分的机械上精打细算;

4烧钱

激光发射管和接收管淘宝单价均为8.5元/个,而且由于用量大、易烧毁(暗)的缘故需时常更换;电路板数量多;与其他组相比多一个摇头舵机;一学期下来平均每两光电车耗费3000+左右;

•巡线原理

巡线激光板:

激光巡线原理图

发射部分:

激光发射管

74LS138译码器

PNP三极管

OUT5低电平——PNP三极管导通——激光发射;OUT5高电平——PNP三极管截止——激光熄灭;

接收部分:

接收管

(常态高)

滤波旁路电容

接收管收到激光——A_RE1输出低电平——LED导通发光;

接收管没有收到激光——A_RE1输出高电平()常态——LED截止不发光;

输入XS12处理

 

调制管

XS12控制引脚

调制电阻

调制管:

与调制电阻匹配输出调制波形,控制74LS138译码器的通断,调制管产生固定频率的方波,使得发出的光是一定的频率,接受管只接受这个频率的光,从而有效把背景杂光过滤开来;

 

74LS138译码器:

AA0

AA1

AA2

结果

点亮激光编号

0

1

0

OUT1

0,5,10

0

1

1

OUT2

1,6,11

1

0

0

OUT3

2,7,12

1

0

1

OUT4

3,8,13

1

1

0

OUT5

4,9,14

其余

全部熄灭

之所以从010开始编号,是因为贴片74LS138译码器的0号和1号输出始终为高电平,故就近连接VCC。

•软件及算法

•I/O模块

•PWM模块

•PIT模块

•SCI模块

•Timer模块

•………..

I/O模块

I/O模块主要是在调试的时候显示一些信息,方便调试,比如车在检测上下坡的时候,上坡可以让灯亮,下坡灯灭,方便调试。

注意的地方:

EachpinexceptPE0,PE1,andBKGDcanactasgeneralpurposeI/O.Inadditioneachpincanactasanoutputorinputofaperipheralmodule.

手册中有说明引脚PE0,PE1和BKGD3个引脚是不能当做通用I/O口的,在编程的时候要特别注意。

PWM模块

voidPWM_Init(void){

Steering_PWM_Init();

Yao_PWM_Init();

Motor_PWM_Init();

}

PWM模块主要是驱动两个舵机,一个电机。

PWM模块的初始化都是比较固定的,是初始化的时候比较重要的是初始化输出的周期。

舵机在使用的时候推荐是工作在50HZ,4.8~6V,但是为了提高舵机的响应速度,我们在用的时候工作频率是100HZ,电压是6V。

起初舵机是直接跟电源电压相连的,后来我们做的过程中总是烧舵机,然后改到了6V,不过,舵机坏的还是挺多的,可能不是电压原因,后来调试的时候舵机总是出现打死的情况,分析应该是静电的原因,导致单片机程序跑飞,舵机打死。

我们对此做过一些尝试,想解决静电复位的问题,首先是将PE0,PE1强制拉高,然后把中断是不和PE1,PE0相连,其中PE0(PortEInput,non-maskableinterrupt)是不可屏蔽的中断。

PWM使用中还要注意的是调整舵机中值的时候,尽可能让高电平时间1.5ms的时候,舵机调整在中值,这样可以保证舵机出力最大,因为舵机内部是根据PWM的高电平时间来决定舵机位置的。

还有就是给PWM值的时候,注意限制最大和最小值,特别是舵机,因为转向舵机偏转太大,转弯的时候会把车轮卡住,影响转向。

注:

此处说到转向问题,说下当初我们调试的时候遇到的问题,当初我们车在跑的时候在直道上速度挺快的,但是一到弯道,速度不管加多大就是提不上去,后来发现是车在转弯的时候,由于前轮机械问题,阻力非常大,而电机驱动力又不够,所以速度总是提不上去,后来通过调节前轮的机械,速度就提上去了。

转向还有一个问题,就是调试过程中可能会出现车子上下颠动的情况,这一般出现在转弯过程中,这原因我们总结了下,应该是因为转弯的时候,转向舵机PWM值给的太离散了,后来改变转向舵机的P值,颠动的情况基本上就消失了。

电机PWM调试注意:

刚开始我们调试电机的时候,调试过程中车跑起来声音非常大,一直没注意过,后来有一次调了下后轮齿轮之间的间距,声音马上就轻柔了,即使是最大速度的时候,声音也很柔,所以在调试电机的时候,一定得注意机械上的问题。

此处电机调速还有个问题,为了能够快速的加减速,电机调速周期最好短点,我们程序中电机是每隔10ms调整一次,与其他队交流的时候,像哈工程的摄像头是美1ms就调整一次速度了,所以注意电机调整周期,对快速的加减速是很有帮助的。

PIT模块

PIT模块主要是定时中断,用来周期性的调节。

Timer模块

码盘有3路输出,A,B路

然后通过一个异或门

此处输出OUT,在硬件上实现了一次倍频,然后软件在设计计算脉冲数的时候,初始化为捕捉上升沿和下降沿,这样在软件上也实现了一次倍频,那加上硬件上的一次,一共就是4倍频,我们买的500线码盘,那经过软件和硬件倍频后就是2000线了。

此处倍频的时候注意:

我们当初调试的时候,用示波器看输出波形,发现在匀速的时候经过异或门输出的波形不是等间隔,就是时常出现错误,通过串口发送码盘测得的脉冲数52,54,52,53,51,52,90,54…..这种情形,90这种坏数据,刚开始以为是码盘不好,后来发现是经过异或门后出现了错误,不过异或门效果就很好,数据不会出错,后来我们怀疑是异或门速度跟不上的问题,所以在选取异或门的时候要选取高速的。

数据采集

赛道信息的提取在整个系统中占据着极其重要的地方,只有保证赛道信息的准确,后续的处理控制才能进行。

编号

一个说明图

此处点亮激光是分时点亮,一共15个激光,5个接收管,分为5组,每组3个,将激光分为编号,从1到15,那么激光点亮顺序是

1,6,11

2,7,12

3,8,13

4,9,14

5,10,15

此处举一个例子来说明如何判断赛道信息。

假设现在时3,8,13号激光点亮了,并且黑线在8号灯下面,那么此时1,5好收管应该是亮,而2,3,4则是灭的。

主要是要保证互不干扰。

提取黑点的方法

我在软件中提取黑点的思想是数连续黑点的个数,示意如下:

上图中就可以发现只有一段连续的黑点,并且黑点的个数是2个,此时说明检测信息正确,在检测黑线的时候,同时记录下起始黑点和结束黑点,上图中起始黑点是7,结束是8,那下次再检测黑点的时候,就在7,8号激光左右两边个COUNT个激光的范围内进行检查,这样可以滤掉错误的信息。

譬如上图中如果1号激光误检测了,则可以在软件上进行修正。

对赛道信息的处理还有很多细节的地方,到调试的时候才会发现问题,到时可以再继续优化检测措施。

激光权值,即从1号到15号激光分别赋予了不同的权值,如下图,

然后根据激光的位置,就可得到一个对应的权值,如上图所示,对应的权值就是17.

而中间的激光对应的权值是16.

摇头舵机的控制

摇头舵机控制的目的是使黑线能在一排激光的视野内,即每时每刻都能保证提供正确的位置信息。

舵机在转动的时候是应用了步进的思想,舵机的转动是以步进的形式累加上去的,程序上只要确定每个点照到黑线上时对应的步进值。

当然,最靠近中点的光点的步进值就越小,而距中心最远的光点的步进值就最大。

这种想法可以用增量式PID来实现。

舵机的控制大概就是这样的。

转向舵机控制

上图大概画了下偏心距的概念,我在计算的时候忽略了摇头转向带来的激光打在地上的前后位移,假设激光摇头只带来左右的位移,而不带来前后移动,从而计算出激光中心偏离车身中心的距离。

实际上

偏心距=摇头带来的偏离+激光检测距中心距离

得到偏心距后我又计算了下转向所需的园半径,具体的计算步骤在基于单排光电管智能车的算法研究有说明,可以看上面的分析。

制作过程中还会遇到很多细节的问题,以后大家调试过后,可以再交流。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1