Skip to content

Manipulators/Manipulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Manipulator

Computing a solution for the "Manipulation Planning Problem".

Screenshot

Compilation

Linux (Debian-based)

  • Install the commands make, cmake and git

    sudo apt-get install build-essential cmake git-core
  • Install the Qt framework and the CGAL library

    sudo apt-get install qt-sdk libcgal-dev
  • Install LEMON (graph library): https://lemon.cs.elte.hu/trac/lemon/wiki/InstallLinux

  • Change your current directory to clone Manipulator

    cd [dir]
  • Clone Manipulator

    git clone https://github.com/Manipulators/Manipulator.git
  • Go inside it

    cd Manipulator/
  • Create a build directory

    mkdir build
  • Go inside it

    cd build/
  • Generate Makefiles

    cmake ../src/
  • Build executable

    make
  • Run executable

    ./manipulator

Development

The Qt framework provides a cross-platform C++ integrated development environment: Qt Creator. The IDE can use various build system including CMake. To run the project inside Qt Creator, the following instructions are helpful:

  • Open Qt Creator
  • Open the project with: File > Open File or Project...
  • Choose the file CMakeLists.txt in Manipulator/src/
  • Set the build folder location to Manipulator/qtcreator-build/
  • Press button Run CMake to generate the Makefile
  • Press keys Ctrl+R to build and run the project

Input

Describe screen size Describe obstacles in "Obstacles". One line by polygon, described with pairs of points.

Problems

To-do list

  • Find the file format to describe the arguments (i.e. environment, robot, movable object, initial configuration and final configuration), this file format must be CGAL-friendly
  • Create a command which takes the arguments and returns their graphical representation in a new window
  • ...

Specification

  • Generate an instance of the manipulation planning problem
    • Generate obstacles (i.e. environment)
    • Choose the radius of the circle robot
    • Choose the radius of the circle movable object
    • Select the initial configuration (i.e. positions of the robot and the object)
    • Select the final configuration
  • Compute the solution for this instance
    • Compute the critical regions
    • Determine the topological properties of transit and transfer paths
    • Determine the manipulation graph
    • Find a manipulation path
  • Display the main concepts for solving the problem
    • Display the representation of the instance of the problem
    • Display the critical regions
    • Display the manipulation graph
  • Wrap the assembly into an graphical interface
  • ...

Libraries

Qt and CGAL have been selected for the project since CGAL provides a package for displaying CGAL objects and data structures in the Qt Graphics View Framework.

##References

  • B. Dacre Wright, J.P. Laumond and R.Alami
    Motion planning for a robot and a movable object amidst polygonal obstacles
    IEEE International Conference on Robotics and Automation, Nice, 1992

  • J. Schwartz and M. Sharir
    On the Piano Mover III
    International Journal on Robotics Research, Vol. 2 (3), 1983

About

Computing a solution for the "Manipulation Planning Problem".

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages