Cómo mejorar este proyecto...
No hay ninguna API de Python para Azure y no tengo suficiente tiempo para averiguar cómo ejecutar la API C de Azure en Python para publicar mensajes. Esto significa que actualmente está limitada a un juego de FFA. En el futuro se mejorará sobre.
En el proyecto...
Para construir esta unidad de la etiqueta de láser necesita un par de cosas. Los más importantes son un Pi de frambuesa con un sombrero de Adafruit táctil TFT y un fotón partícula (WiFi es innecesario para este tablero).
El fotón es 3.3v algo reemplazable y otros microcontroladores programados con la variante de proceso de Arduino están muy bien también. (Cosas como la FLORA o algunos productos oficiales de Arduino).
También, el Raspberry Pi y la pantalla táctil está a menos que la solución óptima al problema que tenía, que era no tenia una LCD conmigo o momento de orden uno. Esto significa que con algunas adiciones y cambios al código funcionaría bien si había conectado un LCD directamente a su placa o utilizar un dispositivo diferente en lugar de la Raspberry Pi. Estoy pensando en usar una aplicación de windows phone para reducir el tamaño del dispositivo.
¿Cómo funciona?
Al pulsar el gatillo el fotón ejecuta una función que:
- Se convierte en la vibración de motor para una explosión
- Parpadea el LED RGB
- Envía el código del reproductor mediante el LED IR
- Envía un mensaje al Pi de frambuesa para reducir la cantidad de munición
Cuando se golpea el receptor IR del fotón:
- Registros de los flashes para determinar el jugador ID (PID) de la arma que le disparó
- Envía un mensaje al Pi de frambuesa para reducir la cuenta de salud
- Parpadea el LED rojo para mostrar fueron golpeado
- Convierte la vibración motor en para un a corto plazo
Cuando usted salud se convierte en < 0 el fotón:
- Entra en "volver a estado de desove" y deja de tratar y recibir daño
- Apaga LED para indicar Estado muerto
- Envía un mensaje a la Pi, indicando que su PID fue asesinado por el PID del jugador que último daño, el Pi esto remite a Azure
Algunas cosas causan un mensaje para enviarse al servidor. Ellos son:
- Muerte, muerte
- Clase de carga a actualización
- Juego terminado
Cuando un mensaje se pone en el mensaje en la pila todos los dispositivos responden:
- Actualizar marcador según mensaje si procede
- Actualización de perfiles de los jugadores si es aplicable
- Auto apagar temporalmente en estado muerto si juego terminado
de todos modos, aquí está lo que usted necesita:
Lista de materiales:
- Frambuesa Pi (utilicé un modelo B +)
- Partículas de fotón
- paquete de la batería USB de 5V 1a
- IR LED
- Receptor IR
- Dongle USB Wi-Fi
- USB al cable Micro USB
- Pantalla táctil TFT de Adafruit para Raspberry Pi
- Tarjeta SD de 8 GB precargada con Raspbian OS (se pueden también cargar por sí mismo si sabe cómo o utilizar una tarjeta más grande)
- Transistor NPN
- 2 botones
- resistencia de 100 ohm (no en Adafruit!)
- Motor de la vibración (no en Adafruit! El mío es de un controlador de Xbox 360 desechado)
- DotStar LED
- Tablero perforado
- Jefes masculinos
- Cabeceras de mujer
- Cables jumper hembra/hembra
- Alambre
- De la soldadura
Software:
- Partícula Dev
- Centro de Internet de Microsoft Azure (versión de prueba gratuita está muy bien, limita el total de los mensajes a 8 mil al día, que es un montón de mensajes)
Herramientas:
- Cortadores de alambre
- Peladores de alambre
- Computadora
- Red inalámbrica SSID y contraseña
- Soldadura de hierro
- Ayudar a la tercera mano (opcional)
La mayoría del hardware está disponible en Adafruit.com. Siguiendo los enlaces le llevará a su página web donde podrá agregar a su carrito y comprarlo. Herramientas no están vinculadas pero la mayoría se encuentran a través de una búsqueda rápida de Adafruit.