Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
include
control_toolbox
pid_gains_setter.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2009, Willow Garage, Inc.
3
* All rights reserved.
4
*
5
* Redistribution and use in source and binary forms, with or without
6
* modification, are permitted provided that the following conditions are met:
7
*
8
* * Redistributions of source code must retain the above copyright
9
* notice, this list of conditions and the following disclaimer.
10
* * Redistributions in binary form must reproduce the above copyright
11
* notice, this list of conditions and the following disclaimer in the
12
* documentation and/or other materials provided with the distribution.
13
* * Neither the name of the Willow Garage, Inc. nor the names of its
14
* contributors may be used to endorse or promote products derived from
15
* this software without specific prior written permission.
16
*
17
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
21
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27
* POSSIBILITY OF SUCH DAMAGE.
28
*/
29
30
// Exposes a ROS interface for tuning a set of pid controllers.
31
//
32
// Author: Stuart Glaser
33
34
#ifndef CONTROL_TOOLBOX__PID_GAINS_SETTER_H
35
#define CONTROL_TOOLBOX__PID_GAINS_SETTER_H
36
37
#include <vector>
38
#include <string>
39
#include "
ros/node_handle.h
"
40
#include "
control_toolbox/pid.h
"
41
#include "control_toolbox/SetPidGains.h"
42
43
namespace
control_toolbox
{
44
74
class
PidGainsSetter
75
{
76
public
:
77
PidGainsSetter
() {}
78
~PidGainsSetter
();
79
85
PidGainsSetter
&
add
(
Pid
*pid);
86
90
void
advertise
(
const
ros::NodeHandle
&n);
91
95
void
advertise
(
const
std::string &ns) {
advertise
(
ros::NodeHandle
(ns)); }
96
97
bool
setGains
(control_toolbox::SetPidGains::Request &req,
98
control_toolbox::SetPidGains::Response &resp);
99
100
private
:
101
ros::NodeHandle
node_
;
102
ros::ServiceServer
serve_set_gains_
;
103
std::vector<Pid*>
pids_
;
104
};
105
106
}
107
108
#endif
control_toolbox::PidGainsSetter::serve_set_gains_
ros::ServiceServer serve_set_gains_
Definition:
pid_gains_setter.h:102
ros::NodeHandle
control_toolbox::PidGainsSetter::PidGainsSetter
PidGainsSetter()
Definition:
pid_gains_setter.h:77
control_toolbox::PidGainsSetter::add
PidGainsSetter & add(Pid *pid)
Adds a Pid object.
Definition:
pid_gains_setter.cpp:39
control_toolbox::PidGainsSetter::advertise
void advertise(const ros::NodeHandle &n)
Advertises the "set_gains" service, initializing the PidGainsSetter.
Definition:
pid_gains_setter.cpp:46
control_toolbox
Definition:
dither.h:45
ros::ServiceServer
node_handle.h
control_toolbox::PidGainsSetter::node_
ros::NodeHandle node_
Definition:
pid_gains_setter.h:101
control_toolbox::Pid
A basic pid class.
Definition:
pid.h:117
control_toolbox::PidGainsSetter::advertise
void advertise(const std::string &ns)
Advertises the "set_gains" service, initializing the PidGainsSetter.
Definition:
pid_gains_setter.h:95
control_toolbox::PidGainsSetter::pids_
std::vector< Pid * > pids_
Definition:
pid_gains_setter.h:103
control_toolbox::PidGainsSetter::setGains
bool setGains(control_toolbox::SetPidGains::Request &req, control_toolbox::SetPidGains::Response &resp)
Definition:
pid_gains_setter.cpp:52
control_toolbox::PidGainsSetter::~PidGainsSetter
~PidGainsSetter()
Definition:
pid_gains_setter.cpp:34
pid.h
control_toolbox::PidGainsSetter
Sets up services for quickly changing the gains for a control_toolbox::Pid Pid object.
Definition:
pid_gains_setter.h:74
control_toolbox
Author(s): Melonee Wise, Sachin Chitta, John Hsu
autogenerated on Fri Feb 1 2019 03:25:58