Ankündigung

Einklappen
Keine Ankündigung bisher.

c# Verbindung zu KNX

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

    c# Verbindung zu KNX

    Hallo,
    Ich bin neu hier im Forum. Ich suche irgendwie ein Beispiel Projekt.
    Das ich eine Verbindung von C# zu meinem KNX System erzeugen kann.
    Ich habe mir die Falcon Bib angeschaut, suche eventuell eine etwas bessere Anleitung, Code Schnipsel oder eine Wiki Seite.
    Desweiteren habe ich mir die KNXLib angeschaut, habe dort das Problem, dass diese sehr beschränkt ist.

    Der Projekt Plan sieht vor eine Applikation zu schreiben, die auf einem kleinen Windows PC läuft.
    Die ausgelesene Daten sollen in eine SQL Datenbank geschrieben werden.
    Auf die SQL Datenbank, soll mit einem Webinterface zugegriffen werden.

    Meine Schnittstelle zum KNX System ist ein GIRA IP-Router 216700.

    Zielframework:
    .NET Framework 4.6.1
    Compiler:
    Visual Studio Enterprise 2017

    #2
    Kann man den Post verschieben, habe diesen ausersehen im falschen Thread gepostet.

    Kommentar


      #3
      Warum bist Du auf C# aus? Java oder Python sind da deutlich weiter. Alternative wäre Docker mit KNXD den Du per Socket ansprichst...

      Hier ist auch noch was: https://github.com/lifeemotions/knx.net
      Zuletzt geändert von jentz1986; 11.12.2018, 16:53.

      Kommentar


        #4
        Laut https://www2.knx.org/lu-de/software/...eber/index.php unterstützt das Falcon SDK C#.

        Desweiteren bringt die Forensuche Folgendes zutage: https://knx-user-forum.de/forum/%C3%...-programmieren

        Kommentar


          #5
          Weil ich C# programmieren kann. Es gibt wirklich viele coole Sachen die man in C# machen kann. Was das große ganze Programm angeht. Wie Oberflächen mit WPF machen oder halt SQL ist eigentlich auch ziemlich easy damit. In Java und Phyton müsste ich mich erst intensiv beschäftigen, dann wieder ein arbeiten. Dazu habe ich ehrlich gesagt nicht so die große Lust.

          Ja danke für den Beitrag den habe ich auch schon gefunden. Ich dachte es gibt irgendwo ein Geheimes Wiki oder so. Wenn man bei Microsoft was über C# sucht gibt es für ziemlich viele Sachen halt auch schon Lösungen. Die man auf seine Bedürfnisse anpassen kann. So eine Seite in der Art habe ich mir erhofft.

          Kommentar


            #6
            Also vorab: Ich habe viele Azubis und Kollegen mit WCF/WPF/LINQ/Rx geärgert. So dass sie nachher gesagt haben: „Mensch, das ist ja Super easy und sieht gut aus.“ Vernünftige Architektur vorausgesetzt.
            Aber genau da sehe ich das Problem hier. Du müsstest unglaublich viel Boilerplate Code basteln, bevor Du Dich sn Business Logik machen kannst. It‘s all there, use it! Ich hasse Java mittlerweile, aber wenn es Anwendungsfall XY erfordert, dann bitte. Ich kann mich nun genau durch solche Fragestellung halbwegs sicher durch 10-14 Sprachen bewegen. Letztendlich: kennst Du eine, kannst Du alle. Entscheidungskriterium Nr. 1: Wo ist das Beste Framework für meinen Abwendungsfall.
            Was ist denn der Zweck Deiner Software? Und: ist der Pi nicht billiger im Stromverbrauch als der PC?

            Kommentar


              #7
              Und: Python beisst nicht, ganz im Gegenteil! Das sind Würgeschlangen...

              Kommentar


                #8
                Es gibt mittlerweile das Net Core was auf C# passiert denke ich. Zumindest lehnt es sich an, muss aber noch anders funktionieren. Dieses Plattform ist Betriebssystem unabhängig und läuft auch auf android und PI.

                In meinem Buch steht auch schon eine komplett fertige Phyton Lösung drin.
                Es war auch mehr aus sportlichem Sinn, alles in C# zumachen. Damit etwas besser noch mit dieser Sprachen zurecht kommt. Habe auch noch 3-4 Monate Zeit, bis ich die erste Elektrik mache.

                Kommentar


                  #9
                  .Net ist eine Plattform für mehrere Sprachen, im Gegensatz zu Java das eine Sprache für mehrere Plattformen ist. Es gibt auch Python auf .Net (IronPython). Und .Net Core ist wahrscheinlich eher in C++ geschrieben. Bis auf den Managed Teil. Der ist zusammengewürfelt aus allen .Net-Sprachen und dann in IL übersetzt.
                  Der IL-Code, der bei .Net generiert wird läuft auf mehreren Plattformen, dank einer portierten CLR (mittlerweile).
                  Problematisch ist das Framework, das immer wieder Aufrufe in den unmanaged Code von Windows macht. Das bekommt man performant (Grafik und co.) nur schwer Plattformunabhängig hin.
                  Daher Vorsicht: Was ist C# und was ist .Net Framework. Das ist nicht das gleiche.

                  Welcher Teil fehlt bei Dir noch zur Lösung C# an KNX?

                  Kommentar


                    #10
                    Ich wollte eigentlich nur wissen, ob es noch andere Wiki oder halt andere Bibliotheken gibt. Es fehlt mir die Bus Kommunikation. Ich habe gedacht, wenn man den Teilnehmer Adressen gibt, kann man mit einer C# Bibliothek diese direkt abfragen. Ob diese geschaltet haben oder halt auch diesen Wert zuweisen.

                    Kommentar


                      #11
                      Ich bin mir gerade nicht sicher, ob ich Dich richtig verstehe. Aber nach meiner Interpretation Deines Posts müsste ich Dich jetzt fragen ob Dir bewusst ist, das KNX anders tickt als Ethernet...
                      Wenn dem so ist, dass Du keine Erfahrungen mit KNX hast, dann rate ich Dir, dass Du diese erstmal bei fertigen Lösungen sammelst, bevor Du anfängst in Hardware-fernen Hochleistungssprachen zu programmieren.

                      Also nochmal anders: Was weißt Du über KNX?

                      Kommentar


                        #12
                        Die KNX Busteilnehmer müssen erst zwingend mit ETS geladen und paramietriert werden (es existiert kostenloser Demoversion), bevor diese auf dem KNX Bus kommunizieren.

                        Nach Parametrierung der Geräte mit ETS, kannst Du C# Programm entwickeln und verwenden, um z.B. auf dem Bus zwischen den KNX-Geräte ausgetauschte Telegramme zu beobachten, oder eigene Telegramme vom PC aus auf dem Bus zu senden.
                        Zuletzt geändert von xrk; 13.12.2018, 10:30.
                        Winston Churchill hat mal gesagt: "Ein kluger Mann macht nicht alle Fehler selbst. Er gibt auch anderen eine Chance.“

                        Kommentar


                          #13
                          Zitat von Lars210393 Beitrag anzeigen
                          Ich wollte eigentlich nur wissen, ob es noch andere Wiki oder halt andere Bibliotheken gibt. Es fehlt mir die Bus Kommunikation. Ich habe gedacht, wenn man den Teilnehmer Adressen gibt, kann man mit einer C# Bibliothek diese direkt abfragen. Ob diese geschaltet haben oder halt auch diesen Wert zuweisen.
                          Du musst die Teilnehmer in der ETS mit Gruppenadressen verknüpfen. Dann kannst du die Gruppenadressen auslesen. Beim Falcon ist dazu ein Beispiel dabei.

                          Kommentar


                            #14
                            Genau so habe ich mir das jetzt auch gedacht. Ich weiß ja jetzt das man sich an die beiden Bib halten kann. Falls es fertig werden sollte würde ich es wohl hier im Forum vorstellen, falls nicht würde ich auf eine fertige Lösung zurück greifen.

                            Kommentar

                            Lädt...
                            X