IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ レゲット・アンド・プラット・カナダ・カンパニーの特許一覧

特表2024-524355ローカルインテリジェンスを利用したスマートモータシステムおよび方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-07-05
(54)【発明の名称】ローカルインテリジェンスを利用したスマートモータシステムおよび方法
(51)【国際特許分類】
   H02P 31/00 20060101AFI20240628BHJP
【FI】
H02P31/00
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023580370
(86)(22)【出願日】2022-06-30
(85)【翻訳文提出日】2024-02-22
(86)【国際出願番号】 CA2022051051
(87)【国際公開番号】W WO2023272398
(87)【国際公開日】2023-01-05
(31)【優先権主張番号】63/217,201
(32)【優先日】2021-06-30
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】516197218
【氏名又は名称】レゲット・アンド・プラット・カナダ・カンパニー
(74)【代理人】
【識別番号】100118902
【弁理士】
【氏名又は名称】山本 修
(74)【代理人】
【識別番号】100106208
【弁理士】
【氏名又は名称】宮前 徹
(74)【代理人】
【識別番号】100196508
【弁理士】
【氏名又は名称】松尾 淳一
(72)【発明者】
【氏名】ブラウン,トーマス
(72)【発明者】
【氏名】ヴィカリー,ケイトリン・ニコル
(72)【発明者】
【氏名】ニエツ,ミウォシュ
【テーマコード(参考)】
5H501
【Fターム(参考)】
5H501AA20
5H501BB04
5H501DD01
5H501JJ03
5H501JJ17
5H501KK05
5H501LL22
5H501LL23
5H501LL24
5H501LL35
5H501LL38
5H501LL39
5H501MM09
(57)【要約】
スマートモータを制御するためのシステムおよび方法。1つのスマートモータシステムは、制御バスと、入力デバイスと、制御バスを介して入力デバイスに通信可能に結合されたスマートモータとを含む。スマートモータは、入力デバイスから、アクションを示すコマンドフレームを受け取り、アクションを実行し、入力デバイスから、スマートモータのステータスを要求するデータ要求フレームを受け取り、入力デバイスへ、データ要求フレームを受け取ることに応じて、スマートモータのステータスを示すデータフレームを送るように構成された電子プロセッサを含む。
【特許請求の範囲】
【請求項1】
スマートモータシステムであって、
制御バスと、
入力デバイスと、
前記制御バスを介して前記入力デバイスに通信可能に結合されたスマートモータと
を備え、前記スマートモータは電子プロセッサを含み、前記電子プロセッサは、
前記入力デバイスから、アクションを示すコマンドフレームを受け取り、
前記アクションを実行し、
前記入力デバイスから、前記スマートモータのステータスを要求するデータ要求フレームを受け取り、
前記入力デバイスへ、前記データ要求フレームを受け取ることに応じて、前記スマートモータの前記ステータスを示すデータフレームを送る
ように構成された、スマートモータシステム。
【請求項2】
請求項1に記載のスマートモータシステムであって、前記コマンドフレームは、前記スマートモータのアドレスを含む、スマートモータシステム。
【請求項3】
請求項1に記載のスマートモータシステムであって、前記コマンドフレームは、前記アクションをどのように実行するかを説明する複数のパラメータを含む、スマートモータシステム。
【請求項4】
請求項1に記載のスマートモータシステムであって、前記データフレームは、前記スマートモータのアドレスを含む、スマートモータシステム。
【請求項5】
請求項1に記載のスマートモータシステムであって、前記電子プロセッサは、
前記データフレームを送った後、前記スマートモータの第2のステータスを要求する第2のデータ要求フレームを受け取り、
前記スマートモータの前記第2のステータスを示す第2のデータフレームを、前記入力デバイスへ送る
ように構成された、スマートモータシステム。
【請求項6】
請求項1に記載のスマートモータシステムであって、前記電子プロセッサは、
アイドルアクションを示す第2のコマンドフレームを、前記入力デバイスから受け取り、
前記第2のコマンドフレームに応じて、前記アクションの実行を停止し、
前記スマートモータの第2のステータスを要求する第2のデータ要求フレームを、前記入力デバイスから受け取り、
前記入力デバイスへ、前記データ要求フレームを受け取ることに応じて、前記スマートモータがアイドルであることを示す第2のデータフレームを送る
ように構成された、スマートモータシステム。
【請求項7】
請求項1に記載のスマートモータシステムであって、前記スマートモータは、前記制御バスに接続された複数のスマートモータに含まれる第1のスマートモータであり、前記複数のスマートモータに含まれる各スマートモータは、前記コマンドフレームを受け取る、スマートモータシステム。
【請求項8】
請求項7に記載のスマートモータシステムであって、前記複数のスマートモータは、第2の電子プロセッサを含む第2のスマートモータを含み、前記第2の電子プロセッサは、
前記入力デバイスから、前記アクションを示す前記コマンドフレームを受け取り、
前記コマンドフレームが、前記第2のスマートモータにアドレス指定されたか否かを判定し、
前記コマンドフレームが、前記第2のスマートモータにアドレス指定されていないと判定することに応じて、前記アクションを無視する
ように構成された、スマートモータシステム。
【請求項9】
請求項7に記載のスマートモータシステムであって、前記コマンドフレームは、前記複数のスマートモータのサブセットを示すアドレスを含む、スマートモータシステム。
【請求項10】
請求項1に記載のスマートモータシステムであって、前記入力デバイスは、前記データ要求フレームを、設定された頻度で、定期的に送るように構成された、スマートモータシステム。
【請求項11】
請求項1に記載のスマートモータシステムであって、前記スマートモータの前記ステータスはエラーを示す、スマートモータシステム。
【請求項12】
スマートモータシステムであって、
制御バスと、
入力デバイスと、
前記制御バスを介して前記入力デバイスに通信可能に結合された複数のスマートモータと
を備え、各それぞれのスマートモータは電子プロセッサを含み、前記電子プロセッサは、
前記入力デバイスから、アクションを示すコマンドフレームを受け取り、
前記アクションを実行するか否かを判定し、
前記複数のスマートモータのそれぞれのスマートモータのステータスを要求するデータ要求フレームを、前記入力デバイスから受け取り、
前記入力デバイスへ、前記データ要求フレームを受け取ることに応じて、前記それぞれのスマートモータの前記ステータスを示すデータフレームを送る
ように構成された、スマートモータシステム。
【請求項13】
請求項12に記載のスマートモータシステムであって、前記コマンドフレームは、前記それぞれのスマートモータのアドレスを含み、前記電子プロセッサは、前記アドレスに基づいて前記アクションを実行するか否かを判定するように構成された、スマートモータシステム。
【請求項14】
請求項12に記載のスマートモータシステムであって、前記電子プロセッサは、
前記データフレームを送った後、前記それぞれのスマートモータの第2のステータスを要求する第2のデータ要求フレームを受け取り、
前記それぞれのスマートモータの前記第2のステータスを示す第2のデータフレームを前記入力デバイスへ送る
ように構成された、スマートモータシステム。
【請求項15】
請求項12に記載のスマートモータシステムであって、前記電子プロセッサは、
前記入力デバイスから、アイドルアクションを示す第2のコマンドフレームを受け取り、
前記第2のコマンドフレームに応じて、前記アクションの実行を停止し、
前記入力デバイスから、前記それぞれのスマートモータの第2のステータスを要求する第2のデータ要求フレームを受け取り、
前記入力デバイスへ、前記データ要求フレームを受け取ることに応じて、前記それぞれのスマートモータがアイドルであることを示す第2のデータフレームを送る
ように構成された、スマートモータシステム。
【請求項16】
制御バスで通信するための方法であって、
入力デバイスから、アクションを示すコマンドフレームを受け取るステップと、
前記アクションを実行するステップと、
前記入力デバイスから、スマートモータのステータスを要求するデータ要求フレームを受け取るステップと、
前記入力デバイスへ、前記データ要求フレームを受け取ることに応じて、前記スマートモータの前記ステータスを示すデータフレームを送るステップと
を備えた方法。
【請求項17】
請求項16に記載の方法であって、
前記データフレームを送った後、前記スマートモータの第2のステータスを要求する第2のデータ要求フレームを受け取るステップと、
前記入力デバイスへ、前記スマートモータの前記第2のステータスを示す第2のデータフレームを送るステップと
をさらに備えた方法。
【請求項18】
請求項16に記載の方法であって、
前記入力デバイスから、アイドルアクションを示す第2のコマンドフレームを受け取るステップと、
前記第2のコマンドフレームに応じて、前記アクションを実行することを停止するステップと、
前記入力デバイスから、前記スマートモータの第2のステータスを要求する第2のデータ要求フレームを受け取るステップと、
前記入力デバイスへ、前記データ要求フレームを受け取ることに応じて、前記スマートモータがアイドルであることを示す第2のデータフレームを送るステップと
をさらに備えた方法。
【請求項19】
請求項16に記載の方法であって、前記入力デバイスを用いて、前記データ要求フレームを、設定された頻度で送るステップをさらに備えた方法。
【請求項20】
請求項16に記載の方法であって、前記コマンドフレームは、前記スマートモータのアドレスを含み、前記方法は、
前記アドレスに基づいて、前記アクションを実行するか否かを判定するステップ
を更に備えた、方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願
[0001]本出願は、2021年6月30日に出願された米国仮特許出願第63/217,201号の利益を主張し、その全内容は参照により本明細書に組み込まれる。
【背景技術】
【0002】
[0002]現代の車両および他の機械は、受け取った入力に基づいて、負荷および/または追加のシステム構成要素を移動させるためにモータを使用する。たとえば、自動車では、シートの位置、ピッチ、および/またはサポートを制御するためにモータが使用され得る。それに加えて、自動車では、いくつかのモータが、ドアまたはトランクの開閉のために使用され得る。自動車では、窓の上げ下げ、ミラーのピッチ/角度の配置、または鍵の制御を制御するためにモータが使用され得る。
【0003】
[0003]図1は、車両に実装された、知られているモータシステム100の例を例示する。モータシステム100は、たとえば、コントローラ105(たとえば、電子コントローラ、プログラマブルマイクロプロセッサ、マイクロコントローラ、電子プロセッサ、または他の適切なデバイス)、入力デバイス110、1つまたは複数のスイッチ115、およびシート120を含む。入力デバイス110は、たとえば、タッチ入力を受け取るように構成されたタッチスクリーンなどのヒューマンマシンインターフェース(HMI)であり得る。いくつかの事例では、入力デバイス110は、車両内に組み込まれる。1つまたは複数のスイッチ115は、たとえば、押しボタン、トグルスイッチ、レバー、または所定のコマンドまたは機能に関連付けられた別のタイプの入力デバイスであり得る。1つまたは複数のスイッチ115は、シート120上、車両のダッシュボード上、車両のドア内などに実装され得る。
【0004】
[0004]コントローラ105は、入力デバイス110および/または1つまたは複数のスイッチ115から制御信号を受け取る。制御信号は、電気ハーネスまたは同様の接続を介してコントローラ105に提供される。コントローラ105は、制御信号に基づいて車両モータシステム100内のモータを制御する。たとえば、シート120は、第1のモータ125A、第2のモータ125B、第3のモータ125C、第4のモータ125D、および第5のモータ125Eなどの複数のモータ125を含み得る。図示される例では、第1のモータ125Aは、シート120のヘッドレストを動かす。第2のモータ125Bは、シート120の上部後部を動かす。第3のモータ125Cは、シート120の中央後部を動かす。第4のモータ125Dは、シート120の下部後部を動かす。第5のモータ125Eは、シート120の着座部を動かす。入力デバイス110および/または1つまたは複数のスイッチ115からの制御信号に基づいて、コントローラ105は、複数のモータ125の各モータを制御して、シート120の位置を調整する。コントローラ105は、独立した接続を介して複数のモータ125のおのおのへの電力および位置信号を制御する。このようにして、各モータ125A~125Eは、選択されたモータのみを対象としたコマンド(またはコマンド信号)をコントローラ105から受け取る。たとえば、コントローラ105が、入力デバイス110および/またはスイッチ115から制御信号を受け取って、シート120のヘッドレストを調整する場合、コントローラ105は、第1のモータ125Aのみに電力および/またはコマンド信号を提供する。明らかなように、モータシステム100では、モータ125の制御インテリジェンスは、コントローラ105に集中され、各モータ125は、単一の機能(たとえば、ヘッドレストを動かす)を実行するように事前に設定される。
【発明の概要】
【発明が解決しようとする課題】
【0005】
[0005]システム内の各モータを個別に制御して、制御可能なモータの数を、システムコントローラのサイズ(たとえば、入力/出力端子の数)に制限する。したがって、所与の数のモータを制御するために、複数のコントローラが必要とされ得る。それに加えて、モータに送られるデータパケットは大きいため、各モータのために複数のフレームが必要となる。本明細書で説明される例は、集中コントローラを必要とせずに、スマートモータの動的設定を提供する。スマートモータは、LINバスなどの制御バスを介して通信する。LINバスを介して送られるデータパケットは、実行される操作と、意図される受取部とを詳細に記述した複数のフレームを含む。
【課題を解決するための手段】
【0006】
[0006]1つの例は、入力デバイスと、入力デバイスに通信可能に結合された複数のスマートモータとを備えるスマートモータシステムを提供する。複数のスマートモータの各スマートモータは、電子プロセッサおよびメモリを含む。各スマートモータの電子プロセッサは、入力デバイスから制御コマンドを受け取り、制御コマンドが、それぞれのスマートモータを対象とするか否かを判定し、制御コマンドが、それぞれのスマートモータを対象とするとの判定に応じて、制御コマンドに含まれる機能に基づいてスマートモータを起動するように構成される。
【0007】
[0007]1つの例は、制御バス、入力デバイス、およびスマートモータを備えるスマートモータシステムを提供する。スマートモータは、制御バスを介して入力デバイスに通信可能に結合される。スマートモータは、電子プロセッサを含む。電子プロセッサは、アクションを示すコマンドフレームを入力デバイスから受け取り、アクションを実行し、スマートモータのステータスを要求するデータフレームを入力デバイスから受け取り、入力デバイスへ、データ要求フレームを受け取ることに応じて、スマートモータのステータスを示すデータフレームを送るように構成される。
【0008】
[0008]別の例は、制御バス、入力デバイス、および複数のスマートモータを備えるスマートモータシステムを提供する。複数のスマートモータは、制御バスを介して入力デバイスに通信可能に結合される。各それぞれのスマートモータは電子プロセッサを含む。電子プロセッサは、アクションを示すコマンドフレームを入力デバイスから受け取り、アクションを実行するか否かを判定し、複数のスマートモータのそれぞれのスマートモータのステータスを要求するデータ要求フレームを入力デバイスから受け取り、入力デバイスへ、データ要求フレームを受け取ることに応じて、それぞれのスマートモータのステータスを示すデータフレームを送るように構成される。
【0009】
[0009]別の例は、制御バスで通信するための方法を提供する。方法は、アクションを示すコマンドフレームを、入力デバイスから受け取るステップと、アクションを実行するステップと、スマートモータのステータスを要求するデータ要求フレームを、入力デバイスから受け取るステップと、入力デバイスへ、データ要求フレームを受け取ることに応じて、スマートモータのステータスを示すデータフレームを送るステップとを備える。
【0010】
[0010]他の特徴、態様、実施形態、および利点は、詳細な説明および添付の図面を考慮することによって明らかになるであろう。
【図面の簡単な説明】
【0011】
図1】[0011]知られているモータシステムの概略図である。
図2】[0012]いくつかの例による、スマートモータシステムの概略図である。
図3】[0013]いくつかの例による、図2のスマートモータのブロック図である。
図4】[0014]いくつかの例による、図2のスマートモータのアーキテクチャのブロック図である。
図5】[0015]いくつかの例による、図4のハードウェア層のブロック図である。
図6】[0016]いくつかの例による、図4のオペレーティング層のブロック図である。
図7】[0017]いくつかの例による、図4のアプリケーション層のブロック図である。
図8】[0018]いくつかの例による、図3の電子プロセッサによって実行される方法のブロック図である。
図9】[0019]いくつかの例による、図2のスマートモータシステムを介して通信される複数のデータフレームを例示する図である。
図10】[0020]いくつかの例による、書込データコマンドフレームの図である。
図11】[0021]いくつかの例による、読取データ要求コマンドフレームの図である。
図12】[0022]いくつかの例による、読取データコマンドフレームの図である。
図13-1】[0023]いくつかの例による、図2のスマートモータシステムを介して通信される複数のデータフレームのチャートである。
図13-2】[0023]いくつかの例による、図2のスマートモータシステムを介して通信される複数のデータフレームのチャートである。
図14】[0024]いくつかの例による、IDLEコマンドフレームの図である。
図15】[0025]いくつかの例による、図2のスマートモータシステムを介して行われる通信プロトコルの図である。
図16】[0026]いくつかの例による、例示的な書込データコマンドフレームのチャートである。
図17】[0027]例示的な読取データコマンドフレームのチャートである。
図18】[0028]いくつかの例による、スマートモータシステムを実装する車両の平面図である。
【発明を実施するための形態】
【0012】
[0029]1つまたは複数の態様、特徴、および実施形態が、以下の説明および添付の図面において説明および例示される。これらの態様、特徴、および実施形態は、本明細書で提供される特定の詳細に限定されず、様々な手法で修正され得る。さらに、本明細書に説明されていない他の態様、特徴、および実施形態が存在し得る。たとえば、特定の手法で「構成」されたデバイスまたは構造は、少なくともその手法で構成されるが、列挙されていない手法でも構成され得る。さらに、本明細書で説明されるいくつかの事例は、非一時的なコンピュータ可読媒体に格納された命令を実行することによって、説明された機能を実行するように構成された1つまたは複数の電子プロセッサを含み得る。同様に、本明細書で説明される例は、説明される機能を実行するために1つまたは複数の電子プロセッサによって実行可能な命令を記憶する非一時的なコンピュータ可読媒体として実装され得る。本願において使用されるように、「非一時的なコンピュータ可読媒体」は、すべてのコンピュータ可読媒体を含むが、一時的な伝播信号は含まない。したがって、非一時的なコンピュータ可読媒体は、たとえば、ハードディスク、CD-ROM、光記憶デバイス、磁気記憶デバイス、ROM(読取専用メモリ)、RAM(ランダムアクセスメモリ)、レジスタメモリ、プロセッサキャッシュ、他のメモリおよび記憶デバイス、またはそれらの組合せを含み得る。
【0013】
[0030]それに加えて、本明細書で使用される表現および専門用語は、説明の目的のためであり、限定として見なされるべきではない。たとえば、本明細書における「含む」、「含有する」、「備える」、「有する」、およびそれらの変形の使用は、その後に列挙される項目およびその等価物、ならびに追加の項目を包含するように意図される。「接続された」および「結合された」という用語は、広範に使用され、直接的および間接的な接続および結合の両方を包含する。さらに、「接続された」および「結合された」は、物理的または機械的な接続または結合に限定されず、直接的または間接的に関わらず、電気的接続または結合を含むことができる。それに加えて、電子通信および通知は、有線接続、ワイヤレス接続、またはそれらの組合せを使用して実行され得、様々なタイプのネットワーク、通信チャネル、および接続を介して、直接的に、または1つまたは複数の中間デバイスを介して送られ得る。さらに、たとえば、第1および第2、先端および底などの関係を示す用語は、本明細書では、そのようなエンティティまたはアクション間のそのような実際の関係または順序を必ずしも要求または示唆する必要なく、あるエンティティまたはアクションを、別のエンティティまたはアクションから区別するためにのみ使用され得る。
【0014】
[0031]いくつかの事例では、方法ステップは、説明される順序とは異なる順序で実施される。
[0032]上述したように、自動車などの一部の車両は、シートの位置を調整または動かすためにモータを使用し得る。図2は、いくつかの例によるスマートモータシステム200を例示する。スマートモータシステム200は、入力デバイス110、1つまたは複数のスイッチ115、およびシート120を含む。シート120は、第1のスマートモータ210A、第2のスマートモータ210B、第3のスマートモータ210C、第4のスマートモータ210D、および第5のスマートモータ210Eなどの複数のスマートモータ210を含む。第1のスマートモータ210Aは、シート120のヘッドレストを制御し、動かす。第2のスマートモータ210Bは、シート120の上部を制御し、動かす。第3のスマートモータ210Cは、シート120の中央部分を制御し、動かす。第4のスマートモータ210Dは、シート120の下部を制御し、動かす。第5のスマートモータ210Eは、シート120の着座部を制御し、動かす。入力デバイス110、1つまたは複数のスイッチ115、および複数のスマートモータ210のおのおのは、制御バス205を介して通信可能に接続される。制御バス205は、たとえば、CANバス、LINバス、または別の適切な通信バスであり得る。いくつかの事例では、制御バス205は、ワイヤレス接続を使用して実装される。
【0015】
[0033]入力デバイス110および1つまたは複数のスイッチ115によって受け取られる入力(たとえば、コマンド、信号など)は、制御バス205を介して複数のモータ210に提供される。このようにして、入力デバイス110および1つまたは複数のスイッチ115からのすべてのコマンドは、スマートモータシステム200におけるすべてのスマートモータ210によって受け取られる。各スマートモータ210は、以下でより詳細に説明されるように、受け取られたコマンドに基づいて、動作するか否かを判定するように構成された電子プロセッサを含む。
【0016】
[0034]図3は、例示的なスマートモータ210を例示する。スマートモータ210は、電子プロセッサ300(たとえば、電子コントローラ、プログラマブルマイクロプロセッサ、マイクロコントローラ、または他の適切なデバイス)、メモリ305、入力/出力(I/O)インターフェース310、1つまたは複数のセンサ315、電力調整回路320、およびモータ330を含む。モータ330および電子プロセッサ300(電力調整ユニット320を使用する)などのスマートモータ210の構成要素は、電源335から電力を受け取る。スマートモータ210は、制御バス205を介して、入力デバイス110および1つまたは複数のスイッチ115のような、スマートモータシステム200の他の構成要素と通信する。
【0017】
[0035]メモリ305は、たとえばプログラム記憶領域およびデータ記憶領域を含む非一時的なコンピュータ可読媒体である。プログラム記憶領域およびデータ記憶領域は、読取専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)(たとえば、ダイナミックRAM[「DRAM」]、同期DRAM[「SDRAM」]など)、電気的に消去可能なプログラマブル読取専用メモリ(「EEPROM」)、フラッシュメモリ、ハードディスク、SDカード、または他の適切な磁気、光学、物理、または電子メモリデバイスのような異なるタイプのメモリの組合せを含むことができる。電子プロセッサ300は、メモリ305に接続され、(たとえば、実行中)メモリ305のRAMに、(たとえば、ほぼ永続的に)メモリ305のROMに、または別のメモリまたはディスクなどの別の非一時的なコンピュータ可読媒体に格納可能なソフトウェア命令を実行する。スマートモータ210の実装に含まれるソフトウェアは、メモリ305に格納することができる。ソフトウェアは、たとえば、ファームウェア、1つまたは複数のアプリケーション、プログラムデータ、フィルタ、ルール、1つまたは複数のプログラムモジュール、および他の実行可能な命令を含む。電子プロセッサ300は、とりわけ、本明細書で説明される制御プロセスおよび方法に関連する命令を、メモリ305から検索し、実行するように構成される。他の構造では、スマートモータ210は、追加の、より少ない、または異なる構成要素を含む。
【0018】
[0036]I/Oインターフェース310は、電子プロセッサ300に接続され、制御バス205を介して受け取られた制御信号またはコマンドを電子プロセッサ300に提供するように構成され得る。I/Oインターフェース310は、デジタルI/Oインターフェース、アナログI/Oインターフェース、通信インターフェース、および/または他の適切なインターフェースを含み得る。いくつかの例では、I/Oインターフェース310は、I/Oインターフェース310が、1つまたは複数のセンサ315と電子プロセッサ300との間のブリッジとして機能するように、1つまたは複数のセンサ315に接続される。他の例では、1つまたは複数のセンサ315は、電子プロセッサ300に直接接続され得る。
【0019】
[0037]いくつかの事例では、スマートモータ210は、ワイヤレス通信可能である。そのような例では、I/Oインターフェース310は、たとえば、セルラーネットワーク、ロングタームエボリューション(LTE)ネットワーク、5Gネットワーク、Bluetooth(登録商標)ネットワーク、ワイヤレスローカルエリアネットワーク(たとえば、Wi-Fi)、ワイヤレスアクセサリパーソナルエリアネットワーク(PAN)などで通信可能なトランシーバワイヤレス通信インターフェースを含む。それに加えて、制御バス205自体は、データが、入力デバイス110および1つまたは複数のスイッチ115から複数のスマートモータ210にワイヤレスで送られるように、ワイヤレス通信媒体であり得る。
【0020】
[0038]1つまたは複数のセンサ315は、たとえば、温度センサ、ホール効果センサ、バッテリセンサ(たとえば、バッテリ電圧センサおよびバッテリ電流センサ)、位置センサ、逆起電力センサ、モータ電流センサ、および/または他の補助センサを含み得る。温度センサは、スマートモータ210内の温度、モータ330の温度などを示す温度信号を提供し得る。ホール効果センサは、スマートモータ210に関連する位置情報を提供し得る。たとえば、ホール効果センサは、モータ330内に実装された永久磁石システムを監視し得る。永久磁石は、モータ330のロータシャフトに結合され得る。ホール効果センサは、永久磁石の動きを検出する。コントローラ300は、位置情報を受け取り、モータの回転数をカウントしたり、ロータの位置の特定などを行う。バッテリセンサは、電源335からの供給電圧を示すバッテリ信号を提供し得る。位置センサは、シート120の現在位置、モータ330の位置などを示す位置信号を提供し得る。逆起電力センサは、モータ330の速度を示す電圧信号を提供し得る。モータ電流センサは、モータ330を流れる電流を示す電流信号を提供し得る。しかしながら、スマートモータ210およびシート120の様々な特性を感知するために、追加のセンサが実装され得る。1つまたは複数のセンサ315が、スマートモータ210内にあるように例示されているが、電子プロセッサ300は、スマートモータ210とは別の追加のセンサからセンサデータを受け取り得る。そのようなセンサデータは、たとえば制御バス205を介して提供され得る。
【0021】
[0039]電力調整回路320は、たとえば、変圧器、整流器、フィルタ、DC-DCコンバータ、または、電源335から受け取った電力を電子プロセッサ300による使用に適するように変更する他の電力調整構成要素であってもよいし、または、これらを含むことができる。スマートモータ210は、他の電力調整回路、たとえば、モータ330に提供される電力を調整する回路を含み得る。モータ330は、たとえば、ACモータ、DCモータ、サーボモータ、ステッパモータなどであり得る。いくつかの例では、スマートモータ210は、説明および例示された例とは異なる。1つの例では、スマートモータの代わりにスマートアクチュエータが使用される。スマートアクチュエータは、モータ330に加えて、またはモータ330の代わりに、追加のタイプのアクチュエータを含み得る。たとえば、スマートアクチュエータは、電磁アクチュエータ(たとえば、ソレノイド)を含み得る。他の例では、快適機能構成要素が実装される。たとえば、いくつかの事例では、モータ330の代わりに、またはモータ330に加えて、抵抗負荷(たとえば、加熱素子)を使用して、乗客の快適さを向上させるためにシートを加熱する。所望の機能を実装するために、モータ330の代わりに、またはモータ330に加えて、他の構成要素が使用され得る。
【0022】
[0040]スマートモータ210の動作を制御するソフトウェアは、いくつかの層を含むスタック402において編成または構築される。図4は、スマートモータ210のためのソフトウェアスタックが実装されるオペレーティングシステム400を例示する。オペレーティングシステム400は、メモリ(たとえば、メモリ305)に格納され、電子プロセッサ300によって実施または実行され得る。スタック402は、ハードウェア層405、オペレーティング層410、およびアプリケーション層415を含む。ハードウェア層405は、電子プロセッサ300と、スマートモータ210の他の構成要素との、入力層および出力層として機能する。たとえば、ハードウェア層405は、I/Oインターフェース310および/または1つまたは複数のセンサ315から信号を受け取る。それに加えて、ハードウェア層405は、モータ330を駆動するための制御信号を提供する。オペレーティング層410は、ハードウェア層405とアプリケーション層415との間の仲介として機能する。アプリケーション層415は、メモリ305に格納されている機能を実行して、ハードウェア層405の構成要素と通信し、ハードウェア層405の構成要素を制御する。
【0023】
[0041]図5は、いくつかの例によるハードウェア層405のブロック図を例示する。ハードウェア層405は、機能や動作などを表す複数のブロックを含む。たとえば、図5に例示される例示的なハードウェア層405は、電力ブロック500、モータブロック505、センサブロック510、スイッチブロック515、通信ブロック520、およびメモリブロック525を含む。しかしながら、いくつかの例では、ハードウェア層405は、システムの構成要素に基づいて、より多くの、またはより少ないブロックを含み得る。各ブロックは、スマートモータ210の、対応する構成要素に関する入出力動作を表す。たとえば、電力ブロック500は、電子プロセッサ300と電力調整回路320との間の入力/出力動作を表す。電力ブロック500は、とりわけ、電源335から受け取った電力に適用されるフィルタリングに関連する動作、電源335自体に関連する動作などを含み得る。
【0024】
[0042]モータブロック505は、電子プロセッサ300とモータ330との間の入力/出力動作を表す。モータブロック505は、モータ330の制御に関連する動作を含み得る。モータブロック505は、モータドライバのための入力動作および/または出力動作を表す。センサブロック510は、電子プロセッサ300と、1つまたは複数のセンサ315との間の入力/出力動作を表す。たとえば、センサブロック510は、1つまたは複数のセンサ315のおのおのから受け取った信号の解釈に関連する動作を含み得る。スイッチブロック515は、電子プロセッサ300と、1つまたは複数のスイッチ115との間の入力/出力動作を表す。通信ブロック520は、電子プロセッサ300と、I/Oインターフェース310との間の入力/出力動作を表す。メモリブロック525は、メモリ割当てを支援するためなど、電子プロセッサ300とメモリ305との間の入力/出力動作を表す。
【0025】
[0043]オペレーティング層410は、ハードウェア層405とアプリケーション層415との間の仲介として機能する。オペレーティング層は、アプリケーション層415による分析のためにハードウェア層405によって受け取られたデータを変更し得る。図6に例示されるように、オペレーティング層410は、とりわけ、アプリケーションプログラミングインターフェース(API)I/Oインターフェースブロック600およびAPI不揮発性メモリ(NVM)インターフェース605を含み得る。API I/Oインターフェースブロック600は、ハードウェア層405の物理構成要素(電力ブロック500、モータブロック505、センサブロック510、スイッチブロック515、通信ブロック520など)と、(以下でより詳細に説明される)アプリケーション層415のソフトウェアおよびマクロとの間の仲介として機能する。API I/Oインターフェースブロック600は、とりわけ、モータインターフェース610、供給制御インターフェース615、センサインターフェース620、スイッチインターフェース625、および通信インターフェース630を含み得る。しかしながら、API I/Oインターフェースブロック600は、ハードウェア層405とインタラクトするために、必要に応じて追加のインターフェースを含み得る。
【0026】
[0044]API NVMインターフェース605は、(メモリブロック525を介して)メモリ305と、アプリケーション層415のソフトウェアおよびマクロとの間の仲介として機能する。API NVMインターフェース605は、とりわけ、EEPROM API635、NVM機能640、およびEEPROM設定動作645を含む。しかしながら、API NVMインターフェース605は、メモリ305のメモリ割当てを管理するために、必要に応じて、より多くの、またはより少ないブロックを含み得る。
【0027】
[0045]アプリケーション層415は、スマートモータ210の動作に関連する機能、動作、ソフトウェア、マクロなどを含む。アプリケーション層415は、とりわけ、アプリケーション制御モジュール700、エラーハンドラモジュール705、駆動制御モジュール710、I/O制御モジュール715、通信制御モジュール720、システム監視モジュール725、およびスケジューラモジュール730を含む。アプリケーション制御モジュール700は、プライマリアプリケーション、サブアプリケーションの組合せ、および複数のアプリケーションマクロなど、スマートモータ210を制御するために使用される多様なアプリケーションを含み得る。各アプリケーションは、アプリ制御設定プログラムを介して互いに連携して動作し得る。
【0028】
[0046]駆動制御モジュール710は、モータ330の動作に関連する機能、動作、ソフトウェアなどを含む。いくつかの例では、駆動制御モジュール710は、モータドライバとして機能する。1つの事例では、第1のスマートモータ210Aに関して、ハードウェア層405のスイッチブロック515は、スイッチ115の1つからコマンドを受け取り、ヘッドレストが第1の位置になるまで、モータ330を起動させる。アプリケーション制御モジュール700は、スイッチブロック515から(スイッチインターフェース625を介して)コマンドを受け取る。それに加えて、1つまたは複数のセンサ315の位置センサは、位置情報をセンサブロック510に提供する。アプリケーション制御モジュール700は、センサブロック510から(センサインターフェース620を介して)位置情報を受け取る。アプリケーション制御モジュール700は、スイッチブロック515からのコマンドと、センサブロック510からの位置情報とを分析して、ヘッドレストを現在位置から第1の位置に動かすためにスマートモータ210Aのモータ330を、どれだけの時間起動させるかを判定する。次に、アプリケーション制御モジュール700は、出力コマンドおよび/または追加の動作パラメータを、駆動制御モジュール710に提供する。駆動制御モジュール710は、出力コマンドを、モータインターフェース610に提供する。モータインターフェース610は、出力コマンドをモータブロック505に提供し、モータブロック505は、それに応じてモータドライバ325を制御する。
【0029】
[0047]通信制御モジュール720は、通信インターフェース630から情報を受け取り、受け取った情報を処理する。いくつかの例では、通信制御モジュール720は、スマートモータ210およびスマートモータシステム200の構成要素と通信するために必要な通信プロトコルを含む。たとえば、通信制御モジュール720は、制御バス205を介して通信するためのLINスタックを含み得る。I/O制御モジュール715は、センサインターフェース620から情報を受け取り、受け取った情報を処理する。I/O制御モジュール715は、センサデータがどのように分析されるかなど、センサインターフェース620から受け取ったセンサデータに関連する動作およびプログラムを含み得る。
【0030】
[0048]システム監視モジュール725は、アプリケーション制御モジュール700、エラーハンドラモジュール705、駆動制御モジュール710、I/O制御モジュール715、通信制御モジュール720、およびスケジューラモジュール730の状態および動作を監視する。それに加えて、システム監視モジュール725は、対応する下位レベルのインターフェース(たとえば、API I/Oインターフェース600およびAPI NVMインターフェース605)のおのおのを監視する。システム監視モジュール725は、システムブートリリース動作およびシステムランタイム状態(たとえば、スリープモード、障害シャットダウンイベントなど)を制御し得る。
【0031】
[0049]スケジューラモジュール730は、アプリケーション層415内の他のモジュールのタイミングを管理し、アプリケーション層415内の他のモジュールに計算能力を分配する役割を担う。いくつかの事例では、スケジューラモジュール730は、リアルタイムオペレーティングシステム(RTOS)として動作するためにオペレーティングシステム400によって使用される。
【0032】
[0050]エラーハンドラモジュール705は、オペレーティング層410と、アプリケーション層715の他のモジュールとから、発生したエラーまたは警告コードに関連するデータを受け取り、および/または、格納する。エラーおよび警告コードは、スマートモータ210内で発生するエラーまたは異常を取り扱う(または対処する)か否かを判定するために、システム監視モジュール725に提供される。次に、システム監視モジュール725は、エラーを取り扱うためにスマートモータ210の動作を変更するようにアプリケーション層415内の追加モジュールに指示し得る。たとえば、ハードウェア層405のセンサブロック510は、1つまたは複数のセンサ315に含まれる温度センサから温度信号を受け取り得る。温度信号は、オペレーション層405におけるセンサインターフェース620に提供される。センサインターフェース620は、調整された温度信号をアプリケーション層415に提供する前に、何らかの手法で、温度信号を分析または調整し得る。いくつかの事例では、温度信号は、調整なしでアプリケーション層415に提供される。エラーハンドラモジュール705は、調整された温度信号を受け取り、調整された温度信号を、システム監視モジュール725に提供する。システム監視モジュール725は、スマートモータ210内で過熱状態が発生していると判定する。システム監視モジュール725は、スマートモータ210(たとえば、モータ330)の動作を停止するための制御コマンドを駆動制御モジュール710に提供し得る。
【0033】
[0051]スマートモータ210のオペレーティングシステムを説明するために使用される、提供されたブロック、インターフェース、およびモジュールは、単なる例であり、限定するように意図されていない。スマートモータ210のオペレーティングシステムは、スマートモータシステム200内の構成要素に基づいて、より多くの、またはより少ないブロックを含み得る。それに加えて、別個のものとして示されているが、オペレーティングシステムの異なる機能をさらに例示するために、様々なブロック、インターフェース、およびモジュールが組み合わされたり、または分離され得る。モータ330の動作を超えるさらなる構成要素(たとえば、補助構成要素)は、スマートモータ210のオペレーティングシステム内に実装され得る。たとえば、ヒータが、シート120内に実装され得る。入力デバイス110および/または1つまたは複数のスイッチ115からのコマンドは、複数のスマートモータ210のうちの1つに対して、ヒータをオンにするように指示し得る。したがって、ハードウェア層405、オペレーティング層410、およびアプリケーション層415は、ヒータに関連するコマンドを受け取り、コマンドを解釈し、ヒータを制御するための出力を提供するために必要なブロック、インターフェース、およびモジュールを含む。
【0034】
[0052]制御バス205で送られた信号およびコマンドは、複数のスマートモータ210のおのおのによって受け取られる。図8は、複数のスマートモータ210のおのおの内の電子プロセッサ300によって実行される方法800を提供する。ステップ805において、電子プロセッサ300は、制御信号を受け取る。たとえば、入力デバイス110および/または1つまたは複数のスイッチ115は、制御信号を制御バス205に提供する。複数のスマートモータ210のおのおのは、制御バス205で制御信号を受け取る。いくつかの事例では、スマートモータシステム200が、ワイヤレスシステムである場合、入力デバイス110および/または1つまたは複数のスイッチ115は、制御信号をブロードキャストする。
【0035】
[0053]ステップ810において、電子プロセッサ300は、受け取った制御信号に対して、反応するか、または動作するかを判定する。たとえば、制御信号は、「シート120の下部後部を第3の位置に動かす」ことを示すコマンドを含むか、または具現化する。第4のスマートモータ210Dは、シート120の下部後部に関連付けられる。したがって、ステップ815において、第4のスマートモータ210Dの電子プロセッサ300は、受け取った制御信号に含まれる機能を実行するためにモータ330を起動することを決定する。しかしながら、第1のスマートモータ210A、第2のスマートモータ210B、第3のスマートモータ210C、および第5のスマートモータ210Eも、「シート120の下部後部を第3の位置に動かす」ことを示す制御信号を受け取る。これらのモータは、シート120の下部後部に関連付けられていないため、それぞれの電子プロセッサ300は、この制御信号を無視する。
【0036】
[0054]特定の態様では、制御バス205を介した通信は、一連の通信フレーム(たとえば、データパケット、データフレーム)を使用して行われる。1つの例では、入力デバイス110および/または1つまたは複数のスイッチ115は、受け取ったユーザ入力に基づいて、制御バス205を介してデータフレームをブロードキャストする。スマートモータ210のおのおのは、データフレームを受け取り、データフレームによって示されるアクションを実行するか否かを判定する。入力デバイス110、1つまたは複数のスイッチ115、およびスマートモータ210は、書込データ(<WR_Data>)フレーム(たとえば、コマンドフレーム、制御フレーム)、読取データ要求(<RD_Data_Req>)フレーム(たとえば、データ要求フレーム)、および読取データ(<RD_Data>)フレーム(たとえば、応答フレーム)を送ることによって、制御バス205で通信する。書込データフレーム、読取データ要求フレーム、および読取データフレームは、一連の通信フレームとして後続のフレームとして送られる。スマートモータ210に命令するために、入力デバイス110および/または1つまたは複数のスイッチ115は、書込データフレームを送る。任意のスマートモータ210からデータを読み取るために、入力デバイス110および/または1つまたは複数のスイッチ115は、読取データ要求フレームを送る。スマートモータ210は、読取データ要求フレームに読取データフレームで応答する。
【0037】
[0055]データフレームのこのセット(またはサイクル)が一度送られると、後続のデータ読取機能は、読み取られたデータフレームのみを使用して実行され得る。たとえば、入力デバイス110および/または1つまたは複数のスイッチ115が、以前に命令された機能を実行するときのそれぞれのスマートモータ210の動作を監視する場合、入力デバイス110および/または1つまたは複数のスイッチ115は、書込データフレームを送ることなく、読取データ要求フレームを送り、読取データフレームを受け取る。この動作は、入力デバイス110および1つまたは複数のスイッチ115のメモリに格納された、設定された所定の頻度で発生し得る。
【0038】
[0056]図9は、書込データフレーム905、読取データ要求フレーム910、および読取データフレーム915の例を例示する。書込フレーム905は、スマートモータ210のうちの少なくとも1つによって実行されるアクションを示すコマンドである。図9に図示されるように、書込フレーム905は、スマートモータ210のアクション(またはコマンド)を示す6バイトのデータを含む。書込フレーム905は、書込フレーム905に含まれるノードアドレスによって示されるように、単一のスマートモータ210または複数のスマートモータ210による実行のために送られ得る。
【0039】
[0057]図10は、1つの例による書込データフレーム905を例示する。書込データフレーム905は、識別ブロック1000、アドレスブロック1005、コマンドブロック1010、およびデータブロック1015を含む。識別ブロック1000は、提供されるフレームのタイプに対応する識別コードを含む。たとえば、図10に図示される識別コード0x21は、そのフレームが書込データフレームであることを示す。アドレスブロック1005は、どのスマートモータ210がアクションを実行すべきかを示すアドレス(たとえば、ノードアドレス)を含む。アドレスブロック1005は、単一のスマートモータ210、スマートモータ210のグループまたはサブセット、または制御バス205に接続されたすべてのスマートモータ210を示し得る。いくつかの事例では、アドレスブロック1005は、1バイトのデータを含む。いくつかの事例では、アドレスブロック1005の値は、0x01から0x3Fの範囲である。
【0040】
[0058]コマンドブロック1010は、スマートモータ210によって実行されるコマンドを示すデータを含む。いくつかの事例では、コマンドブロック1010は、1バイトのデータを含む。コマンドブロック1010の可能な値は、0x00から0xAFおよび0xB8から0xFFの範囲であり得る。データブロック1015は、コマンドを実行するために使用されるパラメータおよびオプションを示すデータを含む。図10に例示される例示的なデータブロック1015は、4バイトのデータを含むが、データブロック1015は、より多くの、またはより少ないバイトのデータを含み得る。
【0041】
[0059]図9に戻って示すように、例示的な読取データ要求フレーム910は、スマートモータ210のためのアクション(またはコマンド)を示す3バイトのデータを含む。読取データ要求フレーム910は、読取データ要求フレーム910に含まれるノードアドレスによって示されるように、単一のスマートモータ210または複数のスマートモータ210による受け取りのために送られ得る。図11は、1つの例による詳細な読取データ要求フレーム910を提供する。読取データ要求フレーム910は、識別ブロック1100、アドレスブロック1105、コマンドブロック1115、およびサブ選択ブロック1120を含む。識別ブロック1100は、提供されるフレームのタイプに対応する識別コードを含む。たとえば、図11に図示される識別コード0x22は、そのフレームが読取データ要求フレームであることを示す。アドレスブロック1105は、どのスマートモータ210がアクションを実行すべきかを示すアドレスを含む。いくつかの事例では、アドレスブロック1105は、1バイトのデータを含む。いくつかの事例では、アドレスブロック1105の値は、0x01から0x3Fの範囲である。
【0042】
[0060]コマンドブロック1110は、スマートモータ210によって実行されるコマンドを示すデータを含む。いくつかの事例では、コマンドブロック1110は、1バイトのデータを含む。コマンドブロック1110の可能な値は、0x00から0xAFおよび0xB8から0xFFの範囲であり得る。サブ選択ブロック1120は、連鎖したデータ選択のためのサブインデクスを提供する。いくつかの事例では、読取データ要求フレームは、データバイトD4~D8も含む。読取データ要求フレーム910は、後続のデータ読取コマンドのために、入力デバイス110および/または1つまたは複数のスイッチ115を準備する。
【0043】
[0061]図9に戻って示すように、例示的な読取データフレーム915は、7バイトのデータを含む。書込データフレーム905および読取データ要求フレーム910は、複数のスマートモータ210にアドレス指定され得るが、読取データフレーム915は、単一のスマートモータ210にアドレス指定される。図12は、1つの例による詳細な読取データフレーム915を提供する。読取データフレーム915は、識別ブロック1200、応答アドレスブロック1205、応答コマンドブロック1210、データブロック1215、リターンサブ選択ブロック1220、およびステータスブロック1225を含む。識別ブロック1200は、提供されるフレームのタイプに対応する識別コードを含む。たとえば、図12に図示される識別コード0x23は、そのフレームが読取データ要求フレームであることを示す。応答アドレスブロック1205は、どのスマートモータ210が読取データフレーム915(たとえば、リターンノードアドレス)を送っているのかを示し、コマンドが実行された位置を再チェックするために、入力デバイス110および/または1つまたは複数のスイッチ115によって実装される。いくつかの実施では、応答が肯定的な応答である場合(たとえば、書込データフレーム905によって示されるコマンドの実行中にエラーが発生していない場合)、応答アドレスブロックを作成するためにノードアドレスに値0x40が追加される。応答が否定的な応答である(たとえば、コマンドの実行中にエラーが発生した)場合、値0x40は加算されない。応答アドレスブロック1205の可能な値は、0x01~0x3Fの範囲である。
【0044】
[0062]応答コマンドブロック1210は、(応答アドレスブロック1210によって示される)それぞれのスマートモータ210によって実行されるアクションを示す。応答コマンドブロック1210の可能な値は、0x00から0xAFおよび0xB8から0xFFの範囲である。データブロック1215は、コマンドの実行中に使用されるパラメータおよびオプションを示すデータを含む。図12に例示される例示的なデータブロック1215は、4バイトのデータを含むが、データブロック1215は、より多くの、またはより少ないバイトのデータを含み得る。図12の例では、データブロック1215はまた、連鎖されたデータ選択のためのサブインデクスとして機能するリターンサブセレクタブロック1220を含む。ステータスブロック1225は、とりわけ、「エラー」ステータス、「応答エラー」ステータス、および「転送成功」ステータスなど、それぞれのスマートモータ210のステータスを示すデータを含む。
【0045】
[0063]制御バス205を介して送られるデータフレームの追加の例が、図13のチャート1300および凡例1310に例示される。チャート1300は、データフレームにおける各バイトの内容を例示するヘッダ1305を含む。たとえば、書込データフレーム905は、フレームID0x21、パリティビット0x01、およびPID値0x61を含む。書込データフレーム905は、ノードアドレスおよびモータコマンドを含む6バイトのデータを含む。「パブリッシャ」列および「サブスクライバ」列に示されているように、書込データフレーム905は、マスタデバイス(たとえば、入力デバイス110および/または1つまたは複数のスイッチ115)によってパブリッシュされ(または、送られ)、スレーブデバイス(たとえば、1つまたは複数のスマートモータ210)によってサブスクライブされる(または、受け取られる)。
【0046】
[0064]チャート1300において、読取データ要求フレーム910は、フレームID 0x22、パリティビット0x11、およびPID値0xE2を含む。読取データ要求フレーム910は、ノードアドレスおよびモータコマンドを含む3バイトのデータを含む。「パブリッシャ」列および「サブスクライバ」列に示されているように、読取データ要求フレーム910は、マスタデバイス(たとえば、入力デバイス110および/または1つまたは複数のスイッチ115)によってパブリッシュされ(または、送られ)、スレーブデバイス(たとえば、1つまたは複数のスマートモータ210)によってサブスクライブされる(または、受け取られる)。
【0047】
[0065]チャート1300では、読取データフレーム915は、フレームID 0x23、パリティビット0x10、およびPID値0xA3を含む。読取データ要求フレーム915は、応答ノードアドレス、応答モータコマンド、およびデバイスステータスを含む7バイトのデータを含む。「パブリッシャ」列および「サブスクライバ」列に示されているように、書込データフレーム915は、スレーブデバイス(たとえば、スマートモータ210)によってパブリッシュされ(または、送られ)、マスタデバイス(たとえば、入力デバイス110および/または1つまたは複数のスイッチ115)によってサブスクライブされる(または、受け取られる)。
【0048】
[0066]通信は、スリープコマンド(<GoToSleep_Cmd>)1320などの追加のタイプのコマンドを含み得る。スリープコマンドは、複数のスマートモータ210のおのおのがスリープコマンドを受け取るように、制御バス205でブロードキャストされ得る。通信はまた、各電子プロセッサ300をリセットする動作に関連するコントローラリセットコマンド(<ECUReset_Cmd>)1330および制御リセット応答(<ECUReset_Response>)1340を含み得る。チャート1300に提供されていない追加の動作も、スマートモータシステム200内のデバイスによって実行され得る。たとえば、マスタデバイス(たとえば、入力デバイス110、1つまたは複数のスイッチ115)は、一連のスマートモータ210を遮断または停止するコマンドをブロードキャストし得る。マスタデバイスは、スマートモータ210によって実行される緊急プロトコルをブロードキャストし得る。
【0049】
[0067]いくつかの事例では、補助出力制御のためのコマンドが、スマートモータシステム200によって実装され得る。たとえば、補助出力制御コマンドは、複数の補助出力を制御するためにマスタデバイスによって制御される機能を含む。そのようなコマンドは、たとえば、オン状態とオフ状態とを切り替える出力の制御、シートヒータシステムの操作、診断機能の実行、および他の補助出力を含む。これらの出力は、図18に関して以下でより詳細に説明される。
【0050】
[0068]いくつかの事例では、複数のスマートモータ210は、ローカル(たとえば、デバイス上の)電力制限機能を有するように構成される。各スマートモータ210は、自身の電流の流れを制御するために使用されるパルス幅変調(PWM)信号を調整し得る。それに加えて、各スマートモータ210は、流れる電流が電流閾値を超えた場合に、それ自体を停止させ得る。いくつかの実装では、各スマートモータ210は、ステータスブロック1225に、電流の流れを含める。
【0051】
[0069]図14は、制御バス205を介して送られる例示的なアイドルコマンド1400を提供する。アイドルコマンド1400は、単一バイトのデータを含み、制御バス205上の複数のスマートモータ210のすべてにブロードキャストされる。いくつかの事例では、アイドルコマンド1400は、20ミリ秒などの設定された頻度で繰り返し送られる。アイドルコマンド1400は、他の制御フレームが必要とされない場合に、制御バス205におけるトラフィックを最小限に抑える。アイドルコマンドの機能は、識別コードに基づいて変動し得る。たとえば、アイドルコマンド1400は、指定されたスマートモータ210によって実行される一部またはすべての機能をクリアし得、指定されたスマートモータ210に、機能の実行を停止するように指示し得、スマートモータ210に、低電力モードに入るように指示し得るなどを行う。アイドルコマンド1400は、制御バス205に接続されたすべてのスマートモータ210に送られるので、アイドルコマンド1400は、各スマートモータ210が何らかのデータを受け取り続け、指示がない限りスリープにならないことを保証する。
【0052】
[0070]図15は、マスタデバイス1505(たとえば、入力デバイス110、1つまたは複数のスイッチ115)と、スレーブデバイス1510(たとえば、スマートモータ210)との間で実行される例示的な通信サイクル1500を提供する。通信サイクル1500では、スレーブデバイス1510は、スマートモータ210がモータ330を駆動するように指示される「モーメンタリ制御」コマンドを実行している。たとえば、モータ330は、1つまたは複数のスイッチ115のうちの1つが起動している間、駆動される。
【0053】
[0071]ステップ15-1において、マスタデバイス1505は、書込データフレーム(書込データフレーム905など)をスレーブデバイス1510へ送る。書込データフレームは、スレーブデバイス1510が(たとえば、モータ330を時計回りまたは反時計回りに動作させる)駆動動作を実行するように指示されていることを示すデータ値0x01を含む。ステップ15-2において、マスタデバイス1505は、読取データ要求フレーム(読取データ要求910など)をスレーブデバイス1510へ送る。ステップ15-3において、読取データ要求フレームに応答して、スレーブデバイス1510は、読取データフレーム(読取データフレーム915など)をマスタデバイス1505へ送る。読取データフレームは、スレーブデバイス1510がモーメンタリ制御コマンドを実行していることを示す。いくつかの事例では、マスタデバイス1505およびスレーブデバイス1510は、モーメンタリ制御動作の間、ステップ15-2および15-3を繰り返し続ける。
【0054】
[0072]ステップ15-4において、マスタデバイス1505は、第2の書込データフレームをスレーブデバイス1510へ送る。第2の書込データフレームは、スレーブデバイス1510が駆動動作の実行を停止する(または、モータ330の駆動を停止する)ように命令されていることを示すデータ値0x00を含む。ステップ15-5において、マスタデバイス1505は、読取データ要求フレームをスレーブデバイス1510へ送る。読取データ要求フレームに応じて、ステップ15-6において、スレーブデバイス1510は、読取データフレームをマスタデバイス1505へ送る。読取データフレームは、スレーブデバイス1510がモータ330の動作を停止した(たとえば、モーメンタリ制御コマンドをもはや実行していない)ことを示す。
【0055】
[0073]図16は、モーメンタリ制御動作(たとえば、入力キー起動機能)のために入力デバイス110および/または1つまたは複数のスイッチ115によって送られる例示的な制御フレーム1600を例示する。制御フレーム1600は、講じられるアクションを定義し、機能を実行するためのデータ制限またはパラメータを定義する。たとえば、制御フレーム1600が、キー#1が起動されたことを示す場合、モータ330は、時計回り方向に駆動される。制御フレーム1600が、キー#2が起動されたことを示す場合、モータ330は、反時計回り方向に駆動される。図17は、モーメンタリ制御動作を実行するスマートモータ210によって送られる例示的な応答フレーム1700を例示する。応答フレーム1700は、スマートモータ210の動作状態および停止状態を示すデータを含む。
【0056】
[0074]いくつかの事例では、動作の実行中、スマートモータ210は、読取データ要求フレームの受け取り失敗を検出する。スマートモータ210が、所定のタイムアウト期間内に読取データ要求フレームを受け取ることに失敗した場合、スマートモータ210は、動作の実行を中止し得る。
【0057】
[0075]上記で説明されたメッセージングプロトコルと、アプリケーション層415におけるソフトウェアによって提供されるローカルインテリジェンスとは、とりわけ、複数のアプリケーションのために単一のスマートモータアーキテクチャを使用する機能を含む、図1に図示されるシステムに対する利点を提供する。たとえば、同じスマートモータのプログラムされた異なるバージョンが、シート内で異なる目的のために使用され得る。たとえば、1つのスマートモータが、ヘッドレストを制御するようにプログラムされ得るが、構造的に同一または類似のモータを、異なるまたは追加のプログラミングを用いて、腰サポートを制御するために使用され得る。したがって、異なるアプリケーションごとに、ハードウェア固有のモータは必要とされない。所望される機能を実行するために、同じベーススマートモータを使用することができ、ソフトウェアを変更するだけで済む。それに加えて、集中管理も必要ない。メッセージはバスで送られ得、各スマートモータは、自身宛てのメッセージを解釈し、他のスマートモータまたはデバイス宛てのメッセージを無視するのに十分なインテリジェンスを有する。
【0058】
[0076]スマートモータシステム200を主にシート120に関連して説明してきたが、スマートモータシステム200は、追加のモータ用途に対応するためにさらに拡張され得る。図18は、複数のスマートモータを装備した車両を提供する車両スマートモータシステム1800を提供する。たとえば、車両スマートモータシステム1800は、シートの角度を調整するように構成されたスマートリクライニングモータと、シートの位置を前方および/または後方に調整するように構成されたスマートシートスライダモータと、シートの高さを調整するように構成されたスマートシート高さ調整モータとを含む、複数のスマートモータ1805を含む。複数のスマートモータ1805は、シートの前部および後部を傾斜させるための前部および後部スマートシート高さ調整モータと、シート腰サポートを調整するためのスマート腰調整モータと、ヘッドレストの高さおよび/または傾きを調整するためのスマートヘッドレスト調整モータと、シートのサイドサポートを調整するスマートサイドボルスタサポートモータとを含む。
【0059】
[0077]シートスマートモータに加えて、車両スマートモータシステム1800は、車両のサンルーフ、サイドミラー、バックミラー、およびトランクを制御するためのスマートモータを含み得る。いくつかの事例では、スマートモータは、環境制御(たとえば、車両の加熱および冷却)など、車両スマートモータシステム1800の追加の補助構成要素を制御することができる。主に車両に関して説明されたが、複数のスマートモータ210は、限定されないが、航空機、バス、列車など、モータが使用される他のシステムおよび環境でも使用され得る。
【0060】
[0078]したがって、本明細書において説明される態様、特徴、および実施形態は、とりわけ、スマートモータおよびその制御のための方法を提供する。いくつかの例の様々な特徴および利点は、特許請求の範囲に記載されている。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13-1】
図13-2】
図14
図15
図16
図17
図18
【手続補正書】
【提出日】2024-02-27
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【0001】
関連出願
[0001]本出願は、2022年6月30日に出願されたPCT出願第PCT/CA2022/051051および2021年6月30日に出願された米国仮特許出願第63/217,201号の利益を主張し、それら各々の全内容は参照により本明細書に組み込まれる。
【背景技術】
【0002】
[0002]現代の車両および他の機械は、受け取った入力に基づいて、負荷および/または追加のシステム構成要素を動かすためにモータを使用する。たとえば、自動車では、シートの位置、ピッチ、および/またはサポートを制御するためにモータが使用され得る。それに加えて、自動車では、いくつかのモータが、ドアまたはトランクの開閉のために使用され得る。自動車では、窓の上げ下げ、ミラーのピッチ/角度の配置、または鍵の制御を制御するためにモータが使用され得る。
【0003】
[0003]図1は、車両に実装された、知られているモータシステム100の例を例示する。モータシステム100は、たとえば、コントローラ105(たとえば、電子コントローラ、プログラマブルマイクロプロセッサ、マイクロコントローラ、電子プロセッサ、または他の適切なデバイス)、入力デバイス110、1つまたは複数のスイッチ115、およびシート120を含む。入力デバイス110は、たとえば、タッチ入力を受け取るように構成されたタッチスクリーンなどのヒューマンマシンインターフェース(HMI)であり得る。いくつかの事例では、入力デバイス110は、車両内に組み込まれる。1つまたは複数のスイッチ115は、たとえば、押しボタン、トグルスイッチ、レバー、または所定のコマンドまたは機能に関連付けられた別のタイプの入力デバイスであり得る。1つまたは複数のスイッチ115は、シート120上、車両のダッシュボード上、車両のドア内などに実装され得る。
【0004】
[0004]コントローラ105は、入力デバイス110および/または1つまたは複数のスイッチ115から制御信号を受け取る。制御信号は、電気ハーネスまたは同様の接続を介してコントローラ105に提供される。コントローラ105は、制御信号に基づいて車両モータシステム100内のモータを制御する。たとえば、シート120は、第1のモータ125A、第2のモータ125B、第3のモータ125C、第4のモータ125D、および第5のモータ125Eなどの複数のモータ125を含み得る。図示される例では、第1のモータ125Aは、シート120のヘッドレストを動かす。第2のモータ125Bは、シート120の上部後部を動かす。第3のモータ125Cは、シート120の中央後部を動かす。第4のモータ125Dは、シート120の下部後部を動かす。第5のモータ125Eは、シート120の着座部を動かす。入力デバイス110および/または1つまたは複数のスイッチ115からの制御信号に基づいて、コントローラ105は、複数のモータ125の各モータを制御して、シート120の位置を調整する。コントローラ105は、独立した接続を介して複数のモータ125のおのおのへの電力および位置信号を制御する。このようにして、各モータ125A~125Eは、選択されたモータのみを対象としたコマンド(またはコマンド信号)をコントローラ105から受け取る。たとえば、コントローラ105が、入力デバイス110および/またはスイッチ115から制御信号を受け取って、シート120のヘッドレストを調整する場合、コントローラ105は、第1のモータ125Aのみに電力および/またはコマンド信号を提供する。明らかなように、モータシステム100では、モータ125の制御インテリジェンスは、コントローラ105に集中され、各モータ125は、単一の機能(たとえば、ヘッドレストを動かす)を実行するように事前に設定される。
【発明の概要】
【発明が解決しようとする課題】
【0005】
[0005]システム内の各モータを個別に制御して、制御可能なモータの数を、システムコントローラのサイズ(たとえば、入力/出力端子の数)に制限する。したがって、所与の数のモータを制御するために、複数のコントローラが必要とされ得る。それに加えて、モータに送られるデータパケットは大きいため、各モータのために複数のフレームが必要となる。本明細書で説明される例は、集中コントローラを必要とせずに、スマートモータの動的設定を提供する。スマートモータは、LINバスなどの制御バスを介して通信する。LINバスを介して送られるデータパケットは、実行される操作と、意図される受取部とを詳細に記述した複数のフレームを含む。
【課題を解決するための手段】
【0006】
[0007]1つの例は、制御バス、入力デバイス、および、制御バスを介して入力デバイスに通信可能に結合されるスマートモータを備えるスマートモータシステムを提供する。スマートモータは、制御バスに接続された複数のスマートモータに含まれる第1のスマートモータである。さらに、スマートモータは電子プロセッサを含み、電子プロセッサは、アクションを示すコマンドフレームであって、複数のスマートモータに含まれる各スマートモータはコマンドフレームを受け受け取る、コマンドフレームを入力デバイスから受け取り、アクションを実行し、スマートモータのステータスを要求するデータ要求フレームを入力デバイスから受け取り、入力デバイスへ、データ要求フレームを受け取ることに応じて、スマートモータのステータスを示すデータフレームを送るように構成される。
【0007】
コマンドフレームは、スマートモータのアドレスを含む。
コマンドフレームは、アクションをどのように実行するかを説明する複数のパラメータを含む。
【0008】
データフレームは、スマートモータのアドレスを含む。
電子プロセッサは、データフレームを送った後、スマートモータの第2のステータスを要求する第2のデータ要求フレームを受け取り、スマートモータの第2のステータスを示す第2のデータフレームを、入力デバイスへ送るようにも構成される。
【0009】
さらに、電子プロセッサは、アイドルアクションを示す第2のコマンドフレームを、入力デバイスから受け取り、第2のコマンドフレームに応じて、アクションの実行を停止し、スマートモータの第2のステータスを要求する第2のデータ要求フレームを、入力デバイスから受け取り、入力デバイスへ、データ要求フレームを受け取ることに応じて、スマートモータがアイドルであることを示す第2のデータフレームを送るように構成される。
【0010】
複数のスマートモータは、第2の電子プロセッサを含む第2のスマートモータを含み、第2の電子プロセッサは、入力デバイスから、アクションを示すコマンドフレームを受け取り、コマンドフレームが、第2のスマートモータにアドレス指定されたか否かを判定し、コマンドフレームが、第2のスマートモータにアドレス指定されていないと判定することに応じて、アクションを無視するように構成される。
【0011】
コマンドフレームは、複数のスマートモータのサブセットを示すアドレスを含む。
入力デバイスは、データ要求フレームを、設定された頻度で、定期的に送るように構成される。
【0012】
スマートモータのステータスはエラーを示す。
[0008]別の例は、制御バス、入力デバイス、および、制御バスを介して入力デバイスに通信可能に結合される複数のスマートモータを備えるスマートモータシステムを提供する。各それぞれのスマートモータは電子プロセッサを含み、電子プロセッサは、アクションを示すコマンドフレームを入力デバイスから受け取り、アクションを実行するか否かを判定し、複数のスマートモータのそれぞれのスマートモータのステータスを要求するデータ要求フレームを入力デバイスから受け取り、入力デバイスへ、データ要求フレームを受け取ることに応じて、それぞれのスマートモータのステータスを示すデータフレームを送り、それぞれのスマートモータの第2のステータスを要求する第2のデータ要求フレームを、入力デバイスから受け取り、入力デバイスへ、それぞれのスマートモータの第2のステータスを示す第2のデータフレームを送るように構成される。
【0013】
コマンドフレームは、それぞれのスマートモータのアドレスを含み、電子プロセッサは、アドレスに基づいてアクションを実行するか否かを判定するように構成される。
電子プロセッサは、入力デバイスから、アイドルアクションを示す第2のコマンドフレームを受け取り、第2のコマンドフレームに応じて、アクションの実行を停止し、入力デバイスから、それぞれのスマートモータの第3のステータスを要求する第3のデータ要求フレームを受け取り、入力デバイスへ、第3のデータ要求フレームを受け取ることに応じて、それぞれのスマートモータがアイドルであることを示す第3のデータフレームを送るように構成される。
【0014】
[0009]別の例は、制御バスで通信するための方法を含み、方法は、アクションを示すコマンドフレームを、入力デバイスから受け取るステップと、アクションを実行するステップと、スマートモータのステータスを要求するデータ要求フレームを、入力デバイスから受け取るステップと、入力デバイスへ、データ要求フレームを受け取ることに応じて、スマートモータのステータスを示すデータフレームを送るステップと、入力デバイスを用いて、データ要求フレームを、設定された頻度で送るステップとを備える。
【0015】
方法は、データフレームを送った後、スマートモータの第2のステータスを要求する第2のデータ要求フレームを受け取るステップと、入力デバイスへ、スマートモータの第2のステータスを示す第2のデータフレームを送るステップとをさらに備える。
【0016】
方法は、入力デバイスから、アイドルアクションを示す第2のコマンドフレームを受け取るステップと、第2のコマンドフレームに応じて、アクションを実行することを停止するステップと、入力デバイスから、スマートモータの第2のステータスを要求する第2のデータ要求フレームを受け取るステップと、入力デバイスへ、データ要求フレームを受け取ることに応じて、スマートモータがアイドルであることを示す第2のデータフレームを送るステップとをさらに備える。
【0017】
コマンドフレームは、スマートモータのアドレスを含み、方法は、アドレスに基づいて、アクションを実行するか否かを判定するステップを更に備える。
また別の例は、スマートモータシステムを提供し、スマートモータシステムは、制御バスと、入力デバイスと、電子プロセッサを有するスマートモータとを備え、電子プロセッサは、実行すべきアクションを示すコマンドを受け取り、受け取ったコマンドに関し機能すべきかを判定するように構成される。
【0018】
コマンドは、スマートモータのアドレスを含む。
コマンドは、アクションをどのように実行するかを説明する複数のパラメータを含む。
電子プロセッサは、スマートモータのステータスを要求するデータ要求を受け取るようにさらに構成される。
【0019】
電子プロセッサは、スマートモータのステータスを送るようにさらに構成される。
スマートモータのステータスは、スマートモータのアドレスを含む、スマートモータシステム。
【0020】
さらに別の例は、電子プロセッサと、プロセッサに接続された入力/出力インターフェースと、プロセッサに結合されたメモリとを備えたスマートモータを提供する。メモリは、1つまたは複数のソフトウェア命令を含み、1つまたは複数のソフトウェア命令は、実行すべきアクションを示すコマンドを受け取り、受け取ったコマンドに関し機能すべきかを判定するように電子プロセッサにより実行可能である。
【0021】
コマンドは、スマートモータのアドレスを含む。
コマンドは、アクションをどのように実行するかを説明する複数のパラメータを含む。
メモリは、スマートモータのステータスを要求するデータ要求を受け取るように電子プロセッサにより実行可能である1つまたは複数のソフトウェア命令をさらに含む。
【0022】
メモリは、スマートモータのステータスを送るように電子プロセッサにより実行可能である1つまたは複数のソフトウェア命令をさらに含む。
スマートモータのステータスはスマートモータのアドレスを含む。
【0023】
スマートモータのステータスは、エラーステータス、応答エラーステータス、または、転送成功ステータスをさらに含む。
別の例は、モータと、メモリと、モータおよびメモリに接続された電子プロセッサとを備えたスマートモータを提供する。電子プロセッサは、ハードウェア層と、オペレーティング層と、アプリケーション層とを含むソフトウェアスタックを実行する。ハードウェア層は、モータと電子プロセッサとの間の複数の入力/出力動作を提供する。オペレーティング層は、ハードウェア層とアプリケーション層との間の仲介を提供する。アプリケーション層は、メモリに格納された機能を実行して、ハードウェア層と通信しハードウェア層を制御する。さらに、メモリは1つまたは複数のソフトウェア命令を含み、1つまたは複数のソフトウェア命令は、実行すべきアクションを示すコマンドを受け取り、受け取ったコマンドに関し機能すべきかを判定するように電子プロセッサにより実行される。
【0024】
コマンドは、スマートモータのアドレスを含む。
コマンドは、アクションをどのように実行するかを説明する複数のパラメータを含む。
メモリは、スマートモータのステータスを要求するデータ要求を受け取るように電子プロセッサにより実行される1つまたは複数のソフトウェア命令をさらに含む。
【0025】
メモリは、スマートモータのステータスを送るように電子プロセッサにより実行可能である1つまたは複数のソフトウェア命令をさらに含む。
ステータスは、スマートモータのアドレスを含む。
【0026】
別の例は、制御バスで通信するための方法を提供する。方法は、アクションを示すコマンドを受け取るステップと、受け取ったコマンドに関し機能すべきかを判定してアクションを実行するステップとを備える。
【0027】
方法は、アクションを実行するステップをさらに備える。
方法は、スマートモータのステータスを要求するデータ要求を受け取るステップをさらに備える。
【0028】
方法は、データ要求を受け取ることに応じて、スマートモータのステータスを送るステップをさらに備える。
別の例は、車両内のスマートモータシステムを提供する。スマートモータシステムは、1つまたは複数の入力デバイスと、1つまたは複数の入力デバイスに制御バスを介して接続された複数のスマートモータとを備え、複数のスマートモータの各々は、電子プロセッサを含み、1つまたは複数の入力デバイスからの全てのコマンドは、複数のスマートモータの各々によって受け取られ、各電子プロセッサは、受け取ったコマンドに関し機能すべきかを判定するように構成される。
【0029】
コマンドは、複数のスマートモータのうちの1つのアドレスを含む。
受け取ったコマンドに関し機能すべきかは、アドレスに少なくとも部分的に基づき判定される。
【0030】
コマンドは、アクションをどのように実行するかを説明する複数のパラメータを含む。
1つまたは複数の入力デバイスは、1つまたは複数のスイッチを含む。
複数のスマートモータはシートの動作を制御する。
【0031】
複数のスマートモータは、シートのヘッドレストを制御し動かすための第1のスマートモータを含む。
複数のスマートモータは、シートの上部を制御し動かすための第2のスマートモータを含む。
【0032】
複数のスマートモータは、シートの中央部分を制御し動かすための第3のスマートモータを含む。
複数のスマートモータは、シートの下部を制御し動かすための第4のスマートモータを含む。
【0033】
複数のスマートモータは、シートの着座部を制御し動かすための第5のスマートモータを含む。
複数のスマートモータは、サンルーフ、サイドミラー、バックミラー、トランク、環境制御、または、これらの任意の組み合わせの動作を制御する。
【0034】
別の例は、モータと、メモリと、モータおよびメモリに接続された電子プロセッサと
を備えたスマートモータを提供する。電子プロセッサは、ハードウェア層と、オペレーティング層と、アプリケーション層とを含むソフトウェアスタックを実行する。ハードウェア層は、モータと電子プロセッサとの間の入力/出力動作を提供する。オペレーティング層は、ハードウェア層とアプリケーション層との間の仲介を提供する。アプリケーション層は、メモリに格納された機能を実行して、ハードウェア層と通信しハードウェア層を制御する。さらに、ハードウェア層と、オペレーティング層と、アプリケーション層とは、入力デバイスから受け取った1つまたは複数の信号に基づき、モータの動作を選択的に制御する。
【0035】
メモリは、実行すべきアクションを示すコマンドを受け取り、受け取ったコマンドに関し機能すべきかを判定するように電子プロセッサにより実行可能である1つまたは複数のソフトウェア命令を含む。
【0036】
ハードウェア層は、モータドライバのための入力/出力動作をさらに含む。
ハードウェア層は、電子プロセッサと、モータに接続された電力調整回路との間の入力/出力動作をさらに含む。
【0037】
ハードウェア層は、電子プロセッサと、電子プロセッサに接続された少なくとも1つのセンサとの間の入力/出力動作をさらに含む。
ハードウェア層は、電子プロセッサと、電子プロセッサに接続された少なくとも1つのスイッチとの間の入力/出力動作をさらに含む。
【0038】
ハードウェア層は、電子プロセッサとメモリとの間の入力/出力動作をさらに含む。
また別の例は、モータと、メモリと、モータおよびメモリに接続された電子プロセッサとを備えたスマートモータを提供する。電子プロセッサは、ハードウェア層と、オペレーティング層と、アプリケーション層とを含むソフトウェアスタックを実行する。ハードウェア層は、モータと電子プロセッサとの間の複数の入力/出力動作を提供する。オペレーティング層は、ハードウェア層とアプリケーション層との間の仲介を提供する。アプリケーション層は、メモリに格納された機能を実行して、ハードウェア層と通信しハードウェア層を制御する。メモリは1つまたは複数のソフトウェア命令を含み、1つまたは複数のソフトウェア命令は、実行すべきアクションを示すコマンドを受け取り、受け取ったコマンドに関し機能すべきかを判定するように電子プロセッサにより実行可能である。
【0039】
オペレーティング層は、アプリケーション層による分析のためにハードウェア層によって受け取られたデータを変更する。
オペレーティング層はアプリケーションプログラミングインターフェース入力/出力(API I/O)を含み、API I/Oは、ハードウェア層の1つまたは複数の物理構成要素と、アプリケーション層内のソフトウェアとの間の仲介として機能する。
【0040】
API I/Oは、モータインターフェース、供給制御インターフェース、センサインターフェース、スイッチインターフェース、通信インターフェース、または、これらの任意の組み合わせを含む。
【0041】
オペレーティング層は、アプリケーションプログラミングインターフェース不揮発性メモリ(API NVM)インターフェースを含み、API NVMインターフェースは、メモリと、アプリケーション層のソフトウェアとの間の仲介として機能する。
【0042】
API NVMインターフェースは、電気的に消去可能なプログラマブル読取専用メモリ(EEPROM)APIを含む。
API NVMインターフェースは、1つまたは複数のNVM機能をさらに含む。
【0043】
API NVMインターフェースは、1つまたは複数のEEPROM設定動作をさらに含む。
別の例は、モータと、メモリと、モータおよびメモリに接続された電子プロセッサと
を備えたスマートモータを提供する。電子プロセッサは、ハードウェア層と、オペレーティング層と、アプリケーション層とを含むソフトウェアスタックを実行する。ハードウェア層は、モータと電子プロセッサとの間の複数の入力/出力動作を提供する。オペレーティング層は、ハードウェア層とアプリケーション層との間の仲介を提供する。アプリケーション層は、メモリに格納された機能を実行して、ハードウェア層と通信しハードウェア層を制御する。メモリは1つまたは複数のソフトウェア命令を含み、1つまたは複数のソフトウェア命令は、実行すべきアクションを示すコマンドを受け取り、アクションを選択的に実行し、スマートモータのステータスのための要求を受け取り、モータのステータスを送るように電子プロセッサにより実行可能である。
【0044】
アプリケーション層は、アプリケーション制御モジュール、エラーハンドリングモジュール、駆動制御モジュール、入力/出力制御モジュール、通信制御モジュール、システム監視モジュール、スケジューラモジュール、または、これらの組み合わせをさらに含む。
【0045】
駆動制御モジュールは、モータドライバとして機能する。
アプリケーション制御モジュールは、スマートモータを制御するために使用される、1つまたは複数のプライマリアプリケーションと、サブアプリケーションと、アプリケーションマクロとを含む。
【0046】
アプリケーション制御モジュールは、コマンドをスイッチから受け取り、コマンドを分析し、出力コマンドを駆動制御モジュールに提供するように構成される。
[0010]他の特徴、態様、実施形態、および利点は、詳細な説明および添付の図面を考慮することによって明らかになるであろう。
【図面の簡単な説明】
【0047】
図1】[0011]知られているモータシステムの概略図である。
図2】[0012]いくつかの例による、スマートモータシステムの概略図である。
図3】[0013]いくつかの例による、図2のスマートモータのブロック図である。
図4】[0014]いくつかの例による、図2のスマートモータのアーキテクチャのブロック図である。
図5】[0015]いくつかの例による、図4のハードウェア層のブロック図である。
図6】[0016]いくつかの例による、図4のオペレーティング層のブロック図である。
図7】[0017]いくつかの例による、図4のアプリケーション層のブロック図である。
図8】[0018]いくつかの例による、図3の電子プロセッサによって実行される方法のブロック図である。
図9】[0019]いくつかの例による、図2のスマートモータシステムを介して通信される複数のデータフレームを例示する図である。
図10】[0020]いくつかの例による、書込データコマンドフレームの図である。
図11】[0021]いくつかの例による、読取データ要求コマンドフレームの図である。
図12】[0022]いくつかの例による、読取データコマンドフレームの図である。
図13-1】[0023]いくつかの例による、図2のスマートモータシステムを介して通信される複数のデータフレームのチャートである。
図13-2】[0023]いくつかの例による、図2のスマートモータシステムを介して通信される複数のデータフレームのチャートである。
図14】[0024]いくつかの例による、IDLEコマンドフレームの図である。
図15】[0025]いくつかの例による、図2のスマートモータシステムを介して行われる通信プロトコルの図である。
図16】[0026]いくつかの例による、例示的な書込データコマンドフレームのチャートである。
図17】[0027]例示的な読取データコマンドフレームのチャートである。
図18】[0028]いくつかの例による、スマートモータシステムを実装する車両の平面図である。
【発明を実施するための形態】
【0048】
[0029]1つまたは複数の態様、特徴、および実施形態が、以下の説明および添付の図面において説明および例示される。これらの態様、特徴、および実施形態は、本明細書で提供される特定の詳細に限定されず、様々な手法で修正され得る。さらに、本明細書に説明されていない他の態様、特徴、および実施形態が存在し得る。たとえば、特定の手法で「構成」されたデバイスまたは構造は、少なくともその手法で構成されるが、列挙されていない手法でも構成され得る。さらに、本明細書で説明されるいくつかの事例は、非一時的なコンピュータ可読媒体に格納された命令を実行することによって、説明された機能を実行するように構成された1つまたは複数の電子プロセッサを含み得る。同様に、本明細書で説明される例は、説明される機能を実行するために1つまたは複数の電子プロセッサによって実行可能な命令を記憶する非一時的なコンピュータ可読媒体として実装され得る。本願において使用されるように、「非一時的なコンピュータ可読媒体」は、すべてのコンピュータ可読媒体を含むが、一時的な伝播信号は含まない。したがって、非一時的なコンピュータ可読媒体は、たとえば、ハードディスク、CD-ROM、光記憶デバイス、磁気記憶デバイス、ROM(読取専用メモリ)、RAM(ランダムアクセスメモリ)、レジスタメモリ、プロセッサキャッシュ、他のメモリおよび記憶デバイス、またはそれらの組合せを含み得る。
【0049】
[0030]それに加えて、本明細書で使用される表現および専門用語は、説明の目的のためであり、限定として見なされるべきではない。たとえば、本明細書における「含む」、「含有する」、「備える」、「有する」、およびそれらの変形の使用は、その後に列挙される項目およびその等価物、ならびに追加の項目を包含するように意図される。「接続された」および「結合された」という用語は、広範に使用され、直接的および間接的な接続および結合の両方を包含する。さらに、「接続された」および「結合された」は、物理的または機械的な接続または結合に限定されず、直接的または間接的に関わらず、電気的接続または結合を含むことができる。それに加えて、電子通信および通知は、有線接続、ワイヤレス接続、またはそれらの組合せを使用して実行され得、様々なタイプのネットワーク、通信チャネル、および接続を介して、直接的に、または1つまたは複数の中間デバイスを介して送られ得る。さらに、たとえば、第1および第2、先端および底などの関係を示す用語は、本明細書では、そのようなエンティティまたはアクション間のそのような実際の関係または順序を必ずしも要求または示唆する必要なく、あるエンティティまたはアクションを、別のエンティティまたはアクションから区別するためにのみ使用され得る。
【0050】
[0031]いくつかの事例では、方法ステップは、説明される順序とは異なる順序で実施される。
[0032]上述したように、自動車などの一部の車両は、シートの位置を調整または動かすためにモータを使用し得る。図2は、いくつかの例によるスマートモータシステム200を例示する。スマートモータシステム200は、入力デバイス110、1つまたは複数のスイッチ115、およびシート120を含む。シート120は、第1のスマートモータ210A、第2のスマートモータ210B、第3のスマートモータ210C、第4のスマートモータ210D、および第5のスマートモータ210Eなどの複数のスマートモータ210を含む。第1のスマートモータ210Aは、シート120のヘッドレストを制御し、動かす。第2のスマートモータ210Bは、シート120の上部を制御し、動かす。第3のスマートモータ210Cは、シート120の中央部分を制御し、動かす。第4のスマートモータ210Dは、シート120の下部を制御し、動かす。第5のスマートモータ210Eは、シート120の着座部を制御し、動かす。入力デバイス110、1つまたは複数のスイッチ115、および複数のスマートモータ210のおのおのは、制御バス205を介して通信可能に接続される。制御バス205は、たとえば、CANバス、LINバス、または別の適切な通信バスであり得る。いくつかの事例では、制御バス205は、ワイヤレス接続を使用して実装される。
【0051】
[0033]入力デバイス110および1つまたは複数のスイッチ115によって受け取られる入力(たとえば、コマンド、信号など)は、制御バス205を介して複数のモータ210に提供される。このようにして、入力デバイス110および1つまたは複数のスイッチ115からのすべてのコマンドは、スマートモータシステム200におけるすべてのスマートモータ210によって受け取られる。各スマートモータ210は、以下でより詳細に説明されるように、受け取られたコマンドに基づいて、動作するか否かを判定するように構成された電子プロセッサを含む。
【0052】
[0034]図3は、例示的なスマートモータ210を例示する。スマートモータ210は、電子プロセッサ300(たとえば、電子コントローラ、プログラマブルマイクロプロセッサ、マイクロコントローラ、または他の適切なデバイス)、メモリ305、入力/出力(I/O)インターフェース310、1つまたは複数のセンサ315、電力調整回路320、およびモータ330を含む。モータ330および電子プロセッサ300(電力調整ユニット320を使用する)などのスマートモータ210の構成要素は、電源335から電力を受け取る。スマートモータ210は、制御バス205を介して、入力デバイス110および1つまたは複数のスイッチ115のような、スマートモータシステム200の他の構成要素と通信する。
【0053】
[0035]メモリ305は、たとえばプログラム記憶領域およびデータ記憶領域を含む非一時的なコンピュータ可読媒体である。プログラム記憶領域およびデータ記憶領域は、読取専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)(たとえば、ダイナミックRAM[「DRAM」]、同期DRAM[「SDRAM」]など)、電気的に消去可能なプログラマブル読取専用メモリ(「EEPROM」)、フラッシュメモリ、ハードディスク、SDカード、または他の適切な磁気、光学、物理、または電子メモリデバイスのような異なるタイプのメモリの組合せを含むことができる。電子プロセッサ300は、メモリ305に接続され、(たとえば、実行中)メモリ305のRAMに、(たとえば、ほぼ永続的に)メモリ305のROMに、または別のメモリまたはディスクなどの別の非一時的なコンピュータ可読媒体に格納可能なソフトウェア命令を実行する。スマートモータ210の実装に含まれるソフトウェアは、メモリ305に格納することができる。ソフトウェアは、たとえば、ファームウェア、1つまたは複数のアプリケーション、プログラムデータ、フィルタ、ルール、1つまたは複数のプログラムモジュール、および他の実行可能な命令を含む。電子プロセッサ300は、とりわけ、本明細書で説明される制御プロセスおよび方法に関連する命令を、メモリ305から検索し、実行するように構成される。他の構造では、スマートモータ210は、追加の、より少ない、または異なる構成要素を含む。
【0054】
[0036]I/Oインターフェース310は、電子プロセッサ300に接続され、制御バス205を介して受け取られた制御信号またはコマンドを電子プロセッサ300に提供するように構成され得る。I/Oインターフェース310は、デジタルI/Oインターフェース、アナログI/Oインターフェース、通信インターフェース、および/または他の適切なインターフェースを含み得る。いくつかの例では、I/Oインターフェース310は、I/Oインターフェース310が、1つまたは複数のセンサ315と電子プロセッサ300との間のブリッジとして機能するように、1つまたは複数のセンサ315に接続される。他の例では、1つまたは複数のセンサ315は、電子プロセッサ300に直接接続され得る。
【0055】
[0037]いくつかの事例では、スマートモータ210は、ワイヤレス通信可能である。そのような例では、I/Oインターフェース310は、たとえば、セルラーネットワーク、ロングタームエボリューション(LTE)ネットワーク、5Gネットワーク、Bluetooth(登録商標)ネットワーク、ワイヤレスローカルエリアネットワーク(たとえば、Wi-Fi)、ワイヤレスアクセサリパーソナルエリアネットワーク(PAN)などで通信可能なトランシーバワイヤレス通信インターフェースを含む。それに加えて、制御バス205自体は、データが、入力デバイス110および1つまたは複数のスイッチ115から複数のスマートモータ210にワイヤレスで送られるように、ワイヤレス通信媒体であり得る。
【0056】
[0038]1つまたは複数のセンサ315は、たとえば、温度センサ、ホール効果センサ、バッテリセンサ(たとえば、バッテリ電圧センサおよびバッテリ電流センサ)、位置センサ、逆起電力センサ、モータ電流センサ、および/または他の補助センサを含み得る。温度センサは、スマートモータ210内の温度、モータ330の温度などを示す温度信号を提供し得る。ホール効果センサは、スマートモータ210に関連する位置情報を提供し得る。たとえば、ホール効果センサは、モータ330内に実装された永久磁石システムを監視し得る。永久磁石は、モータ330のロータシャフトに結合され得る。ホール効果センサは、永久磁石の動きを検出する。コントローラ300は、位置情報を受け取り、モータの回転数をカウントしたり、ロータの位置の特定などを行う。バッテリセンサは、電源335からの供給電圧を示すバッテリ信号を提供し得る。位置センサは、シート120の現在位置、モータ330の位置などを示す位置信号を提供し得る。逆起電力センサは、モータ330の速度を示す電圧信号を提供し得る。モータ電流センサは、モータ330を流れる電流を示す電流信号を提供し得る。しかしながら、スマートモータ210およびシート120の様々な特性を感知するために、追加のセンサが実装され得る。1つまたは複数のセンサ315が、スマートモータ210内にあるように例示されているが、電子プロセッサ300は、スマートモータ210とは別の追加のセンサからセンサデータを受け取り得る。そのようなセンサデータは、たとえば制御バス205を介して提供され得る。
【0057】
[0039]電力調整回路320は、たとえば、変圧器、整流器、フィルタ、DC-DCコンバータ、または、電源335から受け取った電力を電子プロセッサ300による使用に適するように変更する他の電力調整構成要素であってもよいし、または、これらを含むことができる。スマートモータ210は、他の電力調整回路、たとえば、モータ330に提供される電力を調整する回路を含み得る。モータ330は、たとえば、ACモータ、DCモータ、サーボモータ、ステッパモータなどであり得る。いくつかの例では、スマートモータ210は、説明および例示された例とは異なる。1つの例では、スマートモータの代わりにスマートアクチュエータが使用される。スマートアクチュエータは、モータ330に加えて、またはモータ330の代わりに、追加のタイプのアクチュエータを含み得る。たとえば、スマートアクチュエータは、電磁アクチュエータ(たとえば、ソレノイド)を含み得る。他の例では、快適機能構成要素が実装される。たとえば、いくつかの事例では、モータ330の代わりに、またはモータ330に加えて、抵抗負荷(たとえば、加熱素子)を使用して、乗客の快適さを向上させるためにシートを加熱する。所望の機能を実装するために、モータ330の代わりに、またはモータ330に加えて、他の構成要素が使用され得る。
【0058】
[0040]スマートモータ210の動作を制御するソフトウェアは、いくつかの層を含むスタック402において編成または構築される。図4は、スマートモータ210のためのソフトウェアスタックが実装されるオペレーティングシステム400を例示する。オペレーティングシステム400は、メモリ(たとえば、メモリ305)に格納され、電子プロセッサ300によって実施または実行され得る。スタック402は、ハードウェア層405、オペレーティング層410、およびアプリケーション層415を含む。ハードウェア層405は、電子プロセッサ300と、スマートモータ210の他の構成要素との、入力層および出力層として機能する。たとえば、ハードウェア層405は、I/Oインターフェース310および/または1つまたは複数のセンサ315から信号を受け取る。それに加えて、ハードウェア層405は、モータ330を駆動するための制御信号を提供する。オペレーティング層410は、ハードウェア層405とアプリケーション層415との間の仲介として機能する。アプリケーション層415は、メモリ305に格納されている機能を実行して、ハードウェア層405の構成要素と通信し、ハードウェア層405の構成要素を制御する。
【0059】
[0041]図5は、いくつかの例によるハードウェア層405のブロック図を例示する。ハードウェア層405は、機能や動作などを表す複数のブロックを含む。たとえば、図5に例示される例示的なハードウェア層405は、電力ブロック500、モータブロック505、センサブロック510、スイッチブロック515、通信ブロック520、およびメモリブロック525を含む。しかしながら、いくつかの例では、ハードウェア層405は、システムの構成要素に基づいて、より多くの、またはより少ないブロックを含み得る。各ブロックは、スマートモータ210の、対応する構成要素に関する入出力動作を表す。たとえば、電力ブロック500は、電子プロセッサ300と電力調整回路320との間の入力/出力動作を表す。電力ブロック500は、とりわけ、電源335から受け取った電力に適用されるフィルタリングに関連する動作、電源335自体に関連する動作などを含み得る。
【0060】
[0042]モータブロック505は、電子プロセッサ300とモータ330との間の入力/出力動作を表す。モータブロック505は、モータ330の制御に関連する動作を含み得る。モータブロック505は、モータドライバのための入力動作および/または出力動作を表す。センサブロック510は、電子プロセッサ300と、1つまたは複数のセンサ315との間の入力/出力動作を表す。たとえば、センサブロック510は、1つまたは複数のセンサ315のおのおのから受け取った信号の解釈に関連する動作を含み得る。スイッチブロック515は、電子プロセッサ300と、1つまたは複数のスイッチ115との間の入力/出力動作を表す。通信ブロック520は、電子プロセッサ300と、I/Oインターフェース310との間の入力/出力動作を表す。メモリブロック525は、メモリ割当てを支援するためなど、電子プロセッサ300とメモリ305との間の入力/出力動作を表す。
【0061】
[0043]オペレーティング層410は、ハードウェア層405とアプリケーション層415との間の仲介として機能する。オペレーティング層は、アプリケーション層415による分析のためにハードウェア層405によって受け取られたデータを変更し得る。図6に例示されるように、オペレーティング層410は、とりわけ、アプリケーションプログラミングインターフェース(API)I/Oインターフェースブロック600およびAPI不揮発性メモリ(NVM)インターフェース605を含み得る。API I/Oインターフェースブロック600は、ハードウェア層405の物理構成要素(電力ブロック500、モータブロック505、センサブロック510、スイッチブロック515、通信ブロック520など)と、(以下でより詳細に説明される)アプリケーション層415のソフトウェアおよびマクロとの間の仲介として機能する。API I/Oインターフェースブロック600は、とりわけ、モータインターフェース610、供給制御インターフェース615、センサインターフェース620、スイッチインターフェース625、および通信インターフェース630を含み得る。しかしながら、API I/Oインターフェースブロック600は、ハードウェア層405とインタラクトするために、必要に応じて追加のインターフェースを含み得る。
【0062】
[0044]API NVMインターフェース605は、(メモリブロック525を介して)メモリ305と、アプリケーション層415のソフトウェアおよびマクロとの間の仲介として機能する。API NVMインターフェース605は、とりわけ、EEPROM API635、NVM機能640、およびEEPROM設定動作645を含む。しかしながら、API NVMインターフェース605は、メモリ305のメモリ割当てを管理するために、必要に応じて、より多くの、またはより少ないブロックを含み得る。
【0063】
[0045]アプリケーション層415は、スマートモータ210の動作に関連する機能、動作、ソフトウェア、マクロなどを含む。アプリケーション層415は、とりわけ、アプリケーション制御モジュール700、エラーハンドラモジュール705、駆動制御モジュール710、I/O制御モジュール715、通信制御モジュール720、システム監視モジュール725、およびスケジューラモジュール730を含む。アプリケーション制御モジュール700は、プライマリアプリケーション、サブアプリケーションの組合せ、および複数のアプリケーションマクロなど、スマートモータ210を制御するために使用される多様なアプリケーションを含み得る。各アプリケーションは、アプリ制御設定プログラムを介して互いに連携して動作し得る。
【0064】
[0046]駆動制御モジュール710は、モータ330の動作に関連する機能、動作、ソフトウェアなどを含む。いくつかの例では、駆動制御モジュール710は、モータドライバとして機能する。1つの事例では、第1のスマートモータ210Aに関して、ハードウェア層405のスイッチブロック515は、スイッチ115の1つからコマンドを受け取り、ヘッドレストが第1の位置になるまで、モータ330を起動させる。アプリケーション制御モジュール700は、スイッチブロック515から(スイッチインターフェース625を介して)コマンドを受け取る。それに加えて、1つまたは複数のセンサ315の位置センサは、位置情報をセンサブロック510に提供する。アプリケーション制御モジュール700は、センサブロック510から(センサインターフェース620を介して)位置情報を受け取る。アプリケーション制御モジュール700は、スイッチブロック515からのコマンドと、センサブロック510からの位置情報とを分析して、ヘッドレストを現在位置から第1の位置に動かすためにスマートモータ210Aのモータ330を、どれだけの時間起動させるかを判定する。次に、アプリケーション制御モジュール700は、出力コマンドおよび/または追加の動作パラメータを、駆動制御モジュール710に提供する。駆動制御モジュール710は、出力コマンドを、モータインターフェース610に提供する。モータインターフェース610は、出力コマンドをモータブロック505に提供し、モータブロック505は、それに応じてモータドライバ325を制御する。
【0065】
[0047]通信制御モジュール720は、通信インターフェース630から情報を受け取り、受け取った情報を処理する。いくつかの例では、通信制御モジュール720は、スマートモータ210およびスマートモータシステム200の構成要素と通信するために必要な通信プロトコルを含む。たとえば、通信制御モジュール720は、制御バス205を介して通信するためのLINスタックを含み得る。I/O制御モジュール715は、センサインターフェース620から情報を受け取り、受け取った情報を処理する。I/O制御モジュール715は、センサデータがどのように分析されるかなど、センサインターフェース620から受け取ったセンサデータに関連する動作およびプログラムを含み得る。
【0066】
[0048]システム監視モジュール725は、アプリケーション制御モジュール700、エラーハンドラモジュール705、駆動制御モジュール710、I/O制御モジュール715、通信制御モジュール720、およびスケジューラモジュール730の状態および動作を監視する。それに加えて、システム監視モジュール725は、対応する下位レベルのインターフェース(たとえば、API I/Oインターフェース600およびAPI NVMインターフェース605)のおのおのを監視する。システム監視モジュール725は、システムブートリリース動作およびシステムランタイム状態(たとえば、スリープモード、障害シャットダウンイベントなど)を制御し得る。
【0067】
[0049]スケジューラモジュール730は、アプリケーション層415内の他のモジュールのタイミングを管理し、アプリケーション層415内の他のモジュールに計算能力を分配する役割を担う。いくつかの事例では、スケジューラモジュール730は、リアルタイムオペレーティングシステム(RTOS)として動作するためにオペレーティングシステム400によって使用される。
【0068】
[0050]エラーハンドラモジュール705は、オペレーティング層410と、アプリケーション層715の他のモジュールとから、発生したエラーまたは警告コードに関連するデータを受け取り、および/または、格納する。エラーおよび警告コードは、スマートモータ210内で発生するエラーまたは異常を取り扱う(または対処する)か否かを判定するために、システム監視モジュール725に提供される。次に、システム監視モジュール725は、エラーを取り扱うためにスマートモータ210の動作を変更するようにアプリケーション層415内の追加モジュールに指示し得る。たとえば、ハードウェア層405のセンサブロック510は、1つまたは複数のセンサ315に含まれる温度センサから温度信号を受け取り得る。温度信号は、オペレーション層405におけるセンサインターフェース620に提供される。センサインターフェース620は、調整された温度信号をアプリケーション層415に提供する前に、何らかの手法で、温度信号を分析または調整し得る。いくつかの事例では、温度信号は、調整なしでアプリケーション層415に提供される。エラーハンドラモジュール705は、調整された温度信号を受け取り、調整された温度信号を、システム監視モジュール725に提供する。システム監視モジュール725は、スマートモータ210内で過熱状態が発生していると判定する。システム監視モジュール725は、スマートモータ210(たとえば、モータ330)の動作を停止するための制御コマンドを駆動制御モジュール710に提供し得る。
【0069】
[0051]スマートモータ210のオペレーティングシステムを説明するために使用される、提供されたブロック、インターフェース、およびモジュールは、単なる例であり、限定するように意図されていない。スマートモータ210のオペレーティングシステムは、スマートモータシステム200内の構成要素に基づいて、より多くの、またはより少ないブロックを含み得る。それに加えて、別個のものとして示されているが、オペレーティングシステムの異なる機能をさらに例示するために、様々なブロック、インターフェース、およびモジュールが組み合わされたり、または分離され得る。モータ330の動作を超えるさらなる構成要素(たとえば、補助構成要素)は、スマートモータ210のオペレーティングシステム内に実装され得る。たとえば、ヒータが、シート120内に実装され得る。入力デバイス110および/または1つまたは複数のスイッチ115からのコマンドは、複数のスマートモータ210のうちの1つに対して、ヒータをオンにするように指示し得る。したがって、ハードウェア層405、オペレーティング層410、およびアプリケーション層415は、ヒータに関連するコマンドを受け取り、コマンドを解釈し、ヒータを制御するための出力を提供するために必要なブロック、インターフェース、およびモジュールを含む。
【0070】
[0052]制御バス205で送られた信号およびコマンドは、複数のスマートモータ210のおのおのによって受け取られる。図8は、複数のスマートモータ210のおのおの内の電子プロセッサ300によって実行される方法800を提供する。ステップ805において、電子プロセッサ300は、制御信号を受け取る。たとえば、入力デバイス110および/または1つまたは複数のスイッチ115は、制御信号を制御バス205に提供する。複数のスマートモータ210のおのおのは、制御バス205で制御信号を受け取る。いくつかの事例では、スマートモータシステム200が、ワイヤレスシステムである場合、入力デバイス110および/または1つまたは複数のスイッチ115は、制御信号をブロードキャストする。
【0071】
[0053]ステップ810において、電子プロセッサ300は、受け取った制御信号に対して、反応するか、または動作するかを判定する。たとえば、制御信号は、「シート120の下部後部を第3の位置に動かす」ことを示すコマンドを含むか、または具現化する。第4のスマートモータ210Dは、シート120の下部後部に関連付けられる。したがって、ステップ815において、第4のスマートモータ210Dの電子プロセッサ300は、受け取った制御信号に含まれる機能を実行するためにモータ330を起動することを決定する。しかしながら、第1のスマートモータ210A、第2のスマートモータ210B、第3のスマートモータ210C、および第5のスマートモータ210Eも、「シート120の下部後部を第3の位置に動かす」ことを示す制御信号を受け取る。これらのモータは、シート120の下部後部に関連付けられていないため、それぞれの電子プロセッサ300は、この制御信号を無視する。
【0072】
[0054]特定の態様では、制御バス205を介した通信は、一連の通信フレーム(たとえば、データパケット、データフレーム)を使用して行われる。1つの例では、入力デバイス110および/または1つまたは複数のスイッチ115は、受け取ったユーザ入力に基づいて、制御バス205を介してデータフレームをブロードキャストする。スマートモータ210のおのおのは、データフレームを受け取り、データフレームによって示されるアクションを実行するか否かを判定する。入力デバイス110、1つまたは複数のスイッチ115、およびスマートモータ210は、書込データ(<WR_Data>)フレーム(たとえば、コマンドフレーム、制御フレーム)、読取データ要求(<RD_Data_Req>)フレーム(たとえば、データ要求フレーム)、および読取データ(<RD_Data>)フレーム(たとえば、応答フレーム)を送ることによって、制御バス205で通信する。書込データフレーム、読取データ要求フレーム、および読取データフレームは、一連の通信フレームとして後続のフレームとして送られる。スマートモータ210に命令するために、入力デバイス110および/または1つまたは複数のスイッチ115は、書込データフレームを送る。任意のスマートモータ210からデータを読み取るために、入力デバイス110および/または1つまたは複数のスイッチ115は、読取データ要求フレームを送る。スマートモータ210は、読取データ要求フレームに読取データフレームで応答する。
【0073】
[0055]データフレームのこのセット(またはサイクル)が一度送られると、後続のデータ読取機能は、読み取られたデータフレームのみを使用して実行され得る。たとえば、入力デバイス110および/または1つまたは複数のスイッチ115が、以前に命令された機能を実行するときのそれぞれのスマートモータ210の動作を監視する場合、入力デバイス110および/または1つまたは複数のスイッチ115は、書込データフレームを送ることなく、読取データ要求フレームを送り、読取データフレームを受け取る。この動作は、入力デバイス110および1つまたは複数のスイッチ115のメモリに格納された、設定された所定の頻度で発生し得る。
【0074】
[0056]図9は、書込データフレーム905、読取データ要求フレーム910、および読取データフレーム915の例を例示する。書込フレーム905は、スマートモータ210のうちの少なくとも1つによって実行されるアクションを示すコマンドである。図9に図示されるように、書込フレーム905は、スマートモータ210のアクション(またはコマンド)を示す6バイトのデータを含む。書込フレーム905は、書込フレーム905に含まれるノードアドレスによって示されるように、単一のスマートモータ210または複数のスマートモータ210による実行のために送られ得る。
【0075】
[0057]図10は、1つの例による書込データフレーム905を例示する。書込データフレーム905は、識別ブロック1000、アドレスブロック1005、コマンドブロック1010、およびデータブロック1015を含む。識別ブロック1000は、提供されるフレームのタイプに対応する識別コードを含む。たとえば、図10に図示される識別コード0x21は、そのフレームが書込データフレームであることを示す。アドレスブロック1005は、どのスマートモータ210がアクションを実行すべきかを示すアドレス(たとえば、ノードアドレス)を含む。アドレスブロック1005は、単一のスマートモータ210、スマートモータ210のグループまたはサブセット、または制御バス205に接続されたすべてのスマートモータ210を示し得る。いくつかの事例では、アドレスブロック1005は、1バイトのデータを含む。いくつかの事例では、アドレスブロック1005の値は、0x01から0x3Fの範囲である。
【0076】
[0058]コマンドブロック1010は、スマートモータ210によって実行されるコマンドを示すデータを含む。いくつかの事例では、コマンドブロック1010は、1バイトのデータを含む。コマンドブロック1010の可能な値は、0x00から0xAFおよび0xB8から0xFFの範囲であり得る。データブロック1015は、コマンドを実行するために使用されるパラメータおよびオプションを示すデータを含む。図10に例示される例示的なデータブロック1015は、4バイトのデータを含むが、データブロック1015は、より多くの、またはより少ないバイトのデータを含み得る。
【0077】
[0059]図9に戻って示すように、例示的な読取データ要求フレーム910は、スマートモータ210のためのアクション(またはコマンド)を示す3バイトのデータを含む。読取データ要求フレーム910は、読取データ要求フレーム910に含まれるノードアドレスによって示されるように、単一のスマートモータ210または複数のスマートモータ210による受け取りのために送られ得る。図11は、1つの例による詳細な読取データ要求フレーム910を提供する。読取データ要求フレーム910は、識別ブロック1100、アドレスブロック1105、コマンドブロック1115、およびサブ選択ブロック1120を含む。識別ブロック1100は、提供されるフレームのタイプに対応する識別コードを含む。たとえば、図11に図示される識別コード0x22は、そのフレームが読取データ要求フレームであることを示す。アドレスブロック1105は、どのスマートモータ210がアクションを実行すべきかを示すアドレスを含む。いくつかの事例では、アドレスブロック1105は、1バイトのデータを含む。いくつかの事例では、アドレスブロック1105の値は、0x01から0x3Fの範囲である。
【0078】
[0060]コマンドブロック1110は、スマートモータ210によって実行されるコマンドを示すデータを含む。いくつかの事例では、コマンドブロック1110は、1バイトのデータを含む。コマンドブロック1110の可能な値は、0x00から0xAFおよび0xB8から0xFFの範囲であり得る。サブ選択ブロック1120は、連鎖したデータ選択のためのサブインデクスを提供する。いくつかの事例では、読取データ要求フレームは、データバイトD4~D8も含む。読取データ要求フレーム910は、後続のデータ読取コマンドのために、入力デバイス110および/または1つまたは複数のスイッチ115を準備する。
【0079】
[0061]図9に戻って示すように、例示的な読取データフレーム915は、7バイトのデータを含む。書込データフレーム905および読取データ要求フレーム910は、複数のスマートモータ210にアドレス指定され得るが、読取データフレーム915は、単一のスマートモータ210にアドレス指定される。図12は、1つの例による詳細な読取データフレーム915を提供する。読取データフレーム915は、識別ブロック1200、応答アドレスブロック1205、応答コマンドブロック1210、データブロック1215、リターンサブ選択ブロック1220、およびステータスブロック1225を含む。識別ブロック1200は、提供されるフレームのタイプに対応する識別コードを含む。たとえば、図12に図示される識別コード0x23は、そのフレームが読取データ要求フレームであることを示す。応答アドレスブロック1205は、どのスマートモータ210が読取データフレーム915(たとえば、リターンノードアドレス)を送っているのかを示し、コマンドが実行された位置を再チェックするために、入力デバイス110および/または1つまたは複数のスイッチ115によって実装される。いくつかの実施では、応答が肯定的な応答である場合(たとえば、書込データフレーム905によって示されるコマンドの実行中にエラーが発生していない場合)、応答アドレスブロックを作成するためにノードアドレスに値0x40が追加される。応答が否定的な応答である(たとえば、コマンドの実行中にエラーが発生した)場合、値0x40は加算されない。応答アドレスブロック1205の可能な値は、0x01~0x3Fの範囲である。
【0080】
[0062]応答コマンドブロック1210は、(応答アドレスブロック1210によって示される)それぞれのスマートモータ210によって実行されるアクションを示す。応答コマンドブロック1210の可能な値は、0x00から0xAFおよび0xB8から0xFFの範囲である。データブロック1215は、コマンドの実行中に使用されるパラメータおよびオプションを示すデータを含む。図12に例示される例示的なデータブロック1215は、4バイトのデータを含むが、データブロック1215は、より多くの、またはより少ないバイトのデータを含み得る。図12の例では、データブロック1215はまた、連鎖されたデータ選択のためのサブインデクスとして機能するリターンサブセレクタブロック1220を含む。ステータスブロック1225は、とりわけ、「エラー」ステータス、「応答エラー」ステータス、および「転送成功」ステータスなど、それぞれのスマートモータ210のステータスを示すデータを含む。
【0081】
[0063]制御バス205を介して送られるデータフレームの追加の例が、図13のチャート1300および凡例1310に例示される。チャート1300は、データフレームにおける各バイトの内容を例示するヘッダ1305を含む。たとえば、書込データフレーム905は、フレームID0x21、パリティビット0x01、およびPID値0x61を含む。書込データフレーム905は、ノードアドレスおよびモータコマンドを含む6バイトのデータを含む。「パブリッシャ」列および「サブスクライバ」列に示されているように、書込データフレーム905は、マスタデバイス(たとえば、入力デバイス110および/または1つまたは複数のスイッチ115)によってパブリッシュされ(または、送られ)、スレーブデバイス(たとえば、1つまたは複数のスマートモータ210)によってサブスクライブされる(または、受け取られる)。
【0082】
[0064]チャート1300において、読取データ要求フレーム910は、フレームID 0x22、パリティビット0x11、およびPID値0xE2を含む。読取データ要求フレーム910は、ノードアドレスおよびモータコマンドを含む3バイトのデータを含む。「パブリッシャ」列および「サブスクライバ」列に示されているように、読取データ要求フレーム910は、マスタデバイス(たとえば、入力デバイス110および/または1つまたは複数のスイッチ115)によってパブリッシュされ(または、送られ)、スレーブデバイス(たとえば、1つまたは複数のスマートモータ210)によってサブスクライブされる(または、受け取られる)。
【0083】
[0065]チャート1300では、読取データフレーム915は、フレームID 0x23、パリティビット0x10、およびPID値0xA3を含む。読取データ要求フレーム915は、応答ノードアドレス、応答モータコマンド、およびデバイスステータスを含む7バイトのデータを含む。「パブリッシャ」列および「サブスクライバ」列に示されているように、書込データフレーム915は、スレーブデバイス(たとえば、スマートモータ210)によってパブリッシュされ(または、送られ)、マスタデバイス(たとえば、入力デバイス110および/または1つまたは複数のスイッチ115)によってサブスクライブされる(または、受け取られる)。
【0084】
[0066]通信は、スリープコマンド(<GoToSleep_Cmd>)1320などの追加のタイプのコマンドを含み得る。スリープコマンドは、複数のスマートモータ210のおのおのがスリープコマンドを受け取るように、制御バス205でブロードキャストされ得る。通信はまた、各電子プロセッサ300をリセットする動作に関連するコントローラリセットコマンド(<ECUReset_Cmd>)1330および制御リセット応答(<ECUReset_Response>)1340を含み得る。チャート1300に提供されていない追加の動作も、スマートモータシステム200内のデバイスによって実行され得る。たとえば、マスタデバイス(たとえば、入力デバイス110、1つまたは複数のスイッチ115)は、一連のスマートモータ210を遮断または停止するコマンドをブロードキャストし得る。マスタデバイスは、スマートモータ210によって実行される緊急プロトコルをブロードキャストし得る。
【0085】
[0067]いくつかの事例では、補助出力制御のためのコマンドが、スマートモータシステム200によって実装され得る。たとえば、補助出力制御コマンドは、複数の補助出力を制御するためにマスタデバイスによって制御される機能を含む。そのようなコマンドは、たとえば、オン状態とオフ状態とを切り替える出力の制御、シートヒータシステムの操作、診断機能の実行、および他の補助出力を含む。これらの出力は、図18に関して以下でより詳細に説明される。
【0086】
[0068]いくつかの事例では、複数のスマートモータ210は、ローカル(たとえば、デバイス上の)電力制限機能を有するように構成される。各スマートモータ210は、自身の電流の流れを制御するために使用されるパルス幅変調(PWM)信号を調整し得る。それに加えて、各スマートモータ210は、流れる電流が電流閾値を超えた場合に、それ自体を停止させ得る。いくつかの実装では、各スマートモータ210は、ステータスブロック1225に、電流の流れを含める。
【0087】
[0069]図14は、制御バス205を介して送られる例示的なアイドルコマンド1400を提供する。アイドルコマンド1400は、単一バイトのデータを含み、制御バス205上の複数のスマートモータ210のすべてにブロードキャストされる。いくつかの事例では、アイドルコマンド1400は、20ミリ秒などの設定された頻度で繰り返し送られる。アイドルコマンド1400は、他の制御フレームが必要とされない場合に、制御バス205におけるトラフィックを最小限に抑える。アイドルコマンドの機能は、識別コードに基づいて変動し得る。たとえば、アイドルコマンド1400は、指定されたスマートモータ210によって実行される一部またはすべての機能をクリアし得、指定されたスマートモータ210に、機能の実行を停止するように指示し得、スマートモータ210に、低電力モードに入るように指示し得るなどを行う。アイドルコマンド1400は、制御バス205に接続されたすべてのスマートモータ210に送られるので、アイドルコマンド1400は、各スマートモータ210が何らかのデータを受け取り続け、指示がない限りスリープにならないことを保証する。
【0088】
[0070]図15は、マスタデバイス1505(たとえば、入力デバイス110、1つまたは複数のスイッチ115)と、スレーブデバイス1510(たとえば、スマートモータ210)との間で実行される例示的な通信サイクル1500を提供する。通信サイクル1500では、スレーブデバイス1510は、スマートモータ210がモータ330を駆動するように指示される「モーメンタリ制御」コマンドを実行している。たとえば、モータ330は、1つまたは複数のスイッチ115のうちの1つが起動している間、駆動される。
【0089】
[0071]ステップ15-1において、マスタデバイス1505は、書込データフレーム(書込データフレーム905など)をスレーブデバイス1510へ送る。書込データフレームは、スレーブデバイス1510が(たとえば、モータ330を時計回りまたは反時計回りに動作させる)駆動動作を実行するように指示されていることを示すデータ値0x01を含む。ステップ15-2において、マスタデバイス1505は、読取データ要求フレーム(読取データ要求910など)をスレーブデバイス1510へ送る。ステップ15-3において、読取データ要求フレームに応答して、スレーブデバイス1510は、読取データフレーム(読取データフレーム915など)をマスタデバイス1505へ送る。読取データフレームは、スレーブデバイス1510がモーメンタリ制御コマンドを実行していることを示す。いくつかの事例では、マスタデバイス1505およびスレーブデバイス1510は、モーメンタリ制御動作の間、ステップ15-2および15-3を繰り返し続ける。
【0090】
[0072]ステップ15-4において、マスタデバイス1505は、第2の書込データフレームをスレーブデバイス1510へ送る。第2の書込データフレームは、スレーブデバイス1510が駆動動作の実行を停止する(または、モータ330の駆動を停止する)ように命令されていることを示すデータ値0x00を含む。ステップ15-5において、マスタデバイス1505は、読取データ要求フレームをスレーブデバイス1510へ送る。読取データ要求フレームに応じて、ステップ15-6において、スレーブデバイス1510は、読取データフレームをマスタデバイス1505へ送る。読取データフレームは、スレーブデバイス1510がモータ330の動作を停止した(たとえば、モーメンタリ制御コマンドをもはや実行していない)ことを示す。
【0091】
[0073]図16は、モーメンタリ制御動作(たとえば、入力キー起動機能)のために入力デバイス110および/または1つまたは複数のスイッチ115によって送られる例示的な制御フレーム1600を例示する。制御フレーム1600は、講じられるアクションを定義し、機能を実行するためのデータ制限またはパラメータを定義する。たとえば、制御フレーム1600が、キー#1が起動されたことを示す場合、モータ330は、時計回り方向に駆動される。制御フレーム1600が、キー#2が起動されたことを示す場合、モータ330は、反時計回り方向に駆動される。図17は、モーメンタリ制御動作を実行するスマートモータ210によって送られる例示的な応答フレーム1700を例示する。応答フレーム1700は、スマートモータ210の動作状態および停止状態を示すデータを含む。
【0092】
[0074]いくつかの事例では、動作の実行中、スマートモータ210は、読取データ要求フレームの受け取り失敗を検出する。スマートモータ210が、所定のタイムアウト期間内に読取データ要求フレームを受け取ることに失敗した場合、スマートモータ210は、動作の実行を中止し得る。
【0093】
[0075]上記で説明されたメッセージングプロトコルと、アプリケーション層415におけるソフトウェアによって提供されるローカルインテリジェンスとは、とりわけ、複数のアプリケーションのために単一のスマートモータアーキテクチャを使用する機能を含む、図1に図示されるシステムに対する利点を提供する。たとえば、同じスマートモータのプログラムされた異なるバージョンが、シート内で異なる目的のために使用され得る。たとえば、1つのスマートモータが、ヘッドレストを制御するようにプログラムされ得るが、構造的に同一または類似のモータを、異なるまたは追加のプログラミングを用いて、腰サポートを制御するために使用され得る。したがって、異なるアプリケーションごとに、ハードウェア固有のモータは必要とされない。所望される機能を実行するために、同じベーススマートモータを使用することができ、ソフトウェアを変更するだけで済む。それに加えて、集中管理も必要ない。メッセージはバスで送られ得、各スマートモータは、自身宛てのメッセージを解釈し、他のスマートモータまたはデバイス宛てのメッセージを無視するのに十分なインテリジェンスを有する。
【0094】
[0076]スマートモータシステム200を主にシート120に関連して説明してきたが、スマートモータシステム200は、追加のモータ用途に対応するためにさらに拡張され得る。図18は、複数のスマートモータを装備した車両を提供する車両スマートモータシステム1800を提供する。たとえば、車両スマートモータシステム1800は、シートの角度を調整するように構成されたスマートリクライニングモータと、シートの位置を前方および/または後方に調整するように構成されたスマートシートスライダモータと、シートの高さを調整するように構成されたスマートシート高さ調整モータとを含む、複数のスマートモータ1805を含む。複数のスマートモータ1805は、シートの前部および後部を傾斜させるための前部および後部スマートシート高さ調整モータと、シート腰サポートを調整するためのスマート腰調整モータと、ヘッドレストの高さおよび/または傾きを調整するためのスマートヘッドレスト調整モータと、シートのサイドサポートを調整するスマートサイドボルスタサポートモータとを含む。
【0095】
[0077]シートスマートモータに加えて、車両スマートモータシステム1800は、車両のサンルーフ、サイドミラー、バックミラー、およびトランクを制御するためのスマートモータを含み得る。いくつかの事例では、スマートモータは、環境制御(たとえば、車両の加熱および冷却)など、車両スマートモータシステム1800の追加の補助構成要素を制御することができる。主に車両に関して説明されたが、複数のスマートモータ210は、限定されないが、航空機、バス、列車など、モータが使用される他のシステムおよび環境でも使用され得る。
【0096】
[0078]したがって、本明細書において説明される態様、特徴、および実施形態は、とりわけ、スマートモータおよびその制御のための方法を提供する。いくつかの例の様々な特徴および利点は、特許請求の範囲に記載されている。
【手続補正2】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
スマートモータシステムであって、
制御バスと、
入力デバイスと、
前記制御バスを介して前記入力デバイスに通信可能に結合されたスマートモータと
を備え、前記スマートモータは、前記制御バスに接続された複数のスマートモータに含まれる第1のスマートモータであり、前記スマートモータは電子プロセッサを含み、前記電子プロセッサは、
前記入力デバイスから、アクションを示すコマンドフレームであって、前記複数のスマートモータに含まれる各スマートモータは前記コマンドフレームを受け取る、前記コマンドフレームを受け取り、
前記アクションを実行し、
前記入力デバイスから、前記スマートモータのステータスを要求するデータ要求フレームを受け取り、
前記入力デバイスへ、前記データ要求フレームを受け取ることに応じて、前記スマートモータの前記ステータスを示すデータフレームを送る
ように構成された、スマートモータシステム。
【請求項2】
請求項1に記載のスマートモータシステムであって、前記コマンドフレームは、前記スマートモータのアドレスを含む、スマートモータシステム。
【請求項3】
請求項1に記載のスマートモータシステムであって、前記コマンドフレームは、前記アクションをどのように実行するかを説明する複数のパラメータを含む、スマートモータシステム。
【請求項4】
請求項1に記載のスマートモータシステムであって、前記データフレームは、前記スマートモータのアドレスを含む、スマートモータシステム。
【請求項5】
請求項1に記載のスマートモータシステムであって、前記電子プロセッサは、
前記データフレームを送った後、前記スマートモータの第2のステータスを要求する第2のデータ要求フレームを受け取り、
前記スマートモータの前記第2のステータスを示す第2のデータフレームを、前記入力デバイスへ送る
ように構成された、スマートモータシステム。
【請求項6】
請求項1に記載のスマートモータシステムであって、前記電子プロセッサは、
アイドルアクションを示す第2のコマンドフレームを、前記入力デバイスから受け取り、
前記第2のコマンドフレームに応じて、前記アクションの実行を停止し、
前記スマートモータの第2のステータスを要求する第2のデータ要求フレームを、前記入力デバイスから受け取り、
前記入力デバイスへ、前記データ要求フレームを受け取ることに応じて、前記スマートモータがアイドルであることを示す第2のデータフレームを送る
ように構成された、スマートモータシステム。
【請求項7】
請求項1に記載のスマートモータシステムであって、前記複数のスマートモータは、第2の電子プロセッサを含む第2のスマートモータを含み、前記第2の電子プロセッサは、
前記入力デバイスから、前記アクションを示す前記コマンドフレームを受け取り、
前記コマンドフレームが、前記第2のスマートモータにアドレス指定されたか否かを判定し、
前記コマンドフレームが、前記第2のスマートモータにアドレス指定されていないと判定することに応じて、前記アクションを無視する
ように構成された、スマートモータシステム。
【請求項8】
請求項1に記載のスマートモータシステムであって、前記コマンドフレームは、前記複数のスマートモータのサブセットを示すアドレスを含む、スマートモータシステム。
【請求項9】
請求項1に記載のスマートモータシステムであって、前記入力デバイスは、前記データ要求フレームを、設定された頻度で、定期的に送るように構成された、スマートモータシステム。
【請求項10】
請求項1に記載のスマートモータシステムであって、前記スマートモータの前記ステータスはエラーを示す、スマートモータシステム。
【請求項11】
スマートモータシステムであって、
制御バスと、
入力デバイスと、
前記制御バスを介して前記入力デバイスに通信可能に結合された複数のスマートモータと
を備え、各それぞれのスマートモータは電子プロセッサを含み、前記電子プロセッサは、
前記入力デバイスから、アクションを示すコマンドフレームを受け取り、
前記アクションを実行するか否かを判定し、
前記複数のスマートモータのそれぞれのスマートモータのステータスを要求するデータ要求フレームを、前記入力デバイスから受け取り、
前記入力デバイスへ、前記データ要求フレームを受け取ることに応じて、前記それぞれのスマートモータの前記ステータスを示すデータフレームを送り、
前記それぞれのスマートモータの第2のステータスを要求する第2のデータ要求フレームを、前記入力デバイスから受け取り、
前記入力デバイスへ、前記それぞれのスマートモータの前記第2のステータスを示す第2のデータフレームを送る
ように構成された、スマートモータシステム。
【請求項12】
請求項11に記載のスマートモータシステムであって、前記コマンドフレームは、前記それぞれのスマートモータのアドレスを含み、前記電子プロセッサは、前記アドレスに基づいて前記アクションを実行するか否かを判定するように構成された、スマートモータシステム。
【請求項13】
請求項11に記載のスマートモータシステムであって、前記電子プロセッサは、
前記入力デバイスから、アイドルアクションを示す第2のコマンドフレームを受け取り、
前記第2のコマンドフレームに応じて、前記アクションの実行を停止し、
前記入力デバイスから、前記それぞれのスマートモータの第3のステータスを要求する第3のデータ要求フレームを受け取り、
前記入力デバイスへ、前記第3のデータ要求フレームを受け取ることに応じて、前記それぞれのスマートモータがアイドルであることを示す第3のデータフレームを送る
ように構成された、スマートモータシステム。
【請求項14】
制御バスで通信するための方法であって、
入力デバイスから、アクションを示すコマンドフレームを受け取るステップと、
前記アクションを実行するステップと、
前記入力デバイスから、スマートモータのステータスを要求するデータ要求フレームを受け取るステップと、
前記入力デバイスへ、前記データ要求フレームを受け取ることに応じて、前記スマートモータの前記ステータスを示すデータフレームを送るステップと、
前記入力デバイスを用いて、前記データ要求フレームを、設定された頻度で送るステップと
を備えた方法。
【請求項15】
請求項14に記載の方法であって、
前記データフレームを送った後、前記スマートモータの第2のステータスを要求する第2のデータ要求フレームを受け取るステップと、
前記入力デバイスへ、前記スマートモータの前記第2のステータスを示す第2のデータフレームを送るステップと
をさらに備えた方法。
【請求項16】
請求項14に記載の方法であって、
前記入力デバイスから、アイドルアクションを示す第2のコマンドフレームを受け取るステップと、
前記第2のコマンドフレームに応じて、前記アクションを実行することを停止するステップと、
前記入力デバイスから、前記スマートモータの第2のステータスを要求する第2のデータ要求フレームを受け取るステップと、
前記入力デバイスへ、前記データ要求フレームを受け取ることに応じて、前記スマートモータがアイドルであることを示す第2のデータフレームを送るステップと
をさらに備えた方法。
【請求項17】
請求項14に記載の方法であって、前記コマンドフレームは、前記スマートモータのアドレスを含み、前記方法は、
前記アドレスに基づいて、前記アクションを実行するか否かを判定するステップ
を更に備えた、方法。
【国際調査報告】