Editing Sensorino

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 1: Line 1:
El proyecto Sensorino tiene varios sub-proyectos que en conjunto facilitan construccion de redes de sensores / actuadores baratas.  La parte software presenta una solucion completa que sin embargo necesita que el usuario por su cuenta complete y conecte todo el hardware necesario para su caso de uso.
 
 
Esta pagina recoge discusiones y consideraciones tempranas que ocurrierion antes de empezar el desarrollo de software o hardware Sensorino actual.  Actualmente se mantiene la documentacion tecnica del proyecto [https://github.com/Sensorino/Sensorino/wiki en Github en el wiki asociado al sub-proyecto de firmware Sensorino] y los sitios enlazados ahi.  El canal de comunicacion es la lista de correo mencionada en el wiki de Github.
 
 
 
= Sensorino =
 
= Sensorino =
  
Estado: Software funcional, usa hardware off-the-shelf, desarrollo de placas propias abandonado
+
ESTADO: PRIMERAS PRUEBAS
  
 
Miembros: [[User:Dario_Salvi]], [[User:Bozo]], [[User:Roberto Zabala]], Andrew Zaborowski
 
Miembros: [[User:Dario_Salvi]], [[User:Bozo]], [[User:Roberto Zabala]], Andrew Zaborowski
Line 14: Line 10:
 
construir una red de sensores compatibles con el IDE de Arduino y que cuesten menos que 5 € con todo incluido.
 
construir una red de sensores compatibles con el IDE de Arduino y que cuesten menos que 5 € con todo incluido.
  
== Milestone 0 ==
+
== Milestone 0==
Fecha: 15 Mayo 2013
+
Fecha: 15 Mayo
  
 
* '''HW''':
 
* '''HW''':
Line 57: Line 53:
 
= Motivación =
 
= Motivación =
  
Hay muchas aplicaciones donde lo que queremos es simplemente un medio de enviar y recibir información sencilla sin tener que cablear toda el entorno. Un ejemplo es la casa, por ejemplo nos interesa saber que puertas o ventanas están abiertas, queremos apagar o encender tal luz o electrodoméstico etc.
+
Hay muchas aplicaciones donde lo que queremos es simplemente un medio de enviar y recibir información sencilla sin tener pero que cablear toda el entorno. Un ejemplo es la casa, por ejemplo nos interesa saber que puertas o ventanas están abiertas, queremos apagar o encender tal luz o electrodoméstico etc.
 +
 
  
 
= Antecedentes =
 
= Antecedentes =
Line 74: Line 71:
 
* se tiene que poder alimentar con una pila de tipo botón o dos AA por un año
 
* se tiene que poder alimentar con una pila de tipo botón o dos AA por un año
  
 +
Estamos buscando alternativas, abajo hay una recopilación de posibilidades.
  
'''Funcionalidades que queremos:'''
+
==Low power==
 
+
* recibe mensajes de la red de sensores a través de un nrf24 (probablemente conectado a través de un Arduino)
+
* almacena historial de datos (BBDD)
+
* permite controlar dispositivos actuadores (encender/apagar etc...)
+
* lanza reglas del tipo if(...) then... mejor si definidas con un lenguaje alto nivel interpretado
+
* almacena "escenarios de uso", por ejemplo: "escenario me voy de vacaciones": todo se apaga y se activa al alarma
+
* que se conecte a servicios web externos tipo "enviar SMS" o "hacer un tweet"
+
* la interfaz:
+
** mejor si web, aunque se pueden pensar alternativas (movil, PC) etc.
+
** que permita ver el estado de los dispositivos
+
** que tenga gráficos para ver tendencias, explorar patrones etc.
+
** que permita "actuar los actuadores" (pulso ON y se enciend la luz)
+
** que permita crear escenarios de uso y activarlos
+
** que permita definir reglas
+
 
+
 
+
 
+
==Ideas para el Hardware==
+
 
+
 
* https://www.sparkfun.com/tutorials/309
 
* https://www.sparkfun.com/tutorials/309
 
* http://www.gammon.com.au/forum/?id=11497
 
* http://www.gammon.com.au/forum/?id=11497
Line 100: Line 79:
 
** http://www.kerrywong.com/2012/02/19/atmega328-fuse-bit-setting-for-3-3v-vcc/
 
** http://www.kerrywong.com/2012/02/19/atmega328-fuse-bit-setting-for-3-3v-vcc/
 
** http://www.engbedded.com/fusecalc
 
** http://www.engbedded.com/fusecalc
 +
 
* buck-boost
 
* buck-boost
 
** http://www.ti.com/product/tps63036
 
** http://www.ti.com/product/tps63036
  
 +
==Ideas para el Hardware==
  
 
===MCU===
 
===MCU===
Line 113: Line 94:
 
* el ATtiny24 o 84 aunque sus capacidades son limitadas y no hay plena compatibilidad con Arduino. El precio de un Attiny24 es de medio euro.
 
* el ATtiny24 o 84 aunque sus capacidades son limitadas y no hay plena compatibilidad con Arduino. El precio de un Attiny24 es de medio euro.
 
* Hay un [http://nerdralph.blogspot.ca/2014/01/nrf24l01-control-with-3-attiny85-pins.html tipo] que ha conseguido conectar un ATTiny85 dejando tres pins libres !  Perfecto para hacer llaveros o super mini sensores.
 
* Hay un [http://nerdralph.blogspot.ca/2014/01/nrf24l01-control-with-3-attiny85-pins.html tipo] que ha conseguido conectar un ATTiny85 dejando tres pins libres !  Perfecto para hacer llaveros o super mini sensores.
 
MCU+RF24L01 producto final: http://www.mysensors.org/hardware/micro
 
  
 
===Radio===
 
===Radio===
Line 188: Line 167:
  
 
A esto podemos añadir:
 
A esto podemos añadir:
* [http://bsonspec.org/ binary Json]
+
 
* [http://mqtt.org/new/wp-content/uploads/2009/06/MQTT-SN_spec_v1.2.pdf MQTT-SN]
+
* enrutamiento (VER [[Apuntes sobre enrutamiento con nrf24l01]]):
 +
** [http://cnm.tagus.inesc-id.pt/software/simple-ant-routing-algorithm-sara SARA]
 +
** [http://maniacbug.github.io/RF24Network/index.html algoritmo hecho para nrf24 de maniacbug] con [http://maniacbug.wordpress.com/2012/03/30/rf24network/ su entrada de blog]
 +
** [http://forum.arduino.cc/index.php?topic=187692.0 este otro] que parece mas prototipal
 +
** [https://github.com/mattibal/meshnet este] que parece muy bueno!
 +
** [http://www.atmel.com/tools/LIGHTWEIGHT_MESH.aspx?tab=overview la librería de ATmel?]
 
* algoritmo de encriptación: [http://en.wikipedia.org/wiki/Tiny_Encryption_Algorithm TEA] o su version mas avanzada [http://en.wikipedia.org/wiki/XTEA XTEA]
 
* algoritmo de encriptación: [http://en.wikipedia.org/wiki/Tiny_Encryption_Algorithm TEA] o su version mas avanzada [http://en.wikipedia.org/wiki/XTEA XTEA]
 
* IP en Arduino con [http://playground.arduino.cc/Code/SerialIP SLIP]?
 
* IP en Arduino con [http://playground.arduino.cc/Code/SerialIP SLIP]?
Line 203: Line 187:
 
* [www.souliss.ne Souliss] aunque parece suportar solo Ethernet o Wifi
 
* [www.souliss.ne Souliss] aunque parece suportar solo Ethernet o Wifi
  
== Ideas para la red==
 
  
Enrutamiento (VER [[Apuntes sobre enrutamiento con nrf24l01]]):
+
'''Funcionalidades que queremos:'''
* [http://forum.diyembedded.com/viewtopic.php?f=4&t=3590 gente que discute sobre el tema]
+
 
* [http://cnm.tagus.inesc-id.pt/software/simple-ant-routing-algorithm-sara SARA]
+
* recibe mensajes de la red de sensores a través de un nrf24 (probablemente conectado a través de un Arduino)
* [http://maniacbug.github.io/RF24Network/index.html algoritmo hecho para nrf24 de maniacbug] con [http://maniacbug.wordpress.com/2012/03/30/rf24network/ su entrada de blog]
+
* almacena historial de datos (BBDD)
* [http://forum.arduino.cc/index.php?topic=187692.0 este otro] que parece mas prototipal
+
* permite controlar dispositivos actuadores (encender/apagar etc...)
* [https://github.com/mattibal/meshnet este] que parece muy bueno!
+
* lanza reglas del tipo if(...) then... mejor si definidas con un lenguaje alto nivel interpretado
* [http://www.atmel.com/tools/LIGHTWEIGHT_MESH.aspx?tab=overview la librería de ATmel?]
+
* almacena "escenarios de uso", por ejemplo: "escenario me voy de vacaciones": todo se apaga y se activa al alarma
 +
* que se conecte a servicios web externos tipo "enviar SMS" o "hacer un tweet"
 +
* la interfaz:
 +
** mejor si web, aunque se pueden pensar alternativas (movil, PC) etc.
 +
** que permita ver el estado de los dispositivos
 +
** que tenga gráficos para ver tendencias, explorar patrones etc.
 +
** que permita "actuar los actuadores" (pulso ON y se enciend la luz)
 +
** que permita crear escenarios de uso y activarlos
 +
** que permita definir reglas
 +
 
 +
 
 +
==ideas network==
 +
 
 +
http://forum.diyembedded.com/viewtopic.php?f=4&t=3590
  
 
=Avances=
 
=Avances=
Line 869: Line 865:
 
# no añadimos nada, y pedimos al usuario que enchufe el Sensorino cuando el programador avr esté listo para subir el código, esto hace que sea compatible con la mayoría de programadores
 
# no añadimos nada, y pedimos al usuario que enchufe el Sensorino cuando el programador avr esté listo para subir el código, esto hace que sea compatible con la mayoría de programadores
 
# si con la placa cp2102 NO fuera necesario añadir condensador y resistencia, usaríamos esta y punto
 
# si con la placa cp2102 NO fuera necesario añadir condensador y resistencia, usaríamos esta y punto
 
[[Category:Proyectos]][[Category:Proyectos con arduino]]
 

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)