Muy Buenas a todos!!! Hoy traigo un programa creado con el ya comentado creador de interfaces de terminal pyTermTk. He vuelto a juntar las dos cosas que más me gustan, la informática y los trenes (si, muy a lo Sheldon).
Ya hacía tiempo que le iba dando vueltas a un controlador desde el terminal que no fuera estar metiendo instrucciones a mano desde una terminal. Entonces hace unos meses descubrí pyTermTk y empece a trabajar con el.Tengo que decir que el diseñador de interfaces ttkDesigner ayudó mucho en el proceso, algunas veces me ha dado algún quebradero de cabeza, pero más por inexperiencia con la librería
También se han incluido los archivos json de las interfaces generados por ttkDesigner en la carpeta del repositorio
Terminal DCC esta diseñado para leer una base de datos generada con Rocrail y conectarnos a una central DCC de tipo hazlo tu mismo (DIY).
Para seleccionar el archivo desde un file picker que se abrirá al pulsar sobre el botón de menú "open". Desde aquí seleccionaremos el archivo .xml donde estén almacenados los datos del plan Rocrail.
Cuenta con dos pantallas principales llamadas Controller y List. En la primera de ellas, Controller, podemos manejar las locomotoras. Por otra parte List nos mostrará un resumen de los elementos almacenados en el archivo plan.xml
También se pueden configurar las pantallas Controller y List para que aparezcan al iniciar Terminal DCC.
Con estos datos ya podremos realizar la conexión pulsando sobre "Connection On/Off". Si todos los datos son correctos recibiremos un mensaje de confirmación:
--> [CONNECTED] to DCC station 192.168.1.5:2560
Una vez conectados podemos interactuar con la central introduciendo comandos con el widget de texto en la parte inferior.
Con el botón "DCC On/Off" encendemos o apagamos la central DCC. Con la cental encendida ya podemos manejar locomotoras desde el Controller con sus funciones básicas de avance, retroceso, parada. Las funciones de las locomotoras aún no están implementadas.
Instalación:
Para instalar Terminal DCC solo necesitamos tener acceso a un terminal linux.
Una vez estamos en el terminal creamos un entorno virtual donde instalaremos las librerías y accedemos a el:
python3 -m venv ~/venv/TerminalDCC
source ~/venv/TerminalDCC/bin/activate
Nos situamos en la carpeta donde vamos a descargar Terminal DCC y lo podemos descargar directamente desde GitHub con la "git":
git clone https://github.com/Peyutron/TerminalDCC
Instalamos las librerías del archivo "requirements.txt" con "pip":
pip install -r requirements.txt
Ya solo queda ejecutar el programa:
python3 -m TerminalDCC_main
o
python3 TerminalDCC_main.py
Bien pues esto es todo, las funciones son básicas y seguramente haya otro programa que no sea Rocrail, pero por el momento me ha servido para practicar Python con sus librerías, listas, diccionarios y sockets entre otros. La intención es actualizar la entrada cuando vaya haciendo cambios en el programa.
Si te gusta la programación y el contenido que realizo puedes aportar comentando tanto aquí como en el canal de Youtube.
Y aquí tienes algunos ejemplos sobre TermTk y ttkDesigner:
pyTermTk y ttkDesigner: Button y Lablel
pyTermTk y ttkDesigner: List, ListSelect y Lablel
pyTermTk y ttkDesigner: Slider y Label
Librería PyTermTk crea interfaces en terminal
Sígueme para más artículos sobre TermTk y otros temas de programación, Saludos!!!
No hay comentarios :
Publicar un comentario