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
TrueAttributes
| 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').