91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

CST的VBA語(yǔ)言&MATLAB調(diào)用CST

射頻學(xué)堂 ? 來源:微波射頻網(wǎng) ? 作者:微波射頻網(wǎng) ? 2022-12-19 14:12 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

摘要:

大家在科研和工作中,往往會(huì)遇到如何在CST中構(gòu)建人工重復(fù)性高、建模步驟繁瑣的模型,以及多次導(dǎo)出仿真結(jié)果數(shù)據(jù)等問題。和HFSS的vbs腳本一樣,CST也自帶VBA腳本控制,并支持MATLAB調(diào)用。

0 1 CST的VBA語(yǔ)言

在CST主界面按F1即可打開官方自帶的Help文檔。

95a2c886-7f55-11ed-8abf-dac502259ad0.png

對(duì)于微波專業(yè)的學(xué)生和科研從業(yè)者,大部分情況下選用的是CST的MICROWAVE STUDIO (MWS)。因此,查看學(xué)習(xí)CST MWS VBA語(yǔ)法和對(duì)象即可滿足日常學(xué)習(xí)、工作需求。

963344f6-7f55-11ed-8abf-dac502259ad0.png

點(diǎn)擊Hom?e:Macros>Open VBA Macro Editor,即可打開CST自帶的VBA開發(fā)環(huán)境。

964a57f4-7f55-11ed-8abf-dac502259ad0.png 復(fù)制粘貼MsgBox行的代碼到VBA編輯器中,點(diǎn)擊967dc972-7f55-11ed-8abf-dac502259ad0.png即可彈出信息提示框。(全部復(fù)制可能會(huì)報(bào)錯(cuò)!親測(cè)?。?/p>

'#Language "WWB-COM"


Option Explicit


Sub Main
  MsgBox("Hello World")
EndSub

96971ff8-7f55-11ed-8abf-dac502259ad0.png

對(duì)于初學(xué)者而言,若要熟練使用VBA開發(fā)環(huán)境對(duì)CST進(jìn)行代碼式建模開發(fā),還需要掌握兩方面知識(shí):VBA語(yǔ)言的基本語(yǔ)法規(guī)則和CST的Objects調(diào)用規(guī)則。

前者可以在VBA開發(fā)環(huán)境下按F1鍵,調(diào)出Help文檔。

96c353d4-7f55-11ed-8abf-dac502259ad0.png

官方幫助文檔是學(xué)習(xí)VBA基本語(yǔ)法規(guī)則的一大利器,不需要從頭到尾都學(xué)一遍??梢员羞厡W(xué)邊用的方法,活學(xué)活用。不過學(xué)習(xí)常用的變量定義、數(shù)組、循環(huán)、判斷、字符等最基礎(chǔ)的知識(shí)是很有必要的。

96e99dbe-7f55-11ed-8abf-dac502259ad0.png

有了語(yǔ)法基礎(chǔ)后,就需要根據(jù)自己的學(xué)習(xí)工作需求,去VBA Objects下找自己需要對(duì)象的調(diào)用規(guī)則。例如下圖所示的Brick對(duì)象的一個(gè)構(gòu)建。該對(duì)象有Reset、Name、Component、Material、Xrange、Yrange、Zrange、Create這么幾個(gè)方法。

9701d9f6-7f55-11ed-8abf-dac502259ad0.png 根據(jù)Help文檔的講解,我們?cè)赩BA開發(fā)環(huán)境中復(fù)制下面6-15行的代碼到Sub Main代碼塊內(nèi),點(diǎn)擊運(yùn)行即可在CST中建立一個(gè)矩形實(shí)體。(全部復(fù)制可能會(huì)報(bào)錯(cuò)!親測(cè)?。?/p>

'#Language "WWB-COM"


OptionExplicit


Sub Main
  With Brick
    .Reset
    .Name ("brick1")
    .Component ("component1")
    .Material ("PEC")
    .Xrange (0, 1)
    .Yrange (0, 3)
    .Zrange (0, 5)
    .Create
  End With
End Sub

不過這種建模方法有一個(gè)缺點(diǎn):和HFSS的自動(dòng)化建模只有vbs代碼一樣,建立的模型在CST的History List沒有記錄,喪失了CST建模的一大利器!

972e6566-7f55-11ed-8abf-dac502259ad0.png

好在可以打開CST官方Macro文件進(jìn)行參考,比如自帶的Dipole Antenna這個(gè)mcs文件。經(jīng)過對(duì)比,不難發(fā)現(xiàn),只需要將前面的代碼變成字符串形式,通過AddToHistory即可將建模代碼添加至History List。

974afc30-7f55-11ed-8abf-dac502259ad0.png

依葫蘆畫瓢,Sub Main和End Sub之間的代碼替換如下,執(zhí)行VBA命令后即可在History List下找到本次建模的詳細(xì)代碼:

Dim sCommand As String
  '@ define brick1
  sCommand = ""
  sCommand = sCommand + "With Brick " + vbLf
  sCommand = sCommand + "  .Reset" + vbLf
  sCommand = sCommand + "  .Name (""brick1"")" + vbLf
  sCommand = sCommand + "  .Component (""component1"")" + vbLf
  sCommand = sCommand + "  .Material (""PEC"")" + vbLf
  sCommand = sCommand + "  .Xrange (0, 1)" + vbLf
  sCommand = sCommand + "  .Yrange (0, 3)" + vbLf
  sCommand = sCommand + "  .Zrange (0, 5)" + vbLf
  sCommand = sCommand + "  .Create" + vbLf
  sCommand = sCommand + "End With" + vbLf
  MsgBox(sCommand)
  AddToHistory "define brick1", sCommand

976dcf1c-7f55-11ed-8abf-dac502259ad0.png

95830f50-7f55-11ed-8abf-dac502259ad0.png

0 2 MATLAB調(diào)用CST

MATLAB調(diào)用CST有兩種方法,一種是通過Shell語(yǔ)言的轉(zhuǎn)移字符!。

例如已經(jīng)編寫好了待執(zhí)行的vba腳本,文件類型命名為.bas(其他類型文件,比如.mcr,可能不會(huì)被識(shí)別)。然后按下面的語(yǔ)法結(jié)構(gòu),修改CST安裝路徑和bas文件路徑即可調(diào)用成功。這種方法和通過hfssapi包編寫好相應(yīng)的vbs腳本文件,再用MATLAB調(diào)用HFSS執(zhí)行vbs腳本命令類似。不過這種方法在嘗試調(diào)用高版本CST2022時(shí),會(huì)因?yàn)椴捎昧伺幚?Batch)腳本調(diào)用而需要手動(dòng)確認(rèn)license的現(xiàn)象。

! "D:softwareCST2018CST DESIGN ENVIRONMENT.exe" -m E:test.bas

另一種方法則是通過matlab actxserver創(chuàng)建一個(gè)COM服務(wù)器,通過invoke調(diào)用COM對(duì)象或接口上的方法。

%如果裝了2個(gè)CST,不管怎么切換license,其只會(huì)創(chuàng)建最新安裝的cst對(duì)象!
cst = actxserver('CSTStudio.application');%創(chuàng)建CST應(yīng)用對(duì)象
mws = invoke(cst, 'NewMWS');%調(diào)用MWS應(yīng)用對(duì)象
app = invoke(mws, 'GetApplicationName');%獲取當(dāng)前應(yīng)用名稱
ver = invoke(mws, 'GetApplicationVersion');%獲取當(dāng)前應(yīng)用版本號(hào)
invoke(mws, 'FileNew');%新建一個(gè)CST文件
filename='D:CSTFileDipole_model.cst';
invoke(mws, 'SaveAs', filename,'True');
invoke(mws, 'Quit');
release(mws);
release(cst);

就通用性而言,第二種方法較優(yōu)。網(wǎng)上也有很多關(guān)于這方面的代碼可供參考,個(gè)人可以根據(jù)需求將代碼進(jìn)行封裝,便于后續(xù)的傳參調(diào)用。

實(shí)例展示

97a04424-7f55-11ed-8abf-dac502259ad0.jpg

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • matlab
    +關(guān)注

    關(guān)注

    189

    文章

    3025

    瀏覽量

    238790
  • CST
    CST
    +關(guān)注

    關(guān)注

    7

    文章

    82

    瀏覽量

    18689

原文標(biāo)題:CST的VBA語(yǔ)言 & MATLAB調(diào)用CST

文章出處:【微信號(hào):射頻學(xué)堂,微信公眾號(hào):射頻學(xué)堂】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    需求 CST92F42的SDK包

    開發(fā)CST92P15A3M6NU-N藍(lán)牙模塊,需要CST92F42的SDK包: 麻煩論壇大神發(fā)一個(gè) ,感謝:413463864@qq.com,或者方便加微信:Benjamin413463
    發(fā)表于 01-05 09:51

    CST軟件的廣泛應(yīng)用

    在21世紀(jì)的科技浪潮中,電磁仿真技術(shù)已成為推動(dòng)眾多行業(yè)發(fā)展的關(guān)鍵力量。作為電磁仿真領(lǐng)域的佼佼者,CST軟件憑借其強(qiáng)大的功能、高精度的仿真結(jié)果以及廣泛的應(yīng)用領(lǐng)域,在全球范圍內(nèi)贏得了廣泛的認(rèn)可和贊譽(yù)。本文將深入探討CST軟件的廣泛應(yīng)用,揭示其在不同行業(yè)中的重要價(jià)值和深遠(yuǎn)影響。
    的頭像 發(fā)表于 12-17 10:22 ?414次閱讀
    <b class='flag-5'>CST</b>軟件的廣泛應(yīng)用

    需要cst92f42系列資料

    求一份cst92f42系列的開發(fā)資料,包括開發(fā)環(huán)境,pack包,數(shù)據(jù)用戶手冊(cè),一份demo。請(qǐng)發(fā)到3061174935@qq.com
    發(fā)表于 12-10 13:54

    需要cst92f42系列開發(fā)資料

    求一份cst92f42系列的開發(fā)資料,包括開發(fā)環(huán)境,pack寶,數(shù)據(jù)用戶手冊(cè),一份demo。請(qǐng)發(fā)到3061174935@qq.com
    發(fā)表于 12-10 08:28

    CST92F30的定時(shí)器怎么做到微秒級(jí)別

    請(qǐng)問大家CST92F30的定時(shí)器怎么做到微秒級(jí)別。當(dāng)前SDK中沒有關(guān)于定時(shí)器的配置說明
    發(fā)表于 12-03 11:10

    求一份CST92F25資料

    想用CST92F25開發(fā)項(xiàng)目,找不到資料,可以把 CST92F25的開發(fā)資料(數(shù)據(jù)手冊(cè)、用戶手冊(cè)、Pack包和例程等)發(fā)送到郵箱1436490767@qq.com嗎?謝謝!
    發(fā)表于 08-06 10:33

    電磁遇上熱與應(yīng)力-CST多物理場(chǎng)仿真解決復(fù)雜工程挑戰(zhàn)

    當(dāng)電磁遇上熱與應(yīng)力,CST MPhysics Studio提供真正的全耦合多物理場(chǎng)仿真能力。電磁-熱耦合、熱失諧分析、熱-機(jī)械耦合、電磁-機(jī)械耦合,解決復(fù)雜工程挑戰(zhàn)。
    的頭像 發(fā)表于 07-29 16:21 ?932次閱讀
    電磁遇上熱與應(yīng)力-<b class='flag-5'>CST</b>多物理場(chǎng)仿真解決復(fù)雜工程挑戰(zhàn)

    新手入門:使用CST電磁軟件進(jìn)行貼片天線設(shè)計(jì)的5個(gè)基本步驟

    新手入門教程:使用CST進(jìn)行貼片天線設(shè)計(jì)的5個(gè)基本步驟。從創(chuàng)建模型到結(jié)果分析,詳細(xì)指導(dǎo)您完成2.45GHz微帶貼片天線的完整設(shè)計(jì)流程。
    的頭像 發(fā)表于 07-28 16:17 ?1147次閱讀
    新手入門:使用<b class='flag-5'>CST</b>電磁軟件進(jìn)行貼片天線設(shè)計(jì)的5個(gè)基本步驟

    CST求解器選擇指南:瞬態(tài)(T)、頻域(F)還是積分方程(I)

    CST求解器選擇指南:瞬態(tài)、頻域還是積分方程?詳解CST MWS三種核心求解器的特點(diǎn)和最佳應(yīng)用場(chǎng)景,幫助您選擇合適的求解器提升仿真效率
    的頭像 發(fā)表于 07-25 14:24 ?1003次閱讀
    <b class='flag-5'>CST</b>求解器選擇指南:瞬態(tài)(T)、頻域(F)還是積分方程(I)

    CST Studio Suite電磁仿真如何驅(qū)動(dòng)下一代產(chǎn)品創(chuàng)新?

    探索CST在多物理場(chǎng)仿真中的強(qiáng)大能力,從設(shè)計(jì)驗(yàn)證到仿真驅(qū)動(dòng)創(chuàng)新的完整解決方案
    的頭像 發(fā)表于 07-24 17:38 ?612次閱讀
    <b class='flag-5'>CST</b> Studio Suite電磁仿真如何驅(qū)動(dòng)下一代產(chǎn)品創(chuàng)新?

    CST92F25的文檔

    CST92F25的開發(fā)文檔說明還是比較全的,就是表達(dá)不夠清晰,需要自己揣摩。
    發(fā)表于 07-20 14:01

    CST92F定時(shí)喚醒功能

    CST92F25有寄存器操作說明書嗎?RTC怎配置定時(shí)喚醒功能?
    發(fā)表于 07-15 16:07

    關(guān)于芯??萍?b class='flag-5'>CST92F25的AT固件

    請(qǐng)問有沒有芯??萍?b class='flag-5'>CST92F25的AT固件,在官網(wǎng)上沒有看到,只看到了對(duì)應(yīng)的AT指令集
    發(fā)表于 07-02 18:49

    關(guān)于cst92f25的AT固件

    請(qǐng)問一下,有關(guān)于cst92f25的AT固件嗎,在官網(wǎng)上沒有看到
    發(fā)表于 07-02 18:48

    需求CST92F25開發(fā)資料

    您好,可以把 CST92F25的開發(fā)資料(數(shù)據(jù)手冊(cè)、用戶手冊(cè)、Pack包和例程等)發(fā)送到郵箱shrimphong@qq.com嗎?謝謝!
    發(fā)表于 05-16 14:47