ELV FHT80b und FHT1300PC Heizungssteuerung

Antworten
dimmi
Beiträge: 7
Registriert: Samstag 28. August 2010, 14:14

ELV FHT80b und FHT1300PC Heizungssteuerung

Beitrag von dimmi » Samstag 28. August 2010, 14:19

Hallo Forum.

Ich bin neu hier und erbärmlicher Anfänger in Bezug auf ProfiLab.
Natürlich habe ich mich gleich in ein recht abenteuerliches Projekt gestürzt.
Ich möchte alle meine im Haus verbauten Steuerungen über ProfiLabExpert visualisieren und diverse Sachen natürlich auch steuern.

Eingesetzt habe ich zur Zeit einige digitale I/O-Module, analoge I/O-Module, Zählmodule und Module zu Temperaturerfassung der Firma Wiesemann und Theis. Die Einbindung der Funktionen geschieht hier über einen OPC-Server. Funktioniert bei mir gnadenlos einwandfrei.

Als nächstes möchte ich meine ELV Heizungsregler FHT80b in PL einbinden. Dafür habe ich mir ein Modul FHT1300PC besorgt und dieses zum Testen seriell mit meinem Testrechner verbunden. Über ein Terminalprogramm kann man hier schön sehen, was das Teil für Daten empfängt. Mit Hilfe von http://fhz4linux.info/tiki-index.php?pa ... 0+Protocol konnte ich mir die passenden Daten heraussuchen.

Beispiel:

810C04EC0909A0015041420069FD - Dies ist der Temperaturwert eines meiner Regler, hier 25,3°C ( FD -> 253 / 10 -> 25,3°C )
810C040A0909A00150410000A666 - Dies ist der aktuelle Wert des Stellglieds, hier 40% ( 66 -> 102 / 2,55 -> 40% )
Das zweite Byte steht hier für die Anzahl der noch folgenden Bytes innerhalb dieser Übertragung.

Doch wie bekomme ich diese mit PL verarbeitet?

Der Datenstrom müsste hier irgendwie in die einzelnen Bytes zerlegt werden. Die einzelnen Bytes müssten bewertet und entsprechned verrechnet werden. Ist so etwas mit PL möglich, oder muss ich mir hier noch einen µC-basierten Konverter basteln?

Ich hoffe auf eine gute Idee von Euch...

KAKTUS
Beiträge: 651
Registriert: Samstag 18. Oktober 2008, 21:12

Re: ELV Heizungssteuerung FHT80b und FHT1300PC in ProfiLab

Beitrag von KAKTUS » Samstag 28. August 2010, 15:38

Das sollte gehen.

Nehme erstmal Bauteil Comstring empfangen und setzte dahinter ein Display. Mit den String Bausteinen kannst du den eingehenden String bearbeiten, $PART trennt z.B. bei einem ganz bestimmten zeichen. Wenn ein Zeichen in diesem String IMMER vorkommt so kannst du es für $PART verwenden. Die restlich unnützen Zeichen mit $ Delete wegschnippeln. Wenn soweit alles stabil läuft sehen wir weiter.
stachlige Grüße, Kaktus

dimmi
Beiträge: 7
Registriert: Samstag 28. August 2010, 14:14

Re: ELV Heizungssteuerung FHT80b und FHT1300PC in ProfiLab

Beitrag von dimmi » Montag 30. August 2010, 06:57

So, danke erstmal für den stacheligen Hinweis.

Nach einer langen Nacht habe ich nun tatsächlich neue Erkenntnisse:

Der $Part scheint hier nicht anwendbar zu sein, da ich keine Trennzeichen in der Zeichenfolge habe. Beim Wetterdatensensor von ELV würde das ja so funktionieren.
Ich habe jetzt mal eine etwas größere Schaltung zusammengebaut. Mit Hilfe von vielen $Copy zerlege ich die Zeichenkette und in Verbindung mit der gleichen Anzahl von $Comp und Festwerten kann ich nun bestimmen, welcher Temperaturregler hier Daten schickt und auch um welche Daten es sich handelt. Entsprechend verknüpft kann ich nun sagen, dass der empfangene Wert z.B. der Stellungswert von Regler Wohnzimmer ist. Viel Aufwand, aber mir fällt keine andere Lösung ein...

So, nun habe ich einen Wert aus der Zeichenkette gewonnen. Nehmen wir mal den Stellungswert vom Regler. Ein Wert von 102 bedeutet 40% offen.
Dies muss nun errechnet werden. Die Rechnung lautet 102 / 2,55 = 40. Wie kann man denn so etwas mit PL realisieren?

Und dann muss der Wert ja auch noch an verschiedenen Stellen ausgegeben werden, in Abhängigkeit davon, welchem Regler er zugehörig ist.
Dafür bräuchte ich irgendwie einen umgedrehten $Multiplexer, zumindest von der Funktion her...

Ich habe die Schaltung mal angehangen und hoffe noch auf ein paar Tips...
Dateianhänge
selektor.prj
(22.17 KiB) 460-mal heruntergeladen

PetryC
Beiträge: 57
Registriert: Montag 15. Dezember 2008, 19:58
Wohnort: Lambsheim
Kontaktdaten:

Re: ELV Heizungssteuerung FHT80b und FHT1300PC in ProfiLab

Beitrag von PetryC » Montag 30. August 2010, 11:16

Hallo Dimmi,

da hast Du Dir viel vorgenommen. Zuerst unterschiedliche Hardwarekomponenten - und dann womöglich noch alles in PL anzeigen und auswerten. ;)

- geht übrigens alles :o

In PL gibt es unsagbar viele Möglichkeiten Daten über alle vorhandenen Schnittstellen einzulesen, diese umzuwandeln und neu auszugeben.
Berechnungen sind überigens die leichtesten aller Übungen. - Hier gibt es unter Analoges/Berechnungen alle Bauteile die erforderlich sind.
Ich habe mir deine Schaltung angesehen. - Das könnte funktionieren, vorausgesetzt der gesendete String hat immer die gleiche Länge. Allerdings ist die Schaltung sehr aufwändig.

Hier einige Tipps:
- Baue die Schaltungen immer übersichtlich auf. Sehr schnell verliert man bei so vielen Linien und Kreuzungen den Überblick. Manchal verbindet PL Linien an Kreuzungspunkten selbständig was hinterher zu viel Arbeit führen kann.
- Versuche die Eingänge immer von links an die Symbole und Ausgänge nach rechts zu führen.
- Spare nicht mit Beschreibungen, dazu kann man im Schaltplan beliebige Textpassagen einfügen. Zu finden oben in der Menüleiste.
- Um die Schaltungen übersichtlicher zu machen können auch Sprünge verwendet werden.
Zu finden unter Diverses/Plus-Masse-Test
Gruß PetryC

KAKTUS
Beiträge: 651
Registriert: Samstag 18. Oktober 2008, 21:12

Re: ELV Heizungssteuerung FHT80b und FHT1300PC in ProfiLab

Beitrag von KAKTUS » Montag 30. August 2010, 11:41

Ich habe jetzt mal eine etwas größere Schaltung zusammengebaut.
Wie auch PetryC schreibt, deine Schaltung ist jetzt schon unübersichtlich. Benutze Makro für Schaltungsteile die sich wiederholen.
Dies muss nun errechnet werden. Die Rechnung lautet 102 / 2,55 = 40. Wie kann man denn so etwas mit PL realisieren?
Du solltest dir mal die Bauteile und Beispiele von PL anschauen, dann wärst du bestimmt selbst drauf gekommen. Aber trotzdem, anbei ein Beispiel zur Division.
Dateianhänge
division.prj
(1.78 KiB) 394-mal heruntergeladen
stachlige Grüße, Kaktus

dimmi
Beiträge: 7
Registriert: Samstag 28. August 2010, 14:14

Re: ELV Heizungssteuerung FHT80b und FHT1300PC in ProfiLab

Beitrag von dimmi » Montag 30. August 2010, 12:32

Au backe, hätte ich ja auch drauf kommen können. Ich denke hier wohl viel zu digital...

Und ganz ehrlich versprochen, die endgültige Fassung wird auf Makros basieren - zum probieren muss es erst mal so reichen.
Bin ja schließlich immer noch auf Entscheidungsfindung, ob ich diese Arbeit PL auflasten möchte, oder einen Atmel-AVR mit zwei Seriellen damit beauftrage um die ganze Sache ELV-Wetterdatenempfängerkompatibel zu machen..

OK, ich weiß jetzt also, welche Komponente was sendet und kann dies auch entsprechend berechnen und anzeigen.

Fehlt nur noch ein letzter Hint: Wie kann ich den Wert in entsprechender, von der sendenden Komponente abhängigen, Anzeige darstellen.

Ich habe also 8 Anzeigen für 8 Stellungsmeldungen von 8 Komponenten.

Am liebsten würde ich den einen Wert in einen Multiplexer mit einem Eingang und 8 Ausgängen reinschicken.
Je nach Ansteuerung der Select-Leitungen (S0, S1, S2) würde dann der Wert an der richtigen Stelle ausgegeben.
Also genau das Gegenteil von dem angebotenen $Multiplexer.

Entweder habe ich da wieder schlecht geschaut, oder ich habe doch noch einen wunden Punkt bei PL (unwahrscheinlich) gefunden.

KAKTUS
Beiträge: 651
Registriert: Samstag 18. Oktober 2008, 21:12

Re: ELV Heizungssteuerung FHT80b und FHT1300PC in ProfiLab

Beitrag von KAKTUS » Montag 30. August 2010, 12:55

Das Gegenteil von Multiplexer ist Demultiplexer. Ins Suchfeld "dem" eingeben und schnell auswählen, bevor sie beißen. ;-)
stachlige Grüße, Kaktus

dimmi
Beiträge: 7
Registriert: Samstag 28. August 2010, 14:14

Re: ELV Heizungssteuerung FHT80b und FHT1300PC in ProfiLab

Beitrag von dimmi » Montag 30. August 2010, 13:28

kleinlaut "danke" :oops:

Melde mich wieder mit "Projekt fertig" !

dimmi
Beiträge: 7
Registriert: Samstag 28. August 2010, 14:14

Re: ELV Heizungssteuerung FHT80b und FHT1300PC in ProfiLab

Beitrag von dimmi » Dienstag 14. September 2010, 04:21

So, bin dann noch mal da und ein Stück weiter.

Ich habe das ganze nett in Makros verpackt und übersichtlicher gestaltet.
Leider musste ich feststellen, dass die Schaltung die schnell aufeinander folgenden High-Bytes und Low-Bytes der Temperaturmesswerte nicht aufnehmen kann. Alles andere klappt hervorragend. (Raumtemperaturregler_1)

Habe mich aus diesem Grunde dann doch entschlossen, einen AVR-Controller davor zu setzen. Dieser nimmt jetzt alle Daten von der FHZ1300PC auf, sortier diese intern in Variablen und gibt diese dann $Part-gerecht über eine Serielle aus. Das klappt einwandfrei und der Schaltungsaufwand ist an und für sich minimal und läßt noch Raum für Erweiterungen. (Raumtemperaturregler_2)

Habe also jetzt alle für mich wichtigen Daten des Hauses erfasst:

- Drücke und Stände über 4...20mA über OPC
- Zustände digitaler Signale über OPC
- Zustände digitaler Signale über QLIB
- Steuern diverser Aktionen über OPC
- Steuern diverser Aktionen über QLIB
- Auslesen der ELV-Raumthermostate über seriell

ToDo:

- Einbinden der Wetterdatensensoren über die FHZ1000PC mit Hilfe des AVR
- Einbinden meiner 1-Wire-Komponenten auch mit Hilfe des AVR

Mal sehen, wo mich dieser Weg noch hinführt...

dimmi
Dateianhänge
Raumtemperraturregler_2.prj
(25.74 KiB) 501-mal heruntergeladen
Raumtemperraturregler_1.prj
(110.3 KiB) 432-mal heruntergeladen

KAKTUS
Beiträge: 651
Registriert: Samstag 18. Oktober 2008, 21:12

Re: ELV Heizungssteuerung FHT80b und FHT1300PC in ProfiLab

Beitrag von KAKTUS » Mittwoch 15. September 2010, 18:21

Ich habe das ganze nett in Makros verpackt und übersichtlicher gestaltet.
Kein vergleich zum ersten Programm. Klasse!
stachlige Grüße, Kaktus

Antworten

Zurück zu „Heizungssteuerung“