Fang-Robotics-MCB
Fang Robotics Team Codebase
Loading...
Searching...
No Matches
fuzzy_pd.hpp
Go to the documentation of this file.
1/*****************************************************************************/
2/********** !!! WARNING: CODE GENERATED BY TAPROOT. DO NOT EDIT !!! **********/
3/*****************************************************************************/
4
5/*
6 * Copyright (c) 2022 Advanced Robotics at the University of Washington <robomstr@uw.edu>
7 *
8 * This file is part of Taproot.
9 *
10 * Taproot is free software: you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation, either version 3 of the License, or
13 * (at your option) any later version.
14 *
15 * Taproot is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with Taproot. If not, see <https://www.gnu.org/licenses/>.
22 */
23
24#ifndef TAPROOT_FUZZY_PD_HPP_
25#define TAPROOT_FUZZY_PD_HPP_
26
27#include <cstdint>
28
30
32#include "smooth_pid.hpp"
33
34namespace tap::algorithms
35{
43
61class FuzzyPD : public SmoothPid
62{
63public:
68 FuzzyPD(const FuzzyPDConfig &pdConfig, const SmoothPidConfig &smoothPidConfig);
69
74 float runController(float error, float errorDerivative, float dt) override;
75
76private:
78
79 void udpatePidGains(float error, float errorDerivative);
80};
81
82} // namespace tap::algorithms
83
84#endif // TAPROOT_FUZZY_PD_HPP_
Definition fuzzy_pd_rule_table.hpp:47
Definition fuzzy_pd.hpp:62
float runController(float error, float errorDerivative, float dt) override
Definition fuzzy_pd.cpp:38
Definition smooth_pid.hpp:57
Definition pwm_info.hpp:4
Definition ballistics.cpp:29
Specifies Fuzzy-specific configurable parameters in the PD controller.
Definition fuzzy_pd.hpp:38
FuzzyPDRuleTable fuzzyTable
Definition fuzzy_pd.hpp:41
float maxErrorDerivative
Definition fuzzy_pd.hpp:40
float maxError
Definition fuzzy_pd.hpp:39
Definition smooth_pid.hpp:36