Jump to content

Recommended Posts

Guten Tag,

ich habe folgendes Problem:

Ich benutze den Block GLOBALE VARIABLE LESEN um meine Variablen in den Block DATEN SCHREIBEN zu übergeben. Dabei schreibt mir DasyLab jede Zehntelsekunde den aktuellen Wert der Variablen in die Datei. Ich möchte dies jedoch kontrollieren können, sprich einen Eingang etc. verwenden, welchen ich mit einem Ausgang der STATEMACHINE ansteuere. Zurzeit habe ich im Block GLOBALE VARIABLE LESEN in Zeitbasis einen Eingang erstellt, mit welchem ich den Vorgang triggern könnte?? Jedoch ohne Erfolg.

Vielen Dank bereits im Voraus.

Link to post
Share on other sites

Hallo!

Der Eingang einer Software-Datenquelle dient dazu, dass man sich mit einem anderen Datenstrom synchronisieren kann -- manche Hardware bietet keine Zeitbasis an, die man dann anstatt "DASYLab", "Treiber", "NI DAQmx Tasks" usw. als Zeitbasis in einem Schalter-, Handregler etc einstellen kann.

Sie können aber mal die untere Variante (s. Bild) ausprobieren: das "Variable lesen"-Modul hat einen Eingang. Davor sind Relais und Schalter (Impulstaster-Typ).
Der Schalter nutzt die Zeitbasis "DASYLab" (10 Hz, BG 1). Betätigt man den Impulstaster, gibt dieser für genau einen Datenwert 5.0V aus (0.0V sonst). Das Relais lässt folglich nur dann einen Datenblock passieren, wenn man den Schalter drückt.
Dieser eine Datenblock kommt am Eingang des "Variable lesen"-Moduls an. Das Modul gibt immer nur dann Daten aus, wenn es auch Blöcke am Eingang empfängt. Da dies immer nur bei einem Tastendruck passiert, wird entsprechend der aktuelle Variablenwert nur bei einem Tastendruck ausgegeben und an das "Variable schreiben"-Modul übergeben.
Der Inhalt der Datenblöcke, die am Eingang des "Variable lesen-Modul ankommen, sind für das Modul unerheblich: es nutzt nur die Meta-Information über Abtastrate, Blockgröße und den Zeitstempel für seine eigene Ausgabe von Datenblöcken.

Alternativ könnten Sie auch eine Aktion (Kategorie: Spezial) nutzen und den Variableninhalt mit der Aktion "Variable kopieren" bzw. "Variable setzen" einmalig bzw. bei Bedarf in einer andere Variable übertragen. Das Ereignis der Aktion könnte bspw. "Steigende Flanke" (oder "Wert erreicht 5.0V) sein, dann müssten Sie in einem Schritt der Statemachine kurzeitig 5.0V ausgeben (im vorherigen und nachfolgenden Schritt muss die Ausgabe 0.0V sein).

 

var_read_write.jpg

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...