Temperatursensor richtig anschließen?

2 Antworten

Ich habe die application Note nur überflogen, jedoch überträgt der Sensor anscheinend im Manchester Code. Fallende Flanke ist dann logisch 1, steigende logisch 0.
Ich vermute der Kondensator soll unabsichtliche Flanken verhindern, die evtl. durch eine unsaubere Versorgung oder schlechte Masse verursacht werden. Wobei ich da eher 100nF an V+ gehängt hätte um eine ggf. unsaubere Versorgung zu kompensieren...

Woher ich das weiß:Berufserfahrung – Elektrotechniker

"dass man zw. V+ und GND eine 100nF Kapazität "

Das ist der typische Blockkondensator aus der digitalen Technik. Die Zuleitungen der Versorgungsspannung wirken prinzipiell wie ein Widerstand. Wenn das IC intern läuft, gibt es starke Änderungen des Versorgungsstromes, die durch diesen Kondensator gepuffert werden.

Baut man ein Exemplar auf, dann ist das meist kein Thema, baust du eine Serie von vielen tausenden von Baugruppen auf, dann wird es eines.

Lesetipp dazu: https://rn-wissen.de/wiki/index.php/Abblockkondensator

Der Widerstand hilft dem digitalen Ausgang, seine korrekten Werte für High zu erreichen und kompensiert ein wenig die Leitungskapazitäten.

Gibt einfach sauberere Signale. Bei dir funktioniert es, kein Thema, aber ein wenig längere Leitung und schon steht man da mit einem großen Fragezeichen im Gesicht.

"Den Sensor gibt es mit Analog- oder Digitalausgangssignal. "

Ja, das ist oft so. Hat er einen digitalen Ausgang, dann werden die analogen Werte intern in digitale Werte umgewandelt und über eine Schnittstelle verfügbar gemacht. Hat er einen analogen Ausgang, so benötigst du einen analogen Eingang bei Arduino und musst dort dann in einen digitalen Wert wandeln.

Das erklärt evtl. auch dein Problem bei Auslesen, denn wenn die Schnittstelle nicht sauber implementiert wurde (hier ist es das digital ZACWire protocol), dann könnten sich solche Lesefehler einschleichen. Der Wandler wird es schon richtig machen, aber meist liegt es an der Software, die den Datenstrom auswertet.


HanslWurst 
Beitragsersteller
 15.05.2020, 12:33

Also sollte ich die Teile einbauen, da Fehler sich durch die Stromversorgung des Arduinos einschleichen können?

Die Sensoren sind bei V+ und GND jeweils parallel geschalet. Würde hier eine Kapazität dazwischen langen? Widerstände bräuchte ich immer noch drei.

Das ZACWire Protocol verwende ich, daher sollten die Fehler nicht kommen. Von Kapazität und Widerstand aber auch nicht, sonst hätte ich im Versuch ja Unterschiede feststellen sollen.

Ist aber an sich nicht so tragisch, da man diese Fehlstellen in Excel recht leicht glätten kann.

SirKermit  15.05.2020, 12:51
@HanslWurst

"Also sollte ich die Teile einbauen, da Fehler sich durch die Stromversorgung des Arduinos einschleichen können?"

Bitte ja, es __könnten__ sich halt Fehler einschleichen. Und ja, jedes einzelne Bauteil bekommt seinen eigenen Blockkondensator.

"Das ZACWire Protocol verwende ich, daher sollten die Fehler nicht kommen."

Genau das ist der Denkfehler[1]. Sorry ;-( Wer professionell solche Schaltungen aufbaut, wird immer prüfen, ob nicht doch ein Bug in der Software lauert. Das geschieht im Hobbybereich eher seltener.

Die Interpretation einer Protokollspezifikation ist oft schon haarsträubend oder erzwingt Missverständnisse, das ist "schon immer so gewesen". Oder anders: Sei dir niemals sicher, dass SW fehlerfrei ist. Wenn es nicht stört, dann lass es.

Auch das in einer SW verwendete Timing könnte grenzwertig sein.

Je nach Umstand kann sich das leider in zufälligen Fehlern äußern, seltener in systematischen.

"Von Kapazität und Widerstand aber auch nicht, sonst hätte ich im Versuch ja Unterschiede feststellen sollen."

Hier gilt das gleiche, das produziert, wenn überhaupt, zufällige, aber kaum systematische Fehler.

[1]

aus http://www.kirchner-raddestorf.de/jikirchner/junk/murphy2.htm

"Murphy's Gesetze (8)

   Finagles dritte Gesetz:

   -   In einer beliebigen Datensammlung ist der Fehler dort, wo die Daten ganz offensichtlich richtig sind und deshalb nicht überprüft werden müssen."