Arduino Forum

International => Deutsch => Topic started by: Holzjunkie on Mar 01, 2013, 08:02 pm

Title: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 01, 2013, 08:02 pm
Hallo allerseits,

ich hoffe das ihr mir helfen könnt.

Ich will eine Heizungssteuerung mit Arduino realisieren und stehe im moment vor der Frage was brauche ich alles an Hardware.

Sicherlich werd ich mich dann auch durch das ein oder andere Tutorial quälen aber ich will halt nichts zweimal kaufen.
Grob zur aufgaben stellung ich muß ca. 15 Temperaturen (PT1000 Sensoren) auslesen und dann in abhängigkeit 3 PWM Pumpen und 5 Relais steuern. das ausgelesenen Daten und aktuellen schaltzustände sollen ins netzwerk übertragen werden und von dort aus auch ggf angepasst werden.
evtl will ich das ganze später noch erweitern daher sollte noch platz nach oben bleiben.

Daher nun meine erste eigentliche Frage:

Welche Hardware benötige ich
Ich dachte an das Arduino Mega als Board

Viele Grüße

Der Junkie

Title: Re: Neuling braucht hilfe von der Pike auf
Post by: pylon on Mar 01, 2013, 08:12 pm
Wenn Du die PT1000 durch DS18B20 Sensoren ersetzt, brauchst Du keinen Mega, sondern kommst mit dem UNO gut durch. Zudem sind die Sensoren bereits kalibriert und müssen nicht aufwendig verrechnet werden.

Wirst Du den Arduino durchgehend am PC haben oder schliesst Du noch ein Display an?
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: hk007 on Mar 01, 2013, 08:43 pm
Hi,

wenn du Daten ins Netz stellen willst, dann würd ich doch eher einen Mega nehmen.
Ich hab mir auch einen Webserver mit einer ähnlichen Seite aufgebaut, und bin gut über die 32K Flash des UNO drüber.

(Allerdings hab ich das HTML-Gedönse im Flash und nicht auf einer SD-Karte)

Temp-Sensoren: Ich hab an den Leitungen und am Warmwasserspeicher auch DS18B20 zur Temp-messung verbaut.
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 01, 2013, 09:02 pm
viele dank für die schnelle unterstützung!!!

also lösche PT1000 setze DS18B20
was ichg vorhin noch vergessen habe ist logischerweise das Ehternet Modul

Also ein Display wollt eich wenn nur zur Optischen darstellung evtl. verbauen. das Board soll eigentlich weitgehend autark laufen
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: hk007 on Mar 01, 2013, 09:11 pm

was ichg vorhin noch vergessen habe ist logischerweise das Ehternet Modul


Nimm das Wiz5100 nicht das ENC2860
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 01, 2013, 09:21 pm
auch danke für diesen Tip
Also hier meine Vorlaäufige Bestellliste:
1x Arduino Mega Rev3
1x Ethernet Modul W5100
1x 8fach Relay Modul
20x DS18B20

oder hat noch einer eine Idee was ich brauche????

Viele Grüße

Der Junkie
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: hk007 on Mar 01, 2013, 10:17 pm
Anstelle des "normalen" Relais Modul hab ich eines mit Solid-State Relais genommen.
Hier ein Beispiel:
http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&item=320857380766&ssPageName=ADME:L:OC:DE:3160 (http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&item=320857380766&ssPageName=ADME:L:OC:DE:3160)
Schaltet 2A max.

Hat Vorteile, wenn du öfter schaltest.
Und (dieses) SSR schaltet immer im Nulldurchgang.
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 01, 2013, 10:38 pm
Danke für den tipp an die hab ich garnicht gedacht die sind zwar teurer aber für mich auch besser geeignet
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Eisebaer on Mar 01, 2013, 11:18 pm
hi,

schau überhaupt wegen der temperatursensoren und der relais auf ebay, noch billiger wird's bei weltweiter suche. der chinamann verkauft oft versandkostenfrei. durch paypal bist Du einigermassen sicher.

gruß stefan
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Eisebaer on Mar 01, 2013, 11:23 pm
http://www.ebay.de/itm/8Kanal-Relais-5V-Solid-State-Relay-Module-OMRON-SSR-fur-PIC-ARM-AVR-DSP-/170832412866?pt=Elektromechanische_Bauelemente&hash=item27c667c0c2 (http://www.ebay.de/itm/8Kanal-Relais-5V-Solid-State-Relay-Module-OMRON-SSR-fur-PIC-ARM-AVR-DSP-/170832412866?pt=Elektromechanische_Bauelemente&hash=item27c667c0c2)

achtfach SSR, 21€, versandkostenfrei aus DE, hab ich auch noch nicht gesehen.
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: hk007 on Mar 02, 2013, 09:11 am

hi,

schau überhaupt wegen der temperatursensoren und der relais auf ebay, noch billiger wird's bei weltweiter suche. der chinamann verkauft oft versandkostenfrei. durch paypal bist Du einigermassen sicher.

gruß stefan


Kann ich nur bestätigen. Musst halt etwas Zeit mitbringen. Aber viele chinesische Händler haben schon Auslieferungslager ind Deutschland. Da kostet es oft nur unwesentlich mehr, die Lieferung ist aber deutlich schneller.

Zum Thema DS18B20: Schau mal hier:
http://www.ebay.de/itm/1pcs-Waterproof-DS18B20-Digital-Thermal-Probe-or-Sensor-/170873176886?pt=LH_DefaultDomain_0&hash=item27c8d5c336 (http://www.ebay.de/itm/1pcs-Waterproof-DS18B20-Digital-Thermal-Probe-or-Sensor-/170873176886?pt=LH_DefaultDomain_0&hash=item27c8d5c336)

Ich hab meine Sensoren zwar selber gebaut (Cu-Röhrchen mit Kunstharz). Aber wenn ich die vorher gesehen hätte......
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 03, 2013, 02:20 pm
Hallo allerseits,

ich habe bei einigen Sensoren bis zu 15m entfernung zu überbrücken. Reicht da ein 0,75. Kabelquerschnitt?
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Klaus_ww on Mar 03, 2013, 03:33 pm
Am Querschnitt liegt's nicht, aber Vorsicht: Einstreuungen sind Dein Feind.
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 03, 2013, 04:01 pm
okay ich frag den mal ganz dumm was sind einstreuungen ???
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Klaus_ww on Mar 03, 2013, 04:04 pm
Langes Kabel = Antenne
Da kann dann einiges los sein auf der Strippe bei den Längen. Also auf gute Abschirmung achten.
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Eisebaer on Mar 03, 2013, 05:11 pm
hi,

netzwerkkabel haben sich da gut bewährt.

gruß stefan
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 17, 2013, 03:57 pm
Moin allerseits,

da bin ich wieder. Meine Relay Karte, das Mega 2560 und das Wiznet sind schon da.
Also denke ich das ich doch schonmal die ersten geh versuche wagen kann.

Die arduino Software habe ich runtergeladen aber wo komme ich zum Virtuellen steckbrett ????
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: pylon on Mar 17, 2013, 04:17 pm
Quote
Die arduino Software habe ich runtergeladen aber wo komme ich zum Virtuellen steckbrett ????


Was verstehst Du unter "Virtuelles Steckbrett"? Wozu willst Du das einsetzen?
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 17, 2013, 04:25 pm
ein freund hatte mir das mal gezeigt in diesem virtuellem Steckbrett konnte man die komplette schaltung quasi fertig aufbauen und das ganze dan virtuell testen um nachzuvolziehen ob es theoretisch "wenn in der praxis gleich aufgebaut" auch funktioniert.

Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 17, 2013, 04:49 pm
Fritzing heist das virtuelle steckbrett
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: uwefed on Mar 17, 2013, 08:20 pm

Fritzing heist das virtuelle steckbrett

Kann Fritzing Schaltungsimulation?
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 17, 2013, 08:33 pm
jupp genau die meine ich
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Eisebaer on Mar 17, 2013, 09:10 pm
hi,

Quote
Kann Fritzing Schaltungsimulation?


ist mir auch neu. muß ich doch mal ausprobieren...

gruß stefan
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 18, 2013, 09:34 pm
So liebe leute nun habe ich mir mal das Blink beispiel angesehen und bekomme sogar ein sos hin.
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Eisebaer on Mar 18, 2013, 11:01 pm
hi,

Quote
So liebe leute nun habe ich mir mal das Blink beispiel angesehen und bekomme sogar ein sos hin.


was willst Du dann hier im forum? Du bekommst doch hilfe vom seenotdienst...

gruß stefan
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: michael_x on Mar 19, 2013, 11:25 am
Quote
was willst Du dann hier im forum?

.. ausser du zeigst uns, wie man in fritzing eine SOS - blinkende LED darstellen kann ;)

(Sorry, lass dich nicht von Eisebären oder anderen abschrecken)

Ich erinnere mich: Die ersten Erfolgserlebnisse sind die schönsten. Viel Spaß weiterhin.

( Nach Blink kommt BlinkWithoutDelay )
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Eisebaer on Mar 19, 2013, 11:45 am
hi,

Quote
Sorry, lass dich nicht von Eisebären oder anderen abschrecken


na ich hoffe doch, daß holzjunkie meine meldung nicht falsch verstanden hat  :smiley-red:

übrigens: ein holzjunkie bin ich auch, gibt nichts schöneres. habe mir vor kurzem meine wohnzimmermöbel aus stabverleimter buche und plexiglas gebaut.

gruß stefan
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 24, 2013, 12:14 pm
Hallo allerseits,

ich bin mal gespannt wann die dgzrs in der Nordheide einläuft und hoffe das ich bis dahin ein Haus boot und kein U-hausboot habe  8)

Mal sehen heute habe ich viel zeil daher werde ich mich heute mal mit der Temperaturerfassung mit den DS18B20 widmen.
I so nun habe ich folgenden Quellcode gefunden:
#include <OneWire.h>

// OneWire DS18S20, DS18B20, DS1822 Temperature Example
//
// http://www.pjrc.com/teensy/td_libs_OneWire.html
//
// The DallasTemperature library can do all this work for you!
// http://milesburton.com/Dallas_Temperature_Control_Library

OneWire  ds(10);  // on pin 10

void setup(void) {
  Serial.begin(9600);
}

void loop(void) {
  byte i;
  byte present = 0;
  byte type_s;
  byte data[12];
  byte addr[8];
  float celsius, fahrenheit;
 
  if ( !ds.search(addr)) {
    Serial.println("No more addresses.");
    Serial.println();
    ds.reset_search();
    delay(250);
    return;
  }
 
  Serial.print("ROM =");
  for( i = 0; i < 8; i++) {
    Serial.write(' ');
    Serial.print(addr, HEX);
  }

  if (OneWire::crc8(addr, 7) != addr[7]) {
      Serial.println("CRC is not valid!");
      return;
  }
  Serial.println();

  // the first ROM byte indicates which chip
  switch (addr[0]) {
    case 0x10:
      Serial.println("  Chip = DS18S20");  // or old DS1820
      type_s = 1;
      break;
    case 0x28:
      Serial.println("  Chip = DS18B20");
      type_s = 0;
      break;
    case 0x22:
      Serial.println("  Chip = DS1822");
      type_s = 0;
      break;
    default:
      Serial.println("Device is not a DS18x20 family device.");
      return;
  }

  ds.reset();
  ds.select(addr);
  ds.write(0x44,1);         // start conversion, with parasite power on at the end
 
  delay(1000);     // maybe 750ms is enough, maybe not
  // we might do a ds.depower() here, but the reset will take care of it.
 
  present = ds.reset();
  ds.select(addr);   
  ds.write(0xBE);         // Read Scratchpad

  Serial.print("  Data = ");
  Serial.print(present,HEX);
  Serial.print(" ");
  for ( i = 0; i < 9; i++) {           // we need 9 bytes
    data = ds.read();
    Serial.print(data, HEX);
    Serial.print(" ");
  }
  Serial.print(" CRC=");
  Serial.print(OneWire::crc8(data, 8), HEX);
  Serial.println();

  // convert the data to actual temperature

  unsigned int raw = (data[1] << 8) | data[0];
  if (type_s) {
    raw = raw << 3; // 9 bit resolution default
    if (data[7] == 0x10) {
      // count remain gives full 12 bit resolution
      raw = (raw & 0xFFF0) + 12 - data[6];
    }
  } else {
    byte cfg = (data[4] & 0x60);
    if (cfg == 0x00) raw = raw << 3;  // 9 bit resolution, 93.75 ms
    else if (cfg == 0x20) raw = raw << 2; // 10 bit res, 187.5 ms
    else if (cfg == 0x40) raw = raw << 1; // 11 bit res, 375 ms
    // default is 12 bit resolution, 750 ms conversion time
  }
  celsius = (float)raw / 16.0;
  fahrenheit = celsius * 1.8 + 32.0;
  Serial.print("  Temperature = ");
  Serial.print(celsius);
  Serial.print(" Celsius, ");
  Serial.print(fahrenheit);
  Serial.println(" Fahrenheit");
}

Wenn ich den aber aufspiele und die Sensoren entsprechend der Website von der der Code ist anschließe (Links masse, mitte Data, rechts +5v) dann bekomme ich nur no more adresses ausgelesen
Mfg

der Junkie
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: pylon on Mar 25, 2013, 06:05 pm
Quote
(Links masse, mitte Data, rechts +5v)


Pull-up-Widerstand fehlt.
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Mar 25, 2013, 09:54 pm
hast erecht habe ich vergessen zu erwähnen ist aber drin.
den fehler habe ich auch schon gefunden hab zwar + auf den pull up gegeben aber nicht auf den rechten   :~ :~
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Apr 01, 2013, 07:20 pm
Moin allerseits,

nun habe ich doch mal was hingebastelt aber irgendwie will das nicht so richtig würde mich sehr freuen wenn mir einer Helfen kann.
Hier mal der Quellcode:
Code: [Select]
#include <OneWire.h>

// OneWire DS18B20 Temperature Example
//
int Relay = (22);
OneWire  ds(23);  // on pin 10

void setup(void) {
  pinMode(Relay, OUTPUT);
   Serial.begin(9600);
}

void loop(void) {
   byte i;
   byte present = 0;
   byte type_s;
   byte data[12];
   byte addr[8];
   float celsius, fahrenheit;

   if ( !ds.search(addr)) {
     
     delay(250);
     return;
   }

   type_s = 0; // konstant festgelegt auf Sensor mit Chip = DS18B20
   // erkennung vom sensor
   switch (addr[7]) {
     case 0xC8:
       Serial.println("  Kessel ");
       break;
     case 0xE4:
       Serial.println("  Vorlauf ");
       break;
     case 0xD9:
       Serial.println("  Ruecklauf ");
       break;
     default:
       Serial.println("   Unbekannter Sensor.");
       return;
   }

   ds.reset();
   ds.select(addr);
   ds.write(0x44,1);         // start conversion, with parasite power on


   delay(1000);     // maybe 750ms is enough, maybe not
   // we might do a ds.depower() here, but the reset will take care of it.

   present = ds.reset();
   ds.select(addr);
   ds.write(0xBE);         // Read Scratchpad

   
   
   
   for ( i = 0; i < 9; i++) {           // we need 9 bytes
     data[i] = ds.read();
     
     Serial.print(" ");
   }
   

   // convert the data to actual temperature

   unsigned int raw = (data[1] << 8) | data[0];
   if (type_s) {
     raw = raw << 3; // 9 bit resolution default
     if (data[7] == 0x10) {
       // count remain gives full 12 bit resolution
       raw = (raw & 0xFFF0) + 12 - data[6];
     }
   } else {
     byte cfg = (data[4] & 0x60);
     if (cfg == 0x00) raw = raw << 3;  // 9 bit resolution, 93.75 ms
     else if (cfg == 0x20) raw = raw << 2; // 10 bit res, 187.5 ms
     else if (cfg == 0x40) raw = raw << 1; // 11 bit res, 375 ms
     // default is 12 bit resolution, 750 ms conversion time
   }
   celsius = (float)raw / 16.0;
   
   Serial.print("  Temperatur = ");
   Serial.print(celsius);
   Serial.print(" Celsius, ");

   if (0xC8 >=25) //abfrage: ist Temperatur über 25°C (funktioniert nicht)
   {
     digitalWrite(Relay, HIGH); //wenn ja Relay an
   }
   else
   {
     digitalWrite(Relay, LOW);   // wenn nein aus
 
   }
   
}



die if funktion funktioniert nicht richtig wenn der Sensor unter 25°C geht schaltet das Relay nicht ab

viele Grüße

Ulf Baumann
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: maverick1509 on Apr 01, 2013, 07:29 pm
Hall Ulf,
ich persönlich mag diese Programmierung mit den ganzen "Hieroglyphen" wie  0xC8 und so gar nicht weil man das nicht
vernünftig lesen kann.
Es gibt für die 18B20 eine DallasTemperature.h, dann kann man mit sensors.getTempC die Temperatur direkt in °C auslesen
und diese auch abfragen.
Das ist meiner Meinung nach viel einfacher und auch besser zu verstehen.
gruß
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: Holzjunkie on Apr 01, 2013, 07:36 pm
Hallo Maverick,

leider bin ich eher noch der Dau in sachen Programmierung könntest du mir weiterhelfen wie das ganze dann aussehen muß ??? damit ich auch die zuordnung sicherstellen kann ???

Viele Grüße

Ulf
Title: Re: Neuling braucht hilfe von der Pike auf
Post by: maverick1509 on Apr 01, 2013, 08:53 pm
Hallo Ulf,
wenn du willst kann ich dir eine komplette Programmierung schicken. Diese kann folgendes: Steuerung der Gasheizung, einer Solaranlage sowie eines wasserführenden Kachelofens.
Die Programmierung ist sehr ausführlich auskommentiert, da kannst du sicherlich vieles verwenden.
Schick mir mal deine Mail Adresse
Gruß
Bernward
Title: Phonix aus der Asche
Post by: Holzjunkie on Nov 25, 2013, 12:14 pm
Mein lieber mann das ist mal dick aufgetragen!!!!

Hallo allerseits ich habe mich leider länge nicht melden können da ich seit April einen neuen Arbeitgeber habe wo ich jetzt erstmal sehr stark eingebunden war.

Nun legt sich aber der anfangsstreß und ich kann mich wieder den wesentlichem widmen.

Danke nochmal für eure bisherige unterstützung ich hoffe ich kann auch in zukunft auf euch zählen!!!

MfG

der Junkie