# 4.1.1.7. op3\_tuning\_module

**Overview**

* 本節介紹使用於 offset 偏移和 gain 增益調整的模組。

**Getting Started**

* Download & Build
  * 參考： [**Installing ROBOTIS ROS Package**](http://emanual.robotis.com/docs/en/platform/op3/recovery/#installing-robotis-ros-packages)
* 用法。此 Motion 模組在 manager 中以程式庫的形式使用
  * 參考： [**Creating new robot manager**](http://emanual.robotis.com/docs/en/software/robotis_framework_packages/tutorials/#creating-new-robot-manager)

**ROS API**

* Subscribed Topics
  * **/robotis/tuning\_module/tuning\_pose** ([std\_msgs/String](http://emanual.robotis.com/docs/en/popup/std_msgs_string/))&#x20;
    * 用於更改姿態而調整增益的消息
  * **/robotis/tuning\_module/joint\_offset\_data** ([op3\_tuning\_module\_msgs/JointOffsetData](http://emanual.robotis.com/docs/en/popup/\(op3_tuning_module_msgs\)JointOffsetData.msg/))&#x20;
    * 用於更改 offset 偏移量的消息&#x20;
  * **/robotis/tuning\_module/joint\_gain\_data** ([op3\_tuning\_module\_msgs/JointOffsetData](http://emanual.robotis.com/docs/en/popup/\(op3_tuning_module_msgs\)JointOffsetData.msg/))&#x20;
    * 用於更改 gain 增益的消息
  * **/robotis/tuning\_module/torque\_enable** ([op3\_tuning\_module\_msgs/JointTorqueOnOffArray](http://emanual.robotis.com/docs/en/popup/\(op3_tuning_module_msgs\)JointTorqueOnOffArray.msg/))&#x20;
    * 用於啟用/停用智能馬達關節扭力的消息
  * **/robotis/tuning\_module/command** ([std\_msgs/String](http://emanual.robotis.com/docs/en/popup/std_msgs_string/))&#x20;
    * 指令的消息(如. save gain, save offset)
* Published Topics
  * **/robotis/status** ([robotis\_controller\_msgs/StatusMsg](http://emanual.robotis.com/docs/en/popup/StatusMsg.msg/))&#x20;
    * 描述 action\_module 狀態的消息。&#x20;
  * **/robotis/enable\_ctrl\_module** ([std\_msgs/String](http://emanual.robotis.com/docs/en/popup/std_msgs_string/))&#x20;
    * 用於更改 robotis\_controller 的動作模組的消息
  * **/robotis/sync\_write\_item** (\[robotis\_controller\_msgs/SyncWriteItem]{: .popup})&#x20;
    * 用於在 robotis\_controller 中與 dynamixel 智能馬達同步寫入的消息
  * **/robotis/enable\_offset** (std\_msgs/Bool)&#x20;
    * 用於在 robotis\_controller 中打開/關閉 offsets 偏移值的消息
* Service Server
  * **/robotis/tuning\_module/get\_present\_joint\_offset\_data**  ([op3\_tuning\_module\_msgs/GetPresentJointOffsetData](http://emanual.robotis.com/docs/en/popup/\(op3_tuning_module_msgs\)GetPresentJointOffsetData.srv/))
    * 用於通知關節狀態的服務，包括 offset 偏移值
* Service Client
  * **/robotis/set\_present\_ctrl\_modules** (robotis\_controller\_msgs/SetModule)
    * 用於更改 robotis\_controller 的動作模組的服務
  * **/robotis/load\_offset** ([robotis\_controller\_msgs/LoadOffset](http://emanual.robotis.com/docs/en/popup/LoadOffset.srv/))
    * 用於在 robotis\_controller 中應用新 offset 偏移量的服務

Parameters

* **offset\_file\_path** (字串, 預設值 : **\~/data/tune\_pose.yaml**)
  * 此路徑指示包含每個關節的偏移量數據的文件位置。
* **init\_file\_path** (字串, 預設值 : **\~/data/offset.yaml**)
  * 此路徑指示包含每個關節的初始化資訊的文件位置
