Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Bienvenidos - Desarrollo
#1
resim

Bienvenidos a la sección de desarrollo del proyecto colaborativo de SpainLabs sobre los motes. En este punto es donde nos dedicaremos a la evolución del proyecto tanto a nivel de software como de hardware. Inicialmente y dado que se desconoce el grado de interés por vuestra parte, se mantendrá los post (debidamente identificados) en un mismo subforo, si evoluciona a buen ritmo, crearemos dos secciones nuevas, una para HW y otra para SW, todo dependerá de lo que necesitemos.

Los planos y el código serán Open Source pero no se podrá obtener un beneficio económico externo al foro, y el uso de dicho material tiene que estar debidamente identificado como que es de SL.

resim

Aquellos usuarios que estén interesados en participar de una manera activa en el desarrollo, deberán comunicarlo, queremos llevar un mínimo control de lo que vamos a ir haciendo en este proyecto, aunque la entrada es libre a cualquiera.

Tendremos que ser precisos y llevar un mínimo registro de todas las novedades y cambios que se hagan tanto a nivel de SW como de HW, o las diferentes versiones que se hagan. Intentaremos generar una lista de tareas entre todos para aquellos que queráis ayudar, de forma que intentemos avanzar todos en una misma dirección y no nos dispersemos en los primeros pasos. Encontrareis un post en esta misma sección donde comentamos inicialmente donde nos gustaría evolucionar, así que si os veis capaces, podéis ver donde se precisa ayuda.

¿Que necesitamos? - Primeros pasos.

Con una base bastante clara con la que trabajar y muy económica debido a la gran cantidad de componentes que se pueden adquirir como muestras, podemos dibujar lo que podrían ser las próximos pasos.

Si nos fijamos en el SW; Se tendría que desarrollar un firm mucho mas completo y personalizable. Dado que pueden salir infinidad de opciones y configuraciones, seria genial poder hacer alguna aplicación con la que controlar los motes de la forma mas fácil posible. Podemos o hacer una aplicación par windows o los diferentes sistemas, intentando ver en que plataforma de programación seria la mas adecuada.

En cuanto al HW; Pondríamos miras a una versión 2.0 en la cual preparáramos los motes para añadir sensores de la forma mas fácil posible, intentando hacer compatibles tantos como veamos interesantes.

Ademas, hay que diseñar el HW de lo que podríamos llamar al dispositivo Master. No deja de ser similar al mote, pero su principal función es la de conectar los motes con el PC, o hacer de pasarela para acceder a ellos mediante movil con BT o lo que sea. Se precisa desarrollar un HW que nos facilite la comunicación con el pc. Nuevamente, lo ideal seria desarrollar el HW en ambas plataformas (Arduino y Pic).

Al margen de todo esto, habría que mirar si existe la posibilidad de hacer un programador muy sencillo para la versión de Pic, con la que programar una o dos familias, evitando los componentes innecesarios y realizando una placa lo mas pequeña y barata posible. Su única función seria la de grabar por icsp el mote en la versión pic para aquellos que no dispongan de programador y les gustaría tirar por esta versión. También es interesante ver la opción de añadir un bootloader.

Todo se plantea en ideas, que en el futuro, cualquier parecido con lo aquí escrito puede ser pura coincidencia. Lo que si es seguro es que sin vuestra colaboración, esto se quedara aparcado en prácticamente su totalidad, pues es un proyecto grande que precisa tanto apoyo como se pueda.

¿Que disponemos?

Se ha preparado una base muy sencilla de HW con la que poner empezar a trabajar, tanto en el desarrollo del software como en tener un punto sobre el cual evolucionar y preparar una versión 2.0. No se descarta que para el actual HW se creen shields o diferentes módulos, no deja de ser una base que puede funcionar perfectamente.

Se dispone o se dispondrá de todo el código fuente que se genere, lo vamos a enfocar como software y hardware libre, así que todo lo que decidáis publicar, sera para todos.

Actualmente, dejo a disposición el esquemático de la actual versión v1.0, que lo podréis encontrar en un hilo de este subforo de desarrollo.

¿Donde esta el limite?

El limite mas destacable va a ser el tema económico, si queremos hacer algo que pueda llegar al máximo numero de usuarios, tenemos que diseñar y programar las cosas entorno a un hardware muy económico, aunque se da la opción de que cada uno pueda hacerse lo que quiera, o los shields que quiera, o conectar a los motes lo que quiera.

¿Tiene que cumplir nuestro código alguna estructura en concreto? ¿Podemos diseñar desde cero el firm?

Creo que lo ideal seria tener un firm oficial, que vayamos haciendo entre todos, mediante el cual poner en marcha el HW de forma básica o con diversas opciones configurables para poder adaptar la aplicación a las necesidades de cada uno.

Por supuesto que cada uno es libre de diseñar su código, o de hacer versiones distintas del firm y luego publicarlas. Habrá un sitio para todas ellas que queráis aportar, no por salirse del firm oficial van a quedar relegadas a un segundo plano, o las vamos a despreciar.

Os agradecemos enormemente el interés en aportar lo que podáis o queráis y no os vamos a exigir nada.

¿Puedo hacer mi propio HW? ¿Y compartirlo?

Puedes hacer tu propia versión, los esquemáticos son libres, puedes adaptartelos a lo que quieras siempre y cuando menciones de donde salen, que tengas en cuenta su origen. Y también puedes compartir ese HW aquí, pedir ayuda en el diseño, o lo que se te ocurra. Todas las aportaciones serán siempre bienvenidas.

¿Has comentado en algunos puntos algo sobre "shields", puedes concretar esto un poco mas?

Veamos, se ofrece un HW básico, al cual se le pueden conectar diferentes cosas (aun no diseñadas), realmente acepta un montón de opciones pues el HW es totalmente programable por el usuario, teniendo en cuenta algunos detalles. El HW se ha diseñado en parte pensando en que podemos conectar una placa a modo de shield a la actual, de forma que aumentamos sus características o completamos con esa shield el HW que necesitamos para nuestra aplicación.

Dado que es una versión básica, se plantea todo como un diseño que sea modular. Tenemos la posibilidad de añadir o quitar cosas según las necesitemos. Usando módulos existentes en el mercado, perfectamente operativos, que pueden ser conectados a nuestro HW con el objetivo de completarlo y lograr una aplicación que nos resuelva un problema.

¿Donde podemos conseguir el HW básico?

Actualmente se ha mandado a fabricar una tanda de 20 unidades, las cuales servirán para verificar el ultimo diseño y dar por finalizada la primera etapa. Esta primera versión, una vez pasada la verificación, es perfectamente funcional. Este primer lote, se ha repartido entre los miembros del staff que lo han solicitado. Dado que se desconoce el interés que pueda tener en la comunidad este proyecto, abriremos un post en el cual pondremos el coste y todo o necesario para obtener el HW necesario. Se ofrecerán dos opciones, las cuales serán tener el HW ya ensamblado (soldado), solicitar solamente la placa (pcb) y la lista de componentes y demás información necesaria estará en el foro accesible a todos, o la opción de pcb + componentes que lleve la placa para soldar en casa.

¿Que tienes en mente sobre posibles diseños de HW?

Esta pregunta nos puede dar para un rato muy largo, vamos a intentar dejarlo muy resumido. Tenemos un "núcleo" que seria el HW base, el cual no esta completo pues le faltaría un HW adicional que comunicara todos los Air motes con internet, un pc, movil, tablet, etc etc. Este HW esta aun pendiente de diseñar y fabricar. No obstante, los Air motes pueden funcionar como motes o realizar la función de este HW especifico que llamaremos Master. Disponen de conexión UART la cual podremos usar para conectarlos al pc y poder trabajar con ellos.

Como se ha comentado antes, se pueden diseñar shields, o diversos módulos que nos faciliten las cosas. Pueden salir diferentes versiones de HW que los usuarios quieran compartir con el resto de la comunidad, placas con una serie de sensores o la posibilidad de conectar con otros dispositivos, realmente el limite lo pondrá nuestra imaginación y después, nuestro bolsillo.

¿No hemos hablado nada sobre el SW del proyecto, cuéntanos mas?
Dado que el SW es completamente programable por el usuario, no existiría ninguna limitación a que cada uno hiciera su propio código en función de sus necesidades. Se intentara que entre todos los que podamos, sacar un SW genérico que nos permita desarrollarlo para añadir tantas funciones como nos sea posible y que sea tan flexible como se pueda, tiene que permitir al usuario poder configurar su aplicación de una manera fácil y rápida, tratando de que la mayoría de usuarios posibles puedan hacer uso del proyecto aun sin tener conocimiento sobre programación o hardware.

Podríamos hablar también de SW en forma de App para moviles o tablets, y SW para pc que realice funciones como la de configuración de forma remota o adquisición de datos y generación de gráficas, realmente las posibilidades como podréis ver o veréis son elevadas.

El firm básico, sera el que permita a los motes enviar al master (o mote que haga la función de master) un mensaje con la información de los sensores y alguna cosa mas, para que esta sea posteriormente procesada en el pc, guardada, o lo que el usuario estime oportuno hacer con dicha información. Posteriormente trataremos de añadir funcionalidades como la comunicación bidireccional y el envío de comandos para poder interaccionar con el HW de forma remota.
Citar
#2
Bien, voy a comentar un par de cosillas, me acabo de leer todo, y me surgen las siguientes inquietudes.

ARDUINO:

He leido que la idea es usar un arduino MINI, en ved de integrar un arduino MINI en los modulos, se ha pensado en usar un micro 328, como el que lleva dicho arduino, y evitar la necesidad de añadir un arduino "externo" por decirlo asi? Aunque seria mirar los precios, porque puede que salga mas caro un Atmega328 con los componentes externos que necesita, que el propio arduino MINI.

MICROCHIP:

En el primer prototipo que has colgado, sobre la placa con el PIC, el 876 tiene conexion I2C, quizas seria interesante poner unos conectores accesibles y listos para esta conexion no?, muchos de los sensores actuales se comunican por I2C, aunque tambien es un dilema, porque si los sensores funcionan a 3.3V seria necesario adaptar las señales juraria. Aunque hay IC especificos para dicho fin

Otro aspecto, que ya he visto comentado, estaria interesante, encontrar algun programador de pics, que se pudiera integrar de alguna forma en la placa, y asi poder programarla directamente por USB. Seria un plus para estos pequeños modulos sin ninguna duda.

Por ahora poco mas que decir, quizas para el codigo estaria bien usar alguna plataforma estilo GITHUB o similar nose....

Muy buen trabajo
Citar
#3
Sobre arduino, el chip es ya mas caro aparte de que no lo podemos soldar nosotros. Lo que vale el mini ese, que son 3,5€ y tarda muy poco en llegar. El micro ya vale esos 3,5€ y aun te queda hacer la placa, y el resto de componentes.

http://www.ebay.es/itm/181285938269?ssPa...1497.l2649

El problema de i2c, es el que comentas, que pueden ir tanto a 3v3 como 5v, y se precisaria de un adaptador de niveles, no cabe en la placa, tendria que ir fuera. En el siguiente diseño, sin duda que es algo a tener muy en cuenta.

Tengo mirados unos programadores DIY, pero irian aparte. La programacion de estos micros se hace con una tension superior a 5v y requiere de cierta circuiteria adicional, no merece la pena montarla todo el rato en cada placa. En el futuro, lo suyo es usar un micro que tenga usb nativo y añadirle un bootloader.

Programadores PIC. El mas interesante es el pickit clone 2, pero tambien el mas complejo.

http://www.puntoflotante.net/USBPICPROG.htm

http://www.forocoches.com/foro/showthread.php?t=3147993

http://www.taringa.net/posts/hazlo-tu-mi...Clone.html

http://www.electronik.es/prog-usblite.html
Citar
#4
grafisoft escribió:Sobre arduino, el chip es ya mas caro aparte de que no lo podemos soldar nosotros. Lo que vale el mini ese, que son 3,5€ y tarda muy poco en llegar. El micro ya vale esos 3,5€ y aun te queda hacer la placa, y el resto de componentes.

http://www.ebay.es/itm/181285938269?ssPa...1497.l2649

El problema de i2c, es el que comentas, que pueden ir tanto a 3v3 como 5v, y se precisaria de un adaptador de niveles, no cabe en la placa, tendria que ir fuera. En el siguiente diseño, sin duda que es algo a tener muy en cuenta.

Tengo mirados unos programadores DIY, pero irian aparte. La programacion de estos micros se hace con una tension superior a 5v y requiere de cierta circuiteria adicional, no merece la pena montarla todo el rato en cada placa. En el futuro, lo suyo es usar un micro que tenga usb nativo y añadirle un bootloader.

Programadores PIC. El mas interesante es el pickit clone 2, pero tambien el mas complejo.

http://www.puntoflotante.net/USBPICPROG.htm

http://www.forocoches.com/foro/showthread.php?t=3147993

http://www.taringa.net/posts/hazlo-tu-mi...Clone.html

http://www.electronik.es/prog-usblite.html


El 876 no tiene programacion ICSP a 5V?, juraria que no necesitas una tension superior, pero claro, el circuito de programacion ocupa espacio y encarece el precio por unidad esta claro.

Respecto al I2C, hay ICS en encapsulado SMD que ocupan muy poco, tenia por ahi guardados alguno:

http://www.marutsu.co.jp/data/PCA9512.pdf

Podria ser implementable en proxima versiones efectivamente.

Por ahora la idea es trabajar sobre la revision que teneis ya pedidas las placas, cierto?

Un Saludo¡¡
Citar
#5
Las placas estan sin pedir, se enviara a fabrica el diseño que hay puesto, la v1.0 Pero no creo que se hagan muchas, por ser una version muy basica, es mas un HW destinado a tener una base y ver posibilidades para preparar la v2.0 que otra cosa.

La programacion de la gran mayoria de modelos de pic precisa de una tension superior a 5v en la patilla 1, ademas de la de 5v
Citar
#6
grafisoft escribió:Las placas estan sin pedir, se enviara a fabrica el diseño que hay puesto, la v1.0 Pero no creo que se hagan muchas, por ser una version muy basica, es mas un HW destinado a tener una base y ver posibilidades para preparar la v2.0 que otra cosa.

La programacion de la gran mayoria de modelos de pic precisa de una tension superior a 5v en la patilla 1, ademas de la de 5v

El 876 permite programacion a 5V si no se me cuela nada del datasheet, pero volvemos al problema de que el circuito de programacion encarece el precio y la complejidad, pudiendo tener uno exterior con el que programar todos. Un conector accesible y pista, conectar y listo.

• Single 5V In-Circuit Serial Programming capability


Perfecto, yo de SW (Referido a programacion de aplicaciones de PC y demas) tengo poca idea la verdad, pero en PICS HW y demas me puedo ir defendiendo.
Citar
#7
Es verdad, pues pensaba que no era así, me debido liar con otro modelo. No obstante es eso, es repetir circuiteria. Lo suyo seria hacer una versión fácil del programador para la familia 16F/LF, si es que se puede, ver que coste tiene, y si fuera necesario se puede mandar a fabricar. Los que tenemos programadores, pues podemos mandar los micros ya programados que se precisen.

Tambien hay que hacer la programacion del firm, que hay varios puntos posibles donde desarrollar.
Citar
#8
Por cierto, estamos tirando de muestras en la medida de lo posible, si quieres y/o puedes, intenta pedir el modelo de micro. Yo voy pidiendo de mas para los que no puedan disponer de esta opción. Esto solo si se quiere placa(s), no es obligatorio.
Citar
#9
grafisoft escribió:Por cierto, estamos tirando de muestras en la medida de lo posible, si quieres y/o puedes, intenta pedir el modelo de micro. Yo voy pidiendo de mas para los que no puedan disponer de esta opción. Esto solo si se quiere placa(s), no es obligatorio.

Sin problema SOIC 300mil no?

Sobre el FW ya hay algo hecho?, lo que se busca mas o menos de funcionalidad lo tengo mas o menos claro de los borradores que hay escritos.
Citar
#10
Tengo unas pocas lineas para probar comunicacion con las versiones 0.2 y 0.3
Citar
#11
grafisoft escribió:Tengo unas pocas lineas para probar comunicacion con las versiones 0.2 y 0.3

Usas alguna libreria para los PICS y el NRF? o vas a pelo?

Acabo de pedir unos samples
Citar
#12
Libreria para el NRF, tiene un poco de miga como para ir a pelo
Citar
#13
el tema de las licencias se puede consultar aqui: http://creativecommons.org/licenses/
Citar
#14
ahora, despues de leerme todos los posts, no me quedan claras varias cosas:

- lo que se pretende diseñar es un nuevo "ecosistema" rollo Arduino pero sin tener nada que ver con él?
- diseño modular con sensores inalambricos, pero y los actuadores? (en el tema de sensores inalambricos hay horas y horas de discusión porque no es tan trivial).

- me gustaría saber la razón de la elección de ese microcontrolador y ese formato de placa. Personalmente le veo más inconvenientes que ventajas.

Para empezar esto, luego ya iré preguntando más cosas.

Saludos!
Citar
#15
Ese micro porque es bastante usado y hay mucha info y librerias ya preparadas para el. Con patillaje suficiente para un diseño basico. El encapsulado en soic 300mil xq se puede soldar en casa facil, cualquier micro de 40 pines es complicafillo de soldar en casa. Tiene varios ADC.

Los actuadores pueden ser reles por ejemplo, que estos a su vez activen otros circuitos ( calefaccion, bombas de agua para riego, etc)

Que inconvenientes le ves?

Se puede hacer una version basada en arduino para el que no sepa programar pics y no tenga programador. Los sensores valen para ambas versiones, cualquier placa preparada para arduino es compatible con esta.
Citar
#16
Por lo que puedo observar grafi, por ahora os estais centrando en la version PIC no? Intentando lograr una base de comunicacion con los NRF verdad? Que tiene bastante chicha lograr un buen protocolo de comunicacion entre los modulos.

La programacion la haceis en C imagino

Enviado desde mi Nexus 4 mediante Tapatalk
Citar
#17
Si, mas o menos si. Version de pic por ser mas barata ya que tiramos de muestras. La base de HW nos permite perfectamente empezar a trabajar en el firm, en preparar la comunicacion y algo mas. Se puede empezar a programar sensores, y hacer cosas. La comunicacion bidireccional esta probada a un nivel muy muy basico.

No hay nada en arduino porque yo me he centrado, en el poco rato que tengo, en preparar la version orientada en pic. Prohramada en C.
Citar
#18
tienes razon que es de los más usados pero tambien es bastante antiguo, hay cosas más recientes con mejores caractrerísticas en general, pero sin conocer exactamente a qué ira destinado es dificil elegir.

Más dudas que me surjen:

La conexión con sensores y actuadores como se hará?
- cada sensor o grupo de sensores estará conectado a una SL-Air independiente , y todas las SL-Air se conectarán entre sí?
- cada sensor o grupo de sensores tendrá unicamente un modulo de transmisión de datos que se recogeran por una SL-Air centralizada?
- habrá solo un receptor por SL-Air-"Master" ? , un único canal de UART/SPI/I2C es suficiente? como se asegurará el tiempo de transferencia y procesado de los datos de cada sensor?
- habrá interrupciones en ese sistema wireless?

por otra parte lo "mejor" que tiene arduino es el Bootloader, y el olvidarse de programadores externos.



Saludos!
Citar
#19
Como configures la red es cuestion de programacion. El modelo montado para la version base no se va a usar en una version futura porque se queda pequeño por un lado y porque podemos montar algo de la version 18 de 40 pines con usb nativo y poder meterle un bootloader, con lo que no necesitaras programador.

La configuracion de la red dependera de como nos curremos el firm.

La idea es hacer tambien una version en arduino para los que no les guste pic.
Citar
#20
Todo lo que has planteado es cuestion de programacion, y eso esta todo por hacer. Y lo que no es programacion, es configuracion de la red, de como quieras organizarla, no depende mucho del HW
Citar


Temas similares...
Tema Autor Respuestas Vistas Último mensaje
  Sl Air Mote - Bienvenidos! grafisoft 27 2,820 14-05-2015, 07:50 AM
Último mensaje: dcp1985
  [Desarrollo] Airduino v1.0 grafisoft 18 1,575 13-05-2015, 02:41 PM
Último mensaje: grafisoft
  [Desarrollo] Air v2.0 rev A grafisoft 7 1,012 30-11-2014, 03:15 PM
Último mensaje: grafisoft
  [Desarrollo] Etapa de carga de baterias (Litio/lipo) grafisoft 19 1,181 17-07-2014, 07:10 PM
Último mensaje: grafisoft
  [Desarrollo] Air v1.0 rev A grafisoft 64 3,809 26-05-2014, 10:22 PM
Último mensaje: grafisoft