Reginald: UDP vigilancia bot; control a través de Internet (6 / 26 paso)

Paso 6: Código de Reginald

Hay dos programas separados para este proyecto. El lado de Arduino (servidor) y la GUI (cliente).

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

Artículos Relacionados

Control de un LED en Internet a través de Arduino con Teleduino

Control de un LED en Internet a través de Arduino con Teleduino

hay algo sobre cómo hacer un brillo del LED a través de un Arduino. ¿Qué podría hacer incluso más? ¿Por qué hacer eso LED resplandor de cualquier parte del mundo a través de internet? Ahora nos estamos hablando!Este proceso se hace realmente simple c
GSM 900 + ARDUINO smart home control a través de sms

GSM 900 + ARDUINO smart home control a través de sms

requisito deunoGSM 900placa de reléPaso 1: GSM 900 + ARDUINO smart home control a través de smsArduin Unoo GSM + placa de relé + codificación
Intel controla Edison con app Android personalizado a través de Internet.

Intel controla Edison con app Android personalizado a través de Internet.

¡Hello todo el mundo, espero que este proyecto te ayudará a hacer su hogar inteligente controlado a través de Internet!El proyecto consiste en un sistema casero elegante controlado a través de Internet por una aplicación para Android diseñada por mí.
Control remoto controlada a través de Internet

Control remoto controlada a través de Internet

Este es un tutorial un poco complejo, aunque voy a intentar hacerla tan fácil de entender para una gran cantidad de programadores.Antes de continuar, tenga en cuenta que necesitará al menos un Altair.Paso 1: teoría En primer lugar, debemos saber que
Control a través de Eco (Demo Video) de voz

Control a través de Eco (Demo Video) de voz

Cómo funciona:Coloque un servidor Node.js en algún lugar en la nube, que responde a las peticiones de Echo de Amazon para su aplicación.Este servidor entonces puede dirigir las peticiones a la frambuesa pi a través de una conexión WebSocket.El Raspbe
Mundos primera mando a humanos a través de Internet

Mundos primera mando a humanos a través de Internet

He estado recientemente estudiando esta cosa llamada eléctrica muscular estimulación (EMS) que básicamente utiliza electricidad para causar los músculos para moverse. Después de enterarse de esto decidí incorporar esto en mi proyecto de I.O. Hackster
Control de un Servo por Internet

Control de un Servo por Internet

Este Instructable muestra cómo controlar un servo por Internet, mediante un Núcleo de la chispa. Este Instructable es alimentado por un núcleo de la chispa y y una pequeña que está incluido en el Kit de fabricante de chispa (un servo normal funcionar
Abrepuertas de garaje móvil a través de internet

Abrepuertas de garaje móvil a través de internet

Mi puerta de garaje es un motor tubular, con un receptor de control remoto de 433 MHZ. control remoto pilas correr algún día, pero no mucho después de reemplazar la batería, encuentran que el receptor de control remoto es malo. Después de unos días p
Control remoto puerta - cosa su Internet

Control remoto puerta - cosa su Internet

al instante podemos abrir una puerta o controlar cualquier cosa nos podemos conectar. Funciona desde cualquier PC, iPhone o Android. Después de conectar algo que queremos controlar, descargar la aplicación gratuita para PC, abrir un puerto y controla
Enviar SMS de Arduino a través de Internet utilizando ENC28J60 y Thingspeak

Enviar SMS de Arduino a través de Internet utilizando ENC28J60 y Thingspeak

Este Instructable explica cómo enviar un SMS desde un Arduino usando el Internet. Hay muchas maneras de acercarse a esto y voy a explicar uno de los diferentes métodos utilizados para llevar a cabo esta tarea.Algunos puntos importantes para mi proyec
Cómo conocer gente REAL a través de internet

Cómo conocer gente REAL a través de internet

Hola allí!No te digo cómo recoger las chicas en los bares, ni cómo vestirse o actuar como alguien más atractivo que estás...Acabo de encontrar una forma interesante de ponerse en contacto con las personas de la vida real sólo por navegar por la web.n
Para empezar con IoT usando la partícula

Para empezar con IoT usando la partícula

IoT es un muy divertido experimentar, mientras que la diversión también es energía muy completo. Puede obtener una amplia gama de dispositivos de conexión, como por ejemplo una cafetera puede tweet cuando se hace el café o un automático garage abrela
Tomando la electrónica básica a Internet (IoT)

Tomando la electrónica básica a Internet (IoT)

Después de experimentar y divertirse con IoT con un Núcleo de la chispa, me di cuenta que podía añadir una serie de tutoriales para arriba en Instructables. Así que este instructable es el primero de una serie de instructables, que voy a mostrarte có
Fuente luminosa de humedad y temperatura reaccionando

Fuente luminosa de humedad y temperatura reaccionando

Este proyecto surgió de mi deseo de obtener una lectura de temperatura activo cuando estoy en mi habitación. no siendo aficionado a intentando mirar una pantalla pequeña en la habitación, quería algo que sólo podía sentir en mi habitación. con una si