mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-19 15:26:59 +00:00
Adds simulated sensor (#4712)
* Create sensor.simulated.markdown * Fix seed ref * Update sensor.simulated.markdown * Update sensor.simulated.markdown * Update sensor.simulated.markdown
This commit is contained in:
parent
d0830ba600
commit
12b6447a5f
94
source/_components/sensor.simulated.markdown
Normal file
94
source/_components/sensor.simulated.markdown
Normal file
@ -0,0 +1,94 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Simulated sensor"
|
||||
description: "Component for simulating a numerical sensor."
|
||||
date: 2018-02-20 08:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category: Sensor
|
||||
ha_iot_class: "Local Polling"
|
||||
ha_release: 0.65
|
||||
---
|
||||
|
||||
This component provides a simulated sensor that generates a time-varying signal ```V(t)``` given by the [function](https://en.wikipedia.org/wiki/Sine_wave):
|
||||
|
||||
```
|
||||
V(t) = M + A sin((2 pi (t - t_0) / w) + P) + N(s)
|
||||
```
|
||||
|
||||
where:
|
||||
|
||||
- **M** = the [mean](https://en.wikipedia.org/wiki/Mean) value of the sensor
|
||||
- **A** = the [amplitude](https://en.wikipedia.org/wiki/Amplitude) of the periodic contribution
|
||||
- **t** = the time when a value is generated
|
||||
- **t_0** = the time when the sensor is started
|
||||
- **w** = the time [period](https://en.wikipedia.org/wiki/Periodic_function) in seconds for a single complete cycle of the periodic contribution
|
||||
- **P** = the [phase](https://en.wikipedia.org/wiki/Phase_(waves)) offset to add to the periodic contribution, in units of degrees
|
||||
- **N(s)** = the random [Gaussian noise](https://en.wikipedia.org/wiki/Gaussian_noise) with spread **s**
|
||||
|
||||
A simulated sensor with default values can be added to home-assistant using the following config:
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: simulated
|
||||
```
|
||||
|
||||
To give an example of simulating real world data, a simulated relative humidity sensor (in %) can be added using the following config:
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: simulated
|
||||
name: 'simulated relative humidity'
|
||||
unit: '%'
|
||||
amplitude: 0 # Turns off the periodic contribution
|
||||
mean: 50
|
||||
spread: 10
|
||||
seed: 999
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
name:
|
||||
description: The name of the sensor
|
||||
required: false
|
||||
default: Defaults to 'simulated'
|
||||
type: string
|
||||
unit:
|
||||
description: The unit to apply
|
||||
required: false
|
||||
default: Defaults to 'value'
|
||||
type: string
|
||||
amplitude:
|
||||
description: The amplitude of periodic contribution
|
||||
required: false
|
||||
default: 1
|
||||
type: float
|
||||
mean:
|
||||
description: The mean level of the sensor
|
||||
required: false
|
||||
default: 0
|
||||
type: float
|
||||
period:
|
||||
description: The time in seconds for one complete oscillation of the periodic contribution
|
||||
required: false
|
||||
default: 0
|
||||
type: seconds
|
||||
phase:
|
||||
description: The phase offset (in degrees) to apply to the periodic component
|
||||
required: false
|
||||
default: 0
|
||||
type: float
|
||||
seed:
|
||||
description: The [seed](https://docs.python.org/3.6/library/random.html#random.seed) value for the random noise component
|
||||
required: false
|
||||
default: 999
|
||||
type: int
|
||||
spread:
|
||||
description: The spread is the range of the randomly distributed values about their mean. This is sometimes referred to as the Full Width at Half Maximum ([FWHM](https://en.wikipedia.org/wiki/Full_width_at_half_maximum)) of the random distribution
|
||||
required: false
|
||||
default: None
|
||||
type: float
|
||||
{% endconfiguration %}
|
Loading…
x
Reference in New Issue
Block a user