Robotics StackExchange | Archived questions

How to stop Turblebot under any emergency

Dear all, I am using a robot turblebot3-burger to do test. I write some test code to publish the control message (line-speed/angular-speed) to /cmd_vel. Follow the TB3 instruction before move the burger I need launch remotely (through ssh) on TB3 the below command:

roslaunch turtlebot3_bringup turtlebot3_robot.launch

if I run rosnode list remotely Ican see some node are start up, so at the moment I should be ready to publish the control message to /cmd_vel. My question are:

Q1: as soon as I stop publish the control messge -- either due to some communication problem, code bug, or I simply stop the node on PC by Ctrl+C, the robot will not be stop -- the only way I can do right now is to switch -off the power robot. This is anoying and I wonder if there should be any safety node that should run in turblebot3-burger --either it can stop the Robot when recieving sme control message from other node , or a time-out should happen when there is no control message published to it?

Q2: Occationally I noticed after I reboot the turblebot3-burger , and run up the service as above command, it will immediately start moving, don't know the exactly reason--I guess if it is because some remaining "command" still exist in some "buffer" that was not cleared?
Anyway, is there any safe way that after reboot the turblebot3-burger and reset it to a absolutely "known" state?

Thanks a lot

Asked by macleonsh on 2019-05-11 04:00:51 UTC

Comments

Answers

This becomes not only an anoying but a reliable issue I think?

When doing test when I want to interupt the test (before the programing running finished) simply using Ctrl+C can terminate the program but TB3 are keeping moving (at the last control twist message sent to cmd_vel I guess).

Search around there is no native solution, some [post](https://answers.ros.org/question/292512/stop-my-robot-if-cmd_vel-doesnt-receive-a-message-within-a-certain-time-period/) gave some python code and I don't fully understand and no time to study..

It is so disappointed that such a basic feature can not be done within some simple way, like a watch-dog feature which is so common for a iot device..

Asked by macleonsh on 2019-05-13 04:12:39 UTC

Comments

This is probably not what you came here to hear/read, but seeing as this is very specific to the TB3 stack: have you asked Robotis? They're the ones developing/maintaining the TB3 software, so would be the first to ask these sort of questions about specific functionality of their software.

Asked by gvdhoorn on 2019-05-13 04:46:09 UTC

@gvdhoorn I can not find the right support window. They said just raise question here and with the turtlebot3 tag to set.

Anyway one thought is that when some issue happen as soon as /CMD_vel is still avalible, can I directly write some messge to that topic to stop the robot ?

Asked by macleonsh on 2019-05-15 10:18:28 UTC