学个Antenna是以天线仿真和调试为主,理论原理为辅的干货天线技术专栏,包括天线入门知识以及各类天线的原理简介、仿真软件建模、设计、调试过程及思路。如有想看到的内容或技术问题,可以在文尾写下留言。
摘要:
今天我们正式拉开HFSS-API入门的帷幕,欢迎小伙伴们阅读、分享、再看,转发给更多有需要的人!本次推文将教大家利用MATLAB调用本人改良后的HFSS-API包,编写调用HFSS的vbs脚本,文内有用法注释。喜欢的小伙伴可赞赏下作者哦。
本文使用的软件为MATLAB2019a和AnsysEM 18.2
入门级函数
大家可以先拉到文末,下载改良后的hfssapi。建议收藏链接,后续新出的函数会不定期在该文件夹内更新。文件也不大,几百kB,每次有更新重新下载覆盖即可。
使用前须知:如果MATLAB已安装了其他版的hfssapi,建议先将其移除出Set Path中的路径,然后选择改良后的hfssapi将其Add with Subfolders。
或者将编写的MATLAB生成vbs脚本的.m文件与hfssapi-by-Jianhui Huang放在同一个总文件夹内。(初学者建议采用此方法)
然后通过下面的MATLAB代码实现路径的添加。
path = mfilename('fullpath'); |
至于vbs脚本文件进行代码的写入可以使用MATLAB自带的fopen函数:
% 创建一个可读写vbs脚本文件. % tmpScriptFile:vbs脚本的路径,例如F:\test\a.vbs fid = fopen(tmpScriptFile, 'wt'); |
接下来介绍3个基本函数及其用法:hfssNewProject,hfssInsertDesign,hfssSaveProject。
%创建一个新的HFSS项目 %fid:新建vbs脚本的一个文件标识符 hfssNewProject(fid) |
%插入一个新的设计文件 %Design_name:设计名称 hfssInsertDesign(fid, Design_name); |
%保存项目文件到指定路径 %tmpPrjFile:vbs脚本的路径, %例如F:\test\Helloworld.aedt或者F:\test\Helloworld.hfss %Overwrite:如果设置为1将覆盖与tmpPrjFile指定的名称相同的任何现存文件 %缺省或者为0则默认不覆盖 hfssSaveProject(fid, tmpPrjFile,Overwrite); |
画个参数化的Box
接下来两个函数分别用来变量建立和画Box的:hfssVariableInsert,hfssBox。
% DesignName:设计名称;variableName:变量名字 % value:变量的值;units:单位; % flag:值为1时value只支持数字,值为2时value支持表达式 hfssVariableInsert(fid,DesignName,variableName, value, units,flag) |
% hfssBox(fid, BoxName, Start, Size, Units, Color, Material, Transparency, flag) % BoxName:Box的名字;Start:初始点(基点)坐标;Size:沿着x,y,z轴的尺寸;Units:单位 % Color:Box的颜色(RGB);Material:材料名字(不要随便自己整个名字,必须是HFSS材料库里的名字); % Transparency:显示的透明度;flag:值为1时Start, Size只支持向量数字,值为2时value支持元胞数组表达式 % 实例: % 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里面自己根据自己喜好挑选,并记录下RGB三色数值。
不过对于笔者而言,通常将HFSS模型按下图统一进行配色。
基板Material名字在HFSS材料库里面找到,然后复制Material Name就行。
到此为止,这5个函数足以让我们在编写vbs脚本,实现在HFSS中任意画参量化的Box了。(代码在文末下载链接对应的examples文件夹内)
clear;clc; |
按个人情况修改tmpPrjFile,tmpScriptFile ,hfssExePath这几个路径和Design_name,将编写的MATLAB生成vbs脚本的.m文件与下载的hfssapi-by-Jianhui Huang放在同一个总文件夹内,点击运行即可生成vbs脚本(在自行赋值的tmpScriptFile的这个路径下)。vbs脚本可以直接点击运行,或者在HFSS软件中Run
Script。
基础性地写代码编注释还是挺费时间和精力的,希望大家多点赞分享。
代码分享区
hfssapi-by-Jianhui Huang
下载链接(后续代码持续在下面链接更新):
https://pan.baidu.com/s/1N0EE3Uv7krkypfzi9vxCvg
提取码:o5p5
代码已封装好打包为p文件不可修改,每次重新下载覆盖,按函数注释进行掉包即可!
注释事项:MATLAB生成vbs脚本的.m文件与hfssapi-by-Jianhui Huang放在同一个总文件夹内。不要再examples文件夹内运行.m文件!
END
*本文的图片部分来自AnsysEM 18.2软件
*欢迎左侧一键转发至朋友圈,同时右侧在看与点赞
本期原创工程师:94巨蟹座少年
本文为MWRF.NET原创文章,未经允许不得转载,如需转载请联系market#mwrf.net(#换成@)