返回列表 发新帖
收起左侧
楼主: j921y - 

【18X18圆孔径相控阵天线】自编matlab程序

    [复制链接]
发表于 2012-5-17 19:54:47  | 显示全部楼层
本帖最后由 j921y 于 2012-5-17 20:57 编辑

嗯,程序没有考虑元因子方向性,认为是由全向天线组成的阵列,由方向图乘法原理可以得有向阵元阵列方向图。
程序我没有加注释,大家看起来可能有点费劲,这主要是防止大家不加吸收直接拿来做论文,呵呵。。
有兴趣可以研究下,程序里面主要是分为3个部分:
1、参数设置(更改Nr可以得到更大阵元数量的圆孔径阵列;d是阵元间最小间距)
2、圆孔径阵面形成(里面是圆阵排布的核心,方法有很多中,个人认为这样编程显得简单)
3、方向图的计算及显示
如果大家要看3D的方向图,需要更改phi的范围,将phi改成数组。显示命令用mesh即可。
使用mesh要将theta、phi由向量变成矩阵。
比如在程序第一部分,theta(范围0~pi/2)是1x900,phi(范围0~2*pi)是1x3600长度的向量,需将theta变成900x3600,phi也变成900x3600的矩阵形式。
最简洁的matlab语句是:
theta = theta';
THETA = theta(:,ones(1,3600));
PHI = phi(ones(900,1),:);
mesh(THETA,PHI,AF);
zlim([-80 0]);
xlabel('\theta :rad');
ylabel('\phi :rad');
zlabel('旁瓣电平:dB');
就可以了显示3D方向图了。(这几行代码是加在画图部分的)
下图是低精度的示意图,不是按照900x3600仿真的
3Dbeam1.jpg

当然你也可以使用以下语句来绘制3D方向图:
首先在第4、29行更改:
phi = 0:0.01:2*pi;
theta = 0:0.01:pi/2;  
最后绘图用:
U = sin(theta)'*cos(phi);
V = sin(theta)'*sin(phi);
mesh(U,V,AF);
zlim([-80 0]);
xlabel('U');
ylabel('V');
zlabel('旁瓣电平:dB');
3Dbeam2.jpg
如果你的计算机CPU不是4核的推荐使用低精度的theta、phi画3D方向图,
900x3600的数据量会计算一定时间,尤其是当Nr取值较大的时候。

以己之微·网博天下:博览微网之术·创造成功之路!
发表于 2012-5-17 21:02:02  | 显示全部楼层
以己之微·网博天下:博览微网之术·创造成功之路!
发表于 2012-5-17 21:04:08  | 显示全部楼层
00d44 发表于 2012-5-11 08:58
支持下原创,欢迎更多原创性文章交流

OK,下了一些论坛的资料,自己也传点,互相交流~~
以己之微·网博天下:博览微网之术·创造成功之路!
发表于 2012-5-31 11:02:57  | 显示全部楼层
厉害嘎
以己之微·网博天下:博览微网之术·创造成功之路!
发表于 2012-9-14 17:57:53  | 显示全部楼层
虽然现在还没发下载,还是很感谢楼主分享。
以己之微·网博天下:博览微网之术·创造成功之路!
发表于 2012-12-24 23:31:27  | 显示全部楼层
太贵了,下不起啊
以己之微·网博天下:博览微网之术·创造成功之路!
发表于 2013-2-13 15:43:31  | 显示全部楼层
可惜不能下载
以己之微·网博天下:博览微网之术·创造成功之路!
发表于 2013-3-15 20:16:36  | 显示全部楼层
好东西啊
以己之微·网博天下:博览微网之术·创造成功之路!
发表于 2013-12-26 21:55:06  | 显示全部楼层
擦还要技术分的啊,没有啊,怎么弄到技术分?
以己之微·网博天下:博览微网之术·创造成功之路!
发表于 2014-1-6 14:26:52  | 显示全部楼层
thank you for sharing
以己之微·网博天下:博览微网之术·创造成功之路!

发表回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回列表 客服中心 搜索
关于我们
关于我们
关注我们
联系我们
帮助中心
资讯中心
企业生态
社区论坛
服务支持
资源下载
售后服务
推广服务
关注我们
官方微博
官方空间
官方微信
快速回复 返回顶部 返回列表