Deploying a Policy on the Robot
Last updated
Last updated
Follow “Getting Started” in the robot-server
documentation.
Skip the dataset related parts if you're not running VINN
Install ROS1 within your Conda environment:
Reference:
Perform joint calibration by running stretch_robot_home.py
.
.
Follow documentation in for running roscore
and start_server.py
on the robot.
Ensure that both of the previous commands are both running in the background in their own separate windows.
Transfer over the weights of a trained BC policy to the robot.
Take the last checkpoint (saved after 50th epoch):
In configs/run.yaml
set model_weight_pth
to the path containing the trained BC policy weights.
Run in terminal:
Transfer over the encoder weights and finetune_task_data
onto the robot.
We recommend doing so using rsync
To speed up the transfer of data and save space on the robot, only transfer the necessary files:
In configs/run_vinn.yaml
set checkpoint_path
to encoder weights.
In configs/dataset/vinn_deploy_dataset.yaml
, set include_tasks
and include_envs
to be a specific task (i.e. Drawer_Closing) and environment (i.e. Env2) from the finetune_task_data
folder.
Run in terminal:
h
Bring the robot to its "home" position
r
Reset the "home" position height
Height values are in the range ~(0.2 to 1.1)
Wait a second or two, then home the robot ("h") to move to this height
s
Enter a value 1-10
Home the robot by "h" to move to the fixed starting position
↵ (Enter)
Take one "step" of the policy
Alternative: Enter some number + ↵ to "step" n times (i.e. 5 + ↵ for 5 "steps")