HFSS-API入門第一彈:畫個Box
學(xué)個Antenna是以天線仿真和調(diào)試為主,理論原理為輔的干貨天線技術(shù)專欄,包括天線入門知識以及各類天線的原理簡介、仿真軟件建模、設(shè)計、調(diào)試過程及思路。如有想看到的內(nèi)容或技術(shù)問題,可以在文尾寫下留言。
摘要:
今天我們正式拉開HFSS-API入門的帷幕,歡迎小伙伴們閱讀、分享、再看,轉(zhuǎn)發(fā)給更多有需要的人!本次推文將教大家利用MATLAB調(diào)用本人改良后的HFSS-API包,編寫調(diào)用HFSS的vbs腳本,文內(nèi)有用法注釋。喜歡的小伙伴可贊賞下作者哦。
本文使用的軟件為MATLAB2019a和AnsysEM 18.2
入門級函數(shù)
大家可以先拉到文末,下載改良后的hfssapi。建議收藏鏈接,后續(xù)新出的函數(shù)會不定期在該文件夾內(nèi)更新。文件也不大,幾百kB,每次有更新重新下載覆蓋即可。
使用前須知:如果MATLAB已安裝了其他版的hfssapi,建議先將其移除出Set Path中的路徑,然后選擇改良后的hfssapi將其Add with Subfolders。
或者將編寫的MATLAB生成vbs腳本的.m文件與hfssapi-by-Jianhui Huang放在同一個總文件夾內(nèi)。(初學(xué)者建議采用此方法)
然后通過下面的MATLAB代碼實現(xiàn)路徑的添加。
path = mfilename('fullpath'); |
至于vbs腳本文件進(jìn)行代碼的寫入可以使用MATLAB自帶的fopen函數(shù):
% 創(chuàng)建一個可讀寫vbs腳本文件. % tmpScriptFile:vbs腳本的路徑,例如F:\test\a.vbs fid = fopen(tmpScriptFile, 'wt'); |
接下來介紹3個基本函數(shù)及其用法:hfssNewProject,hfssInsertDesign,hfssSaveProject。
%創(chuàng)建一個新的HFSS項目 %fid:新建vbs腳本的一個文件標(biāo)識符 hfssNewProject(fid) |
%插入一個新的設(shè)計文件 %Design_name:設(shè)計名稱 hfssInsertDesign(fid, Design_name); |
%保存項目文件到指定路徑 %tmpPrjFile:vbs腳本的路徑, %例如F:\test\Helloworld.aedt或者F:\test\Helloworld.hfss %Overwrite:如果設(shè)置為1將覆蓋與tmpPrjFile指定的名稱相同的任何現(xiàn)存文件 %缺省或者為0則默認(rèn)不覆蓋 hfssSaveProject(fid, tmpPrjFile,Overwrite); |
畫個參數(shù)化的Box
接下來兩個函數(shù)分別用來變量建立和畫Box的:hfssVariableInsert,hfssBox。
% DesignName:設(shè)計名稱;variableName:變量名字 % value:變量的值;units:單位; % flag:值為1時value只支持?jǐn)?shù)字,值為2時value支持表達(dá)式 hfssVariableInsert(fid,DesignName,variableName, value, units,flag) |
% hfssBox(fid, BoxName, Start, Size, Units, Color, Material, Transparency, flag) % BoxName:Box的名字;Start:初始點(基點)坐標(biāo);Size:沿著x,y,z軸的尺寸;Units:單位 % Color:Box的顏色(RGB);Material:材料名字(不要隨便自己整個名字,必須是HFSS材料庫里的名字); % Transparency:顯示的透明度;flag:值為1時Start, Size只支持向量數(shù)字,值為2時value支持元胞數(shù)組表達(dá)式 % 實例: % hfssBox(fid, 'Sub1', [0,0,0], [1,2,3], 'mm',... % "(132 132 193)", "FR4_epoxy", 0, 1); % hfssBox(fid, 'Sub1', {'0mm', '0mm', '0mm'}, {'Box_W', 'Box_L', 'Box_H'}, 'mm',... % "(132 132 193)", "FR4_epoxy", 0, 2); |
對于RGB三色的選取,可以在Color里面自己根據(jù)自己喜好挑選,并記錄下RGB三色數(shù)值。
不過對于筆者而言,通常將HFSS模型按下圖統(tǒng)一進(jìn)行配色。
基板Material名字在HFSS材料庫里面找到,然后復(fù)制Material Name就行。
到此為止,這5個函數(shù)足以讓我們在編寫vbs腳本,實現(xiàn)在HFSS中任意畫參量化的Box了。(代碼在文末下載鏈接對應(yīng)的examples文件夾內(nèi))
clear;clc; |
按個人情況修改tmpPrjFile,tmpScriptFile ,hfssExePath這幾個路徑和Design_name,將編寫的MATLAB生成vbs腳本的.m文件與下載的hfssapi-by-Jianhui Huang放在同一個總文件夾內(nèi),點擊運行即可生成vbs腳本(在自行賦值的tmpScriptFile的這個路徑下)。vbs腳本可以直接點擊運行,或者在HFSS軟件中Run
Script。
基礎(chǔ)性地寫代碼編注釋還是挺費時間和精力的,希望大家多點贊分享。
代碼分享區(qū)
hfssapi-by-Jianhui Huang
下載鏈接(后續(xù)代碼持續(xù)在下面鏈接更新):
https://pan.baidu.com/s/1N0EE3Uv7krkypfzi9vxCvg
提取碼:o5p5
代碼已封裝好打包為p文件不可修改,每次重新下載覆蓋,按函數(shù)注釋進(jìn)行掉包即可!
注釋事項:MATLAB生成vbs腳本的.m文件與hfssapi-by-Jianhui Huang放在同一個總文件夾內(nèi)。不要再examples文件夾內(nèi)運行.m文件!
END
*本文的圖片部分來自AnsysEM 18.2軟件
*歡迎左側(cè)一鍵轉(zhuǎn)發(fā)至朋友圈,同時右側(cè)在看與點贊
本期原創(chuàng)工程師:94巨蟹座少年
本文為MWRF.NET原創(chuàng)文章,未經(jīng)允許不得轉(zhuǎn)載,如需轉(zhuǎn)載請聯(lián)系market#mwrf.net(#換成@)