ultraArm P340をモニター提供されたので動かしてみた

今年のはじめにmyCobotを使って書き初めをして遊んだ記録をブログに投稿しました。

supernove.hatenadiary.jp

でこのブログをスイッチサイエンス主催のmyCobot活用事例キャンペーンに投稿したところ、なんとmyCobotを開発しているElephant RoboticsのCEOのJoeyさんが気に入ったようでなんと動画で取り上げてもらえました!

(割とノリで思いついて投稿したので真剣にコメントしてもらい申し訳ないです…)


www.youtube.com

で、この動画のタイトルの通りなんと新製品のultraArmをモニター提供してもらうことになりました!最初連絡が来たときは寝耳に水でしたw。

連絡きてから3ヶ月が経ち、ついに手元に届きました!まさか本当に届くとは…

というわけで今回はスイッチサイエンスでの発売前にいち早くこのultraArmを実際に動かしてみます。

ultraArmとは

ultra Armはアルミ合金で作られたロボットアームです。

myCobotよりも自由度は少ないですが、その分動作には正確性があるのが特徴です。

アーム使われているモーターは静音性の高いステッピング技術を取り入れたモーターを使用しているので発熱と騒音を低減しているそうです。

プロセッサーにはATMEGA2560-16AU AVRプロセッサを使われており、操作はUSBでパソコンとつないでシリアル通信でやるようです。

詳細なスペックは以下のドキュメントが参考になりそうです

docs.elephantrobotics.com

開封の儀

まずは開封の儀です。

myCobotと比べると付属品はシンプルです。

家にあるmyCobotと比較してみました。並べてみるとかなり違いが分かりますね。

ultraArmは土台が重めなので台座がなくてもかなり安定しそうです。

初着火

電源をつないだところで起動してみました。

土台のファンの音がデカイです。

Pythonで動かしてみる

PCと接続すればすぐできそうなので、早速Pythonで動かしてみます。

今回はUbuntuのPCに接続します。

まずは以下のコードを ultra_arm_sample.py として保存します。

from pymycobot.ultraArm import ultraArm

ua = ultraArm("/dev/ttyUSB0", 115200)
ua.go_zero()

#Return to zero position
ua.set_angles([0, 0, 0], 50)

# Move around
ua.set_angles([90, 10, 30], 50)
ua.sleep(3)
ua.set_angles([-60, -10, 45], 50)
ua.sleep(3)

# Release all servos
ua.set_angles([0, 0, 0], 50)
ua.sleep(3)
ua.release_all_servos()

接続先のシリアルポートは以下のコマンドで確認します。

ls -l /dev/ttyUSB*

必要なPythonライブラリは以下のコマンドでインストールするだけです。

pip3 install pymycobot --upgrade --user

動かしてみる

実際に動かしてみます。

以下のコマンドで起動します。

python3 ultra_arm_sample.py

起動すると以下のようにあちこちアームが動き回ります。

起動時は必ずキャリブレーションがされるのが正確さを物語ってますね。

まとめ

今回はモニター提供してもらったultraArm P340を動かしてみました。

文字を書くような正確な動きが要求されるようなシステムとかに使えそうだと思いました。

しかもアルミ合金で構造もmyCobotよりシンプルで丈夫そうなのでそれを活かした作品とかも作ってみたいですね。