麻烦codegen定制天线模式

8视图(30天)
Tor Viscor
Tor Viscor 2021年5月6日
评论道: Tor Viscor2021年5月11日
你好,
我试图使用codegen定制天线模式,基本上这个,
模式= phased.CustomAntennaElement (“AzimuthAngles”、x.azim ElevationAngles, x。海拔高度,……
“MagnitudePattern”(x.pat_azEl) PhasePattern, 45 *的(大小(x.pat_azEl)));
但我得到以下错误消息:
”? ? ?表达式不能被简化为一个常数。”,指出CustomAntennaElement的第1014行。m函数时设置阶段。
Matlab编码器不支持定制天线功能吗?万博1manbetx有人能给我一些建议吗?
1评论
宏磊陈
宏磊陈 2021年5月8日
Thansk报告。我们idenfitied问题,将在未来的版本中修复它。请参阅下面的ansewr工作区。

登录置评。

答案(1)

宏磊陈
宏磊陈 2021年5月7日
我不知道x是如何形成的,但这里有一个例子可以看一看,生成代码。主要的思想是推动模式计算到一个单独的功能和使用编码器。外在首先计算然后另存为一个常数。
主要功能是这样的
函数模式= phasedArrayWrapper ()
coder.extrinsic (“getPattern”);
AzimuthAngles = 180:180;
ElevationAngles = 90:90;
MagnitudePattern = coder.const (getPattern (AzimuthAngles ElevationAngles));
phasepattern = 0(大小(MagnitudePattern));
蚂蚁= phased.CustomAntennaElement (“AzimuthAngles”AzimuthAngles,“ElevationAngles”ElevationAngles,
“MagnitudePattern”MagnitudePattern,“PhasePattern”,phasepattern);
模式= ant (3 e8, (0, 0));
结束
支持函数万博1manbetx,它需要在路径,下面的样子
函数帕特= getPattern (AzimuthAngles ElevationAngles)
帕特= mag2db (repmat (cosd (ElevationAngles)”,
1,元素个数(AzimuthAngles)));
结束
codegen命令如下所示
> > codegen phasedArrayWrapper
代码生成成功。
HTH
1评论
Tor Viscor
Tor Viscor 2021年5月11日
谢谢你的回答。
我试着你的方式也类似,通过储蓄模式信息变量和加载codegen的主要代码。但都导致错误消息。与模式类型可能是一个问题我想使用定制的天线功能?
请见下文:
%这个模式中使用自定义天线元素功能,保存在“cosVar”
天线= phased.CosineAntennaElement;
TRM = phased.ULA (' NumElements ' 6“元素”,天线,‘ArrayAxis’,‘y’,‘ElementSpacing’,λ/ 2);
(azim pat_azEl,海拔高度)=模式(TRM、fc、180:0.05:180 90:0.05:90);
保存(‘cosVar.mat’,‘pat_azEl’,‘azim’,海拔高度);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
coder.load (“cosVar”)
TRM_pattern = phased.CustomAntennaElement (azim‘AzimuthAngles’,‘ElevationAngles’,海拔高度,“MagnitudePattern”(pat_azEl),“PhasePattern”, 0 *的(大小(pat_azEl)));

登录置评。

s manbetx 845


释放

R2021a

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!