diff --git a/README.md b/README.md index 610ff07..eb8cfff 100644 --- a/README.md +++ b/README.md @@ -50,3 +50,5 @@ sensors: The above configuration assumes a ROS topic named `/mujoco/tactile_sensor` with a message of type [mujoco_tactile_sensor_plugin/TactileSensorData](https://github.com/isri-aist/MujocoTactileSensorPlugin/blob/main/msg/TactileSensorData.msg) being published by some node (e.g. [isri-aist/MujocoTactileSensorPlugin](https://github.com/isri-aist/MujocoTactileSensorPlugin)). The tactile sensor frame (e.g. `jvrc1_right_elbow_tactile_sensor`) must be defined in a URDF model (e.g. `jvrc_description/urdf/jvrc1.urdf`). The force sensor (e.g. `RightElbowForceSensor`) must be defined in robot module (e.g. `mc_rtc/src/mc_robots/jvrc1.cpp`). + +For system details for using tactile sensor with mc_mujoco, please refer to [here](doc/McMujocoTactileSensorSytem.md). diff --git a/doc/McMujocoTactileSensorSytem.md b/doc/McMujocoTactileSensorSytem.md new file mode 100644 index 0000000..42f7acb --- /dev/null +++ b/doc/McMujocoTactileSensorSytem.md @@ -0,0 +1,31 @@ +## System details for using tactile sensor with mc_mujoco + +### Data flow +MujocoTactileSensorPlugin (MuJoCo plugin) simulates the tactile sensor and publishes the data as a ROS topic. Then, McRtcTactileSensorPlugin (mc_rtc plugin) subscribes the data and sets them as measured values in mc_rtc's force sensor. + +![McMujocoTactileSensorSytem.png](images/McMujocoTactileSensorSytem.png) + +### Model and configuration files + +Typical descriptions of tactile sensors in the model and configuration files are as follows: + +- MJCF (XML) + - The `site` (i.e., frame) of the tactile sensor (\#Frame1) + - `topic_name` to publish the tactile sensor data +- URDF + - Dummy (fixed) joint and link for the frame of the tactile sensor (\#Frame2) +- mc_rbdyn::RobotModule + - Force sensor frame (\#Frame3) +- Configuration file of the mc_rtc controller (e.g., YAML) + - Frame of contact (\#Frame4) +- Configuration file of McRtcTactileSensorPlugin (e.g., YAML) + - Frame name of the tactile sensor defined in the URDF + - Force sensor name defined in the mc_rbdyn::RobotModule + - Topic name defined in the MJCF + +These descriptions are subject to the following constraints: + +- The parent link of \#Frame1, \#Frame2, \#Frame3, and \#Frame4 must all be identical. +- The locations of \#Frame1 and \#Frame2 must be identical. +- The locations of \#Frame1 and \#Frame3 do not have to be the same; dummy location (e.g., Identity) is acceptable for \#Frame3. +- The locations of \#Frame1 and \#Frame4 do not have to be the same; however, they are the same in the main test case. diff --git a/doc/images/McMujocoTactileSensorSytem.png b/doc/images/McMujocoTactileSensorSytem.png new file mode 100644 index 0000000..2634cb7 Binary files /dev/null and b/doc/images/McMujocoTactileSensorSytem.png differ