More Related Content
Similar to Pythonによる4足歩行ロボットの制御と強化学習による歩行動作獲得の実例 #pyconjp (20)
More from Hideyuki TAKEI (7)
Pythonによる4足歩行ロボットの制御と強化学習による歩行動作獲得の実例 #pyconjp
- 12. Gazebo Tips
• Topic Visualizationツールを使うこと
で、現在流れているメッセージをリア
ルタイムで見ることができる
• コマンドラインからメッセージの
publish/subscribeができる
• Gazebo の単位系は SI に準拠
• 長さはメートル(meter)
• 重さ(mass)はキログラム(kg)
• 速度(velocity)は
• revolute joints は rad/s
• <pose> などで6つの数字が並んでいる
のは「x y z roll pitch yaw」です
- 14. @trollius.coroutine
def publish_loop():
manager = yield From(pygazebo.connect())
publisher = yield From(
manager.advertise('/gazebo/default/model/joint_cmd',
'gazebo.msgs.JointCmd'))
message = pygazebo.msg.joint_cmd_pb2.JointCmd()
message.name = 'robot::joint_name'
message.axis = 0
message.force = 1.0
while True:
yield From(publisher.publish(message))
yield From(trollius.sleep(1.0))
loop = trollius.get_event_loop()
loop.run_until_complete(publish_loop())
ジョイント操作用コマンド
ロボットの関節を動かすサンプルコード
操作するロボット名と関節名を指定
力を加える方向と強さを指定
コマンドをパブリッシュ
Gazeboサーバと通信する
ためのマネージャの作成