2019电赛解析:E题基于互联网的信号传输系统

本题要求实现波形的采集于重放,采样率达到10Msps,且要求双通道同时采集和显示,经简单计算可知,如果要完整传输10Msps采样的信号数据,及时8bit的采样深度,对带宽要求也要至少16MBytes/s,超过100Mbps以太网的上限,大量输出传输对MCU的算力也不能满足要求,所以直接传输数据是不现实的.

因此我们采用了类似示波器的采集方案,即连续采样+DMA缓存+波形识别+传输显示的技术。通过识别波形的上升沿,作为信号的触发点,直到采集到第二个触发点,将两个触发点中间的数据作为一段有效波形数据,进行打包传输到显示终端。

显示终端根据收到的波形数据,填充到波形发生器里,并触发DMA循环模式,让DAC循环播放该段信号,从而在示波器上显示出连续的波形。

本题目基于三块STM32F767开发板进行制作,代码基于官方提供示例“LwIP_HTTP_Server_Netconn_RTOS”,示例代码提供了基本的以太网底层驱动和LWIP协议栈,直接实现ADC数据采集、DAC信号还原即可。

ADC使用的是STM32F7内置的ADC,虽然官方标称这个ADC的采样率不到4M,但是实测可以超频到10M且很稳定。

DAC使用的也是内置DAC,F6相比F1的DAC提升很多,而且带有输出缓冲器,可以显著提升信号的驱动力,同样可以超频到10M的输出刷新率,但是由于DAC输出电路的压拜率有限,实际输出带宽大约是1M左右,超过1M速率,波形幅值会衰减超过3db,但是应对几百K的信号还是很轻松复原的。

ADC和DAC均使用DMA进行连续输出,确保波形的连续性。代码均可以参考官方例程“ADC_DMA_Transfer”“DAC_GenerateWaveform_TriggerHW”。

视频演示:https://www.bilibili.com/video/BV1w4411Q7k2/

E题方案具体实现步骤:

1、安装keil 5.2以上的开发环境

Keil.STM32F7xx_DFP.2.9.0.pack 打上固件库的安装包 必须是2.9版本的库

链接: https://pan.baidu.com/s/1s4qePuD0DS4fiQ-LIMKHQQ 提取码: rytw

官网:https://www.keil.com/dd2/pack/

2、LwIP.7z 压缩包解压到目录下 必须是这个目录

\Keil_v5\ARM\Pack\Keil\STM32F7xx_DFP\2.9.0\Projects\STM32F767ZI-Nucleo\Applications\LwIP

  1. 分别烧录三个固件Palyback、sample1、sample2

其中:Sample做采样、playback回放数据

网络拓扑:

接线

上图可以直接调试,

由于题目要求电压是1-5V,输出信号也要到5V,因此需要额外加分压和放大

上电、接好线、开启信号源后,等1、2秒钟,就可以在示波器上看到回放信号

 

板上PA4的针脚

电脑也接入交换机,ip设置成192.168.0.5

分别ping 192.168.0.1和192.168.0.10、192.168.0.11 能ping通说明正常工作

设置信号源offset 1.5V 幅值3V,频率100K任意波形 接入到sample的PA4脚上,等一下应该能看到playback上输出波形

把playback板上的PE5接地和悬空对应两个通道,悬空显示sample1 接地显示sample2

 

如果信号出现毛刺,问题一般在采样那边,信号传输要用同轴线,接到单片机上的杜邦线尽量短,实在不行可以在PA4引脚上对GND焊一个1nf左右小电容

分压电阻 

5V信号分压成2.5V输入单片机

输出负载放大电路

 按照此图设计一个2倍的同相比例放大器电路

 如果输出电阻是需要电路上串联一个50R电阻,则运放电源电压要提升到12V~15左右,放大4倍,才能在负载的50R电阻上采到5V信号。

写在最后:虽然电赛延期,举办时间待定,但是也给了大家更多的准备时间,尝试各种方向,想必今年的国一竞争会更加激烈,我也会在这段时间内发布一些模拟押题的方向,帮大家一起备赛.

加QQ群879225223 电赛交流答疑,获取项目工程源码

 

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值