Project

General

Profile

Actions

Capteurs Répartis

Le développement de ce projet a débuté dans les années 2010, pour permettre de faire de la télémétrie a base d'un système ouvert. A l'époque, des choix technologique on été fait, mais aujourd'hui il sont dépassé. Une nouvelle réflexion est ouverte pour intégrer les technologie des années 2020. Il remplis encore son travail, une centaine de capteur sont déployé depuis une dizaine d'années.
Ces capteurs sont capable de faire une grand nombre de mesure(SHT température,humidité; tout ou rien, analogique, réseau électrique, réseau de chauffage ...).

CDC Cahier des Charges

CAHIER DES CHARGES Capteurs Repartis V3.0

https://redmine.laas.fr/attachments/download/5485/CDC%20Capteurs%20Repartis%20V3.0.odt

Serveur V3.0

MQTT

mqtt-explorer

https://mqtt-explorer.com/

Home Assistant

fichier .yaml

Edition

MQTT

https://www.home-assistant.io/integrations/mqtt

Découverte (auto détection)

topic auto détection
homeassistant/sensor/4352433644443434/CRC6DD44_Board/config

{"name":"telemetry_Board","uniq_id":"CRC6DD44_Board","ic":"mdi:cpu-32-bit","dev":{"ids":"4352433644443434","name":"CRC6DD44","sw":"1.0.3","mf":"LAAS-CNRS","mdl":"ESP32"},"stat_t":"aha/4352433644443434/CRC6DD44_Board/stat_t"}

topic value
aha/4352433644443434/CRC6DD44_Board/stat_t

ESP Easy Mega

homeassistant/sensor/D1-DE290F/D1-DE290F_time/config

{
  "name": "time",
  "uniq_id": "D1-DE290F_time",
  "dev":{"ids":"D1-DE290F","name":"D1-DE290F","sw":"ESP Easy Mega","mf":"F.BLANC LAAS-CNRS","mdl":"ESP8266_4M"},
  "stat_t": "aha/D1-DE290F/D1-DE290F_time/stat_t" 
}
Tasmota

https://tasmota.github.io/docs/Home-Assistant/#tasmota-integration

https://github.com/tasmota/install

https://ota.tasmota.com/tasmota/release/

source:
https://github.com/arendst/Tasmota

picto

https://pictogrammers.com/library/mdi/

Serveur LAAS

http://datalog.laas.fr:8123/

140.93.6.248

carte Arduino

https://dawidchyrzynski.github.io/arduino-home-assistant/

https://github.com/dawidchyrzynski/arduino-home-assistant

https://docs.arduino.cc/libraries/pubsubclient/

ethernet W5500

https://docs.arduino.cc/libraries/ethernet/

Les capteurs répartis selon ChatGPT

Les capteurs répartis (ou réseaux de capteurs répartis) sont des systèmes constitués de nombreux capteurs distribués spatialement pour collecter des données sur une grande surface ou dans un volume spécifique. Ils sont largement utilisés dans divers domaines pour surveiller, détecter et collecter des informations en temps réel. Voici une vue d'ensemble des principaux aspects des capteurs répartis :

Caractéristiques des Capteurs Répartis

Distribution Spatiale :

Les capteurs sont placés à des emplacements stratégiques pour couvrir une zone géographique spécifique.
La distribution peut être régulière (grille) ou irrégulière, selon les besoins de l'application.

Communication :

Les capteurs peuvent communiquer entre eux et avec une station centrale, souvent via des réseaux sans fil.
Les protocoles de communication doivent être robustes et économes en énergie.

Autonomie :

Les capteurs doivent souvent fonctionner sur des batteries ou des sources d'énergie renouvelables.
La gestion de l'énergie est cruciale pour prolonger la durée de vie du réseau.

Traitement de Données :

Les données collectées peuvent être pré-traitées localement avant d'être transmises.
Les techniques de traitement distribué permettent de réduire la quantité de données à envoyer et de prolonger la durée de vie du réseau.

Fiabilité et Redondance :

Les réseaux de capteurs doivent être résilients face aux pannes de certains capteurs.
La redondance permet d'assurer la continuité de la surveillance même si certains capteurs échouent.

Applications des Capteurs Répartis

Surveillance Environnementale :

Surveillance de la qualité de l'air et de l'eau, suivi des conditions météorologiques.
Détection précoce des incendies de forêt ou des glissements de terrain.

Agriculture de Précision :

Surveillance des conditions du sol et des cultures.
Optimisation de l'irrigation et de l'utilisation des engrais.

Santé et Bien-être :

Surveillance des patients à distance.
Collecte de données pour les études épidémiologiques.

Sécurité et Défense :

Surveillance des infrastructures critiques (ponts, barrages, pipelines).
Détection des intrusions et des mouvements suspects.

Applications Industrielles :

Surveillance des machines et des processus industriels.
Maintenance prédictive pour prévenir les pannes.

Défis et Perspectives

Énergie :

Développement de technologies de gestion de l'énergie plus efficaces.
Utilisation de l'énergie solaire ou des vibrations pour recharger les capteurs.

Traitement des Données :

Amélioration des algorithmes de traitement distribué pour réduire la charge de communication.
Utilisation de l'intelligence artificielle pour analyser les données en temps réel.

Sécurité :

Protection des réseaux de capteurs contre les cyberattaques.
Mise en place de protocoles de communication sécurisés.

Interopérabilité :

Développement de standards pour permettre l'intégration de capteurs de différents fabricants.
Faciliter l'interopérabilité entre les différents systèmes de capteurs.

Interface WEB

ancienne version (utilisation interne seulement)

Gestion
http://caire.laas.fr/capteurs/BF/gestion_bdd_capteurs/modif_bdd.php
Interface
http://caire.laas.fr/capteurs/BF/projet_capteurs/projet_capteurs.php
ancien Wiki
https://wiki.laas.fr/adream/Projet%20Capteurs%20R%C3%A9partis%20%282I%29

ADREAM (pelican)

N0.PROD.MES.TEMPEXT TEMPERATURE EXTERIEURE

http://pelican/adreamdata/web/app.php/graphe

formatage de la date

1er méthode

- Ctrl + H
- cocher Expressions régulières
- chercher ^.*$
- remplacer par &

2eme méthode

Lors de l'importation, régler comme dans la capture de fenêtre jointe (penser à effacer le séparateur de chaîne de caractères),

Ensuite, menu Edition-> Rechercher et remplacer, puis
Rechecher : "

Remplacer : [ne rien mettre]

Puis, cliquer sur tout remplacer

Media de Communication

Ethernet

Liaison filaire, avec possibilité d'utiliser une alimentation fantôme POE IEEE 802.3af
https://fr.wikipedia.org/wiki/Alimentation_%C3%A9lectrique_par_c%C3%A2ble_Ethernet

Wifi

Liaison sans fil, compatible avec la plupart des installation dans un bâtiment, demande une alimentation.
L'alimentation peut être externe, ou sur batterie.

https://fr.wikipedia.org/wiki/Wi-Fi

Bluetooth

Liaison sans fil, très courte porté.
L'alimentation peut être externe, ou sur batterie.
Le protocole Bluetooth 5.0 LE semble intéressant pour faire des capteur portable sans fil.
https://fr.wikipedia.org/wiki/Bluetooth

LoRa

Liaison sans fil, très moyene porté.
L'alimentation peut être externe, ou sur batterie.
Le protocole LORA semble intéressant pour faire des capteur sans fil pour une utilisation outdoor.
il existe 2 systèmes d'administration
LoRa
LoRaWAN
https://fr.wikipedia.org/wiki/LoRaWAN

ZigBee

Liaison sans fil, très courte porté.
L'alimentation peut être externe, ou sur batterie.
Le protocole ZigBee semble intéressant pour faire des capteur portable sans fil.

https://fr.wikipedia.org/wiki/ZigBee

5G

Applications de l'IoT améliorées par la 5G

Villes Intelligentes : La 5G permet une gestion plus efficace des infrastructures urbaines grâce à des capteurs répartis pour surveiller et contrôler l'éclairage, le trafic, la qualité de l'air, la gestion des déchets, etc.
Santé Connectée : Les dispositifs médicaux IoT peuvent transmettre des données en temps réel aux professionnels de santé, permettant une surveillance continue et des interventions rapides.
Industrie 4.0 : Les usines intelligentes utilisent des capteurs IoT pour surveiller et optimiser les processus de production, avec des temps de réponse quasi immédiats grâce à la 5G.
Transports : Les véhicules autonomes et les systèmes de gestion du trafic peuvent bénéficier de la faible latence et de la haute fiabilité de la 5G pour améliorer la sécurité et l'efficacité.

Conclusion

L'intégration de la 5G avec l'IoT promet de transformer de nombreux secteurs en rendant possible des applications auparavant limitées par les capacités des réseaux. La combinaison de ces technologies ouvre la voie à une connectivité omniprésente et à une automatisation avancée, rendant les systèmes plus intelligents, plus réactifs et plus efficients.

https://fr.wikipedia.org/wiki/5G_pour_l%27Internet_des_objets

µControleur SOC & Module

UUID Unique Device Identifier et MAC adress

https://fr.wikipedia.org/wiki/Universally_unique_identifier

mbed LPC1768 (Capteurs réparties V1.0 et V2.0)

Module compatible XAIO et W5500

SHT7X pclock p12 pdata p11

ledRJ45green(p26);
ledRJ45orange(p25);

bus_OneWire_0(p21) 3.3v (max31850)
bus_OneWire_1(p22) 5.0v (DS18b20, DS2450)
bus_OneWire_2(p23) 5.0v (DS18b20, DS2450)
bus_OneWire_3(p24) 5.0v (DS18b20, DS2450)

I2C
SDA p28 p9
SCL p27 p10

RP2040

RP2040

https://www.ultralibrarian.com/2025/07/22/rp2040-zero-datasheet-pinout-analysis/

https://en.wikipedia.org/wiki/RP2040

https://pip-assets.raspberrypi.com/categories/814-rp2040/documents/RP-008371-DS-1-rp2040-datasheet.pdf?disposition=inline

FPU

Avec le framework Arduino :
La plupart des bibliothèques Arduino pour RP2040 activent déjà la FPU. Vérifie que ton platformio.ini utilise bien framework = arduino.

[env:rp2040]
platform = raspberrypi
board = rp2040_generic  ; ou une carte spécifique comme pico, feather_rp2040, etc.
framework = arduino  ; ou cmake, pico-sdk, etc.

; Options pour activer la FPU
build_flags =
    -mfloat-abi=hard
    -mfpu=fpv4-sp-d16
    -DARM_MATH_CM0PLUS  ; Si tu utilises la bibliothèque CMSIS DSP

Explications :

-mfloat-abi=hard : Utilise l’ABI matériel pour les appels de fonctions en virgule flottante.
-mfpu=fpv4-sp-d16 : Spécifie l’unité FPU du Cortex-M0+ (simple précision, 16 registres).
-DARM_MATH_CM0PLUS : Utile si tu utilises la bibliothèque CMSIS DSP pour des calculs optimisés.

Ethernet

ENC28J60

https://docs.arduino.cc/libraries/esp32-enc28j60/

w5500

rp2040-zero w5500
5 CS
2 SCK
4 MISO
3 MOSI
3.3v (need >150mha) VCC
GND GND

ESP32

esp32 s3 w5500/w5500 mini
GPIO13 MISO
GPIO12 SCLK
GPIO11 MOSI
GPIO10 CS
GPIO9 (optional) INT
GPIO3 (optional) RST
3v3 3v3
GND GND
esp32 C3 w5500/w5500 mini
GPIO5 MISO
GPIO04 SCLK
GPIO06 MOSI
GPIO07 CS
GPIxx INT
GPIxx RST
3v3 3v3
GND GND

https://maker.wiznet.io/irina/projects/raspberry-pi-pico-and-rp2040-board:-ethernet-w5500-with-plain-http-and-ssl-https-requests/

https://docs.wiznet.io/Product/Chip/Ethernet/W5500/w5500-evb-pico

https://docs.wiznet.io/Product/ioModule/W5500-io

ESP32

XIAO ESP32C6


XIAO ESP32C6

N° Mouser : 713-113991254

https://wiki.seeedstudio.com/xiao_esp32c6_getting_started/

ESP32 Zigbee Multistate Input Output
https://github.com/dbn-b4e?tab=repositories

esp32-c6-bug

https://www.crowdsupply.com/prokyber-s-r-o/esp32-c6-bug

RF

RF Switch

The RF Switch feature allows you to toggle between the built-in ceramic antenna and an external antenna by configuring GPIO14. To enable this function, you must first set GPIO3 to a low level, as this activates the RF switch control.

GPIO14 Low Level (Default Setting): The device uses the built-in ceramic antenna.
GPIO14 High Level: The device switches to the external antenna.

By default, GPIO14 is set to a low level, enabling the built-in antenna. To use an external antenna, set GPIO14 to a high level. Refer to the example code below for guidance on configuring GPIO3 and GPIO14 to activate the external antenna:

void setup() {
  pinMode(WIFI_ENABLE, OUTPUT); // pinMode(3, OUTPUT);
  digitalWrite(WIFI_ENABLE, LOW); // digitalWrite(3, LOW); // Activate RF switch control

  delay(100);

  pinMode(WIFI_ANT_CONFIG, OUTPUT); // pinMode(14, OUTPUT);
  digitalWrite(WIFI_ANT_CONFIG, HIGH); // digitalWrite(14, HIGH); // Use external antenna
}

ESP32 série S

cœur Xtensa® 32-bit


version wifi Europe

ESP32-WROOM-32UE-N16
N° Mouser :
356-ESP32WRM32UE28UH

Ethernet
SPI
ESP32 w5500
D5 CS
D18 SCK
D19 MISO
D23 MOSI
3.3v VCC
GND GND
RMII


https://pcbartists.com/design/embedded/esp32-ethernet-phy-schematic-design/
PHY chip LAN8720
Référence Mouser
579-LAN8720ACPABC

Cartes filles et cartes OEM LAN8720 Daughter Brd
Fab. Numéro de référence
AC320004-3
Référence Mouser
579-AC320004-3

liste PHY compatible

LAN8720
TLK110
RTL8201
DP83848
DM9051

ESP32 série C

cœur 32-bit RISC-V

module ESP32-C6-WROOM-1U

https://www.espressif.com/en/products/socs/esp32

Firmware

ESPEasy MEGA

Le firmware ESP Easy peut être utilisé pour transformer le module ESP en un capteur multifonction simplez. La configuration de l'ESP Easy est entièrement basée sur le Web, donc une fois le micrologiciel chargé, vous n'avez besoin d'aucun autre outil qu'un navigateur Web commun.

ESP Easy offre également des fonctions d'actionneur de « bas niveau » limitées.

Le projet ESP Easy est géré par l'équipe principale de TD-er et Grovkillen. TD-er étant le responsable du backend et Grovkillen étant le responsable du frontend. Cependant, nous approfondissons tous les deux les domaines de responsabilité de chacun au quotidien.

En plus de nous, nous avons environ 100 bénévoles qui nous aident à maintenir et améliorer le code source.

https://espeasy.readthedocs.io/en/latest/index.html

uPyEasy STM32 et ESP

uPyEasy vous permet de transformer un module ESP ou STM32 en un capteur et un dispositif de commutation multifonctions. La configuration d'uPyEasy est basée sur le Web. Cela signifie qu'une fois le firmware chargé, la configuration de l'appareil peut être effectuée avec un navigateur Web. De nouveaux capteurs peuvent être ajoutés à la volée ainsi que la configuration de votre solution domotique.

https://github.com/letscontrolit/uPyEasy

Tasmota ESP devices

Open source firmware for ESP devices

Contrôle local total avec configuration et mises à jour rapides. Contrôlez via MQTT, Web UI, HTTP ou série. Automatisez à l'aide de minuteries, de règles ou de scripts. Intégration avec des solutions domotiques. Incroyablement extensible et flexible.

https://tasmota.github.io

Mbed ARM devices

Développement rapide d'appareils IoT

Mbed vous offre un système d'exploitation IoT open source gratuit avec connectivité, sécurité, stockage, gestion des appareils et apprentissage automatique. Créez votre prochain produit avec des outils de développement gratuits, des milliers d'exemples de code et la prise en charge de centaines de cartes de développement de microcontrôleurs.

https://os.mbed.com/

IIoT Internet_industriel_des_objets

L'Internet industriel des objets, ou en anglais « Industrial Internet of Things (IIoT) », est l'application des technologies de l'internet et de l'internet des objets au domaine industriel pour interconnecter au sein d'architectures géodistribuées les capteurs, les équipements industriels intelligents et les systèmes informatiques.

https://fr.wikipedia.org/wiki/Internet_industriel_des_objets

modèle de référence Purdue


Le modèle de référence Purdue, tel qu'adopté par la norme ISA-99, est un modèle de segmentation des réseaux de systèmes de contrôle industriel (ICS) qui définit six couches au sein de ces réseaux, les composants présents dans les couches et les contrôles des limites logiques du réseau pour sécuriser ces réseaux.

Capteurs

OneWire

MAX14591 Logic-Level Translator

MAX31850 The Grove - 1-Wire Thermocouple Amplifier
https://wiki.seeedstudio.com/Grove-1-Wire_Thermocouple_Amplifier-MAX31850K/

N° Mouser :
713-101020555
N° de fab. :
101020555
Fab. :
Seeed Studio

RJ11 6C/6P OneWire Cable FCC68 GC5044 noir 6C 26 AWG
PIN COULEUR SIGNAL DESCRIPTION
1 BLANC +5VDC ALIM 5V DC
2 NOIR GND Masse
3 ROUGE OW Signal OneWire
4 VERT GND Masse
5 JAUNE GND Masse
6 BLEU NC NC

Updated by Frédéric Blanc 3 months ago · 93 revisions