本项目是电力电子装置运行状态的远程监测系统,实现电路的三相电压电流采样、信号调理、AD转换、以太网通信及PC端可视化监测,该Repository实现基于STM32F407ZGT6核心板开发的AD转换、电压电流指标分析和以太网通信。
Zhejiang University SRTP(Student Research Training Program)
浙江大学本科生科研实践项目
指导:邓焰教授 Guided by: Professor Yan.Deng
- MCU: STM32F407ZGT6, 32位ARM-Cortex M4架构
原理图和PCB使用Altium Designer绘制
需要六个通道(A,B,C三相电压和电流),使用ADC1
- PA4 -> Channel 4
- PA5 -> Channel 5
- PA6 -> Channel 6
- PC0 -> Channel 10
- PC2 -> Channel 12
- PC3 -> Channel 13
- SAR ADC
- 规则通道和注入通道(本项目使用规则通道)
- 相关寄存器
- ADC_CR1: 分辨率(RES), 开启扫描(SCAN), 中断标志位(EOCIE, JEOCIE), ...
- ADC_CR2: ADC开关(ADON), 连续转换开关(CONT)
- ADC_SQR: 规则通道转换组顺序和数量
- ADC_JSQR: 注入通道转换组顺序和数量
- ADC_SR: EOC, ...
- ADC_DR: 存储AD转换结果
- GPIO和ADC时钟使能(ADC时钟最好不要超过36MHz)
- DMA时钟使能(DMA2挂在总线AHB1下,因此使能AHB1时钟)
- 多通道复用ADC1进行转换,采用单次、扫描模式
- 采样时间设置(时间越短精度越低)
- DMA配置(用法见于STM32F4xx中文参考手册11.8)
- 查询方式判断ADC转换是否完成
UDP通信已经调试可实现,TCP通信未调试
Notes:
IP层的基本配置位于 lwip_comm.c 中:
(已经开启DHCP服务,超时重试不成功后将使用默认配置)
-
默认远端IP: 192.168.1.115 (可在udp_demo.c中定义的udp_demo_set_remoteip中修改)
-
默认本地IP: 192.168.1.30
运输层的用户配置:
- UDP(在udp_demo.c/.h中修改)
- Remote Port = 8089
- Local Port = 8089
- TCP Client
- TCP Server
使用LABVIEW 2018开发
-
CORE: CMSIS(Cortex MicroController Software Interface Standard)软件接口层标准
- 核内外设访问层(core_cm4.h)
- 中间件访问层
- 外设访问层
- ...
-
FWLIB: Firmware Library,STM32F4固件库,加入了跟以太网相关的库文件
-
HARDWARE: 硬件驱动和功能
-
LWIP: Lightweight IP协议栈
- arch
- lwip_app: 用户自定义应用
- lwip-1.4.1
-
MALLOC: 内存管理
- TIM2定时修改
- ADC_DMA启动方式完善
- ADC采样周期调试和修改
- 功能裁剪,删除冗余
- 加入TCP通信功能
- 丢包测试
- ( 考虑加入OS调度 )
- ......
-
STM32F4xx Manual
-
Cortex M4 内核编程手册
-
Alientek开发板例程、资料等
-
计算机网络与通信体系
-
LWIP协议栈源代码