sas
Modularised monitoring, logging, and control of robots.
Loading...
Searching...
No Matches
SdfSerialManipulatorLoader.h
Go to the documentation of this file.
1#pragma once
25
26#include <string>
27#include <vector>
28
29#include <Eigen/Dense>
30
31#include <gz/math/Pose3.hh>
32#include <sdf/Model.hh>
33#include <sdf/World.hh>
34
35#include <dqrobotics/DQ.h>
36
38
40{
41
50{
53
55 std::vector<std::string> joint_names;
56
58 std::vector<std::string> link_names;
59
61 std::vector<std::string> actuation_type_names;
62
64 std::vector<DQ_robotics::DQ> offsets_before;
65
67 std::vector<DQ_robotics::DQ> offsets_after;
68
70 Eigen::VectorXd lower_limits;
71
73 Eigen::VectorXd upper_limits;
74
76 std::string source_path;
77
86 std::string source_scope;
87};
88
100{
101public:
135 const std::string &path,
136 const std::string &model_scope = std::string()) const;
137
145 SdfManipulatorResult LoadFromSdfFile(const std::string &path) const;
146
153 SdfManipulatorResult LoadFromModel(const sdf::Model *model) const;
154};
155
156} // namespace sas_robot_driver_gazebo
A serial manipulator whose joints carry explicit pre/post offsets.
Definition serial_manipulator_simulator_friendly.hpp:58
Builds a SerialManipulatorSimulatorFriendly from an SDF model.
Definition SdfSerialManipulatorLoader.h:100
SdfManipulatorResult LoadFromFile(const std::string &path, const std::string &model_scope=std::string()) const
Load a serial manipulator from an SDF model or world file.
Definition SdfSerialManipulatorLoader.cc:189
SdfManipulatorResult LoadFromSdfFile(const std::string &path) const
Parse an SDF model file and build the kinematic model.
Definition SdfSerialManipulatorLoader.cc:258
SdfManipulatorResult LoadFromModel(const sdf::Model *model) const
Build the kinematic model from an already-loaded SDF model.
Definition SdfSerialManipulatorLoader.cc:289
Definition SdfSerialManipulatorLoader.h:40
A serial-manipulator kinematics model with configurable per-joint offsets and actuation types.
Result of loading a serial manipulator from SDF.
Definition SdfSerialManipulatorLoader.h:50
std::string source_scope
Name of the kinematic model used to build the result.
Definition SdfSerialManipulatorLoader.h:86
std::vector< DQ_robotics::DQ > offsets_before
Per-joint pre-actuation offset DQs, in chain order.
Definition SdfSerialManipulatorLoader.h:64
std::vector< DQ_robotics::DQ > offsets_after
Per-joint post-actuation offset DQs, in chain order.
Definition SdfSerialManipulatorLoader.h:67
std::string source_path
Path of the SDF file the model was loaded from.
Definition SdfSerialManipulatorLoader.h:76
std::vector< std::string > joint_names
Name of each SDF joint, in chain order (parent -> child).
Definition SdfSerialManipulatorLoader.h:55
Eigen::VectorXd lower_limits
Lower joint limits, in chain order.
Definition SdfSerialManipulatorLoader.h:70
Eigen::VectorXd upper_limits
Upper joint limits, in chain order.
Definition SdfSerialManipulatorLoader.h:73
std::vector< std::string > actuation_type_names
Actuation type string per joint: "RZ" or "TZ".
Definition SdfSerialManipulatorLoader.h:61
marinholab::sas::core::modeling::SerialManipulatorSimulatorFriendly model
The constructed model.
Definition SdfSerialManipulatorLoader.h:52
std::vector< std::string > link_names
Name of each SDF child link, in chain order.
Definition SdfSerialManipulatorLoader.h:58