Using Orocos with Modelica

Hello,

does anybody use modelica together with orocos?

We want to develop a new orocos- based controller, and during the
development phase we want to test it against a system model.

My idea is to implement the model using the "OpenModelica interactive
Server" and embed it via a TCP/IP link into an Orocos component.

see: http://www.openmodelica.org/index.php/home/tools
More details you can find in the OpenModelica user guide, chapter 5,
page 73ff.

I know that this is not hard realtime, but soft realtime would be good
enough for us to start with.

Any comments?

How are you guys implementing your models, to test your controllers
before deployment?

Best regards:

Uwe Fechner

Using Orocos with Modelica

Hi Uwe,

> Date: Sun, 12 Jun 2011 13:58:06 +0200
> From: Uwe Fechner <u [dot] fechner [..] ...>
> Subject: [Orocos-users] Using Orocos with Modelica
> To: "orocos-users [..] ..."
>        <orocos-users [..] ...>
> Message-ID: <4DF4A9CE [dot] 40604 [..] ...>
> Content-Type: text/plain; charset=ISO-8859-1

> does anybody use modelica together with orocos?
>
> We want to develop a new orocos- based controller, and during the
> development phase we want to test it against a system model.
>
> My idea is to implement the model using the "OpenModelica interactive
> Server" and embed it via a TCP/IP link into an Orocos component.
>
> see: http://www.openmodelica.org/index.php/home/tools
> More details you can find in the OpenModelica user guide, chapter 5,
> page 73ff.

We have been trying something simular (same goal, other way of
working). We used code generation from physical models, and
incorporated that code into orocos components.
We did try (and succeeded) doing it using code generation from
Simscape (already 2 years ago). We also did some experiments with
dymola, but didn't get far due to missing licenses (dymola has a
"rather complex" license model" :-/.

Openmodelica was on our mind, but we didn't find resources to tackle
this yet: See
<http://www.fmtc.be/downloads/Internship/Mechatronic_Software_Testing_using_Physical_Models.pdf>
(As you can see, this was a proposal for last year already,
unfortunately, we haven't found anyone interested so far...)

> I know that this is not hard realtime, but soft realtime would be good
> enough for us to start with.

There has been quite some academic research on this topic lately though.

> How are you guys implementing your models, to test your controllers
> before deployment?

In this way :-P

Regards,

Klaas
--
Orocos-Users mailing list
Orocos-Users [..] ...
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users

Using Orocos with Modelica

2011/6/12 Uwe Fechner <u [dot] fechner [..] ...>

> Hello,
>
> does anybody use modelica together with orocos?
>
> We want to develop a new orocos- based controller, and during the
> development phase we want to test it against a system model.
>
> My idea is to implement the model using the "OpenModelica interactive
> Server" and embed it via a TCP/IP link into an Orocos component.
>
> see: http://www.openmodelica.org/index.php/home/tools
> More details you can find in the OpenModelica user guide, chapter 5,
> page 73ff.
>
> I know that this is not hard realtime, but soft realtime would be good
> enough for us to start with.
>
> Any comments?
>
> How are you guys implementing your models, to test your controllers
> before deployment?
>
>
For simple systems, we usually have a simulator coded in C++ and embedded in
an Orocos component which implements the same interface as the actual
system. For more complex system, we have also used the Orocos Simulink
target (Orocos v1.x) to validate our algorithms against a Simulink model. In
some cases (e.g. control of an underwater vehicle), parts of the dynamic
model are also used in the control loop so we have coded the dynamic model
in a separate C++ library, which is shared by the simulator component and
the controller component.

Philippe

Using Orocos with Modelica

On Jun 13, 2011, at 13:05 , Philippe Hamelin wrote:

> 2011/6/12 Uwe Fechner <u [dot] fechner [..] ...>
> Hello,
>
> does anybody use modelica together with orocos?
>
> We want to develop a new orocos- based controller, and during the
> development phase we want to test it against a system model.
>
> My idea is to implement the model using the "OpenModelica interactive
> Server" and embed it via a TCP/IP link into an Orocos component.
>
> see: http://www.openmodelica.org/index.php/home/tools
> More details you can find in the OpenModelica user guide, chapter 5,
> page 73ff.
>
> I know that this is not hard realtime, but soft realtime would be good
> enough for us to start with.
>
> Any comments?
>
> How are you guys implementing your models, to test your controllers
> before deployment?
>
>
> For simple systems, we usually have a simulator coded in C++ and embedded in an Orocos component which implements the same interface as the actual system. For more complex system, we have also used the Orocos Simulink target (Orocos v1.x) to validate our algorithms against a Simulink model. In some cases (e.g. control of an underwater vehicle), parts of the dynamic model are also used in the control loop so we have coded the dynamic model in a separate C++ library, which is shared by the simulator component and the controller component.

Same sort of approach here, though we don't use Simulink.
S

Using Orocos with Modelica

On Sun, 12 Jun 2011, Uwe Fechner wrote:

> Hello,
>
> does anybody use modelica together with orocos?
>
> We want to develop a new orocos- based controller, and during the
> development phase we want to test it against a system model.
>
> My idea is to implement the model using the "OpenModelica interactive
> Server" and embed it via a TCP/IP link into an Orocos component.
>
> see: http://www.openmodelica.org/index.php/home/tools
> More details you can find in the OpenModelica user guide, chapter 5,
> page 73ff.
>
> I know that this is not hard realtime, but soft realtime would be good
> enough for us to start with.
>
> Any comments?

Not really. Except that I wonder why you would like to use Orocos, in this
rather traditional environment, of normal processes coupled via TCP/IP.

> How are you guys implementing your models, to test your controllers
> before deployment?

Most(?) users of Orocos do not use many model-driven controllers (complex
robot systems are often more about perception and decision making than
about pure control). But there _are_ some users using code generated from
Simulink.

> Best regards:
>
> Uwe Fechner

Herman

Using Orocos with Modelica

On 12.06.2011 18:58, Herman Bruyninckx wrote:
> Not really. Except that I wonder why you would like to use Orocos, in this
> rather traditional environment, of normal processes coupled via TCP/IP.
Well, I want to use the modelica model only for the verification and
optimization of the orocos based control software BEFORE the deployment.
When the controller is deployed in the field, than I don't won't to use
this model any more. In the field we need hard real-time, otherwise our
power-kites might crash.

And that can be dangerous.

On the other hand, I know that the modelica developers want to release a
simulator, that is capable of hard real-time within the future. And with
a realtime- capable model we could also try advanced control algorithms
like NMPC, which might improve the overall performance.

Regards:

Uwe