Jeffrey Cross
Jeffrey Cross

Letzte Build-Serie erstellen: Datenlogger erstellen

Für unsere vierte Woche in der Make It Last Build-Serie untersuchen wir, wie wir unser elektronisches Thermometer in einen Datenlogger verwandeln können, indem es Speicherfunktionen hinzufügt. Bevor Sie mit diesem Beitrag fortfahren, möchten Sie wahrscheinlich den neuesten Newsletter mit Hintergrunddaten abrufen.

Bevor wir vergessen, sind wir mit dem ersten Build fertig. Hoffentlich haben Sie mitverfolgt und die meisten Teile sind vorhanden, um Ihr Projekt abzuschließen. Einsendeschluss ist am 12. November 2010 um 23:59 Uhr PDT. Bitte reichen Sie bis dahin Ihr Projekt ein! Zur Erinnerung: Sie müssen nichts kaufen oder unser Beispielprojekt erstellen, um in Frage zu kommen. Sie müssen lediglich ein Gerät bauen, das mit Batterien betrieben wird, und kann Umgebungsdaten sammeln. Sehen Sie sich die offiziellen Regeln für Einzelheiten dazu an und welche Preise Sie gewinnen können.

Wenn Sie Fragen zu diesem Projekt haben oder Ideen dazu haben, die Sie gerne weitergeben möchten, gehen Sie zum Thema MAKE-Foren über und hören Sie zu. Nun, um unseren Datenlogger zu bauen!

Datenlogger-Schema

Hier ist das Schema für den Datenlogger. Um es etwas verständlicher zu machen, habe ich es in fünf Abschnitte unterteilt - den Mikrocontroller (Komponenten, die erforderlich sind, um den Mikrocontroller zum Laufen zu bringen), den Programmierer (den Port zum Anschluss eines PIC-Programmierers) und den Sensor (für unser Beispiel) ein Thermometer), eine serielle Schnittstelle (Header zum Anschließen eines FTDI-Kabels) und Datenspeicherung (der EEPROM-Speicherchip und zugehörige Teile). Schaltpläne können verwirrend sein. Daher ist es eine gute Strategie, sie in kleinere Teile zu zerlegen. Dies kann auch hilfreich sein, wenn Sie sich die tatsächlichen Schaltkreise ansehen. Können Sie feststellen, welche Komponenten auf Ihrem Steckbrett den jeweiligen Abschnitten entsprechen? Ihre Schaltung sollte bereits die ersten vier Abschnitte oder alles außer dem Datenspeicherabschnitt haben.

Schritt 0: Vorräte sammeln

Liste der Einzelteile:

  • Abgeschlossenes Thermometer-Projekt
  • Mikrochip 24AA1025 EEPROM-Speicher
  • 2x10k Widerstand (100k ist gut)
  • Breadboard-Überbrückungsdrähte
  • 2xAA Batteriehalter und Batterien

Schritt 1: Platzieren Sie das EEPROM auf der Platine

Setzen Sie den EEPROM-Chip rechts neben dem Mikrocontroller in das Steckbrett ein. Schließen Sie nach dem Einsetzen die Strom- und Masseleitungen wie oben gezeigt an. Pin 8 sollte an die Stromversorgung und Pin 5 an Masse angeschlossen sein.

Schritt 2: Konfigurieren Sie das EEPROM mithilfe von Überbrückungskabeln

Als Nächstes müssen wir einige Drähte hinzufügen, um dem EEPROM mitzuteilen, wie es sich verhalten soll. Zunächst müssen wir die serielle Adresse konfigurieren, auf die der Chip antworten wird. Wenn der Mikrocontroller aus dem Speicher lesen oder schreiben möchte, muss er zuerst die Adresse des Chips über die serielle i2c-Leitung senden. Durch das Hinzufügen einer externen Methode zum Konfigurieren der Adresse, auf die das Gerät reagiert, haben die Entwickler die Möglichkeit geschaffen, mehrere EEPROM-Chips gleichzeitig anzuschließen und zu verwenden, ohne dass diese miteinander in Konflikt stehen. Wir haben nur einen Chip, also konfigurieren Sie ihn so, dass er auf Adresse 7 reagiert, indem Sie die Kabel der EEPROM-Pins 1, 2 und 3 an die Stromversorgung anschließen.

Als Nächstes müssen wir dem Chip mitteilen, dass er Lese- und Schreibvorgänge auf dem Chip zulässt. Führen Sie dazu einen Draht vom WP-Pin (Pin 7 des EEPROM) zur Masse.

Schritt 3: Verbinden Sie den i2c-Bus zwischen Prozessor und Speicher

Der EEPROM-Chip kommuniziert mit dem Mikrocontroller über einen seriellen i2c-Bus. Der Bus verwendet zwei Drähte (Takt und Daten), um Nachrichten zwischen den beiden Geräten hin und her zu senden. Schließen Sie die Taktleitung an, indem Sie den Mikrocontroller Pin 14 mit dem EEPROM Pin 6 verbinden, und die Datenleitung, indem Sie den Mikrocontroller Pin 15 mit dem EEPROM Pin 5 verbinden. Das andere, was wir tun müssen, ist, Pullup-Widerstände von diesen beiden Leitungen hinzuzufügen Leistung. Dies ist notwendig, da Geräte am i2c-Bus Open-Collector-Ausgänge verwenden, die Probleme vermeiden, wenn sowohl das EEPROM als auch der Mikrocontroller gleichzeitig Daten über die serielle Leitung senden.

Hinweis: Einige Mikrocontroller verfügen über integrierte Pullup-Widerstände, so dass Sie keine externen Steuergeräte bereitstellen müssen. Sie brauchen sie aber für den 18lf25k22!

Schritt 4: Schließen Sie die serielle Schnittstelle an

Jetzt müssen wir ein Kabel hinzufügen, damit der Computer serielle Daten an den PIC senden kann. Verbinden Sie Pin 18 am Mikrocontroller mit Pin 4 am seriellen Header.

Hinweis: Bei der Erstellung des Thermometer-Projekts habe ich einen optionalen Widerstand zwischen dem seriellen FTDI-Kabel und dem PIC angezeigt, da ich einen 5-V-Wandler verwendet habe. Ich habe herausgefunden, wie ich meinen Adapter in eine 3,3-V-Version umwandeln kann. Deshalb habe ich den Widerstand für diesen Build entfernt.

Schritt 5: Schließen Sie die Batterien an

Schließen Sie schließlich den Akku an! Verbinden Sie die positive Leitung (rot) des Packs mit der Stromschiene und die negative Leitung (schwarz) mit Masse. Ein Akku mit einem Ein / Aus-Schalter funktioniert am besten, da Sie sicher sein müssen, dass er während der Verwendung Ihres Programmierkabels abgetrennt ist.

Schritt 6: Testen Sie den Datenlogger

Das ist alles für die Hardwaremodifikationen. Der letzte Teil besteht darin, die Software so zu ändern, dass der EEPROM-Speicher für Protokollierungszwecke verwendet wird. Packe die

und dann mit MPLAB auf das Board programmieren. Für das Beispielprojekt haben wir ein einfaches serielles Protokoll zur Steuerung des Datenloggers implementiert. Die Befehle sind:

  • m: Messen Sie die Temperatur und geben Sie den Wert sofort zurück
  • b: Starten Sie die Protokollierung
  • e: Protokollierung beenden
  • d: Protokollierte Daten ausgeben
  • r: Logger zurücksetzen).

Um zu testen, ob alles funktioniert, starten Sie Ihr serielles Programm (wie im letzten Beispiel) und geben Sie den Buchstaben "m" ein. Sie sollten eine Antwort wie folgt erhalten:

Die aktuelle Temperatur ist: 68

Wenn das funktioniert hat, sind Sie bereit zu gehen. Trennen Sie das PIC-Programmiergerät vom Computer, schalten Sie den Akku ein und geben Sie "b" ein, um die Aufzeichnung zu starten. An diesem Punkt können Sie den Datenlogger von Ihrem FTDI-Kabel trennen und eine Zeit lang irgendwo einstellen, um Temperaturdaten zu erfassen.Standardmäßig wird die Temperatur alle 10 Sekunden erfasst. Sie können diese jedoch ändern, indem Sie den Wert der Variablen 'logInterval' im Quellcode ändern.

Lassen Sie es einige Zeit (einige Minuten oder einige Stunden) Daten sammeln, stecken Sie es dann wieder in das serielle Kabel, geben Sie "e" in das Terminalfenster ein, um die Datenerfassung zu stoppen, und geben Sie dann "d" ein, um die Daten abzurufen. Sie sollten eine lange Liste von Temperaturmustern erhalten, die Sie ausschneiden und in ein Tabellenkalkulationsprogramm einfügen können, um ein Diagramm zu erstellen. Hier ist eine, die ich mitgenommen habe, wo ich meinen Datenlogger in den Kühlschrank gestellt habe, dann neben einen Wasserkocher und dann wieder in den Gefrierschrank, bevor ich ihn auf meinem Schreibtisch liegen ließ, während ich Tee machte:

Fazit

Das ist alles für jetzt. Nächste Woche machen wir das Projekt energieeffizient, indem wir den Prozessor so konfigurieren, dass er zwischen den Messungen heruntergefahren wird, die Messungen etwas präziser werden und eine einfache grafische Benutzeroberfläche erstellen, um die erfassten Daten mithilfe von Processing anzuzeigen.

Aktie

Leave A Comment