Ankündigung

Einklappen
Keine Ankündigung bisher.

MBus USB Konvertier richtig angeschlossen und danach Testen?

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

    MBus USB Konvertier richtig angeschlossen und danach Testen?

    Hallo,

    ich habe einen Energiezähler von Saia-Burges (ALE3D5FD10C3A00) und "1ST CH340 USB zu RS485" Adapter (Bild)
    Datenblatt (https://datenblatt.energiezaehlersho...ial-Modbus.pdf)
    MODBUS
    mbus.jpg

    Nun stellt sich schon mal die erste Frage:
    Saia-Burges bezeichnet die Kontakt mit D und \D
    Der Adapter mit +D und -D.
    Ich vermute D == +D und \D == -D

    _________
    Richtig ist: D => -D und \D => +D
    _________

    Die zweite Frage wie kann man das Testweise unter Linux abfragen?

    Ich habe es mit Minicom (9600 8N1) Hardware und Software Flow = OFF getestet.
    und mit "mbus-serial-request-data -d -b 9600 /dev/ttyUSB0 1" (auf dem Gerät habe ich Adresse 001 eingestellt)

    Beides mal keine Ergebnis.
    Vielleicht hat jemand ein Tipp für mich.
    Der Energiezähler erkennt die Geschwindigkeit angeblich automatisch. Muss aber bei einem Wechsel neue gestartet werden. Nur wie geht das ohne das man den Strom abstellt?

    Gruß
    Lothar
    Zuletzt geändert von lo4dro; 11.09.2019, 14:28.
    --
    Gruß
    Lothar

    #2
    Ich fürchte das wird so nicht gehen. Du hast einen USB RS485 Adapter und keinen MBus Adapter. Wenn der Zähler wirklich MBus spricht passt das definitiv nicht.

    Viele Grüße
    Dirk

    Kommentar


      #3
      OK, dann habe ich was verwechselt, dachte M-Bus ist ein RS-485 Verbindung und die Software regelt den Rest.
      Kann man sich einen M-Bus Master auf R-PI oder andere Hardware kostengünstig selber bauen?
      Kann es sein das M-Bus und Mod-Bus auch nicht das gleiche ist?
      Zuletzt geändert von lo4dro; 26.08.2019, 07:30.
      --
      Gruß
      Lothar

      Kommentar


        #4
        Zitat von lo4dro Beitrag anzeigen
        Kann es sein das M-Bus und Mod-Bus auch nicht das gleiche ist?
        Nein ist es nicht. Da hilft Google schnell weiter

        Kommentar


          #5
          Zitat von lo4dro Beitrag anzeigen
          dachte M-Bus ist ein RS-485 Verbindung
          Nein, weder Zähler noch Interface sind M-Bus.
          Beides sind RS485 Geräte (für Modbus) und passen damit zusammen.

          Edit: Die verwendete Bibliothek mbus-serial-request-data ist dann natürlich falsch, weil du Modbus RS485 und nicht M-Bus nutzt.
          Zuletzt geändert von Gast1961; 27.08.2019, 07:20.

          Kommentar


            #6
            Danke Sasta,

            Nun muss ich mal herausfinden, wie ich eine Kommunikation hinbekomme.
            Aktuell geht nichts.
            Habe allerdings such keine Idee wie ich den Fehler eingrenzen kann.
            Kann man z.B. mit einer minicom Verbindung was testen?
            Ich habe als Parameter
            9600 8E1
            Hardware Flow Control = OFF
            Software Flow Control = ON

            Gibt es für Linux (oder Win) ein Toll mit dem man die Schnittstelle Debugen kann?

            --
            Gruß
            Lothar

            Kommentar


              #7
              RS485 bezieht sich nur auf die elektrische Verbindung. Da kann M-Bus, Modbus oder sonstwas drauf sein.

              https://de.wikipedia.org/wiki/EIA-485

              Dein RS485 auf USB Konverter ist übrigens einer von der beschissenen Sorte aber sollte gehen.

              Modbus testen kannste zum Beispiel mit Modpoll:

              https://www.modbusdriver.com/modpoll.html

              ./modpoll -m rtu -a 1 -r 36 -c 5 -t 4 -b 9600 -p even /dev/ttyUSB0

              Sollte dann holding register 36 bis 41 auslesen. Die Geräteadresse (-a 1) 1 hab ich mal angenommen. Kannste laut Datenblatt von deinem Zähler aber im Menü einstellen.

              Ich hab so Zeug mittels sowas:

              https://github.com/mbs38/spicierModbus2mqtt auf mqtt adaptiert und dann eingebunden.

              Gruß
              Zuletzt geändert von Gast; 09.09.2019, 11:45. Grund: Dummheit im Umgang mit Links im Text

              Kommentar


                #8
                danke, werde ich ausprobieren.
                Welchen Adapter nutzt du?
                Zuletzt geändert von lo4dro; 11.09.2019, 08:46.
                --
                Gruß
                Lothar

                Kommentar


                  #9
                  Hurra, es hat funktioniert.
                  Vielen Dank für die Hilfe und den guten Tipp.
                  --
                  Gruß
                  Lothar

                  Kommentar


                    #10
                    Zitat von lo4dro Beitrag anzeigen
                    Welchen Adapter nutzt du?
                    Im Moment einen selbst gebauten.

                    Auf ebay kriegt man da eine Menge Schrott. Alles ohne Ground-Klemme ist schonmal verdächtig... die muss es nämlich eigentlich geben für RS485. Ferner sollte es einer mit einem FTDI sein und nicht eine der diversen billigen Alternativen.

                    Aber Achtung: es gibt gefälschte FTDIs en masse auf ebay und der hier zum Beispiel https://www.ebay.de/itm/USB-zu-TTL-R...IAAOSwIuJdcSRJ enthält nicht nur einen gefälschten FTDI sondern auch noch eine völlig falsch aufgebaute Bias-Schaltung für den RS485 Bus... selbst Bustreiber aus China sind mir schon abgeraucht bei bloßer Berührung mit einem Oszi-Tastkopf. Ich bin komplett vom China-Kram weg wegen sowas. Einfach ätzend seine Zeit damit zu verschwenden.

                    Kommentar


                      #11
                      Danke für die Info.
                      Mein Stromzähler hat auch keine Ground-Klemme. Das ganze funktioniert aktuell besser als ich je gedacht habe.
                      Ich nutze jetzt eine MODBUS TCP Gateway Software und kann mit Node-Red die Werte alle auslesen.
                      --
                      Gruß
                      Lothar

                      Kommentar


                        #12
                        Sehr schön.

                        Kommentar


                          #13
                          Auf Anfrage in PN ein Beispiel für https://github.com/mbs38/spicierModbus2mqtt

                          Starten von modbus2mqtt.py mit folgendem Aufruf für den Fall, dass der mqtt broker auf dem gleichen Rechner läuft wie modbus2mqtt:
                          python3 modbus2mqtt.py --rtu /dev/ttyUSB0 --rtu-baud 9600 --rtu-parity even --mqtt-host localhost --config blahoderso.csv

                          Die Konfigrationsdatei blahoderso.csv könnte so aussehen (die erste Zeile MUSS da sein):

                          "type","topic","col2","col3","col4","col5","co l6"
                          poll,energymeter,1,36,15,holding_register,1
                          ref,urmsPh1,36,r
                          ref,irmsPh1,37,r
                          ref,prmsPh1,38,r
                          ref,qrmsPh1,39,r
                          ref,cosphiPh1,40,r
                          ref,urmsPh2,41,r
                          ref,irmsPh2,42,r
                          ref,prmsPh2,43,r
                          ref,qrmsPh2,44,r
                          ref,cosphiPh2,45,r

                          Das Skript publiziert dann auf den topics modbus/energymeter/#
                          Das heißt mit mosquitto_sub -h localhost -t modbus/# -v kann man sich angucken was da so kommt.

                          Viel Erfolg damit.

                          Gruß MV.
                          Zuletzt geändert von Gast; 19.09.2019, 20:11.

                          Kommentar

                          Lädt...
                          X