rusEFI
The most advanced open source ECU
Loading...
Searching...
No Matches
alternator_controller.h
Go to the documentation of this file.
1/**
2* @file alternator_controller.h
3 * @brief alternator controller
4 *
5 * @date Apr 6, 2014
6 * @author Dmitry Sidin
7 * @author Andrey Belomutskiy, (c) 2012-2020
8 *
9 */
10
11#pragma once
12
13#include "engine_module.h"
16
18
19class AlternatorController : public EngineModule, public ClosedLoopController<float, percent_t> {
20public:
22
23 // EngineModule implementation
24 void onFastCallback() override;
25 void onConfigurationChange(engine_configuration_s const* previousConfiguration) override;
26 // public only for tests on test_alternator_voltage_target_set_point.cpp
27 expected<float> getSetpoint() override;
28 expected<float> observePlant() override;
29 expected<percent_t> getOpenLoop(float target) override;
30 expected<percent_t> getClosedLoop(float setpoint, float observation) override;
31 void setOutput(expected<percent_t> outputValue) override;
32private:
34};
void initAlternatorCtrl()
expected< percent_t > getOpenLoop(float target) override
expected< float > getSetpoint() override
expected< float > observePlant() override
void onConfigurationChange(engine_configuration_s const *previousConfiguration) override
void setOutput(expected< percent_t > outputValue) override
expected< percent_t > getClosedLoop(float setpoint, float observation) override
Definition efi_pid.h:34
Main engine configuration data structure.