22 lines
681 B
Python
22 lines
681 B
Python
from typing import Protocol
|
|
|
|
|
|
def get_arm_id(name, arm_type):
|
|
"""Returns the string identifier of a robot arm. For instance, for a bimanual manipulator
|
|
like Aloha, it could be left_follower, right_follower, left_leader, or right_leader.
|
|
"""
|
|
return f"{name}_{arm_type}"
|
|
|
|
|
|
class Robot(Protocol):
|
|
# TODO(rcadene, aliberts): Add unit test checking the protocol is implemented in the corresponding classes
|
|
robot_type: str
|
|
features: dict
|
|
|
|
def connect(self): ...
|
|
def run_calibration(self): ...
|
|
def teleop_step(self, record_data=False): ...
|
|
def capture_observation(self): ...
|
|
def send_action(self, action): ...
|
|
def disconnect(self): ...
|