Ankündigung

Einklappen
Keine Ankündigung bisher.

[Konnekting] Idee: BodenfeuchteSensor

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Hallo,

    kannst du bitte nochmal meinen alten Sketch verwenden?
    Ich bekomme nämlich mit deinem andere Werte als mit deinem....

    Gruß,
    Hendrik

    Kommentar


      Es gibt ja zwei Berechnungsmethoden der Feuchte. Das hier war glaub von der Vinduino v3.0:
      moisture=((4.093+3.213*avr/1000)/(1-0.009733*avr/1000-0.01205*10));

      Da kommt Folgendes raus:
      Code:
      supplyVoltage: 831
      sensorVoltage: 619
      supplyVoltage: 849
      sensorVoltage: 596
      supplyVoltage: 831
      sensorVoltage: 619
      supplyVoltage: 849
      sensorVoltage: 596
      supplyVoltage: 831
      sensorVoltage: 625
      supplyVoltage: 849
      sensorVoltage: 594
      supplyVoltage: 831
      sensorVoltage: 620
      supplyVoltage: 849
      avr:1756.40
      samples.getAverage():1766.05
      Moisture: 11.29
      In v3.1 ist der Code wie folgt:
      moisture = min( int( pow( avr/31.65 , 1.0/-1.695 ) * 400 + 0.5 ) , 100 );

      Damit bekomme ich folgende Werte:
      Code:
      avr:1874.00
      samples.getAverage():1945.26
      Moisture: 36.00
      Was deutlich realistischer bei den aktuellen Wetterverhältnissen ist. Allerdings meiner Meinung nach auch noch ein ganzes Stück zu niedrig.

      Ich hab bei mir krasse Schwankungen vom Moisturewert, der aber durch den Median ausgebügelt wird. Ich denke, das ist normal?
      Code:
      temp Moisture: 38.00
      temp Moisture: 38.00
      temp Moisture: 37.00
      temp Moisture: 49.00
      temp Moisture: 36.00
      temp Moisture: 39.00
      temp Moisture: 40.00
      temp Moisture: 36.00
      temp Moisture: 37.00
      temp Moisture: 50.00
      temp Moisture: 35.00
      temp Moisture: 39.00
      temp Moisture: 36.00
      temp Moisture: 33.00
      temp Moisture: 37.00
      temp Moisture: 38.00
      temp Moisture: 34.00
      temp Moisture: 40.00
      temp Moisture: 37.00
      Moisture: 37.00
      Tension: -14.00
      resistance: 1778.00
      Mit der Tension passt nach wie vor was nicht. Ich habe auch das Problem, dass der Median-Moisture mit dem Konnekting Sketch oftmals zu sehr schwankt. Das Problem hab ich mit dem reinen Arduino Sketch nicht. Das muss ich mir nochmals ansehen. Am besten, du testest auch mal diesen Sketch hier:
      https://github.com/onkelandy/Konnekt...rduinoonly.ino

      Ich habe nun den Konnekting Sketch nochmals leicht adaptiert, damit er wieder so gut wie identisch mit dem Arduino Sketch ist. Auffallend ist, dass bei aktiviertem Analogpin A0 oftmals supplyVoltage und sensorVoltage auf 0 sind, aber auch immer wieder auf 60 o.ä., also wie bei dir. Beim reinen Arduinosketch ist das anders. Insofern ist hier wohl noch ein Problem mit dem Zeitpunkt des Messens.
      Zuletzt geändert von Onkelandy; 11.12.2018, 10:06.

      Kommentar


        Hallo,

        vielleicht wäre es einmal sinnvoll einen fixen Widerstand -statt dem Soil-Moisture Sensor zu messen.
        Der Sensor ist ja etwas speziell (R=f(t)).

        Zum Unterschied:
        moisture=((4.093+3.213*avr/1000)/(1-0.009733*avr/1000-0.01205*10));
        moisture = min( int( pow( avr/31.65 , 1.0/-1.695 ) * 400 + 0.5 ) , 100 );

        Die Kurven haben ja nix miteinander gemein:
        moist.JPG

        Ich habe auf Anhieb nix dazu gefunden, wann und warum die Gleichungen geändert wurden. Hast du etwas gefunden?


        Zu Moisture vs. Tension:
        Die Gleichungen aus link ergeben dies zu Moisture und Tension

        Mein Verständnis:
        Tension ist das, was mit dem Gerät gemessen wird: "the physical force actually holding water in the soil, measured in Centibars (or kPa) of soil water tension"
        Moisture ist die Menge an Wasser in einem Volumen Boden. Das wird nicht gemessen, sondern man schließt aus der Tension auf die Moisture. Die Umrechnung ist aber abhängig vom Bodentyp:
        https://www.researchgate.net/profile...-Hydrology.pdf
        Bild 1.7

        Unsere Kurve für Moisture vs. Tension sieht aber anders aus:
        moisture vs. tension.JPG
        (wieder die Gleichungen aus link)

        Vielleicht sollten wir mal einen Issue im Vinduino Github aufmachen und fragen?

        Ich denke aber, wir sollten erstmal einen Referenzwiderstand richtig (ohne Ausreißer) messen können ;-)

        Gruß,
        Hendrik
        Angehängte Dateien

        Kommentar


          Heho! Danke für die Kurven! Ja, ich messe momentan einfach "nichts", also eine direkte Verbindung anstelle des Sensors. Da bekomme ich abwechslungsweise Werte von 800 und 60, was natürlich schlecht ist. Wie sieht es bei dir aus?

          Wie schon erwähnt, bei nem reinen Arduino Sktech passen die Werte durchgehend. Ich hab aber auch mal so den Widerstand des Watermark gemessen und dort ein ähnliches Ergebnis wie oben. In die eine Richtung ein ganz anderer Widerstand als in die andere. Allerdings hatte ich das Gefühl, dass es stark an der Dauer und am Messzeitpunkt liegt. Am ehesten passt also im Konnekting Sketch etwas mit dem Messzeitpunkt nicht optimal.

          Ein Problem in meiner Schaltung möchte ich aber nicht ausschließen.
          Kannst du auch mal meinen Arduinonly testen und die supply und sensorvoltage Werte hier posten?

          Kommentar


            Hallo,

            ich habe jetzt mal deinen Code gegen meinen antreten lassen.
            Gemessen wird ein 7.8kOhm Widerstand.

            Code:
            avr:7943.80
            samples.getAverage():7942.47
            Moisture: 36.92
            task
            avr:7943.80
            samples.getAverage():7942.47
            Moisture: 36.92
            task
            avr:7943.80
            samples.getAverage():7942.47
            Moisture: 36.92
            task
            avr:7943.80
            samples.getAverage():7942.47
            Moisture: 36.92
            task
            avr:7943.80
            samples.getAverage():7942.47
            Moisture: 36.92
            task
            vs.
            Code:
            currentTime: 50546. delayTime: 50601. Pin 6 is low
            currentTime: 50857. delayTime: 50757. Pin 7 is high
            supplyVoltage: 51
            sensorVoltage: 13
            resistance: 2215.4
            moisture: 14.0
            tension: -52.0
            currentTime: 50857. delayTime: 50913. Pin 7 is low
            currentTime: 51169. delayTime: 51068. Pin 6 is high
            supplyVoltage: 51
            sensorVoltage: 13
            resistance: 2215.4
            moisture: 14.0
            tension: -52.0
            currentTime: 51169. delayTime: 51224. Pin 6 is low
            currentTime: 51490. delayTime: 51390. Pin 7 is high
            supplyVoltage: 51
            sensorVoltage: 13
            resistance: 2215.4
            moisture: 14.0
            tension: -52.0
            currentTime: 51490. delayTime: 51546. Pin 7 is low
            currentTime: 51816. delayTime: 51701. Pin 6 is high
            supplyVoltage: 51
            sensorVoltage: 13
            resistance: 2215.4
            moisture: 14.0
            tension: -52.0
            currentTime: 51816. delayTime: 51873. Pin 6 is low
            currentTime: 52127. delayTime: 52027. Pin 7 is high
            supplyVoltage: 51
            sensorVoltage: 13
            resistance: 2215.4
            moisture: 14.0
            tension: -52.0
            currentTime: 52127. delayTime: 52183. Pin 7 is low
            currentTime: 52127
            cycleTime: 0
            moisture after median: 14.0
            Dein code von hier läuft bei mir nicht:
            exit status 1
            'TXLED0' was not declared in this scope

            Was ich natürlich angepasst habe ist der knownResistor (=3000)

            also eine direkte Verbindung anstelle des Sensors. Da bekomme ich abwechslungsweise Werte von 800 und 60, was natürlich schlecht ist. Wie sieht es bei dir aus?
            Siehe oben. Ich messe immer den gleichen -falschen- Wert.
            Was meinst du mit "direkte Verbindung"?

            Kannst du mal meinen Test wiederholen?

            Zitat von Onkelandy Beitrag anzeigen
            In die eine Richtung ein ganz anderer Widerstand als in die andere. Allerdings hatte ich das Gefühl, dass es stark an der Dauer und am Messzeitpunkt liegt.
            Ja, das habe ich am Anfang dieses Threads schon beschrieben. Der Sensor ist kein konstanter Widerstand. Deshalb muss man auch so messen, wie wir messen.



            Gruß,
            Hendrik
            Zuletzt geändert von henfri; 22.12.2018, 17:04.

            Kommentar


              Die LEDs gibts wohl nur auf manchen Arduinos. Am besten, du schmeißt die Zeilen mit RXLED und TXLED einfach raus.

              Du hast also die gleichen supply und sensorwerte in beide Richtungen, das ist eigentlich schon mal sehr gut. Das ist bei mir leider nicht der Fall. Da es eben mit der reinen Arduinoversion aber schon der Fall ist, kenn ich mich grad nicht aus Interessant wär dennoch die Info zu den Voltages bei der Arduino Variante von dir.

              Kannst du vielleicht auch in deinen Sketch supply und sensorvoltage Debug einfügen? Ich denke, das sind die relevanten Werte. Die Berechnung von moisture ist dann ja noch eine andere Sache.

              Ich poste dann meine Ergebnisse mit den verschiedenen Sketches morgen.

              Kommentar


                Hallo,

                Bei der reinen Arduinoversion misst dein Code auch bei mir richtig.

                Mein Sketch liefert diese Werte:
                Code:
                avr:7942.80
                supplyVoltage:825.00
                sensorVoltage:226.00
                samples.getAverage():7940.63
                Moisture: 36.92
                task
                avr:7936.60
                supplyVoltage:825.00
                sensorVoltage:226.00
                samples.getAverage():7937.42
                Moisture: 36.89
                task
                Deiner:
                Code:
                temp Moisture: 0.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                Moisture: 15.00
                Tension: -47.00
                resistance: 7951.00
                supplyVoltage
                826
                sensorVoltage
                226
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                Moisture: 15.00
                Tension: -47.00
                resistance: 7951.00
                supplyVoltage
                825
                sensorVoltage
                226
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                temp Moisture: 15.00
                Moisture: 15.00
                Tension: -47.00
                resistance: 7951.00
                supplyVoltage
                826
                sensorVoltage
                226
                Gruß,

                Hendrik

                Kommentar

                Lädt...
                X