Tabla de contenido:
- Paso 1: imprima la etiqueta de pizza
- Paso 2: desmonta el botón Arcade
- Paso 3: aplique la pegatina y vuelva a montar el botón
- Paso 4: haz la caja
- Paso 5: el circuito
- Paso 6: Comunicación con el Beagle Bone Black
- Paso 7: el código
- Paso 8: Transferencia de archivos desde su computadora a BBB
- Paso 9: Instalación de las bibliotecas adecuadas en BBB
- Paso 10: Instalación de la biblioteca de E / S de Python y Adafruit
- Paso 11: Instalación de selenio
- Paso 12: uso de selenio con un navegador web sin cabeza
- Paso 13: Hora de la pizza
Video: Botón de pizza: 13 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:42
Estudiantes universitarios de segundo año, neoyorquinos, técnicos nocturnos y los verdaderamente vagos: bienvenidos a su fantasía. Presentamos la última actualización en tecnología gastronómica, el Pizza Button. Ya no es necesario levantar el teléfono para pedir pizza. Simplemente presione este botón y espere mientras ordena la entrega de pizza a su dirección.
El Pizza Button utiliza una placa BeagleBone Black (BBB) para hacer el trabajo pesado en este proyecto. Al presionar un botón, la placa activa un raspador web. El raspador web inicia sesión en su cuenta de Grub Hub y pide pizza del famoso San Francisco North Beach Pizza (lo que significa que actualmente este botón solo funciona en San Francisco, pero honestamente, ¿realmente le gustaría estar en otro lugar?). Pide un queso grande. pizza, paga por la pizza y la recibe directamente en su puerta. ¡Este proyecto es muy simple de hacer e irresistible de usar!
Las actualizaciones futuras de este proyecto incluyen:
- Wifi
- GPS interno
- Olor a pizza para aumentar su apetito
Lista de partes
- (x3) cajas de pizza de tu pizzería favorita
- (x1) Botón Arcade Masivo con LED - 100 mm Blanco Adafruit 1187
- (x1) Proto Cape Kit para BeagleBone Adafruit 572
- (x1) Resistencia de 470 ohmios 1/4 W RadioShack 271-1317
- (x1) Resistencia de 1 k-ohm 1/4 W RadioShack 271-1321
- Vinilo o papel adhesivo fotográfico brillante para inyección de tinta LC (8.5 "x 11") Amazon B000VKV2H4
Materiales adicionales
- Soldadura RadioShack 64-013
- Cable de calibre 22 RadioShack 278-1224
- Tubería termorretráctil RadioShack 278-1611
Paso 1: imprima la etiqueta de pizza
Encuentre una imagen deliciosa de una pizza e imprímala en papel adhesivo. Usé un cortador de vinilo, pero una impresora estándar también funcionaría.
Paso 2: desmonta el botón Arcade
El botón de arcade viene con un interruptor bloqueado en su base. Simplemente gire el interruptor en sentido antihorario y sienta cómo se desbloquea. Saque el interruptor desde el interior del cuello roscado del botón (el golpecito son las ranuras que ve en objetos como tornillos). Habrá un LED adjunto al interruptor. A continuación, desatornille el pequeño anillo negro del cuello roscado para que la base del botón pueda retirarse. Dentro del cuello hay dos pestañas blancas. Empújelos hacia adentro y hacia abajo para empujar el botón de plástico hacia afuera del cuello. Ahora todo lo que queda es la cara del botón transparente unida a la plataforma blanca con las pestañas. Utilice un destornillador pequeño para hacer palanca en la cara del botón de la plataforma blanca.
Paso 3: aplique la pegatina y vuelva a montar el botón
Recorta la pegatina y pégala a la plataforma blanca lisa. De esta manera, se verá a través de la cara del botón transparente. Vuelva a montar el botón.
Paso 4: haz la caja
Comencé con cajas de pizza planas que compré en la tienda de contenedores. Sin embargo, ¡siéntete libre de usar tus cajas de pizza favoritas! Esta base requiere tres cajas de pizza apiladas una encima de la otra, que acomodarán el botón arcade bastante más grande y albergarán la electrónica. Comience con el cuadro de abajo. Encuentra y marca el centro de la caja con una regla y usa una taza para dibujar un círculo alrededor. Corta el agujero con un cuchillo X-Acto. Haga un agujero en la parte superior de la caja inferior y agujeros en la parte superior e inferior de las cajas central y superior. Apila las cajas y pégalas con una pistola de pegamento caliente. Coloque el botón en la parte superior para asegurarse de que el interruptor se ajuste a través del orificio.
Paso 5: el circuito
Este circuito es bastante sencillo. Cuando se presiona, el botón de arcade activa tanto el código para ejecutar como el LED dentro del botón para iluminarse.
Paso 6: Comunicación con el Beagle Bone Black
Este proyecto es mi primera experiencia con el BeagleBone Black Board. En mi opinión, la BeagleBoard es bastante similar a la placa RaspberryPi pero con más pines gpio. Lea más sobre BeagleBoard en su sitio oficial de la comunidad y descubra las principales diferencias entre BeagleBoard y Raspberry Pi aquí.
Este proyecto utiliza una placa Rev C BeagleBone Black que se ejecuta en una tarjeta micro SD de 16G con el entorno Debian. Puede utilizar cualquier tamaño de tarjeta micro SD superior a 8G. Aunque el nuevo BeagleBone Black Board tiene un procesador integrado 4G, el entorno de escritorio de Debian requiere más espacio de almacenamiento. Para interactuar con la placa, simplemente conéctela a su computadora con el cable micro HDMI a USB que viene con su placa. Los 'leds de usuario' ubicados junto al puerto ethernet deberían parpadear en un patrón programado para imitar el pulso humano (los fabricantes de beagle son geniales, ¿verdad?) Y el icono de la placa debería aparecer en su escritorio. Si está utilizando una Mac, puede programar su placa de dos formas diferentes:
MÉTODO 1: EL TERMINAL
Abra la terminal y escriba en la línea de comando
Si cuando se le solicita una contraseña, escriba raíz
** Si esto no funciona debido a una "clave ssh ofensiva" **
Escribe en la línea de comando
rm -f.ssh / hosts_conocidos
** Si esto aún no funciona **
Escribe en la línea de comando
sudo ssh [email protected]
MÉTODO 2: ENTORNO DEBIAN
También puede vnc en el entorno de escritorio de la placa y programarlo desde allí. Siga los pasos a continuación para hacer esto.
- Descarga Remote Desktop Connection para mac desde aquí.
- Abra Conexión de escritorio remoto y en el cuadro de entrada para 'Computadora' escriba '192.168.7.2'
- Dentro de la ventana emergente del escritorio remoto, escriba 'root' tanto para el nombre de usuario como para la contraseña.
- Se le presentará el escritorio de la Beagle Board.
Paso 7: el código
Este código inicia sesión automáticamente en su cuenta personal de GrubHub, navega al menú de North Beach Pizza y pide una pizza de queso grande. ¡Todo se dispara con solo presionar un botón!
Hace todo esto interactuando con páginas web con Selenium usando un navegador web sin cabeza PhantomJS. ¿Qué es el selenio? Es un paquete de software que hace todos los clics en las páginas web por usted (recuerde, este proyecto es para los perezosos definitivos). ¿Qué es un navegador web sin cabeza? Obtenga más información aquí, pero en resumen, es un navegador web (piense en Safari, Firefox y, me atrevo a decir, Netscape) sin una interfaz gráfica de usuario. Esto hace que la navegación de la página web automatizada sea MUCHO más rápida (tiene hambre de pizza, por lo que desea que su pedido se envíe lo más rápido posible).
Cosas que tendrás que editar dentro del código:
- Información de inicio de sesión de GrubHub, que incluye su nombre de usuario y contraseña
- Información de la tarjeta de crédito
Paso 8: Transferencia de archivos desde su computadora a BBB
Puede transferir archivos como 'code.py' desde su computadora al BBB con comandos simples en el entorno de la terminal.
Genéricamente, la forma de transferir un archivo desde su computadora al BBB parece
scp /home/filename.file user @ IPAddress: / directorio
Desglosando esto:
- 'scp': El comando 'scp' permite copiar archivos desde, hacia o entre diferentes hosts. Utiliza ssh para la transferencia de datos y proporciona la misma autenticación y el mismo nivel de seguridad que ssh.
- '/home/filename.file': La ubicación del archivo en su computadora.
- 'user @ IPAddress: / directorio': la información de inicio de sesión de BBB y en qué lugar del tablero desea copiar el archivo.
Por ejemplo, digamos que descargué y guardé 'code.py' en el escritorio de mi computadora. Ahora quiero transferirlo al escritorio de BBB. Abriré la terminal de mi computadora y escribiré
scp /Users/dot/Desktop/code.py [email protected]: / home / root / Desktop /
No copie este ejemplo palabra por palabra, ya que las rutas en su computadora y BBB serán diferentes a las mías.
Encontré esta información en un sitio web útil aquí, donde también puede aprender a transferir carpetas de contenido.
Paso 9: Instalación de las bibliotecas adecuadas en BBB
Tendrá que instalar algunas bibliotecas para que el código funcione correctamente. Para instalar algo en su BBB, debe:
- Estar conectado a ethernet
- Alimentado por su computadora (si se está comunicando con su placa a través del terminal)
- Alimentado por una verruga de pared de 5 V (si está conectando la placa a un monitor)
Yo personalmente encendí mi placa a través de mi computadora y la programé a través del comando ssh, que se describió anteriormente en "Cómo comunicarse con el Beagle Bone Black".
Tendrás que instalar:
- Pitón
- Biblioteca de Python GPIO de Adafruit
- Selenio
- Navegador web sin cabeza PhantomJS
Paso 10: Instalación de la biblioteca de E / S de Python y Adafruit
El Beaglebone Black Board tiene muchos pines gpio, 65 en total, lo que lo hace único entre los muchos mini ordenadores y placas de microprocesador del mercado. Dos bibliotecas gpio compatibles con los pines gpio de Beagle son la biblioteca incorporada de BoneScript y la biblioteca Python GPIO de Adafruit. Como personalmente me siento más cómodo con Python, decidí usar la biblioteca Python GPIO. La biblioteca es bastante sencilla de descargar. Primero, ssh en Beagle Board e instala las siguientes dependencias:
sudo ntpdate pool.ntp.org
sudo apt-get update sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus -y
Luego escriba el siguiente comando para instalar la biblioteca python gpio
sudo pip instalar Adafruit_BBIO
Paso 11: Instalación de selenio
Selenium, en pocas palabras, automatiza los navegadores web. Lo que utiliza principalmente este proyecto es el Selenium WebDriver, que acepta comandos, los envía a un navegador como Chrome o Firefox y recupera los resultados. Este proyecto utiliza enlaces de Python de Selenium. Podría haber usado enlaces de JavaScript, pero preferí mantener el código en un solo idioma y, como decidí usar Python para controlar los pines GPIO de BBB, también usé Python para mi raspador web.
Para instalar selenium, ssh en BBB y escriba en la línea de comando
sudo pip instalar selenium
Paso 12: uso de selenio con un navegador web sin cabeza
Para instalar PhantomJS y poder usar el navegador web sin cabeza PhantomJS, ssh en BBB y escriba en la línea de comando
sudo apt-get install build-essential chrpath git-core libssl-dev
libfontconfig1-dev git clone git: //github.com/ariya/phantomjs.git cd phantomjs git checkout 1.9./build.sh
Estas instrucciones provienen del sitio web de PhantomJS aquí. Me encontré con muchos problemas al intentar instalar PhantomJS, pero finalmente logré seguir estos comandos.
Paso 13: Hora de la pizza
Ahora siéntese y disfrute de su pizza.
Recomendado:
Una aplicación de un botón extensible con respuesta de vibración: 7 pasos (con imágenes)
Una aplicación de un botón extensible con retroalimentación de vibración: en este tutorial, primero le mostraremos cómo usar un Arduino Uno para controlar un motor de vibración a través de un botón extendido. La mayoría de los tutoriales sobre botones pulsadores involucran el botón en la placa física, mientras que en este tutorial, el botón tiene que ser
INSTALACIÓN DE REEMPLAZO DEL BOTÓN TRASERO DEL BOTÓN TRASERO DEL CERRADURA DEL PORTÓN TRASERO DE RENAULT SCENIC / MEGANE: 3 Pasos
INSTALACIÓN DE REEMPLAZO DEL BOTÓN TRASERO DEL BOTÓN DE LA PUERTA TRASERA DE RENAULT SCENIC / MEGANE: La junta tórica de mala calidad que mantiene el botón del maletero en su lugar se desgasta y se pierde el botón del maletero del vehículo. La única solución de Renaults para esto es un mecanismo de bloqueo de arranque de reemplazo completo que solo fallará nuevamente y costará
Microcontrolador AVR. Cambie los LED con un interruptor de botón. Desactivación del botón pulsador: 4 pasos
Microcontrolador AVR. Cambie los LED con un interruptor de botón. Desactivación del botón pulsador: En esta sección, aprenderemos cómo hacer el código C del programa para ATMega328PU para alternar el estado de los tres LED de acuerdo con la entrada de un interruptor de botón. Además, hemos explorado una solución al problema de "Switch Bounce". Como de costumbre, nosotros
Caja de transmisión de radio con un solo botón: 7 pasos (con imágenes)
Caja de transmisión de radio con un solo botón: construí una caja para la barra de mi amigo que tiene una Raspberry Pi en el interior y con solo presionar un botón transmite audio a un sitio web usando Darkice e Icecast, mientras enciende simultáneamente un letrero de 'On-Air'. Pensé que esto era algo que la gente ya estaba
Domine su Micro: bit con Arduino IDE - Botón y otro GPIO: 3 pasos (con imágenes)
Domine su Micro: bit con Arduino IDE - Botón y otro GPIO: En nuestro blog anterior Master Your Micro: bit con Arduino IDE - - Light LED, hemos hablado sobre cómo instalar la biblioteca micro: bit en Arduino IDE y cómo para conducir LED en micro: bit con Arduino IDE. En este artículo te vamos a contar h