FTSensorTrigger.h
Go to the documentation of this file.
1/**
2 * This file is part of ArmarX.
3 *
4 * ArmarX is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 *
8 * ArmarX is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * @author Fabian Reister ( fabian dot reister at kit dot edu )
17 * @date 2022
18 * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
19 * GNU General Public License
20 */
21
22#pragma once
23
24#include <RobotAPI/interface/units/ForceTorqueUnit.h>
26
28{
29
30
32 {
33 float forceThreshold = 20.F;
34
35 int windowSizeMs = 200;
36 int cycleTimeMs = 10;
37
38 Eigen::Vector3f forceDetectionMask = Eigen::Vector3f::Ones();
39 };
40
42 {
43 public:
45
47 const std::string& robotName,
49 const Params& params = Params());
50
52
53 enum class Edge
54 {
57 };
58
59 void waitForForceSpike(Edge edge) const;
60 void waitForForceThreshold(float threshold) const;
61
62 private:
64 const std::string robotName;
65
67 const Params params;
68 };
69
70
71} // namespace armarx::control::common::ft
FTSensorTrigger(armarx::armem::robot_state::RobotReader &robotReader, const std::string &robotName, const armem::robot_state::RobotReader::Hand &hand, const Params &params=Params())
void waitForForceThreshold(float threshold) const
FTSensorTrigger(FTSensorTrigger &)=delete
This file is part of ArmarX.