DRAFT Robot State Monitoring

Joints position

Estimations on Roboy Joint States is published under /external_joint_states topic. See electronics connections guide under Sensors & Actuators Connection Guide .

Ball joints

Roboy 3.0 has ball joints in his

  • neck

  • shoulders

  • wrists

  • hips.

Using magnetic sensors

We infer the 3DOF position of every ball joint based on the magnetic sensors data that are integrated in every joint. For more information on inference see https://devanthro.atlassian.net/wiki/spaces/R3/pages/731283457.

@Alona Kharchenko finish ball joints once HW is ready done by @Simon Trendel

Using HTC Vive Trackers

An alternative method to estimate the position of a 3DOF ball joint is to use HTC Vive trackers. This approach requires a VR-ready PC, HTC lighthouses and trackers, as well as Steam installed and the roboy_state_estimator repository cloned. An example procedure is described for the left shoulder below:

@Alona Kharchenko add pics of mounted trackers & steam vr
  1. Mount a Vive tracker on the torso and the shoulder (upper arm). Importantly, both trackers must have the same orientation.

  2. Start Steam VR

  3. Turn on the trackers and make sure they are visible (green in the Steam VR window).

  4. Execute the state estimation scripts

cd ~/roboy3/src/roboy_state_estimator git submodule init git submodule update export PYTHONPATH=$PYTHONPATH:$PWD/third_party/triad_openvr/ cd scripts python tracker_publisher.py rostopic echo /external_joint_states

Revolute joints

Elbows and knees are rolling joints and each of them has 2 magnetic sensors to measure the position of the joint. The data from 2 sensors is fused in roboy_plexus and is published on the ROS topic

rostopic echo /external_joint_states
@Alona Kharchenko add screenshot rostopic info for /external_joint_states

Joint states visualization

See Joint Control and Inverse Kinematics section for instruction on how to use RVIZ from Roboy.

RoboyState

/roboy/middleware/RoboyState provides the following values:

  • name of the robot

  • power_sense if connected to the myo_shield_v0.6 provides boolean information if a 24V line is turned on or off

  • power_5V_enabled true/false if this feature of the myo_shield_v0.6 is used

  • power_12V_enabled true/false if this feature of the myo_shield_v0.6 is used

  • current current consumption of the 5V and 12V line