触覚と3次元視覚を備えたロボットアームのためのプログラミング教材

触覚と3次元視覚を備えたロボットアームのためのプログラミング教材

Author: 
澤崎 悠太

概要・特徴

センサやアクチュエータをRTCとしてモジュール化し,それらを組み合わせ方や,統合するモジュールのプログラムを学習する教材を開発した.ロボットアームは,ROBOTIS社のアクチュエータDynamixelで構成されたものを想定している.また,センサは,深度カメラと触覚センサを想定している.Dynamixel汎用のRTCと深度カメラから3次元点群データを出力するRTCは,著者らの研究室がGitHubで公開しているものを再利用する.触覚センサとしてFingerVisionを導入し,そのためのRTCを新たに開発した.また,初学者でもセンサやアームの入出力を使いやすくなるように中継役のRTCを用意した.

仕様

  • 言語 : C++, Python
  • OS : Windows8.1/10
  • RTミドルウェア : OpenRTM-aist-1.2.0

コンポーネント群

新規作成したコンポーネント

  • FingerVisionCore : FingerVisionセンサからマーカーの位置やオブジェクトの位置等を読み取り情報を出力する
  • FingerVisionFilter : 入力されたFingerVisionCoreからの情報を扱いやすいデータに変換して出力する
  • MikataArmController : 触覚と3次元視覚を備えたロボットアームの制御用のコンポーネント.各センサから入力される情報を活用してアームに手先位置指令を出力する.
  • PCToColorCylinder : 入力された色付き点群データから,平面上の単体もしくは複数の円柱の位置,半径,色情報を出力する

    既存のコンポーネント

  • Kinect2ToPC : Kinect v2から深度と色の情報を読み取り,色付き点群データを出力する.
  • MikataArmWrapper : 入力された手先位置指令や関節角度指令から,各Dynamixelの内部表現の角度と速度に変換した値をDynamixelに出力する.
  • Dynamixel : 入力された位置と速度の指令をアクチュエータへ送ったり,アクチェータから取得した現在位置を出力する.

イメージ

  • FingerVision
    FV01.jpg
  • FingerVision + MikataArm
    FVMikataArm.jpg
  • FingerVisionを用いた円柱把持
    FV.jpg
  • 実際の環境と円柱抽出時の画面,ヒストグラム
    PCToC.jpg
  • 教材のシステム図
    RTMC_system.png
  • 実際の教材の環境
    SystemReal.jpg
  • RTコンポーネント システム図
    RTMC_RTC2.png

動画 1

動画 2

ソースコードおよびマニュアル

問合先(メールアドレス): 
mt18a005@oecu.jp
Resources
Project Information
OS: 
Windows
言語: 
C++
Python
OpenRTM ver.: 
1.2
Average: 
0
No votes yet
Last modified: 
Wed, 2019-12-11 16:01

Download

latest Releases : 2.0.0-RELESE

2.0.0-RELESE Download page

Number of Projects

Choreonoid

Motion editor/Dynamics simulator

OpenHRP3

Dynamics simulator

OpenRTP

Integrated Development Platform

AIST RTC collection

RT-Components collection by AIST

TORK

Tokyo Opensource Robotics Association

DAQ-Middleware

Middleware for DAQ (Data Aquisition) by KEK