FuenteBuenas tardes
Hace mucho tiempo que no hablo sobre mi proyecto FLProg. La última
publicación todavía estaba en Geektimes.
Es hora de arreglar este desastre. A partir de esta publicación, comienzo una serie de lecciones sobre el uso de las nuevas funciones del programa.
Si no está familiarizado con el proyecto, puede ver su historial en el
blog .
Ahora el sitio web del programa está probando la
versión preliminar
con el número 3.1.4 . A partir de la versión 3.1, el programa introdujo la compatibilidad con los controladores ESP8266 como un controlador completo.
Para aquellos que no están familiarizados con estos controladores, una pequeña descripciónESP8266 está diseñado para su uso en enchufes inteligentes, redes de malla, cámaras IP, sensores inalámbricos, dispositivos electrónicos portátiles, etc. En una palabra, ESP8266 nació para convertirse en el cerebro del próximo "Internet de las cosas".
Hay dos opciones para usar el chip:
1) en forma de un puente UART-WIFI, cuando un módulo basado en ESP8266 está conectado a una solución existente basada en cualquier otro microcontrolador y está controlado por comandos AT, proporcionando a la solución una infraestructura Wi-Fi;
2) implementar una nueva solución utilizando el chip ESP8266 como microcontrolador de control.
El primer escenario se implementó en el proyecto FLProg durante mucho tiempo. Se implementa utilizando cualquiera de los módulos ESP8266 chinos de bajo costo. Se adapta a los amantes de arduino y a aquellos que ya tienen esquemas ya preparados y firmware depurado sobre la base de algo muy querido.
El segundo escenario implica escribir un firmware individual para controlar el chip "desde adentro".
(Antes del lanzamiento de FLProg 3.1, el firmware debe estar escrito para el compilador propietario. A partir de esta versión, ahora es posible escribir firmware en los idiomas FBD y LAD en el entorno FLProg) .
El escenario de usar el chip como un microcontrolador de control es interesante, ya que le permite crear dispositivos que son realmente pequeños y de larga duración con batería. Para trabajar con periféricos a bordo, el ESP8266 tiene todas las características necesarias.
Características clave
El chip ESP8266 es una de las soluciones WiFi más altamente integradas. Dentro del chip hay mucho de todo lo que en las soluciones de la competencia a menudo forma parte del enlace externo:

Como resultado, un flejado de chip típico consta de solo unos pocos elementos. Menos elementos = menor costo de componentes, menos costo de soldadura, menos área de colocación, menos costo de placa de circuito impreso. Lo cual está perfectamente confirmado por los precios actuales de los módulos basados en el héroe de nuestra revisión de hoy.
Gestiona toda esta agricultura integrada con una versión ampliada del procesador de 32 bits de la serie L106 Diamond de Tensilica. ¿Qué es interesante por dentro?
• Protocolo 802.11 b / g / n
• Wi-Fi Direct (P2P), soft-AP
• Pila de protocolo TCP / IP integrado
• Interruptor TR integrado, balun, LNA, amplificador de potencia y red correspondiente
• PLL integrado, reguladores y unidades de administración de energía.
• + 20.5dBm de potencia de salida en modo 802.11b
• Soporta diversidad de antena
• Apague la corriente de fuga de <10uA
• SDIO 2.0, SPI, UART
• STBC, 1x1 MIMO, 2x1 MIMO
• Agregación A-MPDU y A-MSDU e intervalo de protección de 0.4 μs
• Despierta y transmite paquetes en <22 ms
• Consumo de energía en espera de <1.0mW (DTIM3)
Tecnología de ultra baja potenciaEl consumo de energía es una de las características más importantes de una solución que dice ser el cerebro de miles de millones de dispositivos IoT. ¿Cuál es la razón de la popularidad de BLE y varias implementaciones nativas de interfaces de radio? Después de todo, al final, todos los dispositivos basados en estas implementaciones todavía se esfuerzan por acceder a la conexión Wi-Fi ordinaria utilizando dispositivos puente especiales.
El secreto es simple: es difícil crear un dispositivo conectado a WiFi, suficiente tiempo, trabajando con energía autónoma. Los consumidores no están listos para cambiar las baterías de los sensores cada dos o tres meses. Por lo tanto, el "acceso a la red" tenía que proporcionar puentes conectados a la electricidad constante. ESP8266 debería resolver este problema. Ahora se puede usar Wi-Fi incluso en sensores independientes que funcionan con baterías pequeñas. Mediante el uso de mecanismos avanzados de gestión energética para la solución.
Si observa rápidamente las características del consumo del chip, puede permanecer en la oscuridad. 215 mA en modo de transmisión, ¿nada especial? Sí, pero vale la pena leer la hoja de datos y comenzará a comprender las perspectivas de la solución. El ESP8266 consume aproximadamente 60 uA en modo de reposo profundo (con un reloj en tiempo real) y menos de 1.0 mA (DTIM = 3) o menos de 0.5 mA (DTIM = 10) en modo de mantenimiento
Fuente El programa es compatible con la mayoría de las placas existentes basadas en el controlador ESP8266.


Casi todos los bloques funcionales y dispositivos periféricos aplicables para programar placas Arduino están disponibles para crear firmware. Además, al elegir un controlador ESP8266, aparecen nuevos bloques específicos para él.

En vista de la presencia de un controlador WiFi a bordo, el árbol del proyecto también cambia.
En primer lugar, como con todos los controladores, existen ramas para controlar la memoria anticongelante y EEPROM

A continuación se encuentran las configuraciones más específicas.
Configurar el cliente WiFi y el punto de acceso (es posible su operación simultánea).

Configuración del modo de actualización inalámbrica (hasta ahora solo Arduino OTA, pero planea implementar y actualizar a través del navegador y descargar automáticamente el firmware del servidor de actualización)

Se implementó la capacidad de crear una interfaz web para la configuración del controlador. Puede crear un número ilimitado de páginas de configuración, con el número requerido de parámetros. Como parámetros, se utilizan los parámetros estándar del sistema del controlador (ver capturas de pantalla más arriba) y cualquier número de parámetros de usuario utilizados para la comunicación entre el firmware y la interfaz de configuración. Para todas las páginas (excepto la principal), así como los parámetros individuales, puede configurar el acceso solo a ciertos usuarios (el número de usuarios creados no está limitado).

Y, por supuesto, al igual que Arduino, se implementa el soporte para los protocolos de intercambio Modbus RTU, Modbus TCP y Modbus RTU sobre TCP.

También se implementa el modo puente entre Modbus RTU y Modbus TCP.

En general, traté de maximizar las capacidades de este maravilloso controlador. Algo tuvo éxito.
Esta publicación es una descripción general, y comienza en la serie, y en la próxima consideraremos la creación de una interfaz web de configuración y el tiempo de los servidores de hora exactos.
El proyecto FLProg es un proyecto sin fines de lucro, y puede descargar el programa desde el sitio web del proyecto, ya que dicen
"gratis y sin SMS" . No hay restricciones en el programa. Se proporcionan versiones para Windows y OC Linux.
PSDespués de numerosas quejas sobre mi dicción y la forma en que se presentó el material, abandoné la idea de grabar lecciones en video (no se me dieron talentos de enseñanza y oradores).
Pero uno de los usuarios del programa vino en mi ayuda.
Quiero presentarles el canal
"Arduino Prom" y el sitio web
"Arduino Prom" . Están completamente dedicados al proyecto FLProg, y hoy hay alrededor de cien lecciones en video sobre el programa.
Aquí está el último video, sobre cómo crear un reloj con sincronización a través de Internet.