oscat.lib > oscat.lib fuer Step 7
Kann SRAMP beim Start negativ Werden ?
jojoax:
Moinsen,
ich versuche mich gerade daran eine saubere S-Rampe zu implemtieren.
So in der Art geht es soweit sehr gut.
CALL "SRAMP"
X :=#sw // -90 .. + 90 möglich
A_UP := 16.66
A_DN := -16.66
VU_MAX := 16.66
VD_MAX := -16.66
LIMIT_HIGH:= 100.0
LIMIT_LOW := -100.0
RST :=L19.0
Y :=#out
V :=#vk
NOP 0
...
Die SW werden in % angegeben, der Ausgang in % ausgewertet, damit kann ich recht gut zur Maschine skalieren.
im ff. wird #out aut den Antrieb skaliert. Leider rennt mir mein Antrieb jedesmal erst in die "falsche" richtung los.
Vorwärts wird zu einem Impuls Rückwärts und umgekehrt.
Hmm, kann die S-Rampenfunktion kurz am Anlauf Negativ werden ?
also bei den Startbedingungen Soll=15 Ist=0 ? So das Out kurz < 0 wird ?
Grübeln ...
Jojo
Fussel0804:
Hi,
Ich werde es heute abend mal testen.
Dann berichte ich näheres.
Gruß Stefan
Fussel0804:
Also,
nach Ausgiebigem Testen kann ich folgendes Berichten:
Das Verhalten eines entgegengesetzten Impulses kann ich nicht erkennen.
Ich habe noch 2 Bilder angehängt:
DB-Online Werte
Bild 1:
Istwert: 0
Sollwert: 0
Bild 2:
Istwert: 15
Sollwert: 15
Die letzten 4 Zeilen schreiben Min und Max-Werte mit:
Wenn hier ein "Ausreißer" in die Falsche Richtung kommen würde, könnte man den Wert dort ablesen.
Also, irgend etwas stimmt bei dir nicht, aber der Baustein rechnet richtig.
Welche Hardware setzt du ein?
Zykluszeit?
Verarbeitest du den Ausgangswert irgendwie weiter?
Gruß Stefan
[gelöscht durch Administrator]
jojoax:
Moin,
danke für das 2te Augenpaar.
mir war mein Antrieb im Test/Labor auch korrekt geblieben,
in der realen Anlage jedoch negativ aufgeblitzt.
Ich habe eine S7-315DP, und Stellglied via DP auf FU/Refu Drive 500.
Der Zyklus liegt bei ca. 30ms im Schnitt. Speiche bei ca. 40% belegt.
#out vom SRAMP wird nur noch von Prozentwerten auf die Hardware Scaliert.
Hatte das mit einem <CMP und einem SR gefangen.
Muss wohl noch tiefer graben...
Gruß Jojo
PS: arbeitet schon jmd. an einem Positionier-Modul ?
falls nicht könnte bei mir sowas für die Lib abfallen :)
Fussel0804:
Wenn ich dich richtig verstehe, übergibst du den Wert mittels Profibus als (WORD) an deinen Antrieb.
Kann es sein, dass die SPS und der Antrieb eine andere Wortstruktur benutzen?
Vertauschen von Low und High Byte im Wort?
Da du ja eine Siemens CPU hast:
Schreibe vor den Transferbefehl (T PAW...)
den Befehl TAW
Bsp:
L [Sollwert für Umrichter]
TAW
T PAW...
Damit wird Low und HighByte vertauscht.
Das gleiche hast du auch, wenn du WAGO PROFIBUS-Koppler an ner Siemens CPU betreibst.
Gruß Stefan
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln