![Enregistrez des données et tracez un graphique en ligne à l'aide de NodeMCU, MySQL, PHP et Chartjs.org : 4 étapes Enregistrez des données et tracez un graphique en ligne à l'aide de NodeMCU, MySQL, PHP et Chartjs.org : 4 étapes](https://i.howwhatproduce.com/images/005/image-12189-24-j.webp)
Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-23 14:46
![Enregistrez des données et tracez un graphique en ligne à l'aide de NodeMCU, MySQL, PHP et Chartjs.org Enregistrez des données et tracez un graphique en ligne à l'aide de NodeMCU, MySQL, PHP et Chartjs.org](https://i.howwhatproduce.com/images/005/image-12189-25-j.webp)
![Enregistrez des données et tracez un graphique en ligne à l'aide de NodeMCU, MySQL, PHP et Chartjs.org Enregistrez des données et tracez un graphique en ligne à l'aide de NodeMCU, MySQL, PHP et Chartjs.org](https://i.howwhatproduce.com/images/005/image-12189-26-j.webp)
Ce Instructable décrit comment nous pouvons utiliser la carte Node MCU pour collecter des données à partir de plusieurs capteurs, envoyer ces données à un fichier PHP hébergé qui ajoute ensuite les données à une base de données MySQL. Les données peuvent ensuite être visualisées en ligne sous forme de graphique, à l'aide de chart.js.
Une connaissance de base de PHP et MySQL sera requise pour ce projet et vous aurez besoin d'un accès à l'hébergement Web avec ces paramètres pour pouvoir créer et visualiser vos propres graphiques. Je suppose également que vous avez des connaissances de base sur l'utilisation de la carte Node MCU et le téléchargement de croquis sur celle-ci. (J'utilise l'IDE Arduino pour cela)
Étape 1: Construire le circuit
![Construire le circuit Construire le circuit](https://i.howwhatproduce.com/images/005/image-12189-27-j.webp)
![Construire le circuit Construire le circuit](https://i.howwhatproduce.com/images/005/image-12189-28-j.webp)
![Construire le circuit Construire le circuit](https://i.howwhatproduce.com/images/005/image-12189-29-j.webp)
Comme le Node MCU n'a qu'une seule broche analogique, nous utiliserons le multiplexage pour pouvoir lire les données de plusieurs capteurs. (Un certain nombre d'instructables couvrent ce concept plus en détail donc je n'entrerai pas dans cela ici). Dans cet exemple, j'ai utilisé deux capteurs (pour la lumière et la température), mais vous pouvez les modifier comme vous le souhaitez et ajouter d'autres capteurs si nécessaire. J'ai utilisé une résistance sensible à la lumière, une thermistance, deux diodes de redressement, une résistance de 330 ohms et une résistance de 10K et quelques fils de liaison. Le diagramme de Fritzing ci-joint montre comment ils sont tous connectés sur la planche à pain.
Étape 2: éditez et téléchargez l'esquisse sur le nœud MCU
Utilisez ce fichier.ino joint. Vous devrez le modifier avec votre propre nom et mot de passe de réseau WiFi afin que le Node MCU puisse se connecter à votre propre réseau.
Au bas de ce croquis, la ligne 'delay (60000);' donne un délai d'une minute entre les lectures du capteur, mais cela peut être ajusté en fonction de vos propres besoins. Je recommanderais cependant de laisser au moins 10 secondes pour permettre la connexion au fichier 'updater.php' à chaque fois.
Vous devrez également modifier le chemin vers lequel vous allez héberger les deux fichiers.php et les deux fichiers javascript qui sont requis. Vous pouvez les télécharger à l'étape suivante.
Étape 3: Base de données et fichiers Web
Créez votre base de données MySql. Créez une table appelée 'temp_light' (vous pouvez modifier cela, mais vous devrez modifier les deux fichiers php pour refléter les modifications que vous apportez). Donnez au tableau quatre champs. Un champ d'incrémentation automatique principal. Un champ entier appelé 'temp', un champ entier appelé 'light' et un champ appelé 'date_time' qui sera un horodatage et la valeur par défaut 'CURRENT_TIMESTAMP'
Téléchargez maintenant le fichier.zip joint et décompressez-le. Cela vous donnera deux fichiers php et un dossier appelé "scripts" qui contient des fichiers.js que j'ai obtenus de chartjs.org. Les deux fichiers.js n'ont pas besoin d'être édités et le dossier 'scripts' doit être hébergé au même endroit que vos deux fichiers php. les deux fichiers php devront tous deux être modifiés avec votre propre nom de base de données, mot de passe et adresse IP de l'hôte. adresse.
Dans le fichier index.php, vous verrez la ligne 50: $adjusted_temp=($temp*0.0623);
Ce calcul consiste à convertir la lecture de la température aussi près que possible des degrés centigrades et a été obtenu par essais et erreurs et devra presque certainement être modifié pour s'adapter à votre propre capteur de température.
Hébergez maintenant les deux fichiers php et le dossier 'scripts' contenant les deux fichiers.js tous ensemble dans le même répertoire. Accédez à ce répertoire et vous devriez voir votre propre graphique avec les données envoyées par votre carte Node MCU.
Étape 4: Le résultat fini
J'ai à l'origine fait ce projet il y a environ deux ans, mais je n'avais jamais réussi à écrire un instructable pour cela jusqu'à maintenant. Vous pouvez voir le graphique créé par mon test ici:
Le grand pic dans le graphique est l'endroit où le soleil a brillé à travers la fenêtre sur les deux capteurs et le lent déclin s'est à nouveau produit lorsque le soleil a lentement disparu de la vue.
Conseillé:
Faites de beaux tracés à partir de données Arduino en direct (et enregistrez les données dans Excel): 3 étapes
![Faites de beaux tracés à partir de données Arduino en direct (et enregistrez les données dans Excel): 3 étapes Faites de beaux tracés à partir de données Arduino en direct (et enregistrez les données dans Excel): 3 étapes](https://i.howwhatproduce.com/images/002/image-5402-j.webp)
Créez de beaux tracés à partir de données Arduino en direct (et enregistrez les données dans Excel) : nous aimons tous jouer avec notre fonction traceur dans l'IDE Arduino. des points sont ajoutés et ce n'est pas particulièrement agréable pour les yeux. Le traceur Arduino IDE ne
Enregistrez l'ECG à haute vitesse ou d'autres données, en continu pendant plus d'un mois : 6 étapes
![Enregistrez l'ECG à haute vitesse ou d'autres données, en continu pendant plus d'un mois : 6 étapes Enregistrez l'ECG à haute vitesse ou d'autres données, en continu pendant plus d'un mois : 6 étapes](https://i.howwhatproduce.com/images/010/image-27281-j.webp)
Enregistrez l'ECG à haute vitesse ou d'autres données, en continu pendant plus d'un mois : ce projet a été développé pour soutenir une équipe de recherche médicale universitaire, qui avait besoin d'un appareil portable capable d'enregistrer 2 signaux ECG à 1 000 échantillons/s chacun (2 000 échantillons/s au total) en continu pendant 30 jours, afin de détecter les arythmies. Le projet prés
Comment envoyer des données DHT11 au serveur MySQL à l'aide de NodeMCU : 6 étapes
![Comment envoyer des données DHT11 au serveur MySQL à l'aide de NodeMCU : 6 étapes Comment envoyer des données DHT11 au serveur MySQL à l'aide de NodeMCU : 6 étapes](https://i.howwhatproduce.com/images/001/image-884-31-j.webp)
Comment envoyer des données DHT11 au serveur MySQL à l'aide de NodeMCU : dans ce projet, nous avons interfacé DHT11 avec nodemcu, puis nous envoyons des données de dht11, qui correspondent à l'humidité et à la température, à la base de données phpmyadmin
Stockez et tracez les données EC/pH/ORP avec la pile TICK et la plate-forme NoCAN : 8 étapes
![Stockez et tracez les données EC/pH/ORP avec la pile TICK et la plate-forme NoCAN : 8 étapes Stockez et tracez les données EC/pH/ORP avec la pile TICK et la plate-forme NoCAN : 8 étapes](https://i.howwhatproduce.com/images/002/image-5082-16-j.webp)
Stocker et représenter graphiquement les données EC/pH/ORP avec la pile TICK et la plate-forme NoCAN : cette section explique comment utiliser la plate-forme NoCAN d'Omzlo et les capteurs uFire pour mesurer l'EC, le pH et l'ORP. Comme le dit leur site Web, il est parfois plus facile de simplement faire passer un câble à vos nœuds de capteur. CAN a l'avantage de la communication et de la puissance en un seul c
Système de présence en envoyant des données RFID au serveur MySQL à l'aide de Python avec Arduino : 6 étapes
![Système de présence en envoyant des données RFID au serveur MySQL à l'aide de Python avec Arduino : 6 étapes Système de présence en envoyant des données RFID au serveur MySQL à l'aide de Python avec Arduino : 6 étapes](https://i.howwhatproduce.com/images/002/image-5256-23-j.webp)
Système de présence en envoyant des données RFID au serveur MySQL à l'aide de Python avec Arduino: Dans ce projet, j'ai interfacé RFID-RC522 avec arduino, puis j'envoie des données RFID à la base de données phpmyadmin. Contrairement à nos projets précédents, nous n'utilisons aucun bouclier Ethernet dans ce cas, ici nous lisons simplement les données série provenant d'ar