Outils pour utilisateurs

Outils du site


wiki:projets:stage_lamap:deroulement:semaine15

Détection automatique de capteurs

On a besoins que notre master (ESP32) soit capable d’identifier d’autres capteurs I2C pour le but de développer un prototype qui fonctionne avec plusieurs capteurs.

Initialement, le prototype fonctionnait avec le capteur de température. On a refait les mêmes démarches avec un capteur de pression (BMP085), sauf que cette fois-ci, ce capteur possède déjà une interface I2C. On n’avait donc pas besoin de développer notre propre interface I2C.

A ce niveau, on avait deux capteurs qui nécessitent deux processeurs pour pouvoir lire les données de chaque capteur. Mais nous on veut plusieurs capteurs et un seul processeur. Il faut donc intégrer les deux codes (pour un capteur de température et pour un capteur de pression) dans un même fichier. Vue que l’on utilise une seule interface I2C sur ESP32, il est inutile d’exécuter les deux codes en même temps si on peut brancher un seul capteur à la fois. Pour cela, on utilise un petit code pour scanner et identifier le capteur actuellement branché. L’indentification est facile car chaque capteur a une adresse unique. Une fois qu’on sait l’adresse, on sait aussi le capteur, et on exécute les lignes qui lui correspondent.

Après cette démarche, le processeur arrive à identifier et afficher les données pour le capteur de température (DS18B20) et le capteur de pression (BMP085). On peut utiliser la même technique pour reconnaitre d’autres capteurs, et c’est ce qu’on fera par la suite.

NB : Le BMP085 est aussi un capteur de température, mais pour l’instant on ne l’utilise que pour la pression.

Code : master_m5_ble_i2c_scan_fn1.zip

NB : Le code fourni est en cours de développement et n’est pas final, il est sensé à être modifié au feu et à mesure.

wiki/projets/stage_lamap/deroulement/semaine15.txt · Dernière modification: 2022/08/11 03:15 de vincent.chanengeta@etu.sorbonne-universite.fr