[PATCH] Vereshchagin for serial chains

Dear Ruben,

attached you will find patches against latest HEAD. It adds vereshchagin's solver for serial chains.
It is tested and at some places corrected version of your original implementation.
There are still some blocks of code that are commented out. These were used to make integration with control simpler during the tests.
But I commented them out to keep the patch as close as possible to your original version. 

Sincerely
Azamat

AttachmentSize
0002-added-vereshchagin-ID-solver-with-corrections-to-ori.patch27.7 KB

[PATCH] Vereshchagin for serial chains

On Fri, Jan 6, 2012 at 1:23 PM, Azamat Shakhimardanov
<shakhimardanov [..] ...> wrote:
> Dear Ruben,
>
> attached you will find patches against latest HEAD. It adds vereshchagin's solver for serial chains.
> It is tested and at some places corrected version of your original implementation.
> There are still some blocks of code that are commented out. These were used to make integration with control simpler during the tests.
> But I commented them out to keep the patch as close as possible to your original version.
>

I applied the patch partially (I did not apply the changes to the
CMakeLists.txt) and you can find it on the current master HEAD. Could
you somehow supply a unit test for the solver.

Thanks for your contribution!!

Ruben

>
> Sincerely
> Azamat
>
>
> ----- Original Message -----
> From: Ruben Smits <ruben [dot] smits [..] ...>
> To: orocos-users [..] ...; Azamat Shakhimardanov <shakhimardanov [..] ...>
> Cc:
> Sent: Tuesday, January 3, 2012 11:45 AM
> Subject: Re: [Orocos-users] Questions on KDL Tree extensions and hybrid dynamics alg,
>
> On Wednesday 21 December 2011 12:34:04 Azamat Shakhimardanov wrote:
>> Dear Ruben,
>>
>> after long testing, corrections and discussions with Herman Vereshchagin's
>> hybrid dynamics algorithm  is ready to be used with serial chains.
>> My first question is how I could contribute it back? I could just send the
>> current version I have to you.  Some parts (many not necessary comments,
>> printfs) of it still need to be cleaned up. I could write a short README
>> explaining what changed to keep you updated.
>
> The easiest way is to contribute is to provide a patch against the latest git
> HEAD which is available on
> http://git.mech.kuleuven.be/robotics/orocos_kinematics_dynamics.git
>
>> The other question is related to this algorithm's extension to trees. Herman
>> already confirmed theory behind it, so  I am working my way through KDL
>> tree primitives to see how it could be done. Regarding this I had one
>> point, so far.
>>
>> - What is the semantics of q_nr member in TreeElement. Does it describe the
>> joint's number which is part of this element? Since it gets assigned joint
>> index number in Tree::addSegment, I was wondering about it.
>
> Since we use a plain JntArray for the joints in a tree each Tree element gets
> an index number that will use to find its jointvalue in this array
>
>> - Another point of clarification, Tree primitive assumes that the joints at
>> the root of branches are co-located.  Example: If tree branches of at
>> segment L1 then the joints of branches at L1 tip are co-located. Is it so?
>
> Yes, but you could make the first joint of type None, which means you can put
> the next branched joints at any place you would like.
>
>> Also, some docu is missing, but I would be glad to contribute. I could send
>> you my notes.
>
> Patches (against the latest git) for documentations are very welcome.
>
>> Sincerely
>> Azamat
>
> Ruben
> --
> Warning, new email address:
> ruben [dot] smits [..] ...
> --
> Orocos-Users mailing list
> Orocos-Users [..] ...
> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>

[PATCH] Vereshchagin for serial chains

>I applied the patch partially (I did not apply the changes to the
>CMakeLists.txt) 

sorry forgot to remove, I modified it have Eigen compatibility on my system.

>and you can find it on the current master HEAD. Could
>you somehow supply a unit test for the solver.
>Thanks for your contribution!!

Yes, will do. I will also add some docu. 

Sincerely
Azamat

>
>
> ----- Original Message -----
> From: Ruben Smits <ruben [dot] smits [..] ...>
> To: orocos-users [..] ...; Azamat Shakhimardanov <shakhimardanov [..] ...>
> Cc:
> Sent: Tuesday, January 3, 2012 11:45 AM
> Subject: Re: [Orocos-users] Questions on KDL Tree extensions and hybrid dynamics alg,
>
> On Wednesday 21 December 2011 12:34:04 Azamat Shakhimardanov wrote:
>> Dear Ruben,
>>
>> after long testing, corrections and discussions with Herman Vereshchagin's
>> hybrid dynamics algorithm  is ready to be used with serial chains.
>> My first question is how I could contribute it back? I could just send the
>> current version I have to you.  Some parts (many not necessary comments,
>> printfs) of it still need to be cleaned up. I could write a short README
>> explaining what changed to keep you updated.
>
> The easiest way is to contribute is to provide a patch against the latest git
> HEAD which is available on
> http://git.mech.kuleuven.be/robotics/orocos_kinematics_dynamics.git
>
>> The other question is related to this algorithm's extension to trees. Herman
>> already confirmed theory behind it, so  I am working my way through KDL
>> tree primitives to see how it could be done. Regarding this I had one
>> point, so far.
>>
>> - What is the semantics of q_nr member in TreeElement. Does it describe the
>> joint's number which is part of this element? Since it gets assigned joint
>> index number in Tree::addSegment, I was wondering about it.
>
> Since we use a plain JntArray for the joints in a tree each Tree element gets
> an index number that will use to find its jointvalue in this array
>
>> - Another point of clarification, Tree primitive assumes that the joints at
>> the root of branches are co-located.  Example: If tree branches of at
>> segment L1 then the joints of branches at L1 tip are co-located. Is it so?
>
> Yes, but you could make the first joint of type None, which means you can put
> the next branched joints at any place you would like.
>
>> Also, some docu is missing, but I would be glad to contribute. I could send
>> you my notes.
>
> Patches (against the latest git) for documentations are very welcome.
>
>> Sincerely
>> Azamat
>
> Ruben
> --
> Warning, new email address:
> ruben [dot] smits [..] ...
> --
> Orocos-Users mailing list
> Orocos-Users [..] ...
> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>

[PATCH] Vereshchagin for serial chains

Hi Ruben,
attached you will find a patch which includes in source docs for the solver and its test (example) extension to solvertest.cpp.
Thank you.
Sincerely
Azamat

[PATCH] Vereshchagin for serial chains

Hi Ruben,

here it is once again.

Sincerely
Azamat

[PATCH] Vereshchagin for serial chains

On Fri, Mar 23, 2012 at 3:42 PM, Azamat Shakhimardanov
<shakhimardanov [..] ...> wrote:
> Hi Ruben,
>
> here it is once again.

Creating a bug report and attaching your patch to it, is a more
persistent and trackable way to get your patches in the source ;):
anyway it's applied and available in the git-repos.

> Sincerely
> Azamat

Ruben

> ----- Original Message -----
> From: Azamat Shakhimardanov <shakhimardanov [..] ...>
> To: "ruben [..] ..." <ruben [..] ...>
> Cc: "orocos-users [..] ..." <orocos-users [..] ...>
> Sent: Wednesday, January 25, 2012 3:38 PM
> Subject: Re: [Orocos-users] [PATCH] Vereshchagin for serial chains
>
>
>
>>I applied the patch partially (I did not apply the changes to the
>>CMakeLists.txt)
>
> sorry forgot to remove, I modified it have Eigen compatibility on my system.
>
>>and you can find it on the current master HEAD. Could
>>you somehow supply a unit test for the solver.
>>Thanks for your contribution!!
>
>
> Yes, will do. I will also add some docu.
>
>
> Sincerely
> Azamat
>
>
>
>>
>>
>> ----- Original Message -----
>> From: Ruben Smits <ruben [dot] smits [..] ...>
>> To: orocos-users [..] ...; Azamat Shakhimardanov <shakhimardanov [..] ...>
>> Cc:
>> Sent: Tuesday, January 3, 2012 11:45 AM
>> Subject: Re: [Orocos-users] Questions on KDL Tree extensions and hybrid dynamics alg,
>>
>> On Wednesday 21 December 2011 12:34:04 Azamat Shakhimardanov wrote:
>>> Dear Ruben,
>>>
>>> after long testing, corrections and discussions with Herman Vereshchagin's
>>> hybrid dynamics algorithm  is ready to be used with serial chains.
>>> My first question is how I could contribute it back? I could just send the
>>> current version I have to you.  Some parts (many not necessary comments,
>>> printfs) of it still need to be cleaned up. I could write a short README
>>> explaining what changed to keep you updated.
>>
>> The easiest way is to contribute is to provide a patch against the latest git
>> HEAD which is available on
>> http://git.mech.kuleuven.be/robotics/orocos_kinematics_dynamics.git
>>
>>> The other question is related to this algorithm's extension to trees. Herman
>>> already confirmed theory behind it, so  I am working my way through KDL
>>> tree primitives to see how it could be done. Regarding this I had one
>>> point, so far.
>>>
>>> - What is the semantics of q_nr member in TreeElement. Does it describe the
>>> joint's number which is part of this element? Since it gets assigned joint
>>> index number in Tree::addSegment, I was wondering about it.
>>
>> Since we use a plain JntArray for the joints in a tree each Tree element gets
>> an index number that will use to find its jointvalue in this array
>>
>>> - Another point of clarification, Tree primitive assumes that the joints at
>>> the root of branches are co-located.  Example: If tree branches of at
>>> segment L1 then the joints of branches at L1 tip are co-located. Is it so?
>>
>> Yes, but you could make the first joint of type None, which means you can put
>> the next branched joints at any place you would like.
>>
>>> Also, some docu is missing, but I would be glad to contribute. I could send
>>> you my notes.
>>
>> Patches (against the latest git) for documentations are very welcome.
>>
>>> Sincerely
>>> Azamat
>>
>> Ruben
>> --
>> Warning, new email address:
>> ruben [dot] smits [..] ...
>> --
>> Orocos-Users mailing list
>> Orocos-Users [..] ...
>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>>
>
>
>
> --
> Ruben Smits, Phd
> Chief Technology Officer
> Intermodalics BVBA
> +32479511786
> www.intermodalics.eu
>
> --
> Orocos-Users mailing list
> Orocos-Users [..] ...
> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users