Ankündigung

Einklappen
Keine Ankündigung bisher.

Mit Delphi und EIBnet auf den EIB-Bus zugreifen...

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

    Mit Delphi und EIBnet auf den EIB-Bus zugreifen...

    Hallo,

    da ich schon vor ein paar Jahren vor meiner EIB-Bus Installation eine kleine Visualisierung meiner Wetter- und Heizungsdaten in Delphi geschrieben hatte, möchte ich nun gerne auch meine Lampen und Jalousien und so weiter vom EIB Bus mit meiner Delphi Visualisierung steuern können. Nun ist meine EIB Installation recht neu und dementsprechend habe ich auch nur noch das Siemens IP-Interface N148/21 bei mir verbaut. Eine extra serielles Interface ist leider nur sehr schwer realisierbar, da der Server in einem extra Raum ohne EIB-Bus ist. Aus diesem Grund suche ich jetzt nach einer Möglichkeit aus meiner Delphi Visualisierung den Status der verschiedenen EIB Geräte auszulesen und diese zu verändern. Bei meiner Suche bin ich bisher schon auf die Java Software calimero gestoßen, die bei mir auch auf Anhieb funktionierte. Mit der kann ich also auch schon problemlos jedes Licht an und ausschalten. Nur jetzt stellt sich mir die Frage, wie kann ich mit meinem Delphi Programm per EIBnet auf den EIB-Bus zugreifen? Oder wie bekomme ich Zugriff auf calimero von meinem Delphi Programm?

    Vielen Dank schon im Voraus und viele Grüße

    Akio

    #2
    Hallo,

    Dafür kannst du EIBD benutzen ( http://www.auto.tuwien.ac.at/~mkoegler/index.php/eibd ). Kompiliert auch mit Cygwin.

    Dann kannst du einfach mit TCP verbindung EIB Telegramme senden und bekommen.
    Wenn du nicht die telegramme kodieren/dekodieren will, kannst du zusätzlich Linknx benutzen und EIB durch XML Antrage (über TCP verbindung) steuern.
    ( http://sourceforge.net/projects/linknx/ )
    ( http://linknx.wiki.sourceforge.net/ )

    MfG,

    Jean-François

    Kommentar


      #3
      Hallo,

      entschuldige bitte, dass ich mich jetzt erst wieder bei dir melde aber leider waren die letzten Wochen bei mir wieder ein wenig streßig. Trotzdem vielen Dank für deine Antwort.
      Da der Umweg über dritte Programme allerdings immer ein wenig störanfällig ist, würde es mich interessieren, ob nicht irgendeiner schon mal mit Delphi und EIBnet auf den Bus zugegriffen hat?

      Vielen Dank schon im Voraus und viele Grüße

      Akio

      Kommentar


        #4
        Es gibt das einen Ansatz inkl. Sourcen unter Windows auf http://www.dehof.de/eib/,
        Vielleicht hilfts Dir weiter, braucht aber auch eine lokale Schnittstelle. Ein Lösung wäre vielleicht eine Moxa o.ä. um den seriellen Port an den Rechner "zu holen"..

        Makki
        EIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
        -> Bitte KEINE PNs!

        Kommentar


          #5
          Eine sehr flexible Lösung wäre auch das:

          https://knx-user-forum.de/showthread.php?t=2456
          Gruß Matthias
          EIB übersetzt meine Frau mit "Ehepaar Ist Beschäftigt"
          - PN nur für PERSÖNLICHES!

          Kommentar


            #6
            .. der Link geht leider nicht mehr. Ich scheitere grade daran, in Delphi den Verbindungsparameter auszulesen. In den Dialog zur Suche der Schnittstelle (IP) bin ich gekommen.

            Kommentar


              #7
              .. habs hinbekommen. Werd aber sowieso jetzt den Pi nutzen. Mal sehen, vielleicht logg ich da ein paar Daten mit Delphi.

              Es funktioniert, wenn man den ConnectionManager rauswirft und manuell einfach die richtige CLSID samt Parameterstring für seine Hardware nutzt. Bei mir ging es zumindest mal im tunneling mode.

              Kleiner Code-Auszug für das MDT SCN IP Interface:

              {13BEC8E3-969D-4604-83F4-5EBF418E54F6}
              m_guidEdi.Data1 := 331270371;
              m_guidEdi.Data2 := 38557;
              m_guidEdi.Data3 := 17924;
              m_guidEdi.Data4[0] := 131;
              m_guidEdi.Data4[1] := 244;
              m_guidEdi.Data4[2] := 94;
              m_guidEdi.Data4[3] := 191;
              m_guidEdi.Data4[4] := 65;
              m_guidEdi.Data4[5] := 142;
              m_guidEdi.Data4[6] := 84;
              m_guidEdi.Data4[7] := 246;

              m_strConnection := 'Name=''MDT KNX IP Interface'';IpAddr=''192.168.178.20'';Port=''3671' ';NAT=''off''';
              Zuletzt geändert von Huntercover; 10.06.2017, 21:00.

              Kommentar


                #8
                Ich reaktiviere mal wieder diesen alten Thread. Kennt jemand inzwischen eine gute Lösung, mit Delphi alle KNX-Telegramme mitzulesen und eigene zu senden? Ideal wäre eine kleine Library mit genau diesen zwei Prozeduren...

                @Huntercover: Du arbeitest noch mit Delphi? Hast du eine Lösung gefunden?

                Kommentar


                  #9
                  vorweg: ja es geht, habe grade mal wieder das alte Projekt ausgegraben:
                  Lesen und Schreiben geht, allerdings nur, wenn man die Gruppenadressen kennt. "GlobalListen" hatte nicht geklappt.

                  Falcon Treiber: Sehr umständliche Installation:
                  https://my.knx.org/de/downloads/falcon
                  (Sichtbar erst nach Anmeldung)

                  Suche mal nach "eteCFalcon" (ergibt installiert bzw. entpackt einen Unterordner "DemoBorlandDelphi")
                  Habe in diesem Beispielprojekt von delphi lange rumprobiert, bis ich eine Verbindung zustande gebracht habe. Siehe post #7: Hab irgendwann mal ein paar Registry-Entrys bei den CLSID's ausprobiert und dann ging es - wie gesagt nur einzelne Gruppenadressen lesen / schreiben. Der build-In Auswahlmanager für die Connection hat nicht funktioniert, probier es mal aus, vielleicht habe ich was offensichtliches übersehen.
                  Ich kenne mich aber mit OLE-Objekten bzw. CLSID auch überhaupt nicht aus..

                  Fazit: eher Finger weg.
                  ich hatte mal die Idee eine Visu mit Delphi zu bauen und dafür dann Win I0T zu nutzen, das tut aber meines Erachtens auf jeden Fall nicht. Ein integrierter Webbrowser bzw ein VLC-Player bekommt man nur schwer hin. Vorteil wäre, dass der Browser in der EXE läuft und man so immer "zurück" kommt.
                  Nur zum mitprotokollieren taugt ein Windows Rechner zwecks hohem Strom meiner Meinung nach nicht.

                  Habe daher als newbie einen Pi eingerichtet (gibt ja massenweise Infos und Hilfen zu Pi und Linux) und mittlerweile läuft alles samt FHEM und SmartVisu auf meinem Touchpanel in der Küche. Ein anderer Pi läuft als Dateiserver, Media-Server und mit owncloud - völlig stabil und ausreichend. Die neuen Pi's haben nochmal mehr Power und auch das Nadelöhr mit 100 Mbit-LAN ist obsolete.


                  Wenn Du wo nicht weiter kommst, lass es mich wissen, ich bin Morgen wieder online..
                  Für was möchtest Du es nutzen?

                  Kommentar


                    #10
                    Zitat von Huntercover Beitrag anzeigen
                    Wenn Du wo nicht weiter kommst, lass es mich wissen, ich bin Morgen wieder online..
                    Für was möchtest Du es nutzen?
                    War eine wilde Hausbau-Zeit... bin jetzt kurz vorm Einziehen und gerade beim Setup meines selbstgebauten KNX-Systems. Ich bin Delphi-Programmierer und möchte gerne mein KNX-System unter Delphi verwenden, also vor allem Visualisierung, aber auch Alarme, Logger, was immer es so gibt. Könnte ich von Delphi aus zugreifen, könnte ich quasi alles realisieren an vollwertiger Software.

                    Schade, dass es keine einfache, simple Schnittstelle gibt, die alle Telegramme als Event ausgibt und eigene Telegramme verschicken kann. Mehr bräuchte man ja bar nicht. Klar, die vielen Datentypen müssten entsprechend kodiert sein.

                    Derzeit denke ich, ich werde es notfalls mal mit Nodered / KNX-ultimate probieren und schauen, ob ich nicht alle eingehende Telegramme an ein TCP/IP oder HTTP weitergeleitet kriege und dann mit meinem Delphiprogramm diese Daten abgreife.

                    Kommentar

                    Lädt...
                    X