No tienes que votar esto. Es solo una explicación de por qué creo que la respuesta de AndrejaKo es incorrecta. Demasiado tiempo para un comentario
Suponiendo que sus datos RS232 consistirán en comandos para encender o apagar la bombilla, estoy totalmente en desacuerdo con la respuesta de AndrejaKo. El comando pasará como una serie de pulsos muy cortos que no son aptos para cambiar nada. Esto no te permitirá encender o apagar una bombilla.
Querrás decodificar el comando RS232, y para eso necesitas un microcontrolador , no hay forma de evitarlo. Pase la señal entrante RS232 a través de un cambiador de nivel como el MAX232 para convertir los niveles de + 12V / -12V a niveles que sean seguros para el microcontrolador.
El código del microcontrolador se puede mantener simple, especialmente si tiene un UART de hardware (la mayoría de los controladores lo hacen). Escuche los comandos entrantes y encienda y apague las salidas en consecuencia. Como solo necesita 8 comandos para cambiar 4 salidas (solo un ejemplo) cada comando puede representarse por un solo byte, esto evita tener que desarrollar un protocolo de datos completo.
La forma más versátil de controlar bombillas, motores y demás es mediante el uso de un relé electromecánico . Esto cambiará cualquier cosa: CA o CC, baja tensión o 230 V, baja o alta corriente. Los relés de estado sólido son más limitados; La mayoría de los tipos son para conmutar la tensión de red.
No puede conducir un relé directamente desde el microcontrolador; Necesita demasiada corriente. Utilice un transistor para controlar el relé:
Sideseacambiarlosdispositivosalimentadosporlared(comolabombilla),encontrarásolucionesalternativas here o here
Entonces necesitas el MAX232, un microcontrolador barato y un conjunto de relés con su transistor de conducción. Si bien esta es básicamente la funcionalidad de un Arduino u otra computadora de una sola placa, será más económico si la construye usted mismo y la limita a esta funcionalidad.