2012年10月6日土曜日

スケジュールによる動作

ControlDaemonにスケジュール動作の機能を追加しました。
設定ファイルに下記のような記述をすることで指定された時間にcommandを実行します。


event:
#month  day             time            condition       command
*       weekday2        08:00           *               east_shutter_open
*       *               sunset-00:30    *               east_shutter_close

*       *               08:00           *               center_shutter_open
*       *               sunset-00:30    *               center_shutter_close

*       *               08:00           *               west_shutter_open
*       *               sunset-00:30    *               west_shutter_close

11-5    weekday1        06:00           cold1           floor_heater_dining_on
11-5    weekday1        06:30           cold2           aircon_heater_20
11-5    weekday1        07:30           *               floor_heater_dining_off
11-5    weekday1        08:00           *               aircon_stop

例えばcenter_shutter_openの行は毎月、毎日、朝08:00に実行することを表しています。
center_shutter_closeの行のtimeの項目のsunset-00:30は日没時間の30分前に実行することを表しています。
monthに11-5を指定されているところは11月〜5月の間だけ実行されます。
dayにweekday1と指定されているところは下記の設定のカレンダーによって指定された曜日のみ実行されますが、holidayで指定された日は休日なので実行されないようになっています。

# week holiday
weekday:
weekday1 mon tue wed thu fri
weekday2 wed thu fri

holiday:
1/1 2/11 4/29 5/3 5/4 5/5 11/3 11/23 12/23 # month/day
1/2mon 7/3mon 9/3mon 10/2mon # month/week dayofweek
2012/3/20 2012/9/22 # year/month/day

conditionの項目は下記の設定項目で指定された条件を満たしているときだけ実行されます。


condition:
cold1   internal_2f_temp < 100 # 10.0
cold2   internal_2f_temp < 150 # 15.0
hot1    internal_2f_temp > 280 # 28.0


floor_heater_dining_onの行は11月〜5月の月曜日〜金曜日で休日でない日の朝06:00に2Fリビングの室内の温度センサーが10°Cよりも下回っていたら実行されます。
今のところ順調に動作していそうです。

0 件のコメント:

コメントを投稿