ESPHOME - FLOAT to INT

OP (Firma: Frickelhauptquartier) #7478303
Lesenswert?
• ▲
▼

Moin Leute, wie kann ich anstellen, das ich das Ergebnis von "sensor:

  • platform: pulse_counter" das als Ergebnis einen Wertebereich von 0 - 6000 hat (als FLOAT) in einen Wertebereich von 0 - 100 (als INT) bekomme? Plattform ist wie geschrieben ESPHOME
#7478624
Lesenswert?
• ▲
▼

Christian M. schrieb:

Rainer W. schrieb:

Wieso soll das float sein?

Weil die Variable so deklariert wurde vielleicht!

Dann kann man das auch bei den Konstanten deulich hinschreiben. Das hat etwas mit Stil zu tun.

Rainer W. schrieb:

Dann müsste es 0.0 - 6000.0 heißen.

Nein!

lambda¶ ... filters:

  • lambda: return x * (9.0/5.0) + 32.0; Make sure to add .0 to all values in the lambda, otherwise divisions of integers will result in integers (not floating point values).
OP (Firma: Frickelhauptquartier) #7479067
Lesenswert?
• ▲
▼

Das brachte dann die Lösung: globals:

  • id: rpm type: int restore_value: no initial_value: '1'

sensor:

  • platform: pulse_counter pin: number: D8 unit_of_measurement: 'RPM' accuracy_decimals: 0 id: _speed name: FanSpeed update_interval: 1s filters:
    • lambda: return (x / 2);

fan:

  • platform: speed id: fanid # .state .speed name: fan output: fan_speed

lambda: |- id(rpm) = id(_speed).state; ... it.printf(55,22, id(font1), "%u rpm", id(rpm)); // rpm

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.