【集创赛】arm杯一等奖作品:智能BLDC驱动系统
本次推荐2020年集创赛arm杯的一等奖作品!赛题要求实现"基于 Arm 处理器核的智能化 SoC 设计",下面是他们的作品介绍!
本转载已获得作者授权!
Arm杯-基于Arm处理器的智能化SoC设计挑战赛赛题
杯赛题目:基于 Arm 处理器的智能化 SoC 设计
参赛要求:A组、B组
赛题内容:
利用Arm Cortex-M3 DesignStart处理器在限定的可编程逻辑平台上构建片上系统,实现信号的采集和处理(信号类型不限,可以是音视频、医电、环境等)。设计并在Arm SoC中实现专门的硬件加速器以提高和优化系统的性能,实现系统对信号的智能处理和分析,要求系统具有创新性、实用性和一定的市场前景。
团队介绍
参赛单位:电子科技大学
队伍名称:ILWT
指导老师:黄乐天
参赛队员:杨欣程、刘悦多、包镕新
总决赛奖项:一等奖
项目简介
BLDC具备较低的运行噪声,较高的功率密度,极高的效率和极高的可靠性。但是,它需要复杂的外电路实现转子位置检测。
BLDC显著的缺点
1.不够稳定和智能:多数方案利用单片机作为控制器,使用定时器和中断实现换相
2.内核效率低下:CPU的内核时间大量被中断处理过程占用,效率很低
3.运行状态不可知:用户无从得知电机运行的转速、温度、功率等信息
本作品基于Arm Cortex-M3处理器搭建了以智能 BLDC 驱动为核心的SoC平台,克服市面上电子调速器只能控制电机而不能回传数据,自适应调节的缺陷,制作智能BLDC控制器。使用BLDC驱动硬件加速器对电机进行全阶段的控制,并自动处理堵转异常,防止电机烧毁,从而让CPU能够有更多空闲时间从事其他的工作,提升电机驱动的稳定性和CPU的利用率。另外,通过独立加速器,看门狗,default slave等SoC层面的稳定性设计,加强系统整体稳定性。
作品创新点
1.系统稳定性增强设计
2.自适应 PWM 频率调节
3.独立运行/嵌入运行
4.参数回传和人机交互
功能介绍
1.转向设置
2.自动重启动
3.异常警告
4.异常运行保护功能
5.PWM自适应调节
6.独立运行/子系统
7.友好的人机交互
作为子系统运行使用的上位机界面
系统构成
SoC架构
软硬件功能划分
硬件模块:
1.BLDC全过程驱动
2.LCD8080并口驱动
3.随机数生
4.数码管动态刷新
5.蜂鸣器鸣叫
6.矩阵键盘控制
7.UART发送和接收
8.脉宽捕获
9.电压与电流采集
10.温度传感器读数
软件模块:
1.运行UCOSⅢ操作系统
2.运行遗传算法
3.任务调度
4.初始化各个外设
5.配置寄存器
6.进行堵转异常处理
7.处理UART数据
8.处理矩阵键盘数据
9.LCD数据可视化
工作流程示意图
SoC外围电路部分
示意图
1.脉冲发生电路
2.MP2307开关电源
3.半桥驱动电路
4.NMOS功率管
5.过零检测电路
6.电压与电流采集电路
7.实时时钟
8.保护电路
加速器设计
原理分析
1.三相BLDC没有传统直流电机的换向器,必须以特定的方式按顺序通电来产生旋转磁场。
2.对于无感(没有转子位置传感器)BLDC,6步换相不需要使用ADC电路,成本较低,可靠性高。
3.由于开关噪声,振铃现象,EMI兼容问题等,需要使用噪声抑制算法来消除。
加速器结构
稳定性设计:
自主运行
影子寄存器
硬件堵转保护
纳秒级响应速度
功能性设计:
定义初始化序列
自动重启动设置
正反转设置
堵转警告
转速监测
辅助外设
真随机数生成器
1.遗传算法需要经过变异运算,才能更好的求解出全局最优值。M序列随机数发生器能够使变异过程更具随机性。
2.TRNG的seed由RTC产生,进一步增强了数据的随机性.RTC也可以用于显示系统当前时间。
使用MATLAB绘制TRNG产生的5000个连续数据点
驱动加速器
1.LCD驱动加速器:提高LCD刷新速率
2.全双工UART:提高UART发送速率
3.通用定时器:自动脉宽捕获(具备毛刺抑制功能)
4.ADC接口:自动读取ADC数据
5.温度传感器接口:自动读取温度和传感器状态
6.矩阵键盘驱动器:自动行扫描,消抖
7.数码管驱动器:自动动态刷新数码管
参赛感受
无刷永磁直流电机(BLDC)是一种随着半导体器件的发展而兴起的电机。BLDC具备较低的运行噪声,较高的功率密度,极高的效率和极高的可靠性。因此,BLDC常常用于高端的家用电器、无人机、电动汽车和工业制造等领域。
我们参加了全国大学生集成电路创新创业大赛的Arm杯赛,收获颇丰。在亲手设计外设,搭建SoC和外围系统的过程中,我们踩过了数字逻辑设计的坑,模拟电路稳定性的坑,进行了反复的计算与测试确保系统的可靠性和完整性。在校赛中我们未得到评委老师的认可,没有获得任何奖项,但是我们未曾放弃对专业知识的热爱,未曾放弃对电路设计的执着,我们相信,只要方向正确,付出总有回报。
分赛区比赛中,我们作为Arm杯赛唯一晋级的本科组,赛程更加紧张。由于我们的团队在数字电路设计能力上相比外校基础薄弱,无法取得压倒性的优势,我们规划了3个技术路线,分别针对作品功能,演示效果和技术先进性。我们突破了疫情的障碍,前往校外设备齐全的实验室进行技术攻关,最终在系统功能性,稳定性与演示效果上达到了空前的水准,制作了功能完善的SoC,实现了自我超越。
最后,感谢指导老师黄乐天给以我们全面的方向指引,并对我们的改进方向做出了充分肯定,感谢学院领导给予我们的支持,感谢比赛组委会为我们提供了自我提升的机会。也希望同学们能够不仅仅局限于考试,而是多和老师沟通,去探索主动发展的无限空间!
开源的工程:https://github.com/BAO-Rongxin/Intelligent-BLDC-driver
‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧ END ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧
长按识别图中二维码关注
欢迎关注微信公众号【数字积木】,更精彩的内容等着你!
【集创赛】arm杯一等奖作品:智能BLDC驱动系统相关推荐
- 2021年第五届集创赛Arm杯报名/提问/培训视频/历年获奖资料汇总
2021年集创赛赛题已正式发布,目前已经开始报名,报名截止日期为3月15日.本届集创赛"Arm杯"赛题为基于Arm处理器核的信号处理SoC设计,属于数字与SoCs设计赛道!感兴趣的 ...
- 【第三届集创赛】Arm杯一等奖作品分享一:车牌的高速精准识别
首发极术社区 如对Arm相关技术感兴趣,欢迎私信 aijishu20加入技术微信群. 2019年8月19-21日,2018-2019第三届全国大学生集成电路创新创业大赛全国总决赛(以下简称" ...
- 2021集创赛获奖作品合集
2021全国大学生集成电路创新创业大赛(以下简称"集创赛")已经结束,在比赛中出现了很多优秀作品,特作为整理. 1. Arm杯:基于 Cortex-M3 内核 SOC 的动目标检测 ...
- 【集创赛】arm杯国奖作品推荐--作品介绍!
本次推荐中科大的三位大佬2020年集创赛arm杯的作品!赛题要求实现"基于 Arm 处理器核的智能化 SoC 设计",该作品成功晋级决赛,并获得国奖,下面是他们的作品介绍! 本次转 ...
- “芯成大海,青春启航”第六届集创赛启动仪式顺利举行
1月12日,由工业和信息化部人才交流中心主办,重庆西永微电子产业园区承办,重庆海云捷迅科技有限公司执行承办,示范性微电子学院产学融合发展联盟.IEEE中国代表处.北京电子学会协办,北京智芯国信科技有限 ...
- 【2022集创赛】安谋科技杯一等奖作品:Cortex-M0智能娱乐收音机
本篇文章是2022年第六届全国大学生集成电路创新创业大赛安谋科技杯一等奖作品分享,参加极术社区的**[有奖征集]分享你的2022集创赛作品,秀出作品风采**活动. 团队介绍 参赛单位:武汉理工大学 队 ...
- 【2022集创赛】安谋科技杯三等奖:基于ARM处理器的无线SoC设计
本篇文章是2022年第六届全国大学生集成电路创新创业大赛安谋科技杯三等奖作品分享,参加极术社区的**[有奖征集]分享你的2022集创赛作品,秀出作品风采**活动. 团队介绍 参赛单位:厦门大学 队伍名 ...
- 【2022集创赛】飞腾杯二等奖作品:基于单目深度估计网络的全息显示终端
本篇文章是2022年第六届全国大学生集成电路创新创业大赛飞腾杯二等奖作品分享,参加极术社区的**[有奖征集]分享你的2022集创赛作品,秀出作品风采**活动. 1.团队介绍 参赛单位:西安电子科技大学 ...
- 【第五届集创赛备赛】一、黄乐天老师赛事宣讲及各个赛题分析
赛题地址:第五届集创赛--紫光同创杯 0.工作安排 工作安排(2021年3月7日): 1.完成报名选题相关事宜,初步定为紫光同创杯.(3月10号之前确定选题并报名) 2.完成紫光同创开发环境的搭建(P ...
最新文章
- EL表达式和JSTL
- 20行python代码的入门级小游戏-python实现石头剪刀布小游戏
- PHPCMS 当前栏目和子目录
- Tomcat8.0 JDK1.8 的详细配置 Win10
- 数据结构练习 00-自测3. 数组元素循环右移问题 (20)
- JavaScript | 如何为变量分配十进制,八进制和十六进制值?
- html 隐藏_HTML实战篇:纯css制作二级横向以及竖向菜单导航
- Java基础学习总结(160)——JDK15正式发布,划时代的ZGC同时宣布转正
- Notepad++ 查找替换 换行符的方法
- JAVA Long String类型之间的转换
- 计算机维修主板,电脑维修|干货收好!自己就能修主板
- Kconfig内容(详细)总结附示例快速掌握
- 批处理命令之Start的详细用法
- orcale中like用法详解
- 计算机动漫与游戏制作要画画基础吗,动漫制作要有绘画基础吗
- 计算机定时开机命令,如何设置定时开机 定时开机命令设置方法
- 【手拉手 带你准备电赛】解答小课堂——为什么要使能时钟
- C++ 算法篇 动态规划----区间动态规划
- 计算机c盘加容量,两种方法,给电脑C盘增加10G的容量,电脑焕然一新
- 新一代超高精度双回路张力控制器
热门文章
- 中国生物医药项目投资机会及运营前景策略研究报告2021-2027年
- IoT DDoS警报系统是如何帮助我们预测网络攻击的?
- pcb 受潮_硬盘SATA接口断裂及PCB板受潮_希捷 Barracuda 3TB 7200转 64MB_固态硬盘评测-中关村在线...
- 解决:Jackson反序列化Java内部类失败(序列化后的识别码为LinkedHashMap,而非内部类本身)
- hbase/hadoop异常:No lease on /hbase/archive/data/... File is not open for writing
- 使用 ATS605LSG 的电动机驱动的磁体编码器设计
- 英文学习20180410
- 八卦一下量子机器学习的历史
- mysql 时间段天数_ORACLE任意时间段内所有天数日期查询
- 圣诞节!教你用 Python 画棵圣诞树