(57)【要約】  電動自転車（１０）は、電動モータ（２０）と、電動モータ（２０）の制御ソフトウェアが記憶された記憶部（３１）と、記憶部（３１）に記憶された制御ソフトウェアを実行する制御部（３２）と、ハードウェア（６０）を着脱自在に通信接続可能な通信接続部（３３）とを備える。制御部（３２）は、記憶部（３１）にインストールされる制御ソフトウェア以外の別のソフトウェアを実行することにより、通信接続部（３３）に通信接続されたハードウェア（６０）を制御する。制御ソフトウェア及び別のソフトウェアのそれぞれは、分散型通信プロトコルを用いて通信を行う。
2019188169.tif 000002
【特許請求の範囲】
【請求項１】
電動モータと、
前記電動モータの制御ソフトウェアが記憶された記憶部と、
前記記憶部に記憶された前記制御ソフトウェアを実行する制御部と、
ハードウェアを着脱自在に通信接続可能な通信接続部とを備え、
前記制御部は、前記記憶部にインストールされる前記制御ソフトウェア以外の別のソフトウェアを実行することにより、前記通信接続部に通信接続された前記ハードウェアを制御し、
前記制御ソフトウェア及び前記別のソフトウェアのそれぞれは、分散型通信プロトコルを用いて通信を行う
電動自転車。
【請求項２】
前記記憶部には、オペレーティングシステムが記憶され、
前記制御ソフトウェア及び前記別のソフトウェアは、アプリケーション層に属する
請求項１に記載の電動自転車。
【請求項３】
前記記憶部には、前記分散型通信プロトコルを含むＲＯＳ（Ｒｏｂｏｔ  Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が記憶され、
前記ＲＯＳは、ミドルウェア層に属する
請求項１または２に記載の電動自転車。
【請求項４】
前記制御部は、前記制御ソフトウェア及び前記別のソフトウェアを実行することにより、前記電動モータと前記通信接続部に通信接続された前記ハードウェアとを連携させる
請求項１〜３のいずれか１項に記載の電動自転車。
【請求項５】
前記制御ソフトウェアは、ブラックボックス化されている
請求項１〜４のいずれか１項に記載の電動自転車。
【請求項６】
さらに、前記電動モータに電力を供給するバッテリを備え、
前記通信接続部に通信接続された前記ハードウェアは、前記バッテリから供給される電力を用いて動作する
請求項１〜５のいずれか１項に記載の電動自転車。
【請求項７】
調理用のヒータと、
前記ヒータの制御ソフトウェアが記憶された記憶部と、
前記記憶部に記憶された前記制御ソフトウェアを実行する制御部と、
ハードウェアを着脱自在に通信接続可能な通信接続部とを備え、
前記制御部は、前記記憶部にインストールされる前記制御ソフトウェア以外の別のソフトウェアを実行することにより、前記通信接続部に通信接続された前記ハードウェアを制御し、
前記制御ソフトウェア及び前記別のソフトウェアそれぞれは、分散型通信プロトコルを用いて通信を行う
システムキッチン。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電動自転車、及び、システムキッチンに関する。
【背景技術】
【０００２】
従来、ペダルへの踏力などの人力駆動力に、電動モータによる補助駆動力を付加することで、楽に走行できる電動自転車が知られている。特許文献１には、車速センサを備えた電動自転車が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−０１２５２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、機能の追加及び拡張が容易な電動自転車及びシステムキッチンを提供する。
【課題を解決するための手段】
【０００５】
本発明の一態様に係る電動自転車は、電動モータと、前記電動モータの制御ソフトウェアが記憶された記憶部と、前記記憶部に記憶された前記制御ソフトウェアを実行する制御部と、ハードウェアを着脱自在に通信接続可能な通信接続部とを備え、前記制御部は、前記記憶部にインストールされる前記制御ソフトウェア以外の別のソフトウェアを実行することにより、前記通信接続部に通信接続された前記ハードウェアを制御し、前記制御ソフトウェア及び前記別のソフトウェアのそれぞれは、分散型通信プロトコルを用いて通信を行う。【０００６】
本発明の一態様に係るシステムキッチンは、調理用のヒータと、前記ヒータの制御ソフトウェアが記憶された記憶部と、前記記憶部に記憶された前記制御ソフトウェアを実行する制御部と、ハードウェアを着脱自在に通信接続可能な通信接続部とを備え、前記制御部は、前記記憶部にインストールされる前記制御ソフトウェア以外の別のソフトウェアを実行することにより、前記通信接続部に通信接続された前記ハードウェアを制御し、前記制御ソフトウェア及び前記別のソフトウェアそれぞれは、分散型通信プロトコルを用いて通信を行う。
【発明の効果】
【０００７】
本発明によれば、機能の追加及び拡張が容易な電動自転車及びシステムキッチンが実現される。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施の形態１に係る電動自転車の外観図である。
【図２】図２は、実施の形態１に係る電動自転車の機能構成を示すブロック図である。
【図３】図３は、実施の形態１において記憶部に記憶されるソフトウェアの階層構造を示す図である。
【図４】図４は、実施の形態２に係るシステムキッチンの外観図である。
【図５】図５は、実施の形態２に係るシステムキッチンの機能構成を示すブロック図である。
【図６】図６は、実施の形態２において記憶部に記憶されるソフトウェアの階層構造を示す図である。
【発明を実施するための形態】
【０００９】
以下、実施の形態について、図面を参照しながら説明する。なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
【００１０】
なお、各図は模式図であり、必ずしも厳密に図示されたものではない。また、各図において、実質的に同一の構成に対しては同一の符号を付し、重複する説明は省略または簡略化される場合がある。
【００１１】
（実施の形態１）
［電動自転車の構成］
まず、実施の形態１に係る電動自転車の構成について説明する。図１は、実施の形態１に係る電動自転車の外観図である。図２は、実施の形態１に係る電動自転車の機能構成を示すブロック図である。
【００１２】
図１及び図２に示されるように、電動自転車１０は、車体１１と、前輪１２と、後輪１３と、ペダル１７と、車体１１に取り付けられた電動モータ２０と、電動モータ２０を制御する制御装置３０と、踏力センサ４０と、バッテリ５０とを備える。
【００１３】
電動自転車１０は、いわゆる電動アシスト自転車である。電動自転車１０が備える電動モータ２０は、ペダル１７への踏力に基づいて車体１１の前進をアシストすることができる。電動モータ２０は、制御装置３０の制御に基づいて、バッテリ５０から供給される電力を用いて駆動する。制御装置３０の記憶部３１には、電動モータ２０を制御するためのソフトウェアがあらかじめ記憶されている。
【００１４】
また、電動自転車１０は、ハッカブル化されている。ハッカブルとは、ハードウェアおよびソフトウェアを自由に追加、及び、削除することが可能であることを意味する。例えば、電動自転車１０の通信接続部３３には、カメラ６１、ライダー（Ｌａｓｅｒ  Ｉｍａｇｉｎｇ  Ｄｅｔｅｃｔｉｏｎ  ａｎｄ  Ｒａｎｇｉｎｇ）６２、加速度センサ６３、角速度センサ６４、地磁気センサ６５、及び、スマートフォン６６などのハードウェア６０が着脱自在に通信接続される。また、制御装置３０の記憶部３１には、これらのハードウェア６０を制御するためのソフトウェアをインストールすることが可能である。
【００１５】
［制御装置の構成］
以下、電動自転車１０が備える制御装置３０の機能構成について引き続き図２を参照しながら具体的に説明する。図２に示されるように、制御装置３０は、記憶部３１と、制御部３２と、通信接続部３３とを備える。
【００１６】
記憶部３１には、電動モータ２０の制御ソフトウェア７０があらかじめ記憶される。図３は、記憶部３１に記憶されるソフトウェアの階層構造を示す図である。また、記憶部３１には、制御ソフトウェア７０以外の別のソフトウェアを後からインストールすることもできる。図３の例では、例えば、カメラ６１を用いた人認識を行うための人認識ソフトウェア７１、及び、人認識の結果に基づいて電動モータ２０を制御するための連携用ソフトウェア７２がインストールされている。記憶部３１は、具体的には、半導体メモリなどによって実現される。なお、ソフトウェアのインストールは、例えば、通信接続部３３を介して行われるが、その他の方法で行われてもよい。
【００１７】
制御部３２は、記憶部３１に記憶された制御ソフトウェア７０を実行することにより、車体１１の前進をアシストする。制御部３２は、例えば、プロセッサによって実現されるがマイクロコンピュータによって実現されてもよい。また、制御部３２は、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）によって実現されてもよい。
【００１８】
制御部３２は、具体的には、ペダル１７への踏力と電動自転車１０の速度とに基づいて、電動モータ２０が生成するアシスト力（言い換えれば、補助駆動力）の大きさを決定する。ペダル１７への踏力は、踏力センサ４０から得られる。踏力センサ４０は、例えば、磁歪式のトルクセンサである。電動自転車１０の速度は、後輪１３（または前輪１２）の単位時間当たりの回転数と、後輪１３（または前輪１２）の大きさとに基づいて算出される。なお、電動自転車１０の速度は、例えば、後輪（または前輪１２）に取り付けられたホールＩＣなどのセンサによって計測されるが、電動自転車１０の速度の検知方法は、特に限定されない。
【００１９】
通信接続部３３には、ハードウェア６０が着脱自在に通信接続される。通信接続されている状態とは、例えば、制御装置３０及びハードウェア６０間で電気信号を送受信できる状態であることを意味する。通信接続部３３は、例えば、無線通信回路であり、ペアリングによりカメラ６１などのハードウェア６０と無線通信接続される。通信接続部３３は、有線通信回路であり、ハードウェアと有線通信接続されてもよい、この場合、電動自転車１０（例えば、制御装置３０）は、ハードウェア６０と有線通信回路とを接続するためのケーブルが挿入されるコネクタ構造を有する。
【００２０】
［ソフトウェアの階層構造］
次に、記憶部３１に記憶されるソフトウェアの階層構造について引き続き図３を用いて詳細に説明する。
【００２１】
記憶部３１には、オペレーティングシステム７３が記憶される。オペレーティングシステム７３は、制御装置３０における基本的な制御を行うソフトウェアであり、制御ソフトウェア７０、人認識ソフトウェア７１、及び、連携用ソフトウェア７２などのアプリケーション層に属するソフトウェアに標準的なインターフェースを提供する。オペレーティングシステム７３は、例えば、Ｌｉｎｕｘ（登録商標）であるが、特に限定されない。
【００２２】
また、記憶部３１には、分散型通信プロトコル７４が記憶される。分散型通信プロトコル７４は、例えば、ＲＯＳ（Ｒｏｂｏｔ  Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）に含まれる通信プロトコルであるが、その他の分散型通信プロトコルであってもよい。
【００２３】
ＲＯＳに含まれる通信プロトコルでは、アプリケーション層に属するソフトウェアがノードとして取り扱われる。図３の例では、電動モータ２０の制御ソフトウェア７０、人認識ソフトウェア７１、及び、連携用ソフトウェア７２がノードに相当する。
【００２４】
ＲＯＳに含まれる通信プロトコルでは、ノード間はデータバス（言い換えれば、伝送路）によって接続される。送信側のノードはデータバスに情報を出力し、受信側のノードは受信側のノードは情報が自身に必要なものであった場合のみデータバスから情報を拾い上げる。このような通信プロトコルでは、一部のノードが離脱した場合に他のノードに与える影響が少ないため他のノードはそのまま通信を継続することができる。また、一部のノードが追加された場合も他のノードはそのまま通信を継続することができる。つまり、電動自転車１０が備える制御装置３０においては、分散型通信プロトコル７４によってアプリケーション層に属するソフトウェアの自由な追加、及び、削除が実現される。分散型通信プロトコル７４は、オペレーティングシステム７３及びノード間の通信にも用いられる。
【００２５】
なお、図３では、オペレーティングシステム７３は必須ではない。電動自転車１０が備える制御装置３０においては、アプリケーション層のソフトウェア間で分散型通信プロトコル７４を用いた通信が行われればよい。
【００２６】
また、電動自転車１０においては、制御ソフトウェア７０は、電動自転車１０のアシスト機能を実現するために必須のソフトウェアであり、一般ユーザによって削除されたり、改変されたりするべきではない。そこで、制御ソフトウェア７０は、ブラックボックス化されている。ブラックボックス化とは、一般ユーザによってアクセスできなくなっていることを意味する。制御ソフトウェア７０は、例えば、記憶部３１内で他のソフトウェアとは論理的に別の領域に記憶されることでブラックボックス化されるが、記憶部３１とはハードウェア的に別の記憶部に記憶されることでブラックボックス化されていてもよい。また、制御ソフトウェア７０は、暗号化等によって保護されていてもよい。
【００２７】
［使用例］
以下、電動自転車１０の使用例について説明する。以下では、カメラ６１が追加される例について説明されるが、他のハードウェア６０の場合も同様である。
【００２８】
例えば、一般ユーザは、電動自転車１０に加えて、カメラ６１を購入し、カメラ６１を電動自転車１０の通信接続部３３に通信接続する。また、オープンソースソフトウェアの中から人認識ソフトウェア７１を入手し、記憶部３１にインストールする。この結果、電動自転車１０の制御部３２は、記憶部３１にインストールされる人認識ソフトウェア７１を実行することにより、通信接続部３３に通信接続されたカメラ６１を制御して人認識処理を行うことができる。
【００２９】
このように、一般ユーザは、自由にＤＩＹ（Ｄｏ  Ｉｔ  Ｙｏｕｒｓｅｌｆ）で電動自転車１０に機能を追加することができる。
【００３０】
また、電動自転車１０の開発者は、人認識ソフトウェア７１に基づく人認識処理を利用して電動モータ２０を制御する連携用ソフトウェア７２を開発する。開発者は、例えば、カメラ６１によって撮像される映像に所定数以上の人が含まれる場合（つまり、電動自転車１０の周りが人で混雑している場合）に、アシスト力に制限をかける連携用ソフトウェア７２を開発する。開発者は、カメラ６１を電動自転車１０の通信接続部３３に通信接続する。また、開発者は、人認識ソフトウェア７１、及び、連携用ソフトウェア７２を記憶部３１にインストールする。この結果、制御部３２は、制御ソフトウェア７０、人認識ソフトウェア７１、及び、連携用ソフトウェア７２を実行することにより、電動モータ２０と通信接続部３３に通信接続されたカメラ６１とを連携させることができる。このとき、制御ソフトウェア７０、人認識ソフトウェア７１、及び、連携用ソフトウェア７２は、分散型通信プロトコル７４にしたがって相互に情報（つまり、デジタル値）の送受信を行う。なお、電動モータ２０と他のハードウェアとを連携させる場合には、少なくとも制御ソフトウェア７０及び連携用ソフトウェア７２の２つが用いられればよい。
【００３１】
このように、開発者は、電動自転車１０の実際の動作を見ながら連携用ソフトウェア７２を修正するなどの措置を容易に行うことができる。つまり、電動自転車１０のハッカブル化によれば、開発者がアイデアを素早く形にできる。したがって、開発期間の短縮が実現される。
【００３２】
［変形例］
なお、通信接続部３３に通信接続されたハードウェア６０は、例えば、当該ハードウェア６０が備える電池等を電源として動作するが、電動モータ２０に電力を供給するバッテリ５０から供給される電力を用いて動作してもよい。バッテリ５０は、例えば、リチウムイオン電池などの二次電池（言い換えれば、蓄電池）である。
【００３３】
ハードウェア６０と通信接続部３３とがケーブルによって接続される場合、コネクタ構造が有する複数の端子に給電用の端子が含まれ、ケーブルに給電用の電線が含まれれば、ハードウェア６０は、バッテリ５０から電力の供給を受けることができる。
【００３４】
また、ハードウェア６０と通信接続部３３とが無線接続される場合、非接触給電が行われる。非接触給電の方式は、電波方式、磁界共鳴方式、または、電磁誘導方式である。電波方式の非接触給電が行われる場合、ハードウェア６０は、受電用のアンテナ素子を備え、制御装置３０は、給電用のアンテナ素子を備える。磁界共鳴方式または電磁誘導方式の非接触給電が行われる場合、ハードウェア６０は、受電用のコイル素子を備え、制御装置３０は、給電用のコイル素子を備える。
【００３５】
［効果等］
以上説明したように、電動自転車１０は、電動モータ２０と、電動モータ２０の制御ソフトウェア７０が記憶された記憶部３１と、記憶部３１に記憶された制御ソフトウェア７０を実行する制御部３２と、ハードウェア６０を着脱自在に通信接続可能な通信接続部３３とを備える。制御部３２は、記憶部３１にインストールされる制御ソフトウェア７０以外の別のソフトウェアを実行することにより、通信接続部３３に通信接続されたハードウェア６０を制御する。制御ソフトウェア７０及び別のソフトウェアのそれぞれは、分散型通信プロトコル７４を用いて通信を行う。
【００３６】
これにより、機能の追加または拡張が容易な電動自転車１０が実現される。
【００３７】
また、例えば、記憶部３１には、オペレーティングシステム７３が記憶され、制御ソフトウェア７０及び別のソフトウェアは、アプリケーション層に属する。
【００３８】
これにより、制御部３２は、オペレーティングシステム７３を実行することにより電動モータ２０及びハードウェア６０を制御することができる。
【００３９】
また、例えば、記憶部３１には、分散型通信プロトコル７４を含むＲＯＳが記憶され、ＲＯＳは、ミドルウェア層に属する。
【００４０】
これにより、制御部３２は、ＲＯＳの通信プロトコルによって機能の追加または拡張が容易な電動自転車１０が実現される。
【００４１】
また、例えば、制御部３２は、制御ソフトウェア７０及び別のソフトウェア（例えば、連携用ソフトウェア７２）を実行することにより、電動モータ２０と通信接続部３３に通信接続されたハードウェア６０とを連携させる。
【００４２】
これにより、制御部３２は、電動モータ２０及びハードウェア６０とを連携させることにより電動モータ２０の機能を拡張することができる。
【００４３】
また、例えば、制御ソフトウェア７０は、ブラックボックス化されている。
【００４４】
これにより、制御ソフトウェア７０が改変され、または、消失してしまうことが抑制される。
【００４５】
また、例えば、電動自転車１０は、さらに、電動モータ２０に電力を供給するバッテリ５０を備える。通信接続部３３に通信接続されたハードウェア６０は、バッテリ５０から供給される電力を用いて動作する。
【００４６】
このような電動自転車１０は、電動モータ２０に電力を供給するバッテリ５０を用いてハードウェア６０に給電することができる。
【００４７】
（実施の形態２）
［システムキッチンの構成］
ハッカブル化の対象となる機器は、電動自転車１０に限定されない。例えば、システムキッチンがハッカブル化されてもよい。以下、実施の形態２に係るシステムキッチンの構成について説明する。図４は、実施の形態２に係るシステムキッチンの外観図である。図５は、実施の形態２に係るシステムキッチンの機能構成を示すブロック図である。なお、以下の実施の形態２では、既出事項の説明は省略または簡略化され、実施の形態１との相違点を中心に説明が行われる。
【００４８】
図４及び図５に示されるように、システムキッチン１１０は、調理用のヒータ１２０と、ヒータ１２０を制御する制御装置１３０とを備える。
【００４９】
システムキッチン１１０は、料理に用いられるユニットである。ヒータ１２０は、いわゆるＩＨ（Ｉｎｄｕｃｔｉｏｎ  Ｈｅａｔｉｎｇ）クッキングヒータであり、調理対象の具材が入った金属製の容器を加熱する。ヒータ１２０は、言い換えれば、電磁調理器である、制御装置１３０は、ユーザの操作に基づいてヒータ１２０を制御する。制御装置１３０の記憶部１３１には、ヒータ１２０を制御するためのソフトウェアがあらかじめ記憶されている。
【００５０】
システムキッチン１１０は、ハッカブル化されている。例えば、システムキッチン１１０の通信接続部１３３には、カメラ６１、ロボットアーム６７、及び、スマートフォン６６などのハードウェア６０が着脱自在に通信接続される。また、制御装置１３０の記憶部１３１には、これらのハードウェア６０を制御するためのソフトウェアをインストールすることが可能である。
【００５１】
［制御装置の構成］
以下、システムキッチン１１０が備える制御装置３０の機能構成について引き続き図５を参照しながら具体的に説明する。図５に示されるように、制御装置１３０は、記憶部１３１と、制御部１３２と、通信接続部１３３、操作受付部１３４とを備える。
【００５２】
記憶部１３１には、ヒータ１２０の制御ソフトウェア７５があらかじめ記憶される。図６は、記憶部１３１に記憶されるソフトウェアの階層構造を示す図である。また、記憶部１３１には、制御ソフトウェア７５以外の別のソフトウェアを後からインストールすることもできる。図６の例では、例えば、カメラ６１を用いた画像認識を行うための画像認識ソフトウェア７６、及び、画像認識の結果に基づいてヒータ１２０を制御するための連携用ソフトウェア７７が記憶される。記憶部１３１は、具体的には、半導体メモリなどによって実現される。
【００５３】
制御部１３２は、操作受付部１３４が受け付けたユーザの操作に基づいて、記憶部１３１に記憶された制御ソフトウェア７５を実行することにより、ヒータ１２０を制御する。制御部１３２は、例えば、プロセッサによって実現されるがマイクロコンピュータによって実現されてもよい。また、制御部１３２は、ＦＰＧＡによって実現されてもよい。
【００５４】
通信接続部１３３には、ハードウェア６０が着脱自在に通信接続される。通信接続部１３３は、例えば、無線通信回路であり、ペアリングによりカメラ６１などのハードウェア６０と無線通信接続される。通信接続部１３３は、有線通信回路であり、ハードウェアと有線通信接続されてもよい、この場合、システムキッチン１１０（例えば、制御装置１３０）は、ハードウェア６０と有線通信回路とを接続するためのケーブルが挿入されるコネクタ構造を有する。
【００５５】
操作受付部１３４は、ユーザがヒータ１２０を使って調理を行うために操作するユーザインターフェースである。操作受付部１３４は、タッチパネルまたはハードウェアキー（ハードウェアボタン）などによって実現される。
【００５６】
［ソフトウェアの階層構造］
次に、記憶部１３１に記憶されるソフトウェアの階層構造について引き続き図６を用いて詳細に説明する。
【００５７】
記憶部１３１には、オペレーティングシステム７３が記憶される。また、記憶部１３１には、分散型通信プロトコル７４が記憶される。分散型通信プロトコル７４は、例えば、ＲＯＳに含まれる通信プロトコルであるが、その他の分散型通信プロトコルであってもよい。システムキッチン１１０が備える制御装置１３０においては、分散型通信プロトコル７４によってアプリケーション層に属するソフトウェアの自由な追加、及び、削除が実現される。
【００５８】
なお、図６では、オペレーティングシステム７３は必須ではない。システムキッチン１１０が備える制御装置１３０においては、アプリケーション層のソフトウェア間で分散型通信プロトコル７４を用いた通信が行われればよい。
【００５９】
また、システムキッチン１１０においては、制御ソフトウェア７５は、システムキッチン１１０のヒータ１２０の制御機能を実現するために必須のソフトウェアであり、一般ユーザによって削除されたり、改変されたりするべきでない。そこで、制御ソフトウェア７５は、ブラックボックス化されている。
【００６０】
［使用例］
以下、システムキッチン１１０の使用例について説明する。以下では、カメラ６１が追加される例について説明されるが、他のハードウェア６０の場合も同様である。
【００６１】
例えば、一般ユーザは、システムキッチン１１０に加えて、カメラ６１を購入し、カメラ６１をシステムキッチン１１０の通信接続部１３３に通信接続する。また、オープンソースソフトウェアの中から画像認識ソフトウェア７６を入手し、記憶部１３１にインストールする。この結果、システムキッチン１１０の制御部１３２は、記憶部１３１にインストールされる画像認識ソフトウェア７６を実行することにより、通信接続部１３３に通信接続されたカメラ６１を制御して画像認識処理を行うことができる。
【００６２】
このように、一般ユーザは、自由にＤＩＹでシステムキッチン１１０に機能を追加することができる。
【００６３】
また、システムキッチン１１０の開発者は、画像認識ソフトウェア７６に基づく画像認識処理を利用してヒータ１２０を制御する連携用ソフトウェア７７を開発する。開発者は、例えば、カメラ６１によって撮像される画像の画像認識によってヒータ１２０で調理中の料理が泡立っていると判定されると、ヒータ１２０の温度を下げる連携用ソフトウェア７７を開発する。開発者は、カメラ６１をシステムキッチン１１０の通信接続部１３３に通信接続し、画像認識ソフトウェア７６、及び、連携用ソフトウェア７７を記憶部１３１にインストールする。この結果、制御部１３２は、制御ソフトウェア７５、画像認識ソフトウェア７６、及び、連携用ソフトウェア７７を実行することにより、ヒータ１２０と通信接続部１３３に通信接続されたカメラ６１とを連携させることができる。このとき、制御ソフトウェア７５、画像認識ソフトウェア７６、及び、連携用ソフトウェア７７は、分散型通信プロトコル７４にしたがって相互に情報（つまり、デジタル値）の送受信を行う。なお、ヒータ１２０と他のハードウェアとを連携させる場合には、少なくとも制御ソフトウェア７５及び連携用ソフトウェア７７の２つが用いられればよい。
【００６４】
このように、開発者は、システムキッチン１１０の実際の動作を見ながら連携用ソフトウェア７７を修正するなどの措置を容易に行うことができる。つまり、システムキッチン１１０のハッカブル化によれば、開発者がアイデアを素早く形にできる。したがって、開発期間の短縮が実現される。
【００６５】
［変形例］
なお、通信接続部１３３に通信接続されたハードウェア６０は、例えば、当該ハードウェア６０が備える電池等を電源として動作するが、システムキッチン１１０から供給される電力を用いて動作してもよい。給電は、有線で行われてもよいし、非接触で行われてもよい。
【００６６】
［効果等］
以上説明したように、システムキッチン１１０は、調理用のヒータ１２０と、ヒータ１２０の制御ソフトウェア７５が記憶された記憶部１３１と、記憶部１３１に記憶された制御ソフトウェアを実行する制御部１３２と、ハードウェアを着脱自在に通信接続可能な通信接続部１３３とを備える。制御部１３２は、記憶部１３１にインストールされる制御ソフトウェア７５以外の別のソフトウェアを実行することにより、通信接続部１３３に通信接続されたハードウェア６０を制御する。制御ソフトウェア７５及び別のソフトウェアのそれぞれは、分散型通信プロトコル７４を用いて通信を行う。
【００６７】
これにより、機能の追加または拡張が容易なシステムキッチン１１０が実現される。
【００６８】
（その他の実施の形態）
以上、実施の形態について説明したが、本発明は、このような実施の形態に限定されるものではない。
【００６９】
例えば、上記実施の形態では、ハッカブル化された電動自転車及びシステムキッチンについて説明されたが、本発明は、ハッカブル化された他の装置またはシステムとして実現されてもよい。例えば、本発明は、ハッカブル化されたトイレシステムとして実現されてもよい。
【００７０】
また、本発明の全般的または具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよい。また、システム、装置、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。例えば、本発明は、電動自転車またはシステムキッチンの制御方法として実現されてもよい。
【００７１】
その他、各実施の形態に対して当業者が思いつく各種変形を施して得られる形態、または、本発明の趣旨を逸脱しない範囲で各実施の形態における構成要素及び機能を任意に組み合わせることで実現される形態も本発明に含まれる。
【符号の説明】
【００７２】
１０  電動自転車
２０  電動モータ
３０、１３０  制御装置
３１、１３１  記憶部
３２、１３２  制御部
３３、１３３  通信接続部
６０  ハードウェア
７０、７５  制御ソフトウェア
７２、７７  連携用ソフトウェア（別のソフトウェア）
７４  分散型通信プロトコル
１１０  システムキッチン
１２０  ヒータ
【図１】
2019188169.tif 000003
【図２】
2019188169.tif 000004
【図３】
2019188169.tif 000005
【図４】
2019188169.tif 000006
【図５】
2019188169.tif 000007
【図６】
2019188169.tif 000008
【国際調査報告】
2019188169.tif 000009
2019188169.tif 000010
2019188169.tif 000011
2019188169.tif 000012