MEDIDOR DE SWR E POTENCIA EM LINHA === COM ARDUINO

Quando necessitei de um medidor de ondas estacionarias para o meu ajuste automatico de antenas LOOP, acabei desenvolvendo este outro equipamento interessante.

Esquema da ponte de ROE ou SWR:


Foto da ponte montada :

Baseada no artigo do Francesco IK3OIL  esta ponte pode medir até 25W como descrito aqui e podendo medir maiores potencias (até 100W) com modificações com divisor 2k2 com 47k, lembrando que a tensão maxima para o arduino é de 5V.

Foto da ponte montada :


O circuito completo é este:

A montagem da ponte é simples, mas deve ser blindada do restante do circuito, podendo ficar dentro de uma caixa ou em duas caixas separado (ponte e Arduino/display).
Use um cabo coaxial de 50 Ohms, o ideal é dos finos RG174, mas cheguei a usar o RG58U que é bem grosso. Um pedaço de 5 cm é o bastante .... que morar aqui por perto é só pedir que tenho.
O diodo 1N5711 é encontrado no nosso comercio, mas os diodos tipo BAT tambem funcionam, até 1N4148 funciona mas tera menos sensibilidade ( neste caso o software tem que ser corigido ...é só me escrever).
O diamero de fio de enrolamento não é critico mas fio #28 ou acima funciona. o numero de volas sim .... eu usei 25 voltas paar ter uma tensão de retorno maior, mas a potencia cai para
25W ..já com 35 voltas e seguindo o projeto da ponte do Francesco a potencia será de 100W.
O limite é a tensão de RF que após retificada (Vp) que vai para o Arduino que é de 5V, para evitar problemas ... o ideal é colocar um diodo zener de 5V nas entradas do Arduino (A2 e A3), assim a tensão de 5V não é ultra passada.
Quando montei o circuito original do Francesco (varios colegas montaram e voce pode ver a montagem do Luciano PY2BBS ) usei os dados e circuito impresso do artigo, mas quando montei com outro toroide necessitei ajustar o valor do capacitor, que esta em paralelo com o trimer, para obter um nulo de estacionaria refletida.

Calibração :

No lugar da antena coloque uma carga fantasma de 50 Ohms que tenha dissipação suficiente para a potencia do transmissor, a ser usado.
Ligue o diodo e capacitor como aparece no esquema (ponto X com ponto X) medindo a tensão de corrente continua (Vp) com um voltimetro digital ou analogico.
Calcule a potencia com esta formula :
P= (Vp *Vp) / (2*50)
Caso voce use diodos schottky acrescente 0,5V na tensão lida antes de colocar na formula. Caso seja um diodo comum 1N4148 acrescente 0,7V.
Anote os valores o calculado e o mostrado pelo medidor montado, faça isso com varias medidas e em bandas  diferentes.
Caso o valor esteja maior ou menor será necessario colocar um fator para aumentar ou diminur o valor lido, no sketch.
O fator K deve ser determinado pela media das medidas calculadas dividido pela media das medidas mostradas no LCD.  Depois de definido o valor k, substitua o valor dele na linha do sketch :
float k =1; // altere aqui o valor do fator K
exemplo k=0.12
mude a linha para

float k =0.12; // altere aqui o valor do fator K

Qualquer duvida escreva ...

=========================================

Eu montei varias outras pontes de SWR :
Esta semelhante a usada, mas com 2 toroides colados e 35 voltas de fio


Esta foi usada no projeto #1 de ajuste automatico de loop, os toroides são T50-10 com 9 voltas cada. Funciona mas não tem o ponto zero muito marcante como a que usei para o ajuste automatico de loop #2.
Esquema :

Fotos desta ponte de SWR :

 






================
Eu montei muitas pontes de ROE / SWR
foto :


 São seis na foto :
1. Ponte de SWR resistiva - somente testa SWR - não pode ficar no circuito em operação normal.
2. Ponte de SWR  montada do IK3OIL.
3. Ponte usada no ajuste de loop #2
4. Ponte de SWR analogica.
5. Ponte  de SWR como descrita pelo IK3OIL 35 voltas, mas com toroides de lampadas.
6. Ponte de SWR usada no ajuste de loop #1.

Eu devo ter mais algumas montadas rerere..

73 de py2ohh miguel

++++++++++++++++++++++++++++++++++++++++++++++++

Este é o sketch do arduino (IDE1.6.1)

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
float pwr;
float Vinc, Vref = 0, SWR; 
float k =1; // altere aqui o valor do fator K
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);

void setup() {
 
  Serial.begin(9600);
  lcd.begin (16, 2);
  lcd.setBacklight(HIGH);
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("    SWR  PWR    ");
  lcd.setCursor(0, 1);
  lcd.print(" PY2OHH  QRP_BR "); // voce pode por seu prefixo aqui
  delay(3000);
}

void loop() {

  Vinc = analogRead(2);
  Vref = analogRead(3);
  SWR = (Vinc + Vref) / (Vinc - Vref);
  lcd.setCursor(0, 0);
  lcd.print(Vinc);
  Vinc = ((Vinc * 5.0) / 1024.0) + 0.5;
  pwr = ((((Vinc) * (Vinc)) - 0.25 ) * k) ;
  if (pwr > 0 ) (pwr = pwr + 0.25);
  lcd.setCursor(4, 1);
  lcd.print(SWR);
  lcd.setCursor(0, 1);
  lcd.print("SWR     :1/    W");
  lcd.setCursor(4, 1);
  lcd.print(SWR);
  lcd.setCursor(11, 1);
  lcd.print(pwr);

}