ESPhome Servo ansteuern

Installation, Konfiguration


Antworten
Ben2405
Beiträge: 2
Registriert: So 8. Sep 2024, 21:15

ESPhome Servo ansteuern

Beitrag von Ben2405 »

Hallo zusammen,
ich bin der Benny und bin neu im Bereich von Home Assistant und ESPhome und habe mir ein Projekt für meinen 3D Drucker vorgenommen.
Ich möchte mir mit einem ESP32 ein Endlosere Controller bauen. Dort sollen Lichter und die Temperatur reguliert werden. Das ganze soll/ist schon teilweise in HA integriert und soll dann noch ein Touchscreen bekommen.

Ich verwende für die Temperaturreglung climate -platform Thermostat. Dies funktioniert soweit auch alles mit den Voreinstellung.
Jetzt würde ich gerne einen Servo (öffnen und schließen einer Lüftungsklappe) integrieren. Wenn Cool aktiv ist, öffne die Klappe, wenn Cool nicht aktiv oder Heizen aktiv dann schließe die klappe. Da ich noch sehr unerfahren bin würde ich dort mal einen Tipp Ratschlag benötigen wie ich das hinbekomme.

Ebenfalls suche ich nach einer Möglichkeit, einen zweiten Tepmeratursensor in das Heizen zu integrieren, der mir den Hester überwacht und bei einer Max Temperatur von 85°C den Heater abschaltet und bei 65°C wieder ein.

Vielen Dank für eure Hilfe und Unterstützung

Hier mal mein Code bis jetzt:

captive_portal:

#BME280 I2C
i2c:

  • id: bus_a
    sda: GPIO21
    scl: GPIO22

#DS18B20 one Wire
one_wire:

  • platform: gpio
    pin: GPIO32

sensor:

DS18B20 Temperatursensor Enclosure unten

  • platform: dallas_temp
    address: 0xcd113cd443743028
    name: "Temperatur Enclosure unten"
    id: temp_enclosure_unten
    update_interval: 2s
    unit_of_measurement: "°C"
    accuracy_decimals: 1

    DS18B20 Temperatursenor Enclosure Heater

  • platform: dallas_temp
    address: 0x1234567812345628
    name: "Temperatur Enclosure Heater"
    id: temp_enclosure_heater
    update_interval: 2s
    unit_of_measurement: "°C"
    accuracy_decimals: 1

BME280 I2C Temperatursensor oben

  • platform: bme280_i2c
    i2c_id: bus_a
    temperature:
    name: "Temperatur Enclosure oben"
    humidity:
    name: "Feuchtigkeit Enclosure"
    address: 0X76
    id: temp_hum_enclosure
    update_interval: 2s

    BME280 I2C Temperatursensor Filamentbox

  • platform: bme280_i2c
    i2c_id: bus_a
    temperature:
    name: "Temperatursensor Filamentbox"
    humidity:
    name: "Feuchtigkeit Filamentbox"
    address: 0x77
    id: temp_hum_filamentbox
    update_interval: 2s

#Ausgänge (Relais,MOSFET, LED Weiß Enclosure, LED Weiß Filamentbox, WS2812B Enclosure, WS2812B Filamentbox, RGB LED Controller)

number:

  • platform: template
    name: Servo Control
    min_value: -100
    initial_value: 0
    max_value: 100
    step: 1
    optimistic: true
    on_value:
    then:
    - servo.write:
    id: servo_cooling
    level: !lambda 'return x / 100.0;'

Servo Lüfterklappe

servo:

  • id: servo_cooling
    output: pwm_output

output:

  • platform: ledc
    pin: GPIO26
    id: pwm_output
    frequency: 50 Hz

switch:

Relais Drucker

  • platform: gpio
    pin: GPIO33
    inverted: True
    name: "Relais Drucker"
    id: printer_relais
    icon: mdi:printer-3d-nozzle

MOSFET Lüfter (Cooling)

  • platform: gpio
    pin: GPIO25
    inverted: True
    name: "Cooling"
    id: cooling_fan
    icon: mdi:snowflake

Relais Heater

  • platform: gpio
    pin: GPIO27
    inverted: True
    name: "Heating"
    id: heater
    icon: mdi:fire

Temperatursteuerung

climate:

  • platform: thermostat
    name: "Enclosure Temperatur Controller"
    sensor: temp_enclosure_unten
    min_cooling_off_time: 10s
    min_cooling_run_time: 10s
    min_heating_off_time: 10s
    min_heating_run_time: 10s
    min_idle_time: 5s
    cool_action:

    • switch.turn_on: cooling_fan
      heat_action:

      • switch.turn_on: heater
        idle_action:

      • switch.turn_off: cooling_fan

      • switch.turn_off: heater
        visual:
        min_temperature: 20
        max_temperature: 60
        temperature_step:
        target_temperature: 0.5
        current_temperature: 0.1
        on_boot_restore_from: DEFAULT_PRESET
        default_preset: Temperatur Controller Aus
        preset:

        Aus

      • name: Temperatur Controller Aus
        default_target_temperature_low: 22
        default_target_temperature_high: 28
        mode: "OFF"

        Filament PLA

      • name: PLA
        default_target_temperature_low: 25
        default_target_temperature_high: 30
        mode: HEAT_COOL

        Filament PETG

      • name: PETG
        default_target_temperature_low: 28
        default_target_temperature_high: 33
        mode: HEAT_COOL


        Filament ABS

      • name: ABS
        default_target_temperature_low: 50
        default_target_temperature_high: 55
        mode: HEAT_COOL

        Filament ASA

      • name: ASA
        default_target_temperature_low: 50
        default_target_temperature_high: 55
        mode: HEAT_COOL

Antworten