Desk study of opportunity to improve linearity.
At Chinese AD8307 power measurement module #2 I showed measurement of the linearity of an AD8307 based RF power meter.
The specification linearity is +/-1dB, which is poorer than one might like in a power measuring instrument.
The diagram above from the AD8307 datasheet shows the internal architecture, including 9 stages of cascaded log detector cells that attempt to give a log response over around 100dB range. The issue is that in the transition region between detector cells, error is worse than well inside an individual detector cell's range.
Above is a sweep from -65 to -6dBm at 10MHz after calibration of slope and offset. The linear fit to the blue curve shows slope is 20mV/dB and intercept 1.8015 for 0dBm means the offset is -1.8015/0.02=-90.08dBm. Log conformance is 0.2dB (well within spec at this frequency, temperature etc).
The orange line shows the cyclic effect of error in transition between log detector cells.
A possible solution?
As the intended display for a project RF power meter is digital, the question arises whether log conformance error can be reduced by a table lookup of corrections based on measurement of an individual instrument. In fact, a table of 128 cells of 4 bit corrections to be applied to the 10 bit ADC output would appear to provide significant improvement in linearity.
The problem is…
Much as that appears easy to implement, and tempting, the problem is that log conformance error depends on frequency and temperature (and more).
It may turn out that the log conformance error at ‘normal' temperatures, and over a limited frequency range (eg HF) may be largely correctable, so a series of measurements need to be made of log conformance error at a range of frequencies from say 1-50MHz to inform further work (and provide data for the corrections table). To that end, a special version of capture software will be written to run on the Arduino to output the raw ADC count for separate processing and simulation.
The prototype RF power meter
Above is the prototype RF power meter, waiting for parts again. The box contains the AD8307 module, a 16×2 LCD display, an accurate real time clock (to timestamp measurement records), and processor. I have decided to use an Arduino Pro Mini processor board for the flexibility to use it with an external RS232 host connection, or serial data logging to micro SD card, I2C EEPROM, I2C Dataflash.