Also rufe ich dir Regler in dem Cyclic Interrupt auf Okey.
Ja, aber warum mehrere Regler?
Und wahrscheinlich dann mit einem MOVE Schiebe ich die werte der 3 Kurven auf den Regler.
Nein.
Der Regler hat so direkt nichts mit den Kurven zu tun - er ist nur eines der "ausführenden Organe".
Die Parameter des Reglers müssen zur RegelStrecke passen.
Du musst "die Werte" in einem Programmteil, das die Abläufe (Kurven) organisieren soll, interpretieren und dafür sorgen, dass mit Deinem RampenBaustein und dem daran angeschlossenen Regler dann aus den Werten die gewünschten Kurven entstehen.
Die Werte, die Du z.B. als Rezept verwaltest (oder als Array oder ...) und entsprechend der jeweils aktiven Kurve abrufst, musst Du irgendwie in den gewünschten Ablauf der Kurve umwandeln und die "ausführenden Organe" dann damit füttern.
So, jetzt kommt ein neuer Begriff: Schrittkette.
Es ist wahrscheinlich am einfachsten und am übersichtlichsten, wenn Du die einzelnen Phasen der Kurven in verschiedene Schritte aufteilst, die dann von der Schrittkette nacheinander abgearbeitet werden.
Z.B. Aufheizen vorbereiten, Aufheizen starten, Aufheizen überwachen, Aufheizen beenden, TemperaturHaltePhase starten, TemperaturHaltePhase überwachen, TemperaturHaltePhase beenden, nächste AufheizPeriode vorbereiten, starten, überwachen, beenden, ...
Mach Dir eine Tabelle für den umfangreichsten Ablauf, den Du realisieren willst. Die anderen, einfacheren Abläufe sind dann "abgespeckte" Versionen davon.
Überleg Dir, welche Daten Du benötigst für die einzelnen Schritte.
Die Zeilen der Tabelle sollen die Schritte sein, die Spalten sind die "Werte", die Du benötigst, um die unterschiedlichen Aufgaben pro Schritt so umzusetzen, dass die Schrittkette die entsprechenden Aufgaben an die "ausführenden Organe" ausgeben kann.
Weitere Spalten sollten beinhalten, welche Informationen/Kriterien Du in der Schrittkette abfragen willst (Ablauf einer Zeit oder 'RampenAnstieg ist beendet' oder ...)
Überleg Dir, was die einzelnen Schritte tun müssen und was sie an Informationen benötigen, um im richtigen Moment zum nächsten Schritt weiterzuschalten.
Ob Du die Parameter für Deinen Regler überhaupt ändern musst, weiss ich nicht, wahrscheinlich ja, ABER ich glaube das ist dann ein weiterer Bereich, der von der Umsetzung der Kurven (relativ?) unabhängig sein könnte.
Ich schätze mal, dass Du Kurve x für verschiedene Massen (da war mal von Kupfer in unterschiedlichen Mengen die Rede) benutzen willst und für verschiedene Massen unterschiedliche ReglerParameter nötig sein dürften. Ich weiss nicht, ob Du dafür zusätzliche, massgeschneiderte Kurven einsetzen willst. Oder, ob es vielleicht eine Vorwahl für die Masse geben soll und dann ansonsten identische/ähnliche Kurven abgefahren werden sollen.