Skip to main content

TeleopIngestionScenario

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

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

Raw telemetry of one teleoperated session on machine: its navigation and wrist cameras, external_cameras RGB-D cameras, and the kinematic record at the permission tick.

Notes

Equation: Raw bandwidth sums RGB, depth, and kinematic streams; stored bytes=bandwidth*duration.

Assumptions: Uncompressed fixed-rate streams and optional uniform compression ratio; camera geometry comes from the supplied device entries.

Excludes: Codec cost, dropped frames, file framing, and storage replication.

References

Implementation references: mlsysim.physics.robotics.perception.calc_teleop_ingestion_budget. These helper contracts state the source assumptions; the scenario binds their inputs and derives the displayed ratios and budgets.

Examples

The named registry scenario supplies the stated inputs; this is a modeled calculation, not a new measurement.

>>> from mlsysim import Scenarios
>>> scenario = Scenarios.WarehouseTeleopIngestion
>>> round((scenario.total_rate).to('MB/s').magnitude, 6)
3121.6832

Attributes

Name Description
bytes_per_value
compressed_rate Aggregate MB/s after dividing all traffic by the supplied uniform compression ratio; excludes codec compute.
compressed_storage_per_hour TB per hour under the same uniform compression ratio as compressed_rate.
compression_ratio
depth_bytes_per_pixel
external_budget External-camera budget from _budget/calc_teleop_ingestion_budget; includes the declared number of RGB and depth streams.
external_camera
external_cameras
external_depth_rate Combined external depth bandwidth from the external budget, in MB/s.
external_rate Combined external RGB-plus-depth bandwidth, in MB/s.
external_rgb_rate Combined external RGB bandwidth from the external budget, in MB/s.
fast_drive_bandwidth
kinematic_rate Raw kinematic telemetry bandwidth in MB/s: record bytes times permission-record frequency.
kinematic_share Fraction of aggregate raw bandwidth occupied by kinematic records.
machine
nav_budget Navigation-camera and kinematic byte budget from _budget/calc_teleop_ingestion_budget; includes one RGB stream and no depth.
nav_over_slow_drive Dimensionless ratio of navigation RGB bandwidth to the supplied slower drive’s sustained bandwidth.
nav_rate Raw navigation RGB bandwidth from nav_budget['bw_rgb'], in MB/s.
record_bytes Bytes in one kinematic record: values for every servo axis plus its timestamp.
rgb_bytes_per_pixel
shift
slow_drive_bandwidth
storage_per_hour Raw storage in decimal TB for one hour, summing the three stream budgets.
storage_per_shift Raw storage in decimal TB for the declared shift duration at constant ingestion rates.
timestamp_bytes
total_rate Aggregate raw bandwidth in MB/s, summing navigation, wrist, external, and kinematic components once.
values_per_axis
wrist_budget Wrist-camera budget from _budget/calc_teleop_ingestion_budget; one RGB stream without kinematic traffic.
wrist_rate Raw wrist RGB bandwidth from wrist_budget['bw_rgb'], in MB/s.

machine

Type: Any.

Declared default: required.

external_camera

Type: Any.

Declared default: required.

external_cameras

Type: int.

Declared default: required.

rgb_bytes_per_pixel

Type: int.

Declared default: required.

depth_bytes_per_pixel

Type: int.

Declared default: required.

values_per_axis

Type: int.

Declared default: required.

bytes_per_value

Type: int.

Declared default: required.

timestamp_bytes

Type: int.

Declared default: required.

shift

Type: Quantity.

Declared default: required.

compression_ratio

Type: float.

Declared default: required.

slow_drive_bandwidth

Type: Quantity.

Declared default: required.

fast_drive_bandwidth

Type: Quantity.

Declared default: required.

record_bytes

engine.scenario_types.TeleopIngestionScenario.record_bytes

Bytes in one kinematic record: values for every servo axis plus its timestamp.

Equation: self.machine.servo_axes * self.values_per_axis * self.bytes_per_value + self.timestamp_bytes

kinematic_rate

engine.scenario_types.TeleopIngestionScenario.kinematic_rate

Raw kinematic telemetry bandwidth in MB/s: record bytes times permission-record frequency.

Equation: (self.record_bytes * Q_(1, ‘byte’) * self.machine.permission_rate).to(‘MB/s’)

nav_budget

engine.scenario_types.TeleopIngestionScenario.nav_budget

Navigation-camera and kinematic byte budget from _budget/calc_teleop_ingestion_budget; includes one RGB stream and no depth.

Equation: self._budget(self.machine.nav_camera, 1, False, self.kinematic_rate)

wrist_budget

engine.scenario_types.TeleopIngestionScenario.wrist_budget

Wrist-camera budget from _budget/calc_teleop_ingestion_budget; one RGB stream without kinematic traffic.

Equation: self._budget(self.machine.wrist_camera, 1, False)

external_budget

engine.scenario_types.TeleopIngestionScenario.external_budget

External-camera budget from _budget/calc_teleop_ingestion_budget; includes the declared number of RGB and depth streams.

Equation: self._budget(self.external_camera, self.external_cameras, True)

nav_rate

engine.scenario_types.TeleopIngestionScenario.nav_rate

Raw navigation RGB bandwidth from nav_budget['bw_rgb'], in MB/s.

Equation: self.nav_budget[‘bw_rgb’]

wrist_rate

engine.scenario_types.TeleopIngestionScenario.wrist_rate

Raw wrist RGB bandwidth from wrist_budget['bw_rgb'], in MB/s.

Equation: self.wrist_budget[‘bw_rgb’]

external_rgb_rate

engine.scenario_types.TeleopIngestionScenario.external_rgb_rate

Combined external RGB bandwidth from the external budget, in MB/s.

Equation: self.external_budget[‘bw_rgb’]

external_depth_rate

engine.scenario_types.TeleopIngestionScenario.external_depth_rate

Combined external depth bandwidth from the external budget, in MB/s.

Equation: self.external_budget[‘bw_depth’]

external_rate

engine.scenario_types.TeleopIngestionScenario.external_rate

Combined external RGB-plus-depth bandwidth, in MB/s.

Equation: self.external_budget[‘bw_vision’]

total_rate

engine.scenario_types.TeleopIngestionScenario.total_rate

Aggregate raw bandwidth in MB/s, summing navigation, wrist, external, and kinematic components once.

Equation: (self.nav_budget[‘bw_total’] + self.wrist_budget[‘bw_total’] + self.external_budget[‘bw_total’]).to(‘MB/s’)

storage_per_hour

engine.scenario_types.TeleopIngestionScenario.storage_per_hour

Raw storage in decimal TB for one hour, summing the three stream budgets.

Equation: (self.nav_budget[‘storage_per_hour’] + self.wrist_budget[‘storage_per_hour’] + self.external_budget[‘storage_per_hour’]).to(‘TB’)

storage_per_shift

engine.scenario_types.TeleopIngestionScenario.storage_per_shift

Raw storage in decimal TB for the declared shift duration at constant ingestion rates.

Equation: (self.storage_per_hour * self.shift.to(‘hour’).magnitude).to(‘TB’)

nav_over_slow_drive

engine.scenario_types.TeleopIngestionScenario.nav_over_slow_drive

Dimensionless ratio of navigation RGB bandwidth to the supplied slower drive’s sustained bandwidth.

Equation: (self.nav_rate / self.slow_drive_bandwidth).to(’’).magnitude

kinematic_share

engine.scenario_types.TeleopIngestionScenario.kinematic_share

Fraction of aggregate raw bandwidth occupied by kinematic records.

Equation: (self.kinematic_rate / self.total_rate).to(’’).magnitude

compressed_rate

engine.scenario_types.TeleopIngestionScenario.compressed_rate

Aggregate MB/s after dividing all traffic by the supplied uniform compression ratio; excludes codec compute.

Equation: (self.total_rate / self.compression_ratio).to(‘MB/s’)

compressed_storage_per_hour

engine.scenario_types.TeleopIngestionScenario.compressed_storage_per_hour

TB per hour under the same uniform compression ratio as compressed_rate.

Equation: (self.storage_per_hour / self.compression_ratio).to(‘TB’)

Back to top