aremazeilles / eurobench_documentation

Description of some Eurobench Benchmarking Software mechanisms
5 stars 3 forks source link

4.8. Humanoid anthropometric measures file #21

Open m-lancini opened 4 years ago

m-lancini commented 4 years ago

Masses and inertia values for each segment should also be reported. I think the yaml file could be used for all that, but we should specify the value/name pairs for each body. Right now it seems we are concerned only with segments, for our sub-project this could be limiting. If we decide to use only segments than most of the information we collect will be used only internally (in the subproject) but that would be a pity.

body: -mass -inertia (x,y,z) -link1 length -[link2 length] -[volume]

aremazeilles commented 4 years ago

ping @flxalr

Are you familiar with urdf file ? Could all this information be placed in such format?

We are considering the use or urdf for describing both human and robotic system.

m-lancini commented 4 years ago

Yes I know it. It's pretty straightforward so it could be a good option. Do you want to have two separate models? one for the exo and one for the human? I think that would be the best solution. PS: urdf is a nice container, but we shall also identify the minimum set of data to put in, and the reference model (body names and joint names) to use.

aremazeilles commented 4 years ago

@flxalr could you comment on that aspect?

flxalr commented 4 years ago

In my opinion for humanoids .urdf is de facto a standard in modelling. I don't see why we should introduce an additional file for description. Sure it is not very nice on the eye, but if one is interested in specific information from the file there are a lot of parsers which export data from bigger urdf files or we can develop them.

We should distinguish between files which correspond to the robotic technology and files we use to make our benchmarking software work. I see the .yaml files as additional configuration files within the project to make the benchmarking routines work.

Since we are kind of a standardization project I'm rooting to generate .urdf for exos and furthermore, also for human models.

The minimal information I consider relevant:

m-lancini commented 4 years ago

I agree, I'd like keep the urdf format for modelling both the human and the robot, although on separate files (one for the pilot, one for the robot). For what concerns the global (=laboratory) reference frame, I'd go, as suggested in another issue, with the ISB recommendation.

a minimum set for each segment (body) is then (merging the two notes): for each segments: -parent-child relationships with corresponding translation/rotation to get from parent frame to child frame -Joints / Joint Types -mass -CoM -inertia (x,y,z) -link1 length -[link2 length] -[volume] [- meshes and/or bounding boxes (collision model)]

Does that make sense?

aremazeilles commented 4 years ago

Your proposition @m-lancini is consistent with the information we can place in urdfstructure, right?

Could you then give your opinion on current section 3? Right now we have there 4 sections:

I think we should have a first section describing the urdf format and eventually pointing to more detailed description, mentioning that we are suggesting to use such format to store the details of any bipedal system (i.e. humanoid, wearable, human).

The human section should be rephrased to mention the use of theurdf (and not a yaml format).

The humanoid section mentions a mapping to the human segments. Do we maintain that?

Apart from these points, do you see any change in the description to clarify any other point?

m-lancini commented 4 years ago

Your proposition @m-lancini is consistent with the information we can place in urdfstructure, right?

Yes, although it should be clear that LINK in URDF defines a complex rigid body and not just a length (a body with just a dimension). Maybe we should point it out? in some fields human-body-segments are called bodies, here they are called links..

I think we should have a first section describing the urdf format and eventually pointing to more detailed description, mentioning that we are suggesting to use such format to store the details of any bipedal system (i.e. humanoid, wearable, human).

agree

The human section should be rephrased to mention the use of theurdf (and not a yaml format).

I agree, it seems wiser.

The humanoid section mentions a mapping to the human segments. Do we maintain that?

I agree, but I think a provision to include additional segments if need could be made.

Apart from these points, do you see any change in the description to clarify any other point? see the discussion on a separate document for a model

fraBent commented 4 years ago

Dear all, regarding the current version of the Human anthropometric measures file we noticed that there is still not the possibility to specify the masses of each segment. We envision to insert them as additional lines in .yaml format..

@aremazeilles

m-lancini commented 4 years ago

I believe that the current solution was to have it implemented in urdf file. @aremazeilles is this discussion being included in the specifications already? thanks Matteo

aremazeilles commented 4 years ago

Indeed, there is the will to use urdf and not yaml file, to have a more uniform management of such information for human and robot.

But I haven't seen any actions in that direction so far, and I don't have time myself to dig into this. I guess at short term, each subproject / protocol will implement the human description as they prefer. @FraCampus, placing it in the yaml can be a first option to start with. We could see later on how we can generalize it.

If you have a proposal for placing it into yaml file, please share it.

fraBent commented 4 years ago

One possible and easy solution could be include in the key: value also the masses (as additional column in a sense)

The structure will look like:

segment key | length | mass unit: [m], [kg] ex. r_hand: 0.15, 0.5

Moreover, I would suggest also to introduce a key label also for the whole body height and weight @NevioTag

aremazeilles commented 4 years ago

If we stick to yaml files, I would rather use a specific tag, i.e

r_hand_length: 0.15
r_hand_mass: 0.5