Control de Encendido/Apagado Mediante PLC y Microcontrolador 51

La comunicación por línea eléctrica (PLC) aprovecha la infraestructura de cableado eléctrico existente para la transmisión de datos, eliminando la necesidad de instalar cables adicionales. Esta tecnología es ideal para aplicaciones como hogares inteligentes y sistemas de control remoto. A continuación, se describe el diseño de un circuito de conmutación basado en un microcontrolador 51 (por ejemplo, STC89C52) que utiliza PLC para controlar remotamente el estado de un relé a través de la red eléctrica.

Componentes Clave

El sistema se compone de los siguientes elementos:

  • Módulo PLC: Existen diversas opciones como el PL2102 (económico), SSCP300 (alto rendimiento) o el clásico LM1893.
  • Firmware para 51 MCU: Código fuente en Keil que incluye la lógica para el protocolo PLC y el control del relé.
  • Esquema Eléctrico y PCB: Diseño detallado (formato Altium Designer) que abarca el sistema mínimo del 51 MCU, el módulo PLC y el circuito de control del relé.

Arquitectura del Sistema y Principios del Circuito

Diagrama de Bloques del Sistema

El flujo de datos y control se visualiza de la siguiente manera:


Extremo de Control Remoto (Móvil/PC) → Línea Eléctrica → Módulo PLC (Receptor) → Microcontrolador 51 → Circuito de Driver del Relé → Dispositivo Controlado (Lámpara/Electrodoméstico)
↑_________________________________________ Módulo PLC (Transmisor) ←____________________________↓

La funcionalidad principal consiste en transmitir comandos de "encendido/apagado" a través de la línea eléctrica. El microcontrolador 51 interpreta estos comandos para activar o desactivar el relé.

Diseño del Circuito de Hardware (Ejemplo con Módulo PL2102)

Componentes Principales

  • MCU Principal: STC89C52RC (8KB Flash, núcleo 51) - para procesamiento de datos, interpretación de comandos y control del relé.
  • Módulo PLC: PL2102 (Interfaz UART, 115200 bps) - para la transmisión y recepción de datos en la línea eléctrica (modulación/demodulación).
  • Circuito Driver del Relé: SRD-05VDC-SL-C (Relé de 5V, 1 canal) + ULN2003 - para que el MCU controle el relé, proporcionando aislamiento entre el circuito de bajo voltaje y la alta tensión.
  • Fuente de Alimentación: AMS1117-3.3V (para el MCU) + 7805 (para el módulo) - para proporcionar voltajes de 5V y 3.3V de forma aislada.
  • Indicadores LED: LED (Rojo/Verde) + Resistencia limitadora (1kΩ) - para mostrar el estado del relé (Rojo = Apagado, Verde = Encendido).

Partes Clave del Esquema Eléctrico

  • Interconexión MCU 51 y PL2102: El módulo PL2102 se comunica con el MCU 51 a través de UART (TXD/RXD cruzados). El módulo opera a 5V y las señales de control son de nivel TTL.
  • Circuito Driver del Relé: Un pin de E/S del MCU (ej. P2.0) emite una señal alta o baja, que se amplifica inversamente por el ULN2003 para activar la bobina del relé (alimentado a 5V). Los contactos del relé controlan la carga de 220V.
  • Circuito de Acoplamiento a la Línea Eléctrica: El módulo PL2102 incluye un circuito de acoplamiento interno. Se requiere una conexión externa a la línea de corriente alterna (L/N), asegurando un aislamiento adecuado.

Implementación del Código Central (Keil C51)

Estructura del Programa Principal (Comunicación PLC y Control de Relé)


#include <reg52.h>
#include <string.h>

// Definición de pines
sbit RELAY = P2^0;       // Pin de control del relé (activado por nivel alto)
sbit LED_GREEN = P2^1;   // LED verde (indicador de estado ON)
sbit LED_RED = P2^2;     // LED rojo (indicador de estado OFF)

// Inicialización del puerto serie (comunicación con PL2102, baudios 115200)
void UART_Init() {
    SCON = 0x50;        // Modo 1 del puerto serie, recepción habilitada
    TMOD |= 0x20;       // Temporizador 1 en modo 2 (reutilización automática)
    TH1 = 0xFD;         // Baudios 115200 @11.0592MHz
    TL1 = 0xFD;
    TR1 = 1;            // Iniciar temporizador 1
    ES = 1;             // Habilitar interrupción del puerto serie
    EA = 1;             // Habilitar interrupciones globales
}

// Envío de cadena por puerto serie
void UART_SendStr(char *str) {
    while (*str) {
        SBUF = *str++;
        while (!TI); TI = 0;
    }
}

// Función de control del relé
void Relay_Control(bit state) {
    RELAY = state;       // 1=Cerrado (ON), 0=Abierto (OFF)
    LED_GREEN = state;   // LED verde encendido = ON
    LED_RED = !state;    // LED rojo encendido = OFF
    UART_SendStr(state ? "Relay ON\r\n" : "Relay OFF\r\n"); // Retroalimentación de estado
}

// Rutina de servicio de interrupción del puerto serie (recepción de comandos PLC)
void UART_ISR() interrupt 4 {
    static char buf[16];
    static int idx = 0;
    if (RI) {
        RI = 0;
        buf[idx++] = SBUF;
        if (idx >= sizeof(buf) - 1 || buf[idx - 1] == '\n') {
            buf[idx] = '\0';  // Carácter de fin de cadena
            // Interpretación de comandos: "ON" -> encender, "OFF" -> apagar
            if (strcmp(buf, "ON\r\n") == 0) Relay_Control(1);
            else if (strcmp(buf, "OFF\r\n") == 0) Relay_Control(0);
            idx = 0;  // Reiniciar buffer
        }
    }
}

void main() {
    UART_Init();
    RELAY = 0;          // Estado inicial: relé apagado
    LED_RED = 1;        // LED rojo encendido (estado OFF)
    LED_GREEN = 0;
    while (1);          // Bucle principal esperando interrupciones
}

Protocolo de Comunicación PLC (Comandos Simples Personalizados)

  • Transmisor (ej. otro 51 MCU + PL2102): Envía comandos en formato de cadena ("ON\r\n" o "OFF\r\n") a través de la línea eléctrica.
  • Receptor (este circuito): El PL2102 demodula los datos y los envía por UART al microcontrolador 51, el cual interpreta el comando para controlar el relé.

Selección de Módulos Clave y Puntos de Depuración

Comparativa de Módulos PLC

  • PL2102: Frecuencia 120kHz, Interfaz UART, Bajo costo (~5 CNY), fácil de usar, pero con interferencia moderada.
  • SSCP300: Frecuencia 132kHz, Interfaz SPI/UART, Alta velocidad (19.2kbps), estable, pero más caro (~15 CNY).
  • LM1893: Frecuencia 100kHz, Interfaz Paralela, Esquema clásico, mucha documentación, pero requiere más componentes externos.

Puntos Clave de Depuración

  • Supresión de Ruido en Línea Eléctrica: Conectar un capacitor cerámico de 104 (0.1µF) en paralelo a la entrada del módulo PLC para filtrar ruido de alta frecuencia, o usar filtros dedicados.
  • Configuración de Dirección del Módulo: Para comunicación multi-nodo, configurar direcciones únicas usando pines como ADDR0/ADDR1 en el PL2102.
  • Aislamiento del Relé: Es crucial el aislamiento físico entre la alta tensión (220V) y el circuito de bajo voltaje (5V) mediante el relé para prevenir riesgos de electrocución.
  • Pruebas de Comunicación: Inicialmente, usar un simulador de puerto serie para enviar comandos ("ON\r\n"/"OFF\r\n") y verificar que el microcontrolador controle el relé correctamente.

Escenarios de Aplicación y Funcionalidades Extendidas

Escenarios Típicos de Aplicación

  • Hogar Inteligente: Control remoto de luces, ventiladores, motores de persianas, etc., a través del cableado eléctrico existente.
  • Monitoreo Industrial: Encendido/apagado remoto de equipos de línea de producción (requiere diseño robusto contra interferencias).
  • Riego Agrícola: Control de bombas de agua o electroválvulas aprovechando la instalación eléctrica ya desplegada.

Funcionalidades Extendidas

  • Comunicación Bidireccional: Implementar retroalimentación del estado del relé al nodo de control vía PLC.
  • Control Temporizado: Utilizar el temporizador interno del MCU 51 para programar ciclos de encendido/apagado (ej. encender luces automáticamente a las 18:00).
  • Red Multi-Nodo: Configurar varios módulos PLC en cascada para controlar múltiples relés en diferentes habitaciones, utilizando codificación de direcciones.

Consideraciones de Seguridad

  1. Aislamiento de Alta Tensión: Asegurar que los contactos del relé y el circuito de control estén físicamente aislados para evitar que la corriente de 220V alcance el microcontrolador.
  2. Protección de Aislamiento: Utilizar carcasas aislantes para las conexiones de la línea eléctrica (L/N) y prevenir el contacto accidental.
  3. Protección contra Sobrecorriente: Incorporar un fusible (ej. 5A) en el circuito del relé para proteger contra cortocircuitos.
  4. Compatibilidad Electromagnética (EMC): Incluir perlas de ferrita y capacitores de filtrado en la entrada de alimentación del módulo para minimizar la radiación electromagnética.

Este diseño permite implementar un control de conmutación económico y sin necesidad de cableado adicional, adecuado para proyectos DIY de aficionados y aplicaciones de hogar inteligente a pequeña escala.

Etiquetas: PLC 51 MCU STC89C52 Control Remoto Hogar Inteligente

Publicado el 6-10 02:28