PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Converter ETS3 -> Eibcontrol xml Format



OP76
19.11.05, 09:52
Hi Leute,

Wie ich schon mal hier im Forum geschrieben habe, hat ein Freund ein Haus das er gerne Visualisieren würde. Nach der Suche - was ist eigentlich EIB und wie stellt man sowas an, bin ich auf ein paar interessante ansätze gestossen. Dabei waren die komerziellen Produkte nie eine Lösung wert für mich, weil
1. Muss man das zeug ja kaufen und weiss nicht mal ob es das kann was man braucht und
2. Hat man nach dem Kauf noch immer keine Ahnung wie man das Zeug programmiert.

Nun hab ich mich zwischen den zwei Projekten der TU Wien und EibControl entscheiden müssen und da bei der TU Wien man auf Linux beschränkt ist, hab ich mich für EibConrol entschieden, da man das eigentlich auf jedem Betriebssystem kompilieren kann.

Nun das elementare Problem, wie bekommt man eine Eibinstallation mit 118 Geräten in das XML Format von Eibcontrol. Alles abtippen ist eine heiden Arbeit und es gibt ja eh eine DB worüber man das auslesen kann.

Nun mal zu meinem Wissensstand (ETS3):
- Die EiB DB ist eine SyBase SQL Anywhere Datenbank.
- Diese ist über ODBC immer ansprechbar mit Username: Guest und Passwort Guest.
- Die Gruppenadressen kann man von dort direkt exportieren mit bzw sich mal anzeigen lassen mit der SQL Query: Select ID, Name, MainGroupAddress, MiddleGroupAddress, Address from delta.GroupAddresses order by MainGroupAddress, MiddleGroupAddress, Address
- Nun meine Fragen zu ETS3 (ich muss zugeben, der Freund hat mir das Zeug auf seinem Lappi in die Hand gedrückt und gesagt spiel dich mal und ich kenn mich damit noch fast nicht aus - bin aber auch nicht unwissend auf dem Gebiet der EDV)
- 1. Wo findet ich den EibTyp in der Oberfläche?
- 2. Wo finde ich die min und max werte des Gerätes?
- 3. Kann ich beim aktuellen Wert im XML Format immer 0 rein schreiben oder muss ich da noch auf etwas achten - weil Auslesen kann ich diesen Wert nicht aus der Datenbank - wird ja von ETS in echtzeit ausgelesen und zu diesen Daten komm ich somit nicht. Muss später von Eibcontrol gesetzt werden.

Vielleicht kann mir jemand mit Screenshots bei den Problemen weiterhelfen. Wenn ich mal alle diese Fragen und Daten in der DB gefunden habe, schreib ich einen converter, der dass dann automatisch zusammen sammelt.

Dank euch schon mal für eure Antworten.

lg aus Wien

Alex

???
19.11.05, 11:04
Die TU Wien hat mehrere Bausteine. Calimero läuft auf Basis Java und damit OS unabhängig. Kauf Dir ein Siemens IP Interface N 148/21 und Du kannst mit Calimero von jeder VM, die via TCP/IP kommunizieren kann den EIB lesen und schreiben!

Mit Calimero braucht der Self-IT-ler keinen Homeserver oder kein Schlaps ASCII Terminal mehr.

Roland

OP76
19.11.05, 11:13
Dank dir für deine Antwort, aber die Schnittstelle der TU Basiert doch auf einem EIB Treiber der in den Kernel eingebunden wird. Die anderen Eckdaten sind, dass er einen Windows Server dort stehen hat, für div. Aufgaben und einfach den Webserver für die Visualisierung auch noch drüber betreiben will. Auf der TU-Seite steht ausserdem zu der Sache:

tuwien.auto EIB-Linux Device Driver Suite


BCU1/PEI 16 - Original distributions for kernel 2.2 (http://www.auto.tuwien.ac.at/%7Eberndth/eib/index.html) and kernel 2.4 (http://www.auto.tuwien.ac.at/eib4linux/bcu1-2.4.html) with additional tools, updated/modified versions for kernels 2.4 and 2.6 (http://www.auto.tuwien.ac.at/%7Emkoegler/index.php/eibdriver) (illustration of protocol state machine) (http://www.auto.tuwien.ac.at/Projects/hba/bcu1.gif)
BCU2/PEI 10 - kernel 2.2 (http://www.auto.tuwien.ac.at/eib4linux/bcu2.html)
TP-UART - for standard 2.6 kernels (http://www.auto.tuwien.ac.at/Projects/hba/tpuart-0.04a.tgz) with state monitoring and resilience features (updated/modified version) (http://www.auto.tuwien.ac.at/%7Emkoegler/index.php/eibdriver)
TP-UART - RTLinux 3.1 and MiniRTL version for stable performance under high bus load (http://www.auto.tuwien.ac.at/eib4linux/tpuart.html)
d.h. für mich, dass diese Driver wieder nur unter Linux mit dem Kernel 2.2 und 2.4 laufen. Da bin ich mit einer eigenen Anwendung wie eibcontrol doch flexibler oder irre ich?

???
19.11.05, 21:36
Calimero benötigt nur einen EIBnet IP Tunnel. Deswegen habe ich die Siemens IP Schnittstelle empfohlen. Das ist die günstigste Möglichkeit um mit TCP/IP auf den EIB zu kommen.

Calimero kann dann direkt mit dieser Schnittstelle via Sockets kommunizieren. Und Calimero ist Pure-Java und damit absolut betriebssystemunabhängig. Ich selbst habe das auf einem Windowsrechner im Einsatz.

Die Linuxtreiber benötigt man nur, wenn man keine EIB/IP Schnittstelle hat. Dann kann eibd oder Tweety (ebenfalls beides TU Wien) diese Schnittstelle softwareseitig und Linux Basis bereitstellen. Auf einer Standard EIB RS 232 Schnittstelle.

Die Anwendungssoftware kann aber auch dann natürlich unter Windows laufen.

Roland

OP76
19.11.05, 21:38
Und was kostet diese IP Schnittstelle und muss man dann noch irgendwie die EIB Daten vom ETS in eine Datenbank für Calimero importieren oder braucht man dafür nicht? Die Docu zu Calimero ist ein bisserl spärlich.

RaK
19.11.05, 23:14
Und was kostet diese IP Schnittstelle und muss man dann noch irgendwie die EIB Daten vom ETS in eine Datenbank für Calimero importieren oder braucht man dafür nicht? Die Docu zu Calimero ist ein bisserl spärlich.

OP76: 190 Euro bei eibmarkt

All: dort findet sich ein HInweis den ich nicht ganz verstehe:
Der ETS3 Treiber unterstützt derzeit noch nicht die Funktionen Busmonitor und Download in das lokale Gerät. Beim Versuch eines lokalen Downloads in die IP Schnittstelle N148/21 erscheint folgende Meldung: "Inkompatible BCU-Version $091A (erforderlich $0012)".

Heisst das, dass man ueber die ETS und diese IP Schnittstelle die Anlage NICHT programmieren kann? Was bitte ist ein "lokaler Download"? Oder heisst das, dass man alle anderen Geraete am Bus programmieren kann, aber die IP Schnittstelle selbst nicht?

???
20.11.05, 01:10
Calimero ist nur ein Basisset von Klassen, die mit Java den Zugriff auf den Bus ermöglichen. Es ist keine fertige Visualisierung. Ein kleiner Busmonitor und Telegramm Reader und Writer wird im Sourcecode als Demonstrator mitgeliefert. Das reicht eigentlich, um in das Thema reinzukommen. Ein wenig Debuging reicht.

Damit stehen einem alle weiteren Möglichkeiten, die Java bietet offen. Beispielsweise der online Zugriff auf die ETS Sybase DB ohne Import/Export.

Ich arbeite jetzt seit 2 Wochen mit Calimero. Eine erste Visualisierung mit Logik für simple Szenen steht. Calimero hat zugegebenermaßen noch Bugs. Die sind aber typischerweise leicht selbst beheben und wenn nicht, ist der Author, bisher zumindest ;-), sehr hilfsbereit.

Calimero ist unter der GNU General Public License.

Ich denke, über kurz oder lang, wird sich aus damit aus der OpenSourceSzene ein ernster Konkurrent zu HomeServer und Co. erwachsen.

Roland

Busfehler
20.11.05, 02:55
@???

Hi

das mit der Datenbank würde mich auch noch interessieren. Hat man schreib und lese Zugriff. Was muss genau installiert sein. Gebe zu das ich mich nocht nicht mit Calimero beschäftigt habe. Gibt es eigentlich noch eagle. Ist bei Calimereo ein tut oder Beispiel Code für den Zugriff auf die Database. Ich weiß viele Fragen. Leider habe ich auch noch nie mit Java programiert und werde mir sicherlich schwer tun aber muss ich jetzt durch. Du würdest mir sehr helfen. Vielen Dank schonmal.

Busfehler

RaK
20.11.05, 08:13
Eine schoene Praesentation ueber Calimero und die anderen Arbeiten der TU Wien findet sich unterhttp://www.auto.tuwien.ac.at/Projects/hba/knx05-access.pdf

Es gibt sogar eine LiveCD basierend auf Knoppix namesn KNXLive!

http://www.auto.tuwien.ac.at/Projects/hba/knxlive.html

Wer einen Rechner mit einem BCU1 Serial Interface hat legt die CD rein, bootet von ihr und kann alles gefahrlos mal ausprobieren. Wenn ich nur mein Häuschen schon haette ;).

Bits&Bytes
20.11.05, 12:25
Hallo Busfehler,

nein du kannst nicht in die Sybase DB schreiben. Du kannst nur die Daten auslesen. Wenn du die richtigen Stellen weißt kannst di fast alle Info`s dort auslesen. Zum Betrieb eine Visu oder ähnliches brauchst du ja auch nicht schreiben sondern lediglich die Parameter auslesen.

mfg
Bits&Bytes