Saltar al contenido

Construyendo un reloj de cuenta regresiva con Raspberry Pi y Python

Para marcar los días hasta VIVIR 2017, decidí construir un reloj dedicado. Para abrazar al creador y el espíritu de la IO que celebra LIVE, me di cuenta de que un Pi de Frambuesa sería la perfecta realización de mi idea. El modelo actual RP3 está disponible en tiendas online y físicas, y también es barato.

El reloj cuenta atrás para el inicio del evento LIVE a las 8 de la mañana del 19 de septiembre de 2017, pero puede ajustarse a cualquier fecha y hora que desee.

Construyendo un reloj de cuenta regresiva con Raspberry Pi y Python
Construyendo un reloj de cuenta regresiva con Raspberry Pi y Python

Equipo necesario

Para completar los pasos de esta guía, necesitará el siguiente hardware y software:

  • Frambuesa Pi 3 corriendo Raspbian
  • Frambuesa Pi 7″ Pantalla táctil
  • Un teclado y un ratón USB

Instalación de la pantalla táctil

El primer paso, antes de llegar al código, es instalar y configurar la pantalla táctil. La pantalla táctil oficial de los Pi de Frambuesa puede ser montada directamente en un Pi de Frambuesa 2 o 3 con el kit incluido. Esto hace que sea una unidad compacta y ordenada.

Pero antes de montar la pantalla, tienes que asegurarte de que el RP3 está actualizado con los paquetes adecuados para usar la pantalla.

Ejecuta los siguientes comandos en el símbolo del sistema Raspbian para actualizar tu RP:

sudo apt-get updatesudo apt-get upgradesudo apt-get dist-upgradesudo apt-get install framberrypi-ui-modssudo apt-get install framberrypi-net-mods

Entonces ejecuta el siguiente comando para apagar de forma segura:

sudo apagado

Ahora puedes instalar la pantalla táctil usando los componentes incluidos. Para obtener información más detallada sobre el proceso de instalación, consulta este vídeo.

Nota: También puede alimentar la pantalla por separado con una segunda fuente de alimentación micro USB. Si quieres usar una sola fuente de alimentación, necesitarás una fuente de alimentación de 2A.

Codificando la cuenta atrás

Usaremos el lenguaje de programación Python que es común para el Pi de Frambuesa.

Abrir el editor Thonny Python IDE en el escritorio Raspbian en Menu->Programación -> Thonny Python IDE.

Verás que se abre una nueva ventana con un cursor listo para escribir tu nuevo guión en Python.

Copia el siguiente código en el editor. (Si está leyendo esto en un ordenador que no sea el RP, puede utilizar un dispositivo de almacenamiento USB para copiar el código en el PI).

#!/usr/bin/pythonfrom tkinter import *from tkinter import ttkfrom tkinter import fontimport timeimport datetimeglobal endTime def quit(*args): root.destroy() def show_time(): # Obtener el tiempo restante hasta el evento remainder = endTime - datetime.datetime.now() # Eliminar la parte de microsegundos rest = remainder - datetime.timedelta(microsegundos=remainder.microsegundos) # Mostrar el tiempo restante txt.set(remainder) # Desencadenar la cuenta atrás después de 1000ms root.after(1000, show_time)# Usar tkinter lib para mostrar la raíz del reloj = Tk()root.attributes("-fullscreen", True)root. configure(background=$0027black$0027)root.bind("x", quit)root.after(1000, show_time)# Establece la fecha y hora de finalización de la cuenta atrásendTime = datetime.datetime(2017, 9, 19, 9, 0, 0)fnt = font. Font(family=$0027Helvetica$0027, size=60, weight=$0027bold$0027)txt = StringVar()lbl = ttk.Label(root, textvariable=txt, font=fnt, foreground="green", background="black")lbl.place(relx=0.5, reli=0.5, anchor=CENTER)root.mainloop()

Presiona F5 para ejecutar el programa y voilà, ahora tienes un temporizador de cuenta atrás para el inicio de VIVIR 2017.

Poniendo todo junto, esto es lo que verás:

Auto-inicio de la cuenta atrás (Opcional)

Ahora tenemos que decirle al sistema operativo que ejecute el guión para el usuario Pi. En la línea de comandos o en una ventana de terminal, introduzca el siguiente comando:

sudo nano /etc/profile

Desplácese hasta la parte inferior y añada la siguiente línea:

sudo pitón /home/pi/myscript.py

donde «/home/pi/myscript.py» es el camino a tu guión.

Escriba «Ctrl+X» para salir, luego «Y» para guardar y luego «Enter».

Para comprobar si esto ha funcionado, reinicie su Pi usando:

sudo reboot

Ahora estás listo para la cuenta atrás del evento que elijas con un reloj de cuenta atrás de Frambuesa Pi. ¡Disfruta!

Para más información sobre Python y consejos útiles para tu próximo proyecto, ¡echa un vistazo a nuestra guía sobre Python hoy!