0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

英创信息技术ETA104数采模块实现波形信号采集简介

英创信息技术 来源:英创信息技术 作者:英创信息技术 2020-02-07 10:47 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

ETA104模拟数据采集模块(下文简称:ETA104模块)是基于英创公司SBC840工控应用底板、符合DM5028标准应用扩展模块。ETA104模块上的模数转换功能,采用ADS7871模拟信号转换芯片,占用ESMARC工控主板的SPI总线进行通讯,最高可实现48K的数据转换率,最大支持8路14bit模拟信号转换。

ETA104模块的A/D转换芯片的数据转换启动方法有2种,一种方法是使用软件写入指令启动数据转换,第二种方法是使用引脚“ADConvert”启动数据转换:在该引脚上产生一个由低到高的上升沿,便可根据最近一次的A/D输入端口配置,启动一次数据转换,同时引脚“ADBUSY”由低电平变为高电平;当前数据转换完成后,引脚信号“ADBUSY”会产生一个由高到低的下降沿,表示当前数据已经转换好。

根据ETA104模块的这种特点,可以很方便地实现波形数据采样,基本思路如下:1、配置A/D转换芯片,以满足需要采集的模拟信号输入端口与输入方式;2、根据数据采样率需求,配置PWM输出参数,然后启动PWM信号,经由ADConvert信号引脚触发启动A/D数据转换;3、当数据转换完成以后,由ADBUSY信号触发系统IRQ中断;4、系统中断后,启动SPI总线进行当前数据读取。

ADConvert信号通过ETA104的J1.P25脚接入,连接到ESMARC工控主板的PWM1信号端口;ADBUSY信号通过ETA104的J1.30脚输出,连接到ESMARC工控主板的IRQ1信号端口。ETA104数据采样控制信号所占用的相关引脚,如下表所示:

引脚 信号名称 功能 描述
J1.25 GPIO6 PWM1信号输出 用于等时采样时,启动AD转换,该信号连接到ADConvert
J1.30 GPIO24 中断输入IRQ1 数据转换完成,通过ADBUSY信号输出下降沿到IRQ1
J1.38 GPIO28 SPI_MISO 控制ADC器件的SPI总线信号
J1.40 GPIO29 SPI_MOSI
J1.42 GPIO30 SPI_CLK
J1.44 GPIO31 SPI_CSn

模拟信号采样流程参考图如下:

程序流程说明:

1、初始化A/D,主要是配置模拟信号输入方式、模拟信号输入通道、A/D片内增益。

2、要得到高精度的等时采集点的数据,因此使用PWM信号来启动A/D的数据转换,以达到非常高的时间要求精度。

3、系统使用A/D芯片的BUSY信号的下降沿,触发系统中断,通知系统,当前数据已经准备好。

4、以上资源初始化好以后,就可以开始启动A/D转换了。直接启动PWM信号输出即可。

5、等待IRQ中断消息,即表示当前数据转换完成。

6、利SPI总线读取A/D已转换好的数据并存贮。

7、检查要采样的数据个数是否已达到,则关闭PWM输出,停止数据采样。然后关才IRQ、PWM相关设备。

以下是基于ESM9287-WinCE6.0环境的例子程序。由于ESM9287的IRQ响应速度限制,该环境最大数据采样率只能到2Kbps。

// 申请一个数据Buff空间,用于存放采样数据结果

AD_DataBuff = new DWORD[AD_CovCount];

if(AD_DataBuff == NULL)

return ;

// 初始化A/D,配置A/C采样通道与信号输入模式

MyADC_Test.ADS7871_ConfigREG(ADS7818_REG_GainMux,AD_Channel);

// 初始化IRQ,配置中断源IRQ1作为系统触发

hIRQ1 = CreateFile(_T("IRQ1:"),

GENERIC_READ|GENERIC_WRITE,

FILE_SHARE_READ|FILE_SHARE_WRITE,

NULL,

OPEN_EXISTING,

FILE_FLAG_RANDOM_ACCESS,

NULL);

if(hIRQ1==INVALID_HANDLE_VALUE)

{

printf("Open IRQ1 false!\r\n");

return ;

}

// 初始化PWM信号,使用PWM1作为A/D转换启动信号

hPWM = CreateFile( _T("PWM1:"),

GENERIC_READ|GENERIC_WRITE,

FILE_SHARE_READ|FILE_SHARE_WRITE,

NULL,

OPEN_EXISTING,

FILE_FLAG_RANDOM_ACCESS,

NULL);

if(hPWM==INVALID_HANDLE_VALUE)

{

printf("Open PWM false!\r\n");

return ;

}

PwmInfo.dwFreq = AD_CovRate; //设置PWM输出频率为数据采样率,如1000Hz

PwmInfo.dwDuty = 10;

PwmInfo.dwResolution = 1;

dwNumberOfBytesWritten = 0;

bRet = WriteFile(hPWM, &PwmInfo, sizeof(PWM_INFO), &dwNumberOfBytesWritten, NULL);

if(!bRet)

{

printf("WriteFile failed\n");

CloseHandle(hPWM);

}

i1 = 0;

while(1) //数据采样循环控制

{

dwTimeout = 5; //timeout 5ms

if (!DeviceIoControl(hIRQ1, //等待中断触发信号

IOCTL_WAIT_FOR_IRQ,

&dwTimeout,

sizeof(DWORD),

&dwReturn,

sizeof(DWORD),

NULL,

NULL))

{

dwReturn = WAIT_FAILED;

}

if(dwReturn == WAIT_OBJECT_0)

{

i1++;

MyADC_Test.ADS7871_Read( &AD_DataBuff[i1] );//读取AD采样好的数据

if(i1>=AD_CovCount) //判断数据采样个数是否已达到设置值

break;

}

}

PwmInfo.dwFreq = 0;

PwmInfo.dwDuty = 10;

PwmInfo.dwResolution = 1;

dwNumberOfBytesWritten = 0;

bRet = WriteFile(hPWM, &PwmInfo, sizeof(PWM_INFO), &dwNumberOfBytesWritten, NULL); //停止PWM输出

CloseHandle(hPWM);//关闭PWM设备

CloseHandle(hIRQ1); //关闭IRQ设备

//数据复制/转移到用户数据BUFF

//......

delete[] AD_DataBuff;//清理申请的运态数据空单

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6107

    浏览量

    36948
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    NI卡 差分AB正交编码器信号采集

    请教一下各位,如何使用NI采集差分输入AB正交编码器角度信号。 PCIE-6320/6340 usb6210/6421 在不增加差分转单端模块
    发表于 10-20 09:15

    通过IEC104协议实现电子厂能源精细化管理

    系统、推动能源精细化管理及达成节能减排目标的关键手段。针对这一需求,物通博联提出基于其能耗网关的物联网解决方案,旨在依托高效、可靠的数据采集与传输技术,助力电子厂构建全方位的能源管
    的头像 发表于 10-09 15:03 444次阅读
    通过IEC<b class='flag-5'>104</b>协议<b class='flag-5'>数</b><b class='flag-5'>采</b><b class='flag-5'>实现</b>电子厂能源精细化管理

    什么是IEC104网关?有什么功能?

    光伏IEC104网关是专门为光伏电站设计的数据采集、协议转换、数据传输一体化设备,核心作用是将光伏电站里逆变器、汇流箱、气象站等设备的“私有协议”转换成电网调度中心唯一认可的 “I
    的头像 发表于 08-15 15:03 710次阅读
    什么是IEC<b class='flag-5'>104</b><b class='flag-5'>数</b><b class='flag-5'>采</b>网关?有什么功能?

    光伏IEC104网关是什么

    光伏IEC104网关是专门应用于光伏发电系统的数据采集与通信设备,核心作用是实现光伏电站设备数据的标准化
    的头像 发表于 08-12 14:43 680次阅读
    光伏IEC<b class='flag-5'>104</b><b class='flag-5'>数</b><b class='flag-5'>采</b>网关是什么

    光伏物联网平台有哪些功能

    光伏物联网平台通过集成物联网、云计算、大数据等技术实现对光伏电站的全面感知、智能分析与远程管控,其核心功能可归纳为以下六大模块
    的头像 发表于 07-29 18:07 474次阅读

    能源网关哪些好用?有什么推荐

    在能源管理数字化转型浪潮中,能源网关作为连接设备与云端的核心枢纽,其性能直接影响数据采集的实时性、协议兼容性及系统稳定性。本文基于工业场景需求,结合市场口碑与技术实力,综合推荐十大
    的头像 发表于 07-03 17:14 665次阅读
    能源<b class='flag-5'>数</b><b class='flag-5'>采</b>网关哪些好用?有什么推荐

    无线系统-高效 · 稳定 · 智能 · 无忧

    产品概述 无线系统 是一款基于物联网技术的智能化数据采集与传输解决方案,专为工业自动化、环境监测、能源管理、智慧农业等领域设计。系统
    的头像 发表于 07-03 15:01 564次阅读
    无线<b class='flag-5'>数</b>传<b class='flag-5'>数</b><b class='flag-5'>采</b>系统-高效 · 稳定 · 智能 · 无忧

    科普|信是什么?一文读懂“信息技术应用创新”战略

    什么是信?信,即“信息技术应用创新”,是国家推动IT系统自主可控、安全可控的重要战略工程。它不仅是技术层面的创新,更承载着保障国家网络安全、推动产业升级和
    的头像 发表于 06-13 10:06 6290次阅读
    科普|信<b class='flag-5'>创</b>是什么?一文读懂“<b class='flag-5'>信息技术</b>应用创新”战略

    PLC网关和PLC通信模块如何选择

    在工业自动化系统中,PLC网关和PLC通信模块都是实现数据传输的关键组件,但它们的功能定位和适用场景存在显著差异。以下从技术特性、应用场
    的头像 发表于 05-19 15:34 695次阅读
    PLC<b class='flag-5'>数</b><b class='flag-5'>采</b>网关和PLC通信<b class='flag-5'>模块</b>如何选择

    5G工厂标准网关是什么?有什么功能?

    5G工厂标准网关是一种应用于工厂环境,基于5G通信技术,用于实现工业设备数据采集、传输和协议转换等功能的设备。它是连接工厂内各种生产设备
    的头像 发表于 04-14 10:57 692次阅读

    除了数控机床外,CNC网关还能采集哪些设备

    随着工业自动化与智能制造技术的不断进步,数控机床CNC已成为现代制造业不可或缺的核心设备,其数据采集与处理的重要性日益凸显。作为连接数控机床与本地监控系统、云端平台的关键纽带,CNC
    的头像 发表于 04-09 11:14 700次阅读
    除了数控机床外,CNC<b class='flag-5'>数</b><b class='flag-5'>采</b>网关还能<b class='flag-5'>采集</b>哪些设备

    5G智能工厂如何应用标准网关和CNC网关

    生产线、传感器等。标准网关可通过多种通信接口(如RS232、RS485、以太网等)与这些设备连接,采集设备的运行状态、生产数据、故障信息等。例如,
    的头像 发表于 04-02 15:28 744次阅读
    5G智能工厂如何应用标准<b class='flag-5'>数</b><b class='flag-5'>采</b>网关和CNC<b class='flag-5'>数</b><b class='flag-5'>采</b>网关

    CNC网关的应用场景与使用功能

    CNC网关是一种专门用于计算机数控(CNC)设备的数据采集与传输的设备,以下是其主要的应用场景与使用功能: 应用场景 车间生产监控:在机械加工车间中,CNC
    的头像 发表于 04-02 13:45 766次阅读
    CNC<b class='flag-5'>数</b><b class='flag-5'>采</b>网关的应用场景与使用功能

    能源网关实现IEC104协议对接到能源管理平台中

    Client/Server架构实现数据的实时采集、传输与监控。IEC104协议以其高可靠性、实时性和扩展性,在电力自动化系统中扮演着至关重要的角色。 二、能源
    的头像 发表于 03-31 10:54 734次阅读

    网关与采集卡有哪些区别?

    ,通常与计算机配合使用,将模拟或数字信号转换为计算机可识别的数据格式。 一、功能差异 在功能方面,网关和采集卡各有侧重。
    的头像 发表于 12-10 18:17 990次阅读