Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

S-Meter Externo para Radios Icom usando CI-V y Arduino

Componentes y materiales

Sobre el proyecto

Este circuito usa un Arduino Uno o Nano para enviar un comando CI-V a una radio Icom solicitando información de señal, leer la respuesta, convertirla y mostrarla en una salida analógica donde conectar un S-meter analógico (de bobina móvil, tipo Arsonval).

Se alimenta desde el puerto de Sintonizador de Antena de la radio Icom. Si tu Icom no tiene puerto de sintonizador, puedes usar cualquier otro puerto o conector que proporcione +12V (al menos 200 mA). También sirve una fuente DC externa.

Si no tienes conector de Sintonizador de Antena, puedes usar un conector de fuente de alimentación de PC y recortarlo con cortadores para que encaje en el conector de sintonizador Icom.

El proyecto está diseñado para un transceptor Icom IC-7000, pero se adapta a cualquier radio Icom con puerto CI-V.

Puedes usar la dirección universal CI-V "00" en algunas radios Icom, haciendo este conversor compatible con cualquier Icom sin cambiar la dirección CI-V en el código.

Se instalan ferritas en cables de entrada y salida para eliminar inducción RF. El +12V CC al S-meter no es necesario; podría usarse para iluminar el medidor u otras funciones opcionales.

El potenciómetro de 10k Ω atenúa la señal de salida (demasiado alta para la mayoría de medidores analógicos) y calibra el medidor para obtener lectura a fondo de escala con una señal local potente (+60 dB).

Otros proyectos similares usando Arduino como interfaz CI-V:

Código

Icom CI-V S-meter (C/C++):

// IC7300 Testbed for S-meter readout and other functions
// by Luc Decroos - ON7DQ/KF0CR
// modified & adapted by Daniel VE2BAP, 2018-12-01
#include <SoftwareSerial.h> // para comunicación con IC7000
#define BAUD_RATE 19200 // Velocidad CI-V
#define TRX_address (0x70) // HEX $70 = Icom IC-7000
//#define TRX_address ((byte)00) // $00: dirección universal Icom (funciona en todas las radios).

// Conexión serie
// RX = Radio Icom a Arduino: pin 2 vía resistencia 4k7
// TX = Arduino a Radio Icom: pin 7 vía diodo 1N4148, con pull-up 10k a Vcc (5V) en punta jack 3.5mm
SoftwareSerial mySerial = SoftwareSerial(2, 7); // (RX, TX)

int readCounter;
int sMeterVal1; // Byte BCD más significativo con info de señal
int sMeterVal2; // Byte BCD menos significativo con info de señal
int sMeterOut = 11; // S-meter analógico externo en pin 11

void setup() {
  pinMode(13, OUTPUT);
  digitalWrite(13, LOW); // apaga LED pin 13
  pinMode(2, INPUT); // CI-V serie desde IC7000
  pinMode(7, OUTPUT); // CI-V serie hacia IC7000
  pinMode(sMeterOut, OUTPUT); // pin S-meter como salida
  mySerial.begin(BAUD_RATE);
  mySerial.listen(); // solo un puerto puede escuchar con SoftwareSerial
  while (mySerial.available()) mySerial.read(); // limpia buffer
}

void loop() {
  // Leer y mostrar valor S-meter
  mySerial.flush();
  // Secuencia inicio: enviar comando "read S meter" a la radio
  mySerial.write(0xFE);
  mySerial.write(0xFE);
  mySerial.write(TRX_address);
  mySerial.write(0xE0);
  mySerial.write(0x15);
  mySerial.write(0x02); // Leer S-meter, comando 15 02
  mySerial.write(0xFD); // Secuencia fin
  delay(20);
  // Leer info de la radio
  int nbChar = mySerial.available();
  if (nbChar > 0) {
    for (int readCounter = 0; readCounter < nbChar; readCounter++) {
      byte byteRead = mySerial.read();
      if (readCounter == 6) {
        sMeterVal1 = ((byteRead / 16 * 10) + (byteRead % 16)); // Primer byte: BCD a decimal
      }
      if (readCounter == 7) {
        sMeterVal2 = ((byteRead / 16 * 10) + (byteRead % 16)); // Segundo byte: BCD a decimal
        analogWrite(sMeterOut, ((sMeterVal1 * 100) + sMeterVal2)); // Calcular y escribir valor S-meter
        delay(20);
      }
    }
  }
}

Piezas personalizadas y cajas

Fotos del montaje y carcasa impresa en 3D (ver imágenes adjuntas en el proyecto original).

Esquemáticos

Esquema de conexiones disponible en la documentación del proyecto.

Proceso de manufactura

  1. Desfibrilador externo: Historia, diseño y fabricación
  2. La Evolución e Ingeniería de la Tecnología de Radio
  3. Suavizado de tejidos: Cómo la loción mejora confort y rendimiento
  4. Monitorización precisa de temperatura en armario de servidores con Raspberry Pi
  5. Persianas Inteligentes: Control Automático de Luz con Arduino y Energía Solar
  6. Sensor de obstáculos IR casero con Arduino – Tutorial fácil con LED IR y fotodiodo
  7. Kit de Batería MIDI Compacto con Impresión 3D y Arduino
  8. E3.Series: Agilice la documentación del proyecto usando PDFs externos con hipervínculos
  9. Xilinx lanza Zynq RFSoC DFE: IP duro de alto rendimiento y eficiencia energética para radios 5G
  10. Renesas y eProsima Lanzan Port de micro‑ROS para MCUs RA, Habilitando Robótica Basada en ROS 2
  11. Acceed IGS-9822DGP: Switch Gigabit 12 Puertos con 4 SFP – Solución Industrial de Alto Rendimiento