PxVehicleFourWheelDriveDifferentialParams
Defined in include/vehicle2/drivetrain/PxVehicleDrivetrainParams.h
-
struct PxVehicleFourWheelDriveDifferentialParams : public PxVehicleMultiWheelDriveDifferentialParams
PxVehicleFourWheelDriveDifferentialParams specifies the wheels that are to receive drive torque from the differential and the division of torque between the wheels that are connected to the differential.
Additionally, it specifies the biases and strength of a limited slip differential that operates on two wheels specified as front wheels and two wheels specified as rear wheels.
Public Functions
-
inline void setToDefault()
-
inline bool isValid(const PxVehicleAxleDescription &axleDesc) const
-
inline PxVehicleFourWheelDriveDifferentialParams transformAndScale(const PxVehicleFrame &srcFrame, const PxVehicleFrame &trgFrame, const PxVehicleScale &srcScale, const PxVehicleScale &trgScale) const
Public Members
-
PxU32 frontWheelIds[2]
The ids of the two wheels considered by the differential to be the front pair.
Note
When the ratio of the rotational speeds of the front wheels exceeds frontBias, drive torque is diverted so that the ratio approaches the value specified by frontTarget. When the bias is not breached, the drive torque is specified by the corresponding entries in PxVehicleMultiWheelDriveDifferentialParams::torqueRatios.
-
PxU32 rearWheelIds[2]
The ids of the two wheels considered by the differential to be the rear pair.
Note
When the ratio of the rotational speeds of the rear wheels exceeds rearBias, drive torque is diverted so that the ratio approaches the value specified by rearTarget. When the bias is not breached, the drive torque is specified by the corresponding entries in PxVehicleMultiWheelDriveDifferentialParams::torqueRatios.
-
PxReal frontBias
The parameter frontBias specifies the maximum angular speed ratio of the two front wheels specified by frontWheelIds[2].
Note
If frontBias has value 0.0, the differential will not try to enforce any relationship between the rotational speeds of the two front wheels.
Note
If frontBias has value 0.0, the torque split between the front wheels is specified by the array torqueRatios.
Note
frontBias must have value 0.0 (deactivated limited slip) or be greater than 1.0 (activated limited slip) or be equal to 1.0 (locked axle).
Note
If frontBias has value greater than or equal to 1.0 then the array frontWheelIds must be specified and the corresponding entries of the isConnected[] array must be set true.
Note
If frontBias has value greater than or equal to 1.0 then frontTarget must also be specified.
Note
A locked axle may be achieved by setting frontBias and frontTarget to 1.0.
Note
A limited slip differential may be achieved by setting frontBias > 1.0 and frontBias > frontTarget > 1.0.
-
PxReal frontTarget
The parameter frontTarget specifies the target rotational speed ratio of the two front wheels in the event that the ratio exceeds frontBias and frontBias is configured for an activated limited slip or locked axle.
Note
frontTarget must be less than frontBias and greater than 1.0 to implement a limited slip differential.
Note
Set frontTarget and frontBias to 1.0 to implement a locked axle.
-
PxReal rearBias
The parameter rearBias specifies the maximum angular speed ratio of the two rear wheels specified by rearWheelIds[2].
Note
If rearBias has value 0.0, the differential will not try to enforce any relationship between the rotational speeds of the two rear wheels.
Note
If rearBias has value 0.0, the torque split between the rear wheels is specified by the array torqueRatios.
Note
rearBias must have value 0.0 (deactivated limited slip) or be greater than 1.0 (activated limited slip) or be equal to 1.0 (locked axle).
Note
If rearBias has value greater than or equal to 1.0 then the array rearWheelIds must be specified and the corresponding entries of the isConnected[] array must be set true.
Note
If rearBias has value greater than or equal to 1.0 then rearTarget must also be specified.
Note
A locked axle may be achieved by setting rearBias and rearTarget to 1.0.
Note
A limited slip differential may be achieved by setting rearBias > 1.0 and rearBias > rearTarget > 1.0
-
PxReal rearTarget
The parameter rearTarget specifies the target rotational speed ratio of the two rear wheels in the event that the ratio exceeds rearBias and rearBias is configured for an activated limited slip or locked axle.
Note
rearTarget must be less than rearBias and greater than 1.0 to implement a limited slip differential.
Note
Set rearTarget and rearBias to 1.0 to implement a locked axle.
-
PxReal centerBias
The parameter centerBias specifies the maximum angular speed ratio of the sum of the two front wheels and the sum of the two rear wheels, as specified by frontWheelIds[2] and rearWheelIds[2].
Note
If centerBias has value 0.0, the differential will not try to enforce any relationship between the rotational speeds of the front and rear wheels.
Note
If centerBias has value 0.0, the torque split between the front and rear rear wheels is specified by the array torqueRatios.
Note
centerBias must have value 0.0 (deactivated limited slip) or be greater than 1.0 (activated limited slip) or be equal to 1.0 (locked).
Note
If centerBias has value greater than or equal to 1.0 then the arrays frontWheelIds and rearWheelIds must be specified and the corresponding entries of the isConnected[] array must be set true.
Note
If centerBias has value greater than or equal to 1.0 then centerTarget must also be specified.
Note
A locked front/rear differential may be achieved by setting centerBias and centerTarget to 1.0.
Note
A limited slip differential may be achieved by setting centerBias > 1.0 and centerBias > centerTarget > 1.0
-
PxReal centerTarget
The parameter centerTarget specifies the target rotational speed ratio of the sum of the two front wheels and the sum of the two rear wheels in the event that the ratio exceeds centerBias and centerBias is configured for an activated limited slip.
Note
centerTarget must be less than centerBias and greater than 1.0 to implement a limited slip differential.
Note
Set centerTarget and centerBias to 1.0 to implement a locked differential.
-
PxReal rate
The parameter rate specifies how quickly the ratio of rotational speeds approaches the target rotational speed ratio.
Note
strength must be in range [0,PX_VEHICLE_FOUR_WHEEL_DIFF_MAXIMUM_STRENGTH].
Note
The ratio of rotational speeds is decremented each update by rate*dt until the ratio is equal to the target ratio.
Note
A value of 0 will result in a deactivated limited slip.
Note
A value of PX_VEHICLE_FOUR_WHEEL_DIFF_MAXIMUM_STRENGTH will result in instantaneous correction of the rotational speed ratios.
-
PxReal torqueRatios[PxVehicleLimits::eMAX_NB_WHEELS]
torqueRatios describes the fraction of torque delivered to each wheel through the differential.
Range: [1, -1]
Note
Wheels not connected to the differential must receive zero torque.
Note
Wheels connected to the differential may receive a non-zero torque.
Note
The sum of the absolute of the ratios of all wheels must equal to 1.0.
Note
A negative torque ratio simulates a wheel with negative gearing applied.
-
PxReal aveWheelSpeedRatios[PxVehicleLimits::eMAX_NB_WHEELS]
aveWheelSpeedRatios describes the contribution of each wheel to the average wheel speed measured at the clutch.
Range: [0, 1]
Note
Wheels not connected to the differential do not contribute to the average wheel speed measured at the clutch.
Note
Wheels connected to the differential may delivere a non-zero contribution to the average wheel speed measured at the clutch.
Note
The sum of all ratios of all wheels must equal to 1.0.
-
inline void setToDefault()