Quote:
Originally Posted by bretcobrageek
We've used the NAVX for the last 2 seasons with pretty good success. But we did have issues during autonomous after bouncing over defenses with things getting off a bit. The camera helped out, but 2-ball seemed like an impossibility.
We've seen some of the top teams using the Spartan board which has a different sensor setup but seemed to perform quite well. It also has locking connectors for the PWM's which is cool (other than having to buy new connectors), but we really haven't had that much problem with PWM wires coming loose.
Has anyone used both of these? Have any good experienced comparisons for us? Thanks!
|
As creator of the navX-MXP/MICRO I have to say that the Spartan connector breakout is very nicely done - kudos to WCP on that.
Moving beyond the side-by-side gyro accuracy comparisons which I understand are very similar, I'm not aware that the Spartan board has accelerometers or magnetometers on it. YMMV as to whether these features are valuable, but certain teams definitely use the accelerometer data to balance the robot, and the magnetometer to acquire initial compass orientation before the motors are energized at the start of a match.
Beyond the sensing capabilities, there's one key architectural feature in navX-MXP/navX-MICRO that definitely differentiates it - Simulaneous Multi-port data: using a dedicated 100Mhz microcontroller with simultaneous multi-port communication at 200Hz update rate (TTL UART, I2C, SPI and USB are all simultaneous).
The simultaneous multi-port data capability enables some very interesting features in a distributed processing environment, like connecting a navX-MXP/MICRO to both the RoboRIO and a separate video processor like the Raspberry PI or the nVidia Jetson. This allows the video processor to acquire IMU/1-millisecond resolution timestamp data from the navX at the instant each video frame is acquired, send that along with detection info to the RoboRIO, after which the Robot Control Software in the RoboRIO can look back into a 3D time history to correct the angles calculated by video processor to account for any motion occurring during the detection processor.
Note that this is a 3D time history of orientation, which includes not only changes to yaw but also tip and tilt; navX fuses gyro and accel data to yield a quaternion which represents 3d orientation.
The libraries and drivers to allow teams to easily add this capability to their robot control system are under development and are expected to be released by the time the 2017 season starts - as a free upgrade to existing navX-MXP and navX-MICRO customers.
Another useful feature this enables is to connect navX-MXP/navX-MICRO over USB to your PC to monitor it's behavior and/or stream sensor data to the PC disk at the same time it's connected to the RoboRIO.
Lastly, since I'm implying there's a dimension of apples and oranges in the comparison, one possibility I haven't heard discussed here is using the best of each. This configuration would use the Spartan board w/out the Gyro - for it's superior IO connector design - and then add a navX-MICRO sensor connected over USB for 9-axis, multiport orientation data.