Headstage 64 Ts4231
The following excerpt from the Headstage 64 example workflow demonstrates the Headstage 64's position tracking capabilities.
The TS4231V1PositionData operator generates a sequence of
TS4231V1PositionDataFrames. A TS4231V1PositionDataFrame
is emitted
when a receiver on the Headstage 64 captures a sequence of 12 optical signals from a pair of lighthouses which occurs at
30 Hz. Therefore, with no occlusions, the maximum achievable sample rate is 30 Hz per receiver. There are three
receivers on the Headstage 64, so TS4231V1PositionData
can emit up to 3 TS4231V1PositionDataFrames
in a single 30 Hz
sampling cycle. Of course, if occlusions cause receivers to miss optical signals, this rate will be reduced.
The TS4231V1PositionData
's DeviceName
property is set to "Headstage64/TS4231V1". This links the
TS4231V1PositionData
operator to the corresponding configuration operator.
The CsvWriter operator writes the Clock
, and Position
members from the TS4231V1PositionDataFrame
to a file with the following name format: ts4231v1__<filecount>.csv
.
Because CsvWriter
is a sink operator, its output sequence is equivalent to its input sequence. In other words, its
output is equivalent to TS4231V1PositionData
's output. Therefore, it's possible to use
MemberSelector operators on the
CsvWriter
to select members from TS4231V1PositionDataFrame
. This is most easily performed by clicking the relevant
members that appear by hovering over the "Output" option that appears in the context menu that appears after
right-clicking the CsvWriter
node. The Position member is selected in
the workflow to help visualize the position data by double-clicking the node when the workflow is running