myCobot入門者向けのアタッチメント作りと簡単な動かし方

9月 26, 2021

はじめに

myCobotは6軸の可動域を持つロボットアームでその自由度の多さから自動猫じゃらしロボプロジェクター投影等の多様な使われ方がされています.

使用例:動くディスプレイアーム

myCobotはアタッチメントを追加して機能を追加していく仕様になっており, グリッパーを取り付ければものを掴む機能を追加できるし, 吸引ポンプを取り付ければものを吸い付かせることができるようになります. 公式には以下のアタッチメントが販売されています.

公式に販売されているもの以外にもアタッチメントを自作して機能を追加することができ, 作成したものはmyCobotについているネジ穴に固定することができます.

今回はmyCobot入門者向けに3DプリンタがあればすぐにアタッチメントをプリントできるようにSTLデータを作成してみました. ぜひお試しを!

準備したもの

3DプリンタによるmyCobot用アタッチメント作り

myCobotについているネジ穴の規格

アタッチメント作りの前にmyCobotについているねじ穴の規格を確認します.

ロボットアームの先端にM2.6のネジ穴が4つ

ロボットアーム底面にM3のネジ穴が4つ

作成例

台座

myCobotはアームの動きによって重心が動きます. その重心移動によってmyCobotが転倒してしまいます.

重心移動による転倒

これを防ぐためにはクランプ固定できるアタッチメントを作成することが必要です. 以下のSTLデータを3Dプリンタでプリントし, myCobotにねじ止めし, クランプで固定すると, 転倒を防止することができます.

カメラホルダー

myCobotのアームを制御するとき, 何らか周囲の状況を認識させたいです. そのようなときにはカメラをmyCobotの先端に取り付けるのが有効です. 下にmyCobotとカメラを接続させるアタッチメントのSTLデータを置きました.

OAK-D OpenCV DepthAIカメラ向け
USBカメラ向け

myCobotの動かし方

myCobotのRaspberryPiバージョンでは電源を入れれば, すぐに使用することができる状態になっています.
ロボットアームはpythonで動作させることができ, 公式でもサポートされています.

API

ライブラリのインポート

from pymycobot import MyCobot

メソッド

send_angle(id, degree, speed)
  • degrees: J1からJ6に対し, アームの回転角度(float)を指定します. [J1の回転角度, J2の回転角度, J3の回転角度, J4の回転角度, J5の回転角度, J6の回転角度]というようにリスト型で指定します.
  • speed: アームの回転する速さ(int) 0 ~ 100

指定した軸に対し, どの速さでどの角度にするか指示をしてアームを制御します.
すべての軸に対し, 角度0を指定するとまっすぐ立つ状態になります.

使用例

from pymycobot.mycobot import MyCobot

mycobot = MyCobot('/dev/ttyAMA0',1000000)
# 直立させる
mycobot.send_angles([0,0,0,0,0,0], 80)

おわりに

アタッチメントを作成することでmyCobotの自由度をさらに広げることができます. みなさんもぜひ自作してみてください.