Jump to content

Verwendung mehrerer Zeitbasen


Recommended Posts

Guten Tag 

Wir haben uns mittels eines Generators eine «Universelle» Ablaufsteuerung für Elektropneumatische Ventile und für die Speicherung von Messdaten erstellt.
Die elektropneumatischen Ventile können gemäss eingestellten Parametern (Variablen) geöffnet und geschlossen werden und der Vorgang kann dann N-Mal wiederholt werden.
Dieser Vorgang respektive die Folgen der Ventilschaltungen können, wenn gewünscht, auch messtechnisch erfasst werden. Das heisst der Generator gibt auch ein Signal aus das eine Aktion auslöst damit die anliegenden Messsignale gespeichert werden.
Um die Elektropneumatische Ventile zu Schalten verwenden wir eine Relais Karte von MCC vom Typ: USB-ERP24. Diese wird mit einer Frequenz von 100 Hz und einer Blockgrösse 10 angesteuert.
Für die Erfassung der Messsignale verwenden wir eine Messkarte von MCC vom Typ: USB-2537. Diese erfasst die 12 Sensordaten mit einer Frequenz von 1000 Hz und einer Blockgrösse 100.

Nun zur Unstimmigkeit:
Der Generator läuft mit der gleichen Abtastrate wie die Relais Karte 100 Hz und Blockgrösse 10 (Zeitbasis: Dasylab oder USB-ERB4).

Starten wir eine Messung so werden die Messsignale direkt nach Erzeugung des Generatorsignals aufgezeichnet. Das erzeugte Schaltsignal vom Generator für die Relaiskarte kommt dort jedoch ca. 0.20 Sekunden verzögert an.  Dazu eine Beispielgrafik Im Anhang. 

Zur dieser Grafik können wir folgenden Hinweis geben:
Der Fahrweg Dist_S-25_1[mm] müsste zeitgleich zum Generator Signal Ventil schalten. Der Ist Zustand sieht aber wie folgt aus. 
Gemäss Generator wird das Ventil bei 5.4 Sekunden ausgelöst, die Messung zeigt dass das Ventil erst bei ca. 5.6 Sekunden schaltet siehe Graf Dist_S-25_1[mm]. 
Das führt dazu das gewisse Messpunkte nicht erfasst werden da die Werte nicht mehr ausgezeichnet werden, da sie ausserhalb des Ablaufes liegen. Die momentane Korrektur Möglichkeit liegt darin eine Verzögerung das Aufzeichnungssignal um ca. 0.2 Sekunden einzubauen. Wir haben auch schon probiert die Zeitbasen zu verändern oder beim Ausgangsmodul den Hacken bei Ausgabe in Echtzeit zu entfernen. Dies erzielte aber auch nicht den gewünschten Effekt.

Nun zu unserer Frage: Wie können wir sicherstellen, dass wir weiterhin unterschiedliche Zeitbasen verwenden können und doch sicherstellen das die Relaiskarte synchron zum Generator auslöst. 

Im Anhang ist der Teilabschnitt des Schaltbildes sowie eine Beispielgrafik zum Generator mit Ausgabe zu sehen 330081038_AuszugTeststand_1-2-1.thumb.png.84052626e0add80a789dfb5266de94c8.png127429605_Beispielgrafik.png.a3616622e9d9ba9eeb0ce103250f9c95.png

 

Allgemeine Info. 
Wir arbeiten mit Dasylab 2020 Release 15.0.0 Build 339 und verwenden die MCC Treiberversion V6.72

Teststand_1-2-1_V02.zip

Link to post
Share on other sites

Hallo!

Da mir nicht die passende Hardware zur Verfügung steht, kann ich nur die obere Modulkette (vier Schalter) analysieren.

Mit dem angehängten Schaltbild kann ich die Signale im ersten Diagramm nicht reproduzieren, da dort das obere Signal (rot) nicht kurzzeitig von 0.0V nach 5.0V steigt, sondern sich umgekehrt verhält (5V mit Peak nach 0V). Die Signale drei (lila) und vier (grün) steigen bei Ausführung auch durchbetätigen die Schalter nicht auf 5.0V, sondern bleiben auf 0.0V.

Beim Betätigen von Schaltern hat eine Änderung des Ausgabewerts immer nur bis zum nächsten ausgegebenen Datenblock (oder ab dem nächsten) eine Auswirkung.
Die MCC-Zeitbasis in den Schaltern nutzt eine Blockgröße von 10 und eine Abtastrate von 100Hz, d.h. es gibt eine kurze Latenz von bis zu 0,1s. bei der Wertänderung.

Beim Sollwertgenerator kann das auch dazu führen, dass der ausgegeben Wert z.B. bei einer Dauer für 3 Sekunden, erst beim nächsten ausgegebenen Datenblock einen geänderten Ausgabewert enthält.
Probieren Sie bitte, wenn eine Dauer von 3.0s beabsichtigt ist, diese um die Abtastraten/Blockgrößen-Ratio zu verringern, hier wäre dies 0,1s (BG 10 / 100Hz --> 0,1[s]), sodass man sich die Dauer 2,9s anstatt 3,0s ergibt.

Bei Aktionen passiert vergleichbares, da Module, die Ziel einer Aktion sind, idR nicht sofort reagieren können, sondern erst dann, wenn bei der Abarbeitung aller Module im Schaltbild, sie wieder an der Reihe sind. Das kann dann auch erst beim "nächsten Block" eine Auswirkung haben.

 

Bei der Messhardware von MCC handelt es sich vmtl. um zwei einzelne USB-Module. Hier kenne ich die Hardware leider zu wenig, aber diese sind idR nicht miteinander synchronisiert, sodass es beim Zusammenspiel beider Geräte auch zu Latenzen kommen kann bzw. wird.
Hierzu möchte ich Sie bitten, sich direkt an Measurement Computing zu wenden, da MCC das Verhalten der Hardware und des MCC-DASYLab-Treibers (wird von MCC gepflegt) in diesem Fall besser beurteilen kann.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...