Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Ankündigung
Einklappen
Keine Ankündigung bisher.
Umfrage: Interesse an Anbindung von Buderus Heizung an KNX
Gut, der konter hat gesessen
(ja, ich kann auch einstecken!)
Jetzt müss ma nur noch jemanden finden, der ne Buderus hat und das in ner richtigen programmiersprache ohne Oracle oder den Java-döns "liked"
(also sowas wie C, C++ oder C oder C++ - alternativ ginge auch C )
Perl würde ich übersetzen..
Makki
Edit: Xport/Moxa sind Geld-Verschwendung, wenn man sich etwas damit beschäftigen mag, tut der socat mit ein 7EUR Teil daselbe..
Irgendwie hab ich (ohne eigene Buderus) jetzt den Faden komplett verloren..
Also mit Java ist ja schön, aber wo liegt der Sourcecode, damit man das dann auch in funktionierend/richtig machen kann ? ()
Sonst auch ned schlimm, gerne closed, nur sagen, dann ist mein Interesse halt <=0..
Nach der Beschreibung von Nils sieht es nun aber so aus als würde alles von Null an neu programmiert werden ?
Da hattest du wohl ein Wahrnehmungsproblem. Keine Sorge, das kommt unter Informatikern/Programmieren häufig vor. Bitte nicht falsch verstehen, ich gehöre auch zu diesen.
Du hast drei Möglichkeiten (Aus meiner Wahrnehmung ) :
1. Du hältst dich hier raus, da OSS keine Option für dich in diesem Projekt ist.
2. Du gibst Nils den Code von dir und wir bringen das Ganze als OSS gemeinsam zum Fliegen. Da kannst du von mir aus auch gern den Lead übernehmen.
3. Du machst allein an deinem kommerziellen Baustein(en) weiter und hast vermutlich etwas zum Verkaufen, bevor wir hier was produktiv Verwendbares haben. Wettbewerb verbessert das Angebot.
Ich habe hier ein Terminalprogramm (Javaruntime erforderlich) gefunden, mit dem man schon mal sehen kann, welche Werte von der Anlage kommen. Das 3964R ist darin voll gekapselt. Also einfach nur "DD" senden und danach "A2 01" und schon kommen die Werte des ersten Gerätes. Oder einfach nur zuschauen, wie die Monitorwerte des Normalmodus ankommen.
So muß das dann sein
Ist ein super Tip zum testen. Vielen Dank, damit wird einiges schneller gehen.
Ich bin im Moment etwas Verwirrt. Soweit mir das Projekt beschrieben wurde iszt die ganze Kommunikationsprozedur funkltionsfähig, halt eben über serielle Port. Da müsste man dann doch nur eine TCP Schicht einbauen, sprich Socket erstellen und diesen verwenden (ohne proprietäres MOXA Protokoll).
Auch sollten schon einige Bausteine zum Auslsesen der Daten vorhanden sein.
Nach der Beschreibung von Nils sieht es nun aber so aus als würde alles von Null an neu programmiert werden ?
Mein Projekt war ja schon im Juli auf dem Stand (bzw. ist es noch) dass ein Serverbaustein die Daten ausgelesen hat und Beusteine für einige datensätze (z.B. Heizkreise) gab es auch schon. Ich habe das projekt damals eingestellt weil mir gesagt wurde dass dieses Projekt ziemlich auf dem gleichen Stand wäre (eben ohne Moxa).
Ich habe hier ein Terminalprogramm (Javaruntime erforderlich) gefunden, mit dem man schon mal sehen kann, welche Werte von der Anlage kommen. Das 3964R ist darin voll gekapselt. Also einfach nur "DD" senden und danach "A2 01" und schon kommen die Werte des ersten Gerätes. Oder einfach nur zuschauen, wie die Monitorwerte des Normalmodus ankommen.
Ich habe es mit der RS232 und MOXA (Real Com Mode) am Laufen und weiß nicht, ob es auch mit anderen Schnittstellen funktioniert.
Hab gerade gesehen das ich den connect ja noch garnicht aufrufe, sollte aber nicht das Problem sein
Ich werde heute Abend mal sehen das Projekt zu github zu bringen, dann ist das mit Änderungen und so einfacher.
@pmike
Das mit den weiteren Modulen sollte (auch ohne Doku) bei mehreren Bausteinen recht einfach sein.
Ich werde daher den jetzigen Baustein als Server Baustein erstellen, der nichts weiter macht als Daten nach der Prozedur 3964R zu holen, und als hex auf den Ausgang zu schreiben sobald ein Datenpacket vollständig ist.
Dann kann jeder danach Baustein nach einer ersten Vorlage erstellen, in der eigentlich nur die Datenpunkte je Modultyp ausgeführt werden.
Hallo Nils,
schön, dass du Bewegung rein bringst und danke für den ersten Output.
Nach meinen Erkenntnissen ist die Beschreibung der Daten von 1/2009 nicht mehr ganz aktuell. Ich habe ein Modul, dass mit der Nummer 18 (0x12) kommt und gar nicht in der Liste ist. Dazu bekomme ich 60 Bytes Daten vom Typ 0x9A, der auch nicht auftaucht. Ich versuche gerade über Buderus eine Aktualisierung zu bekommen ... mal schauen. Falls da jemand schon weiter ist: Her damit!
Die Vielzahl der Daten spricht IMHO für eine Zusammenfassung in Einzelbausteinen. Mich interessieren z.B. in der Hauptsache Details zu Fehlern, die vom EIB Modul sinnlos als "SammelStörung" gemeldet werden, wie z.B. zu niedriger Wasserdruck. Andere wollen sicher genau die Heizkreise und Warmwasser überwachen usw. Möglicherweise ist XML noch besser, aber da fehlt mir die Erfahrung, wie die Daten dann weiterverarbeitet werden können. Wahrscheinlich ist es flexibler für so viele Kombinationsmöglichkeiten der Module, Steuerungen und Kessel. Aber wie verarbeitet man ein XML Output in einer HS Logik weiter.
Matthias hat das 2009er Dokument in dem Thread schon mal gepostet, was alle lesen sollten, die an diesem Baustein(en) interessiert sind: "Entdecke die Möglichkeiten"
Beim Testen helfe ich gern (MOXA, RS232, Bud-Hzg. mit 6 Modulen in zwei Geräten). Meine Phyton-Kenntnisse sind allerdings auf sehr niedrigem Niveau. Da bräuchte ich wiederum jemand mit Verständnis. Komme halt aus der anderen Welt (C#; Powershell).
zum _recv()
nach dem Verbindungsaufbau kannst du die Daten auch auf einmal auslesen.
Würde so wie ich es vorgesehen habe für jeden Typ einen eigenen Baustein machen, aber das ist nur ein Vorschlag und ob das besser ist kann ich nicht beurteilen...
Hier mal ein erster Ansatz, der enthällt bisher noch nicht viel.
Hauptsächlich sollte man mit dem resultierenden Baustein lokal mit dem LogikDebugger das Protokoll erforschen.
Ich hab das jetzt mal so vorbereitet das MOXA (TCP/UDP) als auch Seriell gehen. Dafür einfach Eingang 1 mit IP:PORT oder Com1 und Eingang 2: 0 = seriell 1 = TCP 2 = UDP.
Ich habe einen Teil der Monitor Typen schon als dict hinzugefügt. Aber bei dieser unmenge von Möglichkeiten müssen wir uns dann auch Gedanken machen, wie man diese Daten brauchbar (ohne 250 Ausgänge) ausführen kann (evtl. XML).
Wenn jemand mit RS232 oder Fernwirkmodem und Moxa das mal funktionsfähig machen könnte, sodass Daten ankommen.
(Testen ob mit _recv(1) jeweils immer nur das nächste Byte gelesen werden muss, oder ob auch ganze Packete im Stück gelesen werden können)
Wenn das soweit funktioniert (lokal / HS kommt dann später) dann werde ich Klassen oder Funktionen für die jeweiligen Monitortypen anlegen die die Daten erstmal Baustein intern verstehen (alternativ könnte man auch für jeden Typen ein eigenen Logikbaustein machen)
Ich bitte daher um Anregungen wie ihr das haben wollt.
PS: Alfred bitte bitte gib doch auch die Dateiendung .py frei
Das ist ja genial ! Vielen Dank für die Infos zum 446. Mein eher konservativer Heizungsinstallateur kannte bei meiner letzten Anfrage noch kein Buderus EIB Modul für die Logamatic 4000. Wenn jetzt noch das HS Modul kommt.... das wäre Weihnachten und Ostern an einem Tag. Leider kenne ich mich mit dem Bändigen von Bits und Bites im Einzelnen oder gar Linux gar nicht aus, aber wenn ein spielfähiges HS Modul auch in der Versuchsphase mit dem 446 kommunizieren würde, könnte ich gerne testen und meine Erfahrungen berichten. (3 Heiz- und 1 Warmwasserkreis im Wohn- und Geschäftshaus)
Beste Grüße an die Gemeinde.
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Einen Kommentar schreiben: