Hay veces que nos encontramos con circuitos característicos como estos, los atenuadores en PI. De hecho, es típico que dados sus valores de resistencias, de forma unívoca, podemos conocer su valor de atenuación y viceversa. Esta herramienta de calculadora de circuitos en PI viene a facilitarnos esa traslación de valores de resistencias a atenuaciones y también al revés. Espero que os ayude.

Para utilizar esta calculadora basta con introducir los valores para R1 y R2 y se calculará las perdidas del atenuador (pérdidas de retorno) y la atenuación del mismo para una impedancia dada.

Alternativamente, puede generar R1 y R2 para un valor deseado de atenuación.

{source}
<!-- Implementacion Javascript de la herramienta RF -->
<script type="text/javascript">
function log10(x)
{
return Math.log(x)/Math.log(10);
}
function calculate()
{
var R1=parseFloat(document.getElementById("R1").value);
var R2=parseFloat(document.getElementById("R2").value);
var Zo=parseFloat(document.getElementById("Zo").value);

var R2p = (R2*Zo)/(R2+Zo);
var ZL = (R2*(R2p+R1))/(R2+(R2p+R1));
var RL = ((ZL-Zo)/(ZL+Zo));
var RLdB = 20 * log10(Math.abs(RL));

//calculate with stated input power
var Pin = 1;
var Vsource = 2 * Math.sqrt(Zo*Pin);
var Iin = Vsource / (Zo + ZL);
var Vin = Vsource - (Iin * Zo);
var Vou = Vin * (R2p/(R2p+R1));
var Pou = Vou*Vou/Zo;

var gain = 10*log10(Pou/Pin);
var atten = -1 * gain;

RLdB = RLdB.toPrecision(4);
atten = atten.toPrecision(4);

document.getElementById("RL").value=RLdB;
document.getElementById("attenuation").value=atten;
}
function generate()
{
var dbin=parseFloat(document.getElementById("dbin").value);
var Zo=parseFloat(document.getElementById("Zo").value);
var k=Math.pow(10,(dbin/20));
var R1 = (Zo/2)*((Math.pow(k,2)-1)/k);
var R2 = Zo*((k+1)/(k-1));
R1 = R1.toPrecision(5);
R2 = R2.toPrecision(5);
document.getElementById("R1").value=R1;
document.getElementById("R2").value=R2;
calculate();
}
</script>
<div id="content">
Para utilizar esta calculadora basta con introducir los valores para R1 y R2 y se calculará las perdidas del atenuador (pérdidas de retorno) y la atenuación del mismo para una impedancia dada.<br />
Alternativamente, puede generar R1 y R2 para un valor deseado de atenuación.
<p></p>
<!-- Esta es la implementación en cajas de la herramienta RF -->
<table class="javaBOX" cellspacing="10" cellpadding="10">

<tr>

<td valign="top" width="22%" >
<strong>R1 (&#937)</strong><input type="text" class="indat" id="R1" />

<strong>R2 (&#937)</strong><input type="text" class="indat" id="R2" />
<strong>Zo (&#937)</strong><input type="text" class="indat" id="Zo" value="50" />

<input type="button" value="Calcular" onclick="calculate()" />
</td>

<td align="center" colspan="4"><img alt="Diagrama del Circuito" src="/images/articulos/PI_circuit_a.JPG" width="298" height="98" /></td>

<td valign="top" colspan="3">
<strong>Atenuacion (dB)</strong><br />

<input type="text" readonly="readonly" class="roi" id="attenuation" /><br />
<strong>Perdidas de retorno (dB)</strong><br />

<input type="text" readonly="readonly" class="roi" id="RL" />
</td>

</tr>
<tr>

<td></td>
<td valign="top" ><strong>Atenuacion (dB)</strong><br />
<input type="text" class="indat" id="dbin" />
</td>
<td valign="top" colspan="3"><br />
<input type="button" value="Generar" onclick="generate()" />
</td>

<td></td>
</tr>
</table>
<br />
<div class="clear"></div>
{/source}

Notas:

(1) Estrictamente hablando, un valor de pérdidas cuando se expresa en decibelios (dB) debería ser positivo. Sin embargo, la convención y alguna literatura expresan las pérdidas de retorno como una cantidad negativa similar al parámetro S(1, 1) que mediría una analizador de redes vectorial (VNA o PNA).

(2) El resultado de la atenuación está especificada con respecto a la impedancia del sistema Zo.