秦紅波 趙偉 劉巖 顧航



摘要:基于LabVIEW、Multisim和Python聯合仿真平臺實現了電調電路的幅頻特性仿真與優化,Multisim主要實現電調電路的時域響應仿真,Python主要完成幅頻特性計算、電路性能分析和參數優化等數據處理,LabVIEW作為聯合仿真平臺用于連接Multisim和Python兩個模塊,實現數據傳輸、圖形顯示,以及電路參數的更迭控制。設計的聯合仿真實驗實現了相關理論知識的串聯和仿真工具的交互,旨在培養學生對于理論知識和仿真工具的實際應用能力。
關鍵詞:電調電路;參數優化;聯合仿真
一、引言
LabVIEW和Multisim是美國國家儀器公司(NI)開發的兩款軟件,其中LabVIEW是一種圖形化編程語言的開發環境,而Multisim是一種功能強大的模擬/數字電路仿真軟件,二者結合可以為電路虛擬仿真提供更加豐富的功能[1-3]。另一方面,隨著近年來人工智能技術的興起,高級編程語言Python在大數據、圖像識別、科學計算等領域得到了廣泛應用,其與LabVIEW相結合可用于測試測量任務,將成為當前發展的方向之一[2-3]。盡管LabVIEW分別與Multisim和Python進行聯合仿真已有公開文獻可查,但三者之間協同工作卻鮮有報道,考慮到這三款軟件在各自領域具有的獨特優勢,相互結合并協同仿真將值得人們的期待。
利用LabVIEW中Control Design&Simulation模塊和Connectivity模塊,分別對Multisim和Python進行調用,實現三者之間的協同仿真,由此搭建的聯合仿真平臺可用于電調電路的時域仿真、響應分析和參數優化,有助于學生掌握電路時域仿真的基本原理,理解數據的采集、測試與分析,與智能算法相結合,啟發學生將人工智能技術應用于電子電路的仿真和優化當中,激發學習興趣,提高自主創新能力。
二、聯合仿真原理
圖1所示,聯合仿真基于LabVIEW仿真平臺,通過調用Multisim的電路仿真模塊和Python的算法模塊,來完成整個虛擬仿真實驗,軟件版本分別為LabVIEW 2018,Multisim 14.2和Python 3.6。首先,對所涉及的主要部分進行簡要介紹:
(一)電調電路
選擇RLC模擬電路作為研究對象,以壓控器件的電壓偏置作為電調參數,利用Multisim軟件對不同電調參數下的電路響應進行仿真,進而對其幅頻特性進行計算,之后通過智能算法得到電調電路中最優參數。
(二)智能算法
將電調電路仿真結果與目標響應之間的誤差構造成待優化的目標函數,電調電路中壓控器件的偏置電壓作為優化參數,再利用Python語言實現的模擬退火算法對該目標函數進行優化,進而預測出更加合理的優化參數。
(三)協同控制
電調電路作為研究對象,智能算法作為優化工具,二者協同配合離不開LabVIEW軟件平臺,部分數據的處理、參數更新迭代和循環控制等由LabVIEW完成。
為了更清楚的說明聯合仿真的過程,對以上三個部分進行詳細說明。
三、Multisim的電路仿真模塊
圖2是Multisim軟件仿真的電調電路,其中Input和Output分別是電路的源端和負載端,Bias1,Bias2和Bias3分別是壓控電容的偏置電壓,本文通過改變偏置電壓來調整電路響應,優化目標是1MHz以下的低通濾波器,截止頻率在500kHz附近。圖3所示,利用LabVIEW中Control Design&Simulation模塊對Multisim仿真電路進行調用,正弦激勵信號和三個控制電壓輸入分別對應圖2中Input和三個偏置信號。
在1V正弦激勵和偏置電壓作用下,由Multisim軟件仿真出電調電路的時域響應,并由圖3中Output接線端輸出,下圖給出正弦激勵為0.96MHz時,LabVIEW測試觀察到的時域響應。
此時,由時域響應分為暫態和穩態,通過對穩態響應取最大值,可以得到該頻率下的頻譜特性,并最終寫入測量文件以供優化算法使用。
四、Python的智能算法模塊
利用智能算法對圖2中電調電路進行參數優化,基于仿真數據與目標響應的誤差構造出待優化的目標函數,以圖2中偏置電壓Bias1, Bias2和Bias 3作為優化參數,進行電調電路的調試與優化。圖5給出模擬退火算法實施過程中的Python環境和部分數據,Sampledata.xlsx是Multisim軟件仿真所得時域穩態響應經LabVIEW處理和保存的幅頻特性,Idealdata.xlsx是基于壓控電容的電調電路的理想幅頻特性,二者之間的絕對誤差和是模擬退火算法的目標函數。
圖5中txt文檔是模擬退火算法在迭代過程中定義的各種數據和結果,具體定義如表1所示。
表1中與“X”相關的文件對應圖2電路的可調參數,與“Y”相關的文件目標函數取值,經過優化迭代得到電調參數的最優解Bx和目標函數最小值By。
五、LabVIEW的協同控制
以上電路和算法模塊需要集成在LabVIEW平臺上進行交互控制,圖6是圖7是聯合仿真第一層級的程序框圖和顯示前面板,圖6主要包括參數輸入、算法路徑設置和當前仿真狀態顯示。
在圖6所示循環條件下,LabVIEW通過Python節點調用智能算法,進而對電調參數進行預測,圖7給出了具體實現。
一旦智能算法得到優化參數的預測值,則會送入Multisim進行電路仿真,但由于Multisim直接輸出的時域響應在不同頻率處進入穩態所需的時間不同,對仿真效率提出了很高要求,因此本文按照頻率范圍對Multisim軟件也進行了設置和選擇。由圖7可以看出,預測得到的參數并不是直接送入Multisim進行仿真,而是按照頻率范圍進入下一級程序,如圖8所示,在第二級前面板中,頻率和優化參數按照不同頻段送入再下一級程序以實現與Multisim的交互仿真(圖3)。
通過反復的電路仿真、參數預測和反復迭代,最終可以得到優化后的電路響應。
六、結束語
本文構建的LabVIEW、Multisim和Python聯合仿真平臺,關鍵在于電路設計、時域仿真、幅頻特性分析和參數調試的有效結合,主要有以下特色:從電調電路的時頻仿真出發,循序漸進,掌握LabVIEW與Multisim聯合仿真方法,熟悉簡單電路的時域仿真原理,理解數據的采集和測試,掌握幅頻特性分析方法;直觀感知電路參數對電路性能的作用和影響,通過LabVIEW調用Python程序來實現電路參數尋優,啟發學生將人工智能技術應用到電子電路的仿真和調試當中,激發學習興趣,提高自主創新能力。
作者單位:秦紅波? ? 趙偉? ? 劉巖? ? 顧航? ? 西安電子科技大學機電工程學院
參? 考? 文? 獻
[1] 肖如杏, 房俊龍, 楊方, 初永良. 基于LabVIEW和Multisim的電子電路虛擬實驗室[J]. 東北農業大學學報, 2008(04): 106-108.
[2] 韋青燕. 基于LabVIEW和Multisim的串聯校正實驗軟件平臺開發[J]. 實驗室研究與探索, 2015, 34(02): 128-131.
[3] 李毅, 李曉輝, 郭萬里. 基于LabVIEW-Multisim的低頻虛擬實驗室設計與實現[J]. 現代電子技術, 2019, 42(06): 72-75.
[4] 李楠柯, 高建華, 張鳳龍, 謝坤. 基于機器視覺的瓶裝水漏裝檢測系統設計[J]. 儀表技術, 2020(03): 12-14.
[5] 劉規劃. LabVIEW和TestStand中調用Python編程[J]. 計算機時代, 2020(07): 54-58.