学个Antenna是以天线仿真和调试为主,理论原理为辅的干货天线技术专栏,包括天线入门知识以及各类天线的原理简介、仿真软件建模、设计、调试过程及思路如有想看到的内容或技术问题,可以在文尾写下留言。

摘要:

上节HFSS-API入门第一弹:画个Box主要是分享了调用改良hfssapi新建工程和设计文件并插入变量画一个参数化的Box,本期推文将推送常用的基本形状和布尔操作函数。欢迎小伙伴们阅读、分享、再看,转发给更多有需要的人!喜欢的小伙伴可赞赏下作者哦。

本文使用的软件为MATLAB2019a和AnsysEM 18.2

简单介绍

常规模型大家只需要用到画方块、柱子、矩形片、圆形,并对其进行Unite和Subtract之类的布尔操作即可。上次推文已经介绍了hfssBox的函数用法,下节将先对hfssCylinder,hfssRectangle,hfssCircle进行函数使用讲解,然后介绍hfssUnite和hfssSubtract的加减操作函数。

拉到文末有下载改良后的hfssapi,建议收藏链接,后续新出的函数会不定期在该文件夹内更新。文件也不大,几百kB,每次有更新重新下载覆盖即可。

  • 先提醒下matlab打开有中文注释代码乱码问题,按下图所示将EditorFont改为Monospaced即可。

  • 对于设置Color,有的人想花里胡哨地配色的话,可以进行RGB三色的颜色查询:https://www.sojson.com/rgb.html。没有绝对颜感的人不要轻易尝试,否则配出来会是下图这种样子。可能你觉得很绚丽,但是真的很乡村风啊!!!本人还是习惯用上次推文的三种配色,极简最好。

函数使用教程

接下来先介绍三个建模常用的函数:hfssCylinder,hfssRectangle,hfssCircle。

1 % hfssCylinder(fid, CylinderName, Axis, Center, Radius, Height, Units, Color, Material, Transparency, flag)
2 % CylinderName:圆柱的名字;Axis:圆柱建模的中心轴向('X','Y'或'Z',大小写均可);Center:圆柱底面的圆心坐标;
3 % Radius:圆柱底面的圆半径;Height:圆柱的高度;Units:单位
4 % Color:圆柱的颜色(RGB);Material:材料名字(不要随便自己整个名字,必须是HFSS材料库里的名字);
5 % Transparency:显示的透明度;flag:值为1时Center, Radius, Height只支持数字,值为2时value支持元胞数组表达式
6 % 实例:
7 % hfssCylinder(fid, 'Cy1', 'Z', {'Cy_dx', 'Cy_dy', 'Cy_dz'}, 'Cy_R','Cy_H', 'mm',...
8 % "(132 132 193)", "FR4_epoxy", 0, 2);
9 % hfssCylinder(fid, 'Cy1', 'Z', [0,0,0], 0.5,2, 'mm',...
10 % "(132 132 193)", "FR4_epoxy", 0, 1);
1 % hfssRectangle(fid, RectangleName, Axis, Start, Width, Length, Units, Color, Transparency,flag)
2 % RectangleName:矩形片的名字;Axis:矩形片的法向轴向('X','Y'或'Z',大小写均可);
3 % Start:矩形片的起始基点;% Width:矩形片的宽;Length:矩形片的长;Units:单位
4 % Color:矩形片的颜色(RGB);% Transparency:显示的透明度;
5 % flag:值为1时Start, Width, Length只支持数字,值为2时value支持元胞数组表达式
6 % HFSS中的Rectangle只可设置边界条件,不可设置材料属性
7 % 实例:
8 % hfssRectangle(fid, 'Rec1', 'Z', {'Rec_dx', 'Rec_dy', 'Rec_dz'}, 'Rec_W','Rec_L', 'mm',...
9 % "(132 132 193)", 0, 2);
10 % hfssRectangle(fid, 'Rec1', 'Z', [0,0,0], 1, 2, 'mm',...
11% "(132 132 193)", 0, 1)
1 % hfssCircle(fid, CircleName, Axis, Center, Radius, Units, Color, Transparency,flag)
2 % CircleName:圆形片的名字;Axis:圆形片的法向轴向('X','Y'或'Z',大小写均可);Center:圆形片的圆心坐标;
3 % Radius:圆形片的半径;Units:单位
4 % Color:圆形片的颜色(RGB);% Transparency:显示的透明度;
5 % flag:值为1时Center, Radius只支持数字,值为2时value支持元胞数组表达式
6 % HFSS中的Circle只可设置边界条件,不可设置材料属性
7 % 实例:
8 % hfssCircle(fid, 'Cir1', 'Z',{'Cir_dx', 'Cir_dy', 'Cir_dz'}, 'Cir_R', 'mm',...
9 % "(128 128 128)", 0, 2)
10 % hfssCircle(fid, 'Cir1', 'Z',[0,0,0], 1, 'mm',...
11 % "(128 128 128)", 0, 1)

需要注意上面的hfssRectangle,当坐标轴分别选取'X','Y'或'Z'时,按下面代码建立三个Rectangle模型。

1 hfssRectangle(fid, 'Rec1', 'X', {'Rec_dx', 'Rec_dy', 'Rec_dz'}, 'Rec_W','Rec_L', 'mm',...
2 "(255 128 0)", 0, 2);
3 hfssRectangle(fid, 'Rec2', 'Y', {'Rec_dx', 'Rec_dy', 'Rec_dz'}, 'Rec_W','Rec_L', 'mm',...
4 "(255 128 0)", 0, 2);
5 hfssRectangle(fid, 'Rec3', 'Z', {'Rec_dx', 'Rec_dy', 'Rec_dz'}, 'Rec_W','Rec_L', 'mm',...
6 "(255 128 0)", 0, 2)

逐个点击这三个Rectangle,查看其属性会发现:若坐标轴选'X',则'Rec_W','Rec_L'分别赋值给Ysize和Zsize;若坐标轴选'Y',则'Rec_W','Rec_L'分别赋值给Zsize和Xsize;若坐标轴选'Z',则'Rec_W','Rec_L'分别赋值给Xsize和Ysize;即按着'X','Y','Z'顺序进行轮换式赋值。

在建模过程中,往往需要Unite和Subtract这两种加减型的布尔操作,这时候hfssUnite和hfssSubtract函数就派上用场了。

1 % hfssUnite(fid, ObjectList)
2 % ObjectList:待Unite的物体名字
3 % 实例:
4 % hfssUnite(fid, {'Object1Name', 'Object2Name', 'Object3Name'});
1 % hfssSubtract(fid, BigParts, SmallParts, KeepOriginals)
2 % BigParts:待减物品名字;SmallParts:被减的物体名字
3 % KeepOriginals:为false时不保留被减物,为true时则保留被减物
4 % 实例:
5 % hfssSubtract(fid, {'Object1Name'}, {'Object2Name'}, false);

通过下面的视频可以直观感受下以上五个函数的建模作用,以及hfssSubtractKeepOriginalsfalsetrue时的差异:

上面视频的两段代码文件在文末的链接内,按个人情况按图索骥地修改tmpPrjFile,tmpScriptFile ,hfssExePath这几个路径和Design_name,将编写的MATLAB生成vbs脚本的.m文件与下载的hfssapi-by-Jianhui Huang放在同一个总文件夹内,点击运行即可生成vbs脚本(在自行赋值的tmpScriptFile的这个路径下)。vbs脚本可以直接点击运行,或者在HFSS软件中Run Script。

基础性地写代码编注释还是挺费时间和精力的,希望大家多点赞分享。

代码分享区

hfssapi-by-Jianhui Huang

下载地址(后续代码持续在下面链接更新):射频问问原文末尾自取

代码已封装好打包为p文件不可修改,每次重新下载覆盖,按函数注释进行掉包即可!

来源:HFSS-API入门第二弹:基本形状和操作 - RFASK射频问问

注释事项:MATLAB生成vbs脚本的.m文件与hfssapi-by-Jianhui Huang放在同一个总文件夹内。不要再examples文件夹内运行.m文件!

END

*本文的图片部分来自AnsysEM 18.2软件

作者:微波天线工程师

应读者朋友们对这个系列文章的喜爱,也为了能够让老师更系统更全面地介绍MATLAB-HFSS-API相关知识,现推出该系列课程,共25课时,欢迎大家加入课程学习!https://www.rfask.net/kc/v/41.html

关于RFASK射频问问

射频问问 (http://RFASK.NET) 是在"微波射频网 (http://MWRF.NET)”系列原创技术专栏基础上升级打造的技术问答学习平台,主要围绕射频芯片、微波电路、天线、雷达、卫星等相关技术领域,致力于为无线通信、微波射频、天线、雷达等行业的工程师,提供优质、原创的技术问答、专栏文章、射频课程等学习内容。更多请访问:http://www.rfask.net

HFSS-API入门第二弹:基本形状和操作相关推荐

  1. Linux入门第二弹!Xshell、Xftp、tomcat的Linux版本、双X的教学资源!

    Linux入门第二弹!Xshell.Xftp.tomcat的Linux版本.双X的教学资源! 我们可以通过Xshell和Xftp进行简单的,远程连接Linux系统.并且可以使用图形化界面快捷的进行文件 ...

  2. Vue leaning(入门)第二弹

    个人博客:https://blog.fmujie.cn/ 设定计算属性 setter 设置计算属性,同步更新元数据的值 =>(反推数据) <div id="myApp" ...

  3. java api教程_Java api 入门教程 之 JAVA的文件操作

    I/O类使用 由于在IO操作中,需要使用的数据源有很多,作为一个IO技术的初学者,从读写文件开始学习IO技术是一个比较好的选择.因为文件是一种常见的数据源,而且读写文件也是程序员进行IO编程的一个基本 ...

  4. XSSFWorkbook 设置单元格样式_CVA高校精英计划第二弹:执行最佳操作,做好设置准备...

    一. 什么是财务建模的12项最佳操作? 1.要有清晰的思路,明确创建模型的目的:建立清晰的建模思路,绘制模型的基本蓝图. 2.保持简单:遵守KISS(Keep It Simple,Stupid)原则, ...

  5. OpenProcess | Process32First | GetExitCodeProcess - WINDOWS API 第二弹 非通信方式的子进程获取父进程信息

    OpenProcess | Process32First | GetExitCodeProcess - WINDOWS API 第二弹 进程相关 目录 一.得到父进程ID(Process32First ...

  6. IOS开发百度地图API入门到精通-用点生成路线,导航,气泡响应

    (转)IOS开发百度地图API入门到精通-用点生成路线,导航,气泡响应 IOS百度地图API开发自定义气泡,点击气泡自动生成路线,以及拖拽 IOS百度地图开发POISearch搜索附近停车场,附近加油 ...

  7. SVG图形绘制入门第一弹

    IT入门的路超级漫长--任何时候都发现有完全没听过的东西,比如说下方--原来认为svg就是图片,想着也是跟Ps一样画出来的,现在知道了竟然是用代码写的--,这条路我不知道啥时候才能进步到幼儿园的级别! ...

  8. 开源 | 蚂蚁金服分布式中间件开源第二弹:丰富微服务架构体系

    小蚂蚁说: 数据.消息.微服务是蚂蚁金服自主研发的金融级分布式中间件 SOFA (Scalable Open Financial Architecture)的三大方向. 一个多月前,蚂蚁金服开源了 S ...

  9. 微信小程序开发第二弹

    1.关于工具 微信官方提供了开发者工具,集成了开发调试.代码编辑及程序发布等功能.具体的文档在这里:微信官方文档,文档里面包含了该工具的基本操作,接下来就是下载工具了. 2.下载完工具之后,我们就可以 ...

最新文章

  1. 项目案例:Java多线程批量拆分List导入数据库
  2. 过程中存根的作用有_模温机的作用 模压过程中模温机的作用有哪些?
  3. 09-2.部署 dashboard 插件
  4. HTML5程序开发范例宝典 完整版 (韩旭等著) 中文pdf扫描版
  5. python实现数字时钟_Python 写的全屏数字时钟软件,看看还有什么改进的地方
  6. b700a怎么连蓝牙_233621蓝牙2.1无线音箱B700A小测
  7. java语言sql接口_Java语言SQL接口
  8. UCI机器学习数据集
  9. 菜鸟谈算法和数学对写程序的影响
  10. 算法 python实现(一) 基本常识
  11. splice方法_JavaScript数组_数组方法【一】(二十六)
  12. 数控dda法直线插补程序c语言,DDA法直线插补
  13. 谈到电影,我们收获了什么
  14. lisp块改色_关于CAD制图的技巧:篇九,快速修改颜色。
  15. 个人搭建独立博客,哪个程序比较好用
  16. jQuery实现广告图片轮播切换
  17. Nginx配置中的if判断
  18. 以全局产业观领航智慧城市建设
  19. iOS开发:获取系统WiFi名称,WiFi列表,WiFi强度,WiFi设置密码,WiFi副标题标签
  20. ie9兼容css正常吗,针对IE9的CSS兼容

热门文章

  1. 备战软考(6) 2014年度下半年软考备战分析报告
  2. 内蒙古职称计算机考试文件,2017年内蒙古职称计算机考试复习:word2003(三)
  3. 晶振PPM指标、频率和时间偏差
  4. matlab arctan unwrap,atan和unwrap解卷绕
  5. 详解三次握手和四次挥手
  6. WebWorker简介
  7. 微软24小时服务器,微软推出 AnswerDesk 24小时全天候服务网站
  8. 步进电机细分驱动个人理解
  9. 程序员c语言基础,《软考程序员》C语言基础
  10. MATLAB绘制局部放大图