On Wed, 15 Sep 2010, Tully Foote wrote: > SMACH is the recommended way to coordinate complex systems.  actions using > actionlib are commonly used as states within SMACH. > actions are as you say very similar to services in their use but have more > control and feedback.  SMACH is designed to work as a coordination engine, > strongly based on a state machine.  SMACH has been designed that it is > trivial to use an action as a state within a SMACH state machine.  Thus we > use SMACH and actionlib at the same time.   So why are they implemented in two separate code trees? Why do they not share everything they could share? (Which is a lot, because coordination with state machines _is_ coordination with state machines, whether inside or outside of a certain context...) Legacy? Developer communication short circuits? Bouncing egos? Not Invented Here Syndrome? :-))) I'm joking of course, but I do wonder what the real differences are, since I do not see the case for two fully separated libraries... > Tully Herman > > On Wed, Sep 15, 2010 at 5:52 AM, Enea Scioni > wrote: > > HI all, > > I'm following this topic but I'm also a bit confused.. > In order to manage the whole system, composed as hundreds nodes, > should I > use SMACH (instead actionlib)? > What is the " best practice " that ROS suggest? When should I > use actionlib > and when SMACH? > > Starting from the documentation (and my experiments), in a > nutshell I see > actionlib more similar to a ROS Service, but with added > features, as > possibilities to receive a feedback, delete the request and so > on; to do > that actionlib use/implement an "internal" state machine in > order to manage > the communication protocol on topic between the Action Server > and Action > Client. > Is it true or I'm making a mistake? > > Regards, > Enea Scioni > -- > View this message in context:http://ros-users.122217.n3.nabble.com/actionlib-design-questions-tp1468507p > 1479561.html > Sent from the ROS-Users mailing list archive at Nabble.com. > _______________________________________________ > ros-users mailing list > ros-users@code.ros.org > https://code.ros.org/mailman/listinfo/ros-users > > > > > -- > Tully Foote > Systems Engineer > Willow Garage, Inc. > tfoote@willowgarage.com > (650) 475-2827 > > -- K.U.Leuven, Mechanical Eng., Mechatronics & Robotics Research Group Tel: +32 16 328056 EURON Coordinator (European Robotics Research Network) Open Realtime Control Services Associate Editor JOSER , IJRR