# Schedule

Input scheduler
Schedule
O
V

# 出力

ID略称名前デフォルト説明
outputOoutputBOOLEANfalse
valueVvalueNUMBER0

# 設定

ID名前デフォルト単位説明
schedulescheduleSCHEDULE0

詳細:

サブタイプ: ON_OFF

# 状態

ID名前デフォルト単位説明
last_activation_tslast_activation_tsNUMBER0s
next_activation_tsnext_activation_tsNUMBER0s

# ソースコード

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))

# スケジュールの使い方

Schedule ブロックは ON/OFF タイプのスケジュールを使用し、24時間の日次サイクルで動作します。現在時刻が有効なエントリの範囲内にあるとき、デジタル出力 (O) は true となり、アナログ出力 (V) にはエントリの数値が出力されます。どのエントリにも該当しない時間帯では、両出力はデフォルト値に戻ります。

スケジュール自体は曜日を区別しません。平日、週末、祝日、その他任意の状況で動作を変えるには、Schedule ブロックを Operation Modes と組み合わせます。ユーザー定義のモードにより、固定の週間グリッドに縛られずに自由に制御できます。

スケジュールは Voldeno Studio のビジュアルタイムラインエディタで設定します。エディタは24時間軸をデフォルトで30分グリッド表示しますが、1分単位の精度にも対応しています。

スケジュールの種類とビジュアルエディタの詳細は Voldeno Studio — スケジュール を参照してください。

Voldeno スマートホーム自動化における Schedule Logic Block の動作、用途、設定方法を説明します。