Temperatur Messung mit dem DS18B20 und Arduino Nano
Habe heute einen One-Wire DS18B20 Temperatursensor erhalten und ihn mit dem Arduino Nano verbunden. Der Messbereich des Sensors beträgt von -55°C bis +125°C bei ± 0,5°C Genauigkeit.
Mit den OneWire 2.2 und Dallas Temperature Control Library 3.7.2 Bibliotheken ist die
Temperaturmessung schnell zusammengebaut.
Hier das Foto des Aufbaus mit Schaltplan:
Das Programm (8038 byte) gibt zuerst die eindeutige ID des Sensors aus, (28-A2-9D-8A-04-00-00-2B) und dann jede Sekunde den neuen Messwert:
/*
TWTemp Version 1.0 vom 14.06.2013
8038 bytes
Thomas Wenzlaff http://www.wenzlaff.de
Temperature Sensor DS18B20 an Digitalen Port Pin 2 wie folgt verbunden
Links=Masse,
Mitte=Data,
Rechts=+5V,
3300 to 4700 Ohm Widerstand von +5V nach Data.
Es wird erst die Adresse des 1-Wire-Device ausgegeben und dann wird die Temperaturmessung gestartet.
*/
/* Benötigte Bibliotheken importieren */
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 2 /* Digitalport Pin 2 definieren */
OneWire ourWire(ONE_WIRE_BUS); /* Ini oneWire instance */
DallasTemperature sensors(&ourWire);/* Dallas Temperature Library für Nutzung der oneWire Library vorbereiten */
void setup()
{
delay(1000);
Serial.begin(9600);
Serial.println("Temperatur Messprogramm");
Serial.println("TWTemp 1.0 vom 14.06.2013");
Serial.println("http://www.wenzlaff.de");
delay(1000);
sensors.begin();/* Inizialisieren der Dallas Temperature library */
adresseAusgeben(); /* Adresse der Devices ausgeben */
Serial.print("Starte Temperatur abfragen ...");
}
void loop()
{
Serial.println();
sensors.requestTemperatures(); // Temp abfragen
Serial.print(sensors.getTempCByIndex(0) );
Serial.print(" Grad Celsius");
}
void adresseAusgeben(void) {
byte i;
byte present = 0;
byte data[12];
byte addr[8];
Serial.print("Suche 1-Wire-Devices...\n\r");// "\n\r" is NewLine
while(ourWire.search(addr)) {
Serial.print("\n\r\n\r1-Wire-Device gefunden mit Adresse:\n\r");
for( i = 0; i < 8; i++) {
Serial.print("0x");
if (addr[i] < 16) {
Serial.print('0');
}
Serial.print(addr[i], HEX);
if (i < 7) {
Serial.print(", ");
}
}
if ( OneWire::crc8( addr, 7) != addr[7]) {
Serial.print("CRC is not valid!\n\r");
return;
}
}
Serial.println();
ourWire.reset_search();
return;
}
Um die höchstmögliche Genauigkeit des Sensors auszulesen ist im Setup noch dieser Befehl nötig, damit dauert die Messung aber etwas länger: „Temperatur Messung mit dem DS18B20 und Arduino Nano“ weiterlesen
A380 Mindmap
Bradboard und Netzwerkplatine aus China eingetroffen. Dann kann es ja bald los gehen.
Kirchenvergleich Mindmap
ADS-B Mindmap
TOP 13 Städte und Einwohner in Deutschland
Thanks Mindmap
Adapter für das Arduino eingetroffen
ESC 2013 1. Halbfinale – Mindmap
Das erste „Blink“ Programm für das Arduino Nano Board, es muss ja nicht immer „Hallo Welt“ sein.
/*
TWBlink
Beschreibung: Die rote Leuchtdiode (LED) auf dem Arduino Board blinkt alle 10 Sekunden
kurz für 50ms auf.
Dieses Beispiel ist Freeware und basiert auf dem Beispielprogramm Blink.
Thomas Wenzlaff 12.05.2013
Größe des compilierten Binary: 1108 Byte
*/
// An Pin 13 ist eine LED angeschlossen, die auf den meisten Arduino Boards vorhanden ist
const int LED = 13;
// Die setup Methode wird nur einmal ausgeführt und bei reset
void setup() {
// Digitaler PIN mit der LED ist ein Ausgang
pinMode(LED, OUTPUT);
}
// Die Endlosschleife
void loop() {
digitalWrite(LED, HIGH); // LED anschalten
delay(50); // 50 ms warten
digitalWrite(LED, LOW); // LED ausschalten
delay(10000); // 10 Sekunden warten
}
Mal was über Essen. Die Feige – Mindmap
Freigebig Mindmap
Arduino Software für Mac OS X installieren
So vorgehen, wie in der Arduino-Anleitung beschrieben.
1. Virtual Com Device Treiber 2.2.18 von FTDICHIP laden und wie in der Anleitung beschrieben installieren.
Für Mac OSX 10.8.3 und 10.8.4 ist es nötig die FTDIUSBSerialDriver_10_4_10_5_10_6_10_7.mpkg zu installieren. Nun muss das Arduino Board an den USB-Port angeschlossen werden. Wird es nicht angeschlossen sind die installierten Treiber nicht im /dev Verzeichnis sichtbar.
Dann im Terminal im Verzeichnis /dev überprüfen ob die *usbserial* Treiber installiert wurden.
2. Entwicklungsumgebung downloaden und installieren. Starten.
3. Seriellen Port unter dem Menü: Tools – Serieller Port – /dev/cu.usbserial-A5001U7KD auswählen.
4. Beispiel auswählen und überprüfen und auf den Arduino uploaden.
Arduino Nano in Aktion.
Das erste Video des Arduino Nano mit dem initialen Testprogramm „Blinkende LED“ läuft am USB Port des Mac und Windows:
Live Musik der Feuerwehr im Allgäu. Ohne Worte!
Bis auf 1500m im Allgäu per Seilbahn. Es liegt oben sogar noch Schnee.
TOP 6 zum bessern Entwickler.
Wie können animierte GIFs mit Gimp erstellt werden?
Wenn du diesen QR-Code scannst, bekommst du eine von drei Möglichkeiten je nachdem welche gerade angezeigt wird:
Wie können sollche animierten GIFs erstellt werden.
1. Gimp starten
2. Erste Bilddatei öffnen
3. Jede weiter Bilddatei mit Datei – Als Ebene öffnen
4. An den Ebenen Namen die Zeit in ms hängen
5. Mit Gimp >= 2.8 Exportieren, Dateiendung gif vergeben
6. Im erscheinenden Dialog Als Animation auswählen und Exportieren
7. Die erstellte Gif Datei kann über das Menü: Filter – Animation – Animation abspielen dann Widergabe angeschaut werden
Karotz kann blinken!
Unboxing (auspacken) des neuen Single-door access controller mit RFID Tags
Blu-Ray Disk nicht Blue-Ray Disk Mindmap
Die Philoxenia Mindmap
2 Kanal Relais Karte mit Optokoppler für mein nächstes Projekt
IBAN Mindmap
SEPA Mindmap
8,3 mal um die Erde, oder wie erzeuge ich 126 Tonnen Co2
Gerade wieder aus Side zurück und in die Reise-History eingetragen. Diese Seite wird mit dem Java Programm TWGpx generiert, welches ua. Velocity Templates verwendet.
Wer Google Earth installiert hat, kann sich alle Orte via KML-Datei anschauen.
Vorschläge für den nächsten Urlaub sind willkommen und können hier als Kommentar hinterlassen werden.
DO NOT Update your WeMo App unless you are on your home Wi-Fi! Oder zu spät für mich! WeMo findet nach Update keine Verbindung mehr!
Wer sein WeMo auf die neueste Version updated (1.2.0.1), verliert die Verbindung zu allen Geräten.
Schade das ich den Blog nicht vorher gesehen bzw. gelesen hatte. Und schaden das ich mein Gerät (eSchrott) nicht vorher umgetauscht haben, denn auch die erste Version lief nicht wie gewünscht.
Aber evl. kommt ja noch eine Version von Software, die auch läuft, die 1.2.0.1 tuts jedenfalls nicht.
So kann ich es jedenfalls nicht gebrauchen. Meiner Meinung nach, viel zu unzuverlässig für Homeautomatisation.
Update: Reset des Routers, Reset der Schalter und Motion, App löschen und neu installieren, Geräte verbinden, und Firmware aktualisierung erst durchführen wenn die Geräte (alle) laufen, dann klappt es mit der neuen Firmware WW_2.00_2176.PFT (alt war WW_2.00.2062.PFT) und App Version 1.2.0.1, mal sehen wie lange!