分阶段。CustomMicrophoneElement
自定义麦克风元件
描述
的CustomMicrophoneElement
系统对象™使用自定义空间响应模式对麦克风元素建模。
计算麦克风元件在指定方向上的响应:
创建
分阶段。CustomMicrophoneElement
对象并设置其属性。使用参数调用对象,就像调用函数一样。
有关系统对象如何工作的详细信息,请参见什么是系统对象?
创建
描述
创建一个自定义麦克风系统对象,麦克风
=分阶段。CustomMicrophoneElement麦克风
,具有默认的对象属性。
创建一个自定义麦克风对象,麦克风
=分阶段。CustomMicrophoneElement (名称=值
)麦克风
,将每个指定的属性设置为指定的值。您可以以任意顺序指定额外的名-值对参数,如(Name1 = Value1
、……以=家
).
例子:麦克风=阶段性。CustomMicrophoneElement(FrequencyVector=[0 1000],FrequencyResponse=[0 -10],PolarPatternFrequencies=[100 1000])
创建一个自定义麦克风元件,其频率响应指定为0和1000hz。在这些频率上的频率响应为0和- 10db。模式频率为100和1000hz。
属性
除非另有说明,属性为nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放
功能解锁它们。
如果属性为可调,您可以随时更改其值。
有关更改属性值的详细信息,请参见使用系统对象的MATLAB系统设计。
FrequencyVector
- - - - - -操作频率
[0 1 e20]
(默认)|1 -l正的实值向量
测量单元响应的频率,用1 × -表示l正的实值向量。向量元素的大小必须是递增的。传声器元件在指定频率范围之外没有响应。单位是Hz。
数据类型:双
FrequencyResponse
- - - - - -频率响应
[0 0]
(默认)|1 -l实值向量
在定义的频率下测量的频率响应FrequencyVector
属性,指定为a1-by-l实值向量。方法中指定的频率向量的长度必须相等FrequencyVector
财产。单位为dB。
数据类型:双
PolarPatternFrequencies
- - - - - -极坐标模式测量频率
1 e3
(默认)|1 -米正的实值向量
测量极性模式的频率,用a1-by-表示米正的实值向量。测量频率必须在规范规定的频率范围内FrequencyVector
财产。单位是Hz。
数据类型:双
PolarPatternAngles
- - - - - -极坐标测量角
(180:180)
(默认)|1 -N实值向量
用极坐标模式的度数来测量角度,用1 × -表示N实值向量。角度是从麦克风的中心拾取轴测量的,并且必须介于两者之间-180°和180°、包容。
数据类型:双
PolarPattern
- - - - - -极地模式
全向模式,0 dB响应(默认)|米——- - - - - -N实值矩阵
麦克风元件的极性图案,指定为米——- - - - - -N实值矩阵。米中是否规定了测量频率的数目PolarPatternFrequencies
财产。N测量角的数目是否在PolarPatternAngles
财产。矩阵的每一行表示在表中指定的相应频率上测量的极模式的幅度PolarPatternFrequencies
属性中指定的相应角度PolarPatternAngles
财产。
该模式被假定在仰角为0的方位角平面上测量,其中中心拾取轴被假定为0度方位角和0度仰角。极性模式被假定为围绕中心轴对称,因此麦克风的响应模式在3-D空间可以从极性模式构建。单位为dB。
数据类型:双
使用
语法
描述
返回麦克风的幅度响应,分别地
=麦克风(频率
,盎
)分别地
中指定的频率频率
和指定的方向盎
。
请注意
对象在第一次执行时执行初始化。这个初始化锁定nontunable属性以及输入规范,例如输入数据的维度、复杂性和数据类型。如果更改不可调属性或输入规范,System对象将发出错误。要更改不可调属性或输入,必须首先调用释放
方法解锁对象。
输入参数
频率
- - - - - -信号的频率
1 -P正值的行向量
信号频率,用1 × -表示P正值的行向量。单位是Hz。
盎
- - - - - -反应的方向
1 -问实值向量|2 -问实值矩阵
响应方向,指定为1 × -问实值向量或者2 ×问实值矩阵。
如果
盎
是1 × -吗问向量,每个元素指定一个方向的方位角。方位角必须介于两者之间-180年°和180°、包容。在这种情况下,假设对应的仰角为零。如果
盎
是一个2 × q矩阵,矩阵的每一列都以(方位;海拔)
。方位角必须介于两者之间-180年°和180°、包容。仰角必须介于两者之间-90年°和90°、包容。
单位是度。
输出参数
分别地
-麦克风响应
问——- - - - - -P实值矩阵
麦克风大小响应,返回为问——- - - - - -P实值矩阵。矩阵包含麦克风元件在点处的响应问中指定的角度盎
和P载于频率
。
对象的功能
要使用对象函数,请将System对象指定为第一个输入参数。例如,释放system对象的系统资源obj
,使用这种语法:
发行版(obj)
专用于天线和换能器元件系统对象
波束宽度 |
计算并显示传感器单元图的波束宽度 |
方向性 |
天线或传感器元件的方向性 |
isPolarizationCapable |
天线元件极化能力 |
模式 |
绘制天线或换能器元件的方向和图形 |
patternAzimuth |
绘制天线或换能器元件的方向性和方向图 |
patternElevation |
绘制天线或换能器元件的指向性和标高图 |
例子
自定义麦克风响应
构造一个工作频率为700hz的自定义心脏型麦克风。在说明中查找麦克风响应:(0,0)度数、方位角和仰角(40、50)度数、方位角和仰角。
麦克风= phase . custommicrophoneelement;麦克风。PolarPatternFrequencies = [500 1000]; microphone.PolarPattern = mag2db([…0.5 + 0.5 * cosd (microphone.PolarPatternAngles);…0.6 + 0.4 * cosd (microphone.PolarPatternAngles)]);Fc = 700;Ang = [0 0;40 50];Resp =麦克风(fc,ang)
resp =2×11.0000 - 0.7424
自定义心脏麦克风响应
创建一个自定义心形麦克风,并计算麦克风在500,1500和2000hz两个方向上的响应:(0,0)方位角和仰角,以及(40、50)方位角和仰角。然后显示麦克风图案。
麦克风=阶段性。CustomMicrophoneElement (…PolarPatternFrequencies = [500 - 1000]);麦克风。PolarPattern = mag2db([…0.5 + 0.5 * cosd (microphone.PolarPatternAngles);…0.6 + 0.4 * cosd (microphone.PolarPatternAngles)]);
获得两个方向的麦克风响应。
Resp =麦克风([500 1500 2000],[0 0;40 50]“)
resp =2×31.0000 1.0000 1.0000 0.7424 0.7939 0.7939
显示麦克风功率模式。
模式(180:180麦克风,500年,0,“类型”,“powerdb”)
自定义麦克风元素的指向性
计算自定义麦克风元素的指向性。创建一个自定义心脏型麦克风,并绘制麦克风在700 Hz时的响应图,用于-90度和+90度之间的海拔。
定义自定义麦克风元素的模式。系统对象的PolarPatternAngles
属性的默认值为(180:180)
度。
myAnt = phase . custommicrophoneelement;myAnt。PolarPatternFrequencies = [500 1000]; myAnt.PolarPattern = mag2db([…0.5 + 0.5 * cosd (myAnt.PolarPatternAngles);…0.6 + 0.4 * cosd (myAnt.PolarPatternAngles)]);
计算指向性作为0度方位角上仰角的函数。
Elev = [-90:5:90];Azm =零(大小(elev));Ang = [azm;elev];频率= 700;d =指向性(myAnt,freq,ang);情节(海拔高度,d)包含(的海拔(度)) ylabel (“方向性(dBi)”)
方向性最大 海拔高度。
自定义麦克风不支持极化金宝app
证明分阶段。CustomMicrophoneElement
麦克风元件不支持极化。金宝app
麦克风= phase . custommicrophoneelement;isPolarizationCapable(麦克风)
ans =逻辑0
返回值0
显示自定义麦克风元件不支持极化。金宝app
心脏型麦克风的方位角功率模式与指向性
设计一个心脏型麦克风,工作频率范围在500 - 1000hz之间。
sccustmike = phase . custommicrophoneelement;sCustMike。PolarPatternFrequencies = [500 1000]; sCustMike.PolarPattern = mag2db([…0.5 + 0.5 * cosd (sCustMike.PolarPatternAngles);…0.6 + 0.4 * cosd (sCustMike.PolarPatternAngles)]);
显示在500hz和1000hz响应的方位角切割的极坐标图。
Fc = 500;模式(sCustMike [fc 2 * fc], [180:180], 0,…“CoordinateSystem”,“极地”,…“类型”,“powerdb”);
将指向性画为两个相同频率的折线图。
模式(sCustMike [fc 2 * fc], [180:180], 0,…“CoordinateSystem”,“矩形”,…“类型”,“方向性”);
U/V空间中心脏型麦克风的功率分布
画一个 自定义心脏型麦克风的功率模式,设计用于在频率范围500- 1000hz内工作。
创建一个心脏型麦克风。
sccustmike = phase . custommicrophoneelement;sCustMike。PolarPatternFrequencies = [500 1000]; sCustMike.PolarPattern = mag2db([…0.5 + 0.5 * cosd (sCustMike.PolarPatternAngles);…0.6 + 0.4 * cosd (sCustMike.PolarPatternAngles)]);
绘制功率图。
Fc = 500;模式(sCustMike、fc (1: .01:1), 0,…“CoordinateSystem”,“紫外线”,…“类型”,“powerdb”);
心脏型麦克风在限定角度范围内的三维图形
绘制自定义心脏型麦克风的3-D幅度模式,方位角和仰角均限制在-40至40度范围内,增量为0.1度。
创建一个自定义的带有心形图案的麦克风元素。
sccustmike = phase . custommicrophoneelement;sCustMike。PolarPatternFrequencies = [500 1000]; sCustMike.PolarPattern = mag2db([…0.5 + 0.5 * cosd (sCustMike.PolarPatternAngles);…0.6 + 0.4 * cosd (sCustMike.PolarPatternAngles)]);
绘制三维星等图。
Fc = 500;模式(fc, sCustMike [40:0.1:40], [40:0.1:40],…“CoordinateSystem”,“极地”,…“类型”,“efield”);
缩小角范围的心脏型麦克风的方位模式
绘制自定义心脏线麦克风在仰角0度和30度处的方位指向性模式。
创建一个自定义的带有心形图案的麦克风元素。
sccustmike = phase . custommicrophoneelement;sCustMike。PolarPatternFrequencies = [500 1000]; sCustMike.PolarPattern = mag2db([…0.5 + 0.5 * cosd (sCustMike.PolarPatternAngles);…0.6 + 0.4 * cosd (sCustMike.PolarPatternAngles)]);
画出500hz的指向性。
Fc = 500;patternAzimuth (sCustMike fc, 30 [0])
方法绘制缩小方位角范围的指向性方位
参数。注意比例的变化。
Fc = 500;patternAzimuth (sCustMike fc, 30] [0,…“方位”-40年,[:.1:40])
心脏型麦克风在减小角范围上的仰角模式
绘制自定义心脏型麦克风在0和45度方位角的仰角指向性模式。
创建一个自定义的带有心形图案的麦克风元素。
sccustmike = phase . custommicrophoneelement;sCustMike。PolarPatternFrequencies = [500 1000]; sCustMike.PolarPattern = mag2db([…0.5 + 0.5 * cosd (sCustMike.PolarPatternAngles);…0.6 + 0.4 * cosd (sCustMike.PolarPatternAngles)]);
画出500hz的指向性。
Fc = 500;patternElevation (sCustMike fc, 30 [0])
方法绘制缩小方位角范围的指向性方位
参数。注意比例的变化。
Fc = 500;patternElevation (sCustMike fc, 45 [0],…“高度”-40年,[:.1:40])
算法
自定义传声器元件的总响应是其频率响应和空间响应的组合。分阶段。CustomMicrophoneElement
使用最近邻插值计算两个响应,然后将它们相乘以形成总响应。当PolarPatternFrequencies
属性值为非标量,则对象指定多极模式。在这种情况下,插值使用最接近指定频率的极坐标模式。
扩展功能
C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。
使用注意事项和限制:
模式
,patternAzimuth
,patternElevation
,plotResponse
方法不受支持。金宝app看到系统对象在MATLAB代码生成(MATLAB编码器)。
版本历史
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。