APM:Libraries
AP_Winch_Servo.h
Go to the documentation of this file.
1 /*
2  This program is free software: you can redistribute it and/or modify
3  it under the terms of the GNU General Public License as published by
4  the Free Software Foundation, either version 3 of the License, or
5  (at your option) any later version.
6 
7  This program is distributed in the hope that it will be useful,
8  but WITHOUT ANY WARRANTY; without even the implied warranty of
9  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  GNU General Public License for more details.
11 
12  You should have received a copy of the GNU General Public License
13  along with this program. If not, see <http://www.gnu.org/licenses/>.
14  */
15 
16 #pragma once
17 
20 
22 public:
23 
25  AP_Winch_Backend(_config) { }
26 
27  // initialise the winch
28  void init(const AP_WheelEncoder* wheel_encoder) override;
29 
30  // control the winch
31  void update() override;
32 
33 private:
34  // external reference
36 
37  uint32_t last_update_ms; // last time update was called
38  bool limit_high; // output hit limit on last iteration
39  bool limit_low; // output hit lower limit on last iteration
40 };
const AP_WheelEncoder * _wheel_encoder
void update() override
uint32_t last_update_ms
void init(const AP_WheelEncoder *wheel_encoder) override
AP_Winch_Servo(struct AP_Winch::Backend_Config &_config)