久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
    分享

    ADALM2000實現(xiàn)雙電壓追蹤+頻譜分析儀

     云深無際 2025-08-30 發(fā)布于內(nèi)蒙古

    ADALM1000還是太老了,而且設(shè)計的很怪,我研究了很久才搞明白,它的通道是可以在輸出電壓的時候監(jiān)測電流,也可以反過來。。。

    首先就是核心能力大增強(qiáng)
    首先就是核心能力大增強(qiáng)

    示波器到了100M,奈奎斯特50M,按照5倍采樣來看,20M做大部分的實驗是夠的,還有配套的雙電源!!!

    參數(shù)還挺好
    參數(shù)還挺好
    這樣的
    這樣的

    跟蹤模式 (Tracking Mode) 是 Scopy 電源供應(yīng)控制中的一種功能,允許 V-(負(fù)輸出) 的電壓與 V+(正輸出) 的電壓成比例變化,確保兩者之間的電壓關(guān)系始終保持一致。具體來說,負(fù)輸出電壓(V-)是正輸出電壓(V+)的一個 比例值

    在 跟蹤模式 下,負(fù)輸出電壓(**V-)的值是根據(jù)正輸出電壓(V+**)自動調(diào)整的。公式如下:

    其中,ratio 是用戶設(shè)置的比例因子,通常以百分比表示。

    例如,假設(shè)正輸出設(shè)置為 1.0 V,如果比例因子設(shè)置為 **70%**,那么負(fù)輸出將會自動設(shè)為 -0.7 V

    動態(tài)同步:當(dāng)正輸出電壓變化時,負(fù)輸出會自動根據(jù)設(shè)置的比例因子進(jìn)行相應(yīng)調(diào)整。因此,負(fù)輸出電壓與正輸出電壓保持同步,且兩者之間的電壓差始終保持一致。

    用戶只需要調(diào)整正輸出電壓,而負(fù)輸出電壓會自動按照比例變化,簡化了操作;在一些需要正負(fù)電壓對稱的應(yīng)用中,跟蹤模式能確保負(fù)輸出電壓和正輸出電壓之間的比例關(guān)系準(zhǔn)確無誤,避免了人為干預(yù)。

    應(yīng)用場景:

    對稱電源供電:例如,在一些實驗或原型設(shè)計中,需要同時使用正負(fù)電壓供電,而兩者之間需要保持一定的比例關(guān)系,跟蹤模式非常適合這種情況。

    測試環(huán)境:對于一些需要精確負(fù)輸出電壓設(shè)置的測試,跟蹤模式可以確保兩者電壓同步變化,避免誤差。

    總結(jié)來說,跟蹤模式 主要用于在用戶調(diào)整正電壓時,自動同步調(diào)整負(fù)電壓,從而確保兩者之間的電壓關(guān)系準(zhǔn)確無誤,適用于需要正負(fù)對稱電壓的測試場景。但是我研究這個API,其實是沒有硬件級別的支持的,換句話來說就是要軟件實現(xiàn);文末寫了實現(xiàn)

    讓我眼饞的是!!!FFT再也不需要仿真了:

    是有一個50M的頻譜分析儀器的
    是有一個50M的頻譜分析儀器的

    頻譜分析儀 的工作原理是將信號從 時域 轉(zhuǎn)換到 頻域,通過顯示信號的頻率成分幫助我們分析信號的特性。簡單來說,它可以顯示信號在不同頻率下的 幅度,通常以 dBFS 為單位表示。

    時域與頻域轉(zhuǎn)換

    頻譜分析儀的核心原理是通過 傅里葉變換(Fourier Transform)將信號從 時域 轉(zhuǎn)換到 頻域。時域信號描述的是信號隨時間變化的情況,而頻域信號則表示信號在不同頻率下的能量分布。頻譜分析儀通過對信號進(jìn)行傅里葉變換,分解出信號中的 頻率成分 和 幅度,并將其顯示在 頻譜圖 中。

    輸入信號的捕獲

    這里
    這里

    頻譜分析儀通過 探頭 或 輸入端口 捕獲信號,該信號可以來自各種來源,如無線通信設(shè)備、傳感器、信號發(fā)生器等。在 M2K 設(shè)備中,使用 探頭 1 和 2 來測量信號,能夠承受 ±25V 的輸入電壓。

    信號處理:FFT

    信號被捕獲后,頻譜分析儀使用 快速傅里葉變換(FFT) 算法來計算信號的 頻譜。FFT 是一種高效的算法,能夠快速地將時域信號轉(zhuǎn)換為頻域信號。

    FFT 計算:信號在采樣過程中被分成多個 頻率分量。每個分量代表一個特定的頻率范圍。FFT 會計算信號在這些頻率上的 幅度 和 相位

    窗口函數(shù):頻譜分析儀還會使用 窗口函數(shù) 來優(yōu)化 FFT 的性能。常見的窗口函數(shù)有 HanningFlattopBlackman-Harris 和 Kaiser 等,這些函數(shù)有助于減少頻譜泄漏,提高信號的分辨率和幅度準(zhǔn)確性。

    顯示頻譜圖

    經(jīng)過 FFT 計算后,頻譜分析儀將結(jié)果顯示為 頻譜圖。在頻譜圖上:

    X 軸:表示信號的 頻率,通常以 Hz 為單位。

    Y 軸:表示信號在該頻率處的 幅度,通常以 dBFS(Full Scale) 為單位,表示信號強(qiáng)度。

    掃頻設(shè)置(Sweep)

    頻譜分析儀通常可以進(jìn)行 掃頻(Sweep),即對一個指定的頻率范圍內(nèi)的信號進(jìn)行分析。在掃頻模式下,頻譜分析儀會逐步掃描各個頻率區(qū)間并顯示對應(yīng)的信號強(qiáng)度。

    可以設(shè)置:

    起始頻率停止頻率,確定分析的頻率范圍。

    中心頻率頻寬跨度,決定要分析的信號帶寬。

    標(biāo)記與測量

    頻譜分析儀還可以使用 標(biāo)記功能(Marker)來標(biāo)定和測量特定頻率點的信號幅度。可以將標(biāo)記置于:

    峰值(Peak):放置標(biāo)記在信號的最大峰值處。

    其他指定頻率:自動或手動將標(biāo)記移至指定頻率位置,實時查看該頻率處的信號幅度。

    但是這些功能其實是完全軟件做的。

    平均與濾波

    為了提高測量的準(zhǔn)確性和穩(wěn)定性,頻譜分析儀提供了不同的 平均方式,例如:

    RMS Averaging:通過對多次采樣結(jié)果取均值來減少波動,但不減少噪聲底。

    Peak Hold:記錄并保持信號的峰值,直到新的峰值出現(xiàn)。

    Exponential Averaging:對每個新值進(jìn)行加權(quán)平均,較大的權(quán)重給予最新數(shù)據(jù)。

    顯示方式

    頻譜分析儀可以選擇不同的 顯示方式,例如:

    線性頻率模式:顯示頻率軸按等間距排列,適合分析寬頻帶信號。

    對數(shù)頻率模式:頻率軸以對數(shù)間隔排列,適合觀察頻譜中的細(xì)節(jié),特別是低頻部分。

    高度動態(tài)范圍

    頻譜分析儀能夠提供 寬動態(tài)范圍,特別是在 Kaiser 窗口等窗口函數(shù)的幫助下,可以識別出即使幅度差異很大的信號。通過高精度的頻率分辨率和動態(tài)范圍,頻譜分析儀能夠有效區(qū)分接近的頻率信號。

    頻譜分析儀通過捕獲信號并應(yīng)用 FFT 算法將其轉(zhuǎn)換為頻域數(shù)據(jù),提供關(guān)于信號頻率成分的詳細(xì)視圖。它通過調(diào)節(jié) 頻率范圍掃頻設(shè)置 和 窗口函數(shù) 來優(yōu)化信號的分析,結(jié)合標(biāo)記、平均、和濾波等功能,幫助用戶準(zhǔn)確分析和測量信號的頻譜特性。

    那我肯定是不樂意這個GUI的,因為我買ADALM2000不就是為了編程?

    直接供電
    直接供電

    官方的庫是libm2k,libm2k 沒有內(nèi)置的頻譜分析儀 API ,但提供了實現(xiàn)頻譜分析所需的所有基礎(chǔ)功能:

    高速數(shù)據(jù)采集 :最高 100 MSPS 采樣率;

    多通道支持 :雙通道同步采集; 靈活的采樣率控制 :支持多種采樣率設(shè)置; 觸發(fā)功能 :支持復(fù)雜的觸發(fā)條件。

    import matplotlib
    plt.rcParams['font.family'] = 'SimHei'  # 替換為你選擇的字體
    matplotlib.rcParams['axes.unicode_minus']=False

    這里是顯示中文和負(fù)號。

    時域信號可視化
    時域信號可視化
    信號統(tǒng)計信息:
    通道 0:
      平均值: -0.0616 V
      標(biāo)準(zhǔn)差: 0.0099 V
      最小值: -0.0915 V
      最大值: -0.0305 V
      峰峰值: 0.0610 V

    通道 1:
      平均值: -0.0991 V
      標(biāo)準(zhǔn)差: 0.0264 V
      最小值: -0.1525 V
      最大值: 0.0000 V
      峰峰值: 0.1525 V
    頻譜分析
    頻譜分析

    還有電壓追蹤功能:

    電壓跟蹤可視化
    開始電壓跟蹤,持續(xù) 10 秒...
    時間 0.0s: 設(shè)置電源 +1.0V / -1.0V
    時間 2.0s: 設(shè)置電源 +2.5V / -2.5V
    時間 4.1s: 設(shè)置電源 +4.0V / -4.0V
    時間 6.0s: 設(shè)置電源 +3.0V / -3.0V
    時間 8.1s: 設(shè)置電源 +1.5V / -1.5V
    真好
    真好
    再來一個實時的儀表盤
    再來一個實時的儀表盤
    import libm2k
    import time

    class SymmetricVoltageController:
        """正負(fù)對稱電壓控制器 - 實現(xiàn)正負(fù)電壓自動同步跟蹤"""
        
        def __init__(self, power_supply):
            self.ps = power_supply
            self.tracking_enabled = False
            self.voltage_ratio = -1.0
            self.tolerance = 0.05  # 電壓容差
            
        def enable_symmetric_tracking(self, ratio=-1.0, tolerance=0.05):
            """啟用對稱電壓跟蹤模式"""
            self.tracking_enabled = True
            self.voltage_ratio = ratio
            self.tolerance = tolerance
            
            # 啟用雙通道
            self.ps.enableChannel(0, True)
            self.ps.enableChannel(1, True)
            print(f"對稱電壓跟蹤已啟用,比例: {ratio}")
            
        def set_symmetric_voltage(self, positive_voltage):
            """設(shè)置對稱電壓 - 核心功能"""
            if not self.tracking_enabled:
                raise Exception("請先啟用對稱電壓跟蹤模式")
                
            # 計算負(fù)電壓
            negative_voltage = positive_voltage * self.voltage_ratio
            
            # 同時設(shè)置正負(fù)電壓
            self.ps.pushChannel(0, positive_voltage)
            self.ps.pushChannel(1, negative_voltage)
            
            # 等待電壓穩(wěn)定
            time.sleep(0.01)
            
            # 驗證設(shè)置結(jié)果
            actual_pos = self.ps.readChannel(0)
            actual_neg = self.ps.readChannel(1)
            
            # 檢查對稱性
            symmetry_error = abs(actual_pos + actual_neg)
            is_symmetric = symmetry_error < self.tolerance
            
            result = {
                'target_positive': positive_voltage,
                'target_negative': negative_voltage,
                'actual_positive': actual_pos,
                'actual_negative': actual_neg,
                'symmetry_error': symmetry_error,
                'is_symmetric': is_symmetric
            }
            
            print(f"正電壓: {actual_pos:.3f}V, 負(fù)電壓: {actual_neg:.3f}V, "
                  f"對稱誤差: {symmetry_error:.3f}V")
                  
            return result
            
        def voltage_sweep_symmetric(self, voltage_list):
            """對稱電壓掃描"""
            results = []
            
            for voltage in voltage_list:
                print(f"\n設(shè)置對稱電壓: ±{voltage}V")
                result = self.set_symmetric_voltage(voltage)
                results.append(result)
                time.sleep(0.1)
                
            return results

    # 使用示例
    def symmetric_voltage_demo():
        ctx = libm2k.m2kOpen()
        if ctx is None:
            print("設(shè)備連接失敗")
            return
            
        try:
            ps = ctx.getPowerSupply()
            ps.reset()
            ctx.calibrateADC()
            ctx.calibrateDAC()
            
            # 創(chuàng)建對稱電壓控制器
            controller = SymmetricVoltageController(ps)
            
            # 啟用對稱跟蹤
            controller.enable_symmetric_tracking(ratio=-1.0, tolerance=0.05)
            
            # 測試對稱電壓設(shè)置
            print("=== 對稱電壓跟蹤測試 ===")
            test_voltages = [1.0, 2.5, 3.3, 4.0, 5.0]
            
            for voltage in test_voltages:
                result = controller.set_symmetric_voltage(voltage)
                if result['is_symmetric']:
                    print(f"? ±{voltage}V 對稱設(shè)置成功")
                else:
                    print(f"? ±{voltage}V 對稱設(shè)置失敗,誤差: {result['symmetry_error']:.3f}V")
                time.sleep(0.5)
                
            # 關(guān)閉電源
            ps.enableAll(False)
            
        finally:
            libm2k.contextClose(ctx)

      轉(zhuǎn)藏 分享 獻(xiàn)花(0

      0條評論

      發(fā)表

      請遵守用戶 評論公約

      類似文章 更多

      主站蜘蛛池模板: 亚洲精品无码成人A片九色播放| 色偷偷AV男人的天堂京东热| 欧美黑人又粗又大高潮喷水| 最新中文字幕国产精品| 亚洲欧美日韩综合在线丁香| 亚洲AV无码一区二区乱子伦| 国内少妇偷人精品免费| 把女人弄爽大黄A大片片| 亚洲精品免费一二三区| 果冻传媒MV国产推荐视频| 亚洲av永久无码精品漫画| 狠狠婷婷色五月中文字幕| 中文字幕乱码一区二区免费| 亚洲AV熟妇在线观看| 熟妇人妻无码中文字幕老熟妇| 国产日产欧产精品精品| 亚洲成色精品一二三区| 夜色爽爽影院18禁妓女影院| 丁香五月婷激情综合第九色 | 色AV专区无码影音先锋| 国产综合色在线精品| 强开少妇嫩苞又嫩又紧九色| 亚洲色成人一区二区三区人人澡人人妻人人爽人人蜜桃麻豆 | 少妇富婆高级按摩出水高潮| 国产精品毛片在线完整版SAB| 国产午夜福利小视频合集| 日韩免费无砖专区2020狼| 成人特黄A级毛片免费视频| 国产精品视频午夜福利| 精品久久久久久无码国产 | 肉感饱满中年熟妇日本| 国产一区二区高清不卡| 51国偷自产一区二区三区 | 嫩草成人AV影院在线观看| 人人妻人人狠人人爽天天综合网| 狠狠噜天天噜日日噜视频麻豆| 欧美老少配性行为| 亚洲精品一区二区制服| 国产精品白丝喷水在线观看| 欧洲卡一卡二卡三爱区| 人妻少妇456在线视频|