exponenta event banner

cancelGoal

Отмена последней цели, отправленной клиентом

Синтаксис

Описание

пример

cancelGoal(client) отправляет запрос на отмену отслеживаемой цели, который является последним, отправленным на сервер действий. Указанный клиент отправляет запрос.

Если цель находится в 'active' состояние, сервер прерывает выполнение цели. Если цель 'pending', вспоминается. Если этот клиент не отправил цель или если предыдущая цель была достигнута, эта функция возвращается немедленно.

Примеры

свернуть все

В этом примере показано, как отправлять и отменять цели для действий ROS. Типы действий должны быть предварительно настроены с запущенным сервером действий.

Необходимо настроить '/fibonacci' тип действия. Чтобы запустить этот сервер действий, используйте следующую команду в системе ROS:

rosrun actionlib_tutorials fibonacci_server

Сначала настройте клиент действия ROS. Затем отправьте сообщение цели с измененными параметрами. Наконец, отмените цель и все цели на сервере действий.

Подключение к сети ROS с указанным IP-адресом. Создание клиента действий ROS, подключенного к сети ROS с помощью rosactionclient. Укажите имя действия. Дождитесь подключения клиента к серверу.

rosinit('192.168.203.133',11311)
Initializing global node /matlab_global_node_18287 with NodeURI http://192.168.203.1:55284/
[actClient,goalMsg] = rosactionclient('/fibonacci','DataFormat','struct');
waitForServer(actClient);

Отправка сообщения о цели с измененными параметрами. Дождитесь завершения выполнения цели.

goalMsg.Order = int32(4);
[resultMsg,resultState] = sendGoalAndWait(actClient,goalMsg)
resultMsg = struct with fields:
    MessageType: 'actionlib_tutorials/FibonacciResult'
       Sequence: [0 1 1 2 3]

resultState = 
'succeeded'
rosShowDetails(resultMsg)
ans = 
    '
       MessageType :  actionlib_tutorials/FibonacciResult
       Sequence    :  [0, 1, 1, 2, 3]'

Отправка нового сообщения о цели без ожидания.

goalMsg.Order = int32(5);
sendGoal(actClient,goalMsg)

Отмена цели в клиенте действий ROS, actClient.

cancelGoal(actClient)

Отмена всех целей на сервере действий, которые actClient подключен к.

cancelAllGoals(actClient)

Удалить клиент действия.

delete(actClient)

Отключитесь от сети АФК.

rosshutdown
Shutting down global node /matlab_global_node_18287 with NodeURI http://192.168.203.1:55284/

Входные аргументы

свернуть все

Клиент действия ROS, указанный как SimpleActionClient дескриптор объекта. Этот простой клиент действий позволяет отслеживать одну цель одновременно.

Представлен в R2019b