Python bindings for the Gazebo multi-robot simulator.
Project description
pygazebo provides python bindings for the Gazebo (http://gazebosim.org) multi-robot simulator.
Free software: Apache 2.0 License
Documentation: http://pygazebo.rtfd.org.
Features
Supports publishing and subscribing to any Gazebo topics using a straightforward python API.
Python versions of all defined Gazebo protobuf messages are included.
Based on asyncio/trollius for flexible concurrency support.
Simple Usage
The following example shows how easy it is to publish a message repeatedly to control a single joint in a Gazebo model running on the local machine on the default port.
import trollius
from trollius import From
import pygazebo
import pygazebo.msg.joint_cmd_pb2
@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.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())
History
3.0.0-2014.1 (2014-07-04)
Switch from eventlet to trollius/asyncio, for better compatibility with other event loops and future python versions.
Update to gazebo 3.0.0
2.2.1-2014.2 (2014-06-04)
Properly support sending and receiving large messages.
2.2.1-2014.1 (2014-02-11)
First release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.