Пример #1
0
    def __init__(self, demo_dt, demo_dir):

        # Initialize XBox controller
        self.controller = XboxControllerInterface(use_thread=True,
                                                  verbose=False)

        # Create simulator
        self.sim = Bullet()

        # create world
        self.world = BasicWorld(self.sim)

        # Create Robot
        self.robot = Robot(self.sim, self.world)
        self.robot.go_home()

        self.workspace_outer_bound = {'rad': 1.0}
        self.workspace_inner_bound = {'rad': 0.25, 'height': 0.7}

        self.env_objects = []
        self.demo_dir = demo_dir
        self.demo_dt = demo_dt
Пример #2
0
    def __init__(self, spheres=[[0.09, -0.44, 0.715, 1]], cuboids=None):
        # Define size of the map
        self.res = 1.
        # Initialize XBox controller
        self.controller = XboxControllerInterface(use_thread=True,
                                                  verbose=False)
        # Create simulator
        self.sim = Bullet()
        # create world
        self.world = BasicWorld(self.sim)
        # create robot
        self.robot = KukaIIWA(self.sim)
        # define start/end pt
        self.start_pt = [-0.75, 0., 0.75]
        self.end_pt = [0.75, 0., 0.75]
        # Initialize robot location
        self.send_robot_to(np.array(self.start_pt), dt=2)

        # Get via points from user
        via_pts = self.get_via_pts(
        )  # [[-0.19, -0.65, 0.77], [0.51, -0.44, 0.58]]
        self.motion_targets = [self.start_pt] + via_pts + [self.end_pt]
# -*- coding: utf-8 -*-
#!/usr/bin/env python
"""Load the Minitaur robot.
"""

from itertools import count
from pyrobolearn.simulators import Bullet
from pyrobolearn.worlds import BasicWorld
from pyrobolearn.robots import Minitaur

# Create simulator
sim = Bullet()

# create world
world = BasicWorld(sim)

# create robot
robot = Minitaur(sim)

# print information about the robot
robot.print_info()

# Position control using sliders
# robot.add_joint_slider(robot.left_front_leg)

# run simulator
for _ in count():
    # robot.update_joint_slider()
    # robot.compute_and_draw_com_position()
    # robot.compute_and_draw_projected_com_position()
    world.step(sleep_dt=1./240)
Пример #4
0
                    type=float,
                    default=1000.0,
                    help="physics frame rate")
parser.add_argument("--stadium",
                    default=False,
                    action='store_true',
                    help="use stadium for world")

args = parser.parse_args()

RATE_HZ = args.fps
TIME_STEP = 1.0 / RATE_HZ
GRAVITY_MSS = 9.80665

# Create simulator
sim = Bullet()

# create world
from pyrobolearn.worlds import BasicWorld
world = BasicWorld(sim)

if args.stadium:
    world.sim.remove_body(world.floor_id)
    world.floor_id = world.sim.load_sdf(os.path.join(
        pybullet_data.getDataPath(), "stadium.sdf"),
                                        position=[0, 0, 0])

# setup keyboard interface
interface = prl.tools.interfaces.MouseKeyboardInterface()

Пример #5
0
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""Load the RRBot robotic platform.
"""

import numpy as np
from itertools import count
from pyrobolearn.simulators import Bullet
from pyrobolearn.worlds import BasicWorld
from pyrobolearn.robots import RRBot

# Create simulator
sim = Bullet()

# create world
world = BasicWorld(sim)

# load robot
robot = RRBot(sim)
# robot.add_joint_slider()

print("Robot: {}".format(robot))
print("Total number of joints: {}".format(robot.num_joints))
print("Joint names: {}".format(robot.get_joint_names(range(robot.num_joints))))
print("Link names: {}".format(robot.get_link_names(range(robot.num_joints))))

print("Number of DoFs: {}".format(robot.num_dofs))
print("Robot actuated joint ids: {}".format(robot.joints))
print("Actuated joint names: {}".format(robot.get_joint_names()))
print("Actuated link names: {}".format(robot.get_link_names()))
print("Current joint positions: {}".format(robot.get_joint_positions()))
Пример #6
0
                "instead got: {}".format(type(body_id)))
        target_position = self.sim.get_base_position(body_id)
        self.reset(distance=distance,
                   yaw=yaw,
                   pitch=pitch,
                   target_position=target_position)


# Tests
if __name__ == '__main__':
    from itertools import count
    import time
    from pyrobolearn.simulators import Bullet

    # create simulator
    sim = Bullet()

    # load floor
    floor_id = sim.load_urdf('plane.urdf', use_fixed_base=True)

    # create camera
    camera = WorldCamera(sim)

    # define variables
    radius = 2
    theta = 0
    dtheta = 0.01

    for t in count():
        # get camera information and print them
        position = camera.position