Forum: Projekte & Code Heizkörperregler THERMOtronic ATmega169 Assembler


von Bernhard S. (bernhard)


Angehängte Dateien:

Lesenswert?

Geschätztes Forum,

ein Beispielprogramm für einen ein THERMOtronic ev. auch für einen 
SPARMATICmatic.

Es ist noch kein fertiges Projekt, aber wichtige Funktionen des

Heizungsreglers laufen schon, im µC ATmega169 ist noch ca. 50% Platz

Ev. stell ich noch weitere Versionen vor



Folgendes kann es schon:

- Kalibrierung
- Messung Raumtemperatur mit Offseteinstellung
- Motorsteuerung über Timer0, incl. Laufzeitüberwachung
- Motor erzeugt Pieptöne ^^  für einen WEcker allerding zu leise
- Heizzeitenprogrammierung einzelner Tage und Gruppen
- Anzeige der Heizzeiten im Bargraph
- Anzeige der Uhrzeit im Bargraph (Punkt blinkt)
- Umschaltung MANU / Auto
- Umfangreiche Menueführung (kurzer und langer Tastendruck)
- Anzeige der Batteriespannung mit und ohne Last
- INST-Funktion
- Sleep ist vorbereitet
- 32kHz Uhr mit Timer2
- Einstellung der aktuellen Raum-soll, Nacht und Tag Temperatur
- WDR Reset bei betätigen der Tasten AUTO + TEMP
- BOOST vorbereitet


Die Abtastung des Drehgebers und der Reflexlichtschranke des Motors 
erfolgt mit dem Timer0.

Aufpassen, wird die Reflexlichtschranke deaktiviert können Störimpulse 
auftreten. In einem SRAM-Byte ist die Motorlaufrichtun bzw. Stop 
hinterlegt, damit diese Störimpulse ignoriert werden können.

Die Motorsteuerung:

Ganz einfach, der Motor wird gestartet, den Rest übernimmt der Timer.

Er überwacht die Laufzeit (Motorstillstand bei Bockierung z.B. 
Endanschlag)

und wenn die gewünschte Endposition erreicht ist.

Bei erreichen der Endposition schaltet nur der Motor ab, natürlich läuft 
der Motor durch seine Massenträgheit nach, und nach ca. 200ms beißt die 
Laufzeitkontrolle zu.

Mit diesem Verfahren wird nicht die korrekte Position erreicht, dazu 
müsste der Motor durch z.B. PWM herangefahren werden.

Das Programm überwacht sich selber, treten Unregelmäßigkeiten auf, z.B. 
unkorrekter Interruptaufruf dann piepst der Motor wie wild und der 
Felercode wird angezeigt.

Die LED Zeigt momentan Motoraktivität an.

Im EEPROM werden die ersten 100 SRAM-Bytes gespeichert (Heizzeiten usw.) 
es muss nicht alles einzeln definiert werden.

In einem Register ist die Zeit und Stunde codiert, erleichtert die 
weitere Verarbeitung :-)

Den Schaltplan habe ich aus diesen Beitrag... danke:
Beitrag "elektronische Heizungsregelung mit Thermotronic"

Der Assemblercode ist nicht hochgradig optimal... sorry.

Für Hinweise bin ich sehr dankbar.


Bernhard


PS: bitte keine e-mails, bei Diskussion im Forum haben alle etwas davon

: Bearbeitet durch User
Beitrag #5221830 wurde von einem Moderator gelöscht.
Beitrag #5221844 wurde von einem Moderator gelöscht.
von Bernhard S. (bernhard)


Angehängte Dateien:

Lesenswert?

Motorposition bzw. Ventilstellung und die Durchflussmenge,
gemessen am Wärmemengenzähler.

Anmerkung: Der wirksame Ventilhub ist relativ gering

von Sebastian L. (sebastian_l72)


Lesenswert?

Bernhard S. schrieb:
> Anmerkung: Der wirksame Ventilhub ist relativ gering
Eben. Das weis jeder HLSK'er - aber nur wenige hier im Forum.

Das du die Kennlinie ermittelt hast, zeigt dass du nicht bedenkenlos 
ohne hydraulisches Grundlagenverständnis die mikrocontroller-elektronik 
draufschlägst. Da nehm ich doch den HUT ab - ja sogar den 
Löwenbändigerhut. (https://youtu.be/q6aqHO-ZKHM)

von Bernhard S. (bernhard)


Angehängte Dateien:

Lesenswert?

Die reale Raumtemperatur und die des Sensors bei voll geöffneten Ventil.

Anmerkung: Die Sensortemperatur hinkt hinterher.

Gründe: Der Sensor ist gut im Gehäuse verpackt, vermutlich reißt der 
Heizkörper seitlich die kalte Luft mit und beeinfußt dadurch die 
Temperatur im Gehäuse des Heizkörperreglers.

@Sebastian
Ja, Du hast schon Recht, vor dem programmieren ist es ratam die 
Eigenschaften der einzelnen Komponenten zu ergründen.


PS: Der Regelalgorithmus... der wird noch lustig...


Vorschlag:

1. Ventil auf 50%... warten

2. Steigt die Temperatur, dann Ventil auf 25%, ansonsten auf 75%

3. Fällt die Temperatur dann Ventil auf 38%, ansonsten 12%

usw.



Irgendwann pegelt sich das System ein und es arbeitet im Arbeitspunkt 
des Ventils, vielleicht sollte man sich diesen Wert merken.

: Bearbeitet durch User
von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

Bernhard S. schrieb:
> Für Hinweise bin ich sehr dankbar.
>
Hallo Bernhard,

schön zu sehen was du in der kurzen Zeit schon hinbekommen hast. Bin zur 
Zeit an einem anderen Projekt, deshalb kann ich mich gerade nur 
oberflächlich hiermit beschäftigen. Somit kann ich dir auch keinen 
Hinweis geben, aber ich hätte da eine Idee !

Ich vergessse öfters nach dem großen Geschäft, das Fenster wieder zu zu 
machen. Jetzt haben ja diese Elektronischen-Heizkörper-Regler ( EHKR ) 
meistens die Funktion dieses zu erkennen.
Als ich las, das du über den Motor Piepstöne erzeugst, welche ja leider 
nicht laut genug sind, würde ich vorschlagen einen Piezosummer 
anzusteuern, der z.B. piept, wenn durch ein geöffnetes Fenster, die 
Raumtemperatur zu sehr abgesunken ist.

Bernd_Stein

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Bernd S. schrieb:
> Ich vergessse öfters (...) das Fenster wieder zu zu
> machen.

Dafür gibt es einfache mechanische Lösungen.

https://www.elv.de/winflip-digital-automatischer-fensterschliesser.html

: Bearbeitet durch User
von Bernd S. (Firma: Anscheinend Corner-Cases ;-)) (bernd_stein)


Lesenswert?

Rufus Τ. F. schrieb:
> Bernd S. schrieb:
>> Ich vergessse öfters (...) das Fenster wieder zu zu
>> machen.
>
> Dafür gibt es einfache mechanische Lösungen.
>
Ich kippe das Fenster nicht, sondern mache es weit auf, denn so lüftet 
man richtig ;-)

Bernd_Stein

von Jörg E. (jackfritt)


Lesenswert?

Bernd S. schrieb:
> Rufus Τ. F. schrieb:
>> Bernd S. schrieb:
>>> Ich vergessse öfters (...) das Fenster wieder zu zu
>>> machen.
>>
>> Dafür gibt es einfache mechanische Lösungen.
>>
> Ich kippe das Fenster nicht, sondern mache es weit auf, denn so lüftet
> man richtig ;-)
>
Aber nicht wenn du es dann vergisst wieder zu schließen ;)
Ansonsten bin Ich auch immer für Stosslüften..

von Microcontroller-Bastler (Gast)


Lesenswert?

Im Sommer wäre ein Tool ganz nett, das die offenen Fenster in 
Abwesenheit schließen kann, wenn es beginnt zu regnen oder zu stürmen. 
Ich lebe weit oben in einem Wohnsilo und habe keine Einbrecher zu 
befürchten, leide aber unter der Hitze, wenn Ich nach Hause komme. Wenn 
die Wohnung tagsüber nicht belüftet wird, dann heizt sich alles extrem 
stark auf, wenn die Sonne reinknallt und auch die Gegenstände werden 
heiss, was das Kühlen am Abend erschwert. Das sind wenigstens 5 Grad 
Unterschied. Schlimm ist es nur, wenn dann tagsüber ein Sturm aufzieht 
und der Regen reinpeitscht.

von petman (Gast)


Lesenswert?

Da gibts doch was von ....

https://www.amazon.de/atFoliX-Sonnenschutzfolie-FX-Silver-35-122-Innen/dp/B0027D3AP0

Kann ich nur empfehlen. Bringt wirklich ca. 8-10°C weniger wenn die 
Fassade auch gedämmt ist und die Wärme nicht durch die Mauer oder Dach 
kommt.

P

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.