[Rock-dev] Calling method of Roby Planner results in non-stoppable PlanningTask

Christian Rauch Christian.Rauch at dfki.de
Tue May 22 15:35:03 CEST 2012


Hello,

when calling a method of the Roby Planner via Robot.<method>! I receive
the following error:

15:15:18.924 (seekurjr_simulation) putting
Roby::PlanningTask:0xffffffffb40c7e0c{[...]}[] in quarantine:
Roby::PlanningTask:0xffffffffb40c7e0c{[...]}[]/stop failed to emit
15:15:18.924 (seekurjr_simulation) the error is:
15:15:18.924 (seekurjr_simulation) uncaught exception in the command of
the stop event of Roby::PlanningTask:0xffffffffb40c7e0c
15:15:18.925 (seekurjr_simulation)
[...]/tools/roby/lib/roby/transactions.rb:301:in `add': transaction
#<Roby::Transaction:0xb40b8a60> has been either committed or discarded.
No modification allowed (RuntimeError)

Despite this error, the Task is still being executed but cannot be stopped.

The composition is defined by:
###
composition "ForwardMotion" do
    argument :speed, :default => 0 # m/s

    add Srv::Motion2DControlledSystem, :as => 'cmd'

    on :start do |event|
        @transvel_writer = data_writer 'cmd', 'command_in'
        @cmd = Types::Base::MotionCommand2D.new
        @cmd.translation = speed
        @cmd.rotation = 0
    end

    on(:stop) { puts "==> ForwardMotion received stop" }

    poll do
        @transvel_writer.write(@cmd)
    end

    terminates
end
###

and the planning method is
###
    method(:slowfwd) do
        Cmp::ForwardMotion.with_arguments(:speed => 0.4)
    end
###

The stop-block is executed, but the PlanningTask is still running.

Regards,
Christian


-- 
 Christian Rauch
 Space Robotics

 Universität Bremen
 FB 3 - Mathematik und Informatik
 AG Robotik
 Robert-Hooke-Straße 5
 28359 Bremen, Germany

 Tel:     +49 (0)421 178 45-6619
 Empfang: +49 (0)421 178 45-6550
 Fax:     +49 (0)421 178 45-4150
 E-Mail:  Christian.Rauch at dfki.de

 Weitere Informationen: http://www.informatik.uni-bremen.de/robotik



More information about the Rock-dev mailing list