Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. Druckmessung

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Druckmessung

    This topic has been deleted. Only users with topic management privileges can see it.
    • Thisoft
      Thisoft last edited by

      Mit dem Erkennen des Nanos am Port sieht's ja soweit gut aus…

      Aktiviere bitte mal in den Voreinstellungen der Arduino-IDE die "Ausführliche Ausgabe" während Kompilierung und Hochladen und poste dann die komplette Ausgabe während eines Hochladeversuches...

      1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators last edited by Homoran

        erster Teil:

        ! Compiling core... Using precompiled core Linking everything together... "C:\Users\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-gcc" -w -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections -mmcu=atmega328p -o "C:\Users\AppData\Local\Temp\arduino_build_90295/Drucksensor01.ino.elf" "C:\Users\AppData\Local\Temp\arduino_build_90295\sketch\Drucksensor01.ino.cpp.o" "C:\Users\AppData\Local\Temp\arduino_build_90295/..\arduino_cache_408994\core\core_arduino_avr_nano_cpu_atmega328_6c812979509dd8770aad63c18d23b249.a" "-LC:\Users\AppData\Local\Temp\arduino_build_90295" -lm "C:\Users\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-objcopy" -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0 "C:\Users\AppData\Local\Temp\arduino_build_90295/Drucksensor01.ino.elf" "C:\Users\AppData\Local\Temp\arduino_build_90295/Drucksensor01.ino.eep" "C:\Users\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-objcopy" -O ihex -R .eeprom "C:\Users\AppData\Local\Temp\arduino_build_90295/Drucksensor01.ino.elf" "C:\Users\AppData\Local\Temp\arduino_build_90295/Drucksensor01.ino.hex" Der Sketch verwendet 4026 Bytes (13%) des Programmspeicherplatzes. Das Maximum sind 30720 Bytes. Globale Variablen verwenden 238 Bytes (11%) des dynamischen Speichers, 1810 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes. C:\Users\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/bin/avrdude -CC:\Users\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/etc/avrdude.conf -v -patmega328p -carduino -PCOM3 -b115200 -D -Uflash:w:C:\Users\AppData\Local\Temp\arduino_build_90295/Drucksensor01.ino.hex:i ! avrdude: Version 6.3, compiled on Jan 17 2017 at 12:00:53 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2014 Joerg Wunsch ! System wide configuration file is "C:\Users\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/etc/avrdude.conf" ! Using Port : COM3 Using Programmer : arduino Overriding Baud Rate : 115200 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xde !

        jetzt kommt nur nochprogrammer is not responding - wie gehabt

        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xde
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xde
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xde
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xde
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xde
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xde
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xde
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xde
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xde
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xde
        
        1 Reply Last reply Reply Quote 0
        • Thisoft
          Thisoft last edited by

          Da klappt definitiv mit dem Programmer was nicht. Diese Probleme hatte ich noch nie… - nur genügend andere 😉

          Aber ich habe beim Googlen was sehr Interessantes gefunden - dein Nano ist doch ziemlich neu -oder?

          Dann schau mal hier https://www.heise.de/make/artikel/Ardui … 11641.html ob das zutreffen könnte und versuche das umzusetzen.

          1 Reply Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators last edited by

            Danke, werde ich gleich testen.

            BTW ich habe auch schon versucht einen Bootloader zu brennen mit gleichem Erfolg 😞

            1 Reply Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators last edited by

              scheint bei mir genau anders herum gewesen zu sein, zumindest mit der neuen IDE; ich bin auf 1.6.20 zurück, jetzt klappt es.

              zumindest der Upload scheint geklappt zu haben.

              Dann schnell das Gleiche noch mit dem verbauten nano durchgeführt - auch hier hörte die rote LED auf zu blinken nach "avrdude done"

              USB abgeklemmt, Stromversorgung angeklemmt und WebUI geöffnet 😢 😢 nichts.

              Stromversorgung ab, USB dran - serielle Konsole liefert nur:

              ⸮⸮⸮⸮⸮⸮
              

              Gruß

              Rainer

              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators last edited by

                Korrektur:

                Baudrate auf 9600 gesetzt:

                Gestartet
                Analogwert = 25
                Binärwert = 00011001
                
                Analogwert = 25
                Binärwert = 00011001
                
                Analogwert = 25
                Binärwert = 00011001
                
                
                1 Reply Last reply Reply Quote 0
                • Thisoft
                  Thisoft last edited by

                  Na klasse! Bis dahin sieht's doch gut aus 🙂

                  Willst du jetzt als Nächstes testen ob sich der Analogwert im Arduino ändert wenn sich der Druck in deinem Sensor ändert, oder wollen wir uns dran machen die Daten über die Schnittstelle zu bringen?

                  1 Reply Last reply Reply Quote 0
                  • Schubi
                    Schubi last edited by

                    Ich entschuldige mich gleich vorab, ich hab den Beitrag nur überflogen - vielleicht ist eh schon alles klar oder überflüssig.

                    Ich habe mich auch mal mit so einem Sensor gespielt - meine (sehr dürftige) Dokumentation findet ihr im Anhang.

                    Eigentlich sollte das auch mit Tasmota funktionieren - der A-D-Wandler (ADS1115) wird angeblich unterstütz.

                    LG Schubi
                    1904_druckmessung.pdf

                    1 Reply Last reply Reply Quote 0
                    • Thisoft
                      Thisoft last edited by

                      Naja- Tasmota bzw. MQTT überhaupt wäre schon eine Alternative. Dann braucht Rainer aber eine Netzwerkanbindung, also entweder ein WiFi-Shield für den Arduino (gibt's aber nicht für den Nano) oder gleich einen ESP8266 verwenden…

                      Ich glaube wir bleiben jetzt erstmal bei Rainers Aufbau mit dem 8bit-Schnittstellenmodul.

                      1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators last edited by

                        @Thisoft:

                        Willst du jetzt als Nächstes testen ob sich der Analogwert im Arduino ändert wenn sich der Druck in deinem Sensor ändert, `
                        Hab ich schon, aber stärker als bis 27 kann ich nicht pusten 😉

                        Habe jetzt auch noch an der Konfig des Sendemoduls gespielt, jetzt kommen Werte (230), aber die ändern sich beim Pusten fast gar nicht.
                        144_konfig_drucksensor.jpg
                        Außerdem verstehe ich die 7 möglichen Modi nicht ganz,
                        144_alle_modi.jpg

                        in der Bedienungsanleitung ist das auch nur knapp beschrieben

                        https://files.elv.com/Assets/Produkte/1 … 17_web.pdf

                        Gruß

                        Rainer

                        1 Reply Last reply Reply Quote 0
                        • Schubi
                          Schubi last edited by

                          Ja ist schon klar - ich will da nicht klugscheißen - war nur als Zusatzinfo gedacht.

                          Ich werde jetzt aber aus gegebenem Anlass mal die Sache mit Tasmota probieren.

                          1 Reply Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators last edited by

                            @Schubi:

                            Ja ist schon klar - ich will da nicht klugscheißen - war nur als Zusatzinfo gedacht. `
                            Danke dafür!

                            Ich nehme dir das ja auch nicht krumm - im Gegenteil.

                            ich bin halt mit Arduino, ESP & Co nicht allzu fit, und dachte in dem 8-Bit Sendemodul wäre bereits der 8-Bit A/D WEandler integriert, als ich ihn gekauft hatte.

                            Meine Idee war: anklemmen -> läuft 😉

                            jetzt komme ich endlich meinem Ziel etwas näher.

                            Gruß

                            Rainer

                            1 Reply Last reply Reply Quote 0
                            • Thisoft
                              Thisoft last edited by

                              Ja, hab so was befürchtet. Wer weiß bei wieviel Druck der Sensor dann mal 4,5 Volt liefert.

                              Als erstes lasse mal in der folgenden Zeile im Sketch:

                                sensorValue = analogRead(sensorPin)/4; //weil der Arduino mit 10 bit Auflösung misst, wir aber nur 8 bit übertragen können
                              

                              das "/4" weg. Wenn der Wert offensichtlich nicht größer als ungefähr 100 ist brauchen wir ihn auch erstmal nicht teilen. Später musst du dann mal testen welche Werte bei echtem Wasserdruck ankommen, ggf. können wir die Referenzspannung des Analogeingangs heruntersetzen…

                              Mit der Konfig des Sendemoduls kenne ich mich leider auch nicht wirklich aus. Wie gesagt - hab kein solches Dingens.

                              Du hast geschrieben dass jetzt Werte kommen - stimmen die mit dem im Seriellen Monitor angezeigten Analogwert überein?

                              1 Reply Last reply Reply Quote 0
                              • Homoran
                                Homoran Global Moderator Administrators last edited by

                                Das einfache zuerst:
                                @Thisoft:

                                • stimmen die mit dem im Seriellen Monitor angezeigten Analogwert überein? `
                                  nein!

                                25-27 im Arduino (manchmal 24)

                                230 in der WebUI, manchmal 229

                                ändert sich aber nicht beim pusten, wird da eher minimal niedriger - das kann aber daran liegen, dass das Sendemodul anscheinend einen Trigger braucht (siehe Modi)

                                /4 nehme ich jetzt raus

                                EDIT:

                                Wert liegt beim Arduino jetzt um ohne Druck bei 100 - in der WebUI bei 154

                                EDIT2: bei kräftigem pusten geht er im Arduino auf 109; in der WebUI auf 148

                                EDIT3: Habe in der Konfiguration die Eingänge des Moduls invertiert, jetzt passen die Werte!!!!

                                1 Reply Last reply Reply Quote 0
                                • Thisoft
                                  Thisoft last edited by

                                  OK.

                                  Der Messwert bzw. die Differenz zwischen Pusten oder nicht ist noch nicht so ganz zu gebrauchen. Aber sei's drum. Kümmern wir uns erstmal um die Übermittlung. Mit den Modi wann was getriggert wird das wirst du vermutlich noch herausfinden müssen 😉

                                  Ändere mal im Arduino-Sketch die Setup-Prozedur wie folgt:

                                  void setup() {
                                    Serial.begin(9600);
                                    for (int digitPIN = firstDigitPIN; digitPIN <= firstDigitPIN + 7; digitPIN += 1){
                                      pinMode(digitPIN, OUTPUT);
                                    }
                                    Serial.println("Gestartet");
                                    for (int testVal = 0; testVal <= 250; testVal += 10){
                                  	sendValue(testVal);
                                  	delay(Zykluszeit*1000);
                                    }
                                  }
                                  

                                  Damit wird beim Starten des Arduino ein Wert in Zehnerschritten hochgezählt und das solltest du ja relativ gut in der WebUI verifizieren können.

                                  EDIT: -hab gerade dein EDIT3 gesehen. Dann ist das ja auch gut - bin ich wohl irgendwo mit Low- und High-Aktiv durcheinander geraten - musst du den Sketch nicht ändern… Dann wäre es gut wenn du als Nächstes ermitteln könntest was der Drucksensor für Werte im "Echtbetrieb" also mit Wasser liefert...

                                  1 Reply Last reply Reply Quote 0
                                  • Homoran
                                    Homoran Global Moderator Administrators last edited by

                                    @Thisoft:

                                    wenn du als Nächstes ermitteln könntest was der Drucksensor für Werte im "Echtbetrieb" also mit Wasser liefert… `
                                    komme gerade aus dem Garten/Werkstatt weil ich das gerade verdrahte.

                                    Bis später

                                    Rainer

                                    1 Reply Last reply Reply Quote 0
                                    • Homoran
                                      Homoran Global Moderator Administrators last edited by

                                      Jetzt habe ich die Nase voll :((

                                      das Sendemodul blinkt nur noch lang-kurz-kurz

                                      Den Fehlercode finde ich nicht; die Seite bei HM inside existiert nicht mehr….

                                      Ein frustrierter Rainer

                                      1 Reply Last reply Reply Quote 0
                                      • Thisoft
                                        Thisoft last edited by

                                        Oh - das klingt gar nicht gut 😞

                                        Laut der Bedienungsanleitung https://files.elv.com/Assets/Produkte/1 … 17_web.pdf S.32 bedeutet das "Gerät defekt" 😞

                                        1 Reply Last reply Reply Quote 0
                                        • Homoran
                                          Homoran Global Moderator Administrators last edited by

                                          defekt ist nie etwas 😉

                                          Beim Löten hatte ich ja schon Probleme mit dem Sehen, habe jetzt nochmal schnell das Funkmodul nachgelötet (beim Einpacken war da wahrscheinlich Druck drauf) und jetzt läuft es wieder.

                                          Ich brauche auch ne neue Lötspitze, die alte ist schon ganz rund vom bleifrei löten.

                                          Bei einem Druck von etwa 1bar lt. analogem Messinstrument ist der Wert jetzt 159.

                                          Dafür, dass er bei 0 bar bei 100 liegt ist die Spreizung fast für die Katz', wie hier schon vermutet wurde.

                                          Eine "richtige" Kalibration wird wohl auch nicht so einfach sein. Optimal wäre das natürlich bereits im Arduino, alternativ hier im ioBroker.

                                          Gottseidank läuft der Filter jetzt wieder, ich muss nämlich morgen früh dienstlich für 4 Tage weg - da gibt es sonst Haue.

                                          Ich wollte nur schnell Zwischenstand melden und bringe unten alles in Ordnung - zum Umprogrammieren kann ich dann nächsten Sonntag wieder abbauen.

                                          D A N K E

                                          Rainer

                                          1 Reply Last reply Reply Quote 0
                                          • Thisoft
                                            Thisoft last edited by

                                            Richtig - defekt ist (fast) nie was. Kaum macht man es richtig, schon geht es 😉

                                            Freut mich dass das erstmal wieder geht.

                                            Die Kalibration bekommen wir hin im Arduino - natürlich ohne Genauigkeitsanforderungen von mbar 😉 Wenn jetzt bei 1bar der Wert 159 ist und wir bei einer Referenzspannung von 5V den Wert 1024 haben dann heißt das dass der Sensor bei 1bar ca.0,77 V liefert. Wir können jetzt die interne Referenzspannung noch auf 3,3V oder sogar 1,1V heruntersetzen. Wobei mir das mit 1,1V etwas riskant ist, dann müsstest du sicher sein dass nie mehr als 1,5bar anliegen sonst Arduino-RIP. Was ist denn der höchste Druck den deine Pumpe so schaffen könnte?

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            948
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            9
                                            118
                                            14211
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo