基于STM32 ARM+FPGA+AD的电能质量分析仪方案设计(一)硬件设计

电能质量分析系统硬件设计
3.1 电能质量分析系统设计要求
本系统实现对电能质量的高精度测量,根据国家相关电能质量分析仪器规定
标准以及对市场电能质量分析仪的分析,指定以下设计目标。
1 )电能质量参数测量精度:
1 )有效值:电压有效值 ±0.2% ,电流有效值 ±0.5%
2 )频率: ±0.01Hz
3 )谐波: 2-50 次,精度: ±3%
4 )频率: ±0.01Hz
5 )三相不平衡度:电压不平衡度 ±0.2% ,电流不平衡度± 1%
2 )实时显示电能质量参数,实现数据共享和良好的人机交互。
3 )电能质量参数数据进行存储。
3.2 电能质量分析系统硬件方案设计
3.2.1 硬件架构设计
电能质量分析系统对采集到的电力信号数据进行处理的过程中涉及到大量
的数据计算和传输,此过程需要消耗芯片内部大量的逻辑单元和储存单元以实现
高效的计算和处理任务。因此,在选择处理器芯片时要综合考虑处理器的性能,
以确保其具有足够的计算能力和运行速度处理复杂的运算,从而保证系统的效率、
可靠性。
常见的单核控制微处理器有 ARM DSP FPGA 等。其中 ARM 具有高性
能、易集成以及较强的事务管理能力,在系统控制时并行独立处理多任务互不干
扰; DSP 擅长数据计算处理,但受硬件结构条件限制,依靠软件指令执行,串行
处理数据的方式在处理大量数据计算任务时仍存在低效能的情况; FPGA 的优势
则是其灵活性、可重构行以及并行处理的能力。单一的控制核心不足以满足复杂
的设计需求,现今主控解决方案采用双核以及三核处理器的方法以达到取长补短
的作用。目前高端的电能质量分析仪的主控架构主要有以下几种: ARM+DSP
DSP+FPGA ARM+FPGA
1 ARM+DSP 架构兼备系统控制以及数据处理功能,其中 ARM 承担任
务分配而 DSP 分担数据计算处理,但该系统扩展能力差,后续如想添加新功能
只能更换芯片较为麻烦。
2 DSP+FPGA 架构中 FPGA 承担数据采集和通信控制的功能, DSP 负责
算法运算。但任务管理能力差,对于功能繁多的任务来说显然是有所欠缺。
3 ARM+FPGA 架构具备系统控制以及数据处理功能,相较于 DSP 串行
处理数据的方式, FPGA 的并行处理在进行数据加速、实时性高的情景下更有优
势。
除上述架构外还有 ARM+DSP+FPGA 架构,该架构优势在于融合多种类型
处理器,提供更完善的功能和更强大的性能,但系统复杂度大幅增加,开发难度
和维护性更高,需要大量人力和物力投入,增加了系统的开发和维护成本。此外,
该架构的优化和调试更具挑战性,需要深入研究不同处理器之间的通信和数据交
换等问题。因此,在选择处理器架构时,需要考虑任务的性质、规模、预算和人
力资源等多方面因素,并在系统性能、复杂度和成本之间进行平衡。所以该架构
不在本次设计考虑范围。
综合考虑各种架构的优缺点以及结合实际开发时的内外在因素,选择基于
FPGA+ARM 架构实现电能质量分析系统设计。 ARM 架构满足三相电力系统电
能质量检测时的任务控制分配,包括三相电压(流)的六通道信号的采集、传输
和处理,并可在后期进行相应的扩展。 FPGA 架构通过对多通道数据并行处理技
术的应用,能够有效降低数据处理时间,实现对实时性要求的满足。
3.2.2 芯片选型
作为整个系统的核心控制组成部分, ARM 主控核心扮演着极其重要的角色。
在当今市场上众多微处理器种类层出不穷的情况下,选型一款合适的主控核心时
应考虑性能、资源以及配套设施是否完善。包括开发工具、学习资源和实施案例
等方面,在保证系统设计的可靠性和稳定性方面具有重要意义。通过对市场主流
控制芯片的对比分析选型为 STM32F407ZGT6 芯片作为 ARM 端的主控核心。
FPGA 芯片选型选择 Xilinx 公司 Spartan-6 系列的 XC6SLX16 芯片作为设
计的目标芯片,并使用 ISE14.7 作为系统工具进行程序设计,采用 Mentor 公司
ModelSim 进行仿真功能验证。
3.2.3 硬件架构系统设计
硬件架构设计图如图 3-1 所示。
本系统由前端信号采集预处理模块、基于 FPGA 的数据处理模块和基于
ARM 的人机交互与显示模块构成。
采集预处理模块将电力信号通过调理后转换成适合 ADC 的采样信号,并滤
除所需频率外的高频信号以及保留被测信号的各种信息,承担系统的核心检测工
作,对电能质量参数检测结果的精准性起到了决定性的作用。
基于 FPGA 的数据处理模块包括全数字锁相环模块、主控制模块, ADC
制以及算法等主要模块。其中,主控制器模块负责各模块参数的配置、数据交换
处理等任务,通过与其他模块的协调工作,保证电能质量分析系统的高效有序运
行。
基于 ARM 的人机交互模块是电能质量分析系统的控制部分,集成了 FSMC
控制器模块、配置控制器模块以及通信和存储模块,在系统中起到 大脑 的作用。
其中 FSMC ARM FPGA 通信总线; ARM 通过配置控制器模块对 FPGA
行相应的初始化配置。
3.3 数据采集预处理电路
电力系统中的电力信号通常是高电压、大电流且存在瞬态事件,因此并不能
直接对其进行数据采集转换,在数据采集时,必须确保仪器具有耐高压的能力,
并在保证使用者自身安全的前提下保证所采集数据的信息完整性。
电力信号的高精度采集依赖于精准可靠的信号采集预处理模块。该模块包括
采集电路、抗混叠滤波电路、同步采样锁相倍频电路、单端转差分电路以及
AD7609 模数转换电路。其中抗混叠滤波电路能有效消除目标信号外的高频干扰
信号,提高采样信号的稳定性和精度;锁相倍频电路可实现信号的精确实时同步,
使得 AD 的采样频率是信号频率的整周期倍,保证采样数据的一致性和准确性;
单端转差分电路可增强信号的抗干扰能力; AD 模数转换电路将采集到的电力信
号转换为离散数字信号。
本设计是对三相电压和三相电流的六通道信号进行检测,因电压电流预处理
步骤相似,本章仅对电压信号采集模块进行介绍。电压信号采集处理模块结构图
如下图 3-2 所示。
电力信号采样方式有以下两种方式:
1 )直流采样:将采集的交流信号不间断的转换成直流信号且与原始信号
保持线性关系,并转换成离散的数字信号。在此过程具有整流和滤波的功能,使
得直流采样具备了很强的抗干扰能力。但实时性不强且对原始信号无法直观观察。
2 )交流采样 [47] :使用互感器对原始交流信号进行采集,并对互感器副边
的交流信号进行采样。优点是采样的信号是与原始信号的频率相同、幅值具有一
定的比例关系的交流信号,具有实时性强且客观的反映出原始信号的波形。
本设计采用的是交流采样的方式对电力信号进行采集,此种方法可以保留原
始信号的波形相位等信息且失真较小。

3.6ARM 控制系统设计

ARM 为本系统的控制核心,负责整个系统的协调工作,完成与 FPGA 的数

据传输以及数据存储等。ARM 模块结构框图如图 3-16 所示。

3.5.1 FSMC 接口模块

FSMC 全称为可变静态存储控制器,是 ARM 内嵌的高性能、可靠性的存储

器控制器。该控制器能够连接多种类型的静态存储器,如 SRAM、NOR Flash、

PSRAM 等,并提供高速数据传输和灵活的访问方式,以满足各种嵌入式系统的

需求。FSMC 支持多种数据总线宽度和存储器大小,同时具有多种访问模式和时

序控制功能,以适应不同类型的存储器和应用场景。相对于 EMI 控制器,FSMC

在连接大容量存储器、支持更多的存储器类型、提供更丰富的控制功能和更高的

性能方面更有优势。与 FMC 相比,FSMC 提供更高的数据传输速度和更灵活的

存储器配置方式,同时还具有更高的可靠性和稳定性[54]。因此,本设计采用 FSMC

总线实现 FPGA 与 ARM 的数据通信与传输。

FSMC 将外部静态存储器划分为四个容量相同为 64M 的存储区域,本设计

使用 Bank1 中的 NOR 控制器管理内存。FSMC 存储区域,如图 3-17 所示。

如上图所示,FPGA 与 ARM 通过 FSMC 通信总线连接,通过控制该区域中

FSMC_NE1 的片选信号状态来控制双核的通信以及数据传输;FSMC_NOE 和

FSMC_NEW 是读写控制信号,FSMC_NBL[0:1] 是用于 FPGA 向 STM32 发送

请求中断信号。

3.5.2 数据通信与存储模块

STM32 中 UART 串口仅支持传统的串口通信协议,如 RS-232 或 RS-485 协

议,因此无法直接与上位机进行通信,为实现 STM32 与上位机的通信和控制,需

使用 USB 转串口电路将 UART 串口信号转换为 USB 信号进行传输。USB 转串

口原理图如图 3-19 所示。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1560413.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

欧科云链研究院深掘链上数据:洞察未来Web3的隐秘价值

目前链上数据正处于迈向下一个爆发的重要时刻。 随着Web3行业发展,公链数量呈现爆发式的增长,链上积聚的财富效应,特别是由行业热点话题引领的链上交互行为爆发式增长带来了巨量的链上数据,这些数据构筑了一个行为透明但与物理世…

【部署篇】Redis-01介绍‌

一、Redis介绍‌ 1、什么是Redis? ‌Redis,英文全称是Remote Dictionary Server(远程字典服务),Redis是一个开源的、使用‌ANSI C语言编写的‌Key-Value存储系统,支持网络、可基于内存亦可持久化。‌ 它提…

leetcode hot100_part3_滑动窗口

滑动窗口是有一个基本的模版的,不要自己想当然哦~ 滑动窗口算法思想(附经典例题)_滑动窗口的思想-CSDN博客 滑动窗口也叫同向双指针;可以先看一下灵山视频:滑动窗口【基础算法精讲 03】_哔哩哔哩_bilibili 3.无重复字…

【unity进阶知识12】从零手搓unity存档存储数据持久化系统,实现对存档的创建,获取,保存,加载,删除,缓存,加密,支持多存档

文章目录 前言一、Unity对Json数据的操作方法一、JsonUtility方法二、Newtonsoft 二、持久化的数据路径三、数据加密/解密加密方法解密方法 四、条件编译指令限制仅在编辑器模式下进行加密/解密四、数据持久化管理器1、存档工具类2、一个存档数据3、存档系统数据类4、数据存档存…

【Oracle数据库进阶】001.SQL基础查询_查询语句

课 程 推 荐我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈虚 拟 环 境 搭 建 :&#x1…

安卓使用.9图实现阴影效果box-shadow: 0 2px 6px 1px rgba(0,0,0,0.08);

1.安卓实现阴影效果有很多种&#xff0c;一般UX设计会给以H5参数box-shadow: 0 2px 6px 1px rgba(0,0,0,0.08);这种方式提供背景阴影效果&#xff0c;这里记录一下实现过程 2.界面xml源码 <?xml version"1.0" encoding"utf-8"?> <layout xmlns…

【SEO】什么是SEO?

什么是SEO&#xff08;搜索引擎优化&#xff09;&#xff1f;为什么SEO对于⼀个⽹站⾄关重要&#xff1f; SEO 全称是搜索引擎优化&#xff08;Search Engine Optimization&#xff09; 因为我们目前开发的网址&#xff0c;需要人看到&#xff0c;除了通过宣传营销的方式展现…

kubernetes中微服务部署

微服务 问&#xff1a;用控制器来完成集群的工作负载&#xff0c;那么应用如何暴漏出去&#xff1f; 答&#xff1a;需要通过微服务暴漏出去后才能被访问 Service 是一组提供相同服务的Pod对外开放的接口借助Service&#xff0c;应用可以实现服务发现和负载均衡Service 默认只…

Docker容器简介及部署方法

1.1 Docker简介 Docker之父Solomon Hykes&#xff1a;Docker就好比传统的货运集装箱 2008 年LXC(LinuX Contiainer)发布&#xff0c;但是没有行业标准&#xff0c;兼容性非常差 docker2013年首次发布&#xff0c;由Docker, Inc开发 1.1.1什么是Docker Docker是管理容器的引…

苹果秋季盛典:iPhone 16系列引领未来科技潮流

9月10日&#xff0c;苹果公司在众人瞩目中举办了2024年的秋季特别活动&#xff0c;发布了备受期待的iPhone 16系列。 尽管网络发布会已经持续了一整年&#xff0c;但熬夜观看的果粉们仍然热情不减&#xff0c;因为每一次苹果的新品发布都代表着科技界的一次重大飞跃。 iPhone …

scau:面向对象java实验作业1-2 猜数字游戏

题目名称实验1-2 猜数字游戏题目关键字数据类型 基本输入输出 控制语句 方法题目录入时间2022/10/10 11:01:37题目内容 使用Java程序&#xff0c;项目名称&#xff1a;GuessNumberGame&#xff0c;类根据自己需要定义。 程序开始运行后&#xff0c;允许玩家进行多次猜数字的游…

使用 Docker 部署前端项目:Vue 和 React 结合 Nginx 实现静态文件托管

使用 Docker 部署前端项目&#xff1a;Vue 和 React 结合 Nginx 实现静态文件托管 Web 开发中&#xff0c;将前端项目&#xff08;例如 Vue 或 React 应用&#xff09;打包后通过 Docker 容器和 Nginx 部署是非常常见的方式。它不仅简化了部署流程&#xff0c;还能确保在不同环…

通信协议 —— RS485 讲解得好

目 录 RS-485 通信协议一、重要性二、通信实现三、其它通信方式3.1 串口通信3.2 RS232标准 四、总结 RS-485 通信协议 RS-485是一种通用的通信标准&#xff0c; RS是Recommended Standard的意思&#xff0c;是美国电子工业协会&#xff08;EIA&#xff09;在1983年批准了一个新…

【操作系统】深入探索:操作系统内核与用户进程的数据交互艺术

目录 一、数据从内核缓冲区拷贝到用户进程缓冲区&#xff0c;是谁来负责拷贝的&#xff0c;是操作系统还是用户进程&#xff1f;实际的执行者到底是谁&#xff1f;二、系统调用以及用户态内核态的相互转换1、系统调用2、用户态内核态的相互转换 三、如何形象的理解linux的虚拟地…

【华为】基于华为交换机的VLAN配置与不同VLAN间通信实现

划分VLAN&#xff08;虚拟局域网&#xff09;主要作用&#xff1a; 一、提高网络安全性 广播域隔离访问控制增强 二、优化网络性能 减少网络拥塞提高网络可管理性 sysytem-view #进入系统视图配置参数 vlan batch 10 20 #批量创建vlan LSW3: int g0/0/1 port…

RTSP 音视频play同步分析

基础理论 RTSP RTP RTCP SDP基础知识-CSDN博客 关于RTP的时间戳知识点回顾 时间戳单位&#xff1a;时间戳计算的单位不是秒&#xff0c;而是采用采样频率的倒数&#xff0c;这样做的目的是为了使时间戳单位更为精准。比如说一个音频的采样频率为8000Hz&#xff0c;那么我们可…

Vue使用@别名替换后端ip地址

1. 安装 types/node types/node 包允许您在TypeScript项目中使用Node.js的核心模块和API&#xff0c;并提供了对它们的类型检查和智能提示的支持。 npm install types/node --save-dev 比如安装之后&#xff0c;就可以导入nodejs的 path模块&#xff0c;在下面代码 import path…

TextView把其它控件挤出屏幕的处理办法

1.如果TextView后面的控件是紧挨着TextView的&#xff0c;可以给TextView添加maxWidth限制其最大长度 上有问题的布局代码 <?xml version"1.0" encoding"utf-8"?> <layout xmlns:android"http://schemas.android.com/apk/res/android&qu…

Github优质项目推荐 - 第六期

文章目录 Github优质项目推荐 - 第六期一、【WiFiAnalyzer】&#xff0c;3.4k stars - WiFi 网络分析工具二、【penpot】&#xff0c;33k stars - UI 设计与原型制作平台三、【Inpaint-Anything】&#xff0c;6.4k stars - 修复图像、视频和3D 场景中的任何内容四、【Malware-P…

搭建 golang 项目的目录介绍及其用途对比表

文章目录 1.目录细则表2.目录使用说明及典型内容2.例 K8S 源码目录编排 1.目录细则表 常见 Go 项目目录的作用、典型内容、文件类型和使用场景~ 目录名作用/用途常见文件类型使用场景及详细说明典型内容举例cmd/存放可执行文件的入口点&#xff0c;通常为项目主程序入口或工具…