(57)【要約】【課題】ユーザが所定の制御処理以外の制御処理をモータ制御システム上で実現する。【解決手段】一つの実施形態によれば、モータ制御システムは、主制御部、モータ制御部、調停回路を含む。主制御部は、モータ制御プログラムを格納するコードメモリと、システム全体を統括制御する主制御コアとを有する。モータ制御部は、コードメモリから転送されるモータ制御プログラムを格納する第１メモリと、第１メモリに格納されたモータ制御プログラムを読み出して、モータ制御プログラムに基づいてモータの駆動制御を実行するモータ制御コアとを有する。調停回路は、主制御部で実行されるジョブとモータ制御部で実行されるジョブの優先順位を判定する。【選択図】図１
2019153201.tif 000002
【特許請求の範囲】
【請求項１】
モータ制御プログラムを格納するコードメモリと、システム全体を統括制御する主制御コアとを有する主制御部と、
前記コードメモリから転送される前記モータ制御プログラムを格納する第１メモリと、前記第１メモリに格納された前記モータ制御プログラムを読み出して、前記モータ制御プログラムに基づいてモータの駆動制御を実行するモータ制御コアとを有するモータ制御部と、
前記主制御部で実行されるジョブと前記モータ制御部で実行されるジョブの優先順位を判定する調停回路と、
を具備することを特徴とするモータ制御システム。
【請求項２】
前記調停回路は、前記主制御部の主バスと前記モータ制御部のモータ制御バスに接続され、
前記コードメモリと前記主制御コアは、前記主バスを介して接続され、
前記モータ制御コアは前記モータ制御バスに接続され、
前記第１メモリは前記モータ制御バスに接続されず、前記第１メモリに格納されている前記モータ制御プログラムは外部に読み出すことができない
ことを特徴とする請求項１に記載のモータ制御システム。
【請求項３】
前記主制御部は、暗号化回路と前記コードメモリに設けられるセキュリティエリアを更に有し、
前記主制御部と前記モータ制御部の間にデコーダを更に有し、
前記暗号化回路は、前記モータ制御プログラムを暗号化し、
前記セキュリティエリアは、暗号化された前記モータ制御プログラムを格納し、
前記デコーダは、前記セキュリティエリアに格納されている暗号化された前記モータ制御プログラムを入力し、復号して復号化された前記モータ制御プログラムを前記第１メモリへ転送する
ことを特徴とする請求項２に記載のモータ制御システム。
【請求項４】
モータ制御プログラムと通信制御プログラムを格納するコードメモリと、システム全体を統括制御する主制御コアとを有する主制御部と、
前記コードメモリから転送される前記モータ制御プログラムを格納する第１メモリと、前記第１メモリに格納された前記モータ制御プログラムを読み出して、前記モータ制御プログラムに基づいてモータの駆動制御を実行するモータ制御コアとを有するモータ制御部と、
前記コードメモリから転送される前記通信制御プログラムを格納する第２メモリと、前記第２メモリに格納された前記通信制御プログラムを読み出して、前記通信制御プログラムに基づいて送受信を実行する通信制御コアとを有する通信制御部と、
前記主制御部で実行されるジョブ、前記モータ制御部で実行されるジョブ、及び前記通信制御部で実行されるジョブの優先順位を判定する調停回路と、
を具備することを特徴とするモータ制御システム。
【請求項５】
前記調停回路は、前記主制御部の主バス、前記モータ制御部のモータ制御バス、及び前記通信制御部の通信制御バスに接続され、
前記コードメモリと前記主制御コアは、前記主バスを介して接続され、
前記モータ制御コアは前記モータ制御バスに接続され、
前記第１メモリは前記モータ制御バスに接続されず、前記第１メモリに格納されている前記モータ制御プログラムは外部に読み出すことができず、
前記通信制御コアは前記通信制御バスに接続され、
前記第２のメモリは前記通信制御バスに接続されず、前記第２のメモリに格納されている前記通信制御プログラムは外部に読み出すことができない
ことを特徴とする請求項４に記載のモータ制御システム。
【請求項６】
前記モータ制御プログラムは、センサレス制御、モータ位置推定制御、デッドタイム補償制御、モータ電流取得制御を含む
ことを特徴とする請求項１乃至５のいずれか１項に記載のモータ制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、モータ制御システムに関する。
【背景技術】
【０００２】
近年、モータ制御システムでは、モータ制御処理に加えて通信制御等のその他複数の制御処理が要求されている。複数の制御処理に対応するために、例えばコプロセッサ（補助プロセッサ）が複数設けられたマルチコアプロセッサがモータ制御システムに用いられる。
【０００３】
コプロセッサは、内蔵メモリ、例えばＲＯＭ（Read Only Memory）に予め格納されたプログラムを用いて所定の制御処理を実行する。このため、モータ制御システムを使用する使用者やモータ制御システムを実装する製造者等のユーザが、所定の制御処理以外の制御処理をモータ制御システム上で実現することができないという問題点がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−３４６６７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、ユーザが所定の制御処理以外の制御処理を実現することができるモータ制御システムを提供する。
【課題を解決するための手段】
【０００６】
一つの実施形態によれば、モータ制御システムは、主制御部、モータ制御部、調停回路を含む。主制御部は、モータ制御プログラムを格納するコードメモリと、システム全体を統括制御する主制御コアとを有する。モータ制御部は、コードメモリから転送されるモータ制御プログラムを格納する第１メモリと、第１メモリに格納されたモータ制御プログラムを読み出して、モータ制御プログラムに基づいてモータの駆動制御を実行するモータ制御コアとを有する。調停回路は、主制御部、モータ制御部などの複数デバイスが共通バスを使用して、他デバイスをアクセスするときの使用権を割り当てる。
【図面の簡単な説明】
【０００７】
【図１】第１の実施形態に係るモータ制御システムを示す図である。
【図２】第１の実施形態に係るモータ制御プログラムを格納する動作を示すフローチャート。
【図３】第１の実施形態に係るモータ制御プログラム内容を示す図である。
【図４】第１の実施形態に係るモータ制御システムの動作を示すフローチャート。
【図５】第２の実施形態に係るモータ制御システムを示す図である。
【図６】第２の実施形態に係るモータ制御プログラムを格納する動作を示すフローチャート。
【図７】第３の実施形態に係るモータ制御システムを示す図である。
【図８】第３の実施形態に係る通信制御プログラムを格納する動作を示すフローチャート。
【図９】第３の実施形態に係るモータ制御システムの動作を示すフローチャート。
【発明を実施するための形態】
【０００８】
以下本発明の実施形態について図面を参照しながら説明する。
【０００９】
（第１の実施形態）
まず、第１の実施形態に係るモータ制御システムについて、図面を参照して説明する。図１はモータ制御システムを示す図である。
【００１０】
本実施形態では、ユーザによるモータ制御プログラムの書き込みができるコードメモリを主制御部に設け、コードメモリに格納されたユーザ独自のモータ制御プログラムがモータ制御部のメモリに転送される。
【００１１】
図１に示すように、モータ制御システム１００は、主制御部１、モータ制御部２、調停回路４、モータ７、センサ８、インバータ９、ＡＤコンバータ１０を含む。モータ制御システム１００は、民生用機器、産業用機器に搭載され、例えば、冷蔵庫やエアコンなどの家電機器、サービスロボットや介護ロボットなどのロボティックス、ＦＡ（Factory Automation）などに適用される。
【００１２】
主制御部１は、モータ制御システム１００を統括する。主制御部１は、主バス５、主制御コア１１、入出力部１２、コードメモリ１３、制御回路１４、ＲＡＭ（Random Access Memory）１５、ＲＯＭ１６を含む。
【００１３】
主バス５は、調停回路４に接続される。主制御部１に設けられる主制御コア１１、入出力部１２、コードメモリ１３、制御回路１４、ＲＡＭ１５、及びＲＯＭ１６は、主バス５を介して接続される。
【００１４】
主制御コア１１は、モータ制御システム１００及び主制御部１を統括制御する。主制御コア１１はデジタル信号処理を実行するコアであり、ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、マイクロコントローラ等と同様な役割を担う。
【００１５】
モータ制御システム１００の内部の各種情報は入出力部１２を介して外部に出力され、外部の各種情報は入出力部１２を介して主制御部１に入力される。
【００１６】
コードメモリ１３は、モータ制御プログラム（モータ制御アルゴリズム）を格納する不揮発性メモリである。コードメモリ１３は、入出力部１２を介して、ユーザが所有する独自のモータ制御プログラムなどを入力して格納したり、工場出荷時に直接格納する。ユーザは、モータ制御システムを使用する使用者やモータ制御システムを実装する製造者等を含む。コードメモリ１３は、主制御コア１１の指示に基づいて主制御部１のＲＯＭ１６或いはＲＡＭ１５に記憶されているモータ制御プログラムを入力し、格納する。
【００１７】
制御回路１４は、主制御コア１１の指示に基づいて、ＤＭＡ（Direct Memory Access）転送を含む各種制御を高速に実行する。ＲＯＭ１６、ＲＡＭ１５は、主制御コア１１の指示に基づいて、各種情報を入力し、格納する。
【００１８】
モータ制御部２は、モータ制御バス６、モータ制御コア２１、制御回路２２、ＲＡＭ２３、ＲＡＭ２４を含む。モータ制御部２は、モータ７の駆動制御を行う。モータ制御部２に設けられるモータ制御コア２１、制御回路２２は、モータ制御バス６を介して接続される。モータ制御バス６は、調停回路４に接続される。ＲＡＭ２３、ＲＡＭ２４は、モータ制御バス６に接続されていない。このため、ＲＡＭ２３、ＲＡＭ２４に格納されている情報は、モータ制御バス６を介して読み出すことができない。
【００１９】
モータ７は、例えば３相モータである。センサ８は、モータ７の周囲に配置され、モータの位置情報、動作状況、周囲環境等を検出する。インバータ９は、３相ＰＷＭ出力信号を入力し、３相ＰＷＭ出力信号に基づいてモータ７を回転制御する信号をモータ７へ出力する。モータ７は、インバータ９から出力される信号に基づいて動作する。
【００２０】
ＡＤコンバータ１０は、ＡＤＣ（Analog to Digital Converter）とも呼称される。ＡＤコンバータ１０は、モータ７のコイルに流れる電流（アナログ値）を検出し、アナログ・デジタル変換処理して電流検出を行う。
【００２１】
モータ制御コア２１はデジタル信号処理を実行するコアであり、モータ７の駆動制御を行う。モータ制御コア２１は、センサ８から出力されるセンサ出力情報を入力し、ＡＤコンバータ１０から出力される電流検出情報を入力する。モータ制御コア２１は、例えばロータ位置検出、モータ７の周囲温度の制御、速度制御、電流制御、相変換、座標変換、逆位相変換、３相ＰＷＭ（Pulse Width Modulation）出力等の制御を行う。モータ制御コア２１は、３相ＰＷＭ出力をインバータ９へ出力する。
【００２２】
制御回路２２は、モータ制御コア２１の指示に基づいて、モータ制御コア２１で実行される以外の転送処理を含む各種制御を実行する。
【００２３】
ＲＡＭ２３は、モータ７の駆動制御用のプログラム（アルゴリズム）を格納する命令用メモリである。ＲＡＭ２３は、例えばコードメモリ１３に格納されたユーザ独自のモータ制御プログラムを転送信号Ｓｔｒｎｓ１として入力し、格納する。モータ制御コア２１は、モータ７の駆動制御のときに、例えばＲＡＭ２３に格納されたユーザ独自のモータ制御プログラムを読み出して、ユーザ独自のモータ制御プログラムに基づいてモータ７の駆動制御を実行する。なお、ＲＯＭ１６或いはＲＡＭ１５に予め格納されている通常のモータ制御プログラムに基づいてモータ７の駆動制御が行われる場合もある。
【００２４】
ここで、ＲＡＭ２３がモータ制御バス６に接続されていないので、ＲＡＭ２３に格納された情報は、主制御コア１１やユーザから読み出し、書き込み、消去を実行することができない。
【００２５】
ＲＡＭ２４は、モータ制御部２で実行される複数のジョブに関連する情報を格納するデータ用メモリである。ＲＡＭ２４がモータ制御バス６に接続されていないので、ＲＡＭ２４に格納された情報は、主制御コア１１やユーザから読み出し、書き込み、消去を実行することができない。
【００２６】
調停回路４は、主制御部１の主バス５、モータ制御部２のモータ制御バス６に接続され、主バス５とモータ制御バス６上で実行される複数のジョブの優先順位を判定する。このため、高速で且つリアルタイムでモータ制御システム１００の制御を実現することができる。
【００２７】
次に、モータ制御プログラムの格納について、図２及び図３を参照して説明する。図２は、モータ制御プログラムを格納する動作を示すフローチャートである。図３は、モータ制御プログラム内容を示す図である。
【００２８】
図２に示すように、ユーザは、入出力部１２を介して独自のモータ制御プログラムを主制御部１のコードメモリ１３に書き込む（ステップＳ１）。独自のモータ制御プログラムのコードメモリ１３への書き込みは、主制御コア１１の指示に基づいて行われる。
【００２９】
ここで、独自のモータ制御プログラムは、図３に示すように、センサレス制御、モータ位置推定制御、デッドタイム補償制御、モータ電流取得制御など含む。独自のモータ制御プログラムを用いると、他のユーザでは実現できないジョブを実現することができる。この結果、モータ制御システム１００では、ユーザによる独自のモータ制御プログラムの書き込みにより、通常のモータ制御の他にユーザ独自のモータ制御を随時実現することができる。
【００３０】
次に、主制御コア１１は、制御回路１４に転送指示をする。制御回路１４はコードメモリ１３に格納されているユーザ独自のモータ制御プログラムを読み出し及び高速転送（例えばＤＭＡ転送）を行い、転送信号Ｓｔｒｎｓ１としてモータ制御部２のＲＡＭ２３へユーザ独自のモータ制御プログラムを出力する（ステップＳ２）。
【００３１】
続いて、ＲＡＭ２３は、転送されたユーザ独自のモータ制御プログラムを入力し、格納する（ステップＳ３）。
【００３２】
次に、モータ制御システムの動作について、図４を参照して説明する。図４は、モータ制御システムの動作を示すフローチャートである。
【００３３】
図４に示すように、主制御コア１１は、モータ制御コア２１へモータ７のモータ制御の開始指示をする（ステップＳ１１）。
【００３４】
次に、調停回路４が、モータ制御システム１００で実行される複数のジョブの優先順位を判定する（ステップＳ１２）。調停回路４がモータ制御を最優先と判断した場合（ＹＥＳ）、モータ制御コア２１へモータ制御の開始指示を最優先に伝える。調停回路４が、モータ制御を最優先と判断しない場合（ＮＯ）、他のジョブを最優先とする。本実施例のモータ制御システム１００では、主制御部１、モータ制御部２に、それぞれに独立したコアを持っているため、それぞれでリアルタイムに制御が可能となる。
【００３５】
続いて、モータ制御コア２１は、ＲＡＭ２３に格納されているユーザ独自のモータ制御プログラムを読み出す（ステップＳ１３）。
【００３６】
そして、モータ制御コア２１は、ユーザ独自のモータ制御プログラムに基づいて、モータ７の駆動制御を開始する（ステップＳ１４）。
【００３７】
上述したように、本実施形態のモータ制御システム１００では、主制御部１、モータ制御部２、調停回路４、モータ７、センサ８、インバータ９、ＡＤコンバータ１０が設けられる。主制御部１は、主バス５、主制御コア１１、入出力部１２、コードメモリ１３、制御回路１４、ＲＡＭ１５、ＲＯＭ１６を含む。コードメモリ１３は、モータ制御プログラム（モータ制御アルゴリズム）をユーザから入手して格納する。モータ制御部２は、モータ制御バス６、モータ制御コア２１、制御回路２２、ＲＡＭ２３、ＲＡＭ２４を含む。ＲＡＭ２３は、コードメモリ１３から転送されるモータ制御プログラム（アルゴリズム）を格納する。ＲＡＭ２３は、モータ制御バス６に接続されていない。
【００３８】
このため、モータ制御システム１００では、ユーザ独自のモータ駆動制御を実現することができる。また、ＲＡＭ２３に格納されたモータ制御プログラム（モータ制御アルゴリズム）は主制御部１及び外部から読み出すことができないのでセキュリティを向上させることができる。
【００３９】
また、モータ制御部２のＲＡＭ２３（命令用ＲＡＭ）とＲＡＭ２４（データ用ＲＡＭ）を一つのＲＡＭにしてもよい。本実施形態のモータ制御システム１００では、モータ制御部２を用いて、モータ７（一つのモータ）を駆動制御しているが、モータ制御部２を用いて複数のモータを駆動制御してもよい。
【００４０】
（第２の実施形態）
次に、第２の実施形態に係るモータ制御システムについて、図面を参照して説明する。図５はモータ制御システムを示す図である。
【００４１】
本実施形態では、ユーザ独自のモータ制御プログラムを暗号化してセキュリティを向上させている。
【００４２】
以下、第１の実施形態と同一構成部分には、同一符号を付してその部分の説明を省略し、異なる部分のみ説明する。
【００４３】
図５に示すように、モータ制御システム１０１は、主制御部１ａ、モータ制御部２、調停回路４、モータ７、センサ８、インバータ９、ＡＤコンバータ１０、デコーダ４０を含む。
【００４４】
主制御部１ａは、モータ制御システム１０１を統括制御する。主制御部１ａは、主バス５、主制御コア１１、入出力部１２、コードメモリ１３ａ、制御回路１４、ＲＡＭ１５、ＲＯＭ１６、暗号化回路１７を含む。
【００４５】
主バス５は、調停回路４に接続される。主制御部１ａに設けられる主制御コア１１、入出力部１２、コードメモリ１３、制御回路１４、ＲＡＭ１５、ＲＯＭ１６、及び暗号化回路１７は、主バス５を介して接続される。
【００４６】
暗号化回路１７は、ユーザ独自のモータ制御プログラムを暗号化する。暗号化方式として、ＡＥＳ（Advanced Encryption Standard）方式、ＤＥＳ（Data Encryption Standard）方式、ＲＳＡ方式、或いはユーザが独自に開発した暗号方式等を用いる。なお、ＲＳＡは、R.L. Rivest、 A.Shamir、 L.Adlemanの頭文字を表す暗号名である。
【００４７】
コードメモリ１３ａは、セキュリティエリア１３ｂを含む。セキュリティエリア１３ｂは、暗号化回路１７で暗号化されたユーザ独自のモータ制御プログラムを入力し、格納する。
【００４８】
デコーダ４０は、主制御部１ａとモータ制御部２の間に設けられる。デコーダ４０は、セキュリティエリア１３ｂから転送される暗号化されたユーザ独自のモータ制御プログラムである転送信号Ｓｔｒｎｓ１ａを入力し、復号（暗号の解除）する。デコーダ４０は、復号（暗号の解除）したユーザ独自のモータ制御プログラムである転送信号Ｓｔｒｎｓ１をモータ制御部２のＲＡＭ２３へ転送する。
【００４９】
次に、モータ制御プログラムの格納について、図６を参照して説明する。図６はモータ制御プログラムを格納する動作を示すフローチャートである。
【００５０】
図６に示すように、ユーザは独自のモータ制御プログラム（モータ制御アルゴリズム）情報を主制御部１ａに送信する。主制御部１ａの暗号化回路１７は、主制御部１ａの主制御コア１１の指示に基づいて、ユーザ独自のモータ制御プログラムを暗号化する（ステップＳ２１）。
【００５１】
次に、制御回路１４は、主制御コア１１の指示に基づいて、暗号化されたユーザ独自のモータ制御プログラムを高速に、例えばＤＭＡ転送してコードメモリ１３ａのセキュリティエリア１３ｂに格納する（ステップＳ２２）。
【００５２】
続いて、制御回路１４は、主制御コア１１の指示に基づいて、セキュリティエリア１３ｂに格納された暗号化されたユーザ独自のモータ制御プログラムを転送信号Ｓｔｒｎｓ１ａとしてデコーダ４０に転送する（ステップＳ２３）。
【００５３】
そして、デコーダ４０は、暗号化されたユーザ独自のモータ制御プログラムを復号（暗号の解除）して、復号されたユーザ独自のモータ制御プログラムを転送信号Ｓｔｒｎｓ１としてモータ制御部２のＲＡＭ２３に転送する（ステップＳ２５）。
【００５４】
次に、ＲＡＭ２３は転送されたユーザ独自のモータ制御プログラムを入力し、格納する（ステップＳ２６）。
【００５５】
上述したように、本実施形態のモータ制御システム１０１では、主制御部１ａ、モータ制御部２、調停回路４、モータ７、センサ８、インバータ９、ＡＤコンバータ１０、デコーダ４０が設けられる。主制御部１ａは、主バス５、主制御コア１１、入出力部１２、コードメモリ１３ａ、制御回路１４、ＲＡＭ１５、ＲＯＭ１６、暗号化回路１７を含む。暗号化回路１７は、ユーザ独自のモータ制御プログラムを暗号化する。コードメモリ１３ａのセキュリティエリア１３ｂは、暗号化されたユーザ独自のモータ制御プログラムを格納する。デコーダ４０は、暗号化されたユーザ独自のモータ制御プログラムを復号化してＲＡＭ２３へ転送する。ＲＡＭ２３は、ユーザ独自のモータ制御プログラムを格納する。
【００５６】
このため、第１の実施形態と同様な効果の他に、第１の実施形態よりもセキュリティを向上させることができる。
【００５７】
（第３の実施形態）
次に、第３の実施形態に係るモータ制御システムについて、図面を参照して説明する。図７はモータ制御システムを示す図である。
【００５８】
本実施形態では、ユーザによる通信制御プログラムとモータ制御プログラムの書き込みができるコードメモリを主制御部に設け、コードメモリに格納された通信制御プログラムが通信制御部のメモリに転送され、コードメモリに格納されたモータ制御プログラムがモータ制御部のメモリに転送され、調停回路によりジョブの優先順位が判定される。
【００５９】
以下、第１の実施形態と同一構成部分には、同一符号を付してその部分の説明を省略し、異なる部分のみ説明する。
【００６０】
図７に示すように、モータ制御システム１０２は、主制御部１ｂ、モータ制御部２、通信制御部３、調停回路４ａ、モータ７、センサ８、インバータ９、ＡＤコンバータ１０、送受信部６０を含む。
【００６１】
主制御部１ｂは、モータ制御システム１０２を統括制御する。主制御部１ｂは、主バス５、主制御コア１１、入出力部１２、コードメモリ１３ｃ、制御回路１４、ＲＡＭ１５、ＲＯＭ１６を含む。
【００６２】
主バス５は、調停回路４ａに接続される。主制御部１ｂに設けられる主制御コア１１、入出力部１２、コードメモリ１３ｃ、制御回路１４、ＲＡＭ１５、及びＲＯＭ１６は、主バス５を介して接続される。主制御コア１１は、モータ制御システム１０２及び主制御部１ｂを統括制御する。
【００６３】
コードメモリ１３ｃは、モータ制御プログラム（モータ制御アルゴリズム）と通信制御プログラム（通信制御アルゴリズム）を格納する不揮発性メモリである。コードメモリ１３ｃは、入出力部１２を介して、ユーザが所有する独自のモータ制御プログラムや通信制御プログラムなどを入力し、格納する。
【００６４】
通信制御部３は、通信制御バス５０、通信制御コア３１、制御回路３２、ＲＡＭ３３、ＲＡＭ３４を含む。通信制御部３は、送受信部６０の制御を行う。送受信部６０は、図示しない、例えばベースバンド処理部、送信部、受信部、アンテナを含む。ベースバンド処理部は、デジタル信号処理を実行する。
【００６５】
通信制御部３に設けられる通信制御コア３１と制御回路３２は、通信制御バス５０を介して接続される。制御回路３２は、通信制御コア３１で実行されるジョブ（通信制御）以外のジョブを実行する。通信制御バス５０は、調停回路４ａに接続される。ＲＡＭ３３、ＲＡＭ３４は、通信制御バス５０に接続されていない。
【００６６】
ＲＡＭ３３は、コードメモリ１３ｃから転送されるユーザ独自の通信制御プログラム（通信制御アルゴリズム）を入力し、格納する。ＲＡＭ３３は通信制御バス５０に接続されていないので、ＲＡＭ３３に格納された情報は、主制御コア１１やユーザから読み出し、書き込み、消去を実行することができない。
【００６７】
ＲＡＭ３４は、通信制御部３で実行される複数のジョブに関連する情報を格納するデータ用メモリである。ＲＡＭ３４は通信制御バス５０に接続されていないので、ＲＡＭ３４に格納された情報は、主制御コア１１やユーザから読み出し、書き込み、消去を実行することができない。
【００６８】
調停回路４ａは、主制御部１ｂの主バス５、モータ制御部２のモータ制御バス６、通信制御部３の通信制御バス５０に接続され、主バス５、モータ制御バス６、通信制御バス５０上で実行される複数のジョブの優先順位を判定する。最優先順位とされたジョブは、他のジョブよりも先に実行され、この結果として高速で且つリアルタイムでモータ制御システム１０２の制御を実現することができる。
【００６９】
次に、モータ制御プログラムの格納について、図８を参照して説明する。図８は通信制御プログラムを格納する動作を示すフローチャートである。
【００７０】
図８に示すように、ユーザは、入出力部１２を介して独自の通信制御プログラム（通信制御アルゴリズム）を主制御部１ｂのコードメモリ１３ｃに書き込む（ステップＳ３１）。独自の通信制御プログラムを用いると、他のユーザでは実現できないジョブを実現することができる。
【００７１】
次に、主制御コア１１は制御回路１４に転送指示をする。制御回路１４はコードメモリ１３ｃに格納されているユーザ独自の通信制御プログラムを読み出し及び高速転送（例えば、ＤＭＡ転送）を行い、転送信号Ｓｔｒｎｓ２として通信制御部３のＲＡＭ３３へユーザ独自の通信制御プログラムを出力する（ステップＳ３２）。
【００７２】
続いて、ＲＡＭ３３は、転送されたユーザ独自の通信制御プログラムを入力し、格納する（ステップＳ３３）。
【００７３】
次に、モータ制御システムの動作について、図９を参照して説明する。図９はモータ制御システムの動作を示すフローチャートである。
【００７４】
図９に示すように、主制御コア１１は、通信制御コア３１へ通信制御の開始指示をする（ステップＳ４１）。
【００７５】
次に、調停回路４ａは、モータ制御システム１００で実行される複数のジョブの優先順位を判定する（ステップＳ４２）。調停回路４ａは、通信制御を最優先と判断した場合（ＹＥＳ）、通信制御部３の通信制御コア３１へ通信制御の開始指示を最優先に伝える。調停回路４ａは、通信制御を最優先と判断しない場合（ＮＯ）、他のジョブ（例えば、モータ制御）を最優先とする。
【００７６】
続いて、通信制御コア３１は、ＲＡＭ３３に格納されているユーザ独自の通信制御プログラムを読み出す（ステップＳ４３）。
【００７７】
そして、通信制御コア３１は、ユーザ独自の通信制御プログラムに基づいて、送受信を開始する（ステップＳ４４）。
【００７８】
上述したように、本実施形態のモータ制御システム１０２では、主制御部１ｂ、モータ制御部２、通信制御部３、調停回路４ａ、モータ７、センサ８、インバータ９、ＡＤコンバータ１０、送受信部６０が設けられる。  主制御部１ｂは、モータ制御システム１０２を統括制御する。主制御部１ｂは、主バス５、主制御コア１１、入出力部１２、コードメモリ１３ｃ、制御回路１４、ＲＡＭ１５、ＲＯＭ１６を含む。コードメモリ１３ｃは、ユーザにより独自のモータ制御プログラムや通信制御プログラムが格納される。通信制御部３は、通信制御バス５０、通信制御コア３１、制御回路３２、ＲＡＭ３３、ＲＡＭ３４を含む。コードメモリ１３ｃに格納されているユーザ独自のモータ制御プログラムは、モータ制御部２のＲＡＭ２３に転送され、コードメモリ１３ｃに格納されているユーザ独自の通信制御プログラムは、通信制御部３のＲＡＭ３３に転送される。調停回路４ａは、主バス５、モータ制御バス６、通信制御バス５０上で実行される複数のジョブの優先順位を判定する。
【００７９】
このため、モータ制御システム１０２では、ユーザ独自のモータ駆動制御や通信制御を実現することができる。また、ＲＡＭ２３に格納されたモータ制御プログラム（モータ制御アルゴリズム）は主制御部１ｂ及び外部から読み出すことができず、ＲＡＭ３３に格納された通信制御プログラム（通信制御アルゴリズム）は主制御部１ｂ及び外部から読み出すことがないのでセキュリティを向上させることができる。
【００８０】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００８１】
１、１ａ、１ｂ  主制御部
２  モータ制御部
３  通信制御部
４、４ａ  調停回路
５  主バス
６  モータ制御バス
７  モータ
８  センサ
９  インバータ
１０  ＡＤコンバータ
１１  主制御コア
１２  入出力部
１３、１３ａ、１３ｃ  コードメモリ
１３ｂ  セキュリティエリア
１４、２２、３２  制御回路
１５、２３、２４、３３、３４  ＲＡＭ
１６  ＲＯＭ
１７  暗号化回路
２１  モータ制御コア
３１  通信制御コア
４０  デコーダ
５０  通信制御バス
６０  送受信部
１００、１０１  モータ制御システム
Ｓｔｒｎｓ１、Ｓｔｒｎｓ１ａ、Ｓｔｒｎｓ２  転送信号
【図１】
2019153201.tif 000003
【図２】
2019153201.tif 000004
【図３】
2019153201.tif 000005
【図４】
2019153201.tif 000006
【図５】
2019153201.tif 000007
【図６】
2019153201.tif 000008
【図７】
2019153201.tif 000009
【図８】
2019153201.tif 000010
【図９】
2019153201.tif 000011