[Rock-dev] Roby: Using different configurations - conceptual error or bug?
Allan E. Conquest
allan.conquest at dfki.de
Thu Feb 16 15:45:31 CET 2012
Hi,
I would like to use non-default configurations for
a) the general running case (like the time before or between any
mission) [here: 'studiobad'] and
b) mission specific configurations? [here: 'default', 'wall_servoing']
The following is our situation:
Robot.devices do
device(Dev::Micron, :as => 'sonar').
period(0.01).
use_conf("studiobad")
end
wall_device = device('sonar').use_conf('default', 'wall_servoing')
define('wall', Cmp::VisualServoing.use(Cmp::WallDetector.use(wall_device)))
Unfortunately, this produces the following error message:
device sonar is assigned to both
Orocos::RobyPlugin::SonarTritech::Micron:0x7f764a0764b8{conf =>
[studiobad], micron_name => sonar}[] and
Orocos::RobyPlugin::SonarTritech::Micron:0x7f764a07fcc0{conf =>
[default, wall_servoing], micron_name => sonar}[]
(Orocos::RobyPlugin::SpecError)
= Backtrace
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/engine.rb:876:in
`validate_generated_network',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/data_sources.rb:846:in
`each',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/data_sources.rb:846:in
`each_master_device',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/engine.rb:873:in
`validate_generated_network',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/engine.rb:871:in
`each',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/engine.rb:871:in
`validate_generated_network',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/engine.rb:1501:in
`resolve',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/scripts/instanciate.rb:130:in
`compute',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/scripts/instanciate.rb:119:in
`each',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/scripts/instanciate.rb:119:in
`compute',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/scripts/instanciate.rb:154:in
`run',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/scripts/common.rb:251:in
`run',
|
/home/allan/dev/AVALON.master/tools/roby/lib/roby/exceptions.rb:327:in
`display_exception',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/scripts/common.rb:249:in
`run',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/scripts/instanciate.rb:152:in
`run',
|
/home/allan/dev/AVALON.master/tools/orocos.rb/lib/orocos/roby/scripts/instanciate.rb:310,
| /usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in
`gem_original_require',
| /usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require',
| scripts/orocos/instanciate:3
=
If this problem is not due to a bug, could somebody please give a best
practice guide on how to do this kind of configuration?
Best
Allan
More information about the Rock-dev
mailing list