NEC软件调用接口的实现.docx
《NEC软件调用接口的实现.docx》由会员分享,可在线阅读,更多相关《NEC软件调用接口的实现.docx(29页珍藏版)》请在冰豆网上搜索。
NEC软件调用接口的实现
本科毕业论文(设计)
题目:
NEC软件调用接口的实现
姓名:
学号:
院(系):
专业:
通信工程
指导教师:
职称:
评阅人:
职称:
2012年06月
学位论文原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保障、使用学位论文的规定,同意学校保留并向有关学位论文管理部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权省级优秀学士学位论文评选机构将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
本学位论文属于
1、保密□,在_________年解密后适用本授权书。
2、不保密□。
(请在以上相应方框内打“√”)
作者签名:
年月日
导师签名:
年月日
摘要
天线是一种变换器,它把传输线上传播的导行波,变换成在无界媒介(通常是自由空间)中传播的电磁波,或者进行相反的变换。
凡是利用电磁波来传递信息的,都依靠天线来进行工作。
因此,在现代生活中,天线扮演着至关重要的角色。
对天线的设计、研究,有着非常重要意义。
NEC(数值电磁码)是一种分析一个任意结构组成的电线和表面的自由空间或接地表面的电磁响应的计算机代码,在天线自动设计中起到重要角色。
如果天线参数的数据量过大,人工输入各个数据再进行仿真、优化等,就会耗费大量时间、精力,而且输入准确率得不到保证。
但如果利用一定的程序,达到实现NEC软件的调用,并读取指定输入文件的话,就会节省很多时间、精力,最重要的是保证了NEC仿真软件仿真的各个参数与设计值完全一样,不存在人为输入的错误率问题。
本文在学习天线和NEC软件的理论基础上,结合C语言编程工具,将天线结构参数转换为NEC能识别的输入格式,并调用NEC软件评估天线的性能,然后读取NEC输出文件,进行天线的设计。
具体工作如下:
(1)通过学习天线、NEC软件和C语言知识,了解了天线的基本性能参数和掌握了NEC软件的使用。
(2)介绍了NEC软件的基本知识。
对其结构准则、NEC输入卡格式和使用NEC制作天线的过程进行了阐述和分析。
(3)以C语言为编程工具进行实验和分析。
成功的将用户输入天线的基本参数转换为NEC软件能识别的输入格式,然后将输出的文件作为NEC软件的输入文件进行调用。
最后使用NEC软件制作天线,并查看天线的2D和3D设计图。
结果表明,用NEC软件设计天线具有一定的方便性,并能结合天线的基本性能对天线进行性能分析。
关键词:
天线NEC软件C语言编程
ABSTRACT
目录
第一章引言1
§1.1选题目的和意义1
§1.2天线的介绍1
1.2.1天线的功能及发展现状1
1.2.2天线的分类2
1.2.3天线的特性参数2
§1.3设计内容2
第二章NEC天线仿真软件4
§2.1NEC天线仿真软件简介4
§2.2结构建模准则6
§2.3NEC输入文件8
2.3.1注释卡8
2.3.2结构几何输入卡9
2.3.3程序控制卡10
§2.4NEC软件的简单使用12
第三章C程序调用NEC软件的实现16
§3.1方案的制定16
§3.2难点攻克17
§3.3设计结果18
第四章总结22
致谢23
参考文献24
附录25
第一章引言
§1.1选题目的和意义
无线电通信、广播、电视、雷达、导航、电子对抗、遥感等工程系统,凡是利用电磁波来传递信息的,都依靠天线来进行工作。
在现代生活中,天线扮演着至关重要的角色。
因此,对天线的设计、研究,有着非常重要意义。
NEC(数值电磁码)是一种分析一个任意结构组成的电线和表面的自由空间或接地表面的电磁响应的计算机代码,在天线自动设计中起到重要角色。
如果天线参数的数据量过大,人工输入各个数据再进行仿真、优化等,就会耗费大量时间、精力,而且输入准确率得不到保证。
但如果利用一定的程序,达到实现NEC软件的调用,并读取指定输入文件的话,就会节省很多时间、精力,最重要的是保证了NEC仿真软件仿真的各个参数与设计值完全一样,不存在人为输入的错误率问题。
§1.2天线的介绍
1.2.1天线的功能及发展现状
天线(antenna)是一种变换器,它把传输线上传播的导行波,变换成在无界媒介(通常是自由空间)中传播的电磁波,或者进行相反的变换。
可见,天线是导行电磁波与空间电磁波之间的转换器。
即
因此,“天线可说是波源与空间(space)的匹配件。
”[1]但要产生有效的辐射或接收,它的结构应是一个开放系统[5]。
现如今,人们借助数字计算机来解决大量的天线问题,并使天线的设计前进到一个能利用商用软件进行较准确的预算与优化,还可以进行机电一体化的设计。
在天线测量技术方面,发展了微波暗室和近场测试技术,研制了紧缩天线测试场和利用射电源的测试技术,并建立了自动化测试系统,从而大大提高了天线测试的速度和精度。
天线技术已具有成熟科学的许多特征,但它仍然是一个富有活力的技术领域。
主要的发展方向是:
多功能化(一副天线代替多副甚至很多天线、适应电磁兼容要求)、智能化(提高信息处理能力)、小型化、集成化及高性能化(宽频带、高增益、低旁瓣、低交叉极化等)[3]。
1.2.2天线的分类
按照工作性质分,可分为发射天线和接收天线。
按照基本辐射元形式分,可分为线天线(Wireantenna)、缝天线(Slotantenna)、面天线(Apertureantenna):
线天线:
其基本辐射元是电流元,最基本的形式是对称振子和由对称振子组成的天线阵、环形天线、行波长导线天线及螺旋天线。
广泛应用于长、中、短波及超短波(米波和分米波)波段。
缝天线:
其基本辐射元是缝隙上的磁流元,最常见的是波导缝隙天线阵、微带贴片天线、微带缝隙天线和微带天线阵等。
广泛应用于微波波段。
面天线:
其基本辐射元是口径面上的惠更斯元,最经典的是喇叭天线、抛物反射面天线和透镜天线。
广泛应用于微波波段。
1.2.3天线的特性参数
天线的特性参数是定量评价一副天线性能好坏的指标。
这组参数主要有[2]:
一、天线增益
二、天线效率
三、天线的输入阻抗
四、方向性参数
五、驻波比
六、天线的极化
使用NEC软件对天线进行优化,就是通过仿真优化改变以上参数的数值,从而提高天线性能。
§1.3设计内容
本设计使用C语言进行编程,自动读取天线各个参数,并保存为NEC软件能够识别的.nec格式文件,自动调用NEC软件进行读取输入文件,并利用C程序输出NEC软件生成的.out文件。
本设计采用的是NEC2软件,是NEC1软件的升级版。
具体的工作如下:
(1)学习了天线、NEC软件的知识,并复习了C语言编程。
(2)针对课题目的,研究出了几种编程解决方案。
并逐个方案进行理论、实践验证,最终确定为现有的这套方案。
(3)以指导教师给的试验文件为参考,验证程序是否可行,并进一步改进程序。
在原有的无界面提示下,新增界面提示,并着重参数的准确性,人性化提示用户确认各信息。
调用NEC软件评估不同数据天线的性能,并读取NEC输出文件。
第二章NEC天线仿真软件
数值电磁码(NEC-2)是一种分析一个任意结构组成的电线和表面的自由空间或接地表面的电磁响应的计算机代码。
分析是由诱导电流所形成的积分方程的数值解法而完成的。
§2.1NEC天线仿真软件简介
数值电磁码(NEC-2)是一个面向用户的计算机代码,用来分析天线和其他金属结构的电磁响应的。
它是建立在由源或者入射场在结构上产生的电流的数值解积分方程的基础上的。
这种做法避免了许多其他方法所要求的简单的假设,并提供了一个高度精确的和灵活的电磁分析工具[4]。
NEC天线仿真软件主要利用矩量法进行天线的仿真与计算。
矩量法(methodofmoment)在电磁场分析中有着广泛的应用。
其概念相当简单,基本上是用未知场的积分方程去计算给定媒质中场的分布。
在静电学中,在由点
的电荷分布在点
产生的电位分布可以表示为
(2-1)
这里
实质上是电位分布的源,
是点
和点
间的距离。
然而一般情况下
是未知的,而源区电位的分布是给定的。
因此,为了求出空间每个地方的电位分布,我们必须估计源区的电荷分布
。
设
的一个解是
(2-2)
这里
是源区一些离散位置上预先选定的电荷分布,
是待定未知系数,以式(2-2)代入式(2-1)得
(2-3)
(2-4)
这里
。
所以考虑在
位置的电荷,
可以表示为下述电位的线性组合,即:
(2-5)
所以
(2-6)
由于
在源区是已知的,所以未知系数
可以由
(2-7)
确定,或表示成矩阵形式
(2-8)
求出后,利用式(2-2),就可以确定源区的电荷分布
。
接着就可以用式(2-3)预测空间任意点的电位分布。
§2.2结构建模准则
NEC进行建模的基本结构有两种,一种是短而直的线模型,另一种是平面模型。
保障天线模型的仿真结果精确的关键在于恰当地选取线段或平面。
为了获得高精度的计算结果,线天线的分段数目与面天线的分片数目都应尽可能地大,但随着分段数目与分片数目的增加,程序的运行时间也迅速增加。
在实际使用NEC时,需要权衡考虑求解精度与计算时间,合理地设置分段数目与分片数目。
1、线建模
线段是由两端点的坐标和其半径确定。
使用段来模拟线结构,涉及几何和电器的因素。
几何方面,段和导线的路径尽可能接近,并使用分段线性来表示曲线。
电气部分,主要考虑是段长相对波长之比。
NEC中要描述一个导线段,需要指定2个端点坐标和半径。
对导线段进行分段建模不仅要考虑它的几何参数还要考虑电参数。
从几何学上来说,这些划分后的细导线段要尽可能紧密地沿着导体的方向进行排列,对于导线的弯曲部位则采用分段直导线的方式来建模。
对于电参数,则主要考虑波长(Lambda)和划分后细段的长度(Delta)之间的关系。
通常情况下,对于给指定的频率,划分后细段的长度应小于波长的十分之一。
对于那些长度较长且没有剧列弯曲变化的导线,可以采用比十分之一波长更长的导线分段。
反之,对于那些长度较短的导线或某些需要重点刻画的复杂区域,则可以采用有比二十分之一波长更短的导线分段。
由于电流的计算以划分后导线细段的中心电流为准,因此,划分后的导线细段的尺寸决定了仿真模型电流的计算精度。
为保障足够的计算精度,应避免在划分后的导线细段中,出现过短的分段,一般要保证划分后的导线细段的长度在千分之一波长以上。
天线半径(a)的选取不仅同波长有关,而且还受限于所采用的电场积分方程。
NEC提供了2个近似选项,一个是细导线内核模型,另一个是扩展细导线内核模型。
在细导线内核模型中,将分段表面的电流看成是细丝轴向上的电流。
在扩展细导线内核模型中,则假设电流均匀地分布于分段的表面。
电流产生的场是被一系列以
幂来扩展的确切场的头两个方面来逼近的。
系列中的第一个项,这是独立的,它区分了薄线的内核,而第二个项扩展了较大值时的a的准确性。
高阶近似没有使用,因为他们将需要过多的计算时间。
在下面的一种近似中,只有在轴向方向上的电流才会被考虑,并且由当前圆周周围的电线所产生的影响也没有考虑。
这些近似的准确性取决于,双方的值的a/λ和产生环电流或电流变化的激励的趋势。
除非
是远小于1,否则这些近似的有效性应该加以考虑。
主导轴的电流的数值解的准确性也依赖于delta/a。
小的delta/a值可能会导致在当前计算机附近的电线两端、电压源或集中载荷的无关振荡。
使用延长的薄丝内核,将减小delta/a的限制,可以达到比在正常细丝线中所允许的还要小的比值。
计算段上由它自身的电流所产生的场的研究已经表明,若使用细丝内核,Delta/a必须大于约8,误差小于1%。
若使用扩展的细线内核,要保持相同的精度,Delta/a可小至2。
在目前电流的解决方案中,这两种内核的任何一个,误差往往比单一场估值的少。
合理的电流解法,已获得,在使用薄线核心时Delta/a下降到约2,而对于延长的细丝核心Delta/a下降到0.5。
当一个模型包括Delta/a不到2时的段,扩展的细丝内核选项应该被在EK卡的数据底板中使用。
当扩展薄丝内核选项被选中,它使用在自由的铁丝两端和平行,连接的段之间使用。
但是,正常的薄线内核始终是用弯曲的电线。
因此,在弯曲处,小Delta/a应避免。
在弯曲处使用一个小Delta/a,这通常导致在一个段的中心落在其他段的半径之中,通常会产生严重错误。
在NEC中使用的电流的扩张,对沿着电线、接头处和电线末端的当前的电荷密度作了强制条件。
为了这些条件被正确使用,被电气连接的段必须有同样的终结点。
如果段的相交和它们的末端不相同,NEC将不会允许电流从一个段流向另一个段。
如果他们的端点之间的距离小于长度最短段的
倍左右,那么这些段将被视为连接的。
如果可能的话,相连的段的末端应该使用相同的坐标。
对线段相交的角度,NEC并没有任何形式的限制。
事实上,锐角有可能小到,在另一个段的数量范围内,在一根线段上放置观测点。
数值研究表明,这种重叠导致毫无意义的的结果;因此,最起码的,我们必须使角度足够大以防止重叠。
即使在这种情况下,交点处的电流分布细节有可能是不准确的,即使在较远的地方的电流结果是很准确的。
段的其它的规则如下:
*段不得重叠,因为重叠处的段的电流的划分是不确定的。
重叠的段可能会导致一种独特的矩阵方程。
*相邻段之间的半径的大的变化将会降低精度,特别是,在Delta/a值比较小时。
使半径在若干个段之间按照步长变化,会减少这个问题。
*一个段是需要在每一个网络连接或电压源上放置的点上。
这似乎违背了激发差距作为一个在线上的例外的想法。
然而,在空缺之间的连续是必要的,这样所需的电压会下降,可以被指定作为边界条件。
*电荷密度间断电压源两边的这两个段应平行,并具有同样的长度和半径。
当这个源在连接到地面的段的基时,该段应垂直。
*一个单一的交界处加入的电线数量不能超过30个,因为这受代码长度的限制。
*当导线平行和距离非常近时,段应正确放置,以避免从抵消匹配点和段节点开始的不正确的电流摄动。
*虽然没有进行广泛的测试,但导线之间的距离应尽量有几个半径的差距,这是安全的规定。
§2.3NEC输入文件
NEC软件是通过设置不同的“卡”(卡里存放着天线的各个参数),来对天线建模、仿真等操作的。
以下为本设计用到的部分卡[4]:
2.3.1注释卡
注释卡顾名思义,是注释的作用,对天线进行相关解释说明。
注释卡可以包含一个对运行的简短的描述和结构参数。
在运行输出开始时,这个卡被打印,只是有利于识别,并没有影响计算。
任何字母和数字字符可以在这个卡上打孔。
注释卡的两种形式是:
CM卡:
_________________________________________________________________
/2|5|10|15|20|30|40|50|60|70|80|
/|||||||||||
||||||||||||
|CM|||||||||||
||||||||||||
||||||||||||
||||||||||||
||||||||||||
CE卡:
_________________________________________________________________
/2|5|10|15|20|30|40|50|60|70|80|
/|||||||||||
||||||||||||
|CE|||||||||||
||||||||||||
||||||||||||
||||||||||||
||||||||||||
||||||||||||
当CM卡被读时,第3栏到第80的内容会在输出中打印,并且下一张卡被作为评论卡来阅读的。
当CE卡被阅读时,第3栏到第80被打印,然后评论的阅读被终止。
下面的一张卡必须是几何卡。
因此,CE卡必须总是出现在数据甲板中,并在此之前许多CM卡是需要的以用来描述运行。
2.3.2结构几何输入卡
一、GW(线规格化)/GC卡
目的:
产生一连串的小段,以代表一个直线。
___________________________________________________________
/2|5|10|20|30|40|50|60|70|80|
/||||||||||
|||||||||||
|GW|ITG|NS|XW1|YW1|ZW1|XW2|YW2|ZW2|RAD|
|||||||||||
|||||||||||
|||||||||||
|||||||||||
|||||||||||
上述卡定义了一系列半径为RAD的小段。
如果RAD是零或空白,第二个卡被读入以设置参数,以从线的一端到其它端,逐渐变化段的长度和半径。
只有当RAD是零时才被读入的,第二个卡(GC)的格式是:
___________________________________________________________
/2|5|10|20|30|40|50|60|70|80|
/|b|b||||b|b|b|b|
||l|l||||l|l|l|l|
|GC|a|a|RDEL|RAD1|RAD2|a|a|a|a|
||n|n||||n|n|n|n|
||k|k||||k|k|k|k|
|||||||||||
|||||||||||
|||||||||||
GW卡参数:
ITG:
分配给此线的所有小段的标记码。
NS:
这条线将被划分为小段的数量。
XW1:
端点1的X坐标。
YW1:
端点1的Y坐标。
ZW1:
端点1的Z坐标。
XW2:
端点2的X坐标。
YW2:
端点2的Y坐标。
ZW2:
端点2的Z坐标。
RAD:
线半径,或零表示渐变段的选项。
GC卡参数:
RDEL:
在这个序列中,一个段的长度和前面段的长度的比值。
RAD1:
在这一连串序列中,第一个段的半径。
RAD2:
在这一连串序列中,最后一个段的半径。
二、GE(几何输入的结束)卡
目的:
终止读几何数据卡;如果使用地面平面的话,重设几何数据。
___________________________________________________________
/2|5|10|20|30|40|50|60|70|80|
/|g|b|b|b|b|b|b|b|b|
||p|l|l|l|l|l|l|l|l|
|GE|f|a|a|a|a|a|a|a|a|
||l|n|n|n|n|n|n|n|n|
||a|k|k|k|k|k|k|k|k|
||g|||||||||
|||||||||||
|||||||||||
参数:
gpflag:
几何地平面的标志。
值为0,1,-1三种情况:
值为0:
没有地平面。
值为1:
指示地平面存在。
结构对称性需要修改,并且电流的扩张被修改,以便接触地面(X,Y平面)的段上的电流,被插值到地面下方的它们的映像上(电荷在基上是零)。
值为-1:
指示地面存在。
结构对称视需要而修改。
电流扩展并不被修改,因此,接触到地面的段上的电流将要在地面上趋向于零。
2.3.3程序控制卡
一、FR(频率)卡
目的:
用于指定频率,单位兆赫。
_________________________________________________________________
/2|5|10|15|20|30|40|50|60|70|80|
/|||||||||||
|FR|I|N|B|B|FMHZ|DELFRQ|BLANK|BLANK|BLANK|BLANK|
||F|F|L|L|||||||
||R|R|A|A|||||||
||Q|Q|N|N|||||||
||||K|K|||||||
||||||||||||
参数:
IFRQ:
确定频率步进的类型:
0:
线性步进。
1:
乘法步进。
NFRQ:
频率步进的步数。
FMHZ:
频率,单位兆赫。
DELFRQ:
频率步进增量。
如果该频率步进是线性的,这个量在每次都被加到频率上。
如果是乘法步进,那么这个量是乘法因子。
二、EN(结束运行)卡
目的:
向本程序表明结束所有的执行。
_________________________________________________________________
/2|5|10|15|20|30|40|50|60|70|80|
/|||||||||||
|EN|||||blank|blank|blank|blank|blank|blank|
||b|b|b|b|||||||
||l|l|l|l|||||||
||a|a|a|a|||||||
||n|n|n|n|||||||
||k|k|k|k|||||||
||||||||||||
三、RP(辐射样式)卡
目的:
指定辐射样式的取样参数,并使程序执行。
场的计算参数包括一个径向线地面屏幕,一个绝壁,或表面波场。
_________________________________________________________________
/2|5|10|15|20|