Supported Sensors

Neobotix USBoard

neobotix-usboard
V2.0.5-pr.5
CAN
350

PolySync Configuration

Driver Notes

  • -c
    • use provided CAN channel system index instead of what is stored in the SDF [optional]
  • -t
    • perform a validation test on the interface [optional]
  • -d
    • enable additional debugging output [optional]
  • -g
    • get the board identifier address from the Neobotix USBoard interface [optional]

Sensor Configuration Parameters

Parameter ID Description Value Type Values Notes
1009 Sensor 1 Identifier 1 1
1010 Sensor 1 X Position 3 0
1011 Sensor 1 Y Position 3 0
1012 Sensor 1 Z Position 3 0
1013 Sensor 1 Roll Orientation 3 0
1014 Sensor 1 Pitch Orientation 3 0
1015 Sensor 1 Yaw Orientation 3 0
4788 Sensor 1 enabled status (Default 1 means enabled, 0 disabled). Requires hardware connection. 1 1
4808 Sensor 1 warning distance, discreet value. Requires hardware connection. [cm] 1 100

IO Configuration Parameters

Parameter ID Description Value Type Values Notes
1009 Sensor 1 Identifier 1 1
1010 Sensor 1 X Position 3 0
1011 Sensor 1 Y Position 3 0
1012 Sensor 1 Z Position 3 0
1013 Sensor 1 Roll Orientation 3 0
1014 Sensor 1 Pitch Orientation 3 0
1015 Sensor 1 Yaw Orientation 3 0
4788 Sensor 1 enabled status (Default 1 means enabled, 0 disabled). Requires hardware connection. 1 1
4808 Sensor 1 warning distance, discreet value. Requires hardware connection. [cm] 1 100

Node Configuration Parameters

Parameter ID Description Value Type Values Notes
800 Active Coordinate Frame Identifier 1 4
400 CAN Channel 0 Hardware Identifier 1 0
401 CAN Channel 0 Circuit Identifier 1 0
4900 CAN Baud rate. 500 kilobaud. Read-only. 1 500
4901 CAN basic address.Valid range 0-65535. Default 1024. Use vendor tool to configure. Requires hardware connection. 1 1024
4903 Measurement request interval. Hz 3 10
4904 Sensor firing order. Requires hardware connection. 4 1 16 2 15 3 14 4 13 5 12 6 11 7 10 8 9
4905 Neobotix USBoard board identifier. 1 0
4906 Neobotix USBoard sensor wide sensitivity, discreet value. [1-100]. Requires hardware connection. 1 30
2082 Publishes message type “ps_zones_msg” (value 0 means disabled) 1 1
42 PolySync-abstraction-Layer Interface File Name 4 /usr/local/polysync/lib/libps_neobotix_usboard_interface.so
40 Executable File Path 4 /usr/local/polysync/bin/polysync-core-dynamic-driver

Sensor Notes

Run node with -t option to verify device is configured correctly. (example: $polysync-core-dynamic-driver -n 1 -t) If the test passed, it prints: Neobotix USBoard interface test passed Next run the Dynamic Driver node with the -g option to get Sensor ID. It will print something like: board id - 15100920

Update the Sensor 0 Identifier in the SDF configurator. Now you may star the node and configure each sensors mount position.

The firing order is fully configurable. The order is set with a space separated list defaulting to 1 16 2 15 3 14 4 13 5 12 6 11 7 10 8 9

This corresponds to sensor 1 firing first, sensor 16 firing second, sensor 2 firing third, etc.

Measurement request interval is configurable but beware! This is only a REQUEST interval, the device documentation species measurement intervals of 0.5 seconds, 1 second and 2 seconds. Although the device will respond and zones will be published changes in measurement data may not reflect the interval. i.e. changes in zone activity may not be visible much faster than 0.5 seconds. (lower sensitivity value does seem to correlate to faster measurement updates) A value of 0 for Measurement request interval disables measurement requests, and no messages will be published.

Warning distance is configurable in the device but indications of whether the zone registers a warning is not reported in zone readings by the device and so not indicated in the published zones messages. Notifications of warning and alert distances originate from the board, relays and LEDs.

  • Keep in mind the max range of these devices is 1.5 meters. So, for instance, setting a warning distance beyond 150 cm is nonsense and the behaviour is undefined.
  • In PolySync Studio if the measurement distance is 0 then the zone is not drawn.
  • The PolySync Neobotix USBoard interface requires a 500K Baud rate, the device’s default
    • If for some reason an external tool is used to set the baud to another rate, the interface will fail
  • The basic address parameter is required to communicate with the device
    • The default value is 1024 and shouldn’t need to be changed unless there are multiple Neobotix USBoard devices communicating on the same channel
  • In order to handle multiple Neobotix USBoards sharing a single CAN channel each device’s basic address’ must be distinct
    • To configure a Neobotix USBoard’s basic address the vendor’s Windows tool is required
  • If all sensors are disabled on the hardware with the enabled status parameter (set to 0) no data is produced and the device will enter a fault state due to a lack of communication with the device
  • Zones are reported in bursts of 4 (1-4, 5-8, 9-12, 13-16) so each ps_zones_msg contains 4 zones rather than bundling up all 16 in one message
    • Due to the nature of how the device operates, if sensors 1,2 and 3 are disabled but sensor 4 is enabled you will see 4 zones published corresponding to zones 1,2,3 and 4 but zones 1,2,3 will have quality fields with a value of QUALITY_INVALID.
  • The sensors themselves seem to be subject to cross-talk or noise from other nearby devices that can result in distances reported beyond the documented max measurement range of the device
    • When a measurement distance exceeds the documented max range of 1.5 meters the zone’s quality field is set to QUALITY_INVALID (except in the special 2.55 meter case)
  • Some parameters are described with Requires hardware connection which means that attempting to configure them when the interface is running in no hardware mode and no device is connected will result in a fault state.