Proyecto con captura de datos

Hola a todos, voy a comenzar el desarrollo de un proyecto en c# en el que se deben de procesar datos procedentes de sensores, mostrar la información como un servicio web y realizar tareas automáticas.

La parte en la que tengo problemas ahora mismo es en la captura de datos desde el sensor, ya que de electrónica estoy 'pegao' y no se si arduino me sacará las castañas del fuego.

Apreciaría comentarios de algunos que tengais experiencia en situaciones parecidas.

Gracias.

pues mira... lo que puedes hacer es provar algunos de los tutoriales de la pagina de Arduino, para entender un poquito mas de la parte electronica...de como se usan algunos sensores y ecc.

despues que has cojido confianza con la parte electronica y los distintos sensores...lo que quieres hacer tu es "bastante simple" ;-): - desarrollas un programita de Arduino que lea los sensores y los envie a traves de la puerta serial al ordenador. ( el mando es serialWrite() y las otras funciones...miratelas en la "reference") (tambien si està connectada al USB la board de Arduino tiene un chip que traduce el protocolo USB a RS232 de la serial y en el ordenador tienes el driver para hacer lo mismo.

  • en el ordenador tienes varias opciones para leer esos datos de la serial si programas en C# puedes escribirte tu proprio programita que los gestione como quieras, basta que leas los datos que te envia la serial. puedes hacerte un middleware en el lenguage que prefieras, los requisitos son que el lenguage tenga funciones para acceder a la serial.

  • la comunity ofrece un SerialProxy que se comporta como un XMLSocket para conectarse con Flash (tambien hay una clase Actionscript que he desarrollado para facilitar las cosas).

otra alternativa es que te escribas un programita en processing que lea la serial y que envie esos datos a un webServer, que escriba los datos directamente a un database MySql (que es lo que estoy intentando de hacer yo...todavia no tengo el proceso bien a punto...pero es factible) o que llame un file .php que haga lo mismo.

esto es mas o menos el proceso... no se si otros han desarrollado otros metodos... pero si tu eres un programador C# puedes escribirte tu mismo el middleware

bueno...cuentanos quando lo consiguas tu metodo...y sobre todo que webService quieres hacer...parece interesante :)

b.

si programas en C# puedes escribirte tu proprio programita que los gestione como quieras, basta que leas los datos que te envia la serial. puedes hacerte un middleware en el lenguage que prefieras, los requisitos son que el lenguage tenga funciones para acceder a la serial.

Supongo que si programas C# sabrás que ofrece un componente para acceder al puerto serie.

Gracias por los consejos.

Si que se lo del componente para trabajar con el puerto serie, pero como lo voy a programar desde el portatil me gustaría realizar el acceso vía usb porque no tengo puerto serie.

El resto lo haré todo con c# y servicios web en asp.net mediante los cuales se gestionará la información capturada y se realizarán acciones sobre otros elementos como motores o bombas, aunque esto último está por decidir.

La idea de hacerlo sobre servicios web es que después puedan ser consumidos tanto por otro software asp.net como win32, ya sea en un pc o en un teléfono movil. Simplemente hay que desarrollar la interfaz adecuada :slight_smile:

Así que gracias por los consejos, comenzaré por adquirir el arduino extreme.

Más adelante os comentaré con mas detalle el proyecto cuando quede bien acotado (ahora mismo tenemos muchas ideas abstractas y pocas concretas).

Saludos.

Hola,

los drivers USB que empleamos para Arduino ofrecen una interfaz serie virtual, asi que no tendrias que tener ningun problema para programar sobre el puerto serie con C#.

Lo hicimos asi para hacerlo cuanto mas facil mejor para todos los usuarios y desarrolladores que tenian ya mucho creado sobre serie.

Un saludo,

David

Eso me será de mucha ayuda, por cierto, ¿cuanto me constará traerme mi arduino extreme desde italia hasta aquí?.

Mandé ayer un correo preguntando esto a la dirección que dice en la página y aún no he obtenido respuesta, ¿quizá es que sólo atienden pedidos?

Hola,

donde vives?

/David

Vivo en Carmona, un pueblo en la Provincia de Sevilla, pero pensaba poner el pedido con destino a la asociación a la que pertenezco en la etsi informática de sevilla ya que paso más tiempo aquí que en mi casa (si puedo hacer el pago por internet).

Por cierto, no he recibido aún respuesta al correo que envié a la dirección que hay en la página para los pedidos.

Hola,
Desde Barcelona, unos cuantos nos hemos juntado para comprar un “pack” de 10 unidades, y nos han atendido muy bien. Los recibimos hace unos dias, por UPS.
Eso sí, tardaban un poco en contestar por correo electrónico, pero contestan…ten un poco de paciencia…

Saludos

Pues si, me han contestado ya :), no esperaba que fueran a tardar tanto y me empezaba a impacientar ...

Ahora lo que haré es intentar captar mas posibles compradores en sevilla :) y hacer el pedido.

Hola,

si vas encontrando mas gente interesada en el tema, os podemos hacer una lista de correo del tipo: arduino-sevilla [at] labbs [punto] net, como para las otras ciudades y asi os vais organizando.

Un saludo,

David

Que tal, Soy compositor y actualmente estoy realizando un periodo de investigación en la UCSD de San Diego (California) junto a Miller Puckette, creador de Pure Data. La verdad es que en el tema de arduino estoy algo pez por lo que me interesaría contactar con gente de Sevilla para trabajar juntos. Soy profesor en la Universidad por lo que gente de grupos de investigación oficiales sería interesante conocer con estos intereses. Yo soy de Sevilla y volveré para Noviembre. Saludos.

Hola Mangelp:

Si no es condición indispensable que tu proyecto esté en c#, puedes usar PandoraFMS que es un entorno web ya preprado para captura de datos, informes y alarmas. Pandora captura sin problemas, entre otros, datos de Arduino

Hola muchachada...

Bueno, no tengo mucha experiencia en Arduino pero para el proyecto de captura de datos yo lo veo de la siguiente forma e intentaré aportar un ejemplo (código) por donde empezar.

Bien partamos de la siguiente situación:

  1. Disponemos de un lugar con toma de Internet.
  2. No disponemos de un PC.

Queremos obtener datos (temperatura, humedad, luminosidad, etc) y estos datos queremos que sean mostrados en un servidor Web y almacenados en una base de datos.

Vayamos por partes, en mi caso yo tengo un Arduino Diecimila con puerto USB (entiendo el puerto USB es lo de menos) y un módulo Ethernet ENC28J60.

Lo primero sería indicar al módulo Ethernet su MAC y la dirección IP. Posteriormente podríamos pensar en que el propio Arduino sea el servidor Web (eso sí, a un nivel muy básico).

Todo esto lo tenéis resuelto (en parte) en la siguiente dirección:

http://www.nuelectronics.com/estore/index.php?main_page=project_eth

Como podéis ver disponen de las librerias .h y 3 códigos muy, muy básicos pero a la vez claros de entender. Podéis empezar con el ping y luego probar el servidor_web.

Con respecto a almacenar datos, me temo que el Arduino (salvo que metamos más memoria) se queda corto y habría que enviar la información a un equipo externo (vía Internet). Como base de datos elegiríamos MySQL y en la siguiente dirección tenemos un ejemplo con PHP y en parte con Arduino, pero esto no lo he probado y no lo tengo muy claro:

http://itp.nyu.edu/physcomp/sensors/Code/ArduinoXportMySQL

En fin, espero haber ayudado algo