Table des matières:

Arduino travaillant avec plusieurs fichiers (LECTURE/ÉCRITURE): 4 étapes
Arduino travaillant avec plusieurs fichiers (LECTURE/ÉCRITURE): 4 étapes

Vidéo: Arduino travaillant avec plusieurs fichiers (LECTURE/ÉCRITURE): 4 étapes

Vidéo: Arduino travaillant avec plusieurs fichiers (LECTURE/ÉCRITURE): 4 étapes
Vidéo: Les Distributeurs Ne Veulent Pas Que Vous Sachiez Ça 2024, Juillet
Anonim
Arduino travaillant avec plusieurs fichiers (LECTURE/ÉCRITURE)
Arduino travaillant avec plusieurs fichiers (LECTURE/ÉCRITURE)

Bonjour gars

Aujourd'hui, je vous présente le projet Arduino qui fonctionne avec un shield RTC capable de stocker des données. La tâche principale de ce projet est de travailler avec plusieurs fichiers stockés sur la carte sc. Ce projet contient du code qui fonctionne avec trois fichiers qui sont stockés directement sur une carte SD avec arduino et RTC shield. Étant donné que ce projet fonctionne avec le bouclier DataLogger, ces données seront également stockées exactement en même temps que sur votre PC.

Ce projet est une version améliorée de mon dernier projet. Ce projet peut être trouvé sur le site instructables sous le nom Arduino Data Logger Shield Small Project. Si vous avez des difficultés à comprendre ce projet, je vous suggère d'en voir un plus simple d'abord.

La principale différence entre ces deux projets est que ce projet utilise 3 fichiers texte, cette fois aussi, nous lisons les données de deux d'entre eux. Parce que nous pouvons lire les données, nous pouvons obtenir des valeurs moyennes d'humidité et de température, qui sont stockées sur la carte SD. Cela sera également affiché sur l'écran LCD connecté à Arduino.

Encore une fois, si vous êtes nouveau sur Arduino et que c'est votre premier projet qui utilise DataLogger, je vous suggère d'aller vérifier ce lien https://www.instructables.com/id/Arduino-Data-Logg… et quand vous obtenez tout sur ce, venez ici et amusez-vous un peu plus. Commençons.

Étape 1: Pièces

les pièces
les pièces
les pièces
les pièces
les pièces
les pièces

Comme chaque fois que j'écris des projets comme celui-ci, je vais commencer par toutes les parties que j'ai utilisées avec ce projet. Je suggérerai également certains des capteurs qui peuvent être utilisés et peuvent rendre ce projet un peu différent.

Les pièces:

  • Arduino uno rev3
  • Bouclier d'enregistreur de données Arduino
  • carte mémoire SD
  • Écran LCD 1602 vert avec I2C (vous pouvez utiliser n'importe quel autre écran)
  • DHT22 (DHT11 fonctionne bien aussi, mais la précision de celui-ci n'est pas la même que le dht22)
  • Peu de câbles de démarrage
  • Planche à pain
  • Batterie 9v

Vous pouvez changer certaines pièces. Le bon côté de ce projet est qu'il peut être utilisé pour stocker les données de n'importe quel autre capteur. J'essaierais de travailler avec un capteur de fumée ou un capteur infrarouge. Il fonctionne avec n'importe quel autre capteur. Vous pouvez également changer votre Arduino, mais gardez à l'esprit qu'Arduino est le meilleur pour s'adapter à l'enregistreur de données.

Étape 2: Connecter toutes les pièces ensemble

Connecter toutes les pièces ensemble
Connecter toutes les pièces ensemble

Celui-ci est facile à connecter. Même le schéma est le même que le projet le plus simple. Mais je dirais que vous devez faire attention à quelle broche vous allez utiliser. À chaque fois, vérifiez la fiche technique de l'enregistreur de données pour voir quelles broches sont les meilleures à utiliser, car si je me souviens bien, certaines broches sont déjà définies et lorsque j'ai essayé d'utiliser mon capteur sur l'une des broches définies, cela n'a pas fonctionné.

En haut de cette étape, vous pouvez voir un schéma réalisé avec du frittage. La chose facile est que vous devez connecter votre enregistreur de données sur le dessus de votre arduino. Connectez votre carte SD à l'enregistreur de données, et la dernière chose que vous devez faire est de connecter le capteur dht et l'écran LCD. Nous utilisons 5V d'arduino pour + partie sur la planche à pain, GND pour - partie, et en suivant ces lignes, vous connectez également + ligne de capteur et lcd à + ligne de planche à pain. Idem pour - les pièces, elles vont juste à la ligne qui suit -. Le capteur DHT est connecté à la broche 7 cette fois. L'écran LCD est connecté à A4 et A5. Facile, n'est-ce pas ?

ACL:

  • VCC à 5V (+ partie sur maquette)
  • GND à gnd (-partie sur la maquette)
  • SDA vers broche analogique A4
  • SCL vers broche analogique A5

DHT22:

J'ai utilisé dht avec une carte dans laquelle il y a trois broches à utiliser:

  • + à 5V
  • - à GND
  • vers la broche numérique 7

Étape 3: Codage

Ce code temporel est plus complexe. Une bonne partie est commentée pour que vous puissiez la comprendre facilement.

Je vais expliquer ce code en quelques parties courtes.

1. Première chose à garder à l'esprit que ce code aura besoin de quelques bibliothèques installées sur votre PC. Ce sont: Time(TimeLib), Wire, LiquidCrystal, DHT, OneWire, SPI, SD, RTClib. Vous pouvez probablement utiliser d'autres bibliothèques, mais ces bibliothèques ont fonctionné pour moi.2. Après cela, nous définissons tout ce qui est nécessaire pour ce projet. Le capteur DHT est facile à définir, il vous suffit de dire la broche à laquelle le capteur est connecté et le type de capteur. Après cela, vous devez définir des broches qui seront utilisées pour la carte SD et la broche RTC. Et après cela, vous pouvez voir les variables utilisées pour ce projet.

3. Le projet utilise peu de méthodes et toutes fonctionnent avec le capteur DHT. Si vous travaillez sur un projet avec ce type de capteur, vous pouvez l'utiliser. Ces méthodes sont getTemperature(), getMidTemperature(), getHumidity(), getMidHumidity(), readSensorData(), printLcdTemperature(), printHumidity(), printLcdMidTemperature(), printMidHumidity().

4. Dans la configuration, il y a peu de choses à faire. Tout d'abord, vous devez définir le temps. Parce que nous utilisons RTC ici, nous voulons avoir le bon moment lorsque notre Arduino enregistre les données du capteur. Cette partie sera commentée dans le code. Si vous décommentez //RTC.adjust(DateTime(_DATE_, _TIME_)); ligne, vous pouvez définir le temps sur votre projet. Après avoir défini l'heure appropriée, vous pouvez à nouveau commenter cette partie et vous pouvez utiliser votre arduino sans ordinateur. C'est cool car vous pouvez utiliser votre capteur de température dans une autre pièce et suivre la température sans avoir besoin de votre ordinateur. La deuxième partie à faire consiste à utiliser votre carte SD sur laquelle seront stockées des données. Shield essaiera de voir s'il y a une carte et de l'initialiser. Si ce n'est pas le cas, le message d'erreur s'affichera dans l'écran Série sur Arduino IDE.

Dans la configuration est la première étape où nous travaillons avec l'écriture de fichiers sur la carte mémoire. La première chose qui est écrite sur la carte est dans le fichier datalog.txt. Cette fois, nous écrivons juste le temps d'enregistrer notre appareil, et nous créons également une petite rangée de noms (variables utilisées pour économiser, et aussi l'heure)

La dernière partie de la configuration est l'initialisation de l'écran LCD et du capteur dht.

5. La partie boucle est la partie principale du projet. Travailler avec le capteur cette fois est très facile car il n'utilise qu'une seule méthode qui est de lire les valeurs obtenues par le capteur. La partie LCD est également très facile. La partie suivante est celle que nous devons expliquer ici. Ce projet fait quelque chose à chaque minute. Une minute, il stocke les données dans datalog.txt. Ces données peuvent être lues par quelqu'un qui ne sait même pas programmer des arduinos. D'un autre côté. Une minute, il enregistre la température sur datalogB.txt et une minute, il enregistre l'humidité sur datalogC.txt. Nous avons besoin de datalogB.txt et dataLogC.txt pour pouvoir lire à partir de notre carte mémoire. Donc, si nous continuons à lire notre code, vous pouvez également voir que ce code lit les valeurs moyennes de la température et de l'humidité et les stocke dans une rangée. Je voulais faire un appareil qui ne prend que les dix derniers chiffres du fichier. Ainsi, ce projet parcourt toujours les valeurs de la carte et enregistre les dix derniers chiffres. Ces chiffres stockés dans les lignes sont utilisés afin que nous puissions obtenir la valeur moyenne de la température et la valeur moyenne de l'humidité. Qui sont également affichés sur notre écran LCD après un certain temps

Étape 4: Utilisation d'Arduino et de la carte SD par la suite

Utiliser ensuite Arduino et la carte SD
Utiliser ensuite Arduino et la carte SD
Utiliser ensuite Arduino et la carte SD
Utiliser ensuite Arduino et la carte SD
Utiliser ensuite Arduino et la carte SD
Utiliser ensuite Arduino et la carte SD
Utiliser ensuite Arduino et la carte SD
Utiliser ensuite Arduino et la carte SD

Ici, vous pouvez voir ce qui est affiché sur l'écran LCD et comment fonctionne le projet. Aussi, je mets ici des photos des journaux de données que j'ai sauvegardés. Datalog.txt est celui qui peut être utilisé pour voir comment l'appareil stocke chaque valeur. DatalogB et datalogC sont là pour que vous puissiez voir à quoi ils ressemblent. Ils sont écrits comme ça, vous pouvez donc utiliser la méthode d'analyse et lire les données sans problème.

Tout l'intérêt de ce projet est la manipulation des fichiers qui se trouvent sur la carte SD. Parfois, nous avons besoin d'appareils qui peuvent stocker de la mémoire et la température de lecture est également une fois comme ça. La bonne chose est que le bouclier utilisé sur cet appareil dispose également d'un module RTC, ce qui est la meilleure chose pour le temps. Lorsque nous pouvons lire en temps réel et stocker des données avec notre appareil, cela signifie qu'il peut être portable.

Merci les gars d'avoir lu ce projet. J'espère que cela vous aidera. Merci.

Cordialement Sébastien

Conseillé: