Ankündigung

Einklappen
Keine Ankündigung bisher.

HS Logik Generator und Debugger

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

    #31

    du meinst so wie der befehl 'names'
    Nils

    aktuelle Bausteine:
    BusAufsicht - ServiceCheck - Pushover - HS-Insight

    Kommentar


      #32
      Genau so!
      ECMACOM GmbH
      Konzeption, Planung, Implementation, Unterhalt
      www.ecmacom.ch
      www.knxshop4u.ch

      Kommentar


        #33
        V2.012

        So V2.012 ist im DL-Bereich

        https://knx-user-forum.de/downloads.php?do=file&id=390

        das Registrieren der Rechtklick Erweiterung geht mittels
        Code:
        python LogikGen.py --register
        Der LogikGen.py kann sich dabei in jedem beliebigen Verzeichniss befinden
        Die .hsl Dateien werden mit dem bei der Registrierung verwendeten Python Version registriert.

        Danach kann im Kontextmenu einfach Debug ausgewählt werden.
        Nils

        aktuelle Bausteine:
        BusAufsicht - ServiceCheck - Pushover - HS-Insight

        Kommentar


          #34
          Update auf 2.013

          ## 2.013 * diverse HS interne Objekte hinzugefügt
          ## * überwachung von AC[x] auf änderungen
          ## * __import__ gegen Funktion ausgetauscht um hs interne Module zu imitieren
          ## * KO Gateway Verbindung timeout geändert
          ## * eingaben string-decode um zum Beispiel bei EN[1]="d100=1\x03" das Steuerzeichen hex 03 zu senden
          ## * Fix Ausgang beim internen schreiben über SetWert des iko
          ## * --register nun je Python Version (Debug 2.4/Debug 2.6)

          https://knx-user-forum.de/downloads.php?do=file&id=390
          Nils

          aktuelle Bausteine:
          BusAufsicht - ServiceCheck - Pushover - HS-Insight

          Kommentar


            #35
            Danke Nils,
            wie immer perfektes Timing,
            da ich grad mal wieder am "programmieren" bin.

            Kommentar


              #36
              Hallo Nils,
              ich glaub ich hab einen kleinen Bug im Logic Genarator gefunden

              Die Ausgänge lassen sich nur bis zum vorletzten AN[n-1] beschreiben.
              als Workaround hab ich einfach einen mehr angelegt als benötigt.

              also:
              Code:
              # Ausgänge
              5004|1|""|0|1|1 #* Status
              5004|2|0|0|1|0 #* Modus
              5004|3|0|0|1|0 #* Timermodus
              5004|4|0|0|1|0 #* Reserve
              
              ..........
              AN = localvars.get("AN")
              AC = localvars.get("AC")
              ...........
              if int(_response[-4:],16) == 0:
                                    print "Timer: an\n"
                                    AN[3] = 1
                                    AC[3] = 1
              elif int(_response[-4:],16) == 1:
                                    print "Timer: aus\n"
                                    AN[3] = 0
                                    AC[3] = 1
              .............
              AN[3] lässt sich nur beschreiben wenn AN[4] vorhanden.
              Ich hab auch mal AN[0] versucht, falls die Zählung bei 0 beginnt, dieser existiert aber auch nicht.

              Gruß
              Wolfgang

              Kommentar


                #37
                Sorry Wolfgang, musste mir wohl erst selbst vor der Nase herlaufen :P

                https://github.com/knxuf/HS-Logikdebugger

                liegt jetzt auch auf Github
                Nils

                aktuelle Bausteine:
                BusAufsicht - ServiceCheck - Pushover - HS-Insight

                Kommentar


                  #38
                  Danke, ich hatte ja einen Workaround, deshalb nicht schlimm.
                  Ich bin einfach nur froh dass es den Debugger überhaupt gibt.

                  Kommentar


                    #39
                    Bausteinprogrammierungs Tipps

                    Ein paar Tipps um das Leben beim Baustein entwickeln leichter zu machen.

                    Code:
                    * c:\python24;c:\python26 zum Pfad hinzufügen (Eigenschaften von Arbeitsplatz - Erweitert Umgebungsvariablen : path)
                    * c:\python24\python.exe kopieren nach c:\python24\python24.exe
                    * c:\python26\python.exe kopieren nach c:\python26\python26.exe
                    * in C:\users\du\sendto eine Vernknüfung mit Namen Logik-2.6 nach C:\users\All Users\Dokumente\HS+FS Experte 2.6\logic anlegen
                    * in C:\users\du\sendto eine Vernknüfung mit Namen Logik-2.10 nach C:\users\All Users\Dokumente\Gira\HS+FS Experte 2.10\logic anlegen
                    * python24 LogikGen.py --register
                    * python26 LogikGen.py --register
                    Danach könnt ihr.

                    einfach python24 10010_euerbytecode.py aufrufen (oder eben mit python26 für den HS4)
                    jede .hsl Datei per Rechtsklick im Debugger mit python 2.4 oder 2.6 starten
                    .hsl Dateien per Rechtsklick -> senden an -> Logik-2.x direkt in den jeweiligen Experten Ordner kopieren.
                    Nils

                    aktuelle Bausteine:
                    BusAufsicht - ServiceCheck - Pushover - HS-Insight

                    Kommentar


                      #40
                      Update im Git
                      -l bzw --log logikout.txt als neue Option hinzugekommen um alle Ausgaben in eine Datei zu schreiben
                      Nils

                      aktuelle Bausteine:
                      BusAufsicht - ServiceCheck - Pushover - HS-Insight

                      Kommentar


                        #41
                        Danke!

                        Kommentar


                          #42
                          noch mal Fragen zu: Logik-Debugger von NilsS

                          Moin die Herren,

                          mal schauen ob Ihr noch hier in das Themareinschaut!!
                          Habe mich mit Nils seinem Logik-Debugger beschäftig und sogar zum laufen gebracht!!!
                          War für mich als Laie nicht ganz so schnell umzusetzen.
                          Nun noch einmal ein paar Verständnisfragen:

                          1) Ich habe irgendwie aus dem Thema gelesen, dass die Python Version 2.4 für den HS bis 3 ist
                          und Version 2.6 für den HS 4 ist. Ist das so??? Hab den HS4 und mit der Version 2.4.4
                          meinen Baustein getestet und es geht.

                          2) In der Datei: LogikGen.config denke ich (so habe ich es gemacht) werden die Eingänge/
                          Vorgaben gemacht, bzw. Werte eingetragen. Hier muss ich jeden Baustein den ich Testen will
                          Eintragen, mit der Bausteinnummer vorweg?

                          3) In der Datei: LogikGen.config taucht unter [kogw] eine IP und ein Port auf. Das ist denke ich
                          nicht der HS. Sondern?

                          4) In der aktuellen Version von Nils ist die Datei : LogikGen.config nicht vorhanden, ich habe
                          die Datei im Thema in einer älteren Version gefunden, und es geht halt. Ist die Datei
                          Versionsunabhängig?

                          Also DANKE für eure Antworten!! (wenn welche kommen!!!)
                          Dieter

                          Kommentar


                            #43
                            1. Heißt ja nicht, dass 2.4 nicht mehr geht.

                            2. Nur erforderlich, wenn man das KO-gateway nutzt, um den baustein live zu testen

                            3. Das IST der HS, KO-Gateway.

                            4. ja
                            Gruß Matthias
                            EIB übersetzt meine Frau mit "Ehepaar Ist Beschäftigt"
                            - PN nur für PERSÖNLICHES!

                            Kommentar


                              #44
                              Hi Nils und Matthias,

                              ich hab mir die Python-Entwiclkungs V2.4.4 und V2.6.6 eingerichtet.
                              Alle Tips von dir Nils habe ich auch durchgeführt!
                              Reg-Einträge sind vorhanden, Umgebungsvaribale auf beide Verzeichnisse sind auch da. "send to" habe ich auch gemacht und kann ich auch auswählen. Kopie der Python.exe nach der version auch.
                              Wenn ich python24 auf der cmd aufgrufe bekomme ich die schell (2.4.4) alles so weit ok!

                              Wenn ich den Aufruf normal mache "c:\python26\python26 LogikGen.py -d -i "d:\mein-Logikbaustein.hsl" geht alles!!!

                              Jetzt kommt mein Problem.
                              Wenn ich das so schick wie Du Nils es schreibst aufrufe (Bsp. python24 "d:\mein-logibaustein.hsl") dann bekomme ich einen Fehler (siehe Anhang).



                              Und wenn ich im Explorer die Dateien-hsl mit dem Python verbinde und doppelklicke, dann kommt kurz ein Fenster hoch und wird sofort wieder geschlossen. Wo liegt hier der Hunde begraben? Wäre über einen Rat sehr dankbar!!! Ich komme nicht drauf!

                              Übrigens vielen Dank für Deine Arbeit!
                              Vielen Dank und Grüße


                              Andy

                              Kommentar


                                #45
                                …als Anfänger mal eine Vermutung: Logikbaustein hat einen Fehler?

                                Nabend, als blutiger Anfänger kann ich nicht viel sagen, nur so viel: Als ich meinen Logikbaustein mal mit NilsS seinen Logik- Debugger getestet hatte,
                                hatte ich die zwei Umgebungsvariable getestet und es ging halt.
                                Als ich dann mal sehen wollte wie ein Fehler sich auswirkt (kurz eine Klammer weggelassen), hatte
                                ich gesehen, dass sich kurz das Fenster öffnet und dann gleich wieder schließt (mit rechtklick auf den Baustein und Debug ausführen).
                                Aber nur als Vermutung!!! (hoffe ein Profi hat noch eine bessere Antwort!!!)
                                Dieter

                                Kommentar

                                Lädt...
                                X