1...8fach Temperatursensor DS18B20

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

eisvogel
Beiträge: 27
Registriert: 28.05.2020, 00:07
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal
Danksagung erhalten: 2 Mal

Re: 1...8fach Temperatursensor DS18B20

Beitrag von eisvogel » 01.06.2020, 16:53

Hallo Wolfram,

Danke für die Antwort.
In der Config habe ich die Sensor-ID's klein geschrieben. Im Terminal werden sie groß dargestellt.
hier noch mal den Terminalauszug ohne Sortierung:
---------------------------------------
Read 4 DS18B20 sensors
1: 2803ACDE06000090 Temp: 258
2: 28FFEA34B2170527 Temp: 221
3: 28FF7EDCB2170484 Temp: 219
4: 28FF25E1B21704B4 Temp: 219
Order of DS18B20 sensors
1: >2803ACDE06000090< Temp: 258
2: >28FFEA34B2170527< Temp: 221
3: >28FF7EDCB2170484< Temp: 219
4: >28FF25E1B21704B4< Temp: 219
Temperaturen: | 258 | 221 | 219 | 219 |
<- 16 05 84 53 F30101 6D1394 00 41 01 02 42 00 DD 43 00 DB 44 00 DB - 4696
--------------------------------------------------
Es gibt auch kein CompllerFehler/Warnung.
ich verwende die AskSinPP.h V4.1.5.... habe mir sicherheitshalber die aktuelle noch mal geladen:
----------------------------------------------------
AskSin++ V4.1.5 (Jun 1 2020 16:32:07)
ID: F30101 Serial: UNITEMP8-1
Address Space: 32 - 198
CC init1
CC Version: 14
- ready
iVcc: 3342
Found 4 DS18B20 sensors
1: 2803ACDE06000090
2: 28FFEA34B2170527
3: 28FF7EDCB2170484
4: 28FF25E1B21704B4
Config Changed List0
LOW BAT Limit: 22
Sendeintervall: 180
----------------------------------------
Da komme ich jetzt ohne Deine Hilfe nicht weiter.

Schönen Gruß
Helmut

wolwin
Beiträge: 272
Registriert: 06.06.2018, 12:27
Hat sich bedankt: 11 Mal
Danksagung erhalten: 47 Mal

Re: 1...8fach Temperatursensor DS18B20

Beitrag von wolwin » 05.06.2020, 14:22

Hallo Helmut,
komme erst jetzt dazu ... ich habe den aktuellen INO auf mein Testsystem aufgespielt und 1 Sensor angeschlossen ... dabei alle Variationen durchgespielt ... außerdem läuft die Version seit einem halben Jahr genau so ohne Probleme an unserer Heizung ... anbei noch einmal zwei kommentierte Snapshots - dort wurden 4 Sensor-Slots definiert, drei IDs eingetragen und angeschlossen wurde nur 1 Sensor, der auf Slot 2 auftauchen sollte:
Zwischenablage01.jpg
Zwischenablage02.jpg
Es wurde 1 Sensor gefunden, es wurde 1 Sensor ausgelesen und das Ergebnis auf Slot 2 gesetzt - alle anderen drei Slots wurden auf 'Fehler' gesetzt - das Ergebnis kam richtig in der CCU an.
Ich kann eigentlich einen SW-Fehler ausschließen ... getestet mit akt. Arduino IDE ...

Gruß
Wolfram

eisvogel
Beiträge: 27
Registriert: 28.05.2020, 00:07
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal
Danksagung erhalten: 2 Mal

Re: 1...8fach Temperatursensor DS18B20

Beitrag von eisvogel » 07.06.2020, 12:00

Guten Morgen Wolfram,
Danke für Deine Antwort.

Genau so ist es bei mir doch auch, nur das nach dem Sortieren keine Werte mehr da sind und die -999 übertragen wird.
Sensoren2.jpg
Kannst Du mir Bitte Deinen Sketch per Mail senden. Vielleicht habe ich ja einen Fehlerbehafteten erwischt....

Danke
Helmut

eisvogel
Beiträge: 27
Registriert: 28.05.2020, 00:07
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal
Danksagung erhalten: 2 Mal

Re: 1...8fach Temperatursensor DS18B20

Beitrag von eisvogel » 07.06.2020, 15:18

Hallo Wolfram,

jetzt habe ich es noch mal so wie in Deinem Beispiel mit einem Sensor nachgestellt.
Hat auch nichts gebracht. Wenn die Sortierung eingeschaltet wird, werden keine Messwerte
den sortierten Sensoren zugeordnet. Es werden demzufolge auch nur -999 übertragen.

Schönen Gruß
Helmut

wolwin
Beiträge: 272
Registriert: 06.06.2018, 12:27
Hat sich bedankt: 11 Mal
Danksagung erhalten: 47 Mal

Re: 1...8fach Temperatursensor DS18B20

Beitrag von wolwin » 09.06.2020, 12:55

Hallo Helmut,
ich habe mir noch einmal den Quellcode angesehen ... für den Vergleich der IDs wird die Arduino Funktion 'equals()' benutzt:

'Compares two Strings for equality. The comparison is case-sensitive, meaning the String "hello" is not equal to the String "HELLO".'

Damit bleiben also nur zwei Möglichkeiten die IDs in der h-Datei einzutragen:

So müßte es funktionieren:

Code: Alles auswählen

#define cSENS_ID_ORDER

// Vorgabe / Sortierung der DS18B20 Sensoren
//  !!! cSENS_ID_x  mit 0 oder 16 Zeichen !!!
#define cSENS_ID_1      "2803ACDE06000090"
#define cSENS_ID_2      "28FF25E1B21704B4"
#define cSENS_ID_3      "28FF7EDCB2170484"
#define cSENS_ID_4      "28FFEA34B2170527"
#define cSENS_ID_5      ""
#define cSENS_ID_6      ""
#define cSENS_ID_7      ""
#define cSENS_ID_8      ""
... und so dürfte es nicht funktionieren:

Code: Alles auswählen

#define cSENS_ID_ORDER

// Vorgabe / Sortierung der DS18B20 Sensoren
//  !!! cSENS_ID_x  mit 0 oder 16 Zeichen !!!
#define cSENS_ID_1      "2803acde06000090"
#define cSENS_ID_2      "28ff25e1b21704b4"
#define cSENS_ID_3      "28ff7edcb2170484"
#define cSENS_ID_4      "28ffea34b2170527"
#define cSENS_ID_5      ""
#define cSENS_ID_6      ""
#define cSENS_ID_7      ""
#define cSENS_ID_8      ""
... benutzt Du die Arduino IDE und auf was für einem System compilierst Du das INO-File?

Gruss
Wolfram

eisvogel
Beiträge: 27
Registriert: 28.05.2020, 00:07
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal
Danksagung erhalten: 2 Mal

Re: 1...8fach Temperatursensor DS18B20

Beitrag von eisvogel » 09.06.2020, 15:16

Hallo Wolfram,

ja, ich benutze die Arduino IDE 1.8.8 unter Win10.

Nach dem ich den Buchstabenanteil der ID's von den Sensoren in der .h-Datei in Großbuchstaben eingetragen habe, klappt die Sortierung nun.

Das war ja eine schwierige Geburt... werde mir den Hinweis in die Datei schreiben.

Vielen Dank nochmals für die Gedult und Deine Unterstützung.

Schönen Gruß
Helmut

wolwin
Beiträge: 272
Registriert: 06.06.2018, 12:27
Hat sich bedankt: 11 Mal
Danksagung erhalten: 47 Mal

Re: 1...8fach Temperatursensor DS18B20

Beitrag von wolwin » 09.06.2020, 15:24

Hallo Helmut,
eisvogel hat geschrieben:
09.06.2020, 15:16
Das war ja eine schwierige Geburt...
... der Tipp mit der Groß-/Kleinschreibung stand schon in meinem ersten Post ... 8)
eisvogel hat geschrieben:
09.06.2020, 15:16
Vielen Dank nochmals für die Gedult und Deine Unterstützung.
Gerne ... prima, dass es jetzt bei Dir funktioniert!

Gruß
Wolfram

TomMajor
Beiträge: 1793
Registriert: 30.08.2017, 23:25
Hat sich bedankt: 175 Mal
Danksagung erhalten: 399 Mal
Kontaktdaten:

Re: 1...8fach Temperatursensor DS18B20

Beitrag von TomMajor » 09.06.2020, 15:28

wenn du vor der Benutzung von equals() z.B. beide Seiten mit toLowerCase() wandelst verschwindet das Problem (und Nachfragen/Tickets von Benutzern) :)
Viele Grüße,
Tom

wolwin
Beiträge: 272
Registriert: 06.06.2018, 12:27
Hat sich bedankt: 11 Mal
Danksagung erhalten: 47 Mal

Re: 1...8fach Temperatursensor DS18B20

Beitrag von wolwin » 09.06.2020, 16:57

TomMajor hat geschrieben:
09.06.2020, 15:28
wenn du vor der Benutzung von equals() z.B. beide Seiten mit toLowerCase() wandelst verschwindet das Problem (und Nachfragen/Tickets von Benutzern) :)
Danke - stimmt! ... aber man ist eben manchmal schon 'nachlässig' :oops: , besonders wenn einem selber alles klar erscheint ... ich mach dann ein Update ...

wolwin
Beiträge: 272
Registriert: 06.06.2018, 12:27
Hat sich bedankt: 11 Mal
Danksagung erhalten: 47 Mal

Re: 1...8fach Temperatursensor DS18B20

Beitrag von wolwin » 09.06.2020, 17:39

Hallo Helmut,
eisvogel hat geschrieben:
09.06.2020, 15:16
... werde mir den Hinweis in die Datei schreiben.
... nicht mehr notwendig ... lade Dir die aktuelle Version 20200609 herunter, dann kannst Du Klein- und/oder Großbuchstaben in den IDs eintragen ...

Gruß
Wolfram

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“