ESPHome
2024.11.2
|
This class implements calculation of absolute humidity from temperature and relative humidity. More...
#include <absolute_humidity.h>
Public Member Functions | |
AbsoluteHumidityComponent ()=default | |
void | set_temperature_sensor (sensor::Sensor *temperature_sensor) |
void | set_humidity_sensor (sensor::Sensor *humidity_sensor) |
void | set_equation (SaturationVaporPressureEquation equation) |
void | setup () override |
void | dump_config () override |
float | get_setup_priority () const override |
void | loop () override |
Public Member Functions inherited from esphome::sensor::Sensor | |
Sensor () | |
int8_t | get_accuracy_decimals () |
Get the accuracy in decimals, using the manual override if set. More... | |
void | set_accuracy_decimals (int8_t accuracy_decimals) |
Manually set the accuracy in decimals. More... | |
StateClass | get_state_class () |
Get the state class, using the manual override if set. More... | |
void | set_state_class (StateClass state_class) |
Manually set the state class. More... | |
bool | get_force_update () const |
Get whether force update mode is enabled. More... | |
void | set_force_update (bool force_update) |
Set force update mode. More... | |
void | add_filter (Filter *filter) |
Add a filter to the filter chain. Will be appended to the back. More... | |
void | add_filters (const std::vector< Filter *> &filters) |
Add a list of vectors to the back of the filter chain. More... | |
void | set_filters (const std::vector< Filter *> &filters) |
Clear the filters and replace them by filters. More... | |
void | clear_filters () |
Clear the entire filter chain. More... | |
float | get_state () const |
Getter-syntax for .state. More... | |
float | get_raw_state () const |
Getter-syntax for .raw_state. More... | |
void | publish_state (float state) |
Publish a new state to the front-end. More... | |
void | add_on_state_callback (std::function< void(float)> &&callback) |
Add a callback that will be called every time a filtered value arrives. More... | |
void | add_on_raw_state_callback (std::function< void(float)> &&callback) |
Add a callback that will be called every time the sensor sends a raw value. More... | |
bool | has_state () const |
Return whether this sensor has gotten a full state (that passed through all filters) yet. More... | |
virtual std::string | unique_id () |
Override this method to set the unique ID of this sensor. More... | |
void | internal_send_state_to_frontend (float state) |
Public Member Functions inherited from esphome::EntityBase | |
const StringRef & | get_name () const |
void | set_name (const char *name) |
bool | has_own_name () const |
std::string | get_object_id () const |
void | set_object_id (const char *object_id) |
uint32_t | get_object_id_hash () |
bool | is_internal () const |
void | set_internal (bool internal) |
bool | is_disabled_by_default () const |
void | set_disabled_by_default (bool disabled_by_default) |
EntityCategory | get_entity_category () const |
void | set_entity_category (EntityCategory entity_category) |
std::string | get_icon () const |
void | set_icon (const char *icon) |
Public Member Functions inherited from esphome::EntityBase_DeviceClass | |
std::string | get_device_class () |
Get the device class, using the manual override if set. More... | |
void | set_device_class (const char *device_class) |
Manually set the device class. More... | |
Public Member Functions inherited from esphome::EntityBase_UnitOfMeasurement | |
std::string | get_unit_of_measurement () |
Get the unit of measurement, using the manual override if set. More... | |
void | set_unit_of_measurement (const char *unit_of_measurement) |
Manually set the unit of measurement. More... | |
Public Member Functions inherited from esphome::Component | |
float | get_actual_setup_priority () const |
void | set_setup_priority (float priority) |
virtual float | get_loop_priority () const |
priority of loop(). More... | |
void | call () |
virtual void | on_shutdown () |
virtual void | on_safe_shutdown () |
uint32_t | get_component_state () const |
virtual void | mark_failed () |
Mark this component as failed. More... | |
bool | is_failed () const |
bool | is_ready () const |
virtual bool | can_proceed () |
bool | status_has_warning () const |
bool | status_has_error () const |
void | status_set_warning (const char *message="unspecified") |
void | status_set_error (const char *message="unspecified") |
void | status_clear_warning () |
void | status_clear_error () |
void | status_momentary_warning (const std::string &name, uint32_t length=5000) |
void | status_momentary_error (const std::string &name, uint32_t length=5000) |
bool | has_overridden_loop () const |
void | set_component_source (const char *source) |
Set where this component was loaded from for some debug messages. More... | |
const char * | get_component_source () const |
Get the integration where this component was declared as a string. More... | |
Protected Member Functions | |
void | temperature_callback_ (float state) |
void | humidity_callback_ (float state) |
Protected Member Functions inherited from esphome::EntityBase | |
virtual uint32_t | hash_base () |
The hash_base() function has been deprecated. More... | |
void | calc_object_id_ () |
Protected Member Functions inherited from esphome::Component | |
virtual void | call_loop () |
virtual void | call_setup () |
virtual void | call_dump_config () |
void | set_interval (const std::string &name, uint32_t interval, std::function< void()> &&f) |
Set an interval function with a unique name. More... | |
void | set_interval (uint32_t interval, std::function< void()> &&f) |
bool | cancel_interval (const std::string &name) |
Cancel an interval function. More... | |
void | set_retry (const std::string &name, uint32_t initial_wait_time, uint8_t max_attempts, std::function< RetryResult(uint8_t)> &&f, float backoff_increase_factor=1.0f) |
Set an retry function with a unique name. More... | |
void | set_retry (uint32_t initial_wait_time, uint8_t max_attempts, std::function< RetryResult(uint8_t)> &&f, float backoff_increase_factor=1.0f) |
bool | cancel_retry (const std::string &name) |
Cancel a retry function. More... | |
void | set_timeout (const std::string &name, uint32_t timeout, std::function< void()> &&f) |
Set a timeout function with a unique name. More... | |
void | set_timeout (uint32_t timeout, std::function< void()> &&f) |
bool | cancel_timeout (const std::string &name) |
Cancel a timeout function. More... | |
void | defer (const std::string &name, std::function< void()> &&f) |
Defer a callback to the next loop() call. More... | |
void | defer (std::function< void()> &&f) |
Defer a callback to the next loop() call. More... | |
bool | cancel_defer (const std::string &name) |
Cancel a defer callback using the specified name, name must not be empty. More... | |
Static Protected Member Functions | |
static float | es_buck (float temperature_c) |
Buck equation for saturation vapor pressure in kPa. More... | |
static float | es_tetens (float temperature_c) |
Tetens equation for saturation vapor pressure in kPa. More... | |
static float | es_wobus (float temperature_c) |
Wobus equation for saturation vapor pressure in kPa. More... | |
static float | vapor_density (float es, float hr, float ta) |
Calculate vapor density (absolute humidity) in g/m³. More... | |
Protected Attributes | |
sensor::Sensor * | temperature_sensor_ {nullptr} |
sensor::Sensor * | humidity_sensor_ {nullptr} |
bool | next_update_ {false} |
float | temperature_ {NAN} |
float | humidity_ {NAN} |
SaturationVaporPressureEquation | equation_ |
Protected Attributes inherited from esphome::sensor::Sensor | |
CallbackManager< void(float)> | raw_callback_ |
Storage for raw state callbacks. More... | |
CallbackManager< void(float)> | callback_ |
Storage for filtered state callbacks. More... | |
Filter * | filter_list_ {nullptr} |
Store all active filters. More... | |
optional< int8_t > | accuracy_decimals_ |
Accuracy in decimals override. More... | |
optional< StateClass > | state_class_ {STATE_CLASS_NONE} |
State class override. More... | |
bool | force_update_ {false} |
Force update mode. More... | |
bool | has_state_ {false} |
Protected Attributes inherited from esphome::EntityBase | |
StringRef | name_ |
const char * | object_id_c_str_ {nullptr} |
const char * | icon_c_str_ {nullptr} |
uint32_t | object_id_hash_ |
bool | has_own_name_ {false} |
bool | internal_ {false} |
bool | disabled_by_default_ {false} |
EntityCategory | entity_category_ {ENTITY_CATEGORY_NONE} |
Protected Attributes inherited from esphome::EntityBase_DeviceClass | |
const char * | device_class_ {nullptr} |
Device class override. More... | |
Protected Attributes inherited from esphome::EntityBase_UnitOfMeasurement | |
const char * | unit_of_measurement_ {nullptr} |
Unit of measurement override. More... | |
Protected Attributes inherited from esphome::Component | |
uint32_t | component_state_ {0x0000} |
State of this component. More... | |
float | setup_priority_override_ {NAN} |
const char * | component_source_ {nullptr} |
Additional Inherited Members | |
Data Fields inherited from esphome::sensor::Sensor | |
float | state |
This member variable stores the last state that has passed through all filters. More... | |
float | raw_state |
This member variable stores the current raw state of the sensor, without any filters applied. More... | |
This class implements calculation of absolute humidity from temperature and relative humidity.
Definition at line 17 of file absolute_humidity.h.
|
default |
|
overridevirtual |
Reimplemented from esphome::Component.
Definition at line 25 of file absolute_humidity.cpp.
|
staticprotected |
Buck equation for saturation vapor pressure in kPa.
temperature_c | Air temperature in °C. |
Definition at line 108 of file absolute_humidity.cpp.
|
staticprotected |
Tetens equation for saturation vapor pressure in kPa.
temperature_c | Air temperature in °C. |
Definition at line 125 of file absolute_humidity.cpp.
|
staticprotected |
Wobus equation for saturation vapor pressure in kPa.
temperature_c | Air temperature in °C. |
Definition at line 141 of file absolute_humidity.cpp.
|
overridevirtual |
Reimplemented from esphome::Component.
Definition at line 48 of file absolute_humidity.cpp.
|
inlineprotected |
Definition at line 35 of file absolute_humidity.h.
|
overridevirtual |
Reimplemented from esphome::Component.
Definition at line 50 of file absolute_humidity.cpp.
|
inline |
Definition at line 23 of file absolute_humidity.h.
|
inline |
Definition at line 22 of file absolute_humidity.h.
|
inline |
Definition at line 21 of file absolute_humidity.h.
|
overridevirtual |
Reimplemented from esphome::Component.
Definition at line 9 of file absolute_humidity.cpp.
|
inlineprotected |
Definition at line 31 of file absolute_humidity.h.
|
staticprotected |
Calculate vapor density (absolute humidity) in g/m³.
es | Saturation vapor pressure in kPa. |
hr | Relative humidity 0 to 1. |
ta | Absolute temperature in K. |
heater_duration | The duration in ms that the heater should turn on for when measuring. |
Definition at line 170 of file absolute_humidity.cpp.
|
protected |
Definition at line 72 of file absolute_humidity.h.
|
protected |
Definition at line 71 of file absolute_humidity.h.
|
protected |
Definition at line 66 of file absolute_humidity.h.
|
protected |
Definition at line 68 of file absolute_humidity.h.
|
protected |
Definition at line 70 of file absolute_humidity.h.
|
protected |
Definition at line 65 of file absolute_humidity.h.