Ankündigung

Einklappen
Keine Ankündigung bisher.

Fragen eines Neulings / KNX anprogrammieren

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

    Fragen eines Neulings / KNX anprogrammieren

    Hallo zusammen,

    bin neu hier im Forum und möcht mich daher kurz vorstellen.
    Mein Name ist Christian, bin 25 und von Beruf Software-Entwickler im Bereich .NET (C#, VB, Silverlight) und Java. Hab außerdem Erfahrungen mit Datenbanken (Oracle, DB2, SQL-Server).

    So, nun zum eigentlichen Thema:
    Mir geistert seit einiger Zeit die Idee im Kopf herum, später mal ein Bus-System in mein zukünftiges Haus einzubauen.
    Es handelt sich dabei um das Haus meiner Großeltern, d.h. kein Neubau, sondern nachrüsten.
    Vom technischen her habe ich leider nicht soviel Ahnung, aber da zähle ich auf die Hilfe von meinem Vater - der ist Elektro-Techniker.
    Die Programmierung des Bus-Systems würde ich einen spezialisierten Techniker machen lassen.

    Bzgl. Bedienung des Systems hab ich jetzt schon ein paar Videos geschaut und habe bisher zwar einige interessante Oberflächen gefunden, aber nichts, dass mir 100% zuspricht.
    Da ich beruflich Programmierer bin, hab ich mir gedacht ich schreibe mir meine eigene Oberfläche.

    Habe mir das ganze so vorgestellt, dass ich einen Server habe, auf dem eine Software (selbstgeschrieben od. gekauft) läuft, die die Schnittstelle zwischen Bus und Bedien-Oberflächen (Tablets, Handys, PCs) darstellt. Über TCP-Sockets kommuniziere ich dann mit diesem Server und kann einfache Befehle wie "Licht 2 / Wohnzimmer - ein" weitergeben, die der Server dann ans Bus-System weitergibt.

    Mir ist klar, dass das kein Kinderspiel wird, aber ich liebe Herausforderungen

    Jetzt meine Frage(n):

    Bin ich da komplett am falschen Dampfer? Geht das überhaupt so wie ichs beschrieben hab?
    Welche Interface-DLLs gibt es, mit denen man mit dem Bus-System kommunizieren kann? (Erfahrungswerte, Empfehlungen)

    Natürlich programmiere ich ungerne blind drauf los, schon gar nicht bei so einem riesigen Projekt.
    Gibt es Möglichkeiten ein fix fertiges Bus-System zu simulieren (komplett ohne Hardware)?
    Oder kann man sich einen kleinen Versuchsaufbau zusammenbasteln (z.B. ein Lichtschalter, der über den Bus ein- und ausgeschaltet werden kann)

    Viel Text für einen ersten Post, aber ich bin echt neugierig, was die Experten von meiner (verrückten) Idee halten!

    Lg und noch ein schönes Wochenende,
    Christian

    #2
    Zitat von Chris86 Beitrag anzeigen
    Welche Interface-DLLs gibt es, mit denen man mit dem Bus-System kommunizieren kann?
    Hoi Christian

    Es gibt einen eib-daemon eibd. Der läuft auf linux. da kannst Du anknüpfen.
    Was anderes kenn' ich nur als APP auf den iTeilen und vielleicht bald auch auf Android.
    Grüsse Bodo
    Fragen gehören ins Forum, und nicht in mein Postfach;
    EibPC-Fan; Wiregate-Fan; Timberwolf-Fan mit 30x 1-Wire Sensoren;

    Kommentar


      #3
      Zitat von Bodo Beitrag anzeigen
      Hoi Christian

      Es gibt einen eib-daemon eibd. Der läuft auf linux. da kannst Du anknüpfen.
      Was anderes kenn' ich nur als APP auf den iTeilen und vielleicht bald auch auf Android.
      Hi Bodo, danke für die schnelle Antwort!
      Werd mir eibd mal anschauen, hab aber leider null Erfahrung mit Linux.
      Du kennst nicht zufällig noch irgendwelche Windows-DLLs?

      Aso, die Apps kommunizieren also direkt mit dem Bus ohne eine Zwischenstelle?
      Mir wärs am liebsten, wenn alle Oberflächen auf die selbe Weise auf den Bus zugreifen (also über meinen Server). Zu viele Zugriffsarten führen ja meist zu Problemen (gleichzeitiger Zugriff fällt mir da zB ein).

      Kommentar


        #4
        Zitat von Chris86 Beitrag anzeigen
        Aso, die Apps kommunizieren also direkt mit dem Bus ohne eine Zwischenstelle?
        Hoi Christian

        Eine Schnittstelle brauchst Du schon am KNX (TP-UART, IP oder USB).
        Zum freieren programmieren empfehle ich das wiregate, da ist der eibd schon drauf.
        Zitat von Chris86 Beitrag anzeigen
        Du kennst nicht zufällig noch irgendwelche Windows-DLLs?
        Leider nicht, vielleicht ist http://www.ip-symcon.de/service/doku...raussetzungen/
        ja was für Dich.

        Mein Gedanke ist: Ein stabiler linux-24/7-server mit 5W Verbrauch, der Jahre lang durch läuft ist besser, als ein 300W Windows-Bolide, der vielleicht nach dem Update noch so funktioniert wie gewünscht, oder aber auch nicht. (PHP4->PHP5)
        Grüsse Bodo
        Fragen gehören ins Forum, und nicht in mein Postfach;
        EibPC-Fan; Wiregate-Fan; Timberwolf-Fan mit 30x 1-Wire Sensoren;

        Kommentar


          #5
          Bevor du wertvolle Zeit und Energie in ein eigenes Projekt steckst würde ich eher darüber nachzudenken bei einem bestehenden mitzuarbeiten.

          Explizit meine ich hier die Cometvisu, die ist Opensource uns ist vor kurzem in die öffentliche Beta Phase gegangen.
          Wirklich sehr gut gelungen und es wird noch weiter gehen

          Kommentar


            #6
            es gibt auch einen Windows-Bustreiber:
            google füttern mit "m.dehof" der hat ein Projekt - Leibnix genannt- wo er ein ocx geschrieben hat, dass man mit VB(A) ansprechen kann...
            EPIX
            ...und möge der Saft mit euch sein...
            Getippt von meinen Zeigefingern auf einer QWERTZ Tastatur

            Kommentar


              #7
              Hallo Christian,

              willkommen hier im Forum, hier wird Dir sicher geholfen.

              Hinsichtlich Software, APIs und Entwicklungen für den KNX sitzt Du mit Linux in der ersten Reihe. Für Windows gibt es eher wenig, auch weil der Ressourcenbedarf und die Stablität eher schlechter eingeschätzt werden.

              Das was Du suchst, ist in der CometVisu verwirklicht, einem OpenSource Projekt, das von Mitgliedern dieses Forums über die letzten einundeinhalb Jahre entwickelt wurde und nun für die öffentliche Beta freigegeben wurde. Wobei die Stabilität und Funktionalität schon besser sind als der Status "Beta" dies zunächst signalisieren würde.

              Die CometVisu basiert auf Webprotokollen und es reicht ein fast beliebiger Browser - auch auf Smartphones & Tabletts - zur Anzeige und Nutzung - wenn es nicht gerade der IE ist. Und das in Echtzeit (also in lokalen Netzen mit Aktualisierung unter 100 ms).

              Look @ Feel läßt sich über Webstandards auch verändern und wir freuen uns über jeden zusätzlichen Entwickler, der daran weiterarbeiten möchte.

              Werf doch bitte einen Blick in den Thread hier:
              https://knx-user-forum.de/knx-eib-fo...cometvisu.html

              Sowie im Lexikon hier:
              CometVisu - Sonstiges - Lexikon - KNX-User-Forum

              Ein Live Demo des Wiregate Multifunktionsgateways und der CometVisu findest Du hier:
              CometVisu-Client

              glg

              Stefan

              Kommentar


                #8
                Danke für die vielen Stichworte und Links, jetzt hab ich wieder einiges zu lesen!

                Zitat von daviid
                Bevor du wertvolle Zeit und Energie in ein eigenes Projekt steckst würde ich eher darüber nachzudenken bei einem bestehenden mitzuarbeiten.
                Das Problem dabei ist wie gesagt, dass ich mich auf der technischen Seite zu wenig auskenne. Außerdem möchte ich möglichst alles so schreiben wie ich es brauche (d.h. ein paar Dinge nicht offen, sondern hardcoded), dass geht in so einem Projekt nun mal nicht.

                Ich hatte eigentlich gehofft, dass ich mich nicht allzu tief in die Technik einlesen muss.

                Vielleicht sagt ein Beispiel mehr darüber aus, was ich mir vorstelle.

                Beispiel:
                1. Handy, Tablet od. PC schicken Befehl "Wohnzimmer / Licht 1 / ein"
                2. Server fragt Bus-Adresse für "Wohnzimmer / Licht 1" aus DB ab
                3. Server gibt Befehl an Interface-DLL weiter
                  (das soll der einzige technische Berührungspunkt sein; d.h. in die Übersetzung in "Bus-Sprache" muss ich mich einlesen)
                4. Interface-DLL gibt den Befehl ans Bus-System weiter


                Hab leider grad kein Visio bei der Hand, die schnelle Paint-Skizze muss daher genügen:

                ^

                Kommentar


                  #9
                  Geh mal auf die Seite der Konnex, und suche dort nach Falcon Library, Die ist auf Windows Seite etwa das, was der eibd auf Linux Seite ist, also Deine Interface DLL

                  Gruß,
                  Bernd

                  Kommentar


                    #10
                    Zitat von bmx Beitrag anzeigen
                    Geh mal auf die Seite der Konnex, und suche dort nach Falcon Library, Die ist auf Windows Seite etwa das, was der eibd auf Linux Seite ist, also Deine Interface DLL

                    Gruß,
                    Bernd
                    Super, dank dir für den Tipp Bernd! Schaut auf den ersten Blick genau nach dem aus, was ich suche!

                    Hat vielleicht noch jemand eine Idee bzgl. Simulation eines Bus-Systems (komplett ohne Hardware)?
                    Oder evtl. ein kleiner Versuchs-Aufbau zum Testen?
                    (am besten natürlich mit Komponenten, die ich später weiterverwenden kann)

                    Kommentar


                      #11
                      Das Diagramm was du da gezeichnet hast ist eigentlich genau das Konzept der Cometvisu.

                      Was für Systeme hast du dir denn angeschaut?
                      Und was meinst du die sprechen dich alle nicht? Meinst du das Design oder auch das was "unter der Haube" steckt?

                      Ein paar mehr Informationen wären schon nicht schlecht.

                      Von Windows als Server für solche Aufgaben würde ich auf jeden Fall die Finger lassen, Als Arbeitsplatz isses grad so OK, aber nicht als Server, da ist Stabilität oberste Prio, und die seh ich bei Windows kleiner als bei jedem anderen System an, ein Linux dagegen läuft und läuft und läuft und läuft ...

                      Kommentar


                        #12
                        Zitat von daviid Beitrag anzeigen
                        Das Diagramm was du da gezeichnet hast ist eigentlich genau das Konzept der Cometvisu.

                        Was für Systeme hast du dir denn angeschaut?
                        Und was meinst du die sprechen dich alle nicht? Meinst du das Design oder auch das was "unter der Haube" steckt?

                        Ein paar mehr Informationen wären schon nicht schlecht.

                        Von Windows als Server für solche Aufgaben würde ich auf jeden Fall die Finger lassen, Als Arbeitsplatz isses grad so OK, aber nicht als Server, da ist Stabilität oberste Prio, und die seh ich bei Windows kleiner als bei jedem anderen System an, ein Linux dagegen läuft und läuft und läuft und läuft ...
                        Systeme hab ich mir bisher noch keine angeschaut, wie gesagt mir gehts erstmal um die Machbarkeit so wie ich mir das vorgestellt habe. Welche Hardware ich dann einsetze hängt von mehreren Faktoren ab (Zukunftssicherheit, Kosten, Verfügbarkeit, ...).

                        Ich will mich um die Software-Steuerung bis zu dieser "Interface-DLL" selbst kümmern.
                        Das hat u.a. den Vorteil, dass ich die Features und deren Umsetzung selbst bestimmen kann. Außerdem fällt das Debuggen im eigenen Code immer leichter als in Fremd-Code. Das soll also keine Abwertung von Cometvisu o.ä. Projekten sein, aber danach suche ich nicht.

                        Linux od. Windows als Plattform ist für mich eher eine Glaubensfrage. In meiner Firma laufen nur Windows Server 2008 und auch zuhause habe ich eine VM laufen und habe nie irgendwelche Probleme gehabt. Und da ich auch gar keine Linux-Erfahrung / Kenntnisse habe, bleibe ich bei dem was ich kann und kenne.

                        Kommentar


                          #13
                          Hallo Chris,

                          willkommen im Forum.
                          Zitat von Chris86 Beitrag anzeigen
                          ...und Java.
                          vllt ist ja openhab - The OSGi-based Open Home Automation Bus - Google Project Hosting was für Dich. Basiert auf Java.

                          Bis bald

                          Marcus

                          Kommentar


                            #14
                            Hallo Chris,

                            als Buszugriff-Implementierung unter Windows würde ich auch den Falcon empfehlen.

                            Vielleicht wäre auch Elvis 3 etwas für dich? Den Server und auch die Bedienoberfläche kannst du durch eigenen .NET-Code erweitern.

                            Gruß, Klaus (IT GmbH)

                            Kommentar


                              #15
                              Zitat von mknx Beitrag anzeigen
                              Hallo Chris,

                              willkommen im Forum.


                              vllt ist ja openhab - The OSGi-based Open Home Automation Bus - Google Project Hosting was für Dich. Basiert auf Java.

                              Bis bald

                              Marcus
                              Hm, klingt auch interessant. Würde sowieso eher dazu neigen den Server auf Java-Basis zu schreiben. Werd mir das in den kommenden Tagen mal anschauen!

                              Jetzt brauch ich nur noch eine Möglichkeit wie ich den Server dann testen kann. Wie schon geschrieben entweder komplett simuliert od. mit einem kleinen Versuchsaufbau. Hat da jemand was für mich?

                              Kommentar

                              Lädt...
                              X