рдореИрдВ рдСрдлрдмреЛрд░реНрдб рдирд┐рдпрдВрддреНрд░рдг рдЙрджрд╛рд╣рд░рдг (рдЬреЛ рдЧрдЬрд╝реЗрдмреЛ рдореЗрдВ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ) рдХреЛ рджреЛрд╣рд░рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рд╕реНрдерд╛рдиреАрдп x, y, z рдХреЗ рдмрдЬрд╛рдп рд╡реИрд╢реНрд╡рд┐рдХ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рднреЗрдЬ рд░рд╣рд╛ рд╣реВрдВред
рдореИрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реВрдВ, рдбреНрд░реЛрди "рдСрдлрдмреЛрд░реНрдб рд╕рдХреНрд╖рдо" рдХреЗ рдПрдХ рд▓реВрдк рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рд╡рд╛рд╣рди рд╕рд╢рд╕реНрддреНрд░ рдореЗрдВ рдХрднреА рдирд╣реАрдВ рдЬрд╛рддрд╛ рд╣реИ рдпрд╛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рдЪрд▓рддрд╛ рд╣реИред
рдпрд╣ рд╡рд╣ рдХреЛрдб рд╣реИ рдЬрд┐рд╕рдХрд╛ рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ:
#include <ros/ros.h>
#include <geometry_msgs/PoseStamped.h>
#include <mavros_msgs/SetMode.h>
#include <mavros_msgs/CommandBool.h>
#include <mavros_msgs/State.h>
#include <mavros_msgs/GlobalPositionTarget.h>
mavros_msgs::State current_state;
void state_cb(const mavros_msgs::State::ConstPtr& msg){
current_state = *msg;
}
int main(int argc, char **argv)
{
ros::init(argc, argv, "offb_node");
ros::NodeHandle nh;
ros::Subscriber state_sub = nh.subscribe<mavros_msgs::State>
("mavros/state", 10, state_cb);
//ros::Publisher local_pos_pub = nh.advertise<geometry_msgs::PoseStamped>
// ("mavros/setpoint_position/local", 10);
ros::Publisher global_pos_pub = nh.advertise<mavros_msgs::GlobalPositionTarget>
("mavros/setpoint_position/global", 10);
ros::ServiceClient arming_client = nh.serviceClient<mavros_msgs::CommandBool>
("mavros/cmd/arming");
ros::ServiceClient set_mode_client = nh.serviceClient<mavros_msgs::SetMode>
("mavros/set_mode");
//the setpoint publishing rate MUST be faster than 2Hz
ros::Rate rate(20.0);
// wait for FCU connection
while(ros::ok() && current_state.connected){
ros::spinOnce();
rate.sleep();
}
geometry_msgs::PoseStamped pose;
pose.pose.position.x = 0;
pose.pose.position.y = 0;
pose.pose.position.z = 2;
mavros_msgs::GlobalPositionTarget target;
target.latitude = 42.3005867;
target.longitude = -6.73246288;
target.altitude = 288;
//send a few setpoints before starting
for(int i = 100; ros::ok() && i > 0; --i){
//local_pos_pub.publish(pose);
global_pos_pub.publish(target);
ros::spinOnce();
rate.sleep();
}
mavros_msgs::SetMode offb_set_mode;
offb_set_mode.request.custom_mode = "OFFBOARD";
mavros_msgs::CommandBool arm_cmd;
arm_cmd.request.value = true;
ros::Time last_request = ros::Time::now();
while(ros::ok()){
if( current_state.mode != "OFFBOARD" &&
(ros::Time::now() - last_request > ros::Duration(5.0))){
if( set_mode_client.call(offb_set_mode) &&
offb_set_mode.response.mode_sent){
ROS_INFO("Offboard enabled");
}
last_request = ros::Time::now();
} else {
if( !current_state.armed &&
(ros::Time::now() - last_request > ros::Duration(5.0))){
if( arming_client.call(arm_cmd) &&
arm_cmd.response.success){
ROS_INFO("Vehicle armed");
}
last_request = ros::Time::now();
}
}
//local_pos_pub.publish(pose);
global_pos_pub.publish(target);
ros::spinOnce();
rate.sleep();
}
return 0;
}
рдорд╛рд╡рд░реЛрд╕: 0.22
рдЖрд░рдУрдПрд╕: рдХрд╛рдЗрдиреЗрдЯрд┐рдХ
рдЙрдмрдВрдЯреВ: 16.04
[ ] рдЕрд░реНрджреБрдкрд╛рдпрд▓рдЯ
[рдПрдХреНрд╕] рдкреАрдПрдХреНрд╕рек
рд╕рдВрд╕реНрдХрд░рдг: 1.72
[ INFO] [1513871636.932979892, 18.704000000]: Offboard enabled
[ INFO] [1513871642.007625263, 23.756000000]: Offboard enabled
[ INFO] [1513871647.086730559, 28.802000000]: Offboard enabled
[ INFO] [1513871652.230028795, 33.854000000]: Offboard enabled
[ INFO] [1513871657.324560463, 38.904000000]: Offboard enabled
[ INFO] [1513871662.405701045, 43.952000000]: Offboard enabled
[ INFO] [1513871667.482897607, 49.002000000]: Offboard enabled
[ INFO] [1513871672.582290375, 54.054000000]: Offboard enabled
[ INFO] [1513871677.688265367, 59.104000000]: Offboard enabled
[ INFO] [1513871682.756627458, 64.152000000]: Offboard enabled
[ INFO] [1513871687.861573086, 69.204000000]: Offboard enabled
[ INFO] [1513871692.928765643, 74.252000000]: Offboard enabled
[ INFO] [1513871698.006964586, 79.304000000]: Offboard enabled
[ INFO] [1513871703.113995111, 84.354000000]: Offboard enabled
[ INFO] [1513871708.205142370, 89.404000000]: Offboard enabled
[ INFO] [1513871713.332829113, 94.454000000]: Offboard enabled
[ INFO] [1513871718.443985089, 99.504000000]: Offboard enabled
header:
seq: 58
stamp:
secs: 53
nsecs: 0
frame_id: ''
status:
-
level: 0
name: "mavros: FCU connection"
message: "connected"
hardware_id: "udp://:14540<strong i="17">@localhost</strong>:14557"
values:
-
key: "Received packets:"
value: "19548"
-
key: "Dropped packets:"
value: "0"
-
key: "Buffer overruns:"
value: "0"
-
key: "Parse errors:"
value: "0"
-
key: "Rx sequence number:"
value: "94"
-
key: "Tx sequence number:"
value: "108"
-
key: "Rx total bytes:"
value: "808043"
-
key: "Tx total bytes:"
value: "26524"
-
key: "Rx speed:"
value: "15016.000000"
-
key: "Tx speed:"
value: "510.000000"
-
level: 0
name: "mavros: GPS"
message: "3D fix"
hardware_id: "udp://:14540<strong i="18">@localhost</strong>:14557"
values:
-
key: "Satellites visible"
value: "10"
-
key: "Fix type"
value: "3"
-
key: "EPH (m)"
value: "0.00"
-
key: "EPV (m)"
value: "0.00"
-
level: 0
name: "mavros: Heartbeat"
message: "Normal"
hardware_id: "udp://:14540<strong i="19">@localhost</strong>:14557"
values:
-
key: "Heartbeats since startup"
value: "48"
-
key: "Frequency (Hz)"
value: "0.900000"
-
key: "Vehicle type"
value: "Quadrotor"
-
key: "Autopilot type"
value: "PX4 Autopilot"
-
key: "Mode"
value: "AUTO.LOITER"
-
key: "System status"
value: "Standby"
-
level: 0
name: "mavros: System"
message: "Normal"
hardware_id: "udp://:14540<strong i="20">@localhost</strong>:14557"
values:
-
key: "Sensor present"
value: "0x00000000"
-
key: "Sensor enabled"
value: "0x00000000"
-
key: "Sensor helth"
value: "0x00000000"
-
key: "CPU Load (%)"
value: "0.0"
-
key: "Drop rate (%)"
value: "0.0"
-
key: "Errors comm"
value: "0"
-
key: "Errors count #1"
value: "0"
-
key: "Errors count #2"
value: "0"
-
key: "Errors count #3"
value: "0"
-
key: "Errors count #4"
value: "0"
-
level: 0
name: "mavros: Battery"
message: "Normal"
hardware_id: "udp://:14540<strong i="21">@localhost</strong>:14557"
values:
-
key: "Voltage"
value: "12.15"
-
key: "Current"
value: "-1.0"
-
key: "Remaining"
value: "100.0"
-
level: 2
name: "mavros: Time Sync"
message: "No events recorded."
hardware_id: "udp://:14540<strong i="22">@localhost</strong>:14557"
values:
-
key: "Timesyncs since startup"
value: "0"
-
key: "Frequency (Hz)"
value: "0.000000"
-
key: "Last dt (ms)"
value: "-9.905652"
-
key: "Mean dt (ms)"
value: "0.000000"
-
key: "Last system time (s)"
value: "48.740659000"
-
key: "Time offset (s)"
value: "4.147428739"
OK. I got messages from 1:1.
---
Received 5370 messages, from 1 addresses
sys:comp list of messages
1:1 0, 1, 2, 140, 141, 147, 24, 30, 31, 32, 33, 74, 76, 77, 85, 87, 102, 230, 105, 111, 241, 242, 245
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, while(ros::ok() && current_state.connected){
рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП while(ros::ok() && !current_state.connected){
ред
рд╕рд╛рде рд╣реА - https://github.com/mavlink/mavros/blob/master/mavros/src/plugins/setpoint_position.cpp#L69 - рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЛ global_position/global
рд╡рд┐рд╖рдп рд╕реЗ рдбреЗрдЯрд╛ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИред
рдореИрдВрдиреЗ рдЬрдмрдХрд┐ рд▓реВрдк рдХреЛ !
рд░реЛрд╕реНрдЯреЛрдкрд┐рдХ рдЗрдХреЛ рдЧреНрд▓реЛрдмрд▓_рдкреЛрдЬрд┐рд╢рди/рдЧреНрд▓реЛрдмрд▓ рд╕рд╣реА рдЖрдЙрдЯрдкреБрдЯ рджреЗрддрд╛ рд╣реИ:
header:
seq: 283
stamp:
secs: 193
nsecs: 832815640
frame_id: "base_link"
status:
status: 0
service: 1
latitude: 42.3005867
longitude: -6.7324631
altitude: 2120.89452234
position_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
position_covariance_type: 1
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдЕрднреА рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЬрдм рдореИрдВ рдХреЛрдб рдЪрд▓рд╛рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╣рдерд┐рдпрд╛рд░ рдпрд╛ рдСрдлрдмреЛрд░реНрдб рдХреЛ рд╕рдХреНрд╖рдо рдХрд┐рдП рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣ рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдПрдХрдорд╛рддреНрд░ рдЪреЗрддрд╛рд╡рдиреА рд╣реИ:
[ WARN] [1514991840.139563807, 7583.766000000]: SPG: sp not sent.
INFO [tone_alarm] negative
[ WARN] [1514991840.303175629, 7583.928000000]: CMD: Unexpected command 176, result 1
рдореБрдЭреЗ рд╡реИрд╢реНрд╡рд┐рдХ рд╕реЗ рд╕реНрдерд╛рдиреАрдп рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдорд╛рд╡рд░реЛрд╕/рд╕реЗрдЯрдкреЙрдЗрдВрдЯ_рдкреЛрдЬрд┐рд╢рди/рд▓реЛрдХрд▓ рдореЗрдВ рднреЗрдЬрдирд╛ рд╣реИ рдЕрдиреНрдпрдерд╛ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред
рдореИрдВ рдЙрддреНрд╕реБрдХ рд╣реВрдВ, рдХреНрдпрд╛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдореИрдВ рдЕрдХреЗрд▓рд╛ рд╣реВрдВ? рдХреНрдпрд╛ рдХреЛрдИ рдХреЗрд╡рд▓ рдорд╛рд╡рд░реЛрд╕/рд╕реЗрдЯрдкреЙрдЗрдВрдЯ_рдкреЛрдЬрд┐рд╢рди/рд╡реИрд╢реНрд╡рд┐рдХ рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдХреЗ рд╡рд┐рдорд╛рди рдСрдлрдмреЛрд░реНрдб рдЙрджрд╛рд╣рд░рдг рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ?
@mzahana рдХреНрдпрд╛ рдЖрдк рдЙрдкрд░реЛрдХреНрдд рдореБрджреНрджреЗ рдкрд░ @danividanivi рдХрд╛ рдорд╛рд░реНрдЧрджрд░реНрд╢рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдзрдиреНрдпрд╡рд╛рдж
рдореИрдВ рдХреЗрд╡рд▓ рдпрд╣ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдореБрдЭреЗ рднреА рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рд╣реИред рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ рдХрд┐ рдореИрдВ рд╕рд╣реА рд╡рд┐рд╖рдп рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ MAVROS рдЗрд╕реЗ PX4 рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╣реА MAVLINK рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рд╕рдВрджреЗрд╢ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИред рдореИрдВрдиреЗ QGroundcontrol рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬрд╛рдБрдЪ рдХреА рдФрд░ рд╕реНрдерд╛рдиреАрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдХреЗрд╡рд▓ PX4 рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рд╕рдВрджреЗрд╢ рджреЗрдЦрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред
@mzahana рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ
@ eric1221bday рддреНрд╡рд░рд┐рдд рдкреНрд░рд╢реНрди: рдХреНрдпрд╛ рдЖрдкрдХреЛ MAVROS рдкрд░ GPS рдбреЗрдЯрд╛ рдорд┐рд▓рддрд╛ рд╣реИ? рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЖрдкрдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ:
рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ MAVROS рдЗрд╕реЗ PX4 рдХреЗ рд▓рд┐рдП рд╕рд╣реА MAVLINK рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рд╕рдВрджреЗрд╢ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИ
рдпрд╣ рдереЛрдбрд╝рд╛ рдЕрд╕реНрдкрд╖реНрдЯ рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рд╣рдо рдЗрд╕ рддрд░рд╣ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рднреА рдореБрджреНрджреЗ рдХреЛ рдбреАрдмрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдореИрдВ рдПрд╕рдЖрдИрдЯреАрдПрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛, рдФрд░ рд╣рд╛рдВ, рдЬреАрдкреАрдПрд╕ рд╕рд┐рдореБрд▓реЗрд╢рди рд╕рдХреНрд╖рдо рдерд╛ рдФрд░ рдореИрдВ рдЖрд░рдУрдПрд╕ рдореЗрдВ рд╡рд┐рд╖рдп рдХреЛ рджреЗрдЦрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред рдорд╛рд╡рд▓рд┐рдВрдХ рдЪреАрдЬ рдХреЗ рд▓рд┐рдПред рдореЗрд░рд╛ рдорддрд▓рдм рдпрд╣ рдерд╛ рдХрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдерд╛ рдХрд┐ рд╡реИрд╢реНрд╡рд┐рдХ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рдХреЛ px4 рдореЗрдВ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рднреЗрдЬрд╛ рдЬрд╛ рд░рд╣рд╛ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЗрд╕реЗ рдорд╛рд╡рд▓рд┐рдВрдХ рдЗрдВрд╕реНрдкреЗрдХреНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд╣реАрдВ рджреЗрдЦ рдкрд╛ рд░рд╣рд╛ рдерд╛ред
рдпрд╣ рдХрд┐рд╕реА рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрдерд┐рддрд┐ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рд╡реИрд╢реНрд╡рд┐рдХ рд╕реЗ рд╕реНрдерд╛рдиреАрдп рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд░рдирд╛ рдФрд░ рд╕реНрдерд╛рдиреАрдп рд╕реНрдерд┐рддрд┐ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдирд╛ рд╣реИред рддреЛ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрднреА рднреА рд╡реИрд╢реНрд╡рд┐рдХ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рдирд╣реАрдВ рджреЗрдЦрддреЗ рд╣реИрдВред
рдореИрдВ рдпрд╣ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ рдХрд┐ рд╣рд╛рдБ, рдФрд░ рдореИрдВ рдЗрд╕реА рддрд░рд╣ рдкреАрдПрдХреНрд╕ 4 рд╕реЗ рдХрд┐рд╕реА рднреА рд╕реНрдерд╛рдиреАрдп рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рдХреЛ рджреЗрдЦрдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рдерд╛ред
рд╡реИрд╕реЗ рдпрд╣ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдиреЛрдб рдХреИрд╕реЗ рд╕реЗрдЯ рд╣реИ рдФрд░ рдЖрдк MAVROS рдХреЛ рдХреНрдпрд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВред рдЗрд╕реЗ рдФрд░ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдмрд┐рдирд╛ рдбреАрдмрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
@ eric1221bday рдХреБрдЫ рдФрд░ рдЬреЛрдбрд╝рдирд╛ рд╣реИ рдпрд╛ рд╣рдо рдЗрд╕реЗ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рдореИрдВ рдЗрд╕реЗ рдЕрдкрдиреА рддрд░рдл рд╕реЗ рджреЛрдмрд╛рд░рд╛ рдЬрд╛рдВрдЪреВрдВрдЧрд╛ рдФрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╡рд╛рдкрд╕ рдЖрдКрдВрдЧрд╛ред
рдХреЛрдЗ рдкреНрд░рдЧрддрд┐? рдореБрдЭреЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИред
рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдиреЗ рд╣реЗрдбрд░.рд╕реНрдЯреИрдореНрдк рдлрд╝реАрд▓реНрдб рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИред рддрднреА рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ!
рдирдорд╕реНрдХрд╛рд░! рдХреНрдпрд╛ рдХреЛрдИ рдЗрд╕ рдмрд╛рдд рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рд╖рдп рдкрд░ рдкреНрд░рдХрд╛рд╢рди /mavros/setpoint_position/global рд╡реЗ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдбреНрд░реЛрди рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣реЗ рд╣реИрдВ? рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ (рдХреЛрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рд╣реБрдИ рд╣реИ, px4 рдХреЛ рдХреЛрдИ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ) рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рд╣реЗрдбрд░.рд╕реНрдЯреИрдореНрдк рдлрд╝реАрд▓реНрдб рднреА рд╕реЗрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ
рд╣рд╛рдБ, рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ!
рдпрд╣рд╛рдБ рд╡рд╣реА ... (рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛)
@tropappar рдХреНрдпрд╛ рдЖрдк рдХреБрдЫ рдирдореВрдирд╛ рдХреЛрдб рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдореИрдВ рд╢реАрд░реНрд╖ рдкрд░ рдПрдХ рдХреЗ рд╕рдорд╛рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ, рдлрд┐рд░ рднреА rqt_graph рдкрд░ рдореБрдЭреЗ рдЕрдкрдиреЗ рдиреЛрдб рд╕реЗ рдХреЛрдИ рд╡рд┐рд╖рдп рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдпрд╣ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛ рд░рд╣рд╛ рд╣реЛред
рд╣реЗрдпрд░ рдпреВ рдЧреЛ:
#include <ros/ros.h>
#include <mavros_msgs/CommandBool.h>
#include <mavros_msgs/SetMode.h>
#include <mavros_msgs/State.h>
#include <mavros_msgs/GlobalPositionTarget.h>
#include <sensor_msgs/NavSatFix.h>
// global variables
mavros_msgs::State current_state;
sensor_msgs::NavSatFix global_position;
bool global_position_received = false;
// callback functions
void globalPosition_cb(const sensor_msgs::NavSatFix::ConstPtr& msg) {
global_position = *msg;
global_position_received = true;
ROS_INFO_ONCE("Got global position: [%.2f, %.2f, %.2f]", msg->latitude, msg->longitude, msg->altitude);
}
void state_cb(const mavros_msgs::State::ConstPtr& msg) {
current_state = *msg;
}
// main function
int main(int argc, char **argv) {
ros::init(argc, argv, "test");
ros::NodeHandle nh;
ros::ServiceClient arming_client = nh.serviceClient < mavros_msgs::CommandBool > ("mavros/cmd/arming");
ros::ServiceClient set_mode_client = nh.serviceClient < mavros_msgs::SetMode > ("mavros/set_mode");
ros::Subscriber state_sub = nh.subscribe < mavros_msgs::State > ("mavros/state", 10, state_cb);
ros::Subscriber global_pos_sub = nh.subscribe < sensor_msgs::NavSatFix > ("mavros/global_position/global", 1, globalPosition_cb);
ros::Publisher goal_pos_pub = nh.advertise < mavros_msgs::GlobalPositionTarget > ("mavros/setpoint_position/global", 10);
ros::Rate rate(10);
// wait for fcu connection
while (ros::ok() && !current_state.connected) {
ROS_INFO_ONCE("Waiting for FCU connection...");
ros::spinOnce();
rate.sleep();
}
ROS_INFO("FCU connected");
// wait for position information
while (ros::ok() && !global_position_received) {
ROS_INFO_ONCE("Waiting for GPS signal...");
ros::spinOnce();
rate.sleep();
}
ROS_INFO("GPS position received");
// set target position
mavros_msgs::GlobalPositionTarget goal_position;
goal_position.latitude = global_position.latitude;
goal_position.longitude = global_position.longitude;
goal_position.altitude = global_position.altitude;
// send a few setpoints before starting
for (int i=0; i<20; ++i) {
goal_position.header.stamp = ros::Time::now();
goal_pos_pub.publish(goal_position);
ros::spinOnce();
rate.sleep();
}
// set mode
mavros_msgs::SetMode offb_set_mode;
offb_set_mode.request.base_mode = 0;
offb_set_mode.request.custom_mode = "OFFBOARD";
if (set_mode_client.call(offb_set_mode) && offb_set_mode.response.mode_sent) {
ROS_INFO("OFFBOARD enabled");
} else {
ROS_ERROR("Failed to set OFFBOARD");
}
// arm
mavros_msgs::CommandBool arm_cmd;
arm_cmd.request.value = true;
if (arming_client.call(arm_cmd) && arm_cmd.response.success) {
ROS_INFO("Vehicle armed");
} else {
ROS_ERROR("Arming failed");
}
// take off to 5m above ground
goal_position.altitude = goal_position.altitude + 5.0;
while (ros::ok()) {
goal_position.header.stamp = ros::Time::now();
goal_pos_pub.publish(goal_position);
ros::spinOnce();
ROS_INFO_THROTTLE(1, "At altitude %.2f", global_position.altitude);
rate.sleep();
}
return 0;
}
рдирдорд╕реНрдХрд╛рд░! рдХреНрдпрд╛ рдХреЛрдИ рдЗрд╕ рдмрд╛рдд рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рд╖рдп рдкрд░ рдкреНрд░рдХрд╛рд╢рди /mavros/setpoint_position/global рд╡реЗ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдбреНрд░реЛрди рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣реЗ рд╣реИрдВ? рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ (рдХреЛрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рд╣реБрдИ рд╣реИ, px4 рдХреЛ рдХреЛрдИ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ) рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рд╣реЗрдбрд░.рд╕реНрдЯреИрдореНрдк рдлрд╝реАрд▓реНрдб рднреА рд╕реЗрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ
рдореИрдВ рднреА, рд▓реЗрдХрд┐рди рд╡рд┐рд╖рдп /mavros/setpoint_raw/global рдиреЗ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИред
рд╣рд╛рдп zxz0622,
рдореИрдВ рд▓рдЧрднрдЧ 4 рджрд┐рдиреЛрдВ рд╕реЗ /mavros/setpoint_raw/global рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЕрдХреНрд╖рд╛рдВрд╢ рджреЗрд╢рд╛рдВрддрд░ рдКрдВрдЪрд╛рдИ рдорд╛рди рджреЗрдХрд░ рдХреНрд╡рд╛рдбрдХреЙрдкреНрдЯрд░ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ред рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВ?
рдХреНрдпрд╛ рдЖрдк /mavros/setpoint_raw/global рдХреЗ рдкреИрд░рд╛рдореАрдЯрд░ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? (рдХреЛрдСрд░реНрдбрд┐рдиреЗрдЯ_рдлреНрд░реЗрдо...)
рдкреБрд░рд╛рдиреЗ рдзрд╛рдЧреЗ рдХреЛ рдЦреЛрджрдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рд╡рд╣реА рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдореИрдВ _mavros/setpoint_position/global_ рдкрд░ рд╕реНрдерд┐рддрд┐ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рднреЗрдЬрдХрд░ рд╡рд╛рд╣рди рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реВрдВред рд╡рд╛рд╣рди рдХреЗ рд╣рдерд┐рдпрд╛рд░, рд░реЛрдЯрд╛рд░ рдШреВрдорддреЗ рд╣реБрдП рдЬрдореАрди рдкрд░ рдмреИрдарддреЗ рд╣реИрдВ рдФрд░ рд╕рдордп рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдирд┐рд░рд╕реНрддреНрд░ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ rostopic echo /mavros/setpoint_position/global
рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдХреЛрдб рд╕реЗ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рдореИрдВ рдпрд╣ рднреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ _mavros/setpoint_position/global_ рдкрд░ рд╕реНрдерд╛рдиреАрдп рд╕рдордиреНрд╡рдп рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рднреЗрдЬрдирд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдХреНрдпрд╛ рдореБрдЭреЗ lat, lon рдФрд░ lat рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛрдИ рдЕрдиреНрдп рдлрд╝реАрд▓реНрдб рд╕реЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?
MAVROS рд╕рдВрд╕реНрдХрд░рдг рдФрд░ рдордВрдЪ
рдорд╛рд╡рд░реЛрд╕: рдорд╛рд╕реНрдЯрд░
рдЖрд░рдУрдПрд╕: рдореЗрд▓реЛрдбрд┐рдХ
рдЙрдмрдВрдЯреВ: 18.04
рдСрдЯреЛрдкрд╛рдпрд▓рдЯ рдкреНрд░рдХрд╛рд░ рдФрд░ рд╕рдВрд╕реНрдХрд░рдг
[ ] рдЕрд░реНрджреБрдкрд╛рдпрд▓рдЯ
[рдПрдХреНрд╕] рдкреАрдПрдХреНрд╕рек
рд╕рдВрд╕реНрдХрд░рдг: рдорд╛рд╕реНрдЯрд░
рдирд┐рджрд╛рди
рд░реЛрд╕реНрдЯреЛрдкрд┐рдХ рдЗрдХреЛ рдХрд╛ рдПрдХ рдирдореВрдирд╛:
header:
seq: 10
stamp:
secs: 1861
nsecs: 652000000
frame_id: "base_footprint"
pose:
position:
latitude: 19.1345485
longitude: 72.9122298
altitude: -48.3160189477
orientation:
x: 0.0
y: 0.0
z: 0.0
w: 0.0
рдмрд╕ рдЬрд┐рдЬреНрдЮрд╛рд╕реБ, рдХреНрдпрд╛ рдлреНрд░реЗрдо_рдЖрдИрдбреА рдлрд╝реАрд▓реНрдб рдХреЛрдИ рднреВрдорд┐рдХрд╛ рдирд┐рднрд╛рддреА рд╣реИ? рдореИрдВрдиреЗ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдкреНрд░рднрд╛рд╡ рдХреЗ _local_origin_ рдХреЗ рд╕рд╛рде рднреА рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред
рдзрдиреНрдпрд╡рд╛рджред
рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдк рдПрдХ рдмрд┐рдВрджреБ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдбреНрд░реЛрди рдХреА рдКрдВрдЪрд╛рдИ рд╕реЗ рдКрдкрд░ рд╣реИред рдпрд╣ рдПрдХ рдореВрд░реНрдЦрддрд╛рдкреВрд░реНрдг рд╕реБрдЭрд╛рд╡ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдЬреАрдкреАрдПрд╕ рдХреА рдКрдВрдЪрд╛рдИ рд╕реНрдерд╛рдиреАрдп рдКрдВрдЪрд╛рдИ рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рд╣реЛ рд╕рдХрддреА рд╣реИред
@swaroophangal рдореИрдВ рдЙрдкрд░реЛрдХреНрдд рдореЗрдВ @tropappar рджреНрд╡рд╛рд░рд╛ рджрд┐рдП рдЧрдП рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдкрдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рд╕рдВрдШрд░реНрд╖ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред
рдпрд╣реА рд╣реИ, "рдорд╛рд╡рд░реЛрд╕/рд╕реЗрдЯрдкреЙрдЗрдВрдЯ_рдкреЛрдЬрд┐рд╢рди/рдЧреНрд▓реЛрдмрд▓" рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд┐рддрд┐ рдХреЛ рдПрдХ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рднреЗрдЬрдХрд░, рд╡рд╛рд╣рди рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдСрдлрдмреЛрд░реНрдб рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рд╣рдерд┐рдпрд╛рд░реЛрдВ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЬрдореАрди рдкрд░ рдмреИрдарддрд╛ рд╣реИред
рдореИрдВрдиреЗ рдПрдХ рд╕реНрдерд┐рддрд┐ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ "mavros/setpoint_raw/global" рднреА рднреЗрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рдПрдХ рд╣реА рдШрдЯрдирд╛ рдХреЗ рд╕рд╛рде рднреА рдЕрд╕рдлрд▓ рд░рд╣рд╛ (рдпрд╛рдиреА, рд╡рд╛рд╣рди рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдСрдлрдмреЛрд░реНрдб рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рд╣рдерд┐рдпрд╛рд░реЛрдВ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЬрдореАрди рдкрд░ рдмреИрдарддрд╛ рд╣реИред)
@ burak-yildizoz рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВрдиреЗ рдлрд┐рд░ рд╕реЗ рдЬрд╛рдВрдЪрд╛ рдХрд┐ рдкреНрд░рдХрд╛рд╢рд┐рдд рдмрд┐рдВрджреБ рдбреНрд░реЛрди рдХреА рдЬреАрдкреАрдПрд╕ рдКрдВрдЪрд╛рдИ рд╕реЗ рдКрдкрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдЙрдкрд░реЛрдХреНрдд рдореЗрдВ @tropappar рджреНрд╡рд╛рд░рд╛ рджрд┐рдП рдЧрдП рдХреЛрдб рдиреЗ рдЗрд╕реЗ "goal_position.altitude = target_position.altitude + 5.0;" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рд▓ рдХрд┐рдпрд╛)ред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдореИрдВрдиреЗ рдЕрдиреНрдп рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде "+5" рдХреЗ рд╕рд╛рде рдЦреЗрд▓рд╛ рд▓реЗрдХрд┐рди рдХреЛрдИ рд╕рдлрд▓рддрд╛ рдирд╣реАрдВ рдорд┐рд▓реАред
рдХреНрдпрд╛ рдХреЛрдИ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ?
рдзрдиреНрдпрд╡рд╛рдж!
--
MAVROS рд╕рдВрд╕реНрдХрд░рдг рдФрд░ рдордВрдЪ
рдорд╛рд╡рд░реЛрд╕: рдорд╛рд╕реНрдЯрд░
рдЖрд░рдУрдПрд╕: рдХрд╛рдЗрдиреЗрдЯрд┐рдХ
рдЙрдмрдВрдЯреВ: 16.04
рдСрдЯреЛрдкрд╛рдпрд▓рдЯ рдкреНрд░рдХрд╛рд░ рдФрд░ рд╕рдВрд╕реНрдХрд░рдг
[ ] рдЕрд░реНрджреБрдкрд╛рдпрд▓рдЯ
[рдПрдХреНрд╕] рдкреАрдПрдХреНрд╕рек
рд╕рдВрд╕реНрдХрд░рдг: рдорд╛рд╕реНрдЯрд░
рдирд┐рджрд╛рди
рд░реЛрд╕реНрдЯреЛрдкрд┐рдХ рдЗрдХреЛ / рдорд╛рд╡рд░реЛрд╕ / рдЧреНрд▓реЛрдмрд▓_рдкреЛрдЬрд┐рд╢рди / рдЧреНрд▓реЛрдмрд▓ рдХрд╛ рдПрдХ рдирдореВрдирд╛:
рд╢реАрд░реНрд╖ рд▓реЗрдЦ:
рд╕реЗрдХ: 206
рдЯрд┐рдХрдЯ:
рд╕реЗрдХрдВрдб: 1286
рдПрдирдПрд╕рдИрд╕реА: 28000000
рдлреНрд░реЗрдо_рдЖрдИрдбреА: "рдмреЗрд╕_рд▓рд┐рдВрдХ"
рд╕реНрдерд┐рддрд┐:
рд╕реНрдерд┐рддрд┐: 0
рд╕реЗрд╡рд╛: рез
рдЕрдХреНрд╖рд╛рдВрд╢: 47.3977421
рджреЗрд╢рд╛рдВрддрд░: 8.5455932
рдКрдВрдЪрд╛рдИ: 535.327916774
рд╕реНрдерд┐рддрд┐_рд╕рд╣рдкреНрд░рд╕рд░рдг: [рез.реж, реж.реж, реж.реж, реж.реж, рез.реж, реж.реж, реж.реж, реж.реж, рез.реж]
рд╕реНрдерд┐рддрд┐_рд╕рд╣рдкреНрд░рд╕рд░рдг_рдкреНрд░рдХрд╛рд░: 2
рдЖрд░рдХреНрдпреВрдЯреА_рдЧреНрд░рд╛рдл
@ jungx148 рдЖрдкрдХреЛ рдпрд╣ рдЬрд╛рдВрдЪрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдПрдлрдПрдордпреВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬреЗ рдЬрд╛ рд░рд╣реЗ рдорд╛рд╡рд▓рд┐рдВрдХ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рд╣реИред
@ рдЬреЗрдпреЙрдиреНрдЧ-рд▓рд┐рдо рд╣реИрд▓реЛ, рдкрд┐рдХреНрд╕рд╣реЙрдХ рд╕рдореБрджрд╛рдп рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рд╕рднреА рдкреНрд░рдпрд╛рд╕реЛрдВ рдФрд░ рддреНрд╡рд░рд┐рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд-рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред
рдЬрдм рдореИрдВ рдЖрдкрдХреЗ рдкрд╣рд▓реЗ рдкреНрд░рдХрд╛рд╢рд┐рдд "modudculab_ros" рдкреНрд░реЛрдЬреЗрдХреНрдЯ ( рд▓рд┐рдВрдХ ) рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛, рддрдм рдореБрдЭреЗ рдкрд╣рд▓реЗ рдмрддрд╛рдИ рдЧрдИ рд╕рдорд╕реНрдпрд╛рдПрдВ рдЖ рд░рд╣реА рдереАрдВ, рдЬреЛ рдХрд┐ рд╕реНрдерд╛рдиреАрдп рдСрдлрдмреЛрд░реНрдб рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд▓рд┐рдП рд╡реИрд╢реНрд╡рд┐рдХ рдСрдлрдмреЛрд░реНрдб рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЖрдкрдХреА рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, "рдЖрдкрдХреЛ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдПрдлрдПрдордпреВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬреЗ рдЬрд╛ рд░рд╣реЗ рдорд╛рд╡рд▓рд┐рдВрдХ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рд╣реИ," рдореИрдВрдиреЗ рдХреНрдпреВрдЬреАрд╕реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ "POSITION_TARGET_GLOBAL_INT (рд▓рд┐рдВрдХ) " рдкреИрд░рд╛рдореАрдЯрд░ рдХреА рдЬрд╛рдВрдЪ рдХреА рдФрд░ рджреЗрдЦрд╛ рдХрд┐ рдХреЛрдИ рднреА рдорд╛рд╡рд▓рд┐рдВрдХ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдлрдПрдордпреВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬреИрд╕рд╛ рдЖрдкрдиреЗ рдХрд╣рд╛ рдерд╛ рдЬреИрд╕рд╛ рдХрд┐ QGC рд╕реНрдХреНрд░реАрди рд╕реЗ рдХреИрдкреНрдЪрд░ рдХреА рдЧрдИ рдиреАрдЪреЗ рджреА рдЧрдИ рддрд╕реНрд╡реАрд░ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВрдиреЗ рдиреАрдЪреЗ рдореЗрдВ roslaunch modudculab_ros ctrl_pos_gazebo_offb.launch
рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рд╕рдВрд▓рдЧреНрди рдХрд┐рдпрд╛ рд╣реИред
` sunghunjung2@gcs :~$ roslaunch modudculab_ros ctrl_pos_gazebo_offb.launch
... /home/sunghunjung2/.ros/log/c7421548-ea08-11ea-8a18-b052161d0343/roslaunch-gcs-16794.log рдкрд░ рд▓реЙрдЧ рдЗрди рдХрд░рдирд╛
рдбрд┐рд╕реНрдХ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд▓реЙрдЧ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛ред рдЗрд╕рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд╛ рд╕рдордп рд▓рдЧ рд╕рдХрддрд╛ рд╣реИред
рдмрд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Ctrl-C рджрдмрд╛рдПрдВ
рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдбрд┐рд╕реНрдХ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдБрдЪ рд╣реЛ рдЧрдИред рдЙрдкрдпреЛрдЧ <1GB рд╣реИред
roslaunch рд╕рд░реНрд╡рд░ рд╢реБрд░реВ рдХрд┐рдпрд╛ http://gcs :35869/
рдкреИрд░рд╛рдореАрдЯрд░
рдиреЛрдбреНрд╕
/
рдорд╛рд╡рд░реЛрд╕ (рдорд╛рд╡рд░реЛрд╕/рдорд╛рд╡рд░реЛрд╕_рдиреЛрдб)
offb_node (modudculab_ros/pub_setpoints_traj)
ROS_MASTER_URI= http://localhost :11311
рдкреНрд░рдХреНрд░рд┐рдпрд╛ [рдорд╛рд╡рд░реЛрд╕ -1]: рдкреАрдЖрдИрдбреА тАЛтАЛтАЛтАЛрдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реБрдЖ [резремреорезрез]
рдкреНрд░рдХреНрд░рд┐рдпрд╛ [рдСрдлрд╝рдм_рдиреЛрдб -2]: рдкреАрдЖрдИрдбреА тАЛтАЛтАЛтАЛрдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реБрдЖ [резремреорезреи]
`
--
рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ, рдореБрдЭреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЛ рднрд╛рдЧреЛрдВ рдкрд░ рд╕рдВрджреЗрд╣ рд╣реИред
рд╕рдВрджреЗрд╣ рез :
рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдореЗрд░реЗ рдбреЗрд╕реНрдХрдЯреЙрдк рдкрд░ рд╕реНрдерд╛рдкрд┐рдд MAVROS рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред
рдореИрдВрдиреЗ apt рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ ros-kinetic-mavros* рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдФрд░ catkin_ws/src рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдирд╡реАрдирддрдо рдорд╛рд╡рд░реЛрд╕ рдЧрд┐рдЯ рдкреИрдХреЗрдЬ рднреА рд╕рд╣реЗрдЬрд╛ред
рд╕рдВрджреЗрд╣ реи :
рдЬрдм рдореИрдВрдиреЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛
ros::Publisher goal_pos_pub = nh.advertise < mavros_msgs::GlobalPositionTarget > ("mavros/setpoint_position/global", 10);
,
рдореБрдЭреЗ рдирд┐рдореНрди рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рд╣реБрдЖ:
[ERROR] [1598713832.833795288, 426.168000000]: Client [/mavros] wants topic /mavros/setpoint_position/global to have datatype/md5sum [geographic_msgs/GeoPoseStamped/cc409c8ed6064d8a846fa207bf3fba6b], but our version has [mavros_msgs/GlobalPositionTarget/076ded0190b9e045f9c55264659ef102]. Dropping connection.
рдФрд░ рдлрд┐рд░, рдореИрдВрдиреЗ рдЗрд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛
ros::Publisher goal_pos_pub = nh.advertise < mavros_msgs::GlobalPositionTarget > ("geographic_msgs/GeoPoseStamped", 10);
рдФрд░ рдЗрд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдирд╣реАрдВ рдЖрдпрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ, рдкреИрд░рд╛рдореАрдЯрд░, "POSITION_TARGET_GLOBAL_INT" QGC рдорд╛рд╡рд▓рд┐рдВрдХ рдЗрдВрд╕реНрдкреЗрдХреНрдЯрд░ рдореЗрдВ рдкреНрд░рдХрдЯ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред
рдлрд┐рд░ рд╕реЗ, рдЗрд╕ рдореБрджреНрджреЗ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдЕрдореВрд▓реНрдп рд╕рдордп рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд-рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред
рдореИрдВ рдЙрдкрд░реЛрдХреНрдд рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛, рдФрд░ рдЗрд╕рд▓рд┐рдП рдореИрдВ рдХреНрдпреВрдЬреАрд╕реА рд╕реЗ рд╡реЗрдкреЙрдЗрдВрдЯ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рд╡рд░реЛрд╕_рдПрдордПрд╕рдЬреАрдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓рддрд╛ рд╣реВрдВ, рдмрд╛рд╣рд░реА рд░реВрдк рд╕реЗ рдЧрдгрдирд╛ рдХрд┐рдП рдЧрдП рдпреЙ рдХреЛрдг рдХреЛ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ, рдФрд░ рд╕рдВрдпреБрдХреНрдд рдорд╛рд░реНрдЧ рдмрд┐рдВрджреБрдУрдВ рдХреЛ рдзрдХреНрдХрд╛ рджреЗрддрд╛ рд╣реВрдВ (рдмрд╛рд╣рд░реА рд░реВрдк рд╕реЗ рдЧрдгрдирд╛ рдХрд┐рдП рдЧрдП рдпреЙ рдХреЛрдг рдХреЗ рд╕рд╛рде рдХреНрдпреВрдЬреАрд╕реА рд╕реЗ рдЦреАрдВрдЪрд╛ рдЧрдпрд╛ рдорд╛рд░реНрдЧ)ред
рдЗрд╕ рддрд░рд╣, рдореИрдВ рдПрдордПрд╡реА рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рдерд╛ рдЬреИрд╕рд╛ рдореИрдВ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдЖрдкрдХрд╛ рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред
@jungx148 рдпрд╣ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ рдФрд░ рд╕рд┐рд░реНрдл рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИред
рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЬрд╛рдВрдЪ рдХреА рд╣реИ рдХрд┐ рдЖрдк рдЬреЛ рд╕реЗрдЯрдкреНрд╡рд╛рдЗрдВрдЯ рднреЗрдЬ рд░рд╣реЗ рд╣реИрдВ рд╡рд╣ рдПрдлрдПрдордпреВ рддрдХ рдкрд╣реБрдВрдЪ рд░рд╣рд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ?
@jungx148 рдХреНрдпрд╛ рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ #1414 рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛ?
рдХреНрдпрд╛ рдЕрднреА рддрдХ рдХреЛрдИ рдХрд┐рд╕реА рдирддреАрдЬреЗ рдкрд░ рдкрд╣реБрдВрдЪрд╛ рд╣реИ??
рдореИрдВрдиреЗ рдЗрди 3 рд╡рд┐рд╖рдпреЛрдВ рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд▓реЗрдХрд┐рди рдмрд┐рдирд╛ рдХрд┐рд╕реА рдХрд┐рд╕реНрдордд рдХреЗ!
"/ рдорд╛рд╡рд░реЛрд╕/рд╕реЗрдЯрдкреЙрдЗрдВрдЯ_рд░реЙ/рдЧреНрд▓реЛрдмрд▓"
"/ рдорд╛рд╡рд░реЛрд╕/рд╕реЗрдЯрдкреЙрдЗрдВрдЯ_рд░реЙ/рдЯрд╛рд░рдЧреЗрдЯ_рдЧреНрд▓реЛрдмрд▓"
"/ рдорд╛рд╡рд░реЛрд╕/рд╕реЗрдЯрдкреЙрдЗрдВрдЯ_рдкреЛрдЬрд┐рд╢рди/рд╡реИрд╢реНрд╡рд┐рдХ"
рдПрдирдмреА: рдореИрдВ рдХреЗрд╡рд▓ рдЧрдЬрд╝реЗрдмреЛ рд╕рд┐рдореБрд▓реЗрд╢рди рдХрд░ рд░рд╣рд╛ рд╣реВрдВ
рд╡реИрд╕реЗ рдореБрдЭреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдпрд╣ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА рд╣реИ:
рдЦреИрд░ рд╡рд┐рд╖рдп /mavros/setpoint_position/global рдиреЗ рдЖрдЦрд┐рд░рдХрд╛рд░ рдХрд╛рдо рдХрд┐рдпрд╛ (рд▓реЗрдХрд┐рди рдКрдВрдЪрд╛рдИ рдСрдлрд╕реЗрдЯ рдХреЗ рд╕рд╛рде?) rostopic info /mavros/setpoint_position/global
рдореБрдЭреЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдЬрд┐рд╕ рд╕рдВрджреЗрд╢ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рд╛рде рдореБрдЭреЗ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рд╡рд╣ рд╣реИ рднреМрдЧреЛрд▓рд┐рдХ_msgs/GeoPoseStamped not mavros_msgs/GlobalPositionTarget рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреНрдпреЛрдВ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдореИрдВ рднреА рд╡рд╣реА рдкреИрдВрддрд░реЗрдмрд╛рдЬрд╝реА рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ рдпрд╛рдиреА рдорд╛рд╡рд░реЛрд╕/рд╕реЗрдЯрдкреЙрдЗрдВрдЯ_рд░реЙ/рд╡реИрд╢реНрд╡рд┐рдХ рд╡рд┐рд╖рдп рдкрд░ mavros_msgs::GlobalPositionTarget рд╕рдВрджреЗрд╢ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВ рдФрд░ рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдбреНрд░реЛрди рдЙрдбрд╝рд╛рди рднрд░рддрд╛ рд╣реИ рдФрд░ рд╡рд╛рдВрдЫрд┐рдд рд░рд╛рд╕реНрддреЗ рдкрд░ рдЬрд╛рддрд╛ рд╣реИред рдореИрдВ рдкреВрдЫрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдХреНрдпрд╛ рдХрд┐рд╕реА рдиреЗ рдбреНрд░реЛрди рдХреЛ рдХрдИ рддрд░рд╣ рдХреЗ рдмрд┐рдВрджреБрдУрдВ рдкрд░ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдХреНрдпрд╛ рд╣рдореЗрдВ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рддрд░реНрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╡реЗ рдмрд┐рдВрджреБ рддрдХ рдкрд╣реБрдВрдЪ рдЧрдпрд╛ рд╣реИ?
рдореИрдВ рдпрд╣ рдкреВрдЫрдиреЗ рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЧрдЬрд╝реЗрдмреЛ рдЕрдкрдиреА рдШрд░реЗрд▓реВ рд╕реНрдерд┐рддрд┐ рдХреИрд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЬрдм рдбреНрд░реЛрди рдХрд┐рд╕реА рднреА рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдЕрдХреНрд╖рд╛рдВрд╢ рдкрд░ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рдЕрдирд┐рд╢реНрдЪрд┐рдд рдХрд╛рд▓ рддрдХ рдЙрд╕ рд░рд╛рд╕реНрддреЗ рдкрд░ рдЬрд╛рддрд╛ рд╣реИред рдХреНрдпрд╛ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЙрд╕ рд░рд╛рд╕реНрддреЗ рддрдХ рдкрд╣реБрдВрдЪ рдЧрдпрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рджреВрд╕рд░рд╛ рд░рд╛рд╕реНрддрд╛ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ?
рдХрд┐рд╕реА рднреА рд╕реБрдЭрд╛рд╡ рдХреА рдЕрддреНрдпрдзрд┐рдХ рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рдПрдЧреАред
рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдзрдиреНрдпрд╡рд╛рджред
рдореИрдВ рднреА рд╡рд╣реА рдкреИрдВрддрд░реЗрдмрд╛рдЬрд╝реА рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ рдпрд╛рдиреА рдорд╛рд╡рд░реЛрд╕/рд╕реЗрдЯрдкреЙрдЗрдВрдЯ_рд░реЙ/рд╡реИрд╢реНрд╡рд┐рдХ рд╡рд┐рд╖рдп рдкрд░ mavros_msgs::GlobalPositionTarget рд╕рдВрджреЗрд╢ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВ рдФрд░ рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдбреНрд░реЛрди рдЙрдбрд╝рд╛рди рднрд░рддрд╛ рд╣реИ рдФрд░ рд╡рд╛рдВрдЫрд┐рдд рд░рд╛рд╕реНрддреЗ рдкрд░ рдЬрд╛рддрд╛ рд╣реИред рдореИрдВ рдкреВрдЫрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдХреНрдпрд╛ рдХрд┐рд╕реА рдиреЗ рдбреНрд░реЛрди рдХреЛ рдХрдИ рддрд░рд╣ рдХреЗ рдмрд┐рдВрджреБрдУрдВ рдкрд░ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдХреНрдпрд╛ рд╣рдореЗрдВ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рддрд░реНрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╡реЗ рдмрд┐рдВрджреБ рддрдХ рдкрд╣реБрдВрдЪ рдЧрдпрд╛ рд╣реИ?
рдореИрдВ рдпрд╣ рдкреВрдЫрдиреЗ рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЧрдЬрд╝реЗрдмреЛ рдЕрдкрдиреА рдШрд░реЗрд▓реВ рд╕реНрдерд┐рддрд┐ рдХреИрд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЬрдм рдбреНрд░реЛрди рдХрд┐рд╕реА рднреА рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдЕрдХреНрд╖рд╛рдВрд╢ рдкрд░ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рдЕрдирд┐рд╢реНрдЪрд┐рдд рдХрд╛рд▓ рддрдХ рдЙрд╕ рд░рд╛рд╕реНрддреЗ рдкрд░ рдЬрд╛рддрд╛ рд╣реИред рдХреНрдпрд╛ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЙрд╕ рд░рд╛рд╕реНрддреЗ рддрдХ рдкрд╣реБрдВрдЪ рдЧрдпрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рджреВрд╕рд░рд╛ рд░рд╛рд╕реНрддрд╛ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ?
рдХрд┐рд╕реА рднреА рд╕реБрдЭрд╛рд╡ рдХреА рдЕрддреНрдпрдзрд┐рдХ рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рдПрдЧреАред
рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдзрдиреНрдпрд╡рд╛рджред
рдЬрдм рддрдХ рдбреНрд░реЛрди рдПрдХ рд╕реНрд╡реАрдХрд╛рд░реНрдп рдХреНрд╖реЗрддреНрд░ рдХреЗ рдЕрдВрджрд░ рди рд╣реЛ, рддрдм рддрдХ рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрдерд┐рддрд┐ рд╕реЗрдЯрдкреЙрдЗрдВрдЯ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддреЗ рд░рд╣реЗрдВ, рдЬреИрд╕реЗ xy-рдкреНрд▓реЗрди рдореЗрдВ ~ 50 рд╕реЗрдореА рдФрд░ z рдЕрдХреНрд╖ рдореЗрдВ 10 рд╕реЗрдореАред рдлрд┐рд░, рдПрдХ рдФрд░ рдмрд┐рдВрджреБ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВред
рдХрд╛рдлреА рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдирдореВрдирд╛ рдХреЛрдб рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдореБрдЭреЗ рдПрдХ рд╡рд┐рдЪрд╛рд░ рдорд┐рд▓ рд╕рдХреЗ? рдореИрдВрдиреЗ рдХреБрдЫ рдЪреАрдЬреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд▓реЗрдХрд┐рди рд╡рд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред Z-рдЕрдХреНрд╖ 10cm рдпрд╛ m?
рдзрдиреНрдпрд╡рд╛рджред
рдХрд╛рдлреА рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдирдореВрдирд╛ рдХреЛрдб рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдореБрдЭреЗ рдПрдХ рд╡рд┐рдЪрд╛рд░ рдорд┐рд▓ рд╕рдХреЗ? рдореИрдВрдиреЗ рдХреБрдЫ рдЪреАрдЬреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд▓реЗрдХрд┐рди рд╡рд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред Z-рдЕрдХреНрд╖ 10cm рдпрд╛ m?
рдзрдиреНрдпрд╡рд╛рджред
рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕рд┐рд░реНрдл рдЖрдкрдХреЛ рд╡рд┐рдЪрд╛рд░ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдерд╛ред рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрдерд┐рддрд┐ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдВ, рдпрд╛ рддреЛ рдХрд╛рд░реНрдЯреЗрд╢рд┐рдпрди рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд░реЗрдВ рдпрд╛ рдмрд╕ 1e-6 рдХреЗ рдЖрд╕рдкрд╛рд╕ рд▓реЗрдЯ/рд▓реЛрди рдбрд┐рдЧреНрд░реА рдореЗрдВ рдереНрд░реЗрд╕рд╣реЛрд▓реНрдб рд░рдЦреЗрдВ рдЬреИрд╕реЗ рдХрд┐ рдбреНрд░реЛрди рдФрд░ рд╡рд╛рдВрдЫрд┐рдд рдмрд┐рдВрджреБ рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ рдереНрд░реЗрд╕рд╣реЛрд▓реНрдб рд╕реЗ рдХрдо рд╣реЛред рдЖрдкрдХреЛ рдКрдВрдЪрд╛рдИ рдХреЛ рдЕрд▓рдЧ рддрд░рд╣ рд╕реЗ рдорд╛рдирдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдорд╛рди рдбрд┐рдЧреНрд░реА рдореЗрдВ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдореАрдЯрд░ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред рдпрджрд┐ рдбреНрд░реЛрди рдПрдХ рдмреЙрдХреНрд╕ рдХреЗ рдЕрдВрджрд░ рд╣реИ, рддреЛ рд╡реЗрдкреЙрдЗрдВрдЯ рдкрд╣реБрдВрдЪ рдЧрдпрд╛ рд╣реИред
рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ sensor_msgs::NavSatFix рдбреНрд░реЛрди рдХреА рд╕реНрдерд┐рддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдЬрдм рдЖрдк рдХрд╣рддреЗ рд╣реИрдВ, рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрдерд┐рддрд┐ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдВ, рддреЛ рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдЧреНрд░рд╛рд╣рдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ?
рд╕рд╛рде рд╣реА, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд╣рд╛рдпрдХ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк 0.000001 рдХреЗ рдЖрд╕рдкрд╛рд╕ рд▓реЗрдЯ/рд▓реЛрди рдбрд┐рдЧреНрд░реА рдореЗрдВ рдереНрд░реЗрд╕рд╣реЛрд▓реНрдб рдмрдирд╛рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдкрд░ рдереЛрдбрд╝рд╛ рд╕рд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдХреИрд╕реЗ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдбреНрд░реЛрди рдмреЙрдХреНрд╕ рдХреЗ рдЕрдВрджрд░ рд╣реИ рдпрд╛ рдирд╣реАрдВ?
рдпрджрд┐ рдЖрдкрдиреЗ рдЗрд╕реЗ рдкрд╣рд▓реЗ рд╣реА рд▓рд╛рдЧреВ рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рддреЛ рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдЙрд╕ рддрд░реНрдХ рдХрд╛ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЕрдВрд╢ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рдЖрдк рдЙрд▓реНрд▓реЗрдЦ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдЗрд╕рд╕реЗ рдЪреАрдЬреЗрдВ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рдПрдВрдЧреАред
рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред
рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░,
рдпрджрд┐ рдХрд┐рд╕реА рдиреЗ рд╡реИрд╢реНрд╡рд┐рдХ рдлреНрд░реЗрдо рдореЗрдВ рдХрдИ рддрд░рд╣ рдХреЗ рдмрд┐рдВрджреБрдУрдВ рдХреЗ рд╕рд╛рде рдбреНрд░реЛрди рдХреЗ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ [ https://github.com/mavlink/mavros/issues/1553 } рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдореЗрд░реА рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рдЗрд╕реЗ рдХреБрдЫ рд╣рдлреНрддреЛрдВ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдорд┐рд▓ рдкрд╛ рд░рд╣рд╛ рд╣реИред рдореИрдВ рдмрд╕ рдХрдИ рддрд░рд╣ рдХреЗ рдмрд┐рдВрджреБрдУрдВ рдкрд░ рд▓реЗрдЯ рд▓реЛрди рдСрд▓реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреНрд░реЛрди рдХреЛ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдзрдиреНрдпрд╡рд╛рджред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ,
while(ros::ok() && current_state.connected){
рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПwhile(ros::ok() && !current_state.connected){
редрд╕рд╛рде рд╣реА - https://github.com/mavlink/mavros/blob/master/mavros/src/plugins/setpoint_position.cpp#L69 - рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЛ
global_position/global
рд╡рд┐рд╖рдп рд╕реЗ рдбреЗрдЯрд╛ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИред