FreshSkyline
Level-1
- Beiträge
- 5
- Reaktionspunkte
- 0
-> Hier kostenlos registrieren
Hallo Zusammen,
Seit ein paar Monaten habe ich einen neuen Arbeitsgeber und ich bin oft auf mich alleine gestellt, wenn es um Informationen beschaffen geht. Falls ich hier mit meiner Frage am falschen Ort bin dann entschuldigt bitte die Störung.
Ich habe nun mehrere Stunden damit verbracht mir ein Bild einer PWM zu machen, um es auf Twin CAT mit Strukturiertem Text zu realisieren. Da für mich Strukturierter Text absolutes Neuland ist (ich habe jedoch einen TwinCAT Anfängerkurs besucht), komme ich einfach nicht weiter. Zudem finde ich im Internet keine passende Antwort für meine Frage.
Zur Aufgabenstellung:
Ich muss mit einem Potentiometer, durch einer PWM, einen Heizwiderstand steuern und mit 10%-, 30%-, 50%- und 100%er Leistung betreiben.
Zum Schluss sollte ich die Werte: Poti Heizleistung, Ausgang Heizwiderstand und die Temperatur auf Scope View visualisieren und Aufnahmen bei 10-, 30%, 50% und 100% machen
So und jetzt zu meiner Aktuellen Situation:
Um dieses Programm zu schreiben habe ich die OSCAT Basic Library runtergeladen und gedenke den CTRL_PWM Funktionsbaustein zu benutzen.
Dieser sieht dann so aus (mit meinen definierten Variablen):
CTRL_PWM(
CI:= , (*Brauche ich nicht*)
MAN_IN:=rPoti_Einstellung , (*Manueller Eingangswert*)
MANUAL:= bSchalter1, (*Umschalter für Handbetrieb*)
F:= t#20s, (*Periodendauer in Hz*)
Q:= bHeiz1, (*Steuersignal für Heizwiderstand*)
);
rPoti_Einstellung (*Potentiometer Eingangssignal in REAL*)
bSchalter (*Umschalter für PWM in BOOL*)
bHeiz1 (*Ausgangssignal PWM für Heizwiderstand in BOOL*)
Die Variablen für den Temperatursensor hab ich noch nicht definiert.
Da "MAN_IN" in REAL ist muss ich ja das Potentiometersignal (INT) in Real umwandeln, dafür benutze ich die INT_TO_REAL Funktion mit der Formel: rPoti_Einstellung:= (iPoti1)/32767*50;
Nun zu meiner Frage:
Als erstes wollte ich Testen, ob ich auf dem richtigen Weg zur Lösung bin. Jedoch kann ich das Ganze nicht übersetzen, weil beim Übersetzen immer die Fehlermeldung "CTRL_PWM ist keine Funktion" kommt. àAuch hier finde ich auf Google keine Lösung.
Und zweitens: Bin ich überhaupt auf dem richtigen Weg? Kann ich irgendwo mehr Input herkriegen für meine Aufgabe oder gibts irgendwo Beispiele in Codesys?
Freundliche Grüsse,
FreshSkyline
Seit ein paar Monaten habe ich einen neuen Arbeitsgeber und ich bin oft auf mich alleine gestellt, wenn es um Informationen beschaffen geht. Falls ich hier mit meiner Frage am falschen Ort bin dann entschuldigt bitte die Störung.
Ich habe nun mehrere Stunden damit verbracht mir ein Bild einer PWM zu machen, um es auf Twin CAT mit Strukturiertem Text zu realisieren. Da für mich Strukturierter Text absolutes Neuland ist (ich habe jedoch einen TwinCAT Anfängerkurs besucht), komme ich einfach nicht weiter. Zudem finde ich im Internet keine passende Antwort für meine Frage.
Zur Aufgabenstellung:
Ich muss mit einem Potentiometer, durch einer PWM, einen Heizwiderstand steuern und mit 10%-, 30%-, 50%- und 100%er Leistung betreiben.
Zum Schluss sollte ich die Werte: Poti Heizleistung, Ausgang Heizwiderstand und die Temperatur auf Scope View visualisieren und Aufnahmen bei 10-, 30%, 50% und 100% machen
So und jetzt zu meiner Aktuellen Situation:
Um dieses Programm zu schreiben habe ich die OSCAT Basic Library runtergeladen und gedenke den CTRL_PWM Funktionsbaustein zu benutzen.
Dieser sieht dann so aus (mit meinen definierten Variablen):
CTRL_PWM(
CI:= , (*Brauche ich nicht*)
MAN_IN:=rPoti_Einstellung , (*Manueller Eingangswert*)
MANUAL:= bSchalter1, (*Umschalter für Handbetrieb*)
F:= t#20s, (*Periodendauer in Hz*)
Q:= bHeiz1, (*Steuersignal für Heizwiderstand*)
);
rPoti_Einstellung (*Potentiometer Eingangssignal in REAL*)
bSchalter (*Umschalter für PWM in BOOL*)
bHeiz1 (*Ausgangssignal PWM für Heizwiderstand in BOOL*)
Die Variablen für den Temperatursensor hab ich noch nicht definiert.
Da "MAN_IN" in REAL ist muss ich ja das Potentiometersignal (INT) in Real umwandeln, dafür benutze ich die INT_TO_REAL Funktion mit der Formel: rPoti_Einstellung:= (iPoti1)/32767*50;
Nun zu meiner Frage:
Als erstes wollte ich Testen, ob ich auf dem richtigen Weg zur Lösung bin. Jedoch kann ich das Ganze nicht übersetzen, weil beim Übersetzen immer die Fehlermeldung "CTRL_PWM ist keine Funktion" kommt. àAuch hier finde ich auf Google keine Lösung.
Und zweitens: Bin ich überhaupt auf dem richtigen Weg? Kann ich irgendwo mehr Input herkriegen für meine Aufgabe oder gibts irgendwo Beispiele in Codesys?
Freundliche Grüsse,
FreshSkyline