...
Minimal parsing where we only have information about the vehicle speed CAN message.
Separate four wheel speed parsing, velocity sign information may be added if the gear stick reading is available.
Parsing with steering model information, there are two ways to specify the steering tables depending on the information available:
steering wheel angle vs (right or left) wheel angles
orsteering wheel angle vs average wheel angles
. Using this data we can perform linear interpolation to compute the wheel angles for any given steering angle and use it forAckermann
steering.
Minimal
...
Vehicle Parsing
This parser only requires information about the overall vehicle speed message. So it only provide this data as input to the fusion algorithm. Even though this can be enough for some use cases, it may be better to provide separate wheel speeds to extract and use the vehicle angular velocity information as well.
...
Code Block |
---|
"vehicle": { "type": "Automotive", "vehicleStateEndpoint": "tcp://*:8999", "settings": { "canInterface": "Internal", "canEndpoint": "tcp://localhost:9921", "vehicleType": "Minimal", "canProtocol": { "velocityCanId": 209, "velocityScale": 0.015625012, "endianness": "little", "velocityBitsLength": 16, "velocityStartBit": 0 } } } |
Vehicle
...
Parsing with Separate Wheel Velocities
Parameter name | Description | Default |
---|---|---|
canInterface | CAN bus interface, supported values are | PeakCAN |
vehicleType | Used to specify the parser type, available values are:
| n/a |
wheelBase | Distance between front and back wheels. | n/a |
trackWidth | Distance between right and left back wheels. | n/a |
velocityCanId | CAN id for the velocities message | n/a |
velocityScale | Value to multiply the parsed raw velocities by in order to get velocities in m/s. | 1.0 |
velocityStartBits | Within this parameter, one need to specify the starting bits of each wheel velocity | 0, 16, 32, 48 respectively. |
velocityBitsLength | Number of bits used for each wheel velocity encoding. | 16 |
endianness | Specify if the CAN data endianness is | little |
driveModel | When no steering information is available, only | Differential |
canEndpoint | Output endpoint of Vehicle data. This parameter is optional. | tcp://*:8802 |
...
Code Block |
---|
"vehicle": { "type": "Automotive", "vehicleStateEndpoint": "tcp://*:8999", "settings": { "canInterface": "Internal", "canEndpoint": "tcp://localhost:9921", "vehicleType": "External", "wheelBase": 2.750, "trackWidth": 1.595, "canProtocol": { "velocityCanId": 212, "velocityScale": 0.015625012, "endianness": "little", "velocityStartBits": { "FrontLeftWheel": 0, "FrontRightWheel": 16, "RearLeftWheel": 32, "RearRightWheel": 48 } } } } |
Additional
...
Parameters
Gear
...
Stick Position for Velocity Sign
If available, the gear stick reading data can be parsed to determine the velocity sign.
Parameter name | Description | Default |
---|---|---|
gearCanId | gear Gear stick message CAN id | n/a |
gearStartBit | gear Gear stick message start bit | n/a |
gearBitsLength | Number of bits used for gear stick message encoding. | n/a |
gearReverseValue | Reverse driving gear stick value. | n/a |
...
Parameter name | Description | Default |
---|---|---|
type | Type of vehicle. Currently only | Automotive |
vehicleStateEndpoint | Endpoint for vehicle state output | tcp://*:8999 |
canInterface | CAN interface used for readin odometry data. Allowed options:
| PeakCAN |
vehicleType | Type of vehicle. Currently supported vehicles have to be manually added. Contact us for details. | R56 (BMW Mini) |
Vehicle
...
Source Output Data Types
The vehicle source published the raw CANData
it reads from the CAN bus in addition to VehicleState
and VehicleSpeed
message. The latter is used as input to the sensor fusion algorithms.
...