# Schedule

Wejścia scheduler

Przełącznik czasowy z dowolnie regulowanym harmonogramem.

Schedule
O
V

# Wyjścia

IDSkrótNazwaTypDomyślnieOpis
outputOWyjścieBOOLEANfalseWyjście cyfrowe: aktywne gdy wpis harmonogramu jest włączony
valueVWartośćNUMBER0Wyjście analogowe: wartość z bieżącego wpisu harmonogramu

# Konfiguracja

IDNazwaTypDomyślnieJednostkaOpis
scheduleHarmonogramSCHEDULE0Harmonogram do użycia dla aktywacji opartej na czasie

Szczegóły:

Podtyp: ON_OFF

# Stan

IDNazwaTypDomyślnieJednostkaOpis
last_activation_tsOstatni znacznik czasu wykonaniaNUMBER0sOstatni znacznik czasu wykonania
next_activation_tsNastępny znacznik czasu wykonaniaNUMBER0sNastępny znacznik czasu wykonania

# Kod źródłowy

Pokaż kod Volang

extern fn std::next_activation_at() {
    // execute immediately after initialization
    // then follow the schedule entries edges
    if (state::get("next_activation_ts") == 0 and state::get("last_activation_ts") == 0) {
        // wait 10 seconds for all modules to reach steady state
        // TODO: remove the 10 seconds delay after SOF-431 is resolved
        return time::now() + 10
    }
    schedule_id = config::get("schedule")
    return schedule::get_next_activation_ts(schedule_id)
}

schedule_id = config::get("schedule")
output::set("output", schedule::get_entry_type(schedule_id) > 0)
output::set("value", schedule::get_entry_value(schedule_id))

# Praca z harmonogramami

Blok Harmonogram wykorzystuje harmonogram typu WŁ/WYŁ obejmujący 24-godzinny cykl dzienny. Gdy bieżący czas mieści się w aktywnym wpisie, wyjście cyfrowe (O) przyjmuje wartość true, a wyjście analogowe (V) przekazuje wartość liczbową wpisu. Poza wpisami oba wyjścia wracają do wartości domyślnych.

Harmonogram sam w sobie nie rozróżnia dni tygodnia. Aby zróżnicować zachowanie między dniami roboczymi, weekendami, świętami czy dowolną inną sytuacją, połącz blok Harmonogram z Trybami pracy — definiowanymi przez użytkownika trybami, które dają pełną swobodę bez ograniczania do stałej siatki tygodniowej.

Harmonogramy konfiguruje się za pomocą wizualnego edytora osi czasu w Voldeno Studio. Edytor wykorzystuje oś 24-godzinną z domyślną siatką 30-minutową, ale obsługuje dokładność do pojedynczej minuty.

Kompletny opis typów harmonogramów i edytora wizualnego znajdziesz w Voldeno Studio – Harmonogramy.

Przełącznik czasowy z dowolnie regulowanym harmonogramem.