Editing Hola Mundo eImp

Jump to: navigation, search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 2: Line 2:
 
== Hola Mundo eImp ==
 
== Hola Mundo eImp ==
  
ESTADO: Verisón Inicial
+
ESTADO: borrador
 
Miembros: [[User:Tumaku]]
 
Miembros: [[User:Tumaku]]
  
Line 17: Line 17:
 
* un hardware (''"imp"'') que combina un microcontralador con un módulo wifi. Puede conectarse automáticamente a una red inalámbrica y desde ahí a internet. El micro puede programarse en remoto
 
* un hardware (''"imp"'') que combina un microcontralador con un módulo wifi. Puede conectarse automáticamente a una red inalámbrica y desde ahí a internet. El micro puede programarse en remoto
 
* un servicio en la nube que permite ejecutar agentes en el servidor de electric imp. Los agentes pueden conectarse de forma segura a internet y a los dispositivos ''imp''
 
* un servicio en la nube que permite ejecutar agentes en el servidor de electric imp. Los agentes pueden conectarse de forma segura a internet y a los dispositivos ''imp''
* un entorno de desarrollo IDE y una consola (también en la nube) que permiten desarrollar y depurar aplicaciones desde un navegador y descargarlas tanto al servidor de electric imp como a los dispositivos ''imp''
+
* un entorno de desarrollo IDE y una consola (también en la nube) que permiten desrrollar y depurar aplicaciones desde un navegador y descargarlas tanto al servidor de electric imp como a los dispositivos ''imp''
  
 
Se sigue el tutorial [http://www.electricimp.com/docs/gettingstarted/ Getting Started] del [http://www.electricimp.com/docs/ Dev Center] de electric imp
 
Se sigue el tutorial [http://www.electricimp.com/docs/gettingstarted/ Getting Started] del [http://www.electricimp.com/docs/ Dev Center] de electric imp
Line 109: Line 109:
  
 
===== Explicación básica del código =====
 
===== Explicación básica del código =====
electric imp utiliza un lenguaje de programación llamado [http://www.squirrel-lang.org/doc/sqstdlib3.html Squirrel]. Lo mejor para aprender es empezar a jugar con los ejemplos de código disponibles en la sección [http://www.electricimp.com/docs/api/ API Docs] del Dev Center de electric Imp.
+
electric imp utiliza un lenguaje de programación llamado [http://www.squirrel-lang.org/doc/sqstdlib3.html Squirrel]. Para aprender lo mejor es empezar a jugar con los ejemplos de código disponibles en la sección [http://www.electricimp.com/docs/api/ API Docs] del Dev Center de electric Imp.
  
 
Un programa se ejecuta en modo secuencial empezando por la primera línea.  
 
Un programa se ejecuta en modo secuencial empezando por la primera línea.  
Las funciones se definen precedidas por el keyword 'function'. Pueden colocarse en cualquier parte del código y no forman parte del flujo secuencial. Por ejemplo, en el programa "Hello world" se define la función "function blink()" para cambiar el estado del LED. Sin embargo, esta función sólo se ejecuta porque al final del código hay una línea que la llama:
+
Las funciones se definen precedidas por el keyword 'function' y pueden colocarse en cualquiere parte del código y no forman parte del flujo secuencial.
 +
Por ejemplo, en el programa "Hello world" se define la función "function blink()" para cambiar el estado del LED. Sin embargo, esta función sólo se ejectuta porque después que al final del código hay una llamada a la misma:
 
  blink();
 
  blink();
  
Las variables se inicializan al principio. Se les puede asignar números, cadenas, PINes,... El programa "Hello world" define una variable para gestionar el PIN al que se conecta el LED y otra variable para definir su estado.
+
Las variables se inicializan al principio y se les pueden asignar números, cadenas, PINes,... El programa "Hello world" define una variable para gestionar el PIN al que se conecta el LED y otra variable para definir su estado actual.
 
+
Todo el código se realiza en la función blink(). Básicamente cada vez que se llama a está función se cambia el estado y se escribe el PIN en consecuencia. Realizado esto, se le dice al imp que entre en modo ''sleep'' durante medio segundo y que cuando vuelva a despertarse ejecute de nuevo la función blink()
Todo el código se realiza en la función blink(). Básicamente cada vez que se llama a está función se cambia el estado del LED y se escribe el PIN en consecuencia. También se envía un mensaje al Log del servidor indicando el cambio de estado
+
  imp.wakeup(0.5, blink);
server.log("Estado " + state);
+
 
+
Realizado esto, se le dice al imp que entre en modo ''sleep'' durante medio segundo y que cuando vuelva a despertarse ejecute de nuevo la función blink() para así generar el parpadeo del LED
+
imp.wakeup(0.5, blink);
+
 
+
=== Y ahora, ¿qué?===
+
El siguiente paso será implementar un agente en el servidor. Hay un ejemplo en el tutorial [http://www.electricimp.com/docs/gettingstarted/3-agents/ Agents]. Después es cuestión de trastear por los ejemplos en [http://www.electricimp.com/docs/api/ API Docs] e ir aprendiendo sobre la marcha.
+
 
+
Con la ayuda de Hugo de electric imp creé un ejemplo para conectar un lector NFC a un imp y enviar la identidad de las tarjetas leídas al servidor. El código y una pequeña explicación están disponibles en [https://github.com/jmgjmg/eImpNFC github] Podríamos crear un proyecto sobre esto para la gestión de la puerta o el acceso a las máquinas.
+
 
+
También he documentado un ejemplo de un termómetro conectado que utiliza electricImp y muchas otras cosas [http://wiki.makespacemadrid.org/index.php?title=Term%C3%B3metro_conectado_online]
+
 
+
 
+
[[Category:Proyectos]][[Category:Internet de las cosas]][[Category:Electric Imp]]
+

Please note that all contributions to Wiki Makespace Madrid may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Wiki Makespace Madrid:Copyrights for details). Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to type the two words you see in the box below:

Cancel | Editing help (opens in new window)