Upload
yutaka-kondo
View
993
Download
1
Embed Size (px)
DESCRIPTION
6/14に開催された「第2回ROS勉強会 in カワダロボティクス」の発表資料です。協働ロボットNEXTAGE OPENのROSインタフェースに関して紹介しています。
Citation preview
NEXTAGE OPENを使った ROSプログラミング
近藤 豊
http://youtalk.jp/ros @youtalk
第2回ROS勉強会 in カワダロボティクス
近藤 豊 博士(工学) • 奈良先端大小笠原研究室でアンドロイドの人間らしい振る舞いを研究
• 現在はカワダロボティクスで協働型ロボットの開発に従事
• ROS歴1ヶ月
3 http://youtu.be/j7Sv8SxYIxE
4 http://spectrum.ieee.org/automaton/robotics/humanoids/japanese-robot-actroid-sit
NEXTAGE OPENへの系譜
5
人型ロボット
協働型ロボット
ハードウェア構成
6
ソフトウェア構成 • hrpsys-base github.com/fkanehiro/hrpsys-base • OpenHRP3 https://openrtp.org/svn/hrg/openhrp • rtmros_common github.com/start-jsk/rtmros_common • rtmros_nextage github.com/tork-a/rtmros_nextage
7
Open HRP3
hrpsys-base
OpenRTM
ハードウェア コントローラ
rtmros_nextage rtmros_
common
OpenRTM
ROS インタフェース 上位PC
(Ubuntu)
下位PC (QNX)
NEXTAGE OPEN
NEXTAGE in グローリー http://www.glory.co.jp/csr/feature/2013/feature2013_02.html
8
NEXTAGE in THKインテックス http://youtu.be/6Ofmyb1XKTk
9
NEXTAGE in Tecnalia, Spain http://youtu.be/G7NNEJ6nHps
10
開発環境セットアップ 1. ROS Hydroのインストール
$ sudo apt-get install ros-hydro-desktop-full 2. NEXTAGE OPEN用パッケージのインストール
$ sudo apt-get install ros-hydro-rtmros-nextage ros-hydro-rtshell-core
$ echo "source `rospack find openrtm_tools`/scripts/rtshell-setup.sh" >> ~/.bashrc
$ source ~/.bashrc 詳しくは youtalk.jp/post/85823518143/setup-nextage-ros
11
開発環境セットアップ $ rtmlaunch nextage_ros_bridge nextage_ros_bridge_simulation.launch
12 http://youtu.be/bDUOo7KOuG4
ROSノード $ rqt_graph
13
順運動学
動作軌道生成 ロボットの内部状態
各部位の制御 全身部位の制御・プロファイリング ロギングの設定
ROSトピック $ rostopic list | grep -v ’action’
/fullbody_controller/state /head_controller/state /torso_controller/state /rarm_controller/state /rarm_torso_controller/state /larm_controller/state /larm_torso_controller/state /joint_states /motor_states /tf /zmp …
14
larm_torso_ controller larm_controller
ROSサービス $ rosservice list | grep -vi ’log’
15
/ForwardKinematics/getCurrentPose /ForwardKinematics/getReferencePose /ForwardKinematics/getRelativeCurrentPosition /ForwardKinematics/selectBaseLink /SequencePlayer/addJointGroup /SequencePlayer/clear /SequencePlayer/clearNoWait /SequencePlayer/clearOfGroup /SequencePlayer/isEmpty /SequencePlayer/loadPattern /SequencePlayer/playPattern /SequencePlayer/playPatternOfGroup /SequencePlayer/removeJointGroup /SequencePlayer/setBasePos /SequencePlayer/setBaseRpy
/SequencePlayer/setInitialState /SequencePlayer/setInterpolationMode /SequencePlayer/setJointAngle /SequencePlayer/setJointAngles /SequencePlayer/setJointAnglesOfGroup /SequencePlayer/setJointAnglesWithMask /SequencePlayer/setMaxIKError /SequencePlayer/setMaxIKIteration /SequencePlayer/setTargetPose /SequencePlayer/setWrenches /SequencePlayer/setZmp /SequencePlayer/waitInterpolation /SequencePlayer/waitInterpolationOfGroup /StateHolder/getCommand /StateHolder/goActual
ROSパッケージ開発 • SequecePlayerを拡張するサービスの実装 – goInitial 初期姿勢に移動
– goOffPose サーボオフ姿勢に移動
– setTargetPoseRelative 逆運動学による差分移動
詳しくは youtalk.jp/post/86493954928/make-ros-package
16
goInitial goOffPose
ROSパッケージ開発 $ rosrun nextage_ros_seqplay_util seqplay_util_server.py
17 http://youtu.be/Crvp0KTYmE4
ロボット実機との接続 1. ロボット内蔵PCにホスト名を設定
• 192.168.***.*** nxc(ハードウェア制御PC) • 192.168.***.*** nxa(アプリケーション実行PC)
2. ROSインタフェースとのブリッジを起動 $ roslaunch nextage_ros_bridge nextage_ros_bridge.launch nameserver:=nxc
もしくは $ export ROS_HOSTNAME=nxa $ export ROS_MASTER_URI=http://nxa:11311
詳しくは youtalk.jp/post/87978130238/nextage-in-real-world 18
NEXTAGE OPEN + MoveIt! $ roslaunch nextage_moveit_config moveit_planning_execution.launch
19 http://youtu.be/g3k7W4Pr1TA
頭部・ハンドカメラ $ roslaunch ueye_cam rgb8.launch $ rosrun image_view image_view image:=/camera/image_raw
20
カワダロボティクスで働きませんか?
26
• カワダロボティクスは 大企業とスタートアップの良い所どり
• 光る技術を持つ新卒・ 中途技術者を鋭意募集中
• 一緒に人とロボットの協働社会を作りましょう!www.kawadarobot.co.jp
No Hack, No Future NEXTAGEハッカソン楽しんでいってください!
27