Schlagwort-Archive: Anfang

Mit dem Generator eine leere hülle erstellen – rechnen mit Python

Um sich die Arbeit etwas zu erleichtern, erstellt der Generator ein Grundgerüst für den Logikbaustein.

Die Hilfe findet ihr unter: „/Entwicklung/Logikbausteine/Schnittstelleninformationen/HSL/HSL SDK 2.0.7/doc_extra/de/gen_xml.html“

Damit der Generator arbeiten kann, erstellt ihr eine XM-Definitionsdatei an. diese muss folgende Grundlagen enthalten:

Die XML-Definitionsdatei legt die grundlegenden Eigenschaften von HSL-2.0 Logikbausteinen fest:

  • Name, ID, Kategorie (zur Verwaltung im Experten und zur Anzeige im GLE)
  • Kontext
  • Anzahl, Bezeichnungen und Typen von Ein- und Ausgängen
  • Anzahl und Bezeichnungen von remanenten Variablen
  • Framework- und Standardmodule, die importiert werden müssen
  • Art des Logging

Ich versuche für mich klein anzufangen und ein XML zu erstellen, welches einen Logikbaustein zum rechnen erstellt. Dafür habe ich mir folgende xml Config erstellt:

<?xml version="1.0" encoding="UTF-8"?>
<config>
   <modules>
     <module category="pythonlesson" context="addition" id="19111" name="Additions Übung" version="v1.0">
       <inputs>
        <input type="number" const_name="input_a" init_value="0">I1</input>
         <input type="number" const_name="input_b" init_value="0">I2</input>
       </inputs>
       <outputs>
         <output type="number" const_name="Ergebnis" init_value="0">O</output>
       </outputs>
       </module>
    </modules>
</config>

Diesen Text erstellt ihr in einer datei „config.xml“ und legt diesen unter „../framework/projects/<Name eures Projekts>“ ab. Geht via Windows CMD in das Verzeichnis des Generators und ruft diesen mit folgendem Befehl auf „python generator.pyc addition utf-8“, wobei addition für den Namen eures Bausteines steht. Danach erstellt der Generator automatisch das Projekt Verzeichnis für den Baustein:

Gira HSL 2.0 Logikbaustein Generator

Gira hilft einem beim entwickeln von Logikbausteinen. Da ich ungern in der Vergangenheit leben möchte, beziehe ich mich hier auf HLS 2.0 und höher. Höher vermute ich, da Python 2.7 Anfang 2021 auch langsam die angedachte Lebensdauer überschreitet und damit ausläuft.

Zitat. „Ende zu: Wie 2015 angekündigt, endet der Support für Python 2 am 31. Dezember 2019.“

Quelle: https://m.heise.de/developer/artikel/Die-Tage-sind-gezaehlt-End-of-Life-fuer-Python-2-4427023.html?seite=all

Zuerst findet man Infos dazu hier: https://partner.gira.de/service/software-tools/developer.html

Dort ladet ihr euch die „Schnittstelleninformationen“ herunter und entpackt sie.

Danach sieht das ganze so aus:

Dort könnt ihr jetzt fleißig in der readme lesen oder gleich ins Verzeichnis Schnittstelleninformationen\HSL\HSL2 SDK 2.0.7\framework navigieren.

Dort befindet sich der Logikbausteingenerator „generator.py“. Wie ihr aus der Hilfe entnommen habt legt ihr im Verzeichnis „projects“ dann ein Verzeichnis für euren Logikbaustein an. Anschließend erstellt ihr eine Datei in diesem Verzeichnis mit den Namen „config.xml“ und füllt diese mit Code.

und so beginnt es…

Hallo und Willkommen auf meinem KNX-Blog.

KNX Blogs gibt es natürlich schon ein paar und ich möchte auch keine News oder ähnliches posten.

Was soll dies dann hier?
Nun, ich habe schon länger eine Idee im Kopf und durch Zufälle hat es sich ergeben, dass ich diese jetzt umsetzen kann und auch auch werde. Was genau, lässt vermutlich schon der Titel verraten, aber wie und wo, das kommt noch..
Aktuell befinde ich mich noch in der Planungsphase. Sammle Ideen und Anregungen. Unterhalte mich mit Kollegen und Herstellern, so wie KNX begeisternden Menschen.

Ein kleiner Vorgeschmack? Aber klar doch:

Zennio und MDT

Gruß

Roman