47. Aplicación 3: Envió de datos de Arduino(Potenciómetro) hacia Python
🚀 Dominando la lógica de programación con Arduino y Python
Acabo de explorar un flujo increíble para procesar datos en tiempo real desde un potenciómetro conectado a un Arduino/ESP32, usando sentencias de control en Python. ¡Aquí les comparto la esencia!
🔹 Recibimos un valor entero desde el puerto serial (por ejemplo, de un potenciómetro).
🔹 Aplicamos lógica condicional para clasificar el dato en niveles según su valor:
if dato <= 250:
print("Nivel 1")
elif dato <= 750:
print("Nivel 2")
elif dato < 1000:
print("Nivel 3")
else:
print("Nivel 4 - Cerrado")✅ Clave:
El código debe estar correctamente alineado (Python es ordenado y sensible a la indentación).
Podemos ajustar los rangos (
<= 250,<= 750, etc.) según la aplicación.Usamos
elsecomo caso final (ej: valor mayor o igual a 1000 = "Nivel 4 - Cerrado").
🛠️ Configuración del puerto serial:
Asegúrate de seleccionar el puerto correcto (ej: COM3, COM5, /dev/ttyUSB0).
Si hay problemas con la codificación, prueba cambiar a UTF-8 o latin1 según tu versión de Python:
serial.Serial(port='COM3', baudrate=9600).decode('utf-8')
📈 Demostración práctica:
Conecta un potenciómetro al pin analógico A0 del Arduino/ESP32.
Gira el potenciómetro y observa cómo los valores cambian entre niveles 1, 2, 3 y 4.
Al llegar al Nivel 4, el sistema puede activar una acción (ej: cerrar un circuito, enviar una alerta).
💡 ¿Y si usamos dos Arduinos?
Podemos comparar datos de dos puertos seriales simultáneamente, eligiendo el puerto correcto en el código (ej: ESP32 con CP2102 vs CH340).
🎯 Consejo final:
Este flujo es totalmente personalizable. ¡Pueden agregar más condiciones, actuadores o integrarlo con interfaces gráficas!
¿Les gustaría el código completo o diagrama de conexiones?
Comentarios
Publicar un comentario