mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-26 22:22:16 +03:00
Добавляем работу сенсоров с несколькими измерениями. Добавляем первую версию класса Variable.
This commit is contained in:
@@ -4,10 +4,10 @@
|
||||
|
||||
struct ModuleInfo
|
||||
{
|
||||
String name;
|
||||
String key;
|
||||
String parameters;
|
||||
String type;
|
||||
String name; //имя модуля
|
||||
String title; //заголовок для описания модуля
|
||||
String parameters; //параметры, которые может принять модуль и сущность
|
||||
String type; //тип для определения сущности, которую генерирует модуль Sensor или Variable
|
||||
};
|
||||
|
||||
class IoTModule {
|
||||
@@ -17,4 +17,5 @@ class IoTModule {
|
||||
|
||||
virtual void* initInstance(String parameters);
|
||||
virtual ModuleInfo getInfo();
|
||||
virtual void clear();
|
||||
};
|
||||
@@ -3,18 +3,24 @@
|
||||
#include <WString.h>
|
||||
|
||||
class IoTSensor {
|
||||
public:
|
||||
IoTSensor();
|
||||
~IoTSensor();
|
||||
public:
|
||||
IoTSensor();
|
||||
virtual ~IoTSensor();
|
||||
|
||||
void loop();
|
||||
virtual void doByInterval();
|
||||
void init(unsigned long interval, String key);
|
||||
void regEvent(String value, String consoleInfo);
|
||||
void loop();
|
||||
virtual void doByInterval();
|
||||
void init(String key, String id, unsigned long interval);
|
||||
void regEvent(String value, String consoleInfo);
|
||||
|
||||
unsigned long currentMillis;
|
||||
unsigned long prevMillis;
|
||||
unsigned long difference;
|
||||
unsigned long _interval;
|
||||
String _key;
|
||||
String getKey();
|
||||
String getID();
|
||||
|
||||
unsigned long currentMillis;
|
||||
unsigned long prevMillis;
|
||||
unsigned long difference;
|
||||
|
||||
protected:
|
||||
String _key;
|
||||
String _id;
|
||||
unsigned long _interval;
|
||||
};
|
||||
24
include/Class/IoTVariable.h
Normal file
24
include/Class/IoTVariable.h
Normal file
@@ -0,0 +1,24 @@
|
||||
#pragma once
|
||||
|
||||
#include <WString.h>
|
||||
|
||||
class IoTVariable {
|
||||
public:
|
||||
IoTVariable();
|
||||
~IoTVariable();
|
||||
|
||||
virtual String execute(String command);
|
||||
virtual void loop();
|
||||
|
||||
void init(String key, String value);
|
||||
void setValue(String value);
|
||||
void getValue(String value);
|
||||
void regEvent(String value, String consoleInfo);
|
||||
|
||||
String _widgetName; //название виджета на фронтэнде для правильного отображения информации из меременной
|
||||
String _key; //код переменной для идентификации событий, команд в сценариях
|
||||
String _title;
|
||||
|
||||
private:
|
||||
String _value; //значение переменной
|
||||
};
|
||||
@@ -1,40 +0,0 @@
|
||||
#ifdef EnableSensorSht20
|
||||
#pragma once
|
||||
#include <Arduino.h>
|
||||
#include "Wire.h"
|
||||
#include "SHT2x.h"
|
||||
|
||||
#include "Global.h"
|
||||
|
||||
extern SHT2x* sht;
|
||||
|
||||
class SensorSht20;
|
||||
|
||||
typedef std::vector<SensorSht20> MySensorSht20Vector;
|
||||
|
||||
struct paramsSht {
|
||||
String key;
|
||||
unsigned long interval;
|
||||
float c;
|
||||
};
|
||||
|
||||
class SensorSht20 {
|
||||
public:
|
||||
SensorSht20(const paramsSht& paramsTmp, const paramsSht& paramsHum);
|
||||
~SensorSht20();
|
||||
|
||||
void loop();
|
||||
void read();
|
||||
|
||||
private:
|
||||
paramsSht _paramsTmp;
|
||||
paramsSht _paramsHum;
|
||||
|
||||
unsigned long prevMillis;
|
||||
unsigned long difference;
|
||||
};
|
||||
|
||||
extern MySensorSht20Vector* mySensorSht20;
|
||||
|
||||
extern void sht20Sensor();
|
||||
#endif
|
||||
Reference in New Issue
Block a user