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.
    • Homoran
      Homoran Global Moderator Administrators last edited by

      Nimm dir Zeit, ich wriß nicht ob ich das heute noch schaffe

      Danke

      Rainer

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

        Hallo Rainer,

        hab jetzt mal einen ersten Sketch gebastelt. Der Sketch an sich läuft, die Ausgaben auf dem Seriellen Monitor sind soweit plausibel. Als Nächstes musst du schauen, welche Spannungswerte erstmal der Sensor liefert. Dann müssen wir schauen, ob die Ausgabe auf das Homematic-Modul so passt - kann man den 8-bit Wert direkt in der CCU wieder in eine Dezimalzahl wandeln oder was kommt da an?

        int sensorPin = A7;  
        int firstDigitPIN = 2;   
        int sensorValue = 0; 
        
        int Zykluszeit = 10; //in Sekunden
        
        void sendValue(int intVal){
          String binZahl;
          byte aktBit;
          for (int b = 0; b < 8; b += 1){
            aktBit = bitRead(intVal, b);
            binZahl = aktBit + binZahl;
            digitalWrite(firstDigitPIN + b,(boolean) aktBit);
          }
          Serial.println("Binärwert = " + binZahl);
          Serial.println("");  
        }
        
        void setup() {
          Serial.begin(9600);
          for (int digitPIN = firstDigitPIN; digitPIN <= firstDigitPIN + 7; digitPIN += 1){
            pinMode(digitPIN, OUTPUT);
          }
          Serial.println("Gestartet");
        }
        
        void loop() {
          // read the value from the sensor:
          sensorValue = analogRead(sensorPin)/4; //weil der Arduino mit 10 bit Auflösung misst, wir aber nur 8 bit übertragen können
          Serial.println("Analogwert = " + (String) sensorValue);
          sendValue(sensorValue);
          delay(Zykluszeit*1000);
        }
        

        Schau mal ob du damit klarkommst. Bei Fragen einfach fragen :lol:

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

          @Thisoft:

          Schau mal ob du damit klarkommst. `
          Anscheinend nicht 😞

          @Thisoft:

          Bei Fragen einfach fragen `

          in der Arduino IDE habe ich <datei>neu gewählt deinen Sketch einkopiert und auf hochladen geklickt - ok!

          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.
          

          Wat nu?

          rote LED blinkt, grüne ist an

          sonst musste ich irgendetwas neu starten, Button drücken, oder??

          Einstellungen:

          Board: Arduino nano

          Prozessor: ATMega328P

          Port: COM4 (was anderes wird mir nicht angeboten)

          Programmer: muss ich hier was eingeben?

          oops:

          die Biester sind wohl nicht so schnell; bekomme jetzt viel rot:

          ! avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x2f avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x2f avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x2f avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x2f avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x2f avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x2f avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x2f avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x2f avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x2f avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x2f Problem beim Hochladen auf das Board. Hilfestellung dazu unter http://www.arduino.cc/en/Guide/Troubleshooting#upload. !

          Ich probier das jetzt mal mit Programmer ArduinoISP

          Gruß

          Rainer</datei>

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

            Klappt auch nicht 😞

            eine weitere LED blitz ab und zu ganz leicht rot.

            Boardinformationen:

            BN: Unbekanntes Board
            VID: 1A86
            PID: 7523
            SN: Laden Sie irgendeinen Sketch hoch, um sie abzurufen
            

            Gruß

            Rainer

            EDIT:

            ich habe gerade auf der Shop-Website folgendes gefunden:
            ` > Nano V3 | Entwicklerboard für Arduino IDE | ATMEL ATmega328P AVR Mikrocontroller | CH340-Chip | Christians Technikshop

            Artikelnummer: 22

            Den Treiber für den CH340G Chip, können Sie unter folgenden Link Herunterladen.

            http://www.christians-shop.de/treiber/CH341SER.EXE `

            Brauch ich den?

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

              Hallo Rainer,

              dann kämpfen wir uns mal Schritt für Schritt weiter.

              Als Programmer ist bei mir seit eh und je "AVRISP mkll" angewählt. Hab ich soweit ich mich entsinne auch noch nie geändert. Probier das mal…

              Der Treiber für den Chip sollte eigentlich beim ersten Anstecken automatisch installiert worden sein. Wird denn der Nano erkannt wenn du ihn ansteckst? Also zum prüfen vielleicht mal schauen ob du wenn er nicht angesteckt ist den "COM4" auch auswählen kannst.

              Check erstmal die beiden Sachen - dann schauen wir weiter...

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

                Was ich schon alles getestet habe 😞

                ok,
                @Thisoft:

                Also zum prüfen vielleicht mal schauen ob du wenn er nicht angesteckt ist den "COM4" auch auswählen kannst. `
                nein das geht nicht und am anderen Port ist es COM3

                @Thisoft:

                AVRISP mkll" `
                da kommt nur

                Beim Hochladen des Sketches ist ein Fehler aufgetreten
                

                Habe schon ein zweites, jungfräuliches Board genommen - dito

                Habe gerade einen USB-Programmer(??) mit dem ich die OBI-Steckdose geflasht habe genommen und mit RX,TX.GND und 5V (ja mein Board ist für 5V) versucht - gleiche Symptome

                Habe neue IDE 1.8.5 statt 1.8.3 versucht; Außer dass jetzt meine Plugins für den Teensy weg sind auch keine Änderung….

                Habe mich auf der Shop-Seite des Boardlieferanten schlau gemacht

                http://blog.christians-shop.de/download ... ht-nichts/

                Habe gemäß Störungssuche von Arduino mit diversen RESET-Versuchen gespielt

                Gruß

                Rainer

                1 Reply Last reply Reply Quote 0
                • 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
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            759
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            9
                                            118
                                            14217
                                            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