Das graphviz Python Modul wird nicht benötigt. Pydot ist aktuell von pypi.
Ankündigung
Einklappen
Keine Ankündigung bisher.
State machine mit Item-Definitionen
Einklappen
X
-
Ich hab's jetzt unter Python 3.6 auf dem Mac hinbekommen. Vielleicht war davor irgendeine Installation faul. Passt jetzt jedenfalls.
Allerdings erhalte ich mit dem neuesten Develop von shng und deiner neuesten Version folgende Probleme:
Beim Start wird gemotzt, dass bei super()__init__() das sh als positional Argument fehlt. Füge ich es ein, startet das Plugin, wird dann aber offenbar gestoppt. So meldet es zumindest das Webinterface. Und tatsächlich funktioniert beim Triggern von Events auch nichts. Ich habe mal 1:1 dein Alarm Beispiel kopiert. Hier das Logfile:
Code:2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm--DEFAULT_START: preparation -- (PluginFSM.py:parse_item:158) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton --MACHINE--- fsm_machine: Alarmanlage [line 145] -- (PluginFSM.py:parse_item:149) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton -----------------: [Item: alarm.state1, Item: alarm.state2] -- (PluginFSM.py:parse_item:150) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-----build with fsm_state: alarm_system_off -- (PluginFSM.py:_build_state_space:197) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-------- fsm_nested_machines: alarm_system_off -> [] -- (PluginFSM.py:_build_state_space:224) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm----- fsm_next_states: ['turn_on: alarm_system_on'] -- (PluginFSM.py:_build_state_space:238) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-----build with fsm_state: alarm_system_on -- (PluginFSM.py:_build_state_space:197) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-------- fsm_nested_machines: alarm_system_on -> [Item: alarm.state2.machine21] -- (PluginFSM.py:_build_state_space:224) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm----- fsm_nested_machine: system_on -- (PluginFSM.py:_build_state_space:229) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-----build with fsm_state: preparation -- (PluginFSM.py:_build_state_space:197) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-------- fsm_nested_machines: preparation -> [] -- (PluginFSM.py:_build_state_space:224) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm----- fsm_next_states: after_x_sec: armed -- (PluginFSM.py:_build_state_space:238) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-----build with fsm_state: armed -- (PluginFSM.py:_build_state_space:197) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-------- fsm_nested_machines: armed -> [] -- (PluginFSM.py:_build_state_space:224) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm----- fsm_next_states: ['alarm_event: prealarm', 'event_2nd_floor: sleeping'] -- (PluginFSM.py:_build_state_space:238) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-----build with fsm_state: prealarm -- (PluginFSM.py:_build_state_space:197) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-------- fsm_nested_machines: prealarm -> [] -- (PluginFSM.py:_build_state_space:224) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm----- fsm_next_states: after_x_sec: alarm -- (PluginFSM.py:_build_state_space:238) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-----build with fsm_state: alarm -- (PluginFSM.py:_build_state_space:197) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-------- fsm_nested_machines: alarm -> [] -- (PluginFSM.py:_build_state_space:224) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm----- fsm_next_states: after_x_sec: prealarm -- (PluginFSM.py:_build_state_space:238) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-----build with fsm_state: sleeping -- (PluginFSM.py:_build_state_space:197) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm-------- fsm_nested_machines: sleeping -> [] -- (PluginFSM.py:_build_state_space:224) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm----- fsm_next_states: ['after_X_sec: armed'] -- (PluginFSM.py:_build_state_space:238) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm----- fsm_next_states: ['turn_off: alarm_system_off'] -- (PluginFSM.py:_build_state_space:238) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm--DEFAULT_START: alarm_system_off -- (PluginFSM.py:parse_item:158) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton run method called -- (PluginFSM.py:run:94) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton run method called -- (PluginFSM.py:run:94) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm----- build machine: preparation -> armed -> prealarm -> alarm -> sleeping into: -- (PluginFSM.py:_build_machine:183) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton alarm----- build machine: alarm_system_off -> alarm_system_on into: -- (PluginFSM.py:_build_machine:183) 2018-10-01 09:41:46 CEST INFO plugins.smart_fsm_automaton Start FSM "Alarmanlage" from start state "alarm_system_off": +---------------------+----------+------------------+----------+---------+ | Start | Event | End | On Enter | On Exit | +---------------------+----------+------------------+----------+---------+ | alarm_system_off[^] | turn_on | alarm_system_on | . | . | | alarm_system_on | turn_off | alarm_system_off | . | . | +---------------------+----------+------------------+----------+---------+ -- (PluginFSM.py:run:97) 2018-10-01 09:41:46 CEST DEBUG plugins.smart_fsm_automaton ----- NESTED MACHINE <preparation -> armed -> armed -> prealarm -> alarm -> sleeping> START STATE motor_steht -- (PluginFSM.py:_nested_start_state_fetcher:257)
Zuletzt geändert von Onkelandy; 01.10.2018, 09:04.
Kommentar
-
Zitat von Onkelandy Beitrag anzeigen... folgende Probleme:
Beim Start wird gemotzt, dass bei super()__init__() das sh als positional Argument fehlt. Füge ich es ein, startet das Plugin, wird dann aber offenbar gestoppt. So meldet es zumindest das Webinterface. Und tatsächlich -
Kommentar
Kommentar