INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Programm um Temperatur- und Feuchtigkeitsdaten auf Sd-Karte zu schreiben
08.12.2013, 19:05
Beitrag #1
Programm um Temperatur- und Feuchtigkeitsdaten auf Sd-Karte zu schreiben
Hi,
Habe einen Sensor, der gleichzeitig die Temperatur und die Feuchtigkeit erfasst. Kennt jemand ein Programm, um diese Daten zu erfassen und auf eine SD-Karte zu schreiben. Habe keinen Plan.

Danke schon mal im Voraus
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.12.2013, 12:09
Beitrag #2
RE: Programm um Temperatur- und Feuchtigkeitsdaten auf Sd-Karte zu schreiben
(08.12.2013 19:05)Cray-1 schrieb:  Hi,
Habe einen Sensor, der gleichzeitig die Temperatur und die Feuchtigkeit erfasst. Kennt jemand ein Programm, um diese Daten zu erfassen und auf eine SD-Karte zu schreiben. Habe keinen Plan.

Danke schon mal im Voraus

Hallo auch
ich hab mal vor ner Zeit für mich sowas zusammenkopiert aus ein paar Sketches, wer auch immer die geschrieben hatte.
Das Proggi zeichnet alle 30 sek die aktuellen Daten auf ne SD mit meinem Mega2560 und dem W5100. Den DHT hab ich nur draufgesteckt und benutze die Ports des Mega als Spannungsversorgung.

Uwe

Code:
/*
  SD card Temp & Humidity datalogger

This example shows how to log data from
a DHT11 temperature and humidity sensor
to an SD card using the SD library.

It also uses the Adafruit DHT sensor library from
https://github.com/adafruit/DHT-sensor-library
    
The circuit:
* SD card attached to SPI bus as follows:
** MOSI - pin 11
** MISO - pin 12
** CLK - pin 13
** CS - pin 53
* DHT11 sensor connected as follows:
** Ground connected to 5
** Voltage connected to 8
** data out connected to 7
** 10K resistor connected from 7 to +5V


*/

#include <SD.h>
#include "DHT.h"
#include <Time.h>  
#include <Wire.h>  
#include <DS1307RTC.h>

#define DHTPIN 24        // what pin the sensor is connected to
#define DHTTYPE DHT11   // Which type of DHT sensor you're using:
#define DHT_GND 26       // ground pin of the sensor
#define DHT_VCC 22       // voltage pin of the sensor
#define TEMPERATURE 1   //  for the DHT sensor
#define HUMIDITY 0      // for the DHT sensor
#define fehler 13

// initialize the sensor:
DHT dht(DHTPIN, DHTTYPE);
// On the Ethernet Shield, CS is pin 4. Note that even if it's not
// used as the CS pin, the hardware CS pin (10 on most Arduino boards,
// 53 on the Mega) must be left as an output or the SD library
// functions will not work.
const int chipSelect = 53; // 4,10,53

void setup() {
  pinMode(fehler, OUTPUT);
  setSyncProvider(RTC.get);   // the function to get the time from the RTC

  if (startSDCard() == true) {
    pinMode(DHT_VCC, OUTPUT);
    pinMode(DHT_GND, OUTPUT);
    digitalWrite(DHT_VCC, HIGH);
    digitalWrite(DHT_GND, LOW);
    dht.begin();
  }
}

void loop()
{
  // Get the current time in ms:

  long currentTime = millis();
  delay(29250);// normalmodus
//  delay(250); //test schnelle ergebnisse
  digitalWrite(fehler, HIGH);
  delay(250);
  digitalWrite(fehler, LOW);
  delay(250);
  digitalWrite(fehler, HIGH);
  delay(250);
  digitalWrite(fehler, LOW);
  float humidity = readSensor (HUMIDITY);
  float temperature = readSensor(TEMPERATURE);
  File dataFile = SD.open("datalog.csv", FILE_WRITE);
  dataFile.print(humidity);
  dataFile.print(";");
  dataFile.println(temperature);
  dataFile.print("; ");
  dataFile.print(day());
  dataFile.print(":");
  dataFile.print(month());
  dataFile.print(":");
  dataFile.print(year());
  dataFile.print("; ");
  dataFile.print(hour());
  dataFile.print(":");
  dataFile.print(minute());
  dataFile.print(":");
  dataFile.print(second());
  dataFile.print("; ");

  dataFile.close();

}


boolean startSDCard() {
  boolean result = false;
  // Serial.print("Initializing SD card...");
  // make sure that the default chip select pin is set to
  // output, even if you don't use it:
  pinMode(53, OUTPUT);

  // see if the card is present and can be initialized:
  if (!SD.begin(chipSelect)) {
    result = false;
  }
  else {
      File dataFile = SD.open("datalog.csv", FILE_WRITE);
    if (dataFile) {
      dataFile.close();
      result = true;
    }
  }  
  return result;
}


float readSensor( int thisValue) {
  float result;

  if (thisValue == TEMPERATURE) {
    result = dht.readTemperature();
  }
  else if (thisValue == HUMIDITY) {
    // read sensor:
    result = dht.readHumidity();  
  }

  if (isnan(result)) {
     result = -273.0;
  }
  return result;
}

Martin Luther King sagte am 28 August 1963 :

I have a Dream !!

Ich bin weiter:

I have a Schaltplan !!!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.12.2013, 12:34
Beitrag #3
RE: Programm um Temperatur- und Feuchtigkeitsdaten auf Sd-Karte zu schreiben
Hallo!

Schau mal das Tutorial von Adafruit durch...
http://learn.adafruit.com/adafruit-data-logger-shield
..hab meinen Logger mit dem Shield aufgebaut.
Schreibt Zeit, Datum, Temp, Hum, Beleuchtung und Spannung + LCD mit Keypad auf einem UNO..

mfg Martin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.12.2013, 14:14
Beitrag #4
RE: Programm um Temperatur- und Feuchtigkeitsdaten auf Sd-Karte zu schreiben
(10.12.2013 12:34)P.Martin schrieb:  Hallo!

Schau mal das Tutorial von Adafruit durch...
http://learn.adafruit.com/adafruit-data-logger-shield
..hab meinen Logger mit dem Shield aufgebaut.
Schreibt Zeit, Datum, Temp, Hum, Beleuchtung und Spannung + LCD mit Keypad auf einem UNO..

mfg Martin

Könntest Du mir Deinen Code zeigen, nur so als Anregung, wie man so was aufziehen kann?

Gruß
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.12.2013, 23:09 (Dieser Beitrag wurde zuletzt bearbeitet: 13.12.2013 11:52 von P.Martin.)
Beitrag #5
RE: Programm um Temperatur- und Feuchtigkeitsdaten auf Sd-Karte zu schreiben
Hallo !

Den Code kannst gerne haben, es wurde nur der Adafruitcode erweitert.
Zum Aufbau: UNO mit dem Ada-Loggershield und darauf noch ein 16x2 LCD mit 6 Buttons.
Die Breakouts: TSL2561 für Lum ( Achtung, 3,3V ,entweder Levelshifter verwenden oder die Pullups vom Shield auslöten) , Honeywell 4030 für Hum und ein HK Thermistor Analog Modul für Temp.
Die Sensorwerte werden alle 2 Sekunden auf die SD-Karte geschrieben, die dann am PC in eine Calc-Tabelle eingefügt werden.
Läuft stabil, allerdings ist der Code noch "BETA", bei den Tasten gibts nur den Reset zum abschliessen eines Logfiles..wird auch nicht mehr fertiggestellt, da der Logger noch erweitert ( UVA / B ) wird und der UNO schon jetzt an seine Grenzen gelangt ...der Mega bietet halt weit mehr und mit dem 2,8 Touchscreen wirds richtig "klasse".


.ino  DATALOGGER.ino (Größe: 7,28 KB / Downloads: 389)

Edit: ..bei meinem Aufbau wurde pin 10 vom LCD-Shield entfernt und mittels
Diode auf Pin 3 gebrückt. Bei einem Standard -Shield den Code in Zeile 5
int lcdback = 3; auf int lcdback = 10; ändern...sonst bleibts finster..

mfg Martin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
Rainbow Programm mit Tastr unterbrechen Schwinge117 12 360 02.03.2017 21:17
Letzter Beitrag: Tommy56
  Temperatur via SMS senden Obermuda 6 516 07.02.2017 12:27
Letzter Beitrag: Tommy56
  Programm Elegoo Smart Robot kit Thorsten_S 3 346 29.01.2017 17:40
Letzter Beitrag: Micha06
  DHT22 min max Temperatur 7-Segmentanzeige bastelbert 50 1.489 14.01.2017 11:46
Letzter Beitrag: Tommy56
  Servo über Temperatur steuern querkopf71 3 298 07.12.2016 19:21
Letzter Beitrag: hotsystems
  Fehler in meinem Programm Franz54 7 298 01.12.2016 23:58
Letzter Beitrag: hotsystems
  Data Logger Daten auf SD Card schreiben Crichton 12 661 22.11.2016 18:32
Letzter Beitrag: Crichton
  Se(h)Karte mit LED beleuchten manfredo 29 971 19.11.2016 16:29
Letzter Beitrag: Tommy56
  Temperatur mit nrf24 übertragen jgrothe 17 1.160 09.09.2016 14:01
Letzter Beitrag: jgrothe
  SD Karte wird nicht erkannt... Maxi290997 2 330 16.08.2016 14:36
Letzter Beitrag: Maxi290997

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste