Jeffrey Cross
Jeffrey Cross

Make It Last Build Series: Construire l'enregistreur de données

Pour notre quatrième semaine de la série Construis-le pour la dernière construction, nous examinons comment transformer notre thermomètre électronique en enregistreur de données en ajoutant une capacité de stockage. Vous voudrez probablement consulter la dernière lettre d'information pour les données de base avant de continuer avec ce message.

De plus, avant d’oublier, nous arrivons à la fin de notre première construction. J'espère que vous avez suivi et que la plupart des éléments sont en place pour terminer votre projet. La date limite d'inscription est fixée au 12 novembre 2010 à 23h59 HAP. Assurez-vous donc de soumettre votre projet d'ici là! Pour rappel, vous n’avez pas besoin d’acquérir quoi que ce soit, ni de construire notre exemple de projet pour être éligible. Vous devez simplement construire un appareil fonctionnant sur piles et pouvant collecter certaines données environnementales. Voir les règles officielles pour des détails sur tout cela et quels prix vous pouvez gagner.

Enfin, si vous avez des questions sur ce projet, ou des idées que vous souhaitez partager, passez à la rubrique MAKE Forums et écoutez le son. Maintenant, pour construire notre enregistreur de données!

Schéma de l'enregistreur de données

Voici le schéma pour l'enregistreur de données. Pour le rendre un peu plus facile à comprendre, je l’ai divisé en cinq sections: le microcontrôleur (composants nécessaires au bon fonctionnement du microcontrôleur), le programmeur (le port utilisé pour connecter un programmateur PIC), le capteur (pour notre exemple , un thermomètre), le port série (en-tête pour connecter un câble FTDI) et le stockage de données (la puce de mémoire EEPROM et les pièces associées). Les schémas de circuit peuvent être déroutants à regarder. Une bonne stratégie consiste donc à essayer de les décomposer en morceaux plus petits. Cela peut également être utile lorsque vous regardez les circuits réels - pouvez-vous identifier les composants de votre carte de travail correspondant à chacune des sections ci-dessus? Votre circuit devrait déjà avoir les quatre premières sections, ou tout sauf la partie de stockage de données.

Étape 0: collecter les fournitures

Liste des pieces:

  • Projet «thermomètre» terminé
  • Mémoire EEPROM Microchip 24AA1025
  • 2x10k résistance (100k c'est bien)
  • Fils de cavalier de planche à pain
  • 2xAA porte-piles et piles

Étape 1: Placez la mémoire EEPROM sur le tableau

Placez la puce EEPROM dans la carte d’affichage, à droite du microcontrôleur. Une fois installé, connectez les câbles d’alimentation et de terre comme indiqué ci-dessus. La broche 8 doit être connectée à l'alimentation et la broche 5 à la terre.

Étape 2: Configurez l'EEPROM à l'aide de câbles de liaison

Ensuite, nous devons ajouter des câbles pour indiquer à la mémoire EEPROM comment se comporter. Tout d’abord, nous devons configurer l’adresse série à laquelle la puce répondra. Lorsque le microcontrôleur veut lire ou écrire dans la mémoire, il doit d'abord envoyer l'adresse de la puce par la ligne série i2c. En ajoutant un moyen externe de configuration de l'adresse à laquelle le périphérique répond, les concepteurs ont rendu possible la connexion et l'utilisation simultanées de plusieurs puces EEPROM, sans conflit les unes avec les autres. Nous n’avons qu’une puce, nous allons donc la configurer pour répondre à l’adresse 7 en connectant les fils des broches 1, 2 et 3 de l’EEPROM à l’alimentation.

Ensuite, nous devons indiquer à la puce d'autoriser les lectures et les écritures sur la puce. Pour ce faire, connectez la broche WP (broche 7 de la mémoire EEPROM) à la terre.

Étape 3: câblez le bus i2c entre le processeur et la mémoire

La puce EEPROM communique avec le microcontrôleur via un bus série i2c. Le bus utilise deux fils (horloge et données) pour faire passer des messages entre les deux appareils. Connectez la ligne d'horloge en connectant la broche 14 du microcontrôleur à la broche 6 de l'EEPROM et à la ligne de données en connectant la broche 15 du microcontrôleur à la broche 5 de l'EEPROM. Nous avons également besoin d'ajouter des résistances de rappel de ces deux lignes à Puissance. Celles-ci sont nécessaires car les périphériques sur le bus i2c utilisent des sorties à collecteur ouvert, ce qui permet d'éviter des problèmes si l'EEPROM et le microcontrôleur envoient des données simultanément sur la ligne série.

Remarque: Certains microcontrôleurs ont des résistances de rappel intégrées, vous n’avez donc pas besoin d’en fournir de externes. Vous en avez besoin pour le 18lf25k22, cependant!

Étape 4: Connectez le port série

Maintenant, nous devons ajouter un fil pour permettre à l’ordinateur d’envoyer des données série au PIC. Connectez la broche 18 du microcontrôleur à la broche 4 de l’en-tête de série.

Remarque: Dans la construction du projet de thermomètre, j'ai montré une résistance en option entre le câble série FTDI et le PIC, car j'utilisais un convertisseur série 5V. J'ai découvert comment convertir mon adaptateur en version 3.3V, j'ai donc retiré la résistance de cette version.

Étape 5: Connectez les piles

Enfin, connectez la batterie! Câblez le fil positif (rouge) du paquet au rail d'alimentation et le fil négatif (noir) à la terre. Une batterie avec un interrupteur marche / arrêt fonctionnera mieux, car vous voudrez vous assurer qu'elle est déconnectée lorsque vous utilisez votre câble de programmation.

Étape 6: testez l'enregistreur de données

C'est tout pour les modifications matérielles. La dernière partie consiste à modifier le logiciel pour utiliser la mémoire EEPROM à des fins de journalisation. Prenez le

, puis utilisez MPLAB pour le programmer sur votre tableau. Pour l'exemple de projet, nous avons implémenté un protocole série simple pour contrôler l'enregistreur de données. Les commandes sont:

  • m: mesure la température et renvoie la valeur immédiatement
  • b: Commencez à vous connecter
  • e: mettre fin à la journalisation
  • d: vider les données enregistrées
  • r: réinitialiser l'enregistreur).

Pour vérifier que tout fonctionne correctement, lancez votre programme série (comme dans le dernier exemple) et tapez la lettre «m.». Vous devriez obtenir une réponse comme celle-ci:

La température actuelle est: 68

Si cela a fonctionné, vous êtes prêt à partir. Débranchez le programmateur PIC, allumez la batterie et tapez «b» pour commencer l’enregistrement. À ce stade, vous pouvez déconnecter l'enregistreur de données de votre câble FTDI et le configurer quelque part pendant un certain temps pour collecter des données de température.Par défaut, il saisit la température toutes les 10 secondes, mais vous pouvez le modifier en modifiant la valeur de la variable ‘logInterval’ dans le code source.

Laissez-le collecter des données pendant quelques instants (quelques minutes ou quelques heures), puis rebranchez-le dans le câble série, tapez "e" dans la fenêtre de votre terminal pour arrêter la collecte de données, puis tapez "d" pour récupérer les données. Vous devriez obtenir une longue liste d’échantillons de température que vous pouvez copier et coller dans un tableur pour créer un graphique. En voici un que j'ai pris, où j'ai placé mon enregistreur de données dans le réfrigérateur, puis à côté d'une bouilloire d'eau, puis de nouveau dans le congélateur avant de le laisser sur mon bureau pendant que je préparais du thé:

Conclusion

C'est tout pour le moment. La semaine prochaine, nous allons rendre le projet économe en énergie en configurant le processeur de manière à ce qu’il s’éteigne entre les mesures, à rendre les mesures un peu plus précises et à créer une interface graphique simple pour afficher les données collectées à l’aide de Traitement.

Part

Laisser Un Commentaire