Skip to main content

ForceRiseGapScenario

Robotics scenarios · Implementation: mlsysim/engine/scenario_definitions/robotics/learning.py.

Construct this scenario with keyword inputs. The fields below show the types and defaults declared by this class.

An illustrative linear drive regulating target_force against a surface, in simulation and on hardware, with one stated discrepancy in each reality-gap channel: dynamics (force-rise rate and drive delay), timing (p99 actuation delay against the simulator’s), sensing (range bias and dropout), and appearance (pixel difference hiding a contact-patch shift).

Notes

Equation: Target time is force/rise_rate; missed travel is speed times the extra actuation delay.

Assumptions: Constant force-rise rates and approach speed over the compared delay windows.

Excludes: Closed-loop dynamics, statistical fitting of the supplied p99, and coupled reality-gap channels.

References

Derivation: A constant force slope reaches a specified force after force/slope. A constant approach speed traverses speed*extra_delay during the omitted delay. The supplied simulated and physical rates define the comparison; the class does not estimate them.

Examples

>>> from mlsysim import Scenarios
>>> s = Scenarios.LinearDriveRealityGap
>>> s.physical_time_to_target.to("ms").magnitude > 0
True

Attributes

Name Description
approach_speed
chamfer_tolerance
drive_delay
dropout_frames
overtravel
p99_delay
patch_shift
physical_rise_rate
physical_time_to_target Time in ms to reach the target under the supplied hardware force-rise rate.
pixel_difference
range_bias
simulated_delay
simulated_rise_rate
simulated_time_to_target Time in ms to reach the target under the assumed simulated linear force-rise rate.
simulator_step
target_force
unmodeled_travel Travel before correction that the simulator’s delay does not predict.

approach_speed

Type: Quantity.

Declared default: required.

target_force

Type: Quantity.

Declared default: required.

simulated_rise_rate

Type: Quantity.

Declared default: required.

physical_rise_rate

Type: Quantity.

Declared default: required.

p99_delay

Type: Quantity.

Declared default: required.

simulated_delay

Type: Quantity.

Declared default: required.

simulator_step

Type: Quantity.

Declared default: required.

drive_delay

Type: Quantity.

Declared default: required.

overtravel

Type: Quantity.

Declared default: required.

range_bias

Type: Quantity.

Declared default: required.

dropout_frames

Type: int.

Declared default: required.

pixel_difference

Type: float.

Declared default: required.

patch_shift

Type: Quantity.

Declared default: required.

chamfer_tolerance

Type: Quantity.

Declared default: required.

simulated_time_to_target

engine.scenario_types.ForceRiseGapScenario.simulated_time_to_target

Time in ms to reach the target under the assumed simulated linear force-rise rate.

Equation: (target_force / simulated_rise_rate).to('ms').

physical_time_to_target

engine.scenario_types.ForceRiseGapScenario.physical_time_to_target

Time in ms to reach the target under the supplied hardware force-rise rate.

Equation: (target_force / physical_rise_rate).to('ms').

unmodeled_travel

engine.scenario_types.ForceRiseGapScenario.unmodeled_travel

Travel before correction that the simulator’s delay does not predict.

Equation: (approach_speed * (p99_delay - simulated_delay)).to('mm').

Back to top