ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Lucian's profile - activity

2014-06-13 05:16:02 -0500 received badge  Taxonomist
2014-05-31 05:30:18 -0500 received badge  Famous Question (source)
2013-10-01 02:11:24 -0500 received badge  Notable Question (source)
2013-10-01 02:11:24 -0500 received badge  Famous Question (source)
2013-10-01 02:11:24 -0500 received badge  Popular Question (source)
2012-11-22 08:23:48 -0500 received badge  Famous Question (source)
2012-11-22 08:23:48 -0500 received badge  Popular Question (source)
2012-11-22 08:23:48 -0500 received badge  Notable Question (source)
2012-08-30 01:52:49 -0500 received badge  Famous Question (source)
2012-08-30 01:52:49 -0500 received badge  Popular Question (source)
2012-08-30 01:52:49 -0500 received badge  Notable Question (source)
2012-08-23 00:23:53 -0500 received badge  Popular Question (source)
2012-08-23 00:23:53 -0500 received badge  Notable Question (source)
2012-06-21 04:04:57 -0500 commented answer unable to parse urdf file

I already predefined M_PI as 3.1415

2012-06-20 04:57:48 -0500 answered a question unable to parse urdf file

I think I figured this one out:

camera_offset_p was declared as:

<property name="camera_offset_p" value="${2*M_PI/360*18}"/>

and if I declare it as:

<property name="camera_offset_p" value="0.314159265"/>

which is equivalent, it works again.

Maybe someone could explain me why then?

2012-06-20 04:49:37 -0500 asked a question unable to parse urdf file

Hello everyone,

The question is extremely simple: when I type the line (quoted):

<origin xyz="${reflect*camera_offset_x} 0 0" rpy="0 ${camera_offset_p} 0" />

the urdf is parsed, everything is great, I can visualize in rviz and when I type:

<origin xyz="${reflect*camera_offset_x} 0 0" rpy="0 ${reflect*camera_offset_p} 0" />

it doesn't work anymore..

Here, reflect can be 1 or -1 and it seems to by no problem for entering negative values for the angle offsets...

So where the hell could the problem come from?

Thanks for your time. Yours, Lucian

2012-06-08 04:30:59 -0500 received badge  Editor (source)
2012-06-08 04:11:36 -0500 answered a question very strange stuff in rviz

Hello Stefan,

I do understand what your are talking about, and I thank you for your time, but this is not the case, I am quite sure about it. With complex models weird things happen: for instance by launching the same model two times in a row I happen -and very often !- to get different alignments for one joint. How could this be possible, without changing the urdf? It is very intriguing. Furthermore, changing the origin with a non-neglectable offset would often NOT produce any changes!

And there is more! I had a complicated 7-joint robot arm to assemble without knowing the exact distances and I tried to do it by iterative guessing. When I was close enough rviz connected the two stl by himself

My guess is that there has to be an algorithm in rviz/gazebo which detects the good matches between different faces (set of triangles) in an stl geometry and fits them together. (By the way, Meshlab does it automaticaly, but I don't know why and how either )

Does anyone have any precise idea?

Thanks

2012-06-08 01:02:41 -0500 asked a question very strange stuff in rviz

Hello everybody,

I've been working for some time now on the assembly of a robotic arm from different stl parts. I don't have the original CAD model so I must do everything only with the stl files.

I don't know the distance between the joints either so I have to find it out by guessing-and-correcting, which is very annoying. However I noticed that sometimes rviz "guesses" the right position by himself, thus fitting the parts almost exactly. If I try to change the origin of the joint only a bit in the .urdf file it still stays at the same place!

This is of course wonderful when you have simple geometries (mother- father plugins for example) but it can be also very annoying with more complex parts, when rviz fits by itslef parts in the WRONG position.

Why does rviz fit by itself parts anyway? Did anyone notice this behavior? It seems to me very strange. Does anyone know how to control/avoid this behavior?

Any clue or hint would be useful, please do tell me if you have the slightest guess

Thanks a lot

2012-03-12 05:18:20 -0500 answered a question scale problems with gazebo

Hello,

thanks for the both answers.

I tried the scale tag as described on the wiki but the error still occurred. I than tried to do it exactly as in the example and use the stlb format instead of stl and it worked.

I nevertheless wonder why doesn't it work with the normal stl ? (ROS/ gazebo should recognize both ASCII and binary formats, souldn't it?)

PS: btw, rescaling in SolidWorls also works

2012-03-12 04:22:40 -0500 received badge  Supporter (source)
2012-03-12 04:07:45 -0500 received badge  Scholar (source)
2012-03-08 05:28:43 -0500 asked a question scale problems with gazebo

Hello,

The model that I import as stl from SolidWorks is scaled in mm. When I visualize the model in gazebo it´s awfully huge. So I use Meshlab to rescale it.

However, upon launching gazebo dies instantly with the following error:

[gazebo-2] process has died [pid 5687, exit code -6]. log files: /home/fxm-lc/.ros/log/48312cc6-6942-11e1-84ee-c8600006c2de/gazebo-2*.log

Any suggestion are welcome, thank you very much.

2012-02-29 00:19:18 -0500 asked a question Problem generating convex decomposed stl

Hello,

I'm trying to visualize my stl robot model in gazebo. I use the following CMakeLists.txt in order to generate .iv objects and convex decomposed stl files, yet it fails with an segmentation fault and thus stops building.

It worked with another model, but not with the new one. Could it'be a problem within the .stl itself and could the problem come from SolidWorks?

(It is not me who wrote this CmakeList, I merely try to reuse it)

Thanks a lot for your help

cmake_minimum_required(VERSION 2.4.6) include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)

rosbuild_init()

set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)

set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)

mesh file generations

rosbuild_find_ros_package(ivcon) rosbuild_find_ros_package(convex_decomposition)

iterate through all the stl files to:

1. convert to *.iv files

2. generate convex decomposed .stl

file(GLOB cob_stl_files ${CMAKE_CURRENT_SOURCE_DIR}/meshes//.stl) set(cob_gen_files "")

foreach(it ${cob_stl_files}) get_filename_component(basepath ${it} PATH) get_filename_component(basename ${it} NAME_WE)

IF ( ${basename} MATCHES "_convex" )

message("ignoring stale .._convex.stl file:",${basename})

ELSE ( ${basename} MATCHES "_convex" )

# create subdirectory convex
add_custom_command(
  OUTPUT ${basepath}/convex
  # CMake 2.4 doesn't offer the make_directory command.
  #COMMAND ${CMAKE_COMMAND} -E make_directory
  COMMAND mkdir -p
  ARGS ${basepath}/convex)

# create subdirectory iv
add_custom_command(
  OUTPUT ${basepath}/iv
  # CMake 2.4 doesn't offer the make_directory command.
  #COMMAND ${CMAKE_COMMAND} -E make_directory
  COMMAND mkdir -p
  ARGS ${basepath}/iv)

#create obj files for convex decomposition from stl files
add_custom_command(
  OUTPUT ${basepath}/convex/${basename}.obj
  COMMAND ${ivcon_PACKAGE_PATH}/bin/ivcon
  ARGS ${it} ${basepath}/convex/${basename}.obj
  DEPENDS ${it} ${basepath}/convex)

set(cob_gen_files ${cob_gen_files} ${basepath}/convex/${basename}.obj)

#convex decompose object files
add_custom_command(
  OUTPUT ${basepath}/convex/${basename}_convex.obj
  COMMAND ${convex_decomposition_PACKAGE_PATH}/convex_decomposition/bin/convex_decomposition
  ARGS ${basepath}/convex/${basename}.obj -v12 -p10
  DEPENDS ${basepath}/convex/${basename}.obj ${basepath}/convex)

set(cob_gen_files ${cob_gen_files} ${basepath}/convex/${basename}_convex.obj)

#convert obj files back to stlb, put in directory named convex
add_custom_command(
  OUTPUT ${basepath}/convex/${basename}_convex.stlb
  COMMAND ${ivcon_PACKAGE_PATH}/bin/ivcon
  ARGS ${basepath}/convex/${basename}_convex.obj ${basepath}/convex/${basename}_convex.stlb
  DEPENDS ${it} ${basepath}/convex ${basepath}/convex/${basename}_convex.obj)

set(cob_gen_files ${cob_gen_files} ${basepath}/convex/${basename}_convex.stlb)

#convert obj files back to stla, put in directory named convex
add_custom_command(
  OUTPUT ${basepath}/convex/${basename}_convex.stla
  COMMAND ${ivcon_PACKAGE_PATH}/bin/ivcon
  ARGS ${basepath}/convex/${basename}_convex.obj ${basepath}/convex/${basename}_convex.stla
  DEPENDS ${it} ${basepath}/convex ${basepath}/convex/${basename}_convex.obj)

set(cob_gen_files ${cob_gen_files} ${basepath}/convex/${basename}_convex.stla)

#convert stl files to stlb, put in directory named stlb
add_custom_command(
  OUTPUT ${basepath}/${basename}.stlb
  COMMAND ${ivcon_PACKAGE_PATH}/bin/ivcon
  ARGS ${basepath}/${basename}.stl ${basepath}/${basename}.stlb
  DEPENDS ${it} ${basepath}/${basename}.stl)

set(cob_gen_files ${cob_gen_files} ${basepath}/${basename}.stlb)

#create iv files
add_custom_command(
  OUTPUT ${basepath}/iv/${basename}.iv
  COMMAND ${ivcon_PACKAGE_PATH}/bin/ivcon
  ARGS ${it} ${basepath}/iv/${basename}.iv
  DEPENDS ${basepath}/iv ${it})
add_custom_command(
  OUTPUT ${basepath}/convex/${basename}_convex.iv
  COMMAND ${ivcon_PACKAGE_PATH}/bin/ivcon
  ARGS ${basepath}/convex/${basename}_convex.obj ${basepath}/convex/${basename}_convex.iv
  DEPENDS ${it} ${basepath}/convex ${basepath}/convex/${basename}_convex.obj)

set(cob_gen_files ${cob_gen_files} ${basepath}/iv/${basename}.iv ${basepath}/convex/${basename}_convex.iv)

ENDIF ( ${basename} MATCHES "_convex" )

endforeach ... (more)