请选择 进入手机版 | 继续访问电脑版
查看: 4019|回复: 1

2019年NXP智能车大赛MCU选型参考

[复制链接]
  • TA的每日心情
    开心
    2019-7-9 13:46
  • 签到天数: 15 天

    [LV.4]偶尔看看III

    403

    主题

    1286

    帖子

    0

    金豆

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    3371
    最后登录
    2019-7-23
    发表于 2019-4-17 21:33:56 | 显示全部楼层 |阅读模式
    近期站长欣喜地获知,第十四届全国大学生智能汽车竞赛又将如期举行,各高校的学生们已经积极的行动起来,撸胳膊挽袖子准备大干一场了。上周我们收到了支持大赛的器材提供者龙邱科技的投稿,针对学生们在MCU的选型做了一些建议,提供给大家参考。以下内容为来稿。

    2019第14届智能车大赛相较往年的比赛,对各个组别的要求做了一些调整,大致需求如下:
    1、四轮组今年比赛限制车模长度30CM,电感前瞻很短,主要赛道信息通过摄像头获取,电感只用于断路区域的赛道识别,一般三个电感就可以了。闭环控制一个直流马达需要编码器 + 两路PWM信号。
    所以单片机最少要有一个摄像头接口,一个正交解码或者带方向计数(带方向编码器)接口,两路PWM接口和三个ADC接口。
    2、三轮组和四轮组类似,不过需要获取小车姿态数据,并且控制两个直流马达。
    所以单片机至少要有一个摄像头接口,一个IIC接口(可以和摄像头共用),两路正交解码或者带方向计数(带方向编码器)接口,四路PWM接口和三个ADC接口。
    3、双车相当于上面的三轮组+四轮组,一般会加上通信模块,如果使用NRF模块需要占用一个SPI接口,如果使用串口蓝牙,则需要占用一个串口接口。
    4、信标组的麦克纳姆轮车,拥有四个电机,想要获得比较好的控制效果,必须要对每个电机进行闭环控制,需要单片机具有四路正交解码 + 八路PWM信号 + 摄像头接口。
    5、室外电磁组则需要单片机具有四路电感 + 一路正交解码 + 两路PWM信号。
    各个组别的规则和往年的相比都有一定的改变和创新,但硬件接口需求除了信标组的同学纠结编码器接口不够,其他组别的变化不大。K60、K66、KV58的FTM0和FTM3(K60FX有FTM3模块)都可以输出8路PWM信号,FTM1和FTM2可以用作正交解码,LPTMR可以用作捕获脉冲信号,可是信标车需要,正交解码或者带方向计数的接口不够。

    有些同学查看手册会发现,K66还有两路TPM计数器,KV58还有一路ENC正交解码模块,由于往年并没有正交解码模块不够用的情况,所以这些模块并没有开发使用。如果想要使用,同学们可以自己参考寄存器开发一下,但是注意使用不同的模块计数可能导致计数精度不同。
    根据去年的比赛情况,已经有许多同学使用两块核心板+双摄像头的方案了,今年的麦克纳姆轮小车可以随意转向,尤其适合这种方案,但是需要有一定的基础。

    如果已经选定了K60、K66、KV58做主控,而且只想用一块,可以使用四路DMA计数的方式。DMA的触发的方式是以PORT为触发源的,避开DMA传输摄像头数据的触发通道。

    以K66/KV58举例,摄像头使用PORT D端口进行DMA数据传输,PORTA、PORTB、PORTC、 PORTE中各一个PIN来作为DMA计数的触发通道,进行四路DMA计数,已经验证过DMA计数和摄像头图像采集均能正常进行,具体大家也可实际调试验证。

    DMA挂载在系统总线上,会占用一定系统带宽,影响CPU性能。注意此计数方式需要使用带方向输出编码器,推荐使用龙邱迷你512线编码器,可直接通过IO口读取高低电平来判断方向。

    信标组使用LPC54606或者RT1052的话,不用担心一块的接口不够。

    LPC可以使用SCTime输出8路PWM信号,4个CTime来进行脉冲计数(注:LPC54606没有正交解码,需要使用带方向编码器)。
    RT1052可以使用自带的4路ENC正交解码模块、和FlexPWM模块产生8路PWM,具体可以参考相应的例程库。对于RT1052核心板,龙邱有关于适用于信标组的母板,供大家参考学习使用。

    至于其他组别,介绍的这几种单片机外设资源都是可以满足使用。

    外设够用,那么单片机的性能就成了关键。在以前的推文中,利用计算圆周率的时间来反应单片机的性能,被同学们吐槽不靠谱,这次就通过移植coremark,用跑分来反映cpu的大致性能,注意编译时的不同设置可能会影响最终结果,这里是笔者的测试结果,测试代码链接:https://pan.baidu.com/s/1dTgL57Y9NS7CxrY6xGOx4Q 提取码:d9ua

    13.png

    站长说明:上面测试的Coremark和官方给出的数据还略有差距。正如上文中提到的,“编译时的不同设置可能会影响最终结果”,这属于正常现象。
    例如i.MX RT1052在600MHz时Coremark的理论值可以达到3020分,这里有篇文章介绍了实际测量的步骤,按照文中的说明可以得到3018分,非常接近理论数值:《i.MX RT105x微控制器CoreMark性能实测》,有兴趣的同学可以亲自测一下



    文章出处:恩智浦MCU加油站
    今天天气不错!签到!
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 12:13
  • 签到天数: 311 天

    [LV.8]以坛为家I

    39

    主题

    1463

    帖子

    0

    金豆

    金牌会员

    Rank: 6Rank: 6

    积分
    3202
    最后登录
    2019-7-23
    发表于 2019-4-18 11:26:26 | 显示全部楼层
    感谢分享        
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    小黑屋|手机版|Archiver|恩智浦技术社区

    GMT+8, 2019-7-24 04:00 , Processed in 0.099385 second(s), 16 queries , MemCache On.

    Powered by Discuz! X3.4

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表