From 34a82320d55bc5edb673da65124d20c26e58b817 Mon Sep 17 00:00:00 2001 From: Oleg Kalachev Date: Wed, 6 Dec 2017 06:02:17 +0300 Subject: [PATCH] Updates docs/simple_offboard.md Auto commit by GitBook Editor --- docs/simple_offboard.md | 37 +++++++++++++++++++++++++++++++++---- 1 file changed, 33 insertions(+), 4 deletions(-) diff --git a/docs/simple_offboard.md b/docs/simple_offboard.md index 4dccbaa6..91c345d3 100644 --- a/docs/simple_offboard.md +++ b/docs/simple_offboard.md @@ -23,7 +23,8 @@ Simple offboard ```python import rospy -from clever.srv import SetPosition, \ +from clever.srv import Navigate, \ + SetPosition, \ SetPositionYawRate, \ SetPositionGlobal, \ SetPositionGlobalYawRate, \ @@ -40,6 +41,8 @@ rospy.init_node('foo') # Создаем прокси ко всем сервисам: +set_position = rospy.ServiceProxy('/navigate', Navigate) + set_position = rospy.ServiceProxy('/set_position', SetPosition) set_position_yaw_rate = rospy.ServiceProxy('/set_position/yaw_rate', SetPositionYawRate) @@ -91,9 +94,35 @@ release = rospy.ServiceProxy('/release', Trigger) telemetry = get_telemetry() print telemetry.x, telemetry.y, telemetry.z ``` + +### navigate + +Прилететь в обозначенную точку по прямой. + +Параметры: + +* x, y, z – координаты в системе `frame_id` +* yaw – угол по рысканью +* speed – скорость полета (скорость движения setpoint) +* frame_id, update_frame, auto_arm. + +Примеры: + +```python +# прилететь по прямой в точку 5:0 (высота 2) +# в локальной системе координат со скоростью 0.8 м/с +navigate(5, 0, 3, speed=0.8) +``` + +```python +# прилететь в точку 3:2 (высота 2) в системе координат маркерного поля +# со скоростью 1 м/с +navigate(3, 2, 2, speed=1, frame_id='aruco_map', update_frame=True) +``` + ### set_position -Установить позицию и рысканье. +Установить цель по позиции и рысканью. Для полета на точку по прямой используйте `navigate`. Параметры: x, y, z, yaw, frame_id, update_frame @@ -112,10 +141,10 @@ set_position(x=0, y=-1, z=0, frame_id='fcu_horiz') # пролететь впр ``` Задание позиции относительно системы маркеров -(фрейм marker_map не будет опубликован, пока коптер хоть раз не увидит один из маркеров): +(фрейм `aruco_map` не будет опубликован, пока коптер хоть раз не увидит один из маркеров): ```python -set_position(x=2, y=2, z=3, frame_id='marker_map', update_frame=True) # полет в координату 2:2, высота 3 метра +set_position(x=2, y=2, z=3, frame_id='aruco_map', update_frame=True) # полет в координату 2:2, высота 3 метра ``` ### set_position_yaw_rate