Permanente Temperatur Regelung

Gast #970539
Lesenswert?

Hallo,

ich versuche mich gerade an den ersten Schritten in C.
Für meine Anwendung die ich vorhabe habe ich warscheinlich ein 
Verständnissproblem.

Wie macht man er normalerweise wenn eine dauernd Temperatur geregelt 
werden soll es aber in einem anderen Programmabschnitt die benötigte 
Zeit länger ist weil z.b. eine Pause mit 3 Sekunden gemacht werden soll 
und die Temperatur trozdem geregelt werden soll z.b. im Sekundentakt ?

Ich habe noch mehr solcher vielleicht merkwürdigen Fragen ich finde aber 
leider im Tutorial nicht die Lösung dazu.

viele Grüße
Mario
#970544
Lesenswert?

Du darfst halt in dem anderen Programmabschnitt nicht 3 Sekunden warten.
Normalerweise macht man sowas über die Timer .
Man startet im Programm in dem man 3 Sekunden warten will einen Timer. 
Falls der noch nicht abgelaufen ist verlässt man den Programmabschnitt 
und widmet sich in deinem Beispiel der Temperturregelung. Also nicht 
irgendwo warten sondern einen Timer starten und solange der läuft die 
anderen Prozesse bedienen.

Gruss Helmi
#970625
Lesenswert?

Letzteres ist in den meisten Fällen die bessere Lösung.

In der Regel tun ja typische kleine µC-Anwendungen ständig das gleiche. 
Irgendwo muß ein Wert eingelesen werden, der wird bearbeitet, das ergibt 
dann irgendeine Ausgabe, und dann geht das ganze von vorne los.

Wenn du dir jetzt überlegst, was jeweils der Auslöser für einen solchen 
Schleifendurchgang ist, kannst du die ganze Anwendung interruptgesteuert 
aufbauen. Ein Timer-Interrupt könnte deine Temperaturmessung auslösen, 
der Interrupt vom A/D-Wandler die Berechnung der Abweichung vom Sollwert 
und die Ausgabe der Regelgröße etc.

Im Hauptprogramm könntest du dann langsame Dinge wie 
Benutzerschnittstelle oder irgendwelche "Aufräumarbeiten" vornehmen, 
oder aber den µC sogar schlafen legen. Das spart Strom und ein Interrupt 
weckt ihn wieder auf, wenn es etwas zu tun gibt.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren