Ankündigung

Einklappen
Keine Ankündigung bisher.

Neues Plugin: SMAModbus (zu Auslesen eines SMA-Wechselrichters über speedwire/modbus)

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

    #16
    Hallo merkelnando,
    das Plugin liest auch Werte aus Batterie-Wechselrichter. Diese sind auch außerhalb der Einspeisezeit wichtig.
    Versuche doch das uzsu-Plugin für Deine Zwecke zu Nutzen.

    Gruß
    klab
    Zuletzt geändert von klab; 12.02.2021, 11:52.

    Kommentar


      #17
      Den Thread kram ich doch glatt mal wieder aus.
      In der offiziellen Plugin-Liste von SHNG gibt es kein SMA Modbus Plugin. Ist das hier noch aktuell? Sprich, funktioniert es noch unter 1.8.1?

      Danke im Voraus

      Martin

      Kommentar


        #18
        Hallo Sipple,
        bei mir läufts auf 1.7.2.master ohne Probleme.

        Teste einfach mal.

        Gruß
        Klaus

        Kommentar


          #19
          Ok, danke Dir. Dann sollte es wohl auch unter der 1.8.x laufen.
          Dann versuch ich es mal.

          Kommentar


            #20
            Hallo,
            läuft bei mir auch unter 1.8.1.

            Gruß
            Frank

            Kommentar


              #21
              beavon

              Hallo Frank

              Könntest du den Ordner mit dem Plugin und allen nötigen Dateien, so wie das bei dir unter 1.8.1 läuft, zusammen mit dem Ausschnitt aus der plugin.yaml und den items in ein zip File packen und hier reinstellen?
              Ich bastel da jetzt Stunden rum und es klappt nicht. Bekomme schon beim Neustart von SHNG Fehler im Log.

              Danke im Voraus

              Martin

              Kommentar


                #22
                Hallo Martin,

                ich habe Plugin, items etc. 1:1 aus 1.7.2 kopiert.

                Wie ich auch jetzt erst erkannt habe weicht der Eintrag in der plugin.yaml zumindest schon mal von den Einträgen der anderen Plugins ab (ich kann auch in der Admin-GUI die Parameter nicht sehen):
                Code:
                SMAModbus:
                    class_name: SMAModbus
                    class_path: plugins.SMAModbus
                    instance: tp10
                    host: 192.168.103.2
                    # port: 502 #optional
                    cycle: 60 #optional
                    plugin_enabled: true
                Die __init__.py im Plugin-Verzeichnis entspricht dem Inhalt von Beitrag #1. Ich habe zusätzlich noch in dem Verzeichnis eine plugin.yaml:
                Code:
                # Metadata for the Smart-Plugin
                plugin:
                    # Global plugin attributes
                    type: interface # plugin type (gateway, interface, protocol, system, web)
                    description:
                        de: ''
                        en: ''
                    maintainer: '? '
                    tester:
                 # keywords: iot xyz
                    documentation: # url of documentation (wiki) page
                    support:
                
                    version: 1.3.0 # Plugin version
                    sh_minversion: 1.3 # minimum shNG version to use this plugin
                 # sh_maxversion: # maximum shNG version to use this plugin (leave empty if latest)
                    multi_instance: True # plugin supports multi instance
                    classname: SMAModbus # class containing the plugin
                
                parameters:
                Ein Beispiel-Item:
                Code:
                ac_leistung:
                    type: num
                    visu_acl: ro
                    cache: 'yes'
                    register@tp10: 30775
                Also bei mir läuft es so, auch wenn es vermutlich nicht den aktuellen Anforderungen an Plugins unter 1.8 entspricht.
                Daher habe ich auch noch Warnings im Log:
                Code:
                2021-02-13  08:47:40 WARNING  lib.metadata        Item 'pv.status', attribute 'register': Attribute is undefined and has value '30201' (defined in pv.yaml)

                Kommentar


                  #23
                  Ok, das deckt sich in etwa mit meiner Situation.

                  Dass eine plugin.yaml im Plugin Ordner fehlt wusste ich. Jetzt ist zumindest schon mal der ERROR aus dem Log weg.

                  Ein WARNING wie du habe ich auch. Ist nur die Frage, ob es daran liegt, dass das Attribut "register" ansich nicht bekannt ist (dann dürfte aber wohl bei dir gar nichts gehen), oder ob es daran liegt, dass die Registernummer 30201im Wechselrichter nicht existiert. Ich müsste also erst mal ein Register finden, dass definitiv im WR existiert.

                  Ist ein SunnyBoy SB1.5.

                  Aber einen Schritt weiter, danke.

                  Martin

                  Kommentar


                    #24
                    Der Log-Eintrag war nur ein Beispiel, für jedes in einem Item angegebenes Register kommt ein eigener Eintrag.
                    Die Items werden aber alle mit Daten aus dem Plugin versorgt.

                    Wenn du die Warnings loswerden willst, ergänzt du in der plugin.yaml z.B. sowas hier:
                    Code:
                    item_attributes:
                        # Definition of item attributes defined by this plugin (enter 'item_attributes: NONE', if section should be empty)
                        register:
                            type: int
                            description:
                                de: 'Register'
                                en: 'register'
                    Das habe ich mir aber ausdrücklich nur selbst aus anderen Plugins abgeleitet, ich habe keine Programmierkenntnisse.

                    Das Plugin sollte auf Dauer wohl mal ein Experte auf Stand bringen.
                    Aber da es im Prinzip so funktioniert, reicht mir das erst mal.

                    Kommentar


                      #25
                      Dann hab ich ein größeres Problem. Denn egal welche Registernummer ich verwende, es kommt nichts. Aber keine weiteren Fehler zu sehen. Im WR ist Modbus definitiv aktiv.

                      Kommentar


                        #26
                        Zitat von Sipple Beitrag anzeigen
                        In der offiziellen Plugin-Liste von SHNG gibt es kein SMA Modbus Plugin. Ist das hier noch aktuell? Sprich, funktioniert es noch unter 1.8.1?
                        Moin Martin. Läuft es bei dir? Würde mich am Wochenende auch mal dran machen wenn die Erfolgsaussichten gut sind.
                        Zapft ihr Narren der König hat Durst

                        Kommentar


                          #27
                          Nein, leider nicht. Geht einfach nicht. Kein Fehler im Log oder sonstige Hinweise. Hab grad auch nicht die Zeit und Möglichkeit weiter zu suchen.

                          Kommentar


                            #28
                            Hallo Zusammen

                            Ich lese hier schon länger mit, hab aber auch nicht so wirklich ne Ahnung vom programmieren.

                            Ich bastel schon ne ganze Weile an dem Plugin rum und hab es geschaft das Plugin zum laufen zu bekommen, ohne Fehlermedungen, in der aktuellsten Version von SmarthomeNG 1.8.2.

                            Ich hänge meinen Plugin Ordner komplett an (mit 7zip gepackt, entpacken und den Ordner komplett in die plugins rein kopieren)

                            Sehr wichtige, bitte die Readme Datei lesen, es muss unbedingt pymodbus 1.3.1 installiert sein

                            Ich hoffe es hilft und funktiert bei euch auch.

                            Viele Grüße

                            Toby
                            Angehängte Dateien

                            Kommentar


                              #29
                              Falls es Bestätigungen gibt, dass das Plugin inhaltlich funktioniert, würde ich es leicht überarbeiten und in das Repo aufnehmen.

                              Dazu müsste mir noch jemand beschreiben, was das Item Attribut 'register' genau ist/tut. In den Metadaten (der plugin.yaml) steht als Erklärung nur 'Register'. Das ist nicht wirklich erhellend.

                              Ich würde folgendes ergänzen/anpassen:
                              • Da der Name des Plugins recht lang ist, würde ich ihn auf smamb einkürzen wollen
                              • Requirements zur automatischen Installation von pymodbus
                              • Das Attribut 'register' umbenennen. So generische Namen können Kollisionen mit anderen Plugins hervorrufen, weshalb Attributnamen normale der Plugin Name (oder ein Kürzel) vorangestellt ist. (Also z.B. smamb_register)
                              • Den Parameter 'instance' entfernen. Das ist kein spezifischer Plugin Parameter, sondern steht in der Admin GUI allen
                              • MULTI_INSTANCE fähigen Plugins zur Verfügung.

                              Nachtrag: Eine Beschreibung, was das Plugin eigentlich tut wäre auch noch erhellend. Sonst steht in der Doku auf www.smarthomeng.de/user später nur "Das Plugin tut irgendwas".


                              Zuletzt geändert von Msinn; 10.04.2021, 13:24. Grund: Nachtrag ergänzt
                              Viele Grüße
                              Martin

                              There is no cloud. It's only someone else's computer.

                              Kommentar


                                #30
                                Hallo Martin,
                                gerne kannst Du das Plugin entsprechend ändern und ins repo übernehmen.


                                Beschreibung z.B. : Dieses Plugin liest die aktuellen Werte eines SMA-Wechselrichters per SMA Speedwire Feldbus aus.

                                Requirements: pymodbus==1.3.1

                                Das Item-Attribut "register" ist das Modbus-Register des SMA Modbus-Profil z.B.:

                                Adresse Beschreibung Typ Format Zugriff

                                30005 Seriennummer U32 RAW RO

                                HTML-Code:
                                https://my.sma-service.com/s/article/SMA-Modbus-Interface-SMA-SunSpec-Modbus-Interface?language=de
                                Gruß
                                Klaus
                                Zuletzt geändert von klab; 10.04.2021, 14:30.

                                Kommentar

                                Lädt...
                                X