WLAN测试 API接口说明

NI提供的WLAN工具,带有Labview和C的接口库。可使用这些库开发出各种测试需要的功能,这些库的使用请参考官方文档。

ATEUnit的DLL库

我们还提供了一个根据WLAN产测需要功能,封装的C#库niVSTATEDotNetAPI.dll。该库可以更方便WLAN产测程序使用。该库中有关WLAN部分的API定义如下表:

命名空间 函数 返回值 参数 备注
tn.niModinst niModInstFindRFSADevices (UInt32)数组长度 out DeviceNames: 设备名数组
out DeviceModels: 设备型号数组
out DeviceSerials: 设备序列号数组
查找当前连接的VST卡
tn.niWlanAte niWlanOpenSession (Boolean)是否成功 in Name: 设备名 打开会话
tn.niWlanAte niWlanCloseSession (Boolean)是否成功 关闭会话
tn.niWlanAte niWlanGerateWaveform (void) in CarrierFrequency: 频率,单位Hz。
in PowerLevel: 发送的功率, 单位dBm。
in Standard: 协议。
in ChannelBandwidth: 信道带宽,单位Hz。
支持5+e6/1+e7/2+e7/4+e7/8+e7/16+e7。
in SendPackets: 发送包数量。
⇐0为持续发送并立即返回;
>0将发送指定数量并等待完成后返回。
in MCSIndex: MCS速率,范围为0-13。
in OFDMDataRate: 11A/G速率。
in DSSSDataRate: 11B速率。
发送波形
tn.niWlanAte niWLANIQMeasurement (void) in CarrierFrequency: 频率,单位Hz。
in ReferenceLevel: 测量参考电平,单位dBm。
建议尽量接近的值,以使Auto值更准。
多次测量可配合UsingLevel加快速度。
in AutoLevelNumber: 自动调整的次数。0不使用。
in Standard: 协议。
in ChannelBandwidth: 信道带宽,单位Hz。
in OFDMChannelEstimationMethod: OFDM信道评估方式。
0:Preamble,1:Preamble and Data。
in AmplitudeCorrectionEnabled: 是否进行幅度修正。
0:Disable,1:Enable。
in OFDMPhaseTrackingMethod:
0: Standard,2:None,3:Standard with Cubic Spline Fit.
in NumberOfAverages: 结果平均数量。
out UsingLevel: 使用的ReferenceLevel值。
out Evm: EVM结果,单位dB。非11b为RMS,11b为Max。
out CarrierFrequencyOffset: 频率偏移,单位Hz。
out OfdmSpectralFlatnessMargin: 单位dB。
out OfdmCarrierFrequencyLeakage: 单位dB。
out AverageGatedPower: 单位dBm。
out SpectralMaskViolation: 单位%。
测量接收波形
tn.niWlanAte niWLANPowerMeasurement (void) in CarrierFrequency: 频率,单位Hz。
in ReferenceLevel: 测量参考电平,单位dBm。
建议尽量接近的值,以使Auto值更准。
多次测量可配合UsingLevel加快速度。
in AutoLevelNumber: 自动调整的次数。0不使用。
in Standard: 协议。参考上面。
in ChannelBandwidth: 信道带宽,单位Hz。
in NumberOfAverages: 结果平均数量。
out UsingLevel: 使用的ReferenceLevel值。
out TxPowerPeakPower: 单位dBm。
out TxPowerAveragePower: 单位dBm。
out TxPowerAveragePowerWithIdleTime: 单位dBm。
仅测量接收功率
tn.niWlanAte niWLANSpectrumPeak (Double)Peak frequency in CenterFrequency: 频率,单位Hz。
in ReferenceLevel: 测量参考电平,单位dBm。
建议设置比需要大一点的值。
in Timeout: 超时,单位s。
in ResolutionBandwidth: 频率,单位Hz。
测量单载波频率
tn.niWlanAte niWLANClearWaveform (void) 清除波形发送
tn.niSwitch5541 niSwitch5541OpenSession (Boolean)是否成功 in VSTName: 连接5541控制线的VST的资源名称,如RIO0。
out Serial: 所连5541的序列号。
打开Switch会话
tn.niSwitch5541 niSwitch5541CloseSession (Boolean)是否成功 关闭Switch会话
tn.niSwitch5541 niSwitch5541Reset (void) 复位Switch控制值
tn.niSwitch5541 niSwitch5541GetTemperature (Double)当前温度 获取Switch当前内部温度
tn.niSwitch5541 niSwitch5541SaRoute (void) in InstPort: 0/1,对应仪器端的接口接收。
in DutPort: -1/0-7。其中-1表示关闭,0-7表示对应端口。
设置接收路由
tn.niSwitch5541 niSwitch5541SgDefaultAtten (void) in DutPort: 对应0-7的端口号。
in Atten1: 端口开启时,衰减器1的值。
in Atten2: 端口开启时,衰减器2的值。
设置发送路由开启时增益值
tn.niSwitch5541 niSwitch5541SgRoute: (void) in InstSwap: 0时Inst0对应0-3,Inst1对应4-7;1时Inst0对应4-7,Inst1对应0-3。
in DutPortMask: 0-7端口开启的掩码。
设置发送路由

枚举值定义:

类型 值含义
Standard 0: 80211AG_OFDM
1: 80211BG_DSSS
2: 80211G_DSSS_OFDM
3: 80211N_MIMO_OFDM
4: 80211AC_MIMO_OFDM
5: 80211AH_MIMO_OFDM
6: 80211AF_MIMO_OFDM
7: 80211J_OFDM
8: 80211P_OFDM
9: 80211AX_MIMO_OFDM
OFDMDataRate 0: 6M
1: 9M
2: 12M
3: 18M
4: 24M
5: 36M
6: 48M
7: 54M
DSSSDataRate 0: 1M
1: 2M
2: 5.5M
4: 11M

注:使用上述函数需要处理异常。如果没有许可文件,在Open Session时会失败。

ATEUnit的服务器

我们提供了ATEUnitRemote服务器程序,通过使用JSON接口进行远程调用。在ATEUnitRemote服务器中,集成了线损测试和自动计算功能, 并可以支持多个客户端同时连接使用。