Zum Hauptinhalt
Wenn Sie weiter auf dieser Webseite arbeiten möchten, bestätigen Sie bitte unsere Nutzungsrichtlinie:
  • Regelung zur Nutzung von Moodle
  • Erklärung zur Barrierefreiheit
  • Datenschutzerklärung
Fortsetzen
x
openelec
  • Startseite
  • Kalender
  • Kurskatalog
    Berufliche Bildung Medienbildung Politische Bildung Rechtsfragen Fächerübergreifende Themen
  • Über uns
    Über das ELEC (Bildungsportal) E-Learning-Center Niedersachsen (ELEC) Regionale Fortbildung (KomzenELEC) Niedersächsisches LernCenter (NLC)
  • Mehr
Systemweite Suche Schließen
Sucheingabe umschalten
Sie sind als Gast angemeldet
Anmelden
openelec
Startseite Kalender Kurskatalog Einklappen Ausklappen
Berufliche Bildung Medienbildung Politische Bildung Rechtsfragen Fächerübergreifende Themen
Über uns Einklappen Ausklappen
Über das ELEC (Bildungsportal) E-Learning-Center Niedersachsen (ELEC) Regionale Fortbildung (KomzenELEC) Niedersächsisches LernCenter (NLC)
Alles aufklappen Alles einklappen
  1. LF07 - FI-ITSE - Raspi - 22/23
  2. LS7.2: Raumklima temperaturgeführt regeln
  3. A2.6: Software/ Algorithmus zur Implementierung eines Zweipunktreglers (30min)

A2.6: Software/ Algorithmus zur Implementierung eines Zweipunktreglers (30min)

Abschlussbedingungen
Anzeigen
Abgabe einreichen

Infothek Software/ Algorithmus zur Implementierung eines Zweipunktreglers

Auf Ihrer Suche nach einem Code zur Realisierung Ihres Zweipunktreglers finden Sie mit den Suchwörtern "zweipunktregler python" einen Pythonquellcode für einen Zweipunktregler mit Hysterese. Hysterese bedeutet, dass der Einschaltpunkt der Kühlung eine andere Temperatur ist, als die, bei der die Kühlung ausgeschaltet wird. Dieses Verhalten ist im Zustandsdiagramm rechts

Zustandsdiagramm Zweipunktregler mit Hysterese

dargestellt. Wenn man der Richtung der roten Pfeile folgt, ist das Verhalten des Reglers zu verstehen. Auf der Ordinate (y-Achse) ist der Ausgangszustand des Reglers dargestellt, auf der Abszisse (x-Achse) die Raumtemperatur.

Sie müssten dann Antworten auf diese Frage geben können: Welchen Zustand hat der Reglerausgang bei einer Raumtemperatur von 30°C, wenn die untere Solltemperatur 25°C beträgt und die Hysterese 7 Kelvin? Welche Information fehlt bei dieser Frage?

Die Führungsgröße w, also hier die untere Solltemperatur und die Hysterese können entweder auch als Topics in der Cloud oder lokal zum Beispiel in einer Konfigurationsdatei gespeichert werden. (Infos dazu unter https://wiki.python.org/moin/ConfigParserExamples)

Rechts die UML-Darstellung der Klasse ControllerUML Darstellung der Klasse Controller

```

class Controller():

    def __init__(self, cloud, fan):

        self.__cloud=cloud # Konfigurationen und Werte

        self.__fan=fan # Der Aktor für den Zweipunktregler

        self.__splow=self.__cloud.get_setpointTemp() # untere Grenze

        self.__hyst=self.__cloud.get_hyst() #Hysterese speichern

        self.__sphigh=self.__splow+self.__hyst # obere Grenze

    def control(self):

        # Vergleich Ist- und Solltemperatur und Kühlung ansteuern

        # hier ist der Regler als Zweipunktregler mit Hysterese implementiert

        temperature = self.__cloud.get_roomTemp() # Aktuelle Temperatur aus der Cloud lesen

        if temperature <= self.__splow:

            self.__fan.off() # Kühlung ausschalten, wenn es kalt ist

        elif temperature > self.__sphigh:

            self.__fan.on() # Kühlung einschalten, wenn es zu warm wird

        return

# ********************* Ende class Controller

if __name__ == '__main__':

    # Erzeugen der Fan und Cloudobjekte (wird später erklärt)

     .

     .

     .

    climate=Controller(mycloud, myfan)

    while True:

        mycloud.update() # aktuelle Temperatur (usw.) in die Cloud schreiben (wird später erklärt)

        climate.control()

```

Aufgaben

  1. Besprechen Sie den objektorientiert geschriebenen Code im Klassenverband (Klären Sie folgende Begriffe: Klasse, Objekt, Attribut, Methode, Klassendiagramm, Link, Aggrgation vs. Komposition, Konstruktor).
  2. Geben Sie ein Dokument ab, in dem Sie im Freitext die Begriffe
    1. Klasse,
    2. Objekt,
    3. Attribut,
    4. Methode,
    5. Punktnotation,
    6. private,
    7. public,
    8. UML-Klassendiagramm, 
    9. UML-Link
    10. Aggregation
    11. Komposition
    12. Konstruktor erklären.
  3. Erklären Sie im zusätzlichen Textabgabefeld, warum eine Hysterese das Regelverhalten gegenüber einer Lösung ohne zwei verschiedene Schaltpunkte verbessert.

Hilfen

Understanding self and __init__ method in python Class


◄ A2.5a: Lüftermotoransteuerung planen - Stromstärke ermitteln (15min von 90min)
A2.7: Klassendiagramm für Lüfter erstellen (30min) ►
Impressum Support