Skip to content
Snippets Groups Projects
Select Git revision
  • 3718a9795df40b10de786949b34ecd99075a1434
  • main default protected
2 results

mtc

user avatar
KingMaZito authored
3718a979
History

MTC

MTC is the core package developed with different design patterns to ensure both extensibility and variability.

executables

MTC consists of 3 executables, with each computing .yaml files for the next subsequent module, according the following strcture.

mtc2taskspace >> base_routine >> cell_routine

mtc2taskspace

From a Ceti dump file representing an arbitrary scene with specific locations, located in the /resources directory. Mtc2taskspace computes a taskspace.yaml file and associates each object with a drop-of-location to a robot. The shared space between robots is expressed by identical location entries for each robot involved.

resulting .yaml files in /descriptions

file structure soon to be changed, sticking more to a struct like representation

base_routine

Calculates the workspace from a /descriptions file (mtc2taskspace) and a precomputed reachability map (/map), combined with information from a dump file (/resources). Creates the directory results/${dump_file_name} with the resulting dump files as contents.

Replace the resulting .yaml files in the results/${dump_file_name} directory if they already exist

Is strictly programmed, which means that the shared space is given by the first robot, which leads to no result if the first robot is not able to carry the shared space. Also resulting dump files can break the yaml schema, because each robot has an extra rpy element which is important for franca_description -> setting robot rotation... for placing, each 8th entry must be a table[0-9]+_table_top. Cosmetic data (table_wheel...) included as placeholder

Solutions: switching robots, soon to be implemented. Cosmetic data by relative definitions.

cell_routine

Designed to load a dump_file (+ with additional rpy component) and execute a task with moveit task constructor. A task description can also be the /descriptions file of mtc2taskspace, which is the case now.

Restricted to coop tasks, since parallel tasks capability must be included first. Also pushing results/example.yaml file into franca_description is 'ugly', since it has to be included manually. Searching for solution.

Christoph's parser could not be integrated because there is no way to have multiple robots compute a task.

Current state

State: in progress. Every executable is working with some explained downfalls that should be fixed in the next days. Implementing or omitting ideas because some modules do not work as expected took a lot of time. The actual results (62 files for dummy.yaml) can be loaded and run by manually changing the path of the results file in launch/cell_routine.launch and franka_description/robots/ceti_double.urdf.xacro. I tested 10/62 myself, with surprisingly good results. The following list shows open and closed ToDos.

☑️ present a faster work-space execution ☑️ generate more solutions for 1 dump file ☑️ present solution for general robots ☑️ elaborate the moveit task constructor ☑️ present more general task files 🔲 include cosmetic values 🔲 passing yaml in xacro (franca_description) 🔲 parallel tasks (Docker already downloaded, just have to try) (main focus) 🔲 include ferdinants work (main focus)

Im working non stop, so don't forget to pull.