You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Since some of Stretch's encoders are relative, there's a homing sequence to find zero for those joints when Stretch wakes up. Typically, this would include running the stretch_robot_home.py CLI while SSH-ed into the robot. With the remote teleop capability this repo provides, it would be nice to offer an easy way to home the robot through the web interface. Likely, this would use the /home_the_robot ROS service provided by the driver node (stretch_driver in the Stretch Core pkg) to perform the homing procedure, and the /is_homed topic (std_msgs/Boolean) to check if the robot has been homed. The button to home the robot should be prominently placed.
From a UX perspective, the web interface should disable teleop of all joints that use relative encoders (e.g. arm, lift, wrist yaw, gripper) until the robot has been homed. Other joints (e.g. the mobile base, the head pan/tilt, wrist pitch, and wrist roll) can work normally because their encoders are absolute.
Lastly, but most importantly, the homing procedure involves raising and extending the arm. If the robot is in a narrow area, there's risk that the robot can topple itself or rearrange the environment while it blindly homes the joints. Therefore, the best version of this feature includes a pre-homing scan to confirm that the area immediately surrounding the are is clear of obstacles.
TODOs
Provide a way to home the robot
Grey-out joints that have not been homed
Write a pre-homing scanning routine to ensure it is safe to jog the arm
The text was updated successfully, but these errors were encountered:
hello-binit
changed the title
Home the robot from the web interface
Home the robot through the web interface
Jun 25, 2024
Since some of Stretch's encoders are relative, there's a homing sequence to find zero for those joints when Stretch wakes up. Typically, this would include running the stretch_robot_home.py CLI while SSH-ed into the robot. With the remote teleop capability this repo provides, it would be nice to offer an easy way to home the robot through the web interface. Likely, this would use the/home_the_robot
ROS service provided by the driver node (stretch_driver
in the Stretch Core pkg) to perform the homing procedure, and the/is_homed
topic (std_msgs/Boolean) to check if the robot has been homed. The button to home the robot should be prominently placed.From a UX perspective, the web interface should disable teleop of all joints that use relative encoders (e.g. arm, lift, wrist yaw, gripper) until the robot has been homed. Other joints (e.g. the mobile base, the head pan/tilt, wrist pitch, and wrist roll) can work normally because their encoders are absolute.
Lastly, but most importantly, the homing procedure involves raising and extending the arm. If the robot is in a narrow area, there's risk that the robot can topple itself or rearrange the environment while it blindly homes the joints. Therefore, the best version of this feature includes a pre-homing scan to confirm that the area immediately surrounding the are is clear of obstacles.
TODOs
The text was updated successfully, but these errors were encountered: