Cómo comenzar a desarrollar para Internet de las cosas (IoT)

IoT versus IoCS = C versus Java, Scala, Python, C #
Mi recomendación es actualizar tu C que aprendiste hace 12 años y como estudiante. Java, Scala, Python, C # son lenguajes de programación para el servidor en la nube. Un servidor en la nube admitirá miles de cosas diferentes. IoT es la abreviatura de “Internet de las cosas” y no la abreviatura de “Internet de servidores en la nube” = IoCS. Arduino o Raspberry Pi son las plataformas de hardware incorrectas con seguridad. Arduino o Raspberry Pi son demasiado caros, muy hambrientos y de memoria hambriento también.

Solo echa un vistazo a las cosas en casa. ¿Cuál de las cosas contiene un micro controlador? Nevera, lavavajillas, lavadora … Cuenta de nuevo. ¿Cuál de ellos estaba codificado en Java, Scala, Python, C # o se ejecuta en Linux?

Solo para hacerle saber que estoy trabajando en un kit de evaluación de IoT con módulos inalámbricos:

– BRAZO Cortex M0 o M3
– Gratis C cumplidor
– Módulos inalámbricos: primero serán GSM + GPS / Glonass + Bluetooth
– Varios sensores (por ejemplo, sensor de temperatura)

como complemento de mi libro de cocina IoT M2M: Extracto del libro de cocina IoT M2M

Recomiendo comenzar en el ARM Cortex M3 con 256 KB Flash ROM y, si es posible, cambiar a un M0 con 32 FlashROM para ahorrar costos.

Recuerda el 8051/8052:
El microcontrolador 8052 es el “hermano mayor” del 8051. Es un microcontrolador un poco más potente, con una serie de características adicionales que el desarrollador puede utilizar:

  • 256 bytes de RAM interna (en comparación con 128 en el estándar 8051).
  • Un tercer temporizador de 16 bits, capaz de varios modos de operación nuevos y recargas de 16 bits.
  • SFR adicionales para admitir la funcionalidad que ofrece el tercer temporizador.

Wow, 256 bytes de RAM.

La memoria de código estaba limitada a 64K y tenía muchas formas y tamaños: la memoria de código se puede encontrar en el chip, quemada en el microcontrolador como ROM o EPROM.

Fuente: 8051 Tutorial: sobre el 8052

Crédito de la imagen: índice TIOBE

Si compara los lenguajes de programación en el gráfico, detectará que solo C lo ayudará a generar su código que puede ejecutar en un pequeño microcontrolador económico.

He respondido esta pregunta en las siguientes instancias, échales un vistazo y vuelve si buscas más respuestas:

La respuesta de Sharad Shriram a ¿Cómo me sumerjo en el campo de IoT?

La respuesta de Sharad Shriram a ¿Cuáles son los requisitos previos para aprender IoT?

La respuesta de Sharad Shriram a ¿Cómo empiezo a hacer mi proyecto de último año sobre el concepto de IOT / Internet de las cosas? (este es muy detallado y creo que será muy útil)

C sigue siendo el lenguaje dominante para el desarrollo integrado. Casi nadie usa Java, scala, etc. en dispositivos IoT de los que he oído hablar.

Es posible que desee considerar tessel.io. Es un nodo WiFi IoT basado en node.js. Parece que encaja perfectamente con lo que has estado haciendo últimamente.

Si no es así, entonces quizás sea un imp eléctrico, que usa un lenguaje similar a JavaScript / C llamado ardilla, o spark.io. Recomendaría cualquiera de estos sobre arduino, porque están destinados a ser dispositivos conectados. Sí, puedes obtener un escudo WiFi, pero aún es un poco pirateado en comparación con estos.

Tomaría beaglebone black sobre raspberry PI si desea una plataforma de gama alta, porque tiene una E / S mucho mejor. Obtenga las últimas versiones, que vienen con una buena distribución de Linux instalada. Pero eso generalmente es más adecuado como un concentrador que un punto final de IoT, porque consume demasiada energía para ser completamente inalámbrico. Python y C / C ++ parecen ser los lenguajes mejor soportados y más utilizados allí.

Las aplicaciones de IoT no solo están escritas en el dispositivo sino más allá del dispositivo en la nube y los servidores. y lenguajes de programación como Java, C #, Erlang, Python son una excelente opción además de c ++ / C en dispositivos.

Pero la mejor manera de desarrollar aplicaciones y soluciones de IoT es lamentablemente NO comenzando con el hardware en sí. La mejor manera de desarrollar y probar aplicaciones de IoT es mediante el uso de un simulador como AutoSIM de Automatski.

De esa manera, puede automatizar los datos, la comunicación y los protocolos y centrarse en la creación de la aplicación y los algoritmos de ciencia de datos.

El simulador AutoSIM se puede utilizar para pruebas funcionales, automatizadas y de regresión. También puede simular más de 100 millones de dispositivos y, por lo tanto, está destinado al desarrollo de aplicaciones IoT muy graves y también se puede utilizar para pruebas de rendimiento y carga.

También para desarrollar el mejor backend de toma de decisiones o usar el aprendizaje automático, estadísticas o ai en el backend, debe usar un simulador como AutoSIM.

AutoSIM es el primer simulador de IoT del mundo que puede simular más de 100 millones de dispositivos en un grupo de servidores y admite 10 protocolos a continuación …

  • SmartM2M
  • LWM2M
  • CoAP
  • MQTT
  • Automatski (Streamer y Chatterbox)
  • Descanso
  • Websockets
  • UDP
  • XMPP
  • AMQP
  • otros protocolos personalizados

Se está utilizando globalmente para desarrollar soluciones de IoT como

  • Ciudades inteligentes
  • Vehículos conectados y autónomos
  • Energía inteligente y redes inteligentes
  • Smart Healthcare etc.

Para comenzar a desarrollar proyectos para Internet de las cosas (IoT), necesitará placas Raspberry Pi y Arduino. Puede comprar estas placas de desarrollo en línea, ya que están fácilmente disponibles a precios asequibles. Una vez que tenga una placa de desarrollo, puede comenzar a construir proyectos de IoT con Raspberry Pi. Además, puede tomar algunas ideas de Internet sobre los proyectos Do it Yourself IoT.

Como dice Jim Reich , C (y lo enmendaré agregando C ++). No es raro tener otros idiomas, pero debido a la ventaja de tamaño y velocidad, aún llegarás lejos integrado con C / C ++. Muchas tablas son excelentes puntos de partida (Raspberry Pi, Arduino, Beaglebone), no todas son equivalentes, pero todas pueden hacer cosas geniales, así que comienza con la que te habla.

Verificaría algunos sitios web de fabricantes, ya que los fabricantes (al menos en el ámbito electrónico) están haciendo lo que estás haciendo: construir y aprender al mismo tiempo. Google “fabricante” y encontrará docenas de sitios web que se adaptan a la electrónica de bricolaje que sería perfecto para IoT. Aquí hay uno: Hacer:

Para comenzar, debe intentar usar Arduino, una placa de creación de prototipos de código abierto.

En Pupa Clic tenemos más de 5 años de experiencia en el desarrollo de productos basados ​​en IoT. También tenemos experiencia en el desarrollo de aplicaciones móviles y desarrollo de aplicaciones web. Conozca más: Pupa Clic: su única parada para los recientes proyectos de desarrollo de Pupa Clic.

Internet de las cosas no es un producto particular, es una especie de cosa en la que el sistema integrado se ejecuta en un controlador de muy baja potencia con radio para comunicar otro dispositivo. Lo más probable es que haya soporte para IPV6 en esos dispositivos. o son dispositivos zigee de baja potencia . para IPV6 contiki es una pila muy ligera con menor huella de memoria ideal para iot. si desea obtener más información sobre zigbee, puede ir al sitio web de alianzas zigbee y contiki es una pila de código abierto, puede obtenerla de github.

Te sugiero que comiences con Arduino. La mayoría se debe a la comunidad y a las toneladas de complementos con los que juegas.
Después de esta primera fase, te sugiero que juegues con alguna solución de big data.