那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

英創ETA108波形數據采集模塊性能及使用

英創信息技術 ? 作者:英創信息技術 ? 2019-10-09 15:05 ? 次閱讀

1、綜述

ETA108是英創公司推出的一款低成本高性能的AD采集模塊,相比英創公司的其他數據采集擴展模塊,ETA108的一個主要特點是支持硬件周期脈沖觸發AD采集,因此ETA108非常適合應用于要求高精度采樣間隔的波形數據采集。ETA108波形數據采集模塊可廣泛應用于多通道波形記錄儀、電力諧波分析、故障錄波、振動信號分析、瞬態信號采集、通用數據采集等多種應用領域?,FESM335x Linux已支持ETA108數據采集模塊。

英創ETA108波形數據采集模塊性能及使用

ETA108性能:

? 8通道單端輸入或4通道差分輸入

? 輸入量程0~4.096V

? 每通道具有獨立的高阻抗增益放大器(PGA),可實現各種傳感器之間的直接接口連接,并支持用戶配置通道增益Gain=1/2/4/8)

? AD轉換精度12bit

? AD最高采樣速度100ksps

? 可選擇多種平均操作模式,使輸出AD精度達到14bit。其中有快速平均和精確平均兩種模式可以選擇??焖倨骄J剑簩?,8或16次采樣結果做平均,可增加AD分辨率到14bit,快速平均模式適用于輸入到PGA的信號比較穩定的情況。精確平均模式:對4,8或16次采樣結果做平均,可得到比快速平均模式更精確的采樣結果。此模式在輸入信號不太穩定的情況下適用。

使用4次平均模式總采樣速率不得高于20ksps,使用8次平均模式總采樣速率不得高于10ksps,使用16次平均模式采樣速率不得高于5ksps。當用戶采用默認設置進行采樣時,我們的驅動會根據用戶設置的采樣速度進行設置,使用能夠達到的最高平均模式以提高采樣精度。用戶也可自行設置。

關于ETA108更詳細的參數以及設置方法請參考《ETA108數據采集模塊應用手冊》(Linux)。

2、應用程序接口

1、驅動程序

在使用ETA108之前,需要在系統中先加載ETA108的驅動程序。我們提供eta108.ko驅動模塊,用戶使用insmod /(目錄)/eta108.ko 命令就可以加載驅動。

為了實現ETA108的高速數據采集,在其驅動程序中,充分利用了ESM335x的高性能DMA技術,從而保證了ETA108與ESM335x主板之間僅靠簡單的4線制SPI接口就實現了硬件連接,同時,DMA技術的引入,也將數據采集對系統性能的影響降到最低??紤]到實際應用,ESM335x ETA108驅動程序支持單次采樣模式和連續采樣模式,兩種模式下驅動每采集到512個點的數據(1kB數據大小)或者采樣結束就會通知用戶程序,建議應用程序中select函數和read函數一起使用盡快讀出數據,以避免驅動維護大量的數據緩存。

連續采樣處理流程

驅動程序中進行設置的eta108_config結構體。

eta108_config結構體是ETA108的配置數據結構體,包含了采樣率,采樣長度,采樣通道設置,通道寄存器配置等參數。其定義如下:

struct eta108_config

{

unsigned int rate;

unsigned int count;

unsigned int channel;

void *config;

unsigned int config_len;

};

在我們提供的驅動程序中,eta108_config結構體即可用為函數的輸入參考,其結構體成員含義說明如下:

ADS_CONFIG結構體定義

成員 定義 / 輸入參數
rate 設置總的采樣率,每通道采樣率= rate/通道數
count 設置每個AD通道的采樣次數>0:單次采樣=0:連續采樣
channel 設置需要采樣的通道,對應位置1
config 指向AD通道配置的buffer,此參數用于設置ETA108的寄存器,config =NULL時,系統將使用默認配置
config_len config指向buffer的長度

ETA108單通道采樣時采樣速度可以達到100ksps,如果多通道采樣,由于內部通道轉換需要時間,最高只能達到50ksps,rate設置需要滿足此限制。channel的低8bit(bit0~bit7)依次對應AD通道0~通道7,如果要采集某個通道的數據,需要將其對應的位置為1。比如要采集通道0、通道1和通道7的數據,則應設置channel=0x83;差分模式下只需設置差分通道中的一個通道的對應位為1,比如通道0、通道1在差分模式下工作,只需將0通道位置1,設置channel=0x1。

2、ETA108驅動輸入輸出數據格式:

用戶可以對ETA108的進行設置以改變ETA108工作模式,eta108_config中config指向的buffer格式為:

bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
data 1 0 A3 A2 A1 A0 0 0 D7 D6 D5 D4 D3 D2 D1 D0

寄存器寫

允許的設置及其意義詳見《ETA108數據采集模塊應用手冊》(Linux)。

讀取采樣數據的格式如下(unsigned short):

bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
data D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0 0 0

ETA108轉換結果

其中第0、1位總是0,第2、3位為平均模式下增加的2位分辨率,如沒有采用平均模式則此兩位為0,第3-15位為12bit的AD數據。多通道采樣模式下,應用程序從驅動中讀得的AD數據是按通道依次存放的,低通道在前,比如應用程序同時連續采集CH1,CH2,CH5三個通道,read()函數讀得的AD數據存放為CH1、CH2、CH5、CH1、CH2、CH5、CH1………,每個通道16bit。

ETA108的量程為0~4.096V,則可得D13~D2這12bit的數據對應的轉換關系如下表,用戶可據此換算數值:

理想情況下的AD轉換結果

描述 模擬量輸入 數字量輸出
滿量程范圍 4.096V-REF 二進制 十六進制
最小分辨率(LSB) V-REF/4096
滿量程 V-REF-1LSB 1111 1111 1111 FFFF
1/2量程 V-REF/2 1000 0000 0000 8000
1/2量程 - 1 LSB V-REF/2-1LSB 0111 1111 1111 7FFF
0V 0000 0000 0000 0000

3、接口函數

1)加載設備驅動:

#:insmod /(目錄)/eta108.ko

會自動創建設備文件 /dev/eta108

2)打開設備文件-open:

int fd = open ( "/dev/eta108", O_RDWR, S_IRUSR | S_IWUSR );

3)設置采樣參數-write:

struct eta108_config transfer;

memset ( &transfer, 0, sizeof(transfer) );

transfer.rate = 100000; //采樣速率

transfer.channel = 0x1; //采樣通道

transfer.count = 10000; //每通道采樣次數

//自定義設置,此處為0通道設置GPA放大2倍,設置為NULL時采用默認設置

unsigned short cmd[1] = {0x8004};

transfer.config_len = 2; //2字節

transfer.config = cmd;

if(write ( fd, &transfer, sizeof(transfer) )<0)

{

printf ( "WRONG!!!!!!!!!!!!!!!!\n" );

exit ( 1 );

}

4)啟動采樣:

if(ioctl ( fd, ETA108_START, &transfer )<0)

{

printf ( "START WRONG!!!!!!!!!!!!!!!!\n" );

exit ( 1 );

}

5)停止采樣:

if(ioctl ( fd, ETA108_STOP, &transfer )<0)

{

printf ( "STOP WRONG!!!!!!!!!!!!!!!!\n" );

exit ( 1 );

}

6)讀取采樣數據-read:

驅動內部每采集512個點(1kB)的數據或者采樣結束就會通過select函數通知應用程序,建議應用程序中盡快讀出數據,進行存儲或者計算,read函數返回實際讀取的字節數。

int count_in_byte = 0;

int read_count=0;

char read_buf[transfer.count*2*1]; // 1個通道,每個數據2個字節

char *real_read = read_buf;

for ( i=0; count_in_byte

{

FD_ZERO(&fdRead);

FD_SET(fd,&fdRead);

aTime.tv_sec = 2;

aTime.tv_usec = 0;

ret = select ( fd+1, &fdRead, NULL, NULL, &aTime );

if ( ret<0 )

printf( "select, something wrong!\n " );

if ( ret>0 )

{

if ( FD_ISSET(fd, &fdRead) )

{

read_count = read(fd, real_read, 1024);

if ( read_count<0 )

{

printf ( "READ WRONG!!!!!!!!!!!!!!!!\n" );

exit ( 1 );

}

real_read += read_count;

count_in_byte += read_count;

}

}

}

7)關閉設備文件:

close ( fd );

用戶如需使用ETA108數據采集模塊,請和我們聯系。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11345

    瀏覽量

    210417
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6086

    瀏覽量

    35622
收藏 人收藏

    評論

    相關推薦

    如何動態獲取波形數據中最新一段時間內的波形數據?

    利用labview生成一個正弦+噪聲信號(只要程序運行,信號是一直更新的,不是固定采集點的一段信號),將信號利用“寫入測量文件”vi模塊進行保存,利用"讀測量文件"vi讀取的波形數據
    發表于 12-01 20:34

    ESM335x系列工控主板多通道數據采集方案

    1、綜述  ETA108公司推出的一款低成本高性能的AD采集模塊,相比
    發表于 07-20 14:33

    ESM335x支持ETA108數據采集

      ETA108是一款支持硬件周期脈沖觸發的AD采集模塊,非常適合應用于要求高精度采樣間隔的波形數據采集,可廣泛應用于多通道波形記錄儀、電力
    發表于 07-21 14:46

    嵌入式主板的無線通訊解決方案

    的2G(GPRS)模塊;聯通、電信的3G模塊;以及移動、聯通、電信的4G模塊。在WiFi方面,除了支持多種第三方模塊外,
    發表于 03-24 14:00

    串口WiFi方案使用說明

    程序代碼進行調用管理,尤其是對附近AP點的選擇和連接  2、產品后續維護上不便,不好保證第三方模塊的穩定性  3、模塊不便于集成  因此推出ET
    發表于 04-05 15:52

    ETA104模擬數據采集模塊的特點

    ETA104 數據采集模塊使用手冊
    發表于 03-02 10:51

    整合串口通訊功能的ETA105數據采集模塊

    ETA105 數據采集模塊使用手冊
    發表于 03-02 07:19

    WIFI模塊ETA6103和ETA303系列使用說明

    ETA6103是由串口WiFi模塊E103(esp8266ex芯片)+ USB轉串口芯片CH340T構成的低成本無線模塊,其對外接口是miniPCIe接口,可以通過ETA303
    發表于 08-31 17:29 ?1538次閱讀

    信息技術主板EM9160實現波形數據采集

    工控主板EM9160的精簡ISA總線的主要擴展應用之一,就是擴展針對應用的各種數據采集單元,即通常所說的AD單元。對低速采樣、且不要求樣點間有嚴格時間間隔的應用,公司已推出了已ETA
    的頭像 發表于 01-14 11:32 ?1129次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創</b>信息技術主板EM9160實現<b class='flag-5'>波形數據采集</b>

    信息技術低成本多通道波形采集顯示方案的軟件實現方法

    ARM9系列嵌入式主板EM9170加上新近推出的數據采集擴展模塊ETA108,可實現低成本的多通道
    的頭像 發表于 01-15 14:21 ?1861次閱讀

    信息技術Windows下STM32單片機eclipse編譯環境搭建簡介

    工控主板應用程序發出來的指令,執行相應的實時任務處理,如實現:電機控制、數據采集、高速D/A輸出、狀態采集保護等。另外,用戶可以基于公司構建好的USB通訊結構,利用KEIL、IAR
    的頭像 發表于 02-06 11:08 ?1574次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創</b>信息技術Windows下STM32單片機eclipse編譯環境搭建簡介

    信息技術ETA104數采模塊支持多種模擬信號輸入方式簡介

    ETA104模擬數據采集模塊(下文簡稱:ETA104模塊)是基于
    的頭像 發表于 02-07 10:45 ?1804次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創</b>信息技術<b class='flag-5'>ETA</b>104數采<b class='flag-5'>模塊</b>支持多種模擬信號輸入方式簡介

    信息技術ETA104數采模塊實現波形信號采集簡介

    ETA104模擬數據采集模塊(下文簡稱:ETA104模塊)是基于
    的頭像 發表于 02-07 10:47 ?1763次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創</b>信息技術<b class='flag-5'>ETA</b>104數采<b class='flag-5'>模塊</b>實現<b class='flag-5'>波形</b>信號<b class='flag-5'>采集</b>簡介

    信息技術Linux主板多通道視頻采集方案簡介

    工業應用。進一步,ESM7100的還配置高速PCIe接口,使其可滿足工業視頻監控對高速數據采集的需求。本文主要介紹基于公司ESM7100的多通道視頻采集應用方案。
    的頭像 發表于 02-12 11:00 ?1603次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創</b>信息技術Linux主板多通道視頻<b class='flag-5'>采集</b>方案簡介

    信息技術數據采集及開關量I/O簡介

    ETA108 數據采集模塊 ETA197 數據采集模塊 ET
    的頭像 發表于 02-14 09:53 ?1505次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創</b>信息技術<b class='flag-5'>數據采集</b>及開關量I/O簡介
    注册百家乐送彩金 | 番禺百家乐电器店| 百家乐官网电子路单谁| 明珠娱乐| 圣淘沙百家乐的玩法技巧和规则 | A8百家乐娱乐| 红宝石百家乐官网的玩法技巧和规则| game88city| 线上百家乐的玩法技巧和规则| 百家乐官网有公式| 兴化市| 大发888大发888娱乐城| 哪里有百家乐赌博网站| 澳门百家乐官网介绍| 一起pk棋牌游戏大厅| 百家乐有诈吗| 高级百家乐官网桌布| 百家乐官网黑牌靴| 百家娱乐| 全讯网高手世家| 百家乐园zyylc| 百家乐官网笑话| 万博88真人娱乐城| 大发888组件下载| 破解百家乐游戏机| Bet百家乐官网娱乐城| 百家乐官网波音平台有假吗| 爱赢娱乐城| 百家乐出千桌| 百家乐玩法教学视频| 百家乐官网娱乐平台网77scs| 百家乐官网是不是有假| 新葡京娱乐城官方网址| 威尼斯人娱乐场 澳门| 现金百家乐赢钱| 风水24山走水| 尊龙百家乐官网娱乐平台| 皇冠百家乐官网代理网| 188比分直播网| 博九百家乐游戏| 大玩家百家乐官网的玩法技巧和规则 |