Manejando tu propio servidor M2M privado gracias a Yaler


Oberon Microsystems desarrolló hace unos años   un framework  llamado Yaler cuyo  código fuente  está disponible en http://yaler.org/ .

La infraestructura del framework de  Yaler permite el acceso Web seguro a los sistemas embebidos  detrás de un firewall, un NAT o un gateway de la red móvil  :todo lo que se necesita en el  dispositivo es un socket TCP y uso del servicio  HTTP,lo cual  hace que su servicio Web que se ejecuta en el dispositivo, este accesible desde cualquier navegador Web , cURL u otro cliente HTTP,permitiendo  supervisar y controlar el dispositivo de forma remota .
Los fabricantes, pequeños negocios y clientes de empresas  pueden  basarse en Yaler usandolo  para permitir con sus terminales  control remoto via  web a los equipos privados, túneles protocolo genérico y domótica, para configurar remotamente los nodos de sensores inalámbricos ambiental, y para permitir el acceso remoto a los dispositivos portátiles conectados a Internet.

El funcionamiento del framework    como vemos en las siguientes imágenes , se basa en que  un Firewall, NAT o enrutador móvil  impide  el acceso  al dispositivo  y  después gracias a framework este proporciona direccionamiento y accesibilidad

Si dispone de un servidor Windows o Linux con una dirección de Internet, usted puede configurar su propio framworrk Yaler é descargandohttp://hg.yaler.org/yaler/get/tip.zip y siguiendo las  siguintes  instrucciones   para hacer funcionar Yaler.

  • Para generar y ejecutar el proyecto , primero asegúrese de que ha instalado y JDK6  que la variable de entorno PATH incluye el directorio bin del JDK .
  • Para hacer una construcción completa en Linux , ejecute:     . / build.sh
  • Y en Windows:    build.bat
  • Para iniciar Yaler , escriba:    java- ea- cp yaler.jar Yaler localhost: 80
  • Para utilizar SSL, primero debe crear un almacén de claves. En Linux , ejecute:     . / genkey.sh
  • Y en Windows:     genkey.bat
  • Para iniciar Yaler en modo seguro , escriba:     java- ea- cp yaler.jar Yaler localhost: 443 -secure

CRÉDITOS: Los org.yaler.StateMachines módulo se basa en caso QEP de Miro Samek   procesador publicado en el libro » Prácticas Statecharts UML en C / C + + , Segundo Edition » . Miro ha accedido generosamente publicarlo bajo la misma licencia que se aplica a todas las partes del Yaler : la licencia Sleepycat con el adicionalcláusula » CON FINES NO COMERCIALES » . Para otros algoritmos utilizados en Yaler favor consulte doc / References.txt .

Sin embargo aunque tener   tu propio servidor M2M  tiene muchas ventajas sobre todo asociadas  ala privacidad , la mayoría de la gente no tiene direcciones públicas de Internet, por lo que  tambien proporcionan un ejemplo Yaler alojado gratuitamente en http://try.yaler.net/ . Tenga en cuenta que este caso es sólo y sin ningún tipo de servicio o garantía de operatividad del uso privado y educativo. En el futuro, http://yaler.net/ podría proporcionar un servicio alojado comercial tal y como hizo en su dia Pachube ( despues Xively  y ahora Cosm.com) .

Algunas de las características del servicio comercial:
  • Conectividad como un servicio: Disfrute Web y SSH acceso seguro a sus sistemas integrados, sin importar si están ubicados detrás de un firewall, un NAT o un enrutador de la red móvil. Pago por uso, con el apoyo de la empresa de primera calidad.
  • Funciona con el hardware que elija:Yaler funciona con cualquier dispositivo que proporciona un socket TCP. Empezar a trabajar con dispositivos como Arduino, BEAGLEBONE, Netduino y Raspberry Pi, o implementar un enlace personalizado para el dispositivo, basado en nuestros ejemplos en C, C #, Java y Python.
  • Instalación sin complicaciones, sin reenvío de puertos:Una vez que la herramienta de línea de comandos YalerTunnel o una biblioteca Yaler, se ha instalado en el dispositivo, los usuarios finales simplemente conectar su dispositivo para acceder a él desde cualquier navegador o teléfono a una conocida, URL estable.
  • Diseñado para ser fiable y escalable:Productos conectados son difíciles. Concéntrese en su solicitud, vamos a preocuparnos por las cañerías. Desde el primer prototipo de pruebas y sobre el terreno a través de la vida útil de su producto desplegado.

Un anota mas : Incluso si no desea utilizar un servidor de transmisión, puede ejecutar  ejemplos que utilizen la biblioteca Gsiot.Server dentro de su red de área local, simplemente mediante la supresión de las propiedades RelayDomain y RelaySecretKey de los ejemplos!

Fuente  aqui

Maquina expendedora de caramelos conectada a Internet


Durante el 2013 Bay Area Maker Faire , el distribuidor   Electric  Imp repartieron  una asombrosa cantidad de caramelos  M & Ms con el prototipo «SnackBot» .Cientos de asistentes les encantó, así que decidieron compartir la forma en que lo construyeron.El  SnackBot se basa en el dispositivo Electric Imp   del que ya se  ha hablado en este blog ,  que como recodareis una plataforma de hardware, software y basada en la nube que hace que sea muy fácil de conectar casi cualquier cosa en Internet.

Este proyecto implica un poco de soldadura (y desoldar), y debe usted tomar cerca de 2-3 horas para completarlo
Para completar este proyecto, usted va a necesitar lo siguiente:
  • 1 x Brookstone SnackManTM
  • 1 x Electric Imp tarjeta
  • 1 x April Breakout Board
  • 1 x NFET
  • 1 x Diodo
  • 1 x 10KΩ resistencia 

Usted también va a necesitar algunas herramientas:

  • Philips Destornillador
  • Soldador
  • Soldadura
  • Cinta de espuma (u otro adhesivo)
  • Un iPhone o teléfono Android

Lo primero que tenemos que hacer es desmontar un  SnackMan tradicional  .

Se  va  a cambiar   (casi) toda la electrónica, y sustituirlos por una placa nueva  y un  FET.Desmontar el SnackMan:

  1. Retire la cúpula de plástico transparente presionando el botón en la parte frontal de la SnackMan.
  2. Retire la pieza superior de plástico para exponer la cubierta de engranajes y tapas de rosca.
  3. Quite la cubierta de engranaje, el engranaje, tapones de rosca, y tornillos.
  4. Presione sobre el botón (el mismo botón de # 1) y tire hacia arriba para retirar la cubierta de plástico.
  5. Una vez retirada la cubierta de plástico, tenemos acceso a la electrónica.
  6. Quite los tornillos que sujetan las placas de circuito a la base.
  7. Suelte todos los cables de la placa principal.

 

 

El SnackMan tiene una esfera que se usa para encender la máquinay  tambien para la  desconexión, así como controlar el tamaño de la porción. Vamos a modificarlo para actuar como un interruptor de alimentación para el Electric imp.Cuando el interruptor está en el estado desactivado, el SnackBot estará apagado. En cualquier otro estado, el SnackBot estará encendido. Nosotros no tenemos que preocuparnos acerca de cómo controlar el tamaño de porción, ya que será gestionado por nuestra página web.

Esto es lo que tenemos que hacer:

  1. Cortar el conector del extremo de los cables.
  2. Tire de los cables separados (esto hará que los próximos pasos más fácil).
  3. Desoldar todos los cables excepto el tercero de la parte superior (que debe ser de color negro).
  4. Suelde el cable rojo de la fuente de alimentación de la SnackMan al segundo desde el orificio superior.
  5. El cable rojo de la fuente de alimentación, y el cable negro que dejamos debería ser uno junto al otro.

Ahora debería tener 5 piezas:

  1. La cubierta superior del motor +
  2. El codificador rotatorio (tablero de dial circular +) de la parte delantera de la SnackMan
  3. La parte inferior de la SnackMan (con el cable de alimentación que viene desde la base)
  4. La placa principal
  5. La placa  IR

Usted no tendrá que utilizar la placa principal  ni la placa  IR , por lo que se puede descartar (o guardarlo para futuros proyectos si se quiere).

Lo siguiente que tenemos que hacer es conseguir que el motor se conecte a nuestra placa :

  1. Dobla los cables del NFET para los pasadores fuera alinean con GND y Pin9
  2. Soldar Pin S (origen) a GND (a la imp).
  3. Soldar Pin G (puerta) para Pin9 (en la imp).
  4. Soldar el (negro) cable negativo desde el motor al pin D (fuga).

Conexiones de la Electric  Imp :

  1. Suelde la resistencia 10k entre Pin9 y GND.

Conexión de la Electric  imp a la alimentación:

  1. Suelde el cable negro de la fuente de alimentación (base) del SnackMan al pin GND del diablillo.
  2. Suelde el cable extra que sale de la codificación giratorio para pin VIN del imp.
  3. Soldar el (rojo) positivo desde el motor al pin VIN del imp.

Añadir el diodo:

  1. Suelde el diodo entre los terminales positivo y negativo del motor de la SnackMan(el l lado banda / rayas del diodo debe ser soldado a (rojo) del motor positivo).
    •  

      Antes de cerrar el SnackBot recién imp habilitados, vamos a parpadear para arriba y ejecutar algún código de prueba para asegurarse de que todo funciona correctamente.Obtenga su imp online:

      1. Añadir baterías (o enchufe el cable de alimentación).
      2. Gire el codificador giratorio a cualquier posición que no sea la posición «Off».
      3. Inserte la  tarjeta Eelctric Imp en en la ranura para tarjeta SD de la placa adaptadora.
      4. Un LED en el interior del imp debe comenzar a parpadear.
      5. Siga los pasos de BlinkUp  para obtener su línea.
      • Si su imp no se enciende, es probable que tenga problema de cableado.Vayan y vuelva a comprobar que sueldan todas las cosas que había que soldar.

      En este punto, el imp debe parpadear verde, para indicar que está en línea y hablar con nuestro servidor.

      Pruebe el hardware:

      1. Acceda a Electric Imp basada en web IDE .
        • Si el IDE no se parece a la imagen, es necesario optar por la Beta IDE .
      2. Copia y pega el código de prueba del repositorio SnackBot en la ventana de dispositivos en el IDE.
      3. Hit Run.
      • El motor debería haber encendido durante 10 segundos, y luego vuelve a apagar. Si no fuera así, usted tiene un problema y usted debe asegurarse de que el NFET está orientado en la dirección correcta.

      Ejecute el código real:

      1. Copia y pega el código de Agente SnackBot en la ventana Agente de la IDE.
      2. Copia y pega el código de dispositivo SnackBot en la ventana de dispositivos del IDE.
      3. Hit Run.

      Cuando navegas URL Agent del dispositivo, se le presentará con una página web. Si hace clic en uno de los botones, se debe encender el motor y distribuir el caramelo.

  2.  

    Ahora que todo está conectado y probado, vamos a añadir los toques finales.Asegure Electrónica del SnackBot:

    1. Si lo desea, retire la pieza roja de plástico. Esto hará más fácil BlinkUp en el futuro.
    2. Vuelva a colocar el interruptor de codificación / potencia rotativa.
    3. Añadir cinta de espuma a la base del conjunto SnackBot para sostener el tablero del desbloqueo de abril en su lugar.
    4. Presione firmemente el tablero del desbloqueo de abril (con la imp) en la cinta de espuma que acaba de dejar.

    Vuelva a montar el resto de la SnackBot:

    1. Añadir la cubierta de plástico que se coloca sobre la electrónica.
    2. Añadir el botón de plástico.
    3. Tornillo de la tapa de plástico en su lugar.
    4. Cubra los tornillos con los tapones de rosca.
    5. Añadir el dispensador de engranajes / dulces.
    6. Añadir la cubierta del engranaje.
    7. Encaje la clara cúpula de plástico en su lugar.
    8. Añadir caramelos   y Disfrute! 
Fuente  aqui