CST進(jìn)階之路:第二節(jié) MATLAB—CST聯(lián)合仿真之建模
內(nèi)容摘要,公眾號(hào),同步更新,敬請期待……
微波仿真論壇 原創(chuàng)投稿
MATLAB—CST聯(lián)合仿真由 國防科大 劉燚 原創(chuàng),并首發(fā)微波仿真論壇(公眾號(hào))。共六小節(jié),分六天連載。每節(jié)均附有示例代碼 + 課后討論 + 配套微信群深入交流 + 論壇贊助禮品獎(jiǎng)勵(lì)。如需轉(zhuǎn)載請聯(lián)系 劉燚 博士獲取授權(quán)。
作者簡介
作者:劉燚,國防科技大學(xué)電子科學(xué)學(xué)院電子科學(xué)系電磁調(diào)控技術(shù)教研室講師,主要從事微波毫米波技術(shù)、天線理論與設(shè)計(jì)等方向的教學(xué)和科研。
郵箱:yi_liu@nudt.edu.cn
作者注:"歡迎同學(xué)們來信討論相關(guān)問題,也歡迎來我室學(xué)習(xí)深造。"
內(nèi)容安排及教程代碼獲取
適用人群:想節(jié)約時(shí)間做點(diǎn)更有意義事情的天線設(shè)計(jì)人員
閱讀時(shí)間:10分鐘
實(shí)操時(shí)間:30分鐘
軟件操作:能讀懂MATLAB代碼,在CST中獨(dú)立仿真過微波器件
專業(yè)基礎(chǔ):電磁波與天線,陣列天線理論
軟件版本:CST 2018,MATLAB2016b
內(nèi)容安排:
第一節(jié):MATLAB—CST聯(lián)合仿真之入門(點(diǎn)擊查看)
第二節(jié):MATLAB—CST聯(lián)合仿真之建模(本節(jié))
第三節(jié):MATLAB—CST聯(lián)合仿真之結(jié)構(gòu)參數(shù)優(yōu)化
第四節(jié):MATLAB—CST聯(lián)合仿真之方向圖分析與綜合
第五節(jié):MATLAB—CST聯(lián)合仿真之共形天線建模與端口設(shè)置
第六節(jié):MATLAB—CST聯(lián)合仿真之有獎(jiǎng)自測
學(xué)習(xí)方法:最好邊運(yùn)行代碼邊看文字
教程獲?。?/b>關(guān)注公眾號(hào)“微波仿真論壇”
示例代碼:請?jiān)诠娞?hào)后臺(tái)回復(fù)“CST001”獲取下載鏈接
加群方式:加Amy_wang微信: 18010874378
(加群請備注:MATLAB-CST)
論壇交流:http://bbs.rfeda.cn/read-htm-tid-112943.html
正文 第二節(jié)
CST進(jìn)階之路:第二節(jié)
MATLAB—CST聯(lián)合仿真之建模
上一節(jié)中我們通過一個(gè)簡單微帶貼片的建模和仿真,對MATLAB控制CST的方法有了一定了解。但是在實(shí)際的天線設(shè)計(jì)過程中,我們遇到的問題通常都比較復(fù)雜,特別是剛?cè)腴TCST的同學(xué)大多會(huì)在建立復(fù)雜天線模型時(shí)陷入不同程度的困境。復(fù)雜天線模型一般分為天線單元結(jié)構(gòu)復(fù)雜型和陣列天線組陣布局復(fù)雜型兩種。
1. 天線單元結(jié)構(gòu)復(fù)雜型
如圖1所示,是常見的螺旋天線,屬于單元結(jié)構(gòu)復(fù)雜型,其曲線的構(gòu)成一般可以采用參數(shù)方程來表示,不知表達(dá)方程的同學(xué)可以查閱相關(guān)文獻(xiàn)。當(dāng)然,由于此類天線的曲線相對簡單,對于有一定CST使用操作經(jīng)驗(yàn)的人來說還是比較容易繪制的。
我回想了一下,多年以前我繪制阿基米德螺旋天線的時(shí)候,最初想到的辦法就是用MATLAB分別生成了具有一定寬度的閉合曲線(每個(gè)臂對應(yīng)一條獨(dú)立的閉合曲線)并將其坐標(biāo)的數(shù)值點(diǎn)保存成TXT文件,然后在CST里面用“Polygon”命令載入此TXT文檔,這樣就在CST里面生成了一個(gè)閉合的曲線,最后利用“Cover Curve”命令將此閉合曲線變成金屬面,再將此面擴(kuò)展成體就得到了阿基米德螺旋天線實(shí)體模型。雖然這樣的操作也并不復(fù)雜,但是對于喜歡追求效率的人,還是顯得太麻煩了,就想著要么就在MATLAB里面把所有操作完成,要么就在CST里面完成,在各種程序之間搗騰略顯繞腦和耗時(shí)。
因此,我后來就直接用CST的VBA命令生成曲線來建模了,不過我對VB的各種命令不是很熟悉,都是邊查邊用,還是比較耗時(shí)。近幾年版本的CST也可以通過自帶的宏命令繪制一些常用的復(fù)雜曲線天線了,但是為了能夠更靈活的繪制我們需要的天線,學(xué)會(huì)借助MATLAB強(qiáng)大的計(jì)算能力和便捷的操作性來完成各種復(fù)雜天線的建模也是非常不錯(cuò)的。
圖1 常見的平面和立體螺旋類天線
為幫助大家快速上手,就以圖1所示的兩種基本線天線為例,介紹兩種用MATLAB控制CST進(jìn)行繪制曲線類天線模型的簡單快速方法。請大家先看示例代碼。
示例代碼中已經(jīng)有較為詳細(xì)的注釋,這里梳理一下不同方法的關(guān)鍵步驟:
第一種方法的基本思路:在繪制平面型線天線時(shí),可以先用MATLAB生成曲線的二維坐標(biāo)點(diǎn)集,然后通過“Curve”和“Polygon”來生成曲線,最后通過“Trace From Curve”就可以生成具有一定厚度和寬度的天線實(shí)體,且天線起始端或者末端可以設(shè)置成圓形。此方法相比我上文中介紹的利用閉合曲線生成實(shí)體的方式要簡單得多,它就只考慮中心路徑,不需要閉合曲線圍成面。據(jù)我了解“Trace FromCurve”應(yīng)該是CST2018版本新增的命令,所以請有需要的同學(xué)自行升級(jí)到最新版本,版本低運(yùn)行報(bào)錯(cuò)的請注釋掉此方法的整段代碼再運(yùn)行。
第二種方法的基本思路:首先生成兩條曲線,一條是路徑,利用“Curve”和“AnalyticalCurve”組合生成(AnalyticalCurve是CST自帶的參數(shù)方程曲線生成命令);一條是剖面輪廓(閉合曲線將生成實(shí)心體,非閉合曲線將生成面),可以繪制成矩形、圓形或其他復(fù)雜形狀;然后利用“SweepCurve”命令就可以將剖面沿著路徑生成天線實(shí)體了。此方法相比第一種方法要更加通用一些,不受幾何形狀和空間限制,且“SweepCurve”命令還提供了扭轉(zhuǎn)角(Twistangle)和錐角(Taperangle)兩個(gè)參數(shù)的選擇,更加豐富了建模的形狀。
圖2所示為這兩種螺旋天線的自動(dòng)建模演示。當(dāng)然,具有復(fù)雜結(jié)構(gòu)的天線單元種類很多,本節(jié)只提供了線天線建模的基本方法,希望同學(xué)們可以舉一反三,自己動(dòng)手建立具有復(fù)雜曲面的天線模型。
圖2 螺旋天線自動(dòng)建模演示(gif)
2. 陣列天線組陣布局復(fù)雜型
一個(gè)合格的天線設(shè)計(jì)師,除了要會(huì)設(shè)計(jì)一些形狀怪異的天線單元外,還要能應(yīng)對陣列天線各種復(fù)雜的組陣方式。如圖3所示,這些陣列天線單元的幾何形狀大小位置不都一樣,關(guān)鍵是數(shù)目眾多,假如在CST中為每一個(gè)單元都建立參數(shù)變量,顯然難以管理。
3 反射陣天線(感謝陳焱和劉桃林供圖)和波導(dǎo)縫隙陣列天線
其實(shí),經(jīng)常使用HFSS的天線設(shè)計(jì)師通常會(huì)用MATLAB-HFSS-API來實(shí)現(xiàn)陣列天線的建模,此API操作方式主要是通過MATLAB生成HFSS可執(zhí)行的腳本文件實(shí)現(xiàn)自動(dòng)建模仿真等,使用方便、應(yīng)用廣泛。剛開始我也是用MATLAB-HFSS-API實(shí)現(xiàn)縫隙陣列天線的建模,也想過基于此種思路寫個(gè)類似的MATLAB-CST-API代碼,想通過MATLAB生成CST可執(zhí)行的VBA宏文件,但是最終以失敗告終,寫了幾個(gè)函數(shù)就放棄了,因?yàn)槲抑肋@東西真不適合我去寫,有錢又有閑的人可能更適合。
因此,我只能轉(zhuǎn)而用VBA代碼讀取外部的天線結(jié)構(gòu)參數(shù)然后再建模,比如在對Vivaldi天線曲線的優(yōu)化和其加載介質(zhì)形狀的優(yōu)化時(shí)、反射陣天線的建模時(shí)等。誠然,利用VBA來讀取外部數(shù)據(jù)是一個(gè)好方法,但很多時(shí)候這些外部數(shù)據(jù)也是來源于MATLAB程序的計(jì)算。因此,要是能直接在MATLAB里面完成參數(shù)生成和模型建立,甚至進(jìn)行仿真和優(yōu)化將是非常有意義的一件事。
下面我們就以簡單的波導(dǎo)縫隙陣列天線的建模為例來介紹一下MATLAB控制CST進(jìn)行陣列建模的方法。有了一定基礎(chǔ)之后,陣列天線建模的重點(diǎn)其實(shí)是落在了MATLAB編程上和一些建模命令的靈活應(yīng)用上,但是我想看到這里的人應(yīng)該還是很想直接看到示例代碼,那就請先按照文首方式下載代碼吧,希望能對大家有所幫助。
圖4 程序代碼名字
圖4所示為示例代碼的構(gòu)成,SlotArray.m是主程序,程序里面的注釋已經(jīng)比較完善了,應(yīng)該都能看懂,Brick.m、Material.m和Transform.m就是三個(gè)CST里面常用的操作命令,我這里將其寫成了函數(shù),這樣在主程序里面調(diào)用時(shí)就比較方便了,代碼看上會(huì)去整潔一些。StructureParameters.mat是我已經(jīng)生成好的10×10波導(dǎo)縫隙陣列的相關(guān)結(jié)構(gòu)參數(shù),比如說縫隙的位置、長度和寬度等信息,總共100組。
圖5 波導(dǎo)縫隙陣列天線自動(dòng)建模演示
運(yùn)行主程序可得到如圖5所示的建模過程,通過MATLAB完成縫隙幾何參數(shù)的讀取,然后建立仿真模型,最后添加饋電端口并開始仿真。里面用到了更多已經(jīng)翻譯好的CST操作命令而已,這樣大家在參考的時(shí)候可以節(jié)約一些翻譯代碼的時(shí)間,同時(shí)也可以借鑒這種思路,幫助大家快速建立陣列天線模型。
學(xué)完這一節(jié)的內(nèi)容,面對復(fù)雜天線的建模,同學(xué)們心里應(yīng)該有底了。
課后討論(加相關(guān)微信群)
課后討論(移步 論壇 或 交流群):
大家使用本文介紹的MATLAB-CST聯(lián)合仿真方式建模后,感覺與MATLAB-HFSS-API建模的有什么不同?各有什么優(yōu)勢呢?
致謝
本節(jié)校對與代碼測試人員:
文穎,成都電子科技大學(xué)本科,國防科技大學(xué)電子科學(xué)學(xué)院碩士研究生在讀。
作者簡介:
劉燚,國防科技大學(xué)電子科學(xué)學(xué)院電子科學(xué)系電磁調(diào)控技術(shù)教研室講師,主要從事微波毫米波技術(shù)、天線理論與設(shè)計(jì)等方向的教學(xué)和科研。
郵箱:yi_liu@nudt.edu.cn
獲取代碼及深入交流
教程獲?。?/b>關(guān)注公眾號(hào)“微波仿真論壇”
示例代碼:請?jiān)诠娞?hào)后臺(tái)回復(fù)“CST001”獲取下載鏈接
配套微信群:加編輯Amy_wang微信: 18010874378 (請備注:MATLAB-CST)
論壇留言:http://bbs.rfeda.cn/read-htm-tid-112943.html
微波仿真論壇 公眾號(hào)(bbs.rfeda.cn)
2006-2018專注微波12年,現(xiàn)13萬微波會(huì)員
長按二維碼關(guān)注公眾號(hào)
會(huì)員注冊 | 資料下載 | 會(huì)議信息 | 微波培訓(xùn)
加編輯Amy_wang微信 (備注:MATLAB-CST)
至 論壇留言 交流 點(diǎn)擊閱讀原文
代碼下載不了
很不錯(cuò),謝謝分享
厲害了,謝謝分享
咋看不了圖片呢
看這里。
謝謝分享,謝謝謝