打印
[创新制造展示]

21ic第三届设计大赛】+冗余执行系统

[复制链接]
3862|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 15040268795 于 2019-6-22 19:48 编辑

积极参与下21ic的活动
系统设计方案
    首先满足竞赛要求,保证竞赛的基本功能实现,在此基础上,发挥下,除了竞赛加分项的功能外还打算进一步发挥,两个mcu互为主从,保证任何一个mcu出问题了,另一个mcu都能够接管控制功能

1、硬件设计
   MCU: stm32f030c8t6
    系统状态指示:3个led
    系统状态监控:1个uart串口
    故障状态模拟:按键1个
    调试接口:SWD 2个    特意为了参赛做了一版PCB,PCB图如下
pcb正面

pcb丝印层



2、软件设计
软件采用双CPU结构,其中主cpu进行adc检测以及led状态指示,主cpu与从cpu之间通过状态指示信号通信,当从cpu检测到状态指示信号不同时,指示主cpu有故障,并接管主cpu功能,当从cpu检测到状态信号相同时,再检测led状态,当led状态有误时,从cpu通过串口输出故障信息,并接管主cpu功能纠正led状态。由于双cpu之间分别采集adc存在一定误差,所以软件设计中考虑到误差容错机制。代码主界面:

3、系统调试
PCB打样归来



焊接硬件

硬件调试,一次上电ok



4、视频展现
指示灯显示规则
1、adc状态:
   闪烁:adc值处于limt_a>=adc_val>limt_a
   灭:adc值处于adc_val<limt_a
   常亮:adc值处于adc_val>limt_b
2、主cpu工作状态:
  闪烁:主cpu正常工作
  不闪烁或者常亮:功能被从cpu接管
3、从cpu工作状态:
  慢闪:处于监控状态,主cpu工作正常
  快闪:处于监控状态,并接管主cpu工作,主cpu工作异常
测试条件:
limt_a = 1000
limt_b = 2000
视频连接:
故障检测以及管控


串口状态输出显示

串口状态输出

cpu故障诊断,从cpu接管功能控制








微信图片_20190622170154.jpg (322.96 KB )

微信图片_20190622170154.jpg

21ic.pdf

56.54 KB

原理图

redunt.rar

3.58 MB

代码

使用特权

评论回复
评论
zhanzr21 2019-6-19 22:26 回复TA
加油! 

相关帖子

沙发
15040268795|  楼主 | 2019-6-22 21:34 | 只看该作者
感谢大家的支持

使用特权

评论回复
板凳
15040268795|  楼主 | 2019-6-23 14:47 | 只看该作者
丛机监控主机通过io监控,这样能够提高系统的反应灵敏度,不建议采用串口通信,影响失效性,目前测试的反应时间在100ms以内

使用特权

评论回复
地板
15040268795|  楼主 | 2019-6-25 11:32 | 只看该作者
下一步,完善代码,实现双cpu互为主从的功能

使用特权

评论回复
5
15040268795|  楼主 | 2019-6-26 15:17 | 只看该作者
感谢管家推荐,好活动必须参加

使用特权

评论回复
6
caijie001| | 2019-6-27 08:45 | 只看该作者

使用特权

评论回复
7
caijie001| | 2019-6-27 08:45 | 只看该作者

使用特权

评论回复
8
15040268795|  楼主 | 2019-6-27 09:22 | 只看该作者

感谢支持,欢迎交流

使用特权

评论回复
9
lihui567| | 2019-6-29 11:01 | 只看该作者
楼主那个串口调试助手是你们自己做的吗,界面看这挺好的,

使用特权

评论回复
10
15040268795|  楼主 | 2019-6-29 12:41 | 只看该作者
是我朋友做的,需要可以共享给你

使用特权

评论回复
11
15040268795|  楼主 | 2019-7-2 11:01 | 只看该作者
欢迎大家交流

使用特权

评论回复
12
15040268795|  楼主 | 2019-7-12 13:05 | 只看该作者
感谢各位的关注

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

29

主题

95

帖子

2

粉丝