Forum: Mikrocontroller und Digitale Elektronik Digitale Temperatursensoren zuordnen


von Andreas (Gast)


Lesenswert?

Guten Morgen,

ich habe da eine recht simple Frage bei der ihr mir sicherlich weiter 
helfen könnt. Uns zwar würde ich in einem Projekt gerne mehrere digitale 
Temperatursensoren einsetzen. Insgesamt sollen bis zu 20 Stück, die alle 
an verschiedenen Stellen positioniert werden (Abstände <100mm), 
eingesetzt werden.

Für mich ist es wichtig die Positionen der Sensoren zuordnen zu können 
und ich Frage mich wie das in der Praxis klever umgesetzt wird. Wenn ich 
mir z.B. den DS1820 anschaue, der hat eine feste Adresse. Das bedeutet 
im Umkehrschluss ich muss vor der Verschaltung prüfen welche Adresse der 
Sensor hat, korrekt? Im Umkehrschluss gibt es auch Sensoren mit Pins die 
eine Adressierung zulassen (z.B. TMO1075). Die Adresse kann ich dann im 
Design entsprechend festlegen.

http://www.ti.com/lit/ds/symlink/tmp1075.pdf
https://datasheets.maximintegrated.com/en/ds/DS18S20.pdf

Meine Frage ist nun wie macht man das in der Praxis? Nimmt man Sensoren 
die sich über die Pins adressieren lassen oder ließt man die Adresse der 
Sensoren vor Montage aus und notiert sich das Ganze (erscheint mir 
umständlich und fehleranfällig)?

Vielen Dank und schönen Freitag

Andreas

von Tipp (Gast)


Lesenswert?

Manual zum 1Wire Protokoll lesen.
Dann bist Du in 5 Minuten schlau.

Strategie :
1) Sensor ID auslesen, aufschreiben zuordnen, markieren.
2) oder durch einzelne Inbetriebnahme und „Broadcast“ eine Tabelle 
aufbauen...

von Chris D. (myfairtux) (Moderator) Benutzerseite


Lesenswert?

Nennt sich im DS1820-Datenblatt "Search ROM cycle".

Hier im Forum findet sich einiger Code dazu.

Wir handhaben es bei unseren DS18B20 (maximal zehn pro Bus) so, dass wir 
im Initialisierungsmodus erst alle anwesenden IDs ermitteln, und diese 
dann zyklisch auf starke Temperaturänderungen hin abfragen. Mit Eisspray 
werden die Sensoren dann in definierter Reihenfolge besprüht und das 
dann im EEPROM abgelegt. Geht flott und ist zuverlässig.

von Einhart P. (einhart)


Lesenswert?

Meine Methode: Im Programm sind die Bezeichnungen für die Messstellen 
abgelegt. Ich bringe dann nacheinander die Sensoren an den Bus. Dann 
wird das Programm neu gestartet.

Das Programm prüft beim Start ob ein nicht zugeordneter Sensor auf dem 
Bus gefunden wird. Wenn ja, dann fragt das Programm über die serielle 
Debug-Schnittstelle welche der bekannten nicht zugeordneten Sensoren der 
neue ist. Die Zuordnung wird in einem Array im EEPROM abgelegt.

von Gurgl (Gast)


Lesenswert?

Chris D. schrieb:
> Mit Eisspray
> werden die Sensoren dann in definierter Reihenfolge besprüht und das
> dann im EEPROM abgelegt

Bzw. betupft. Genau so macht das mein Zahnarzt auch;)

von Andreas (Gast)


Lesenswert?

Ok super danke für die Infos das hilft mir schon weiter!

Wünsche allen ein schönes Wochenende :)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.