schnelle SPS-Bus-Aktualisierung?

daduda

Level-1
Beiträge
9
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich habe folgendes Problem:
Ich habe auf einer CPU319-3 PN/DP mein Programm laufen und außerdem an einer FM350-2 2 Drehgeber angeschlossen. Ich habe nun herausgefunden, dass die FM350-2 die Werte nur alle 2ms auf den internen Bus schreibt. Dies ist allerdings viel zu langsam!!! Außerdem verschlingen die Bausteine in der Software(FC2, FC3, FC4) haufenweise Zykluszeit der CPU. Mir wurde daher die FM352-5 vorgeschlagen. Leider konnte ich nicht herausfinden, wie oft diese Baugruppe den Zähler an die CPU übergibt doch ich befürchte dass diese ebenfalls zu langsam ist. Hat vielleicht jemand eine Idee wie ich ohne Einsatz von Zykluszeit mir die aktuellen Drehgeberwerte holen kann?

Danke im Vorraus
 
Bei manchen Baugruppen kann man die Zähler auf den E-Bereich legen!

Ist allerdings auf 4 Worte beschränkt!

Die einstellmöglichkeit ist irgendwo in der Begleitsoftware enthalten, bin da mal drüber gestoßen heißt irgendwie (Kanäle Konfigurieren), hab leider gerade mein Pg nicht zur hand.

Aber das wird auch nicht schneller als die Zykluszeit gehen!

Gruß
SKg
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich kenne die Baugruppen nicht, aber Google hat mit eben geflüstert das die FM350 eine Eingangskarte für "Zähler" ist. Die FM352 ist halt ein externer Prozessor für den man wohl ein eigenständiges Programm schreiben muss. Die FM353 wird aber unabhängig von der 319 laufen..

Was musste den machen? Positionieren? Regeln?
 
Ich habe ein Transportband mit Objekten drauf und möchte diese über ein Luftventil ausblasen. Daran kann ich auch nix ändern. Jetzt muss ich mit der SPS das Ventil sehr genau ansteuern. Und während den 2ms, indenen die Zählerkarte die Werte nicht aktualisiert, fährt mein Objekt ganze 10mm. Deswegen brauche ich eine bessere Übermittlung der Werte um das Ventil besser ansteuern zu können
 
Da ist die Nockensteuerkarte schon die
richtige Lössung, aber jetzt mal ehrlich
glaubst du allen ernstes das die Steuerung
da Problemme bereitet, da ist doch eher
die Pneumatik die Ungenauigkeiten verursacht.
Ventile mit ms genauen Schaltspielen, ich
weiß nicht....?
 
@ Matze001:
Ich muss auf jeden Fall früher ansteuern. Bei hoher Geschwindigkeit muss ich sogar aufhören anzusteuern, bevor das Objekt überhaupt unter dem Ventil ist.

@ Aventinus:
Der Abstand ist mindestens 30mm. Ich muss die Objekte allerdings sauber treffen, da sie sonst kippen.

@ Helmut_von_der_Reparatur:
Ich weiß dass die Steuerung Probleme macht! Ich brauch einfach aktuellere Wegdaten, dann hät ich diese ganzen Probleme nicht.

Bei der Beschreibung steht "Taktsynchronität am PROFIBUS". Weiß jemand von euch was das bedeutet?
Weil eventuell könnte man doch nen Drehgeber verwenden, der seinen eigenen Zähler hat und diesen dann über den Profibus ausgibt. Weiß jemand zufällig ob das vielleicht schneller gehen würde?

Schon mal danke an alle für die vielen Rückmeldungen! :D
 
Zuviel Werbung?
-> Hier kostenlos registrieren
hallo dadu,
wenn dir die Steuerung Problemme bereitet, da schau doch mal wie
weiter oben die genante FM 352 bzw. FM352-5.

Die FM 352 ist ein Nockensteuerwerk, die Autark arbeitet, dh. da kannst
du deinen Drehgeber anschließen und diese schaltet dann eigne Ausgänge.

Die FM 352-5 ist Boolean Processor, auf den laufen eigenständige
Programme und arbeitet in µs Bereich.


Kannst du den mal ein paar Eckdaten deiner Anwendung nennen, Vorschub
Geschwindigkeit, mögliche Schaltfrequenz deines Ventils bzw. Ansprech-
verzögerung und Hysterese, Werkstücklänge, Werkstücklücke. Dann noch
vlt. die aktuele Zykluszeit deiner Steuerung.
 
Also ich würde mal keck behaupten das du für Reaktionszeiten < 5ms probleme mit einer SPS bekommst. Kannst du, z.B. durch veränderung des Abstands zwischen Sensor und Aktor, auch mit einer höheren Reaktionszeit leben, würde ich erstmal das Programm in einem Weckalarm OB laufen lassen. Damit bekommt man schon mal so grob die unterschiedlichen Zyklusszeiten in den Griff.
Um die Reaktionszeiten weiter zu "stabilisieren" kann man Baugruppen einsetzen die Taktsynchron arbeiten. Dabei sagt die Baugruppe der CPU wann neue Daten vorhanden sind die CPU liest sie erst dann ein. Dieses macht dein Programm nicht schneller, sondern nur konstanter. Wichtig vor allem bei Reglern.

Bei den meisten Zeitproblemen/Zyklusszeitproblemen ist eher die instabile Zykusszeit das Problem, also einmal brauch des 10ms bis das Ventil angeht, das nächste mal muss mehr Programm abgearbeitet werden und erst nach 12ms geht das Ventil an.

Wenn du je doch so um die 2ms schnell reagieren musst, würde ich die von Helmut vorgeschlagenen Baugruppen einsetzen. Diese arbeiten autark und sind so nicht von der CPU abhängig. Musst nur klären ob du deine Wegmessung da angeklemmt bekommst.
1 Wegmessgeber (SSI-, 5V und 24V Inkrementalgeber)

Außerdem schau mal welches Ventil ihr da einsetzt.. die Brot und Butterventile schalten so um die 20-40ms..
 
Ich arbeite zur Zeit an einer anderen Lösung.
Und zwar kann man der FM350-2 Vergleichswerte für jeden der 8 Zähler vorgeben.
Ich übergeb also einen Wegewert und sobald eine Lichtschranke vor dem Ventil aktiviert wird, fängt ein Zähler an zu zählen. Bei Erreichen der Position gibt die Zählerkarte ein Signal aus, mit dem das Ventil direkt geschalten wird. Ich brauch halt nur zwei Zähler pro Objekt um den Einschalt- und Ausschaltzeitpunkt genau timen zu können.

@Deltal:
Das Ventil hat eine Reaktionszeit von 7ms laut Spezifikation. :)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo daduda,
sind diese 7ms auch immer konstant, weil wenn das schwankt sind 1-2 ms
viel. Grundsätzlich finde ich es mal wieder schade wie du als neuer User
hier im Forum arbeitest. Du erwartest Antwortet, bist aber nicht wirklich
bereit ein paar Randinformationen zu geben, so macht die zusammenarbeit
keinen Spaß.
 
Hallo Helmut,

entschuldige bitte.
Ich arbeite noch nicht lange mit SPS, ich bin sozusagen in das Projekt einfach reingesteckt worden ohne Vorkenntnisse zu haben. Außerdem bin ich kein regelmäßiger Forengänger. Ein Kollege und ich haben halt bei der Ansteuerung des Ventils eine Ungenauigkeit drin, die wir minimieren bzw. komplett beseitigen müssen.
Wenn du irgendwelche Informationen brauchst frag bitte nach.
Zur Information nochmal:
Das System besteht aus einem Förderband, auf dem sich Objekte befinden. Bzw. es handelt sich um ein Magnetband an dem die Objekte hängen. Das Ventil ist über dem Magnetband montiert und soll die Objekte nach unten befördern, wo sie auf ein zweites Förderband fallen. An diesem Förderband befinden sich noch andere Systeme und Lichtschranken. Die SPS übernimmt die Wegeverfolgung, realisiert über einen Ringpuffer. Und außerdem soll sie dieses Ventil ansteuern. Allerdings muss dies ziemlich genau passieren, da sonst die Objekte schief nach unten auf das 2. Transportband fallen und evtl. sogar umfallen. Das Transportband hat eine maximale Geschwindigkeit von 300m/min weswegen 2ms eigentlich zu lange sind, da dies ja eine Ungenauigkeit von bis zu 10mm entspricht.
An der Mechanik und dem Aufbau des Systems kann ich leider nix mehr ändern. Die Anforderung ist, die SPS auf dieses System anzupassen.

Ich hoffe, dass das jetzt ein bischen klarer ist als vorher.
 
Hallo daduda,
ich muß da jetzt auch mal in die Bresche der Anderen springen.
Ich befürchte das alle mir bekannten Programmierkniffe nicht helfen würden, die hier gewünschte Ansteuer-Präzision zu erreichen. Aber von der grundsätzlichen Vorgehensweise ist es auf jeden Fall richtiger, sich unabhängig vom SPS-Zyklus zu bewegen - also die Zählerkarte selbst die Schaltvorgänge ausführen zu lassen. Das hilft dir dann allerdings nicht bei Reaktionsverzögerungen, die das Ventil selbst hat oder das, was entsteht, wenn der Eingangsdruck des Ventils (trotz ggf. vorhandenen Präzisions-Druckreglers) etwas schwankt.

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
da wir etwas ähnliches machen, würde ich mal sagen bei 300m/min
kannst du es vergessen, das über die "langsame" SPS zu lösen.
Wir machen so etwas in der Holzbearbeitung und bewegen uns da, bei
Bearbeitung von Werkstücken im Durchlauf 20-120m und achten sehr
darauf das unsere Zykluszeit 1ms nicht überschreitet.
Wenn du nachrechnest hast du ja bei einer 1ms eine ungenauigkeit von
5mm.

Ich bin auch noch immer der meinung, das die größeren ungenauigkeiten
vom Ventil kommen werden, warum hat die LL ja gerade geschrieben.

Wenn du aber erst einmal die Elektrotechnik ausschließen möchtest,
kannst du es ja mit der FM352, oder einer VIPA-SPS, oder mit einer
ET200s CPU mit Zählkarte versuchen, die nichts anderes machen wie
das einsteuern des Ventiles.
 
Wir haben das bisher schon ganz gut hinbekommen, mit der Ansteuerung des Ventils. Zumindest haben wir alle Objekte getroffen, die wir treffen wollten. Das einzige Problem bei der ganzen Sache ist, dass wenn die Zykluszeit und die Verzögerung durch die späte Aktualisierung von 2ms der Zählerkarte dazukommen, dass dann die zu spät angesteuert wird. Außerdem arbeite ich mit einer geschwindigkeitsabhängigen Offsetsteuerung. Nur wenn man zu früh ansteuert, gerät das Objekt ins wanken und die Gefahr des Umkippens besteht.
Ich denke, dass wenn ich die Ansteuerung noch etwas genauer hinbekommen könnte, dass das Problem mit der Verzögerungszeit des Ventils nicht so extrem ist.

Leider ist eine Vorgabe zu dem System, dass es eine SPS von Siemens sein muss! Und deswegen haben wir eh schon die schnellste CPU die es von Siemens gibt. Zur Zeit bin ich an Tests dran, die zeigen werden, ob sich die Ansteuerung über die Zählerkarte machen lässt oder nicht.

@Helmut: Das mit den 5mm/ms ist mir bekannt und dadurch entstehen ja auch die ganzen Probleme, zumindest teilweise. Zum Glück ist das nur ne maximal-Angabe, meistens wird mit einer Geschwindigkeit von 243 m/min gefahren, was leider nix daran ändert, dass es bei 300m/min auch funktionieren muss.
 
Hallo,

die 319er ist sicher nicht die schnellste CPU von Siemens.

Helmut hat da wirklich schöne Kisten im Einsatz, aber ich weis die genaue Bezeichnung leider nicht.

MfG

Marcel
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Leider ist eine Vorgabe zu dem System, dass es eine SPS von Siemens sein muss! Und deswegen haben wir eh schon die schnellste CPU die es von Siemens gibt. Zur Zeit bin ich an Tests dran, die zeigen werden, ob sich die Ansteuerung über die Zählerkarte machen lässt oder nicht.

Vielleicht kannst du auf der CPU-Seite noch etwas herausholen, ist die
CPU die du da hast schon eine von den neueren, da ist ja einiges an
Geschwindigkeit passiert.
Übrigens ist die 319er ist nicht das schnellste was Siemens hat, da gibt
es noch die 400er und wenn es "richtig...richtig schnell" sein soll, haben
die noch die PC Technik. Da könntest du eine Microbox 427C nehmen, die
zusätzlich mit PC104 Karten ausrüsten, da gibt es von Siemens Analoge E/A,
Digitale E/A und Zählkarten. Mit diesen System wirst du keine Geschwindig-
keist Probleme haben.
 
Ich denke mal das schnellste was man zz mit einer Siemens S7-CPU fahren kann ist die Kombination aus WinLC und Busmodulen die über IRT angeschlossen werden. Aber das ist irgendwie überdimensioniert.

Also wenn ich das richtig lese willst du mit einer Lichtschranke ein Bauteil erkennen und anhand der Position auf dem Förderer dein Ventil betätigen.
Sprich das Teil kommt z.B. bei 2300mm an der LS vorbei und soll dann 500mm weiter vom Förderer abgeworfen werden.

Da kommt natürlich die Frage auf ob ihr den HW-Eingang an der FM350 auch nutzt?

Mit der Latch-Funktion wird der aktuelle Wert des Zählers ausgegeben, wenn man am HW-Eingang triggert.
Die Ungenauigkeit beim abwerfen kann man über einen Offset "minimieren"
 
Ich bin gerade dabei, das System so umzubauen, dass die Lichtschranke direkt auf die Eingänge der FM350 geht und das Ventil auf den Ausgängen.
Die Zähler der Karte kann man zum Glück unabhängig konfigurieren.
Ich stelle den Zähler auf eine Startwert. Dieser entspricht dem Weg von der Lichtschranke zum Ausschaltpunkt des Ventils. Der Vergleichswert ist das Zeitfenster, wie lange das Ventil angesteuert werden soll.
Also wenn die Lichtschranke bei 0mm liegt und das Ventil bei ca. 100mm liegt, wird der Zähler auf 110mm eingestellt(+-10mm Schaltzeitraum) und bei 20mm liegt der Vergleichswert. Somit wartet die Karte 90mm bis sie einschaltet und nach 20mm schaltet sie wieder ab. Dies kam zumindest durch meine Tests bisher raus.
Jetzt muss ich nur noch die Logik finden, mit der ich mehrere Zähler in einer Art Ringpufferstruktur halte, falls mehrere Objekte zwischen Lichtschranke und Ventil sind.
 
Zurück
Oben