Main Page
Namespaces
Classes
Files
File List
File Members
include
ur_modern_driver
ros
lowbandwidth_trajectory_follower.h
Go to the documentation of this file.
1
/*
2
* Copyright 2017, 2018 Jarek Potiuk (low bandwidth trajectory follower)
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
#pragma once
18
19
#include <inttypes.h>
20
#include <array>
21
#include <atomic>
22
#include <cstddef>
23
#include <cstring>
24
#include <string>
25
#include <thread>
26
#include <vector>
27
#include "
ur_modern_driver/log.h
"
28
#include "
ur_modern_driver/ros/action_trajectory_follower_interface.h
"
29
#include "
ur_modern_driver/ur/commander.h
"
30
#include "
ur_modern_driver/ur/server.h
"
31
32
class
LowBandwidthTrajectoryFollower
:
public
ActionTrajectoryFollowerInterface
33
{
34
private
:
35
std::atomic<bool>
running_
;
36
std::array<double, 6>
last_positions_
;
37
URCommander
&
commander_
;
38
URServer
server_
;
39
40
double
time_interval_
,
servoj_time_
,
servoj_time_waiting_
,
max_waiting_time_
,
servoj_gain_
,
servoj_lookahead_time_
,
41
max_joint_difference_
;
42
43
std::string
program_
;
44
45
bool
execute
(
const
std::array<double, 6> &positions,
const
std::array<double, 6> &velocities,
double
sample_number,
46
double
time_in_seconds);
47
48
public
:
49
LowBandwidthTrajectoryFollower
(
URCommander
&commander, std::string &reverse_ip,
int
reverse_port,
bool
version_3);
50
51
bool
start
();
52
bool
execute
(std::vector<TrajectoryPoint> &trajectory, std::atomic<bool> &interrupt);
53
void
stop
();
54
55
virtual
~LowBandwidthTrajectoryFollower
(){};
56
};
commander.h
LowBandwidthTrajectoryFollower::start
bool start()
Definition:
lowbandwidth_trajectory_follower.cpp:299
URCommander
Definition:
commander.h:25
URServer
Definition:
server.h:31
LowBandwidthTrajectoryFollower::running_
std::atomic< bool > running_
Definition:
lowbandwidth_trajectory_follower.h:35
LowBandwidthTrajectoryFollower::servoj_time_waiting_
double servoj_time_waiting_
Definition:
lowbandwidth_trajectory_follower.h:40
LowBandwidthTrajectoryFollower::execute
bool execute(const std::array< double, 6 > &positions, const std::array< double, 6 > &velocities, double sample_number, double time_in_seconds)
Definition:
lowbandwidth_trajectory_follower.cpp:326
ActionTrajectoryFollowerInterface
Definition:
action_trajectory_follower_interface.h:45
LowBandwidthTrajectoryFollower::stop
void stop()
Definition:
lowbandwidth_trajectory_follower.cpp:397
LowBandwidthTrajectoryFollower::servoj_time_
double servoj_time_
Definition:
lowbandwidth_trajectory_follower.h:40
LowBandwidthTrajectoryFollower
Definition:
lowbandwidth_trajectory_follower.h:32
LowBandwidthTrajectoryFollower::servoj_gain_
double servoj_gain_
Definition:
lowbandwidth_trajectory_follower.h:40
LowBandwidthTrajectoryFollower::~LowBandwidthTrajectoryFollower
virtual ~LowBandwidthTrajectoryFollower()
Definition:
lowbandwidth_trajectory_follower.h:55
server.h
LowBandwidthTrajectoryFollower::time_interval_
double time_interval_
Definition:
lowbandwidth_trajectory_follower.h:40
LowBandwidthTrajectoryFollower::last_positions_
std::array< double, 6 > last_positions_
Definition:
lowbandwidth_trajectory_follower.h:36
LowBandwidthTrajectoryFollower::program_
std::string program_
Definition:
lowbandwidth_trajectory_follower.h:43
LowBandwidthTrajectoryFollower::max_waiting_time_
double max_waiting_time_
Definition:
lowbandwidth_trajectory_follower.h:40
LowBandwidthTrajectoryFollower::server_
URServer server_
Definition:
lowbandwidth_trajectory_follower.h:38
LowBandwidthTrajectoryFollower::commander_
URCommander & commander_
Definition:
lowbandwidth_trajectory_follower.h:37
LowBandwidthTrajectoryFollower::LowBandwidthTrajectoryFollower
LowBandwidthTrajectoryFollower(URCommander &commander, std::string &reverse_ip, int reverse_port, bool version_3)
Definition:
lowbandwidth_trajectory_follower.cpp:252
LowBandwidthTrajectoryFollower::max_joint_difference_
double max_joint_difference_
Definition:
lowbandwidth_trajectory_follower.h:40
LowBandwidthTrajectoryFollower::servoj_lookahead_time_
double servoj_lookahead_time_
Definition:
lowbandwidth_trajectory_follower.h:40
log.h
action_trajectory_follower_interface.h
ur_modern_driver
Author(s): Thomas Timm Andersen, Simon Rasmussen
autogenerated on Fri Jun 26 2020 03:37:00