Stocker les donnes reçue par les capteurs avec arduino dans une base de donnes et afficher sur le reséau locale

Bonjour , J'ai un projet qui consiste a receullire la temperature et la pression d'un chambre .Ses donnés seront stocker dans un SGBD( systeme de gestion des bases des donné) et heberger dans mon reseau locale.
Quelq'un pourra m'indiquer un SGBD adapter à Arduino?? ou bien j'aimerais avoir votre avis si un parmis nous a déjà relaiser un telle projet comme celui là.

Salut,

J'ai peur de mal comprendre : tu veux héberger une BDD sur l'arduino ?
Pas forcément une bonne idée car elle sera forcément réduite vu les ressources de l'Arduino ... et comment va tu faire les sauvegardes.

Généralement, on met une base comme Postgresql sur un serveur Linux et qui tourne sur le réseau, et zou :slight_smile:

A+

1 Like

Ou SqLite sur une RASPBERRY :wink:

1 Like

Merci, j'aimerai creé une base des donnes , par example sur postgresql ,pour stocker les information reçue par arduino ,et après ses donneés sont heberger dans mon réseau locale

Déjà, quel Arduino?
Comment veux-tu connecter ton Arduino à ton serveur (filaire, WiFi, Ethernet)?
As-tu un serveur qui tourne sur une machine chez toi?

1 Like

J'utilise arduino Mega2560 et pourtant j'en ai une ESP82 pour me connecter a internet .

Il serait bien de répondre à TOUTES les questions.

L'installation de PostgreSQL (ou autre), ce fait très facilement pour la majorité des distribution : as-tu déjà des connaissances la dessus ?

Ensuite, il faut bien réfléchir a ton schéma de donnée. Je sais généralement, on fonce sur le clavier, mais si ce schéma est pourri, les perfs le seront aussi et in fine tu vas avoir besoin d'une grosse machine pour faire tourner un petit truc.

Ensuite, faut nourrir la BDD : y'a plusieurs solutions, celle que j'ai choisi, c'est de passer par le très connu MQTT pour différentes raisons que j'ai expliqué ici.
J'ai des scripts Lua ou PHP (mais tu peux le faire avec n'importe quel langage, c'est qq chose de courant) qui récupèrent ces messages pour inserer les données dans la BDD.

A la fin, ca m'a donné Domestik

Notes :

  • ca fait un bail que je n'y ait pas touché car il m'apporte entière satisfaction. Mais, je ne suis pas sur qu'il tournerai tel quel sur une version récente de PHP (ces guignoles ont introduit de méchantes régressions qui bloquent un de mes autres projets ... pas le temps de tout refaire donc Domestik est resté avec PHP5 :zipper_mouth_face: car pas testé avec les versions suivantes
  • je supervise plus d'une centaines de valeurs avec un échantillonnage toutes les 5 minutes. Les données sont agrégée après 1 journée pour réduire la place et optimiser les perfs, ce qui fait que le tout tourne sur un simple BananaPI (avec plein d'autres choses) et la charge CPU est < 20%

Voili voila.

Ce serait bien de connaitre la quantité de données que tu penses récupérer et à quelle fréquence.
Parce que si tu ne cherches pas à stocker des grosses quantités de données et que tu n'as pas encore de serveur tu peux partir sur SQLite et des programmes Python pour l'acquisition et l'exploitation des données.

Tout à fait. C'est la solution que j'ai utilisé pour mes relevés teleinfo pour 2 compteurs EDF.

Un script PYTHON pour l'enregistrement des données toutes les 15 minutes : date & heure, identifiant + 3 INTEGER. Taille actuelle de la base 16Mo au bout de 5 ans.

Un serveur HTTP en PYTHON (CHERRYPY + graphes HIGHCHARTS) pour la consultation WEB.

L'avantage de la solution CHERRYPY est la légèreté : aucun besoin d'APACHE ni de PHP.

1 Like

avez vous des tutoriales pour apprendre le cheripy?

Une minute de recherche sur google et on trouve ça: https://docs.cherrypy.dev/en/latest/tutorials.html#tutorials
Voir en particulier le chapitre 9, mais ne pas négliger les autres pour comprendre le fonctionnement.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.