Scope Eigenschaften
Bevor ein Scope mit der Aufnahme beginnen kann, müssen alle beteiligten Server verbunden werden. Zur Änderung der Aufnahmeeinstellungen dient das Scope-Settings-Window:
Record Mode
Die Record Time ist die Gesamtzeit der Aufnahme. Sie wird im Format Tage:Stunden:Minuten:Sekunden eingegeben.
Die Option "File Store" legt fest ob der Server die Daten in einer lokalen Datei zwischenspeichern soll oder ob er die Daten nur im Arbeitsspeicher hält. Die Auswahl sollte abhängig von der Menge der aufzunehmenden Daten und vom Aufnahmegerät gewählt werden. So ist die Zugriffszeit besser, wenn nur im Arbeitsspeicher gearbeitet wird. Bei größeren Datenmengen ist es jedoch meist nötig den File-Store zu nutzen.
Start Record
Hier kann eingestellt werden ob die Aufnahme bei betätigen des Aufnahme-Knopfes (Auto Start) oder auf das Eintreffen eines Triggerereignisses hin (Trigger Start), erfolgen soll.
Stop Record
Ring Buffer und Auto Stop -Modus legen fest wie ein Server bei erreichen der Aufnahmezeit reagieren soll.
- Ring Buffer: Die Aufnahme wird nicht gestoppt, sondern die ältesten Daten im Speicher werden überschrieben. Die Folge ist das die Startzeit der Aufnahme ansteigt. Die Aufnahme wird erst gestoppt, wenn der Stop-Button betätigt wird.
- Auto Stop: Die Aufnahme wird bei erreichen der Aufnahmedauer gestoppt. Ein vorzeitiges beenden der Aufnahme über den Stop-Button ist möglich.
Common
Hier kann ein freier Kommentar abgelegt werden.
Scope Toolbar
Mit der Toolbar wird die Aufnahme des Scopes gestartet und gestoppt. Weiterhin können hier aufgenommene Daten gespeichert werden. Die Übersicht zeigt die Buttons und deren Erklärung (von links):
- New-Symbole: Mit den ersten vier Schaltern können neue Elemente hinzugefügt werden.
- Delete: Mit dem Delete-Schalter wird das aktuelle Element gelöscht.
- Start Record: Alle benötigten Server werden aufgerufen und die Aufnahmeeinstellungen sowie die angeschlossenen Kanäle eingetragen. Sind bereits aufgenommene Daten aus einer vorangegangenen Sitzung vorhanden, so erscheint eine Abfrage, ob die aktuellen Daten gespeichert werden sollen. Danach wird die Aufnahme den obigen Einstellungen entsprechend gestartet. Nach dem Start ist eine Veränderung der Scope-Settings, der Akquisition oder das Hinzufügen oder Entfernen von Kanälen nicht mehr möglich.
-
Stop Record: Die Aufnahme wird beendet. Die
aufgenommenen Daten verbleiben jedoch auf den angeschlossenen
Servern und können eingesehen werden.
Nach dem Stoppen der Aufnahme ist das Verändern der Scope-Konfiguration wieder möglich. Die aktuellen Daten gehen dann allerdings verloren, sofern sie nicht gespeichert werden. - Save Data: Nach dem Stoppen der Aufnahme, können die aktuellen Daten inklusive der Konfiguration in einer .svd-Datei gespeichert werden.
Run Menü
Über das Run Menü sind die Funktionen der Scope-Toolbar ebenfalls erreichbar. Hier können auch die entsprechenden Tastenbelegungen eingesehen werden.
Zusätzlich befinden sich hier zwei Exportfunktionen
Export to CSV: Text Export um die Scope-Daten auch in anderen Programmen nutzen zu können. Die erzeugte Datei ist im Tabellenformat gehalten. Die Reihen sind hierbei durch Zeilen, die Spalten durch Tabulatoren getrennt. Die ersten Reihen beinhalten Information über die Aufnahme, wie Scope-Name oder Start, und Endzeit der Aufnahme.
Name |
Scope01 | ||
File | |||
StartRecord |
128783093223690000 |
Donnerstag, 5. Februar 2009 |
13:08:42 |
EndRecord |
128783093339880000 |
Donnerstag, 5. Februar 2009 |
13:08:53 |
Danach folgt für jeden Kanal ein Definitionsbereich mit den Akquisitionsdaten.
Name |
DREIECK |
NetId |
172.16.8.205.1.1 |
Port |
801 |
SampleTime[ms] |
1 |
SymbolBased |
TRUE |
SymbolName |
MAIN.DREIECK |
SymbolComment | |
IndexGroup |
16448 |
IndexOffset |
608 |
Data-Type |
ADST_REAL32 |
VariableSize |
4 |
Zum Schluss folgt für jeden Kanal eine Liste mit den aufgenommenen Daten. Erst der Zeitwert als Offset von der StartRecord- Zeit, dann der entsprechende Datenwert.
0 |
-1,03799391 |
1 |
-1,03599393 |
2 |
-1,033994 |
3 |
-1,031994 |
4 |
-1,029994 |
5 |
-1,027994 |
6 |
-1,02599406 |
7 |
-1,02399409 |
8 |
-1,02199411 |
9 |
-1,01999414 |
10 |
-1,01799417 |
11 |
-1,01599419 |
12 |
-1,01399422 |
13 |
-1,01199424 |
... |
... |
Export to Binary: Das binäre Datenformat ist an das Textformat angelehnt, enthält aber keinerlei Trennzeichen. Dafür sind in den entsprechenden Headern die Byte-Länge aller variablen Datentypen (wie Zeichenketten) enthalten. Alle Zeiten sind im File-Time-Format angegeben: 1Tick = 100ns; Ursprung ist der 1.1.1601 0h.
Variable |
Size (Bytes) |
DataType |
MAIN-HEADER | ||
HeaderSize |
8 |
Int64 |
NameSize |
4 |
Int32 |
Name |
NameSize |
Array of Char (1Byte) |
StartTime |
8 |
Int64 |
EndTime |
8 |
Int64 |
ChannelCount |
4 |
Int32 |
Variable |
Size (Bytes) |
DataType |
Channel - Header #1 | ||
ChannelHeaderSize |
8 |
Int64 |
NameSize |
4 |
Int32 |
Name |
NameSize |
Array of Char (1Byte) |
NetIdSize |
4 |
Int32 |
NetId |
NetIdSize |
Array of Char (1Byte) |
Port |
4 |
Int32 |
Sample Time |
8 |
Int64 |
SymbolBased |
1 |
bool (as byte) |
SymoblNameSize |
4 |
Int32 |
Symbolname: |
SymbolNameSize |
Array of Char (1Byte) |
CommentSize |
4 |
Int32 |
Comment |
CommentSize |
Array of Char (1Byte) |
IndexGroup |
8 |
Int64 |
IndexOffset |
8 |
Int64 |
DataTypeSize |
4 |
Int32 |
DataType |
DataTypeSize |
Array of Char (1Byte) |
DataTypeId |
4 |
Int32 |
VariableSize |
4 |
Int32 |
Samples in File |
8 |
Int64 |
Data in File |
8 |
Int64 |
File-StartPosition |
8 |
Int64 |
Channel - Header #2 | ||
... | ||
Channel-Header #MainHeader.ChannelCount | ||
Variable |
Size (Bytes) |
DataType |
Data Channel #1 | ||
DataPoint #1 | ||
Timestamp |
4 |
UInt32 |
Value |
ChannelHeader1.VariableSize |
ChannelHeader.DataType |
DataPoint #2 | ||
... | ||
DataPoint ChannelHeader #1.Samples In File | ||
Data Channel #2 | ||
... | ||
Data Channel #MainHeader.ChannelCount |
Konvertieren von Daten mit der Kommandozeile
Die mit dem ScopeView2 erzeugten Daten im Format .svd können auch über einen Kommandozeilenaufruf in eines der beiden alternativen Exportformate überführt werden. Die Konvertierung wird von der ScopeView2.exe durchgeführt; als Konvertierungsparameter dient ein -c. Anschließend müssen die Datendatei und die Zieldatei angegeben werden:
- Beispiel: C:\TwinCAT\Scope 2\View>TwinCatScopeView2.exe -c "C:\Scope2\DataFile.svd" "C:\Scope2\BiaryFile.svb"
Damit die Konvertierung ohne weitere Eingaben durchlaufen werden kann, muss der ScopeServer gestartet und die Datendatei vorhanden sein.
Hinweis | |
Eine ggf. existierende Datei mit dem Namen der Zieldatei wird ohne Rückfrage überschrieben. |