Robot setup
The NUC runs two programs: DROID's server, which drives the arm and gripper through polymetis (teleop uses it), and TiPToP's shim, which the planner uses to control the arm. Do steps 1–4 on the NUC.
-
Install DROID. Follow DROID's NUC guide (Docker or host), using the
TANDEMbranch of the fork:git clone -b TANDEM --recurse-submodules https://github.com/SamratSahoo/droid.gitIts "Configure Parameters" step sets
robot_ip(the arm's control box) andsudo_passwordindroid/misc/parameters.py. The server needs both. -
Add TiPToP's shim. In the DROID checkout, with DROID's polymetis environment active:
curl -LO https://raw.githubusercontent.com/SamratSahoo/tiptop/6cabf0f598515c5e149627456c0fdd889cc701d4/bamboo_polymetis_shim.py pip install pyzmq msgpack -
Start DROID's server in one terminal:
python scripts/server/run_server.pyIt starts polymetis's robot server (port 50051) and gripper server (port 50052), replacing any already running.
-
Start the shim in a second terminal:
python bamboo_polymetis_shim.pyIts log should show
PolymetisGripper connected to localhost:50052. It listens on ports 5555 (control), 5557 (state) and 5559 (gripper). -
Check from the workstation:
tandem doctorThe robot rows should pass. If the NUC's address is wrong, run
tandem rig set robot.host NUC_ADDRESS, with your NUC's IP address or hostname.
Leave both terminals running while you collect. Steps 3 and 4 are needed again after the NUC restarts.