Einsteiger mit unstimmigkeiten am TLC555

Hallo, einen schönen Sonntag-Abend.

Kurz zu meinem Vorhaben/Hintergrund. - Ich bin Gärtner und daher des öfteren mit Bewässerung beschäftigt. Hierfür habe ich schon länger nach einer Methode gesucht die Effektivität der Wassergaben für tiefere Bodenschichten zu Messen/Beurteilen (ab 5cm unter der Grasnarbe hilft da meist nur Graben).
Dabei bin ich auf den "Capacitive Soil Moisture Sensor v1.2" in Verbindung mit Arduino gestoßen.
Dieser Sensor ist grundsätzlich gut, für mein Vorhaben (Messung bis 1M Tiefe) aber nicht geeignet.
Darum möchte ich diesen Abwandeln bzw. Anpassen.
Als Messmethode sind m.M. nach die Analoge Messung wie beim "Capacitive Soil Moisture Sensor v1.2", oder die Messung der Frequenz eines X555 mit dem Sensor als Taktgeber(-kondensator) geeignet. Mein Favorit ist hierbei die Frequenzmessung.

Nun zum Thema.
Ich habe das Arduino-StarterKit und auf dem Steckbrett die Schaltung für den TLC555 aufgebaut.
Hier der Schaltplan - an den Connector J2 hängt entweder ein Kondensator oder mein Sensor (dieser ist zur Zeit nur Theorie). Die Wiederstandswerte sind derzeit Symbolisch (erst versuche mit KiCad^^).

Dies ist der Sensor den ich mir erdacht habe.
Platinenmaß ~ 1x1cm - Plattenfläche ~ 32mm^2 - mittlerer Abstand ~ 4mm
Kapazität ~ 0,07pF
Sensor

Mein Problem besteht darin das sich die Taktfrequenz die der 555 ausgiebt (von mir) nicht berechnen lässt.
Daher kann ich auch R1 und R2 für den Sensor nicht bestimmen (ca. 1,9MHz an der Luft strebe ich an).
Datenblatt des TLC555 :

CLKout ist mit Port5 (Pin5?) vom ArduinoUno R3 verbunden und ich lasse
<FreqCount.h>
zur Auswertung mit dem Beispiel-Sketch laufen.

#include <FreqCount.h>

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

void loop() {
  if (FreqCount.available()) {
    unsigned long count = FreqCount.read();
    Serial.println(count);
  }
}

Das gibt auch recht stabile Ergebnisse (unter 1% schwankung), diese liegen aber weit unterhalb dessen was ich berechne. [Frequenz ~ 1,44 * ((R1 + 2*R2) * C)]
Beispiel :
R1 = 1KOhm R2 = 10KOhm
C1 = Freq.Erwartet Freq.Gemessen
100pF ~ 687KHz ~ 346KHz
470pf ~ 146KHz ~ 108KHz

Als Highlight Taktet der 555 ganz ohne C1 mit ca. 1,3 - 1,5 MHz
FreqCount scheint also durchaus im MHz-Bereich zu messen.

Sind solche Probleme z.B. auf das Steckbrett zurückzuführen, oder kann da Serial.println() etwas verbiegen? Oder ist einfach die Berechnung falsch?
Ich bin da jetzt etwas ratlos.

Falls noch relevante Infos fehlen bitte ich um nachsicht, das ist mein erstlingswerk, und ich liefere gerne nach.

Mal bei Paul nachgesehen?
https://www.pjrc.com/teensy/td_libs_FreqCount.html
Evtl. schreibt er ja was mehr, was die Ausgabe angeht. Aber der SerMon sollte da eigentlich nciht stören. Das Mess- (und Ausgabe)intervall ist ne Sekunde.

???

Steckbrett-Pins nebeneinander haben eine deutlich höhere Kapazität, hätte ich gedacht.

fmax Maximum frequency in a-stable mode RA = 470 Ω, CT = 200 pF RB = 200 Ω
(2) 1.2 2.1

Auf der Seite 16 ist beschrieben die Formel zu Berechnung, nicht das du Pech hast und der Schaft nicht die 1MHz, oder die Platine ist falsch gemacht, 1MHz ist schon heftig, wien ich mich nicht irre fahren die "Normalen" Sensoren mit max 500KHz je nach Feuchtigkeit.
im Anderem Forum hat Einer versucht auch selber den Sensor bauen, hat aber unheimliche Probleme mit der Schutzlackierung.

Das wäre die Kapazität meines "vituellen Sensors", auf dem Steckbrett habe ich bisher nur "echte" Kondensatoren ab 100 pF

@my_xy_projekt
Hallo, ja über die Seite habe bin ich an die Lib gekommen.
Soll eigentlich bis 8Mhz messen, ob es beim Uno abweichungen gibt ist nicht aufgeführt.
Und bei 1sec Messdauer sind keine angleichungen notwendig.

Hast Du eine Vorstellung, wieviel Kapazität Du Dir mit dem Kabel einhandelst? Schon 2 Kabel von 10cm Länge wie man sie auf dem Steckbrett benutzt 1x ganz leicht verdrillt, nur so, daß sie auch aneinanderliegen, ... haben bereits 1pF. Zwei nebeneinanderliegende Reihen auf dem Steckbrett haben ca. 3-4pF.

Gruß André

Nein, leider nicht. Als Gärtner fehlt mir da einiges an hintergrund.
Das sollte ich zukünftig bedenken, ist schon eine mögliche Erklärung warum der 555 auch ohne Kondensator Taktet.
Demzufolge hat vermutlich auch die Steckverbindung meines Wunschsensors mehr Kapazität als der Sensor selbst? Da muß ich offensichtlich umdenken.

@fony
Die Formel ist richtig, und der TLC555 schafft normal 2,1MHz - aber als min. habe ich nach deinem Link 1,2 MHz gefunden. Da sollte ich wohl auch etwas reduzieren.
Die Lackierung/versiegelung wäre mein nächstes Thema, ist sicher auch nicht ganz einfach.

Ich bedanke mich für die schnellen und konstruktiven Antworten.

Kupfer ist nicht so einfach Lackieren, habe mir mal ein Gehäuse aus alten PCB Platinen gebaut, nur schief gucken da ging die Farbe runter, habe danach inen Malermeister gefragt, der meinte erstmal das Patin leicht an ätzen danach sofort in Farbe damit, habe das aufgegeben und aus holz gebaut :wink:

Hi,

ein YSTY 2X2-5 Fernmeldekabel hat zum Beispiel 52nF/1km oder eben 52pF/1m.
Um so größer deine Grundkapazität ist, um so schwieriger wird es, die Veränderung deiner eigentlichen Messkapazität zu bestimmen, da verschiedene Störgrößen auf das gesammte System Einfluß nehmen. Wenn die Veränderung am Kabel größer ist als die am Sensor hast du ein Problem.

Gruß André

Verdammt lang her, aber mit Leitungsbelägen sollte man immer rechnen, wenn die Strippe mal länger wird. :slight_smile:

Hallo, hab mir heute nochmal Gedanken über die Differenz vom Takt gemacht und das Datenblatt durchgesehen.
Vermutlich sind die Schaltzeiten des IC's die Lösung.
Der Output soll bei 1/3 bzw. 2/3 VCC auf High/Low umspringen, die Schaltzeit (bei 5V)
dafür liegt zwischen 35 (typisch) und 135 (max) ns die für jeden Takt draufkommen.
Die Formel die ich benutzt habe ist deswegen eher bis 100Hz geeignet, da macht sich das kaum bemerkbar.

Ich schau mal ob mir da zumindest eine Näherung einfällt um die Frequenz berechenbarer zu machen.

Ja, eindeutig! Daher war mein Gedanke den Sensor mit 2 "Stiften" abzusetzen, daraufgesteckt wird die Messeinheit um distanz zu schaffen. Von der Messeinheit (Analog-V oder Takt) gehen dann 3 Kabel ab 1. Input GND - 2. Input VCC (5V) oder Takt zur Messung - und 3. Output entweder die Taktfrequenz oder der Analogwert in V als Messergebnis. Ich bin jetzt mäßig optimistisch das sich das über 1,2M Kabel übertragen lässt.
Ich hoffe ich formuliere verständlich.

Jetzt mal eine Forumsfrage.
Wenn ich den Beitrag als gelöst markiere (ich denke ich hab den Fehler), bleibt der Beitrag noch offen? Oder wird er geschlossen? (Sorry war bisher kein Forumsuser)

Bleibt offen. Aber bitte nur, wenn Du die Lösung hast und nicht denkst, Du hättest sie. Lieber etwas später, wenn Du Dir sicher bist.

Gruß Tommy

Wenn man zwischen den Elektroden und der Auswertungselektronik einen Kabel plaziert wird die Ruhekapazität der Elektroden um die Kabelkapazität erhöht wird. Abhilfe schafft nur die Montage der Auswertungselektronik nahe an den Elektroden und die Übertragung des Ausgangssignal über den Kabel.
Es ist sicher nicht leicht den Sensor so zu bauen, daß dieser wasserfest ist und tief in den Boden gesteckt werden kann.

Grüße Uwe

Hallo, ich habe den 555 jetzt mal mit meinen paar Wiederständen durchgetestet, und anhand der gemessenen/berechneten Werte 2 Übersichten erstellt.

Was ich bei meinen Berechnungen als Tau annehme ist wie in der ursprünglichen Formel (R1 + 2* R2) * C um die Lade-/Entladezeit des Kondensators zu berücksichtigen.

Diese Grafik zeigt bei wieviel Tau ich welche Frequenz gemessen habe.

Wenn ich Beispielsweise die 66 Tau mit der Formel von TI (1,44/ (R1 + 2* R2)*C) berechne sollte ein Takt von 21,86 MHz herauskommen.
Auch bei allen ungenauigkeiten auf dem Steckbrett ist das ein gravierender unterschied zu 1,49 MHz.

Ich habe dann mein Tau zum Verhältniss der gemessenen Taktdauer gesetzt, daraus ergiebt sich ein multiplikator mit dem sich die tatsächliche Frequenz genauer ausrechnen/einschätzen lässt.

Hier wieder als Grafik.

Berechne ich jetzt die 66 Tau sieht das so aus :
1/ (66 * 10^-9 * 10,1) = 1500150,015..... Hz
Der Multiplikator für die 66 Tau ist genauer 10,1687 - aber aus der Grafik schätzt man grob 10,1.

Die Mess-/Rechendaten habe ich, für intressierte, in dieser Tabelle.

Ich denke hiermit kann man behaupten das es eine Auswirkung des IC's auf die generierte Frequenz gibt.
Berechnen kann ich die Frequenz damit zwar nicht genau, aber es ist besser Einschätzbar in welchen bereichen man sich aufhält.

Für mich sieht die Multiplikatorkurve nach einer Parabelfunktion aus mit der man eine Berechnung entwerfen könnte, aber da bin ich mit meinem Mathe-Grundwissen raus.
Vieleicht findet sich ja hier jemand der Spaß an sowas hat.

Ich wünsche ein schönes Wochende

Was bringt dir das rechnen über 2MHz?
Ist schon klar das über den Wert Unsinn rauskommt, darf rauskommen.
Du vergisst die inneren Kapazitäten, Widerstände usw.

Ja, Berechnungen über 2 MHz sind grundsätzlich Unsinn, da hast Du recht.
Aber genau das ist mein Problem!
In einer Woche nach der suche einer Berechnung für die Ausgabefrequenz über 100KHz habe ich keine Lösung gefunden.
Alle Kalkulatoren,die ich für den 555 gefunden habe, basieren auf der Formel
Datenblatt Frequenz
oder aber
Datenblatt tH_tL
aus dem Datenblatt Seite 16 von TI, wo auch eindeutig steht das dies nur unter 100Hz anzuwenden/gültig ist.
Und dabei kommen diese Irrsinnsfrequenzen raus.

Ich nehme an Du meinst die Werte innerhalb des IC's.
Nein damit habe ich mich nicht beschäftigt.
Ich betrachte das IC als Komponente das mir bei der entsprechenden Eingabe eine Zugehörige Ausgabe liefert, das ich hierbei mit Schwankungen rechnen muss ist mir klar.
Diese sollten aber in einem halbwegs überschaubaren %-Bereich liegen.

Wenn Du schon eingestehst, dass es Unsinn ist, warum suchst Du dann weiter?
Wenn der Hersteller im Datenblatt die Grenze bei 100 kHz angibt, dann kann man evtl. noch etwas höher annähern, aber mehr auch nicht.
Wenn es für höhere Frequenzen sinnvolle Näherungsberechnungen gäbe, hätte sie der Hersteller ins Datenblatt geschrieben.
Kurz gesagt, Du verrennst Dich.

Gruß Tommy

Wen ich mich nicht irre die Formel ist nicht immer gleich, je nach dem wie man den 55 nutzt

Der 555 ist ja anscheinend ein sehr vielseitig nutzbarer Baustein, und da wird es für andere Anwendungen auch andere Formeln geben.
Für meine Beschaltung ist halt die Zitierte maßgeblich, es gibt im Datenblatt noch die Berechnung
Datenblatt Berechnung

aber da sind Werte aufgeführt die ich noch nicht einmal irgentwo im Datenblatt gefunden habe. Ganz zu schweigen davon das ich damit hoffnungslos überfordert bin.
Der Kalkulator von TI ist auf Exel 97 programiert, läuft bei meinem Office nicht und rechnet auch nur bis 1.2 MHz.

Momentan ist mein Lösungsansatz für mich der gangbarste Weg.
Ich habe anhand meiner Multiplikatorkurve einmal einen 470 pF Kondensator berechnet. Es ist zwar eine grobe Schätzung, trotzdem bekomme ich damit brauchbare Ergebnisse.

Ich habe zuerst die Tau berechnet, dann den Multiplikator abgelesen und die erwartete Frequenz notiert. Danach habe ich die Frequenzen gemessen.

Da sind natürlich Abweichungen, aber bei 17 Messungen für die Basisdaten finde ich den Unsinn in den ich mich da verrannt habe respektabel.

Gruß Thorsten