Paso 6: Código de Reginald
En Resumen; para ejecutar correctamente el código de Reginald, tendrá que cumplir con lo siguiente:
- Descargar todo lo necesario. (Arduino y procesamiento de IDE, el archivo .zip en esta página Instructable y las bibliotecas)
- Configurar el procesamiento mediante la colocación de las bibliotecas en el directorio correcto en la carpeta de programa de procesamiento de
- Configurar el bosquejo para la GUI
- Poder subir código para el Arduino
Para la GUI, se requiere el procesamiento IDE (parecerá familiar, el IDE de Arduino está basado en el IDE de procesamiento), la biblioteca de ControlP5 y la biblioteca hipermedia.
Supongo que ya tienes el IDE de Arduino, descargar el .zip en esta página instructable y siga los enlaces para descargar el SW apropiado:
Procesamiento de IDE:
http://Processing.org/download/
ControlP5 biblioteca:
http://www.sojamo.de/Libraries/controlP5/
Biblioteca hipermedia (clic en "Biblioteca de procesamiento"):
http://ubaa.net/shared/Processing/UDP/
Procesamiento y las bibliotecas:
Proceso es una gran manera de crear fácilmente programas que abren ventanas independientes para capturar eventos de usuario. Una vez terminado un programa, es un asunto trivial para exportar el programa a un archivo ejecutable. Hay muchas maneras de capturar la interacción del usuario.
La biblioteca de ControlP5 ayuda a crear los distintos botones y widgets en la GUI que hice. ControlP5 es una biblioteca superior para la creación de GUI. Es fácil de usar, muy agudo y completo. Con el proceso y ControlP5, uno puede fácilmente crear un poderoso y disponen de interfaz de usuario rica.
La biblioteca hipermedia maneja todas las comunicaciones de la UDP.
¿Qué hacer con las bibliotecas?
Después de haber descargado todo, asegúrese de colocar las dos bibliotecas en la ubicación correcta para que proceso puede encontrar. Descomprimir las librerías (hipermedia se descargará como un archivo "udp.zip") y siga la ruta:
processing-X.X.X\modes\java\libraries
dentro de la carpeta de programa de tratamiento en las descargas. El ' x representa el número de versión de procesamiento te has descargado. Coloque las carpetas de las bibliotecas aquí.
Ahora para configurar el bosquejo para la GUI:
Para configurar el bosquejo para la GUI, todo lo que tiene que hacer es agarrar la carpeta: "GUIClient" del .zip del archivo y que poner en algún sitio en su computadora.
El IDE de procesamiento, decide abrir un dibujo y vaya a la carpeta "GUIClient". Entrar en la carpeta y seleccione el boceto dentro. Una nueva ventana de procesamiento debe cargar con código. Ejecute el programa.
Después de seleccionar "Ejecutar", puede aparecer un error dentro de la consola de procesamiento con respecto al programa que no se puede abrir correctamente la toma. Esto es de esperarse; desde la dirección IP y Puerto probable correcta no ha sido introducidas todavía.
Cifrado de Reginald:
Reginald no quiere ser controlado por cualquiera, así que está encriptado con su propia contraseña. Ver fotos 4 y 5 para ver una demostración de esto.
Cuando usted envía el "despertar" de comando, Reginald ve esto como una solicitud de acceso. En ese momento, encuentra su dirección IP y número de puerto desde el que ha enviado y envía un saludo a usted. En este punto, solicitará una contraseña de acceso. Introduzca la contraseña correcta y usted puede tener control. Será negado, sin embargo, si la contraseña es incorrecta.
Si intenta controlar Reginald desde una ubicación remota, tenga en cuenta que puede no recibir saludo de Reginald y confirmación de acceso. Esto es porque si está conectado a la wifi de una escuela o un negocio, el firewall wifi puede bloquear los mensajes de que Reginald está intentando enviarle. Sin embargo esto no afecta la funcionalidad. Si simplemente entras en "despertar" seguido de su contraseña, tendrá acceso en 15 segundos. Reginald simplemente asumirá que usted recibió los paquetes. Este es uno de los inconvenientes a UDP en lugar de TCP. TCP se asegura que el paquete se recibe mientras que UDP simplemente envía el paquete y no te preocupes. Sin embargo esta falta de verificación hace UDP mucho más rápido y ligero, que me gusta.
Momentos como estos son donde el interruptor de"fijación" es útil. Si tuviera que enviar "wake" con el "bloqueo Interruptor" deshabilitado, pulsando las teclas 'w' y 'a' enviar comandos. Esto podría confundir a Reginald, y sería negadas tratando de introducir su contraseña.
EDICIÓN 06 de marzo de 2013 ***
Tratamiento desde entonces ha actualizado su SW de 1.5.1 a la 2.0 Beta. Si su versión es 2.0 o superior, utilice el GUIClient2.0 dentro del archivo zip. La única diferencia es la clave del método de captura, se puede leer sobre él aquí:
http://Processing.org/Reference/Key.html