Skip to content

LouiseMassager/MA1project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

95 Commits
 
 
 
 
 
 
 
 

Repository files navigation

MA1_project 🦾 🤖

This project regroup the control of the robotic arm franka panda for a push simulation with 3 different physics engine: Pybullet, Gazebo and Mujoco. All files are launched with ROS and Python3 is the main programming language for the code.

The Pybullet simulation must first be ran to compute the command for the simulation in Gazebo and MuJoCo (by storing the joints commands in the data file).

An important part of the code comes from other works:

The goal is to test the performances of Pybullet and MuJoCo as a physics engine for reinforcement learning applications in robotics.

Screenshots

  • PyBullet simulation:

- Gazebo simulation:

- MuJoCo simulation:

Features

In order to run this project, multiple prerequisites are needed:

  • mujoco-py package from MuJoCo
  • python3
  • ROS Noetic

Specific at Mujoco simulation:

  • pip install numpy-quaternion

Specific at Gazebo simulation:

  • sudo apt-get install ros-noetic-ros-control ros-noetic-ros-controllers

Deployment

To deploy a simulation of the panda robotic arm multiple files can be run in a terminal. First ros must be deployed in a terminal:

 roscore

Then open a second terminal.

  • To start the push simulation with Pybullet without ROS, run:
  cd MA1project_ws
  cd MA1project_ws/src/ma1_project/push_panda
  python3 main.py "push_offline" "jointsangles_s0.01.txt" 0.01

There are multiple possibilities for *args. To see the possibilities put anything instead (eg. python3 main.py 'help').

  • To start publishing the joints angles from the datafile data at period p on the topic 'chatter' ROS, run:
  cd MA1project_ws
  catkin_make
  source devel/setup.bash
  roslaunch ma1_project main.py datafile:=data period:=p

data must be the name of the file in the datafiles folder (eg. "jointsangles.txt") while p must be a period high enough for your computer performances (eg. "0.01").

  • To start the push simulation with MuJoCo with the text file named datafile (str) at a period (float) p, run:
  cd MA1project_ws/src/ma1_project/push_panda
  python3 mujoco_demo datafile datafile period

datafile must be the name of the file in the datafiles folder (eg. "jointsangles.txt") while p must be a period high enough for your computer performances (eg. 0.01).

  • To start the push simulation with Gazebo, run:
  cd MoveRL
  catkin_make
  source devel/setup.base
  roslaunch rl_interface main.launch

Open a third terminal in order to command the robot in the Gazebo window. To start the push simulation with the text file named data (str) at a period (float) p:

  cd MoveRL
  roslaunch ma1_project pushpanda.launch datafile:=data period:=p

datafile must be the name of the file in the datafiles folder (eg. "jointsangles.txt") while p must be a period high enough for your computer performances (eg. "0.01").

Author

Acknowledgements

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published