TIA PWM Signal in Tia Anpassen

semiswitch

Level-2
Beiträge
12
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich würde gerne ein PWM signal erzeugen, wo ich den duty cycle gerne anhand eines sollwertes einstellen würde. Ich erhalte allerdings immer die fehlermeldung:
83,Eine Konstante ist an dieser Stelle nicht zulässig. Kann mir jemand sagen was ich falsch mache, denn ich habe jetzt schon etliche YT videos geschaut und komme immer noch nicht draus.
// Sandmenge in PWM umrechnen
"Merker".Sander_signal_temp := (0.567 * "Sollwerte".Sandmaenge - 72.9) / 448;

// PWM-Signal Zuweisung
"Local~PWM_Signal_Sander" := "Merker".Sander_signal_temp;

// PWM Ausgabe für Dosiereinheit
"CTRL_PWM_DB"(PWM := "Local~PWM_Signal_Sander",
ENABLE := "Merker".DOsiereinheit_ansteuern);
 
Der name des ausgangs, welchen ich in der Gerätekonfiguration gesetzt habe. In den Tutorials die ich gesehen hatte, wurde diese jeweils mit eine Move baustein verändert.
1738505593313.png
 
In der zeile 83 also bei dieser zuweisung "Local~PWM_Signal_Sander" := "Merker".Sander_signal_temp;
TIA version ist V16
CPU ist die 1212C DC/DC/DC (6ES7 212-1AE40-0XB0)
 
Dann musst Du in Deinem Code auch die Variable aus dem DB verwenden und nicht die genauso heissende Systemkonstante...

Code:
// PWM-Signal Zuweisung
"Merker"."Local~PWM_Signal_Sander" := "Merker".Sander_signal_temp;

Aber ob dann alles so funktioniert wie Du glaubst, mag ich bezweifeln..
 
Ich erhalte allerdings immer die fehlermeldung:
83,Eine Konstante ist an dieser Stelle nicht zulässig.
Local~PWM_Signal_Sander ist eine Systemkonstante. Den Wert von Konstanten kann man im Programm nicht ändern.

Ich würde gerne ein PWM signal erzeugen, wo ich den duty cycle gerne anhand eines sollwertes einstellen würde.
(...)
Kann mir jemand sagen was ich falsch mache
Dein Programm ist auf einem völlig falschen Weg.
Mit der Anweisung CTRL_PWM kann man PWM-Kanäle nur starten und stoppen.
Impulsdauerwert und ggf. Zykluszeitwert werden über die Ausgangs-A-Adressen des Kanals gesteuert, z.B. %AW1000. siehe S7-1200 Systemhandbuch
 
Zurück
Oben