1 AD7606/AD7616介绍

AD7606是ADI公司的16位、8通道同步采样AD芯片,并行采样率高达200KSPS(AD7616是16位、16通道、1MSPS)。在电力线路测量和保护系统中,需要对多相输配电网络的大量电流和电压通道进行同步采样,AD7606是目前电力系统中最常用的ADC采样芯片之一。

AD7606片上集成模拟输入箝位保护、二阶抗混叠滤波器、跟踪保持放大器、16位电荷再分配逐次逼近型ADC内核、数字滤波器、2.5V基准电压源及缓冲、高速串行和并行接口。AD7606采用5V单电源供电,不再需要正负双电源,并支持±10V或±5V的双极性信号输入。所有通道均能以高达200KSPS的速率进行采样,同时输入端箝位保护电路可以承受最高达±16.5V的电压。

目前AD7606已广泛应用于电力线路检测和保护系统、多项电机控制、仪器仪表和控制系统、多轴定位系统核数据采集系统(DAS)。

图 1

图 2

图 3

图 4

2 ZYNQ SoC在能源电力领域方案优势

(1) 采用Xilinx Zynq-7000 SoC高性能低功耗处理器,集成PS端单核/双核ARM Cortex-A9 + PL端Artix-7架构可编程逻辑资源。

(2) 可通过PL端Artix-7架构可编程逻辑资源按需扩展外部功能接口,只要资源满足,理论上无数量限制。典型应用:CAN(4路)、千兆以太网(2路)、百兆以太网(4路)、UART(12路)、SPI(5路),特别是可通过外接多片AD芯片(AD7606/AD7616),实现16/32/64路AD同步采样。

(3) OpenAMP框架可实现双核ARM Cortex-A9非对称使用方案,从而使双核ARM实现分别跑两个系统:一个ARM Cortex-A9跑Linux,一个ARM Cortex-A9作为实时核跑RTOS(FreeRTOS)或者裸机。实时核与FPGA端进行低延时的高速数据交换与实时通讯控制,从而满足低延时的实时任务要求。而跑Linux的 ARM核作为更上层应用,处理更复杂的业务事务。

(4) 外部可扩展LCD显示与触摸屏控制,分辨率支持2048*2048,支持1080P高清视频播放与HDMI视频输出,满足多种屏幕与人机交互的功能需求;

3 AD7606在ZYNQ平台的应用

创龙科技在Zynq-7000、OMAP-L138/C6748/F2837x + Spartan-6等平台均提供了AD7606的开发案例。

创龙科技基于Zynq-7010/7020处理器设计的工业评估板TLZ7x-EasyEVM-S,它由核心板+底板构成。用户使用核心板进行二次开发时,仅需专注上层运用,降低了开发难度和时间成本,可快速进行产品方案评估与技术预研。

图 5 TLZ7x-EasyEVM-S评估板(邮票孔)

图 6 TLZ7x-EasyEVM评估板

本文以Zynq-7000工业评估板TLZ7x-EasyEVM-S为例,讲解ad7606_fft例程。

3.1 功能说明

PL端采集AD7606的8通道AD信号,采样率为200KSPS,并通过DMA IP核将数据缓存到PS端DDR中(每通道各采样4096个点),再通过FFT IP核将数据进行FFT运算,然后将FFT运算结果保存到PS端DDR中,最后通过ILA显示第一个通道的原始波形和FFT运算结果波形。

备注:由于本案例消耗逻辑资源较多,因此本案例不支持xc7z010,仅支持xc7z020。

3.2 案例框图

图 7

点击BLOCK DESIGN开发界面下的"Address Editor"选项,可查看IP核分配的地址,PS端可通过对应地址对IP核进行控制。

图8

3.3 AD7606模块

该模块控制AD7606对8通道AD信号按200K采样率进行采集,并将数据通过AXI4-Stream接口进行发送。

图 9

进入BLOCK DESIGN开发界面,双击模块框图,可查看模块的具体配置信息。采样率为200KSPS,模块工作时钟为50MHz。

图 10

备注:模块、IP核简介可扫描文末二维码下载详细资料。

3.4 案例测试

将TLP2P-PinBoard转接板接到评估板CON8接口,再将AD模块TL7606P与转接板连接。

图 11

进入评估板文件系统,执行如下命令配置PS-PL电平转换寄存器。

Target# devmem 0xf8000900 w 0xf

图 12

使用下载器加载PL端程序以及和PL端程序同目录下的.ltx文件。

图 13

在ila_1的Trigger Setup窗口点击按钮,双击axi_dma_0_m_axis_mm2s_tvalid将其添加为触发信号。

图 14

将Value的值改成R,设置为上升沿触发。

图 15

右击Channel_1_data[15:0],点击“Waveform Style -> Analog”将通道1的原始信号设置为模拟波形。

图 16

右击Channel_1_data[15:0],点击“Radix -> Signed Decimal”设置数据为有符号类型。

图 17

参考上面的步骤,在ila_2将axi_dma_1_m_axis_mm2s_tvalid添加为触发信号,设置为上升沿触发,将FFT IP核输出数据的实部和虚部信号分别设置为模拟波形,并设数据为有符号类型。

图 18

图 19

使用信号发生源向TL7606P模块的8个通道分别输入信号,本案例测试的输入信号是频率为2KHz、峰峰值为3.3Vpp的正弦波。

将案例“sw\linux_system\image\”目录下所有脚本文件拷贝至评估板文件系统。执行如下命令使能axi_dma_0的S2MM通道,将数据采集到PS端DDR中。

Target# ./axi_dma_0_ad7606_to_ddr.sh

执行如下命令使能axi_dma_1的S2MM通道(FFT转换后数据保存到PS端DDR),等待FFT IP核工作。

Target# ./axi_dma_1_fft_to_ddr.sh

执行如下命令使能axi_dma_0的MM2S通道,把原始数据从DDR送到FFT IP核。

Target# ./axi_dma_0_ddr_to_fft.sh

执行如下命令使能axi_dma_1的MM2S通道,把FFT转换后的数据从DDR送到ILA显示。

Target# ./axi_dma_1_ddr_to_ila.sh

图 20

axi_dma_0_ad7606_to_ddr.sh

配置axi_dma_0的S2MM通道,将数据传输到DDR。

图 21

配置好DMA后,配置axi gpio输出1,设置adc_enable为1,使能ADC转换。需确保DMA已配置好,再使能ADC转换并进行数据传输。

图 22

axi_dma_0_ddr_to_fft.sh

配置axi_dma_0的MM2S通道,将DDR中的数据通过AXI4-Stream发送给FFT IP核。

图 23

ila_1原始波形

输入信号是频率为2KHz、峰峰值为3.3Vpp(电压幅值为1.65V)的正弦波。一共4096个采样点,每个采样点4个时钟周期,即4096=16384/4。

图 24

图 25

波峰值为+10729,波谷值为-10794,峰峰值=(10729 + 10794)/(2^16)x10V≈3.2841V,采样范围为±5V。

图 26 波峰值

图 27 波谷值

Ila_2 FFT波形

Channel_1_fft_IM_Dout为虚部,Channel_1_fft_RE_Dout为实部。

图 28

频率计算

FFT变换点数N=4096,AD采样率Fs为200KSPS。某点n所表示的频率Fn=(n-1)*(Fs/N)(n>=1)。当n=1时,Fn为0,由于第一点表示的是直流分量,因此频率为0,幅值也为0,该正弦波无直流分量。

从下图可知,在第164个周期(即第42个采样点)处出现信号,则信号频率Fn=(42-1)*(Fs/N)=41*200KHz/4096=2001.95Hz,与原始信号频率2KHz基本一致。

图 29

幅值(波峰值)计算

某个点的幅值An=(根号(实部^2 + 虚部^2))*压缩倍数/(N/2),则信号幅值An=(根号(4448^2 + 3008^2))x4096/4096x2≈10739.23,信号电压幅值=10739.23/(2^16/2)x5V≈1.64V,与原始信号电压幅值1.65V基本一致。

查看原始数据

每个采样点32bit(包括实部和虚部),每个通道的数据的地址依次递增,从地址0x19000000开始。

Target#devmem 0x19000000 //查看V1通道原始数据

Target#devmem 0x19000004 //查看V2通道原始数据

Target#devmem 0x19000008 //查看V3通道原始数据

Target#devmem 0x1900000c //查看V4通道原始数据

Target#devmem 0x19000010 //查看V5通道原始数据

Target#devmem 0x19000014 //查看V6通道原始数据

Target#devmem 0x19000018 //查看V7通道原始数据

Target#devmem 0x1900001c //查看V8通道原始数据

图 30 查看V1通道原始数据

查看FFT数据

每个采样点32bit(包括实部和虚部),每个通道的数据的地址依次递增,从地址0x19100000开始。

Target#devmem 0x19100000 //查看V1通道FFT数据

Target#devmem 0x19100004 //查看V2通道FFT数据

Target#devmem 0x19100008 //查看V3通道FFT数据

Target#devmem 0x1910000c //查看V4通道FFT数据

Target#devmem 0x19100010 //查看V5通道FFT数据

Target#devmem 0x19100014 //查看V6通道FFT数据

Target#devmem 0x19100018 //查看V7通道FFT数据

Target#devmem 0x1910001c //查看V8通道FFT数据

图 31 查看V1通道FFT数据

如需案例源码或详细案例说明,可在评论区留言,进行分享。

AD7606/AD7616使ZYNQ在能源电力领域如虎添翼,可实现16/32/64通道AD同步采样相关推荐

  1. “十三五”收官,区块链赋能能源电力路在何方?

    建立高度智能化的能源系统,提高能源电力的自主发展能力. 今年是中国"十三五"规划的收官之年,国内生产总值将超过100万亿元,成为全球经济"稳增长"的主力.根据媒 ...

  2. ArduinoMEGA2560驱动AD7606模块 八路同步采样AD (16位并行数据传输)

    1.AD7606模块 淘宝购买的AD7606模块,如下图所示.该模块网上找了很久都没有找到例程.干脆自己写一个. 根据该模块厂家提供的pdf使用说明,可以看到需要将R18电阻拆除,R23焊接1K电阻才 ...

  3. 能源电力行业需要什么样的5G解决方案?

    与第4代移动通信(4G)技术等传统意义上的通信网络有所不同,第5代移动通信(5G)技术,是一个全面深入的融合网络技术,代表着对现有技术的融合以及新技术集成接入后的总称. 5G融合网络通过移动通信技术的 ...

  4. Apache Pulsar 在能源互联网领域的落地实践

    关于 Apache Pulsar Apache Pulsar 是 Apache 软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息.存储.轻量化函数式计算为一体,采用计算与存储分离架构设计,支 ...

  5. 边云协同智能技术在电力领域的应用

    摘要: 随着电力物联网规模的不断扩大和部署在电力系统各环节的设备数量的快速增加,海量边缘设备所产生的数据呈指数级爆炸增长.海量边缘数据的高效.快速和安全处理与分析给传统的云计算智能技术带来极大挑战,而 ...

  6. 下一个王者,必将出现在能源互联网领域

    下一个王者,必将出现在能源互联网领域(转) 1999年,没有太多人懂互联网,没有太多人看好阿里巴巴.同样,在2014年发问:谁会是能源互联网里的阿里巴巴?引来的一定也是不屑和诧异的目光:什么是能源互联 ...

  7. AD7616的国产替代方案—ADCS16162(16位16通道同步采样ADC)

    各位博客们好,我是深圳国芯创展科技的叶剑清,近两年的芯片荒相信大家都仍心有余悸,像ADI.TI等大厂的芯片则更是"一芯难求",导致很多电力方面的客户芯片短缺,严重影响生产方面,今天 ...

  8. 【STM32F407开发板用户手册】第35章 STM32F407的FSMC总线应用之驱动AD7606(8通道同步采样, 16bit, 正负10V)

    最新教程下载:http://www.armbbs.cn/forum.php?mod=viewthread&tid=93255 第35章       STM32F407的FSMC总线应用之驱动A ...

  9. 【STM32F429开发板用户手册】第35章 STM32F429的FMC总线应用之驱动AD7606(8通道同步采样, 16bit, 正负10V)

    最新教程下载:http://www.armbbs.cn/forum.php?mod=viewthread&tid=93255 第35章       STM32F429的FMC总线应用之驱动AD ...

最新文章

  1. 修改mint-ui的主题色
  2. pip freeze requirements.txt 分隔 sudo pip install -r requirements.txt
  3. 20161023 NOIP 模拟赛 T1 解题报告
  4. 重新学.Net[四]——效率和安全
  5. 【Flask】ORM的关联关系
  6. 修复boot分区文件被删除的方法
  7. 真正的程序员,从来不会告诉你这些事!
  8. html5 自制播放器
  9. python 调用另一个py_Python打包:setuptools与setup.py/.cfg入门简介
  10. 巧用XP的Hosts文件 防止误进恶意网站
  11. 续上节,,基于App布局信息操作手机
  12. 1004 成绩排名 (20 分)—PAT (Basic Level) Practice (中文)
  13. Linux设置bypass网卡,Linux pwn入门教程(7)——PIE与bypass思路
  14. GX Works2快捷键
  15. Lockdir 文件夹加密 破解
  16. 大数据管理技术 Hadoop-JavaAPI程序案例1
  17. JS求 一张纸厚度是0.07毫米,假设这张纸可以限次对折,问对折几次可以超过珠峰?8848米
  18. 组件化拆分(三)-Todos案例——单页面-详细代码
  19. Python pandas 筛选 Excel 特定行和列全集
  20. FX3U控制松下服务器位置不准,三菱FX3UPLC如何控制松下伺服_.docx

热门文章

  1. CCD相機專業術語解釋
  2. 4376. 数圈圈(DAY 13)
  3. 《矩阵论》学习笔记(三):第三章 矩阵分析及其应用
  4. 敏捷反思之一--一支敏捷装修队的故事
  5. window 下配置wamp 环境
  6. 编写一个批量添加用户脚本
  7. 21 张速查表,高清图
  8. 在chrome中呈现RTSP
  9. 【玩转STM32】:串口唤醒低功耗的三种方式/低功耗下打印数据
  10. 中山大学等“双一流”官宣:博士生涨薪!大幅提高奖学金助学金标准