TL, DR: ¿Cómo implementar un sistema de notificación con múltiples dispositivos terminales, que permita realizar llamadas desde cualquier terminal a cualquier otro terminal? Las principales limitaciones son no usar chips/MCU programables (solo lógica dura especializada y de uso general), usar comunicación por cable en lugar de inalámbrica, no tener un cable separado entre cada dos terminales, tener una sola fuente de alimentación en lugar de baterías en todas partes. No es necesario transmitir voz o texto, solo notificaciones dirigidas al estilo "timbre entre dos habitaciones". El receptor debe saber quién envió la notificación.
Esta es mi primera pregunta sobre Ingeniería Eléctrica SE. Soy aficionado a la electrónica. Me considero principiante.
Me gustaría implementar en mi hogar una especie de sistema de notificación para hacer llamadas entre habitaciones, ya sea diseñándolo yo mismo o encontrando un diseño existente. La idea básica es que habrá varios dispositivos terminales (a continuación llamados "terminales") A, B, C, D, ... en diferentes lugares. Cada terminal tendrá un botón separado para cada otro terminal (por ejemplo, el terminal A tendrá los botones "B", "C", "D", etc.), un LED separado para cada otro terminal (por lo tanto, el terminal A tendrá los LED "B"). ”, “C”, “D”, etc.) y un timbre (como el timbre eléctrico habitual). Los botones se utilizarán para realizar llamadas y los LED indicarán quién llama.
Supongamos que a Alice (que actualmente se encuentra cerca de la terminal A) le gustaría llamar a Bob (que actualmente se encuentra cerca de la terminal B). Luego, Alice presiona el botón "B" en el dispositivo terminal A. Como resultado, el LED marcado con "A" se enciende en el terminal B y suena el timbre en el terminal B. Las terminales C, D, etc. permanecen en silencio. Bob escucha el timbre y ve el LED y va a la terminal A para ver/preguntar qué pasó.
Habrá como máximo 16 terminales y como mínimo 5 terminales.
En lugar de varios LED, puede haber una o dos pantallas de siete segmentos en cada terminal para mostrar la identificación de la persona que llama.
Opcionalmente, también habrá un botón "llamar a todos los demás terminales a la vez", por ejemplo, para llamar a B, C, D, etc. desde A simultáneamente. Esto (así como otras características opcionales) dependerá en gran medida de si simplifica o complica las cosas.
Todos los terminales se alimentarán de una sola fuente de alimentación (en lugar de tener baterías en cada terminal), por lo que al menos dos cables pasarán por todos los terminales (Vcc y GND). Según los esquemas, es posible que se necesite un tercer cable de alimentación. Además, se prefiere la comunicación por cable de baja frecuencia a la comunicación inalámbrica de alta frecuencia por varias razones, incluida la falta de experiencia con las frecuencias de radio. Deben ser aceptables hasta 8 cables adicionales para comunicación (es decir, sin contar los cables de alimentación), con todos los cables juntándose en un solo punto (la ubicación de la fuente de alimentación). Alternativamente, podría haber un dispositivo de mediación adicional que esté conectado a cada terminal.
Puede haber problemas si se realizan dos llamadas simultáneamente desde diferentes terminales. Esto se puede mitigar bloqueando los terminales B, C, D una vez que se activa el terminal A y desbloqueándolos una vez que se desactiva A. De todos modos, este problema se puede ignorar por completo, suponiendo que cualquier combinación de llamadas simultáneas no destruya el circuito.
Tengo una idea (todavía aproximada, sin esquema todavía) de cómo lograr el proyecto anterior con lógica dura de propósito general (puertas, contadores, codificadores, decodificadores). Cada terminal puede enviar dos ráfagas de impulsos, una ráfaga de codificación de llamador, otra ráfaga de codificación de receptor. Uno o dos cables de comunicación pueden ser suficientes. Esto parece ser no trivial pero viable. Tal vez tendré que encontrar a alguien que revise mis esquemas antes de intentar implementarlo.
Sin embargo, tengo la fuerte sensación de que este o un problema similar ya está resuelto e implementado en algunos circuitos integrados especializados o módulos electrónicos que se pueden enchufar con adiciones mínimas o moderadas. Sin embargo, no estoy seguro de cómo buscar una solución de este tipo, así como si el costo será viable para mí. Mis intentos de "timbre multidireccional", "sistema de notificación del hogar" y varias otras consultas no proporcionaron nada relevante.
Tal vez los controles remotos podrían reutilizarse en terminales (parte que llama), con diferentes comandos para diferentes receptores y diferentes protocolos para diferentes personas que llaman, pero entonces cada receptor debe poder entender a todas las personas que llaman (¿múltiples módulos de recepción en cada terminal?), o hay debe haber al menos 20 comandos diferentes compatibles con el control remoto (para cubrir 5 terminales) a 240 comandos diferentes compatibles (para cubrir 16 terminales). Sin embargo, no investigué de cerca la idea con los controles remotos.
¿Puede señalar una solución existente con múltiples dispositivos terminales "pares" que está destinada principalmente a realizar notificaciones simples que no sean de voz? ¿O alguna idea de cómo podría implementarse esto? ¿O a lugares existentes en la web donde se discute lo mismo con un nombre diferente o en un entorno diferente? ¿Existen soluciones existentes para otros problemas (como los controles remotos) que podrían adaptarse para este propósito?
Tenga en cuenta que no aceptaré respuestas que sugieran chips/microcontroladores/cualquier cosa programable que deba programarse, incluso si esto realmente simplificará el resto del circuito. (¡No digo que tales respuestas sean totalmente inútiles, ya que otras personas con diferentes habilidades pueden tener el mismo problema! Además, algunos puentes o microinterruptores dentro de cada dispositivo terminal para asignar ID únicos a las terminales son aceptables, aunque esto puede considerarse 'programación'.)
Si nada más, intentaré usar puertas y contadores. Incluso si todo el asunto resulta inviable para mí en este punto, estaré encantado de saber cuáles son las posibilidades existentes.
¡Cualquier entrada es bienvenida!
Interesante. Por supuesto, cualquier persona en su sano juicio usaría un microcontrolador para esto, como Arduino . Pero si realmente desea una solución de "lógica dura", le propondría basarla en un chip UART independiente, suponiendo que todavía estén disponibles. Aquí hay un diagrama de bloques funcional que explica el concepto.
simular este circuito : esquema creado con CircuitLab
U12 es un interruptor DIP que se utiliza para identificar el terminal en particular (ID de fuente).
U2 es un chip de "codificador de teclado", que emite el número de clave (ID de destino) junto con una luz estroboscópica "válida" que indica que se presionó una tecla. Nunca especificó cuánto tiempo desea que persista la pantalla, por lo que asumo que es solo mientras se presiona la tecla. Por lo tanto, cada pulsación de tecla envía dos mensajes, uno al presionar la tecla y otro al presionar la tecla. El mensaje de apertura de llave envía la propia identificación de la terminal como la identificación de destino, que los receptores interpretarán como "apagar la pantalla".
U3 es un multiplexor que selecciona la salida del teclado para tecla abajo y la propia ID del terminal para tecla arriba, y U4 convierte los bordes de la señal "válida" en luces estroboscópicas para el transmisor UART.
El transmisor UART serializa los dos códigos de 4 bits como un byte de 8 bits, que luego salen de los receptores de todos los terminales. Si la ID de destino coincide con la ID propia de la terminal (determinada por U7), la pantalla se habilita y muestra la ID de origen del mensaje. Si el ID de destino coincide con el ID de origen en el mensaje (determinado por U11), entonces la pantalla se apaga. El flip-flop U10 recuerda el estado de la pantalla y U8 funciona como decodificador para la pantalla (U9), que puede ser LED individuales o pantallas de 7 segmentos.
La casilla marcada como "Bus o Hub" representa las conexiones entre todos los terminales. Podría usar RS-232 como interfaz de señalización, en cuyo caso, necesitaría un concentrador que combine todas las señales del transmisor y las reenvíe a todos los receptores. O podría usar RS-485 como interfaz de señalización, lo que le permitiría simplemente conectar todos los terminales junto con la distribución de energía.
Agregar la función "llamar a todos" se agregaría más fácilmente dedicando uno de los ID de destino (por ejemplo, 0xF) a esta función. Solo podría tener 15 terminales, pero solo requeriría un poco de lógica adicional en el receptor para verificar si esta ID específica ingresa para habilitar la pantalla.
Cada una de las cajas que se muestran en este diagrama está disponible como un solo chip (SSI/MSI TTL más el UART).
Marko Bursic
usuario84255
Eugenio Sh.
usuario84255