[Rock-dev] Using a specific task deployment in a composition (Roby)

Chris Müller christoph.mueller at dfki.de
Mon May 21 16:35:46 CEST 2012


Hi,

Thomas has asked me about an interesting use case in defining a 
composition in roby. Here is a simplified description about the problem. 
Assume the following setup:

# deployments
simple_deployment("sonar", "sonar_tritech::Micron")
simple_deployment("sonar_rear", "sonar_tritech::Micron")

# compositions
composition 'DualSonar'
     add SonarTritech::Micron, :as => 'sonar'
     add SonarTritech::Micron, :as => 'sonar_rear'
end

The final question is how can we map the Micron task from deployment 
"sonar" directly
to place holder for the 'sonar' task in the DualSonar composition.

On our AUV Avalon we have a similar use case, where we distinguish two 
sonar devices from the same driver and it seems it maps magically in the 
correct order. (never met any problem by roby).

I don't know if the :as flag is influencing the mapping mechanism for 
the right deployment or only the order of deployment declarations is 
relevant.

In the experiments it wouldn't be a problem because each task in the 
composition is configured through the :as identifier. But after a few 
thoughts i would currently not exclude a situation where the deployment 
"sonar" is configured and used for the "sonar_rear" task.

Does anyone have some more experiences with this use case? (Matthias, 
Janosch?)

Chris



More information about the Rock-dev mailing list