Andy Mo ADI公司
简介
RMS响应式RF功率计被广泛用于测试和测量应用,用于精确测量具有不同波峰因素的信号的RF功率。这些价格高昂的连接设备的精度非常高,依赖于广泛的特性测定和校准;但要保持这种精度,就无法兼顾成本和尺寸。LTC5596是一款功率在100 MHz到40 GHz之间的rms响应式集成电路,成本更低,尺寸更小,检测范围在35 dB或以上,可用于制造手持式宽带功率计,或者作为嵌入式功率计装入电路中。
LTC5596采用可控的线性dB传递函数,具备出色的频率平坦度,易于校准 - 如单个中频两点校准一般基础的校准,在150 MHz至30 GHz频率范围内,测量精度为±1 dB。LTC5596具备低功耗(仅100 mW)和集成特性,因此能够用在电路和手持式电源监控解决方案中。
图1中电源供电的示例可以说明这整套方案相当简单,其中,宽带RF功率计可使用已有的LTC5596演示电路(DC2158A)、I2C LCD显示器,以及运行短小的固件程序的DC2026C Linduino板(见附录)构建。
表1. 物料清单
电路装配
图2显示了装配方案。Linduino板的模拟IN电池中包含多个ADC输入,这里采用A0来作为示例介绍LTC5596检波器的输出。该显示器采用I2C接口,简化了与Linduino板之间的连接。整个电路通过Linduino板的辅助端口供电,包括LTC5596板和连接器。
固件
所需的所有固件都在Linduino板上运行。固件的主要功能是将测量到的模拟输入(V)转换为RF功率(dBm),并在LCD显示器上显示。为了做到这一点,我们建议用两点校准法,在LTC5596的线性传递函数上找到斜率和截点——以线性形式表示的VOUT和RF功率:
其中,x表示输入功率(dBm),y表示LTC5596的输出电压(VOUT),与ADC数字码成正比,m表示斜率,b表示x截点(VOUT达到0)。固件依据测量所得的y来计算x,b和m的值则来自于校准(详见下方说明)。对多个读数取平均值可以帮助最小化噪声带来的影响。Linduino的板载ADC为10位分辨率,与约4.9 mV的LSB尺寸对应。LTC5596的典型斜率为28.5 mV/dB,因此测量分辨率约为0.2 dB。附录显示的固件代码示例在5.8 GHz下使用,用于显示输入功率(dBm)。
校准
虽然LTC5596采用了线性dB传递函数。但器件间差异会导致出现多个传递函数斜率和轴截点。由于传递函数是线性的,所以校准很简单,只需采用两点校准(如果需要,则采用多点校准)就可以确保准确性。
图3显示了针对一个典型的传递曲线的两点校准,该曲线是5.8 GHz时LTC5596的曲线。这两点被用于求取斜率和x截点。
本例中,
这些斜率和截点值都被用于附录所示的数字码中。
线性误差
在数据手册中,对数截点是指图中的x截点。线性误差是指理想直线与检波器实际测量的功率之间的差异。可用的检测范围一般是指线性误差小于1 dB的范围。因此,可以利用图4所示的x截点和斜率来计算误差,这显示的是采用两点校准时,系统能够达到的典型设备的线性误差。
结论
LTC5596体积小、极为简单,且所需的功耗低,在100 MHz至40 GHz范围内,可以实现精准的RF功率测量。它让完整的解决方案具备小巧、高效和精准的特点,足以满足手持便携式RF功率计的需求,甚至可以放入电路之内,作为嵌入式RF功率计。
由于LTC5596具备出色的线性dB宽带传递函数,固件开销达到最低。两点校准可在单个中频带频率下进行,具有不错的准确度;也可以在多频率下进行,以提高准确度。更重要的是,无论采用何种调制方式,LTC5596 rms检波器都能够准确测量功率。即使是简单的两点校准,结果也相当准确——不考虑调制波形的情况下,误差小于0.3 dB。与之相反,其他价格高昂的商业设备则需要密集校准和特性测定。
附录:Linduino板采用的将ADC读数转化为dBm,以及驱动显示器的示例代码
#include
#include
LiquidCrystal_I2C lcd(0x3F,20,4); //将LCD地址设置为0x3F,
显示为20个字符和4行
int analogPin = 0; //设置模拟IN通道0
double val = 0;
double slope = 0.0285; //用电压表示的每dB斜率
double xint = -39; //对数截距(dBm,5.8GHz时)
double power = 0.0;
double totalval=0.0;
void setup()
{
lcd.init(); //初始化lcd
lcd.backlight();
lcd.setCursor(0,0);
lcd.print(“LTC5596 RMS DETECTOR”);
lcd.setCursor(8,3);
lcd.print(“dBm”);
}
void loop()
{
for(int i=0;i {
val = analogRead(analogPin);
delay(10);
totalval= totalval + val;
}
totalval=totalval/20.0;
power = (totalval*0.0049/slope)+xint; //转换为电压值,
计算dBm
lcd.setCursor(0,3);
lcd.print(power);
}
作者简介
Andy Mo是ADI公司的一名RF应用工程师。在此之前,他作为RF电路设计应用工程师,在凌力尔特(现在已成为ADI的一部分)工作了10多年。他拥有加州大学圣巴巴拉分校的电气工程硕士学位,主修通信电子。联系方式 andy.mo@analog.com 。
全部0条评论
快来发表一下你的评论吧 !