src
setpoint_node.cpp
Go to the documentation of this file.
1
/***************************************************************************/
36
#include "
ros/ros.h
"
37
#include "std_msgs/Float64.h"
38
39
int
main
(
int
argc,
char
** argv)
40
{
41
ros::init
(argc, argv,
"setpoint_node"
);
42
ROS_INFO
(
"Starting setpoint publisher"
);
43
ros::NodeHandle
setpoint_node;
44
45
while
(
ros::ok
() &&
ros::Time
(0) ==
ros::Time::now
())
46
{
47
ROS_INFO
(
"Setpoint_node spinning, waiting for time to become non-zero"
);
48
sleep(1);
49
}
50
51
std_msgs::Float64
setpoint
;
52
setpoint
.data = 1.0;
53
ros::Publisher
setpoint_pub = setpoint_node.
advertise
<std_msgs::Float64>(
"setpoint"
, 1);
54
55
ros::Rate
loop_rate(0.2);
// change setpoint every 5 seconds
56
57
while
(
ros::ok
())
58
{
59
ros::spinOnce
();
60
61
setpoint_pub.
publish
(
setpoint
);
// publish twice so graph gets it as a step
62
setpoint
.data = 0 -
setpoint
.data;
63
setpoint_pub.
publish
(
setpoint
);
64
65
loop_rate.sleep();
66
}
67
}
ros::Publisher
ros::init
ROSCPP_DECL void init(const M_string &remappings, const std::string &name, uint32_t options=0)
ros.h
ros::spinOnce
ROSCPP_DECL void spinOnce()
ros::Publisher::publish
void publish(const boost::shared_ptr< M > &message) const
ros::NodeHandle::advertise
Publisher advertise(AdvertiseOptions &ops)
ros::ok
ROSCPP_DECL bool ok()
main
int main(int argc, char **argv)
Definition:
setpoint_node.cpp:39
ros::Time
ros::Rate
ROS_INFO
#define ROS_INFO(...)
ros::NodeHandle
autotune::setpoint
double setpoint
Definition:
autotune.cpp:64
ros::Time::now
static Time now()
pid
Author(s): Andy Zelenak
, Paul Bouchier
autogenerated on Wed Mar 2 2022 00:41:32