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

Ergebnis 1 bis 8 von 8

Thema: Phasenverschiebung in DB schreiben - schnelle Regelung

  1. #1
    Registriert seit
    19.04.2010
    Beiträge
    23
    Danke
    7
    Erhielt 0 Danke für 0 Beiträge

    Frage


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    seit einigen Tagen überlege ich nun schon wie man am besten eine Phasenverschiebung einer Regelstrecke aufnehmen kann, doch mit meiner Lösung habe ich immer wieder Probleme mit der Zykluszeit!

    folgende Anlage: System wird mit ET 200S und OB35 der die Regelung ausführt (eingestellte Weck-Zeit 3ms) geregelt.

    Die Phasenverschiebung, so hab ich mir gedacht soll wie folgt aufgeniommen werden: Sinussignal in bestimmter Frequenz wird auf den Regelkreis gegeben -> Wert der 1. Abtastung des sinussignales speichern -> Zeitmessung starten --> Eingang nach der Regelstrecke einlesen und mit Wert vgl.
    Ist der eingelesene Wert = Wert der 1. Abtastung Timer stoppen --> Differenz bilden und Anzahl der Zyklen x die Periodendauer abziehen --> somit habe ich die Verschiebung!

    ich will die Phasenverschiebung im bereich von 0,1 Hz bis 100 Hz aufnehmen, wobei hier schon das Problem auftritt. 100 Hz sind ja bekanntlich 10ms pro Periode.

    dies hat zur Folge das im endeffekt nur 3 mal pro Periode des aus und Eingangssignals abtaste und somit es eine ewigkeit dauert bis ich den 1. Abtastwert wieder erreiche.

    Jettz die Frage.: Kann man meinen Ansatz noch optimieren, genauer, schneller machen??Oder habt ihr evtl. einen ganz anderen Lösungsansatz??

    Vielen Dnak fürs reindenken, an diesem "wunderbaren Frühlingstag "

    viele grüße
    Zitieren Zitieren Phasenverschiebung in DB schreiben - schnelle Regelung  

  2. #2
    Registriert seit
    13.10.2007
    Beiträge
    12.032
    Danke
    2.787
    Erhielt 3.269 Danke für 2.157 Beiträge

    Standard

    könntest du nicht eine IM-CPU nehmen die nur die Werte aufnimmt, so
    hast du schon mal Buslaufzeit zwischen normaler CPU und ET200 weg.
    Die Zykluszeit wird dann auch noch kürzer, wie die von dir eingestellten
    3ms im Alarm OB. Das Programm läuft dann natürlich im OB1 und wird
    warscheinlich im µs bereich liegen.
    - - -
    Wer als Werkzeug nur einen Hammer hat, sieht in jedem Problem einen Nagel.

  3. #3
    SPS-newbie ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    19.04.2010
    Beiträge
    23
    Danke
    7
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke, für diene Antwort. Hab wohl ganz vergessen zu erwähnen dass das Programm auf einer ET 200s mit ner IM151/8 CPU läuft!

    noch eine CPU kommt leider nicht infrage! --> Kosten wären zu hoch!

    Gruß

  4. #4
    Registriert seit
    13.10.2007
    Beiträge
    12.032
    Danke
    2.787
    Erhielt 3.269 Danke für 2.157 Beiträge

    Standard

    Zitat Zitat von SPS-newbie Beitrag anzeigen
    Danke, für diene Antwort. Hab wohl ganz vergessen zu erwähnen dass das Programm auf einer ET 200s mit ner IM151/8 CPU läuft!

    noch eine CPU kommt leider nicht infrage! --> Kosten wären zu hoch!

    Gruß
    ja wenn es schon am geld scheitert....
    - - -
    Wer als Werkzeug nur einen Hammer hat, sieht in jedem Problem einen Nagel.

  5. #5
    Registriert seit
    13.10.2007
    Beiträge
    12.032
    Danke
    2.787
    Erhielt 3.269 Danke für 2.157 Beiträge

    Standard

    Einfallen würde mir jetzt nur noch eine andere Plattform, entweder
    leistungsstärkere CPU aus dem 300er Specktrum. Oder eine Microbox
    mit PC104 Karten, DI/DO und AI/AO. Wenn nur ein Analoger Eingang
    benutzt wird hat die eine Wandlungszeit von 50..100µs; bei 4 200-400µs
    und bei 8 400-800µs. Denn SPS-Zyklus auf 1ms zu bekommen ist un-möglich
    wenn es auf eine IM CPU läuft.
    Also wäre es möglich 10 Werte pro ms zu verarbeiten.
    - - -
    Wer als Werkzeug nur einen Hammer hat, sieht in jedem Problem einen Nagel.

  6. #6
    Registriert seit
    13.05.2008
    Beiträge
    316
    Danke
    43
    Erhielt 23 Danke für 15 Beiträge

    Standard

    *gelöscht*
    Geändert von Beren (04.07.2011 um 17:17 Uhr)

  7. #7
    SPS-newbie ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    19.04.2010
    Beiträge
    23
    Danke
    7
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Vielen Dank für Eure Antworten. Ist echt der Wahnsinn wie schnell und gut hier geantwortet wird!!
    Leider ist es nicht möglcih andere HW einzusetzen. Anscheinend bleibt mir nur die Möglichkeit mit der ungenauigkeit aufgrund des zu großen Weckalarmintervalles zu leben..

    Muss wohl versuchen die Regelung noch etwas zu kürzen, damit die Durchlaufzeit des Bausteines kleiner wird und ich somit die Weckalarmzeit runtersetzen kann. hoffe ich bringe es auf 1 - 2 ms ohne das die CPU in Stopp geht!
    Viele Grüße,
    SPS-newbie

  8. #8
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von SPS-newbie Beitrag anzeigen
    ...
    Die Phasenverschiebung, so hab ich mir gedacht soll wie folgt aufgeniommen werden: Sinussignal in bestimmter Frequenz wird auf den Regelkreis gegeben -> Wert der 1. Abtastung des sinussignales speichern -> Zeitmessung starten --> Eingang nach der Regelstrecke einlesen und mit Wert vgl.
    Ist der eingelesene Wert = Wert der 1. Abtastung Timer stoppen -->
    1. Wert = Wert der 1.Abtastung setzt voraus, daß Amplituden gleich sind.
    2. Wenn du z.B. bei dem Analogwert 1% Fehler hast und nun in der Nähe der Scheitelpunkte der Sinuskurve bist, schau mal wieviel Grad Phase das da sind.
    Zitat Zitat von SPS-newbie Beitrag anzeigen
    Differenz bilden und Anzahl der Zyklen x die Periodendauer abziehen --> somit habe ich die Verschiebung!
    3. Da wirkt sich ein kleiner Fehler der Periodendauer dann fatal aus.
    Zitat Zitat von SPS-newbie Beitrag anzeigen
    Oder habt ihr evtl. einen ganz anderen Lösungsansatz??
    Wegen 1. ist der Nulldurchgang besser geignet, 0 ist bei jeder Amplitude 0.
    Gleichzeitig ist im Nulldurchgang die Sinuskurve am steilsten, so daß ein Fehler bei der Amplitude den geringsten Fehler nach sich zieht.

    Ich würde beide Signale - vom Ein- und vom Ausgang - auf eine Elektronik führen, die die Nulldurchgänge erkennt (Schmitt-Trigger).
    Deren Ausgänge betätigen eine "Stoppuhr" und du hast die Zeit. Diese kannst du auf die bekannte Periodendauer beziehen. Oder, noch besser, du mißt auch die Zeit zwischen 2 gleichsinnigen Nulldurchgängen desselben Signals und bestimmst die Periodendauer.

    Ob sich eine SPS als "Stoppuhr" eignet, ist eine andere Sache. Eventuell kannst du es mit Prozeßalarmen oder schnellen Zählern machen. Egal wie, da die Signale jetzt digital sind, brauchst du "nur" eine gute Zeitauflösung, während dein Ansatz auch noch eine gute Amplitudenauflösung erfordert.

Ähnliche Themen

  1. Phasenverschiebung von Strömen messen
    Von Helmpflicht im Forum Schaltschrankbau
    Antworten: 3
    Letzter Beitrag: 17.12.2010, 14:29
  2. schnelle SPS-Bus-Aktualisierung?
    Von daduda im Forum Simatic
    Antworten: 25
    Letzter Beitrag: 03.09.2010, 11:00
  3. Schnelle Analogwertauswertung
    Von Lazarus™ im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 15.03.2007, 12:54
  4. Schnelle SPS
    Von Zimbo30 im Forum Simatic
    Antworten: 23
    Letzter Beitrag: 30.11.2006, 10:27
  5. Schnelle Regelung mit SIMATIC?
    Von Olav im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 25.10.2006, 14:38

Lesezeichen

Berechtigungen

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