ds18
19 berichten
• Pagina 2 van 2 • 1, 2
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: ds18
Wesley
zet je code nu tussen [ code2=cpp ] en [ /code2 ] (en dan zonder spaties) dat nodigt uit om je code te gaan lezen.
zet je code nu tussen [ code2=cpp ] en [ /code2 ] (en dan zonder spaties) dat nodigt uit om je code te gaan lezen.
Advertisement
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: ds18
Wat werkt er nu wel en wat niet? Kan je al 5 sensors inlezen?
Re: ds18
Deze code moet via ethernet gaan werken
dus via internet uit te lezen
* Colani.nl Meerdere DS18B20 Temperatuur Sensors op 1 draad (1wire)
Verbindingen:
DS18B20 Pinnen (van links naar rechts, pinnen naar beneden, platte kant naar boven)
- Links = GND
- Midden = Signaal (Pin 3): (met een 3.3K aan +3 Volt of een 4.7K weerstand aan +5 Volt)
- Rechts = +5 or +3.3 Volt
Vragen: arduino@colani.nl
Gebaseerd op een voorbeeld van Rik Kretzinger
/*-----( Importeer benodigde libraries )-----*/
// Download 1-wire Library hier: http://colani.nl/arduino/category/libraries/
#include <OneWire.h>
// Download DallasTemperature Librarie hier: http://colani.nl/arduino/category/libraries/
#include <DallasTemperature.h>
/*-----( Verklaar Constanten en Pin Nummers )-----*/
#define ONE_WIRE_BUS_PIN 3
/*-----( Verklaar objecten )-----*/
// Setup een oneWire voorbeeld om te communiceren met OneWire sensoren
OneWire oneWire(ONE_WIRE_BUS_PIN);
// Geef de oneWire gegevens door aan Dallas Temperature.
DallasTemperature sensors(&oneWire);
/*-----( Verklaar Variablelen )-----*/
// Geef de addressen op van je 1-Wire temperatuur sensors.
// Gebruik deze sketch om de adressen van je sensors te achterhalen.
// http://colani.nl/arduino/wp-content/upl ... ressen.ino
// Ik heb er hier 5 in gebruik, maar deze lijst kun je naar behoefte aanpassen.
DeviceAddress Probe01 = { 0x28, 0x88, 0x27, 0x0A, 0x05, 0x00, 0x00, 0xD2 };
DeviceAddress Probe02 = { 0x28, 0x58, 0x21, 0x0A, 0x05, 0x00, 0x00, 0x8A };
DeviceAddress Probe03 = { 0x28, 0x45, 0x1D, 0x0A, 0x05, 0x00, 0x00, 0x3E };
DeviceAddress Probe04 = { 0x28, 0xF7, 0x28, 0x0A, 0x05, 0x00, 0x00, 0x01 };
DeviceAddress Probe05 = { 0x28, 0x7F, 0x32, 0x0A, 0x05, 0x00, 0x00, 0x8B };
void setup() /****** SETUP: Een keer ******/
{
// starten van seriele poort om resultaten te tonen
Serial.begin(9600);
Serial.print("Initialiseren Temperatuur Control Library Versie ");
Serial.println(DALLASTEMPLIBVERSION);
// Initializeren temperatuur meet librarie
sensors.begin();
// Stel de resloutie in op 10 bit
// Dit kan van 9 tot 12 bits .. lager is sneller
sensors.setResolution(Probe01, 10);
sensors.setResolution(Probe02, 10);
sensors.setResolution(Probe03, 10);
sensors.setResolution(Probe04, 10);
sensors.setResolution(Probe05, 10);
}//--(Einde setup )---
void loop() /****** LOOP: loopt voor eeuwig ******/
{
delay(1000);
Serial.println();
Serial.print("Aantal sensoren gevonden op pin / bus 2 = ");
Serial.println(sensors.getDeviceCount());
Serial.print("Opvragen temperatuur... ");
Serial.println();
// Temperatuur opvragen alle sensoren op bus 2
sensors.requestTemperatures();
Serial.print("GANG temperatuur is: ");
printTemperature(Probe01);
Serial.println();
Serial.print("SLAAP KAMER temperatuur is: ");
printTemperature(Probe02);
Serial.println();
Serial.print("BUITEN temperatuur is: ");
printTemperature(Probe03);
Serial.println();
Serial.print("WOONKAMER temperatuur is: ");
printTemperature(Probe04);
Serial.println();
Serial.print("WERK KAMER temperatuur is: ");
printTemperature(Probe05);
Serial.println();
}//--(einde loop )---
/*-----( Verklaren door gebruiker geschreven functies )-----*/
void printTemperature(DeviceAddress deviceAddress)
{
float tempC = sensors.getTempC(deviceAddress);
if (tempC == -127.00)
{
Serial.print("Fout bij opvragen temperatuur ");
}
else
{
Serial.print("C: ");
Serial.print(tempC);
Serial.print(" F: ");
Serial.print(DallasTemperature::toFahrenheit(tempC));
}
}// Einde printTemperatuur
//*********( Einde )***********
dus via internet uit te lezen
* Colani.nl Meerdere DS18B20 Temperatuur Sensors op 1 draad (1wire)
Verbindingen:
DS18B20 Pinnen (van links naar rechts, pinnen naar beneden, platte kant naar boven)
- Links = GND
- Midden = Signaal (Pin 3): (met een 3.3K aan +3 Volt of een 4.7K weerstand aan +5 Volt)
- Rechts = +5 or +3.3 Volt
Vragen: arduino@colani.nl
Gebaseerd op een voorbeeld van Rik Kretzinger
/*-----( Importeer benodigde libraries )-----*/
// Download 1-wire Library hier: http://colani.nl/arduino/category/libraries/
#include <OneWire.h>
// Download DallasTemperature Librarie hier: http://colani.nl/arduino/category/libraries/
#include <DallasTemperature.h>
/*-----( Verklaar Constanten en Pin Nummers )-----*/
#define ONE_WIRE_BUS_PIN 3
/*-----( Verklaar objecten )-----*/
// Setup een oneWire voorbeeld om te communiceren met OneWire sensoren
OneWire oneWire(ONE_WIRE_BUS_PIN);
// Geef de oneWire gegevens door aan Dallas Temperature.
DallasTemperature sensors(&oneWire);
/*-----( Verklaar Variablelen )-----*/
// Geef de addressen op van je 1-Wire temperatuur sensors.
// Gebruik deze sketch om de adressen van je sensors te achterhalen.
// http://colani.nl/arduino/wp-content/upl ... ressen.ino
// Ik heb er hier 5 in gebruik, maar deze lijst kun je naar behoefte aanpassen.
DeviceAddress Probe01 = { 0x28, 0x88, 0x27, 0x0A, 0x05, 0x00, 0x00, 0xD2 };
DeviceAddress Probe02 = { 0x28, 0x58, 0x21, 0x0A, 0x05, 0x00, 0x00, 0x8A };
DeviceAddress Probe03 = { 0x28, 0x45, 0x1D, 0x0A, 0x05, 0x00, 0x00, 0x3E };
DeviceAddress Probe04 = { 0x28, 0xF7, 0x28, 0x0A, 0x05, 0x00, 0x00, 0x01 };
DeviceAddress Probe05 = { 0x28, 0x7F, 0x32, 0x0A, 0x05, 0x00, 0x00, 0x8B };
void setup() /****** SETUP: Een keer ******/
{
// starten van seriele poort om resultaten te tonen
Serial.begin(9600);
Serial.print("Initialiseren Temperatuur Control Library Versie ");
Serial.println(DALLASTEMPLIBVERSION);
// Initializeren temperatuur meet librarie
sensors.begin();
// Stel de resloutie in op 10 bit
// Dit kan van 9 tot 12 bits .. lager is sneller
sensors.setResolution(Probe01, 10);
sensors.setResolution(Probe02, 10);
sensors.setResolution(Probe03, 10);
sensors.setResolution(Probe04, 10);
sensors.setResolution(Probe05, 10);
}//--(Einde setup )---
void loop() /****** LOOP: loopt voor eeuwig ******/
{
delay(1000);
Serial.println();
Serial.print("Aantal sensoren gevonden op pin / bus 2 = ");
Serial.println(sensors.getDeviceCount());
Serial.print("Opvragen temperatuur... ");
Serial.println();
// Temperatuur opvragen alle sensoren op bus 2
sensors.requestTemperatures();
Serial.print("GANG temperatuur is: ");
printTemperature(Probe01);
Serial.println();
Serial.print("SLAAP KAMER temperatuur is: ");
printTemperature(Probe02);
Serial.println();
Serial.print("BUITEN temperatuur is: ");
printTemperature(Probe03);
Serial.println();
Serial.print("WOONKAMER temperatuur is: ");
printTemperature(Probe04);
Serial.println();
Serial.print("WERK KAMER temperatuur is: ");
printTemperature(Probe05);
Serial.println();
}//--(einde loop )---
/*-----( Verklaren door gebruiker geschreven functies )-----*/
void printTemperature(DeviceAddress deviceAddress)
{
float tempC = sensors.getTempC(deviceAddress);
if (tempC == -127.00)
{
Serial.print("Fout bij opvragen temperatuur ");
}
else
{
Serial.print("C: ");
Serial.print(tempC);
Serial.print(" F: ");
Serial.print(DallasTemperature::toFahrenheit(tempC));
}
}// Einde printTemperatuur
//*********( Einde )***********
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: ds18
Dan mag je nu eerst die code tussen de code2=cpp en /code2 zetten. Ik blijf het niet zeggen. Dit is niet te lezen....
Re: ds18
ipv een snelle reactie een normale reactie doen
en dan letterlijk schrijven [code2=cpp] en [code] zie bovenaan meest rechtse. zo kun je ook een URL invoegen
en dan letterlijk schrijven [code2=cpp] en [code] zie bovenaan meest rechtse. zo kun je ook een URL invoegen
paul deelen
shooter@home.nl
shooter@home.nl
19 berichten
• Pagina 2 van 2 • 1, 2
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 27 gasten