Gazebo Sim
API Reference
7.9.0
insert_drive_file
Tutorials
library_books
Classes
toc
Namespaces
insert_drive_file
Files
launch
Gazebo Website
Index
List
Hierarchy
Members: All
Members: Functions
Members: Variables
Members: Typedefs
Members: Enumerations
Members: Enumerator
List
Members
Functions
Typedefs
Variables
Enumerations
Enumerator
src
gz-sim
src
systems
multicopter_control
Parameters.hh
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2019 Open Source Robotics Foundation
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*
16
*/
17
18
#ifndef GZ_SIM_SYSTEMS_MULTICOPTERVELOCITYCONTROL_PARAMETERS_HH_
19
#define GZ_SIM_SYSTEMS_MULTICOPTERVELOCITYCONTROL_PARAMETERS_HH_
20
21
#include <Eigen/Geometry>
22
#include <vector>
23
24
#include "gz/sim/config.hh"
25
26
namespace
gz
27
{
28
namespace
sim
29
{
30
// Inline bracket to help doxygen filtering.
31
inline
namespace
GZ_SIM_VERSION_NAMESPACE {
32
namespace
systems
33
{
34
namespace
multicopter_control
35
{
37
struct
Rotor
38
{
42
// cppcheck-suppress unusedStructMember
43
double
angle
;
46
// cppcheck-suppress unusedStructMember
47
double
armLength
;
50
// cppcheck-suppress unusedStructMember
51
double
forceConstant
;
54
// cppcheck-suppress unusedStructMember
55
double
momentConstant
;
58
// cppcheck-suppress unusedStructMember
59
int
direction
;
60
};
61
63
using
RotorConfiguration
=
std::vector<Rotor>
;
64
68
struct
VehicleParameters
69
{
71
// cppcheck-suppress unusedStructMember
72
double
mass
;
74
Eigen::Matrix3d
inertia
;
76
Eigen::Vector3d
gravity
;
79
RotorConfiguration
rotorConfiguration
;
80
};
81
84
struct
NoiseParameters
85
{
86
Eigen::Vector3d
linearVelocityMean
;
87
Eigen::Vector3d
linearVelocityStdDev
;
88
Eigen::Vector3d
angularVelocityMean
;
89
Eigen::Vector3d
angularVelocityStdDev
;
90
};
91
92
}
// namespace multicopter_control
93
}
// namespace systems
94
}
// namespace GZ_SIM_VERSION_NAMESPACE
95
}
// namespace sim
96
}
// namespace gz
97
98
#endif