63 lines
1.4 KiB
C++
63 lines
1.4 KiB
C++
#ifndef ITC_PRESSURE_OPTIMIZER_H
|
|
#define ITC_PRESSURE_OPTIMIZER_H
|
|
|
|
#include "itc_pressure_optimizer_info.h"
|
|
#include "tmfe.h"
|
|
class itcPressureOptimizer : public TMFeEquipment {
|
|
public:
|
|
itcPressureOptimizer(std::string equipmentName,
|
|
const char *equipmentFilename, int channel);
|
|
|
|
TMFeResult HandleInit(const std::vector<std::string> &args);
|
|
|
|
void HandlePeriodic();
|
|
|
|
private:
|
|
std::string equipmentPath;
|
|
itcPressureOptimizerInfo info;
|
|
/*
|
|
Initialize ODB record for settings and initialized its variables and
|
|
bus driver
|
|
*/
|
|
INT mitc_pressc_init();
|
|
/*
|
|
Exit routine
|
|
*/
|
|
INT mitc_pressc_exit();
|
|
|
|
/*
|
|
read temperature setpoint, measured temperature and measured power
|
|
from Mercury ITC device in ODB and calculate average power of the last
|
|
30 sec
|
|
*/
|
|
INT mitc_pressc_update_mitc_input();
|
|
|
|
/*
|
|
read demanded pressure (setpoint) from Mercury ITC (ODB Demand)
|
|
*/
|
|
INT mitc_pressc_update_pressure_demanded();
|
|
/*
|
|
Calculate pressure
|
|
*/
|
|
INT mitc_pressc_recalculate();
|
|
|
|
/*
|
|
Set pressure to Mercury ITC
|
|
*/
|
|
INT mitc_pressc_set(INT channel, float value);
|
|
/*
|
|
????
|
|
*/
|
|
INT mitc_pressc_get_demand(INT channel, float *pvalue);
|
|
|
|
/*
|
|
|
|
*/
|
|
INT mitc_pressc_get(INT channel, float *pvalue);
|
|
|
|
std::string getDefaultName(int channel);
|
|
|
|
float getDefaultThreshold(int channel);
|
|
};
|
|
|
|
#endif |