Enviando señales a la PC a través de wifi

0

Necesito un microcontrolador que envíe los estados de sus pines de entrada (alrededor de 5 de ellos, pueden ser 0 o 1) a una PC a través de wifi.

Pensé en usar arduino, pero no sé qué necesitaría para poder enviar datos a través de wifi. ¿Algún módulo wifi? ¿Y esa sería una buena combinación?

Esta es una parte de un dispositivo que estará en la mano, por lo que debe ser pequeño y alimentado por batería. (Debería enviar los estados de sus pines a una velocidad de alrededor de 15 veces por segundo, y lo necesitaré para tener un pin de salida configurado en 1, de modo que pueda enviar esa señal a los pines de entrada) Y dado que el arduino es un poco más grande tamaño del que me gustaría y está hecho para cosas mucho más avanzadas, no estoy seguro de si sería la mejor opción.

Entonces, ¿alguien puede decirme qué tipo de microcontrolador necesito y cómo usar el wifi con él?

(Tengo algo de experiencia con arduino, pero no con el uso de wifi u otra forma de comunicación remota con dispositivos electrónicos. Si tiene dudas sobre la pregunta, pregunte en los comentarios. Gracias)

    
pregunta zoran404

4 respuestas

3

Arduino es un buen punto de partida. Hay un WiFi Shield disponible.

Su pregunta, "¿Qué tipo de microcontrolador necesito?" es demasiado amplio Hay literalmente cientos, si no miles de microcontroladores que podrías usar. Entonces, ¿cómo seleccionas uno?

Primero, hay muchos fabricantes como Microchip (PIC), Freescale, Atmel (AVR), etc. Selección uno es en gran medida de preferencia, pero también es altamente dependiente del soporte, el precio, la reputación, las herramientas / software disponibles, las ofertas de características, etc. El PIC y el AVR son, por ejemplo, plataformas muy populares para microcontroladores de 8 a 32 bits. El Arduino Uno se basa en el Atmel ATmega328 microcontrolador de 8 bits.

Supongamos que selecciona AVR después de familiarizarse con Arduino como plataforma de inicio. (Esto es lo que hice.) Atmel tiene un selector del microcontrolador que le brinda una matriz de selección paramétrica para ayudarlo a reducir las opciones. Los microcontroladores disponibles son bastante numerosos, y algunos están diseñados específicamente para aplicaciones específicas, como reproductores de música portátiles, aplicaciones automotrices, dispositivos táctiles, etc.

Con el selector, puede filtrar por propiedades como el tamaño de la memoria, el número de pines, la velocidad y el tipo de la CPU, el rango de temperatura, los temporizadores e interrupciones incluidos, el soporte del oscilador externo, etc.

Por lo que ha explicado de su aplicación, simplemente está leyendo el estado de cinco pines de entrada y necesita enviarlo a una PC a través de una red inalámbrica (probablemente Ethernet) a una velocidad de 15 Hz. El requisito mínimo para eso sería, obviamente, al menos 5 pines de E / S, además de una forma de conectarse a otro componente para enviar los datos. SPI y I2C son tipos de interfaz comunes, que requieren de dos a cuatro pines, según la configuración. El WiFi Shield para Arduino que mencioné anteriormente usa SPI para conectarse al Arduino.

En el caso de WiFi Shield, todo el procesamiento requerido para el manejo de TCP / IP, el cifrado, etc., está integrado en la placa. Si decide diseñar y construir su propio dispositivo basado en microcontrolador, podría encontrar módulos WiFi diseñados para "conectar y usar" con un microcontrolador a través de SPI, o seleccionar componentes individuales y crear su propia implementación de WiFi. Personalmente, esa sería una tarea desalentadora, especialmente si no está familiarizado con los conceptos básicos del microcontrolador.

Este sitio no es adecuado para recomendaciones de productos, pero al menos puedo indicarle que busque "Módulos WLAN" o "Módulos WiFi" en su proveedor favorito de componentes electrónicos. Puede usar sus herramientas de búsqueda para encontrar módulos que se adapten a sus necesidades, incluido el tipo de conexión que desea utilizar con su microcontrolador.

Si estás haciendo una única vez, o simplemente estás empezando a aprender, definitivamente recomendaría elegir un Arduino y el WiFi Shield. Hay mucho apoyo para ello, la mayor parte del trabajo difícil ya se ha realizado, e incluso hay un sitio Arduino StackExchange .

    
respondido por el JYelton
4

Para establecer una comunicación entre una computadora y una MCU, le sugiero encarecidamente que utilice el chip de Wi-Fi CC3000 de Texas Instrument con un Arduino (la forma más sencilla de lograr lo que necesita). Adafruit y SparkFun introdujeron versiones breakout * y shield ** del chip Wi-Fi. Es fácil de usar, solo conecte los cables y comience a comunicarse.

Hay una gran compatibilidad con la biblioteca de estos productos. Cualquiera de ellos puede encontrarse en sitios web relevantes. Puede enviar solicitudes http a arduino o puede obtener solicitudes http de arduino usando estas bibliotecas.

Hay muchos ejemplos, bocetos de este producto. Uno de ellos es estación meteorológica Wi-Fi . Mira el video, creo que esto es lo que quieres lograr.

* El desglose de Adafruit
* Fuga de SparkFun

** Escudo de Adafruit
** Escudo de SparkFun

    
respondido por el Ekrem Doğan
1

Pedí un módulo ESP8266Wifi ( hackaday rama sobre este módulo) Este módulo WiFi es ridículamente barato y puede manejarse por Rx / Tx. El firmware en ESP8266 proporciona algunos comandos para que pueda interactuar fácilmente con ellos. Enviaré mis datos a un agente MQTT, otro programa (en su caso, una PC) se pondrá en contacto con el agente y obtendrá la actualización. El mejor microcontrolador a utilizar sería un Arduino en este caso particular que se comunique con el ESP8266. Una desventaja de esto probablemente será el consumo de energía debido a 2 dispositivos (µC y ESP8266).

    
respondido por el jelledb
0

Si utilizar una Raspberry Pi funcionará con su proyecto, hay un proyecto en Google Code llamado WebIOPi ( enlace ) que se ve muy prometedor.

    
respondido por el Jim O'Connell

Lea otras preguntas en las etiquetas