Automatisierung wird nicht ausgeführt, da nur eine einzige Ausführung zulässig ist.

amiko

Member
Moin,
Ich habe einige Probleme, die miteinander zusammenhängen könnten.
Ich lese und schreibe die Daten von der Wallbox mit dem RS485-zu-USB-Adapter, das funktioniert, solange die Wallbox nicht für längere Zeit im Standby-Modus ist.
Nach längerem Standby, z.B. über Nacht, tritt ein Problem auf. Die Daten der Wallbox können zwar gelesen, aber keine Register geschrieben werden. Nach dem erneuten Starten der HA funktioniert alles wie es sollte. Ich vermutete, dass das Problem ein billiger RS485 zu USB Konverter war und kaufte einen von Waveshare.
WAVESHARE USB to RS485 Industrial Converter Adapter SKU: 17286 FT232R Blitzfest.
Leider ist das Problem geblieben. Ich weiß nicht, woran es liegen könnte.

Ich habe eine Automatisierung erstellt, die StandBy an der Wallbox deaktiviert, die Automatisierung wird ausgeführt, wenn das Auto an der Wallbox angeschlossen ist. Ich habe die Funktion der Automatisierung getestet und war froh, dass die Automatisierung funktioniert hat. Wenn das Fahrzeug längere Zeit nicht an die Wallbox angeschlossen war, funktioniert die Automatisierung nicht mehr. Ich habe heute versucht, die Automatisierung manuell durchzuführen, leider ohne Erfolg. Dann habe ich in den Trace geschaut, da war die Meldung:
Gestoppt, da nur eine einzige Ausführung zulässig ist. Jetzt bin ich am Grübeln, wo wird die Anzahl der Ausführungen eingestellt?

Ich habe dann HA neu gestartet und konnte StandBy deaktivieren und einen Strom-Sollwert an die Wallbox senden. Ich denke also, dass die beiden Probleme zusammenhängen.

AutGestoppt.png
 
Nicht die Anzahl, sondern das GLEICHZEITG scheint mir eher das Problem zu sein.
Heißt, deine Automatisierung wurde gestartet und während diese noch lief, wieder gestartet.
 
Mag ja sein, die Automatisierung ist relativ einfach, eigentlich kann die Bearbeitung nicht mehr als ein paar Sekunden dauern. Gibt es bei Modbus ein Handcheck, ob die Befehle ausgeführt wurden?

YAML:
- id: '1680707528757'
  alias: Setze Standby
  description: ''
  triggers:
  - trigger: state
    entity_id:
    - input_number.wallbox_standby
  condition: []
  actions:
  - action: modbus.write_register
    data:
      hub: modbus heidelberg wallbox
      address: 258
      slave: 1
      value:
      - '{{ (states.input_number.wallbox_standby.state) }}'
  mode: single
 
Ich habe noch eine Frage zu einer anderen Automatisierung. Da jetzt nicht mehr viel Energie vom Dach kommt, schalte ich meinen Wechselrichter über Nacht aus. Es gibt zwei Möglichkeiten, den WR auszuschalten, die erste ist, ihn in den Standby-Modus zu versetzen, und die zweite ist, dem WR mitzuteilen, dass keine Batterie vorhanden ist. Da ich nicht weiß, welche Methode die bessere ist, habe ich beide Möglichkeiten in eine Automatisierung integriert. Ich habe einen Schalter "inverter_off_no_batt" definiert, mit dem ich auswählen kann, welche Methode verwendet werden soll.

YAML:
- id: '1730758172825'
  alias: Inverter ausschalten
  description: ''
  triggers:
  - trigger: template
    value_template: '{% if states(''sensor.inverter_battery'') <= states(''number.inverter_program_5_soc'')  %}
      true
    {% else %}
      false
    {% endif %} '
    for:
      hours: 0
      minutes: 1
      seconds: 0
  conditions:
  - condition: sun
    before: sunrise
    after: sunset
  actions:
  - if:
    - condition: state
      entity_id: input_boolean.inverter_off_no_batt
      state: 'off'
    then:
    - action: switch.turn_off
      metadata: {}
      data: {}
      target:
        entity_id: switch.inverter
    else:
    - action: input_select.set_options
      target:
        entity_id: select.inverter_battery_operation_mode
      data:
        options:
        - No Battery
  mode: single

Der Teil mit Invert aus (action: switch.turn_off) funktioniert, der Teil mit No Battery (action: input_select.set_options) funktioniert nicht. Ich glaube, ich verwende die falsche Aktion. Welche Action sollte ich verwenden? Die Deklaration von select.inverter_battery_operation_mode sieht wie folgt aus

Code:
      - name: "Battery Operation Mode"
        platform: "select"
        rule: 1
        registers: [0x006F]
        icon: mdi:battery
        lookup:
          - key: 0x0000
            value: Voltage
          - key: 0x0001
            value: Capacity
          - key: 0x0002
            value: No Battery
 
Ich habe das Problem mit der Automatisierung gelöst. Mit der Aktion: select.select_option funktioniert die Automatisierung.

Das Problem mit dem Waveshare USB to RS485 Adapter besteht weiterhin.
Hat jemand eine Idee, woran das liegen könnte?
 
Mag ja sein, die Automatisierung ist relativ einfach, eigentlich kann die Bearbeitung nicht mehr als ein paar Sekunden dauern. Gibt es bei Modbus ein Handcheck, ob die Befehle ausgeführt wurden?
Wie deinem Traces zu entnehmen ist, wurde die Automatisierung mehrfach zur selben Zeit ausgelöst. Es ist also vollkommen egal, wie lange die läuft.
Aber, wenn Du in deine Automatisierung gehst, rechts oben die drei Punkte anklicken und dann "Modus ändern."
Da steht bei Dir ganz sicher "Einzeln" ausgewählt und dazu heißt es "Keinen neuen Lauf starten, stattdessen eine Warnung ausgeben"
Genau das passiert ja bei Dir.
Für dich wäre wohl "Neu starten" das richtige. Sprich, wenn die Automatisierung einen Trigger bekommt, während sie noch läuft, wie die aktuelle Automatisierung abgebrochen und neu gestartet.
Alternativ kannst Du natürlich auch danach suchen, warum dein Trigger mehrfach ausgelöst hat.

Ich kenne mich mit ModBUS nicht aus, da kann ich Dir nicht weiter helfen. Aber wenn die WalBox nach einem Standby keine Daten mehr annimmt, schau doch mal, ob Du der vorher nicht einen Reset schicken kannst. Oder ob es ein "Wach Auf" Kommando gibt.
 
Alternativ kannst Du natürlich auch danach suchen, warum dein Trigger mehrfach ausgelöst hat.
Ich habe die Automatisierung manuell gestartet, weil ich dachte, dass sie nicht automatisch ausgeführt wurde.

Aber wenn die WalBox nach einem Standby keine Daten mehr annimmt, schau doch mal, ob Du der vorher nicht einen Reset schicken kannst. Oder ob es ein "Wach Auf" Kommando gibt.
Das Problem ist nicht die Wallbox sondern HA oder RS485 zu USB Konverter. Die Wallbox wacht auf, sobald sie mit dem Auto verbunden ist, da bekomme ich schon die Daten in HA. Dann sende ich einen Wert zum Deaktivieren von StandBy, aber der Sollwert wird nicht von HA oder Konverter gesendet. Wenn ich die Wallbox nicht auf Standby schalte, funktioniert alles. Aber ich möchte nicht, dass die Wallbox die ganze Zeit läuft, wenn das Auto nicht angeschlossen ist.
Ich denke, dass der Konverter das Problem ist, und das hängt irgendwie mit der Zeit zusammen.
 

Zurzeit aktive Besucher

Neueste Beiträge

Letzte Anleitungen

Statistik des Forums

Themen
5.797
Beiträge
56.603
Mitglieder
5.714
Neuestes Mitglied
schueler-f.de
Zurück
Oben