Boost units and Orocos?

Hi guys,

Does anyone use Boost units with Orocos? If so, how did you achieve
this? I'd rather not reinvent the wheel. :-)

My preference is to create strongly typed components. Plus, these types
should be usable in the deployer.

Suggestions on where to start are also welcome.

Kind regards,
Robert

Boost units and Orocos?

On 09/02/2011 09:55 AM, Robert Wilterdink wrote:
> My preference is to create strongly typed components. Plus, these types
> should be usable in the deployer.
>
> Suggestions on where to start are also welcome.
In rock, we use the Ruby scripting to write tests involving orocos
components. I.e. we start/stop/control/feed fake data/retrieve and test
data using the Ruby scripting interface (and plug some GUIs the same way
for tests that require interactivity)

While orocos.rb should in principle work with "plain" orocos components
(non-orogen), it has never been tested. The only strong requirement
would be to use at least typegen to create the typekits, though.

Boost units and Orocos?

2011/9/2 Sylvain Joyeux <sylvain [dot] joyeux [..] ...>

> On 09/02/2011 09:55 AM, Robert Wilterdink wrote:
> > My preference is to create strongly typed components. Plus, these types
> > should be usable in the deployer.
> >
> > Suggestions on where to start are also welcome.
> In rock, we use the Ruby scripting to write tests involving orocos
> components. I.e. we start/stop/control/feed fake data/retrieve and test
> data using the Ruby scripting interface (and plug some GUIs the same way
> for tests that require interactivity)
>
> While orocos.rb should in principle work with "plain" orocos components
> (non-orogen), it has never been tested. The only strong requirement
> would be to use at least typegen to create the typekits, though.
>
> --
>

Sylvain,

I think he is speaking about units not unit tests
http://www.boost.org/doc/libs/1_41_0/doc/html/boost_units.html

> Sylvain Joyeux (Dr.Ing.)
> Space & Security Robotics
>
> !!! Achtung, neue Telefonnummer!!!
>
> Standort Bremen:
> DFKI GmbH
> Robotics Innovation Center
> Robert-Hooke-Straße 5
> 28359 Bremen, Germany
>
> Phone: +49 (0)421 178-454136
> Fax: +49 (0)421 218-454150
> E-Mail: robotik [..] ...
>
> Weitere Informationen: http://www.dfki.de/robotik
> -----------------------------------------------------------------------
> Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
> Firmensitz: Trippstadter Straße 122, D-67663 Kaiserslautern
> Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster
> (Vorsitzender) Dr. Walter Olthoff
> Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes
> Amtsgericht Kaiserslautern, HRB 2313
> Sitz der Gesellschaft: Kaiserslautern (HRB 2313)
> USt-Id.Nr.: DE 148646973
> Steuernummer: 19/673/0060/3
> -----------------------------------------------------------------------
> --
> Orocos-Users mailing list
> Orocos-Users [..] ...
> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>

Boost units and Orocos?

On 09/02/2011 12:33 PM, Willy Lambert wrote:
>
>
> 2011/9/2 Sylvain Joyeux <sylvain [dot] joyeux [..] ...
> <mailto:sylvain [dot] joyeux [..] ...>>
>
> On 09/02/2011 09:55 AM, Robert Wilterdink wrote:
> > My preference is to create strongly typed components. Plus,
> these types
> > should be usable in the deployer.
> >
> > Suggestions on where to start are also welcome.
> In rock, we use the Ruby scripting to write tests involving orocos
> components. I.e. we start/stop/control/feed fake data/retrieve and
> test
> data using the Ruby scripting interface (and plug some GUIs the
> same way
> for tests that require interactivity)
>
> While orocos.rb should in principle work with "plain" orocos
> components
> (non-orogen), it has never been tested. The only strong requirement
> would be to use at least typegen to create the typekits, though.
>
> --
>
>
> Sylvain,
>
> I think he is speaking about units not unit tests
> http://www.boost.org/doc/libs/1_41_0/doc/html/boost_units.html
>
>
Indeed, (SI) units. Do you perhaps have an idea for that?

At the moment I am exploring typekit/orogen a bit further...

-Robert

Boost units and Orocos?

On 09/02/2011 12:45 PM, Robert Wilterdink wrote:
>> I think he is speaking about units not unit tests
>> http://www.boost.org/doc/libs/1_41_0/doc/html/boost_units.html
Ah ... Yes... Indeed.

> Indeed, (SI) units. Do you perhaps have an idea for that?
>
> At the moment I am exploring typekit/orogen a bit further...
I always thought that adding units to the types is just a big mistake.
Non-SI units are just there to please us humans (because 1 angstrom is
easier to manage than the corresponding length in meters). Computers
don't have such problems.

That's why the rule is: just use SI units and convert to non-SI for
display. Primary example: radians vs. degrees. Use radians in the code,
degrees in the UI.

As to how to integrate boost::units in typegen/orogen, I don't really
know if it would work out of the box...

Boost units and Orocos?

2011/9/2 Sylvain Joyeux <sylvain [dot] joyeux [..] ...>

> On 09/02/2011 12:45 PM, Robert Wilterdink wrote:
> >> I think he is speaking about units not unit tests
> >> http://www.boost.org/doc/libs/1_41_0/doc/html/boost_units.html
> Ah ... Yes... Indeed.
>
> > Indeed, (SI) units. Do you perhaps have an idea for that?
> >
> > At the moment I am exploring typekit/orogen a bit further...
> I always thought that adding units to the types is just a big mistake.
> Non-SI units are just there to please us humans (because 1 angstrom is
> easier to manage than the corresponding length in meters). Computers
> don't have such problems.
>
> That's why the rule is: just use SI units and convert to non-SI for
> display. Primary example: radians vs. degrees. Use radians in the code,
> degrees in the UI.
>

Don't you think it is usfull to have homoeneity checks like :
distance A = distance B^2 ending in error ?
It is as doing :
Class A = Class B with B not inherited from A
Isn't ?

> As to how to integrate boost::units in typegen/orogen, I don't really
> know if it would work out of the box...
> --
> Sylvain Joyeux (Dr.Ing.)
> Space & Security Robotics
>
> !!! Achtung, neue Telefonnummer!!!
>
> Standort Bremen:
> DFKI GmbH
> Robotics Innovation Center
> Robert-Hooke-Straße 5
> 28359 Bremen, Germany
>
> Phone: +49 (0)421 178-454136
> Fax: +49 (0)421 218-454150
> E-Mail: robotik [..] ...
>
> Weitere Informationen: http://www.dfki.de/robotik
> -----------------------------------------------------------------------
> Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
> Firmensitz: Trippstadter Straße 122, D-67663 Kaiserslautern
> Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster
> (Vorsitzender) Dr. Walter Olthoff
> Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes
> Amtsgericht Kaiserslautern, HRB 2313
> Sitz der Gesellschaft: Kaiserslautern (HRB 2313)
> USt-Id.Nr.: DE 148646973
> Steuernummer: 19/673/0060/3
> -----------------------------------------------------------------------
> --
> Orocos-Users mailing list
> Orocos-Users [..] ...
> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
>

Boost units and Orocos?

On 09/02/2011 01:40 PM, Willy Lambert wrote:
>
>
> 2011/9/2 Sylvain Joyeux <sylvain [dot] joyeux [..] ...
> <mailto:sylvain [dot] joyeux [..] ...>>
>
> On 09/02/2011 12:45 PM, Robert Wilterdink wrote:
> >> I think he is speaking about units not unit tests
> >> http://www.boost.org/doc/libs/1_41_0/doc/html/boost_units.html
> Ah ... Yes... Indeed.
>
> > Indeed, (SI) units. Do you perhaps have an idea for that?
> >
> > At the moment I am exploring typekit/orogen a bit further...
> I always thought that adding units to the types is just a big mistake.
> Non-SI units are just there to please us humans (because 1 angstrom is
> easier to manage than the corresponding length in meters). Computers
> don't have such problems.
>
> That's why the rule is: just use SI units and convert to non-SI for
> display. Primary example: radians vs. degrees. Use radians in the code,
> degrees in the UI.
>
>
> Don't you think it is usfull to have homoeneity checks like :
> distance A = distance B^2 ending in error ?
In principle, yes. In practice, I seldom see this kind of issues.

Boost units and Orocos?

On Fri, Sep 2, 2011 at 13:47, Sylvain Joyeux <sylvain [dot] joyeux [..] ...> wrote:

> > Don't you think it is usfull to have homoeneity checks like :
> > distance A = distance B^2 ending in error ?
> In principle, yes. In practice, I seldom see this kind of issues.
>

Boost::Units is just a workaround for lack of strong typing at the C++
language level.

You can find a similar solution for Python, which has been designed
exclusively for
robotics:
http://staff.aist.go.jp/geoffrey.biggs/publications/biggs05_ciras.pdf
This paper also discuss a rationale for strong typing in the context of
robotics.