Ankündigung

Einklappen
Keine Ankündigung bisher.

Siemens Steuerung S7-300 Anbindung

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

    Siemens Steuerung S7-300 Anbindung

    Hallo Leute,

    ich möchte mit smarthome eine Verbindung zu meiner Siemens Steuerung s7-300 aufbauen.
    Habe dazu folgendes Plugin probiert zu installieren:
    https://github.com/Simatic-WinCC/S7-Plugin

    Leider scheitere ich an der Ausführung kläglich.

    Wenn ich plugin.yaml anpasse
    Code:
    S7:
        class_name = S7
        class_path = plugins.s7
        host = 192.168.0.1
        port = 102
        busmonitor = True
        read_cyl_fast = 3
        read_cyl_slow = 15
    bekomme ich im smarthomeNG Backend --> Plugins folgende Fehlermeldungen:
    Code:
    [I]The server encountered an unexpected condition which prevented it from fulfilling the request.
    Traceback (most recent call last):
      File "/usr/local/lib/python3.5/dist-packages/cherrypy/_cprequest.py", line 670, in respond
        response.body = self.handler()
      File "/usr/local/lib/python3.5/dist-packages/cherrypy/lib/encoding.py", line 221, in __call__
        self.body = self.oldhandler(*args, **kwargs)
      File "/usr/local/lib/python3.5/dist-packages/cherrypy/_cpdispatch.py", line 60, in __call__
        return self.callable(*self.args, **self.kwargs)
      File "/usr/local/smarthome/plugins/backend/BackendCore.py", line 824, in plugins_html
        conf_plugins[_conf[plugin]['class_name']] = _conf[plugin]['class_path']
    TypeError: string indices must be integers[/I]


    Ich habe smarthome (1.3.v1.3_Hotfix_2) / smartvisu (2,8) auf einem raspberry pi3 laufen.

    Snap7 und Python-Snap7 sind ebenfalls installiert.

    Gibt es jemanden der die Anbindung an Siemens Steuerungen realisiert hat und mir weiterhelfen kann?

    Danke
    Markus


    Zuletzt geändert von bmx; 02.11.2017, 17:21.

    #2
    Zitat von macs412 Beitrag anzeigen
    Code:
    S7:
        class_name = S7
        class_path = plugins.s7
        host = 192.168.0.1
        port = 102
        busmonitor = True
        read_cyl_fast = 3
        read_cyl_slow = 15
    Ist weder gültiges .CONF Format noch gültiges YAML Format. Im YAML Format müsste das so aussehen:
    Code:
    S7:
        class_name: S7
        class_path: plugins.s7
        host: 192.168.0.1
        port: 102
        busmonitor: 'True'
        read_cyl_fast: 3
        read_cyl_slow: 15
    ​​​​​​​
    Viele Grüße
    Martin

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

    Kommentar


      #3
      Code habe ich so eingefügt.
      Funktioniert leider noch immer nicht.

      Bei mir wird das Plugin nicht einmal unter http://192.168.0.11:8383/plugins.html angezeigt

      Habe mal eine "blöde" Frage zu diesem Plugin.
      Ich habe es von der Seite https://github.com/Simatic-WinCC/S7-Plugin heruntergeladen und alle Dateien in den Ordner /usr/local/smarthome/plugins/s7/ kopiert.
      Ist das so korrekt oder muss dieses Plugin, wie auch immer, installiert werden?

      Kommentar


        #4
        Gruß Manuel

        Wie sieht deine Plugin.yaml denn nun aus?

        In welchem Order liegt dein Plugin ?

        Was sagt der LOG?

        Gruß Manuel

        Kommentar


          #5
          Das plugin liegt erstmal richtig, wenn du die plugin.yaml richtig ausgefuellt hast, sollte das plugin auch im backend erscheinen
          Wobei ich gerade gesehen hab, das dass plugin wohl noch nucht an smarthomeng angepasst wurde , ich weiss leider nicht ob es trotzdem funktioniert

          Ich könnte mal bei mir zuhaus probieren ob es funzt.. hab da ne 1200er zum spielen liegen

          habs lau snap7-python installiert und bekomme:
          Code:
          2017-11-03  16:11:04 ERROR    Main         Plugin S7 exception: can't find snap7 library. If installed, try running ldconfig
          Traceback (most recent call last):
            File "/usr/local/smarthome/lib/plugin.py", line 63, in __init__
              plugin_thread = PluginWrapper(smarthome, plugin, classname, classpath, args, instance)
            File "/usr/local/smarthome/lib/plugin.py", line 108, in __init__
              exec("self.plugin.__init__(smarthome{0})".format(args))
            File "<string>", line 1, in <module>
            File "/usr/local/smarthome/plugins/s7/__init__.py", line 149, in __init__
              self.client = snap7.client.Client()
            File "/usr/local/lib/python3.4/dist-packages/snap7/client.py", line 35, in __init__
              self.library = load_library()
            File "/usr/local/lib/python3.4/dist-packages/snap7/common.py", line 54, in load_library
              return Snap7Library(lib_location).cdll
            File "/usr/local/lib/python3.4/dist-packages/snap7/common.py", line 46, in __init__
              raise Snap7Exception(msg)
          snap7.snap7exceptions.Snap7Exception: can't find snap7 library. If installed, try running ldconfig
          Zuletzt geändert von Bonze; 03.11.2017, 16:13.

          Kommentar


            #6
            Ok, snap7 muss installiert, und der snap7 python interpreter muss installiert werden.
            aber smarthomeng versucht das plugin normal zu starten

            Kommentar


              #7
              Hallo Leute,

              so wie es aussieht habe ich Probleme mit der snap7 Installation.
              Anbei ein Auszug aus dem Logfile:
              Code:
              2017-11-06 08:32:57 ERROR Main Plugin S7 exception: No module named 'snap7'
              
              Traceback (most recent call last):
              File "/usr/local/smarthome/lib/plugin.py", line 90, in __init__
              plugin_thread = PluginWrapper(smarthome, plugin, classname, classpath, args, instance)
              File "/usr/local/smarthome/lib/plugin.py", line 127, in __init__
              
              exec("import {0}".format(classpath))
              
              File "<string>", line 1, in <module>
              
              File "/usr/local/smarthome/plugins/s7/__init__.py", line 126, in <module>
              
              import snap7
              
              ImportError: No module named 'snap7'
              Habe snap7 nach folgender Weise installiert.

              Code:
              wget https://sourceforge.net/projects/snap7/files/1.4.1/snap7-full-1.4.1.tar.gz
              tar -zxvf snap7-full-1.4.1.tar.gz
              
              from terminal goto build/unix/
              cd snap7-full-1.4.1/build/unix
              sudo make –f arm_v7_linux.mk install
              Die einzelnen Punkte sind ohne Probleme durchgelaufen.
              Nach der Installation war libsnap7.so in folgenden Ordnern vorhanden
              /usr/lib/
              /usr/local/lib/

              Hat jemand eine Ahnung wo ich da noch "schrauben" kann, damit snap7 auf meinem Raspberry läuft?



              Kommentar


                #8
                In welche Python Version/Installation hast Du denn snap7 damit installiert?

                Solange pip3 list Dir snap7 nicht anzeigt, kann auch SmartHomeNG nicht darauf zugreifen.
                Viele Grüße
                Martin

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

                Kommentar


                  #9
                  Hast Du versucht snap7 einfach mit
                  Code:
                  sudo pip3 install snap7
                  zu installieren?
                  Viele Grüße
                  Martin

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

                  Kommentar


                    #10
                    Zitat von Msinn Beitrag anzeigen
                    In welche Python Version/Installation hast Du denn snap7 damit installiert?
                    Ich habe das Image https://knx-user-forum.de/forum/supp...eng-image-file auf einen Raspberry laufen
                    Da ist Python 2.7.13 und Python 3.5.3 installiert
                    In welche Version ich jetzt snap7 installiert habe, kann ich leider nicht sagen.

                    sudo pip3 install snap7
                    liefert mir:
                    Code:
                    Collecting snap7
                      Could not find a version that satisfies the requirement snap7 (from versions: )
                    No matching distribution found for snap7
                    sudo pip install snap7
                    sudo pip2 install snap7
                    liefert mir das gleiche Ergebnis.

                    "pip3 list" zeigt mir snap7 leider nicht an.

                    Vielleicht noch jemand eine Idee?

                    Kommentar


                      #11
                      Nur mal geraten: Kann es sein, dass Du zusätzlich zum snap7-Paket python-snap7 installieren musst?

                      http://lmgtfy.com/?q=snap7+python
                      sudo pip3 python-snap7

                      Wie gesagt, nur geraten ...

                      /tom

                      Kommentar


                        #12
                        python-snap7 ist installiert. (siehe post #1)
                        wird mir sowohl bei "pip list" als auch bei "pip3 list" angezeigt.

                        Kommentar


                          #13
                          Nur mal 'ne blöde Frage: den Python wrapper hast Du installiert, hast Du auch snap7 installiert?

                          Kommentar


                            #14

                            Hat $ sudo add-apt-repository ppa:gijzelaar/snap7 funktioniert? Bei mir nicht, da fand er das paket nicht, hab aber irgendwo gelesen, das man in ner datei die linux version anpassen muss, das er auch das ruchtige paket findet ...

                            Kommentar


                              #15
                              Ich hab´s irgendwie zum Laufen gebracht.
                              Da ich viel probiert habe, kann ich aber nicht sagen was jetzt wirklich zielführend war.
                              Wenn ich Zeit habe, werde ich die Installation noch einmal durchlaufen lassen.
                              Die Ergebnisse werde ich dann hier posten.

                              Kommentar

                              Lädt...
                              X