新聞中心

        EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 如何在Python或MATLAB環(huán)境中使用ACE快速評估數(shù)據(jù)轉(zhuǎn)換器

        如何在Python或MATLAB環(huán)境中使用ACE快速評估數(shù)據(jù)轉(zhuǎn)換器

        作者:ADI產(chǎn)品應(yīng)用工程師Lluis Beltran Gil 時間:2023-02-14 來源:電子產(chǎn)品世界 收藏


        本文引用地址:http://www.104case.com/article/202302/443345.htm

        摘要

        評估板(EVB)及其配套軟件具有即插即用功能,可輕松評估ADI產(chǎn)品的性能。其圖形用戶界面(GUI)提供了直觀的方式,可進(jìn)行手動配置并與該設(shè)備通信。但是,在更復(fù)雜的產(chǎn)品中,如果不能自動處理這些重復(fù)性任務(wù),那么在評估所有可用功能的同時,掃描產(chǎn)品的所有附加功能可能會變得非常耗時。

        文中說明了如何記錄宏,以及如何無需開發(fā)復(fù)雜的軟件控制器代碼,也能在?和?環(huán)境中使用宏來自動處理某些評估任務(wù)。本文以ADI的AD7380和AD7606C-16為例自動處理所有用戶交互,用于掃描不同的配置,發(fā)起轉(zhuǎn)換,然后導(dǎo)出結(jié)果。通過使用這些示例,來自動評估過采樣數(shù)字濾波器帶給模數(shù)轉(zhuǎn)換器(ADC)的性能優(yōu)勢。雖然本文著重介紹AD7380和AD7606C-16,但文中的信息也適用于ADI的其他產(chǎn)品和應(yīng)用。

        簡介

        ADI提供了一些方法來輕松評估每次發(fā)布的新產(chǎn)品及其可實現(xiàn)的性能和特性。首先,我們的評估板由印刷電路板(PCB)(集成主要器件,例如ADC)和所需的配套產(chǎn)品(例如基準(zhǔn)電壓源、驅(qū)動放大器、時鐘源、電源解決方案等)組成。其次,這些板附帶的軟件可以展示解決方案可實現(xiàn)的實際性能。它展示了使用該平臺可以獲得的真實數(shù)據(jù)。在過去幾年中,軟件1平臺一直用于此目的。

        平臺中,每個產(chǎn)品都有一個插件,通過簡潔明了的GUI訪問設(shè)備寄存器映射,從而簡化了設(shè)備配置。

        在ADC示例中,通常以波形或直方圖的形式顯示原始數(shù)據(jù),并通過FFT計算AC性能指標(biāo),例如SNR或THD。本文展示如何無需進(jìn)行軟件開發(fā)自動處理所有這些程序。

        1676345827865171.png

        圖1 評估板的硬件和軟件交互框圖,包括ACE與/的通信

        ACE插件

        圖2顯示AD7380插件芯片視圖,其中包含多個按鈕,以便輕松配置該器件:

        1. REF允許選擇內(nèi)部或外部基準(zhǔn)電壓源

        2. OSC可以啟用過采樣,并設(shè)置過采樣率

        1676346158651031.png

        圖2 AD7380的ACE插件芯片視圖

        圖3顯示AD7606C-16插件芯片視圖,其中多個按鈕用深藍(lán)色突出顯示,可用于:

        1.通過單擊PGA符號選擇每個通道的模擬輸入范圍

        2.選擇內(nèi)部或外部基準(zhǔn)電壓源

        3.選擇過采樣率

        4.配置偏置/增益/相位校準(zhǔn)功能

        5.配置診斷

        1676346182933899.png

        圖3 AD7606C-16的ACE插件芯片視圖

        雖然前面的示例使用ADI AD7380和AD7606C-16,但本文不止介紹這些產(chǎn)品,還包括與ACE配套使用和用于自動處理重復(fù)性任務(wù)的所有其他器件。每個ACE插件都有自己的GUI布局。但是,隨著產(chǎn)品日益變得復(fù)雜,添加的功能越來越多(例如診斷、校準(zhǔn)等),手動測試所有這些功能也會變得更加復(fù)雜和繁瑣。ACE遠(yuǎn)程控制能夠設(shè)置或掃描參數(shù),例如,掃描過采樣率和測量噪聲性能的改善程度。

        設(shè)置ACE遠(yuǎn)程控制

        在開始編寫遠(yuǎn)程控制ACE的代碼之前,需要先按照以下步驟與ACE建立通信:

        1.打開ACE,前往設(shè)置

        2.找到IPC服務(wù)器選項卡,確保已啟動該服務(wù)器

        3.確保已分配了一個端口,最好是2357

        1676346224211450.png

        圖4 與ACE建立通信

        記錄宏,生成腳本

        ACE提供宏工具菜單,通過將配置和設(shè)備交互步驟存入宏文件進(jìn)行記錄。生成宏之后,可以使用該宏來一次性自動重復(fù)所有步驟。以下是生成宏的步驟:

        1. 打開ACE,進(jìn)入工具>>宏工具。

        2. 點擊圖5中藍(lán)色高亮顯示區(qū)域中圖標(biāo)右側(cè)的記錄宏命令按鈕。

        3. 開始執(zhí)行設(shè)備交互,例如更改參數(shù)、向存儲器映射中的寄存器輸入值、捕捉數(shù)據(jù)等。在瀏覽和使用GUI時,命令窗口中會填入信息。

        4. 在記錄要輸入的所有操作/設(shè)置之后,點擊停止記錄宏命令按鈕。按鈕在上述同一位置。將會自動彈出命令窗口。

        例如,在記錄宏時,用戶使用圖2中所示的按鈕配置過采樣率和分辨率模式。命令窗口如圖5所示。

        1676346287692812.png

        圖5 命令窗口和宏工具

        在這個窗口中,可以查看記錄的所有步驟,甚至可以跳過/中斷任何無需自動生成的步驟,然后將整個程序?qū)С龅揭粋€可選擇語言的腳本中,如圖5中紅色高亮部分所示。

        記錄宏文件之后,可以再次保存和播放,以重復(fù)之前執(zhí)行過的步驟。ACE有一個內(nèi)置功能,可以生成腳本,按照所選的受支持的語言執(zhí)行記錄的操作。所以,按照之前的列表,接下來的步驟是:

        1. 點擊圖5中藍(lán)色高亮顯示區(qū)域右側(cè)的生成圖標(biāo),打開腳本生成器窗口。

        2. 從C#、中選擇所需的語言,然后點擊導(dǎo)出

        之后,可以將該代碼導(dǎo)入IDE中執(zhí)行。以這段代碼為基礎(chǔ),添加額外的功能,例如儀器控制,構(gòu)建自動測試臺,以獲取測量結(jié)果。2接下來的章節(jié)中顯示的示例使用Visual Studio Code或MATLAB,這些示例僅使用產(chǎn)品評估板來執(zhí)行噪聲分析,不使用任何額外的設(shè)備。如需查找用于管理、存儲或?qū)κ占降臄?shù)據(jù)進(jìn)行繪制的代碼示例,如接下來的幾個章節(jié)所示,請訪問wiki.analog.com并搜索相關(guān)的評估板。

        1676346328561444.png

        圖6 使用Python語言的ACE代碼生成編輯器

        使用Python自動處理評估任務(wù)

        上一節(jié)中生成的.py文件可用于輕松啟用和重復(fù)之前記錄的一系列操作。此外,通過編輯這些腳本和自動處理某些任務(wù),還能獲得更大的益處。在前面的示例中,在AD7380 ACE插件中設(shè)置了過采樣率和分辨率,對生成的宏進(jìn)行了編輯,以便使用輸入?yún)?shù),如圖7所示。注意,默認(rèn)情況下,這些宏被稱為execute_macro(),但可以將這個名稱更改為更具描述性的名稱。

        1676348563930925.png

        圖7 編輯Python函數(shù),以便使用輸入?yún)?shù)

        這些宏現(xiàn)在可以在內(nèi)部調(diào)用實現(xiàn)循環(huán),掃描過采樣率值,顯示噪聲性能如何隨著過采樣率提高而改善,以及啟用兩個額外的分辨率位帶來的好處。

        1676348603145963.png

        圖8 這些指令用于實現(xiàn)循環(huán),該循環(huán)掃描過采樣率,打開和關(guān)閉兩個額外的分辨率位

        因此,Python示例代碼訪問導(dǎo)出的數(shù)據(jù)文件,讀取ACE插件測量的SNR數(shù)據(jù),并通過串行監(jiān)控器報告數(shù)據(jù)。如表1所示,過采樣可以改善噪聲性能3,但在某些情況下,為了展示AD7380顯示為18位字,而非16位字帶來的真正優(yōu)勢,需要兩個額外的分辨率位。

        表1 AD7380 SNR與過采樣率的關(guān)系

         

        OSR

        動態(tài)范圍
        (正常分辨率)

        動態(tài)范圍
        (提高分辨率,18位)

        1

        90.8 dB

        90.8 dB

        2

        92.6 dB

        93.6 dB

        4

        94.3 dB

        96.5 dB

        8

        95.8 dB

        99.2 dB

        16

        96.3 dB

        100.4 dB

        32

        96.5 dB

        100.5 dB

        使用MATLAB自動處理評估任務(wù)

        與Python示例一樣,自動生成的代碼也可以導(dǎo)出用于MATLAB中,在本例中生成一個.m文件。在本例中,宏被定義為一個函數(shù),但可以對宏進(jìn)行編輯,以便使用輸入?yún)?shù)。以下MATLAB示例使用AD7606C-16板。

        同樣,可以通過自動使用ACE來輕松評估AD7606C-16的過采樣優(yōu)勢。圖9顯示一個MATLAB函數(shù),經(jīng)過編輯后可以使用多種參數(shù),例如吞吐量、樣本數(shù)量、接口類型(串行或并行)、基準(zhǔn)電壓源(內(nèi)部或外部)、過采樣率、數(shù)字走線數(shù)量或模擬輸入范圍。

        1676348627558125.png

        圖9 編輯MATLAB函數(shù),以便使用輸入?yún)?shù)

        這個特定函數(shù)可以在主代碼中使用,以快速啟用不同配置的數(shù)據(jù)采集,輕松執(zhí)行多個AD7606C-16指標(biāo)比較,例如:

        ■   噪聲性能與過采樣率

        ■   性能與吞吐量

        ■   性能與模擬輸入范圍

        ■   內(nèi)部基準(zhǔn)電壓源與外部基準(zhǔn)電壓源

        ■   串行接口與并行接口等等。

        注意,這只是以AD7606C-16為例;根據(jù)所評估的產(chǎn)品不同,可能需要執(zhí)行多種不同的性能評估。

        您可以訪問wiki.analog.com4查看AD7606C-16的使用說明,包括可用的源代碼。其中介紹了如何生成宏代碼,也給出了后期處理數(shù)據(jù)的示例。OversamplingSweep.m示例掃描過采樣率,針對每個值繪制代碼直方圖。如圖10所示,過采樣率越大,代碼直方圖越窄。表2也顯示代碼的峰峰值分布如何隨過采樣降低。

        表2 AD7606C-16的代碼分布與過采樣率的關(guān)系

        OSR

        峰峰值

        (LSB)

        1

        16

        2

        13

        4

        12

        8

        10

        16

        7

        32

        6

        64

        4

        128

        4

        256

        2

        1676348651736140.png

        圖10 代碼直方圖顯示噪聲性能如何隨過采樣率改善。可使用簡單腳本掃描可用的多種過采樣率選項(高達(dá)256個)

        結(jié)論

        新型ACE平臺可作為新評估板的軟件框架,由于能夠記錄宏,對于希望加快ADI產(chǎn)品評估工作速度的硬件設(shè)計人員來說,這是一個有利的工具。這些宏通過行業(yè)通用的編程語言,例如Python或MATLAB助力實現(xiàn)測試自動化。自動處理這些任務(wù)反過來又會加快產(chǎn)品評估和選型,幫助加快上市時間,縮短硬件設(shè)計周期。有關(guān)此主題和其他主題,可訪問EngineerZone?獲取更多支持,也可訪問wiki.analog.com,獲取更多遠(yuǎn)程控制示例。

        參考資料

        1 “分析 | 控制 | 評估(ACE)軟件。”ADI公司

        2  “AD5791 ACE遠(yuǎn)程控制。”ADI公司,2020年2月。

        3 Jonathan Colao。“適用于微型電機驅(qū)動應(yīng)用的快速反應(yīng)、光學(xué)編碼器反饋系統(tǒng)。”模擬對話,第54卷第2期,2020年4月。

        4  “AD7606B/C ACE遠(yuǎn)程控制。”ADI公司,2021年2月。

        關(guān)于作者

        Lluis Beltran Gil畢業(yè)于瓦倫西亞理工大學(xué),于2009年獲電子工程學(xué)士學(xué)位,2012年獲工業(yè)工程學(xué)士學(xué)位。畢業(yè)后,Lluis于2013年加入ADI公司,擔(dān)任利默里克精密轉(zhuǎn)換器部的應(yīng)用工程師。目前,Lluis就職于儀器儀表事業(yè)部SAR ADC應(yīng)用團隊,工作地點在西班牙瓦倫西亞。他擁有瓦倫西亞大學(xué)電氣工程碩士學(xué)位。



        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 襄垣县| 湘潭县| 黔江区| 周至县| 凌海市| 会东县| 霍邱县| 通道| 福州市| 白河县| 延吉市| 镇坪县| 乐平市| 德庆县| 雷州市| 金川县| 云龙县| 彰化市| 酒泉市| 岐山县| 泸西县| 德昌县| 仙桃市| 河南省| 闵行区| 准格尔旗| 藁城市| 屯门区| 黄陵县| 郎溪县| 哈巴河县| 新丰县| 海林市| 四会市| 库伦旗| 古蔺县| 库车县| 长岛县| 墨玉县| 古交市| 莆田市|