Upload
sonycsl
View
2.234
Download
2
Embed Size (px)
Citation preview
株式会社ソニーコンピュータサイエンス研究所
Energy Design Competition 作品応募と制作の手引き
大和田 茂
ソニーコンピュータサイエンス研究所
クラウドワークス内の応募ページはこちらです。 お問い合わせはFacebookのサポートグループまでお願いします。
株式会社ソニーコンピュータサイエンス研究所
概要 • 次世代電力メーターであるスマートメーターが2024年までに全家庭に導入されるので、この機能を生かしたアプリ提案を募集します。
• 主にHTML5/JavaScriptを用いたWebアプリの応募を期待しますが、以下の形態も受け付けます。
– スマートフォンネイティブなどHTMLでないアプリ (詳細はお問い合わせください)
– アプリの動作を撮影したデモビデオ、もしくはコンセプトビデオ (60秒以内)
– デザインやインタラクションの様子がわかる企画書(3ページ以内)
• 募集
– 期間 2015年1月1日~2015年1月20日
– 個人参加・チーム参加・企業参加 いずれもOKです。
– 作品募集はクラウドソーシングサイト「クラウドワークス」内で行います。 • アカウントをお持ちでない方は、お手数ですがご登録の上ご応募ください。
– 応募作品の著作権は作者に留保されます。ソニーCSL・神奈川工科大学・インターネットアカデミーからの作品公開・紹介目的の使用に限り使用許諾して頂きます。
– 既発表作品やそれを改変したものも応募できます。
株式会社ソニーコンピュータサイエンス研究所
審査・表彰・発表 • 表彰
– 最優秀賞3万円(1点)、優秀賞1万円(3点)、佳作1000円(30点)
• 賞金支払にはクラウドワークスのシステムを用いるため、実際の支払額は経費を引いた 額となります。
• 審査
– 募集終了後に内部審査を行い、佳作作品を決定するとともに優秀作品4点を選出します。 • 審査は神奈川工科大学、インターネットアカデミー、NTT西日本、NTTコムウェアの担当者が行います。
– 優秀作品は1/28-30に東京ビッグサイトで開催される「ENEX」の神奈川工科大学ブースにて展示され、来場者による投票で最優秀賞が決定されます。
• 結果発表 (作者のお名前も発表します。ご希望でハンドルネーム等も可です)
– 1/23 佳作・優秀作品発表
– 1/28~30 ENEXにて優秀作品4点展示
– 2/2 最優秀賞発表
– 2/3 賞金支払い
株式会社ソニーコンピュータサイエンス研究所
応募内容について • 募集作品は、後述する必須要素を全て含んでいる必要があります。
– 必須要素を含んでいれば、作品形態はアプリ、ビデオ(60秒以内)、企画書(3ページ以内)のどれでも可です。
• 応募に関しては以下の情報をまとめてクラウドワークス内でご提出ください。 – 作品のサムネイル画像(640x480)
– A4縦、1ページの説明資料(PDF形式。優秀作品に選ばれた場合は拡大してポスター印刷にも使われます)
– 制作物
• Webアプリの場合は、それがインストールされたURL。アクセス制限がある場合は閲覧に必要な情報
• ビデオの場合はYouTubeなどに限定公開したURL
• 企画書の場合はPDF形式のもの。
– (任意)簡単な説明ビデオ60秒以内 (YouTubeなどに限定公開したURL)
• サムネイル画像や制作物・説明ビデオは、ソニーCSL・神奈川工科大学・インターネットアカデミーから予告なく公開されることがありますのでご了承の上ご応募ください。
• Webアプリを制作する場合は、機器へのアクセスをAPI化したアプリ雛形が用意されているので、そちらを改変することで作品をお作りください。こうすることで、後日簡単に実際のスマートメーターや家電を動かすことが可能です。詳細は後述します。 – http://app.kadecot.net/Apps/ENEX2015/sample.html
株式会社ソニーコンピュータサイエンス研究所
著作権の扱いについて
• 著作権は作者に留保され、イベント後の利用に制約を加えるものではありません。
• ただし、Sony CSL・神奈川工科大学・インターネットアカデミーからの作品紹介・HP掲載・イベント等での展示に限り、無期限に許諾して頂きます。
• このため、作者以外による著作物・あるいは使用上の制約が含まれる部分がないかご確認ください。 – 特に、既発表作品を投稿される場合は、過去の発表時の権利関係にご留意ください。
– また、ENEX後のご利用も、前述の公開が不可能にならない範囲でお願いします。
株式会社ソニーコンピュータサイエンス研究所
開発サポート
• インターネットアカデミー 渋谷校において、本コンペ向けのWebアプリ開発のフォローアップを行います。
• 参加費は無料です。予約も必要ありません。開催時間内にお越しください。
• 日程については、Facebookのサポートグループにて後日お知らせいたします。
インターネットアカデミー 渋谷校 https://www.internetacademy.jp/contents/access.html
株式会社ソニーコンピュータサイエンス研究所
作品の構成要素
• [必須] 消費電力の瞬時値(現在の値)と、過去1日分の使用履歴情報(30分間隔)がわかるようにしてください。 – 数値やグラフを用いた正確な表示は必須ではなく、ざっくりわかれば結構です。デザインを重視してください。
– 画面を使わずに音声や照明などを用いた表現も歓迎します。
• [必須] 電力を使いすぎた時や、電力会社から節電のお願いが来た時に発動するインタラクティブな動作(後述のシナリオ)を含めてください。
• [任意] 家に帰った時と、外出する際に発動するシナリオも可能であれば付け加えてください。
• [任意] これ以外の操作やシナリオ、演出等は自由に加えていただいて結構です。
株式会社ソニーコンピュータサイエンス研究所
必須シナリオ: 電力ひっ迫時に節電を促す
• 自宅の消費電力または電力会社の電力ひっ迫度が規定値を超えたときにユーザーに通知し、節電を促すというシナリオです
– 実装上の都合により、通知の判断基準となる「規定値」はシステム固定とします。
• ユーザーはアプリ内での対話的な操作で家電機器の電源を切ります。
• 操作終了時または消費電力値が規定値を下回った時にメッセージや表示の変化などで感謝の演出を行ってください(任意)
電力会社で 電力ひっ迫
発動条件
自宅の 電力ひっ迫
ユーザーに
通知、節電を促す
アプリ内で 対話的に 家電OFF操作
ユーザーの操作
感謝
:開発して頂きたい部分
株式会社ソニーコンピュータサイエンス研究所
任意シナリオ:帰宅・外出サポート
• 人感センサーにより帰宅・外出を検知するという想定です。
• 帰宅時の演出が終了したら、前スライドで説明した 必須デモシナリオをスタートできる状態にしてください
• センサーがOFFになったら外出ということになります。必要に応じて外出時の演出をしてください。
帰宅検出 帰宅時 演出
必須シナリオの実行
外出時 演出
:開発して頂きたい部分
外出検出
株式会社ソニーコンピュータサイエンス研究所
サンプルプログラムがあります
• これをダウンロードして変更してください。 • 機能
– 電力使用状況の取得 (瞬時値・一日分の履歴) – 電力ひっ迫シグナルの受信 (電力会社から・自宅電源から) – 家電操作(電源ON/OFFのみ) – 帰宅・出発シグナルの受信 – 気温の取得
http://app.kadecot.net/Apps/ENEX2015/sample.html
株式会社ソニーコンピュータサイエンス研究所
開発環境について
• 実機器がなくても開発可能なアプリ(エミュレータ)があります。
• sample.htmlをブラウザで開くと、自動的にエミュレータウィンドウが開きます。
• 将来エミュレータを実機器と置き換えることで、アプリのソースを変更することなく実機器を動かすことが可能です。
制作いただくアプリ 機器エミュレータ
タブ間通信
株式会社ソニーコンピュータサイエンス研究所
電力使用量の取得 (瞬時値)
• GetPower()という関数を用いる。
• 引数に結果を受け取るための関数を指定している。
• 引数は2つ
– 現在の時間 : unix時間 (1970/1/1からの経過秒数)
– 現在の電力使用量 : ワット単位
GetPower(function(datum,time){ console.log( (new Date(time*1000)) + "の電力使用量:" + datum + "W"); });
株式会社ソニーコンピュータサイエンス研究所
電力使用量の取得 (ログ)
• GetPowerLog()という関数を用いる。
• 現在から遡って30分間隔のデータが得られる。
• データ受け取り関数の引数は2つでGetPower()と似ているがこちらは配列。(要素数は同じ)
GetPowerLog(function(data,times){ for( var di=0;di < data.length;++di ){ console.log( (new Date(times[di]*1000)) + ' : ' + data[di] + 'W' ) ; }; });
株式会社ソニーコンピュータサイエンス研究所
電力ひっ迫シグナル(宅内)
• SetHomeDemandResponseCallback()という関数の引数に、ひっ迫シグナルを受信したとき用の関数を指定しておけばよい。
• 宅内電力が安全な値まで下がると、 SetHomeDemandResponseReleasedCallback() で指定したコールバックが呼ばれる。
SetHomeDemandResponseCallback(function(){ alert('電気の使いすぎです。節電しましょう!') ; }) ;
株式会社ソニーコンピュータサイエンス研究所
電力ひっ迫シグナル(電力会社)
• 宅内と同じように、SetDemandResponseCallback()の引数に関数をセットしておく
• これがいわゆる「デマンドレスポンス」を表現している。
• 電力会社のひっ迫度が下がると、 SetDemandResponseReleasedCallback() で指定したコールバックが呼ばれる。
SetDemandResponseCallback(function(){ alert('電気の使いすぎです。節電しましょう!') ; }) ;
株式会社ソニーコンピュータサイエンス研究所
現在の室温取得
• GetTemperature()を呼び出すと、引数で指定したコールバック関数で室温情報が得られる(0.1℃単位)。
GetTemperature(function(temp){ console.log(“室温:”+temp+”℃”) ; }) ;
株式会社ソニーコンピュータサイエンス研究所
外出・帰宅時に呼ばれるもの
SetOutCallback(function(){ alert('いってらっしゃい!') ; }) ; SetInCallback(function(){ alert('お帰りなさい!!') ; }) ;
株式会社ソニーコンピュータサイエンス研究所
家電機器制御関数
• エアコン – ON : SetAirconPower(true) – OFF : SetAirconPower(false)
• 照明 – つける: SetLightPower(true) – 消す: SetLightPower(false)
• ブラインド – 開ける: SetBlindOpen(true) – 閉める: SetBlindOpen(false)
• エコキュート – 通常運転: SetEcoCute(true) – 節電運転: SetEcoCute(false)
株式会社ソニーコンピュータサイエンス研究所
まとめたソース俯瞰
• SDKStart()は、本SDKの初期化を行い、そののちに引数になっている関数を呼び出す。
• この関数の中で、各種ハンドラーの定義を行う。
• update()は電力関連情報を表示する。 –頻繁に繰り返し呼ばれるようになっている。
• sample.htmlにはコメントがたくさん入っているのでご参照お願いします。
株式会社ソニーコンピュータサイエンス研究所
追加:チャンネルごとの電力使用量取得 (分電盤からの瞬時値)
• 分電盤から分岐した個別の電力量が取得できる • GetPowerChannel()という関数を用いる。 • 引数の1つ目は分電盤のチャンネル番号 (1~4) • 引数の2つ目は結果を受け取るためのコールバック関数。 • コールバック関数の引数は2つ(GetPower()と同じ)
– 現在の時間 : unix時間 (1970/1/1からの経過秒数)
– 現在の電力使用量 : ワット単位
GetPowerChannel( ch , function(datum,time){ console.log( (new Date(time*1000)) + "の電力使用量:" + datum + "W"); });
株式会社ソニーコンピュータサイエンス研究所
Thank you
大和田 茂 (萌家電パパ)
ソニーCSL
※お問い合わせは、Facebookのサポートグループまでお願いします。 クラウドワークス募集開始後はクラウドワークス内でのご連絡も 可能です。