Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 8 von 8

Thema: maximale zykluszeit errechnen für Interrupt

  1. #1
    Registriert seit
    10.07.2014
    Beiträge
    366
    Danke
    137
    Erhielt 11 Danke für 11 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    wie kann ich die maximale Zykluszeit errechnen die erlaubt ist, dass ich nicht auf interrupts zugreifen muss?
    Ich habe beispielsweise ein Maschine, bestehend aud ein Messermotor und ein Hydraulikzylinder. Wenn der Messermotor einen bestimmten Winkelbereich hat, darf der Kolben nicht vorpressen. Der Messermotor läuft maximal mit 200 U/min. das ergibt 300 ms pro Umdrehung. Mein gesamtes Programm hat eine Zykluszeit von 6-9 µs. jetzt hat mir aber der Verfasser des Programms mal gesteckt, das die maximale Zykluszeit nur 3-4 µs sein dürfte, wenn ich dieses Taktverhalten des Zylinders ohne Interrupt realisieren wollte.
    Ich kam leider nicht mehr dazu zu fragen, wie und warum das so ist. ich wäre jetzt davon ausgegangen, das bei 9 µs ja bummelig 33 Zyklen durchlaufen und es funktionieren sollte.

    kann mir bitte jemand nen Tip geben wie ich das berechnen kann?

    Vielen Dank
    Credo
    Zitieren Zitieren maximale zykluszeit errechnen für Interrupt  

  2. #2
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.227
    Danke
    534
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Was erlaubt ist, hängt doch nur von deinem Anwendungsfall ab. Deine Angaben sagen ja noch nichts darüber aus, wie genau der Hydraulikzylinder auf die Motorposition zu reagieren hat. Also, wann soll der Kolben vorpressen und wann nicht und wie ungenau muß das ganze sein. Je genauer in Abhängigkeit von der Position, umso kürzer muß auch die Zykluszeit sein.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  3. Folgender Benutzer sagt Danke zu Ralle für den nützlichen Beitrag:

    Credofire (09.02.2015)

  4. #3
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Also bevor im Nebel herumgestochert wird, würde ich ein Weg - Zeit Diagramm der einzelnen Bauteile aufzeichnen.
    Daraus kannst du erkennen, wie groß die Unterschiede ziwschen den einzelnen Bewegungen sein dürfen.

    3-4 µs sind eigentlich kein Einsatzbereich für eine PLC.
    Das sollten externe Steuerungen machen, die spezial auf diesen Anwendungsbereich gebaut wurden.

    Nach 2 Wochen kommen neue Wünsche und Anforderungen vom Kunden. (eine PLC kann ja mal eben ein Excel Sheet oder eine DB verwalten und in jedem Fall eine Abb zum Fernsteuern bedienen sind ja Computer).


    bike
    "Any fool can write code that a computer can understand.
    Good programmers write code that humans can understand."
    --Martin Fowler

  5. Folgender Benutzer sagt Danke zu bike für den nützlichen Beitrag:

    Credofire (09.02.2015)

  6. #4
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.728
    Danke
    398
    Erhielt 2.406 Danke für 2.002 Beiträge

    Standard

    Hallo,
    du schreibst hier von Mikrosekunden - meinst aber sicherlich Millisekunden ...
    Ansonsten : dein Zylinder hat mit Sicherheit auch noch ein Trägheits-Verhalten. Nur davon, dass die SPS schaltet, ist ja noch nicht der Zylinder selbst beeinflusst. Ich denke, dass das das Problem ist ...

    Gruß
    Larry

  7. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    Credofire (09.02.2015)

  8. #5
    Credofire ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    10.07.2014
    Beiträge
    366
    Danke
    137
    Erhielt 11 Danke für 11 Beiträge

    Standard

    Das Messer deckt angenommen eine Winkel von 30° ab. angenommen der Beobachtungszeitpunkt liegt bei 0°. Sobald das messer nun die 0° position erreicht, muss der Vorschub möglichst abrupt stoppen. Leider weis ich jetzt die Reaktionsgeschwindigkeit des Sensors nicht, der die Anwesenheit des Messers misst.

    edit: Ich versuche das mit den Diagrammen mal

  9. #6
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Ich würde mir, wie Larry geschrieben hat, mich mit den Schlossern zu unterhalten.
    Die kennen die mechanischen Trägheiten und Beschleunigungen.

    Viel Erfolg


    bike
    "Any fool can write code that a computer can understand.
    Good programmers write code that humans can understand."
    --Martin Fowler

  10. Folgender Benutzer sagt Danke zu bike für den nützlichen Beitrag:

    Credofire (09.02.2015)

  11. #7
    Registriert seit
    03.02.2015
    Ort
    Hatten
    Beiträge
    183
    Danke
    16
    Erhielt 32 Danke für 29 Beiträge

    Standard

    Wie die Vorredner hier schon schreiben:
    Da ist noch mehr zu berücksichtigen, als nur das Programm, welches auch für die Zukunft noch Zeitreserven haben muß (und für Fehlerinterrupts ebenso, wie für die Kommunikation mit dem Leitsystem/derVisualisierung).

    Denn wenn Du mit so kleinen Zeitbereichen arbeitest (ich hoffe auch, daß Du nicht im µs, sondern im ms-Bereich arbeitest), dann mußt Du die Zeiten der ganzen Kette bedenken:
    Sensor-Schaltzeit
    Signalübertragung (analog oder per Bus)
    Wandlungszeiten der Karte (speziell bei Analogsignalen, z.B. zur Positionserfassung)
    Toleranzen der Signale (welche sich damit eventuell auf den Bereich auswirken, in dem der Zylinder gestoppt sein muß)
    Übertragungszeiten von der Peripherie zur CPU
    Programmlaufzeit
    Übertragung zur Peripherie
    Wandlungszeiten für die Ausgabe
    Trägheitsmomente

    Du siehst, wenn es um extrem kleine Verarbeitungszeiten geht, mußt Du auch alle Schritte in der Bearbeitungskette bedenken, die darauf Auswirkung haben.
    Möglicherweise mußt Du sogar Bewegungen vorausberechnen, um rechtzeitig den Befehl zum Stoppen zu geben, damit die Signalausgabe und die Trägheitsmomente berücksichtigt sind.

  12. Folgender Benutzer sagt Danke zu JSEngineering für den nützlichen Beitrag:

    Credofire (09.02.2015)

  13. #8
    Registriert seit
    13.10.2007
    Beiträge
    12.038
    Danke
    2.790
    Erhielt 3.273 Danke für 2.159 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Bei deinen Innterupt kommt es grundsätzlich noch darauf an wie du diesen erfasst.
    Geht dieser über den Bus, kann es je nach Auslastung schnell 3-7 ms dauern, bis dieser
    überhaubt ausgelöst wird.
    - - -
    Wer als Werkzeug nur einen Hammer hat, sieht in jedem Problem einen Nagel.

Ähnliche Themen

  1. Step 7 CPU für Haussteuerung Zykluszeit 314 / 315
    Von Bitverdreher77 im Forum Simatic
    Antworten: 16
    Letzter Beitrag: 29.11.2015, 10:33
  2. Step 7 ET200S - maximale Datenlänge für UBLKMOV
    Von schuld im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 18.07.2014, 09:00
  3. Uhrzeit Interrupt
    Von Ewald im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 29.05.2008, 22:26
  4. Zusammenhang Zykluszeit Profibus Zykluszeit SPS
    Von Peltzerserbe im Forum Feldbusse
    Antworten: 1
    Letzter Beitrag: 28.04.2008, 22:09
  5. interrupt in awl
    Von Anonymous im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 11.10.2005, 15:33

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •