GithubHelp home page GithubHelp logo

morse-simulator / morse Goto Github PK

View Code? Open in Web Editor NEW
349.0 349.0 154.0 560.47 MB

The Modular OpenRobots Simulation Engine

Home Page: http://morse-simulator.github.io/

License: Other

Shell 0.01% Python 14.40% CMake 0.63% Smarty 0.08% C 84.81% Batchfile 0.02% Inno Setup 0.06%

morse's People

Contributors

adegroote avatar amiller27 avatar cehberlin avatar cyrobin avatar davidhodo avatar dgerod avatar eirikhex avatar greg8978 avatar harmishhk avatar horvathjo avatar incandescant avatar johaq avatar lesire avatar mamoun-gharbi avatar mark-summerfield avatar maxint avatar mherrb avatar msis avatar muratsevim avatar nicolaje avatar peterroelants avatar pierrickkoch avatar pronobis avatar sergestinckwich avatar severin-lemaignan avatar simonlacroix avatar simonrohou avatar stephendade avatar thesourcerer8 avatar warp1337 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

morse's Issues

Timeline of events

Introduce means to define scenarios with controlled dynamic events (through
requests and/or a simple scripting API). Requires a notion of timeline (in
the API? in the simulator? at Builder script levels?)

kuka_lwr::set_rotation does not respect ik_max

If you request some value greater than ik_max (returned by get_IK_minmax service), the request is accepted, and set the value of the angle to the requested value (and so violate the ik_max constraint).

The service must reject the request if the value is too high or thresold the requested value to the ik_max. But in any case, Morse must respect {min, max} of the IK properties

Eliminate duplicated code for ROS serialization

Producing TF frames, odometry or Twist messages, as well as topic creation and topic writing/reading should not be duplicated for the various components.

We first want to assess the exact amount of code duplication, and then factorize it to generic methods.

Simulate motion capture systems

Motion capture poster: MORSE should be able to simulate a motion capture setup
by allowing the designer to paste markers in the scene whose position will be
exported.

Keybindings conflict between camera and human

Reported on the mailing list by [email protected] :

I tried the script:

from morse.builder.morsebuilder import *

Import the human model.

human = Human()

Use the standard environment 'indoor-1.blend'. You could use any other.

env = Environment('indoors-1/indoor-1')

It runs but the key to move the character are coupled weirdly with the camera:
the w key move forward the human and the camera, so after a while pushing it the
camera goes throug the wall.
The S key do the same: move backward the camera and the human.

morse binary should not generate "python_checker.py"

When executing the morse binary, it generates "python_checker.py" in the current directory and deletes it afterwards. This is problematic both when executing the binary from a directory where you haven't got writing permissions or if "python_checker.py" already exists in the directory.

kuka_lwr::set_rotation does not respect ik_max

If you request some value greater than ik_max (returned by get_IK_minmax service), the request is accepted, and set the value of the angle to the requested value (and so violate the ik_max constraint).

The service must reject the request if the value is too high or thresold the requested value to the ik_max. But in any case, Morse must respect {min, max} of the IK properties

Conflict between set_rotation in kuka_lwr and armature_actuator

Both provide the set_rotation service, so in the end only kuka_lwr one is used.

I suppose that the kuka_lwr must disappear and that we need to use the generic one (from armature_actuator). Unfortunately, the set_rotation service from armature_actuator does not work on kuka_lwr. If you just comment the one in kuka_lwr, the unit-test armature_actuator_testing just fails

Test and merge code for automatic renaming

From A Degroote, on morse-dev, 24/07/2012
I pushed the branch renaming on https://github.com/adegroote/morse.git
It includes component renaming and fixes configuration handling. There
is still an issue : we need to call explicitly env.create() at the end
of the script. Previously, it was ``automatically'' called from
Environnement.del which is magically called by GC. With the new
code, the GC does not seem to destroy the object ...

So I fixed the different unit-test. I updated code to name port for both
yarp and ROS. The ROS part is well not tested at all, and so probably
broken. While doing here, I notice that there are a lot of code
duplication : I will propose in the next days a way to refactor stuff in
a cleaner way.

Some component are still broken (kuka lwr at least but lots of actuators
/ sensors don't have any unit test ...). In the kuka lwr, it expects a
parent name with a really specific name (so previously, you probably can
use it only once by scene, which is a bug too ...:).

I'll appreciate if people can test the branch (particularly the ROS
part but also in general for their scene, and their sensor / actuator).

cmake should fail when sphinx is not found

if sphinx is not available on the system, the cmake detection system is not failing.
It would be nice to fail the detection is sphinx is not available and provide an option to explicitly disable sphinx build if it is on purpose.

Improve CMake behaviour with pymorse

At first run, CMake complains about missing pymorse. This is not an issue, but it displays an error message which is confusing for new users.

set matrix_parent_inverse to identity at builder level

If the matrix_parent_inverse of a sensor/actuator is not identity it will have an offset when parented to your robot even if you specified zero as location.

You can inspect this matrix from the python console:
bpy.data.objects['your_object_name'].matrix_parent_inverse
And set it to identity again if needed:
bpy.data.objects['your_object_name'].matrix_parent_inverse.identity()

So it would probably make sense to always set this matrix to identity when making a new object via the builder api.

Package morse-ros as a Debian package

This package should depend on Debian's morse-simulator and the required WG ROS pakages (for fuerte, I guess). It won't be included in Debian since ROS itself is not available there. It's mainly to help with the installation on Debian/Ubuntu.

Time control

Introduce a mean to externally control time, by pacing the game
engine time (e.g. through a socket, cf mail from Benoit Bolsee on Jan. the 10th
in blender-robotics).

Add support to pause the simulation.

No module named morse.core.ansistrm

I've followed the instructions to install morse, however, I get the following:

$ morse check
Traceback (most recent call last):
   File "/usr/local/bin/morse", line 6, in <module>
    from morse.core.ansistrm import ColorizingStreamHandler
   ImportError: No module named morse.core.ansistrm

Can anyone help me please?

Allow to pass real objects to the middleware layer

Allow to pass real objects to the middleware layer, so we can keep some kind
of states, properties at the middleware layer. While here, propose a better
interface at the builder level to pass this arguments to the middleware layer.

Export position in a consistent way

Export position in a consistent way through in different components (use Transformation3D).

Currently, we often export (x,y,z,yaw,pitch,roll) at the sensor level. Because different middlewares have different needs, and also modifiers often need to convert back the data to their own standard, it leads to numerous conversions and no standard representation.

It would make sense to export always the same object (Transformation3D) to prevent this.

morse's cmake should detect if Python.h is available (or not)

cd /home/sylvestre/Téléchargements/morse-0.5.1/obj-x86_64-linux-gnu/src/morse/modifiers && /usr/bin/gcc -Dgaussian_EXPORTS -fPIC -I/usr/include/python3.2mu -o CMakeFiles/gaussian.dir/gaussian.c.o -c /home/sylvestre/Téléchargements/morse-0.5.1/src/morse/modifiers/gaussian.c
/home/sylvestre/Téléchargements/morse-0.5.1/src/morse/modifiers/gaussian.c:1:20: fatal error: Python.h: Aucun fichier ou dossier de ce type
compilation terminated.
make[3]: *** [src/morse/modifiers/CMakeFiles/gaussian.dir/gaussian.c.o] Erreur 1
make[3]: quittant le répertoire « /home/sylvestre/Téléchargements/morse-0.5.1/obj-x86_64-linux-gnu »

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.