前回の記事では、ROBOTISさんからいただいた2XLという1個に2軸入っている面白いサーボをROSで動かすことができた。
今回は、2軸の2XLと1軸のXL2個を繋げて4つの軸をジョイパッドで動かしたあと、アームロボットをインタラクティブに動かす(手などが近づいてきたら逃げるアームを作りたい)ために、「Intel RealSense Depth C amera D435i」というデプスカメラをROSで動かし、物が近づいてくるのを認識させたいと思う。

今回完成したプロトタイプ。

Intel RealSense Depth Camera D435iで撮影したソファーとトミカを持った手。ソファーと手の間に距離があるのがわかる。
デプスカメラとは、奥行きの情報を取得する深度センサーがついたカメラのことで、物同士の距離などがわかる。デプスカメラについて、今回はROSを使って撮影するところまでで、インタラクティブにするところまでは至っていない。次回インタラクティブを進めていきたい。
サーボを3つ、4軸動かせるようにした
まずは、サーボを3つ、4軸動かせるように「basic.yaml」を書き換え、「joy_pan_tilt_4.py」という4つのサーボを動かすコードを用意したいと思う。

前回XLを動かしたときのシステム図。
1軸のサーボXL(2個)と2軸のサーボ2XL(1個)を、デイジーチェーンで繋げる。

XLを2個繋げたときのように2XLとXLを繋げる。
basic.yamlは「catkin_ws/src/dynamixel-workbench/dynamixel_workbench_controllers/config」の中にある。サーボの名前やサーボの個数が書いてあるので、これを4個に変更する。
具体的には下記のようにした。#で「Return_Delay_Time」をコメントアウトしているのは、これがあると2XLが動かないからである。「id1」と「ID: 1」でややこしい名前になってしまっているのが気になるが、後で軸の回転方向を変える可能性が高いので、「pan, tilt」などにしたくなかった。良い名前付けのアイデアのある人はそれに変更していただきたい。
ちなみに、basic.yamlを呼び出しているコードは「catkin_ws/src/dynamixel-workbench/dynamixel_workbench_controllers/launch」の中の「dynamixel_controllers.launch」の10行目にある。
# You can find control table of Dynamixel on emanual (http://emanual.robotis.com/#control-table)
# Control table item has to be set Camel_Case and not included whitespace
# You are supposed to set at least Dynamixel ID
id1:
ID: 1
# Return_Delay_Time: 0
id2:
ID: 2
# Return_Delay_Time: 0
id3:
ID: 3
id4:
ID: 4
Collapse

この連載の記事
- 第278回 妊娠中の後輩にイラッとしてしまう。会社にどう伝えたらいいですか?
- 第277回 純白のかわいいスタジオで黒いウェアラブルロボットを撮る
- 第276回 不妊治療中の34歳。妊娠中の後輩についイラッとしてしまいます
- 第275回 ウェアラブルロボットを身に着けた男子と青春をねつ造する
- 第274回 ChatGPTにココイチの気分に合わせたカスタマイズを考えてもらった
- 第273回 卵子凍結って、管理職と両立できる?
- 第272回 女性向け風俗店で働くセラピストさんを突撃してみた!
- 第271回 キヤノンのフィルムカメラで撮る、春の桜とウェアラブルロボット
- 第270回 35歳。卵子凍結を考えていますが、仕事も楽しいです。ご意見を聞かせてください
- 第269回 プログラミング経験ゼロからモバイルRPAツールを開発、特許まで取得した破天荒エピソードを彼氏の先輩に聞いた
- この連載の一覧へ