Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • byteorder: The byte order for the communication (optional)
  • username: The username for the administration of the laser scanner(optional)
  • password: The password for the administration of the laser scanner (optional)
  • rawdata: Should the rawdata sent by the scanner be added to the key-value object? (default: false)
  • ignoretimestamp: Should the scanner timestamp be replaced with the current stream time? (default: false) Note: this does not change the time stamp in the rawdata-string!

Schema

The output of the protocol handler provides the following attributes that can be used through the schema of the access operatoras a key-value object:

NameTypeDescription
TimestampTIMESTAMPLongThe time of measurement in UTC (Time provided by scanner unless "ignoretimestamp" is set
VERSIONVersionStringThe version of the laser scanner
DeviceDEVICEStringThe device ID
SerialSERIALStringThe factory serial number
StatusSTATUSIntegerThe status of the scanner
MessageCountMESSAGECOUNTIntegerThe message counter starting at the first measured value message. When the upper limit is reached, the counter starts again at 0.
ScanCountSCANCOUNTIntegerThe scan counter starting with the first scan after confirmation of the measured value message. When the upper limit is reached, the counter starts again at 0.
PowerUpDurationPOWERUPDURATIONLongThe time since the scanner was switched on.
TransmissionDurationTRANSMISSIONDURATIONLongThe time since the transfer of the measured values
InputStatusINPUTSTATUSBooleanThe state of the digital inputs
OutputStatusOUTPUTSTATUSBooleanThe state of the digital outputs
ScanningFrequencySCANNINGFREQUENCYLongThe scanning frequency
MeasurementFrequencyMEASUREMENTFREQUENCYLongThe frequency between two separate measurements
POSITIONMatrixThe position
POSITIONROTATIONTYPEIntegerThe position rotation type
DISTANCE8BIT

Matrix

The measured distance values (8bit)
REMISSION8BITVectorThe measured remission (8bit)
DISTANCE8BIT2

Matrix

The measured distance values (8bit)
REMISSION8BIT2VectorThe measured remission (8bit)
DISTANCE16BITMatrixDist1List<SpatialPolarCoordinate>The measured distance values (16bit)
Rssi1REMISSION16BITList<Double>VectorThe measured remission (16bit)
Dist2DISTANCE16BIT2List<SpatialPolarCoordinate>MatrixThe measured distance values (16bit)
Rssi2REMISSION16BIT2List<Double>VectorThe measured remission (16bit)
RAWDATAStringThe original raw data sent by the scanner (enabled by the "rawdata" option)

Example

To access the different attribute values the KeyValueToTuple operator can be used to transform the required attributes into a relational tuple.

PQL

Code Block
languagejs
titleLMS1xx Protocol Handler
linenumberstrue
input = ACCESS({source='lms1', 
                wrapper='GenericPush',
                transport='TCPClient',
                protocol='SICKLMS1xx',
                dataHandler='SICKKeyValueObject',
                options=[['host','192.168.1.20'],['port','2111']],
})

out  schema=[= KEYVALUETOTUPLE({
          schema=[['dist1DISTANCE16BIT', 'SpatialPolarCoordinateMatrix']],
  ]
})

CQL

Code Block
languagesql
titleLMS1xx Protocol Handler
linenumberstrue
CREATE STREAM lms1 (dist1 SpatialPolarCoordinate)   
    WRAPPER type='GenericPushScan'
    PROTOCOL 'SICK'
    TRANSPORT 'File'
    DATAHANDLER 'Tuple'
    OPTIONS ( 'host' '192.168.1.20', 'port' '2111',
          keepinput='false' 
        },
        input
      )