星空·综合体育官网入口 将Micropython应用在智能车竞赛中——附培训视频(Smartcar模块)
本文转载自NXP MCU加油站。培训视频由NXP老师梁平制作,筑飞科技配合提供相关硬件和智能汽车验证支持。
全国大学生智能汽车大赛已举办多年星空体育官方网站,吸引了众多学生参与,影响广泛。
去年11月,当我们和清华大学的卓庆老师讨论2022年的比赛内容时,大家一致考虑是否可以引入更简洁、方便的Pyhon作为编程方法。一方面,它可以减轻学生编程的负担,让他们可以有更多的精力进行创新。另一方面,也希望能够吸引更多的学生(包括职校学生和非电子专业学生)参与到本次比赛中。
从技术上来说,智能车比赛要求汽车能够自我跟踪,利用MCU高速、实时地进行环境判断和电机控制。在实现各种逻辑计算的基础上,必须满足高实时控制的要求。使用Python等解释型编程语言,要求MCU有较高的运算速度,以满足Python脚本实时解析、字节码执行、对象实体处理等需求。
在恩智浦,我们拥有当今市场上最强大的 MCU - i.MX RT 系列。与学生在智能汽车比赛中通常使用的Kenitis K6x系列相比,i.MX RT在计算性能上有了质的飞跃。外设配置更加丰富,内存容量翻倍。如果考虑外部SDRAM扩展、SD存储卡扩展等,完全可以满足运行Micropython的要求。
Micropython是一个开源项目星空体育app下载入口,旨在使用Python脚本在MCU上实现编程。在i.MX RT系列发布之前,我们就已经开始评估Micropython项目向LPC的移植,并积累了大量的经验。后来移植到i.MX RT上非常方便,也成功应用于智能汽车比赛:2019年游戏创意组、2020年AI电磁组、2021年AI视觉组,还有今年的智能视觉组。所有这些计划都使用Python脚本来方便加载、推理模型和处理模型结果。在 i.MX 中,在 RT 上的 Micropython 中实现。
正如上面提到的,卓老师打算引入Python编程,并将其应用延伸到普通竞赛团体的开发中。由此,我们将Micropython结合RT-Thread平台移植到筑飞科技出品的i.MX RT1021核心板上,成功添加了智能车控制相关的控制类和底层C代码实现。根据筑飞科技合作伙伴的测试,实时性能完全满足传统电磁组、摄像组等的要求,并且测试的实车速度可以达到赛道的极限。
为了方便大家学习和使用这个解决方案,我们制作了一系列的培训视频,在这里展示给大家。如果您有兴趣评估和使用该解决方案,可以直接联系筑飞科技。
珠飞科技生产的i.MX RT1021核心板和扩展板
以下是本系列培训视频的前两章、基本介绍和开发环境:
随后将提供该计划每个部分的相关培训视频。
以下是本培训系列的三个视频,包括引脚配置和复用管理器(CMM)以及芯片的内置外设模块(机器):
machine模块是micropython的标准模块。该模块包含最常用的基本外设支持。
在移植过程中,我们对原有的实现进行了简化,并做了相应的修改,以适应i.MX RT1021的特点。读者需要参考 micropython.org 上的文档来区分 i.MX RT1021 上的差异。地方。
本培训视频和相应的用户手册简要介绍了该模块的使用方法。
原来Micropython(见)使用的板子叫做pyboard,所以与这个板子相关的功能都集中在这个pyb模块中。
在将Micropython移植到i.MX RT1021时,保留了pyb模块中的一些功能和子模块,并删除了那些不适用或不常用的功能和子模块。
以下是本培训系列中有关此简化 pyb 模块的视频:
为了适应智能汽车比赛的应用,专门设计开发了该模块。它包含一些有助于智能汽车操作的类。目前它包括以下类:
种类
阐明
相机
配置、控制和读取MT9V032相机。
编码器
配置和控制片上 TMR 模块以与旋转编码器连接。
钥匙
扩展machine.Pin,封装按键操作。
PID
实现PID的快速计算。
脉宽调制
配置并控制 PWM 模块以产生 PWM 输出。
液晶显示屏
LCD 模块上的手柄显示。 (目前支持1.8英寸TFT屏和2.0英寸IPS屏)
股票行情指示器
周期性定时器星空·综合体育官网入口,用于周期性调用传感器设备的函数来读取数据。
ADC_组
扩展machine.ADC,允许将多个ADC实例组合成一组并定期转换一组ADC输入。
以下是本系列培训中Smartcar模块中各个特殊类别的讲解视频:
最近,珠飞发布了新款2英寸液晶屏,所以我们更改了液晶控制类的名称,但所有操作功能没有改变。以下培训视频录制仍使用旧名称,但仅针对本次发布进行了修改。有少量字幕,使用时请小心。
恩智浦 MCU 加油站
这是NXP官方运营的公众账号。重点向您推荐NXP MCU产品信息、开发技巧、教程文档、培训课程等。
我要评论