Open aeastet opened 7 years ago
How do you envision GRIP being integrated into SF2?
In general, GRIP can output detection events to either NetworkTables or as ROS messages, and SF2 can be a client of NetworkTables on the RoboRIO [or to ROS messages on ROS-based platforms]. A set of target detection events (each providing an "object type", "angle to target", "distance to target" and "timestamp") would thus be generated from GRIP, and communicated through the network. A timestamp would be used to select (in the timestamped orientation history) the orientation sample corresponding to "now" and to the time when the image was acquired. The delta in orientation angle is then added to the angle from the camera to correct for latency-based angular error. In this model, a shared timestamp is required. In a RoboRIO-based system, in the case where a navX sensor input (e.g., USB from the navX-MXP) is available to the Vision Processor, the sensor timestamp should placed into the GRIP target detection message. In the case where the navX-model device timestamp is not available to the Vision Processor, the Vision Processor and Robot Controller must share a common clock (e.g., based on NNTP server timestamp) - and that timestamp is placed into the message from GRIP. Kauai Labs will soon be releasing a new product which (among other things) will enable a NNTP server approach via battery-backed Real-time clock that can be used to achieve this in a RoboRIO-based configuration.
Add the ability for GRIP integration into SF2 software.