JP2012108707A - 制御装置 - Google Patents

制御装置 Download PDF

Info

Publication number
JP2012108707A
JP2012108707A JP2010256790A JP2010256790A JP2012108707A JP 2012108707 A JP2012108707 A JP 2012108707A JP 2010256790 A JP2010256790 A JP 2010256790A JP 2010256790 A JP2010256790 A JP 2010256790A JP 2012108707 A JP2012108707 A JP 2012108707A
Authority
JP
Japan
Prior art keywords
service
control device
input
layer
allocation information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2010256790A
Other languages
English (en)
Inventor
登 ▲高▼木
Noboru Takagi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Toyota Motor Corp
Original Assignee
Denso Corp
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp, Toyota Motor Corp filed Critical Denso Corp
Priority to JP2010256790A priority Critical patent/JP2012108707A/ja
Publication of JP2012108707A publication Critical patent/JP2012108707A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】装置に接続されるデバイスの変更に柔軟に対応することが可能な制御装置を提供すること。
【解決手段】入力された信号に基づいてコンピュータ処理を行い、制御対象を制御する制御装置であって、前記コンピュータが実行するソフトウエア、及び該ソフトウエアにより扱われるデータは、アプリケーションソフトウエアが属する第1の階層と、デバイスドライバが属する第2の階層と、前記第1の階層及び前記第2の階層の中間層となる第3の階層と、を含むように階層分けされており、前記第3の階層は、前記第2の階層から提供される割付情報を束ねて公開する割付情報公開部と、該割付情報公開部により公開された割付情報に基づいて前記第1の階層に対して入力サービス及び/又は出力サービスを提供するサービス部と、を含むことを特徴とする、制御装置。
【選択図】図1

Description

本発明は、センサ類等から入力された信号に基づいてコンピュータ処理を行い、種々の機器制御を行う制御装置に関する。
従来、オブジェクト指向設計されたプログラムを制御プログラムに適用することにより、ハードウエアの変更に伴うソフトウエアの開発工数を低減することを目的とした車両用制御装置についての発明が開示されている(例えば、特許文献1参照)。
この装置におけるマイクロコンピュータは、制御プログラムを搭載し、センサ類からの検出信号を受ける入力回路部からの信号を受け車両の状態に基づき最適な制御量を演算し、アクチュエータ類を駆動する制御信号を発生する。
そして、制御プログラムは、ハードウエアに依存しない制御量算出ロジックを記述した第1の階層と、ハードウエアに依存する制御量算出ロジックを記述した第2の階層とを有し、第2の階層には、ハードウエアの内のセンサ類やアクチュエータ類等の個々の物理的な構成を、個々の論理的な構成に変換しモデル化して記述したモデル化プログラムを含んでいる。
また、上記特許文献1の図3には、バーチャルMPU(VM)レイヤというソフトウエア階層が記載されている。特許文献1に記載の車両用制御装置は、このソフトウエア階層によってマイコン(CPU)をバーチャル化し、マイコンの違いを吸収している。
特開2000−97102号公報
しかしながら、センサ類や制御対象機器等(デバイス)が接続された制御装置においては、マイコンの種類が変更される場合のみならず、デバイスの種類が変更される場合も想定される。
特に、近年の車両用制御装置の分野においては、異なる技術分野の機能を一の制御装置に統合する動きが加速しつつある。この結果、一の制御装置に入力される信号の種類が増加したり、汎用マイコンでは処理しづらい処理を拡張ICにより実現したり、仕向け地に応じた異なるハードウエア構成が接続されたりするという状況が続いている。
この点、上記特許文献1に記載の装置では、マイコンの違いを吸収することはできるものの、センサ類、拡張IC、制御対象といったデバイスの違いを吸収することができない。
本発明はこのような課題を解決するためのものであり、装置に接続されるデバイスの変更に柔軟に対応することが可能な制御装置を提供することを、主たる目的とする。
上記目的を達成するための本発明の一態様は、
入力された信号に基づいてコンピュータ処理を行い、制御対象を制御する制御装置であって、
前記コンピュータが実行するソフトウエア、及び該ソフトウエアにより扱われるデータは、
アプリケーションソフトウエアが属する第1の階層と、
デバイスドライバが属する第2の階層と、
前記第1の階層及び前記第2の階層の中間層となる第3の階層と、
を含むように階層分けされており、
前記第3の階層は、
前記第2の階層から提供される割付情報を束ねて公開する割付情報公開部と、
該割付情報公開部により公開された割付情報に基づいて前記第1の階層に対して入力サービス及び/又は出力サービスを提供するサービス部と、
を含むことを特徴とする、
制御装置である。
この本発明の一態様によれば、アプリケーションソフトウエアが属する第1の階層とデバイスドライバが属する第2の階層との中間層として、第2の階層から提供される割付情報を束ねて公開する割付情報公開部と、公開された割付情報に基づいて第1の階層に対して入力サービス及び/又は出力サービスを提供するサービス部とを含む第3の階層を備えるため、装置に接続されるデバイスの変更に柔軟に対応することができる。
本発明の一態様において、
前記サービス部は、接続された機器に共通するサービスを提供する固定サービス部と、接続された機器の違いに応じて変化する可変サービス部と、に分離していることを特徴とするものとしてもよい。
この場合、
前記可変サービス部は、例えば、前記固定サービス部に割り当てる信号IDが列挙された信号IDリストである。
また、本発明の一態様において、
前記割付情報は、信号IDとチャネルの対応関係を規定しているものとしてもよい。
また、本発明の一態様において、
前記サービス部は、電圧値、ON/OFF値、変化有無、デューティ、タイムドエッジ、ワンショットパルスの少なくとも一部の入力及び/又は出力のためのサービスを前記第1の階層に対して提供することを特徴とするものとしてもよい。
また、本発明の一態様において、
前記デバイスドライバは、端子操作用インターフェースを有し、
前記サービス部は、前記アプリケーションソフトウエアから信号IDとサービス要求を受け取ると、前記割付情報と前記サービス要求から呼び出す端子操作用インターフェースを特定し、該特定した端子操作用インターフェースに端子操作を指示することを特徴とするものとしてもよい。
本発明によれば、装置に接続されるデバイスの変更に柔軟に対応することが可能な制御装置を提供することができる。
本発明の一実施例に係る制御装置1のシステム構成例である。 マイコンAD入力割付情報31Aの一例である。 拡張IC割付情報31Bの一例である。 マイコンADレシーバ34Aにより実行される処理の流れを示すフローチャートである。 拡張IC通信部34Bにより実行される処理の流れを示すフローチャートである。 AD入力サービス(固定部)41により実行される処理の流れを示すフローチャートである。 拡張ICAD入力I/F32Bにより実行される処理の流れを示すフローチャートである。 マイコンAD入力I/F32Aにより実行される処理の流れを示すフローチャートである。 従来構成の制御装置700のシステム構成例である。 従来構成の制御装置700が備えるAD入力サービス736により実行される処理の流れを示すフローチャートである。 出力系のサービスが三系統に分離した場合の制御装置1*のシステム構成例である。 出力系のサービスが三系統に分離し、且つ拡張IC10を備える場合の制御装置1**のシステム構成例である。
以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。
以下、図面を参照し、本発明の一実施例に係る制御装置について説明する。
まず、本発明の制御装置における構成の概略について説明する。本発明の制御装置は、AD入力やポート入力等、マイコン(CPU)から直接操作可能な一以上の周辺装置、拡張IC(Integrated Circuit)とアクセスするためのハードウエアインターフェース、このインターフェースで送信及び受信の完了タイミングを通知可能な割り込み機能、ROM(Read Only Memory)やRAM(Read Only Memory)等の記憶装置等を搭載している。
図1は、本発明の一実施例に係る制御装置1のシステム構成例である。本図においては、制御装置1の入力系についてのみ示したが、出力系に関しても同様に構成されてよい(入力系と出力系が一対一に対応している必要はない)。入力系と出力系が対称であると仮定すると、以下の説明において入力を出力に読み替えることができる。
拡張IC10は、マイコンとアクセスするためのハードウエアインターフェースを搭載し、例えばシリアル通信によってマイコンと通信を行う。また、拡張IC10は、AD入力やポート入力等、ハードウエアインターフェースを介してマイコンから操作可能な機能12、13を有している。
本実施例の制御装置1が実行するソフトウエア、及びソフトウエアによって扱われるデータは、主に、アプリケーションレイヤ(階層)20、一以上のデバイスドライバを含むデバイスドライバレイヤ30、その中間層となるI/Oサービスレイヤ40に階層分けされている。
[アプリケーションレイヤ]
アプリケーションレイヤ20は、アプリケーションソフトウエア21を含む。アプリケーションソフトウエア21は、I/Oサービスレイヤ40を介して入力された信号に基づいて種々の機器制御を行うための処理を行う。
[デバイスドライバレイヤ]
デバイスドライバレイヤ30は、マイコン内蔵の周辺装置から拡張IC10までを含む機器に対するドライバとして機能する。本実施例では、マイコン内蔵の周辺装置としてAD変換器を例示する。
デバイスドライバレイヤ30は、対象デバイスの全チャネルについてI/O割付情報(信号名からチャネルに変換するための情報)を有している。例えば、デバイスドライバレイヤ30は、マイコンAD入力割付情報31A、拡張IC割付情報31Bを有する。
マイコンAD入力割付情報31Aは、マイコンのAD変換器に接続される全信号についての割付情報である。図2は、マイコンAD入力割付情報31Aの一例である。I/O割付情報31Aは、例えば、信号IDに対応し、デバイスID、ポート番号、チャネル番号、ハード回路論理等を格納している。拡張IC割付情報31Bは、拡張IC10のAD変換器に接続される全信号についての割付情報である。図3は、拡張IC割付情報31Bの一例である。拡張IC割付情報31Bは、例えば、信号IDに対応し、デバイスID、ポート番号、チャネル番号、ハード回路論理等を格納している。
また、デバイスドライバレイヤ30は、入力データバッファにI/Oサービスレイヤからアクセスするための端子操作インターフェースを有する。例えば、デバイスドライバレイヤ30は、マイコンAD入力I/F(インターフェース)32A、拡張ICAD入力I/F32B、拡張IC機能BI/F32C、拡張IC機能CI/F32Dを有する。
マイコンAD入力I/F32Aは、AD入力用のI/Oサービスがマイコンからデータを取得するためのインターフェースである。拡張ICAD入力I/F32Bは、AD入力用のI/Oサービスが拡張IC10からデータを取得するためのインターフェースである。拡張IC機能BI/F32C、拡張IC機能CI/F32Dは、拡張IC10の機能B、及び機能C用のI/Oサービスが、拡張IC10からデータを取得するためのインターフェースである。
また、デバイスドライバレイヤ30は、上記インターフェース用の入力データバッファを有する。例えば、デバイスドライバレイヤ30は、マイコンADデータバッファ33A、拡張ICADデータバッファ33B、拡張IC機能Bデータバッファ33C、拡張IC機能Cデータバッファ33Dを有する。
マイコンADデータバッファ33Aは、マイコンのAD変換結果(AD値)をチャネル順に格納する。拡張ICADデータバッファ33Bは、拡張IC10のAD変換結果(AD値)をチャネル順に格納する。拡張IC機能Bデータバッファ33C、及び拡張IC機能Cデータバッファ33Dは、拡張IC10の機能B、及び機能Cの入力値を格納する。
また、デバイスドライバレイヤ30は、マイコンADレシーバ34A、拡張IC通信部34Bを有する。
マイコンADレシーバ34Aは、定期的にAD変換をマイコンAD変換Obj51に指示し、AD変換結果をマイコンADデータバッファ33Aに格納する。
拡張IC通信部34Bは、定期的に拡張IC10との通信を行う。そして、受信フレームからデータ部分を抽出し、機能毎のバッファ(33C、33D)に格納する。また、拡張IC通信部34Bは、送信バッファ34Ba、及び受信バッファ34Bbを内蔵している。
デバイスドライバレイヤ30において、マイコンAD入力割付情報31A、マイコンAD入力I/F(インターフェース)32A、マイコンADデータバッファ33A、及びマイコンADレシーバ34Aが、マイコンのAD変換器に対応するソフトウエアパッケージである。また、これら以外の構成が、拡張IC10に対応するソフトウエアパッケージである。制御装置1が内蔵する周辺装置や接続される拡張IC10に変更、追加、削除等が生じた場合には、上記のようなソフトウエアパッケージ単位で変更、追加、削除等が行われることになる。
[I/Oサービスレイヤ]
I/Oサービスレイヤ40は、周辺装置及び拡張IC10を含む機器に対するI/O機能をバーチャル化してI/Oサービスとして固定するという概念を実現するためのものであり、各種機器に共通するサービス(例えば複数の信号で使い回せるサービス)を提供するためのAD入力サービス(固定部)41、機器の違いに応じて変化するAD入力サービス(可変部)42、デバイスドライバレイヤ30から供給される割付情報を束ねてAD入力サービス(固定部)41に公開する割付情報公開部43を有する。
AD入力サービス(固定部)41は、機器毎の変更が不要な固定ロジックである。AD入力サービス(可変部)42は、例えばAD入力サービス(固定部)41に割り当てる信号IDが列挙された信号IDリストである。割付情報公開部43は、全てのドライバパッケージの割付情報を束ねて一定形式のデータブロック(以下、I/O割付情報と称する)とした上で、AD入力サービス(固定部)41に公開する。これによって、AD入力サービス(固定部)41は、信号がどのデバイスに対応しているのかを意識する必要がなくなる。
[その他のレイヤ]
また、本実施例の制御装置1は、上記説明した各レイヤの他に、MCAL(Microcontroller Abstraction Layer)、ハードウエアとしてのマイコン、デバイス等を備える。
MCALは、マイコンAD変換器ブロック52Aのアクセス用モジュールであるマイコンAD変換器Obj(オブジェクト)51Aと、マイコンシリアル通信ブロック52Bのアクセス用モジュールであるマイコンシリアル通信Obj51Bと、を有する。
マイコンAD変換器ブロック52Aには、各種信号群が入力される。ここでは、信号ZZZ、及びYYYが入力されているものとする。
マイコンシリアル通信ブロック52Bは、AD変換器ブロック11を内蔵する拡張IC10との通信を行う。拡張IC10のAD変換器ブロック11には、信号VVV、WWWが入力されているものとする。
[信号の流れ]
以上のような構成を有する制御装置1における、アプリケーションソフトウエア21からデバイスまでの信号の流れについて説明する。
アプリケーションソフトウエア21は、信号IDを指定してI/Oサービスレイヤ40を呼び出す。
I/Oサービスレイヤ40のAD入力サービス41では、割付情報公開部43を参照して信号IDに該当するデバイスやチャネル番号を抽出し、デバイスドライバレイヤ30において該当する入力インターフェース(32A〜32D)を呼び出す。
デバイスにデータを出力する際には、データを入力インターフェース(32A〜32D)に出力する。デバイスドライバレイヤ30の入力インターフェースでは、入力されたデータをデータバッファ(33A〜33D)に書き込む。そして、周辺装置や拡張IC10の指定チャネルにデータを出力する。
一方、デバイスからデータを入力する際には、マイコンADレシーバ34Aや拡張IC通信部34Bによってデータバッファ(33A〜33D)に書き込まれたデータがI/Oサービスレイヤ40に出力される。I/Oサービスレイヤ40に出力されたデータは、アプリケーションソフトウエア21に出力される。
[処理フロー]
以下、本実施例の制御装置1が有する各構成要素によって実行される処理の流れについて説明する。
図4は、マイコンADレシーバ34Aにより実行される処理の流れを示すフローチャートである。本フローは繰り返し実行される。
まず、マイコンADレシーバ34Aは、定期トリガが発生するまで待機する(S110)。
定期トリガが発生すると、全チャネルのAD変換要求をマイコンAD変換器Obj51に発行する(S120)。
次に、AD変換が完了するまで待機する(S130)。
AD変換が完了すると、全チャネルのAD変換結果をマイコンAD変換器Obj51から取得し、マイコンADデータバッファ33Aに格納し(S140)、本フローの1ルーチンを終了する。これによって、マイコンADデータバッファ33Aが最新のAD変換結果で更新される。
図5は、拡張IC通信部34Bにより実行される処理の流れを示すフローチャートである。本フローは繰り返し実行される。
まず、拡張IC通信部34Bは、定期トリガが発生するまで待機する(S210)。
定期トリガが発生すると、全チャネルのAD変換コマンドを送信バッファ34Baにライトする(書き込む)(S220)。
そして、機能Bのコマンドを送信バッファ34Baにライトし(S230)、次に機能Cのコマンドを送信バッファ34Bbにライトする(S235)。
これらのコマンドを送信バッファ34Bbにライトすると、送信バッファの全コマンドについての送信要求を、マイコンシリアル通信Obj51Bに発行する(S240)。
送信要求を発行すると、通信が完了するまで待機する(S250)。なお、係る通信の間に、拡張IC10からAD変換結果等が受信され、受信バッファ34Bbに格納されている。
通信が完了すると、全チャネルのAD変換結果を受信バッファ34Bbから抽出し、拡張ICADデータバッファ33Bに格納する(S260)。同様に、拡張IC10の機能Bからの受信データを受信バッファ34Bbから抽出して拡張IC機能Bデータバッファ33Cに格納し(S270)、次に、拡張IC10の機能Cからの受信データを受信バッファ34Bbから抽出して拡張IC機能Cデータバッファ33Dに格納し(S275)、本フローの1ルーチンを終了する。
図6は、AD入力サービス(固定部)41により実行される処理の流れを示すフローチャートである。本フローは、アプリケーションソフトウエア21により、信号IDを指定してAD値の取得が指示された際に実行される。
まず、AD入力サービス(固定部)41は、エラーを表す値を「AD値」に代入しておく(S310)。係る処理は、アプリケーションソフトウエア21により指定された信号IDが存在しない場合に備えて、予めデフォルト値としてエラー値をセットしておくものである。
次に、指定された信号IDを信号IDリストからサーチする(S320)。
そして、信号IDが信号IDリスト上に存在するか否かを判定する(S330)。信号IDが信号IDリスト上に存在しない場合は、「AD値」を呼び出して元のアプリケーションソフトウエア21に返却する(S380)。この場合、S310で代入されたエラーを表す値が「AD値」としてアプリケーションソフトウエア21に返信される。これによって、指定された信号IDが存在しない場合には、不正アクセスであることをアプリケーションソフトウエア21、ひいてはユーザに知らせることができる。
信号IDが信号IDリスト上に存在する場合は、I/O割付情報から該当する信号IDの割付情報(例えばデバイスID、ポート番号、チャネル)を取得する(S340)。
次に、デバイスIDから呼び出すAD入力I/Fの名前を組み立てる(S350)。具体的には、AD入力I/F(端子操作I/F)の名前を、例えば“[デバイスID]_
get_ad()“と取り決めておく。該当信号のデバイスIDが“micom”であれば、“micom_
get_ad()“というIFに展開され、デバイスIDが“extic”であれば、“extic_get_ad()“というIFに展開される。
S340、及びS350の処理は、プリプロセッサを用いて静的に展開してもよい。
次に、ポート番号とチャネル番号を入力データとして組み立てたAD入力I/F(マイコンAD入力I/F32A又は拡張ICAD入力I/F32B)を呼び出す(S360)。
そして、呼び出したAD入力I/Fからのリターン値を「AD値」に代入し(S370)、「AD値」を呼び出して元のアプリケーションソフトウエア21に返却する(S380)。
図7は、マイコンAD入力I/F32Aにより実行される処理の流れを示すフローチャートである。本フローは、アプリケーションソフトウエア21からAD入力サービス(固定部)41を介してAD値の取得が指示された際に実行される。
まず、マイコンAD入力I/F32Aは、指示されたポート番号やチャネルに該当するAD値をマイコンADデータバッファ33Aから取り出す(S410)。この際に、I/F名を例えば“micom_get_ad()”とし、関数インターフェースとすることで、AD入力サービス(固定部)41やアプリケーションソフトウエア21に対してデータ構造を隠蔽することができる。
そして、取り出したAD値を、I/Oサービスレイヤ40を介してAD入力サービス(固定部)41にリターンする(返信する)(S420)。
図8は、拡張ICAD入力I/F32Bにより実行される処理の流れを示すフローチャートである。本フローは、アプリケーションソフトウエア21からAD入力サービス(固定部)41を介してAD値の取得が指示された際に実行される。
まず、拡張ICAD入力I/F32Bは、指示されたポート番号やチャネルに該当するAD値を拡張ICADデータバッファ33Bから取り出す(S510)。この際に、I/F名を例えば“Extic_get_ad()”とし、関数インターフェースとすることで、AD入力サービス(固定部)41やアプリケーションソフトウエア21に対してデータ構造を隠蔽することができる。
そして、取り出したAD値を、I/Oサービスレイヤ40を介してAD入力サービス(固定部)41にリターンする(返信する)(S520)。
[比較例]
ここで、本実施例の制御装置1と従来構成の制御装置との比較について説明する。図9は、従来構成の制御装置700のシステム構成例である。この従来構成の制御装置700は、本実施例の制御装置1が有するI/Oサービスレイヤ40に相当する構成要素を備えていない。
制御装置700には、制御装置1と同様、拡張IC710が接続される。
従来構成の制御装置700が実行するソフトウエア、及びソフトウエアによって扱われるデータは、主に、アプリケーションレイヤ(階層)720、デバイスドライバレイヤ730に階層分けされている。
アプリケーションレイヤ720は、アプリケーションソフトウエア721を含む。アプリケーションソフトウエア721は、デバイスドライバレイヤ730を介して入力された信号に基づいて種々の機器制御を行うための処理を行う。
デバイスドライバレイヤ730は、マイコン内蔵の周辺装置(例えばAD変換器)から拡張IC710までを含む機器に対するドライバとして機能する。デバイスドライバレイヤ730は、対象デバイスの全チャネルについてのI/O割付情報(信号名からチャネルに変換するための情報)731を有している。
また、デバイスドライバレイヤ730は、マイコンADデータバッファ733A、拡張ICADデータバッファ733B、拡張IC機能Bデータバッファ733C、拡張IC機能Cデータバッファ733D等の入力バッファを有する。
マイコンADデータバッファ733Aは、マイコンのAD変換結果(AD値)をチャネル順に格納する。拡張ICADデータバッファ733Bは、拡張IC710のAD変換結果(AD値)をチャネル順に格納する。拡張IC機能Bデータバッファ733C、及び拡張IC機能Cデータバッファ733Dは、拡張IC710の機能B、及び機能Cの入力値を格納する。
また、デバイスドライバレイヤ730は、マイコンADレシーバ734A、拡張IC通信部734Bを有する。マイコンADレシーバ734Aは、定期的にAD変換をマイコンAD変換Obj751に指示し、AD変換結果をマイコンADデータバッファ733Aに格納する。拡張IC通信部734Bは、定期的に拡張IC710との通信を行う。そして、受信フレームからデータ部分を抽出し、機能毎のバッファ(733C、733D)に格納する。また、拡張IC通信部734Bは、送信バッファ734Ba、及び受信バッファ734Bbを内蔵している。
更に、デバイスドライバレイヤ730は、AD入力サービス736を備える。AD入力サービス736は、[ADデータ名]−[信号ID]対応テーブル736A、[デバイスID]−[ADデータバッファ名]対応テーブル736Bを有している。[ADデータ名]−[信号ID]対応テーブル736Aは、ADデータ名と信号IDの対応テーブルであり、[デバイスID]−[ADデータバッファ名]対応テーブル736Bは、デバイスIDとADデータバッファ(733A、733B)のソフトウエア変数名の対応テーブルである。AD入力サービス736は、機種毎に変更が必要な部分を含み、複数のデバイスにまたがるAD入力に関連した機能を集約している。
その他のレイヤについては、第1実施例と同様であるため。説明を省略する。
図10は、従来構成の制御装置700が備えるAD入力サービス736により実行される処理の流れを示すフローチャートである。本フローは、アプリケーションソフトウエア721により、ADデータ名を指定してAD値の取得が指示された際に実行される。
まず、AD入力サービス736は、指定されたADデータ名から、内部データより信号IDを引き当てる(S810)。具体的には、例えば、ADデータ名“addata_zzz”に対して信号ID“ZZZ”を引き当てる。
次に、I/O割付情報731から該当する信号IDの割付情報(例えば、デバイスID、ポート番号、チャネル番号、ハード回路論理等)を取得する(S820)。
次に、内部データより、デバイスIDから該当するADデータバッファ名を引き当てる(S830)。例えば、デバイスID“micom”からデータバッファ名“micom_adinp_
adbuf[]”を引き当てる。
次に、S620において取得したポート番号とチャネル番号を配列インデクスとして、該当するADデータを抽出する(S840)。例えばポート番号なし、チャネル番号0の場合は、“micom_adinp_adbuf[0]”を参照する。
そして、S640で抽出したADデータをアプリケーションソフトウエア721に返却する(S850)。
従来構成の制御装置700では、デバイス毎のデータバッファ、I/O割付情報731、及びアプリケーションソフトウエア721にサービスを提供するAD入力サービス736の三要素によってデバイスドライバレイヤ730を構成している。
ところが、このような構成では、I/O機能までをバーチャル化してI/Oサービスとして固定するという概念と、係る概念を実現するための仕組みが存在しないため、搭載するデバイスによってアプリケーションソフトウエア721に提供するサービスが異なるものとなってしまい、マイコンを含む複数の異なるデバイスの抜き差し(チップセットの違い)に対応するのが困難である。
[効果]
これに対し、本実施例の制御装置1では、I/Oサービスとして普遍的なI/O機能をAD入力サービス(固定部)41に固定しているため、ハード仕様だけでI/Oサービスを開発することができ、アプリケーションソフトウエアの開発期間を短縮することができる。
また、機種により変わらない部分(AD入力サービス(固定部)41)と、機種により変わる部分(AD入力サービス(可変部)42)を分離しているため、ソフトウエアの部品点数を低減することができ、ROMの使用量及び結合の手間を低減することができる。
また、同じ機能(例えばAD入力)が複数のデバイスに搭載される場合、各デバイスの入力バッファにアクセスする端子操作インターフェースが標準化されているため、I/O割付情報により接続先の切り替えロジックを容易に実現することができる。なお、標準化とは、インターフェース名の中に含まれるデバイス名のみが異なり、その他の部分は同一となっていることをいう。
また、デバイスドライバレイヤ30におけるソフトウエアパッケージは、デバイス毎に作成されているため、デバイスの抜き差しを容易に実現することができる。従って、様々なハードウエア構成に容易に対応することができる。
以上説明した本実施例の制御装置1によれば、接続されるデバイスの変更に柔軟に対応することができる。
[実装例]
本発明に係る制御装置は、以下のような機能を実現することができる。
例えば、入力系機能として、AD入力、HI/LO入力(ON/OFF入力)、入力ラッチ機能等を実現することができる。この場合、デバイス毎にデータバッファを定期的に更新することができる。アプリケーションソフトウエアに更新タイミングを通知するため、デバイス毎の更新タイミングをアプリケーションソフトウエアに通知してもよいし、複数デバイスのうち最も遅い更新タイミングをアプリケーションソフトウエアに通知してもよい。
出力系機能としても同様に、AD出力、HI/LO出力(ON/OFF出力)機能等を実現することができる。
また、出力系機能として、パルス出力系機能を実現することができる。この場合、デューティ、周期パルス、ワンショットパルス、タイムドエッジ等の出力を行うように出力サービスが機能する。I/Oサービス固定部(実施例における「AD入力サービス(固定部)41」を出力サービスに置換し、汎用化したもの)における各関数は、異なる信号であれば再入可(リエントラント)とする。信号毎のデータはI/Oサービス可変部(実施例における「AD入力サービス(可変部)42」を出力サービスに置換し、汎用化したもの)に配置し、I/Oサービス固定部からアクセス可能とする。同一信号の再入可(リエントラント)は複雑となるためI/Oサービスレイヤ40では保証せず、アプリケーションソフトウエア21において実行しないように設定する。
I/Oサービス可変部は、信号IDリスト、サポートする信号の数に相当する常数や変数の記憶領域(信号数分の配列とする)を備える。そして、信号が変化したタイミングを、必要に応じて、マイコンの割り込み機能を用いてアプリケーションソフトウエア21に通知する。
また、入力系機能としても同様に、パルス入力系機能を実現することができる。この場合、デューティ、周期パルス、ワンショットパルス、タイムドエッジ等の入力を行うように入力サービスが機能する。この場合、信号が変化したタイミングを、必要に応じて、マイコンの割り込み機能を用いてアプリケーションソフトウエア21に通知する。そして、通知するタイミングで、パルスに含まれるデータ(デューティ[%]、パルス周期[us]、エッジ発生時刻[us]等)を引数にして関数コールし、アプリケーションソフトウエア21にタイミングとデータを同時に通知する。
[変形等]
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
例えば、実施例で説明したAD入力サービス(固定部)41、及びAD入力サービス(可変部)42は、マイコンや拡張IC10が実現する機能毎に設けられるものとしてもよい。また、これらに相当する出力系の機能についても同様である。
図11は、出力系のサービスが三系統に分離した場合の制御装置1*のシステム構成例である。図示するように、この場合の制御装置1*は、出力サービス41*_1〜41*_3を備え、それぞれに対応して出力サービス(可変部)42*_1〜42*_3に相当する信号IDリストが設けられ、割付情報公開部43から割付情報が提供されている。
このような構成によって、マイコン機能A〜Cに対応した出力処理を実現することができる。
また、図12は、出力系のサービスが三系統に分離し、且つ拡張IC10を備える場合の制御装置1**のシステム構成例である。
1 制御装置
10 拡張IC
11 AD変換器ブロック
12、13 機能
20 アプリケーションレイヤ
21 アプリケーションソフトウエア
30 デバイスドライバレイヤ
31A マイコンAD入力割付情報
31B 拡張IC割付情報
32A マイコンAD入力I/F
32B 拡張ICAD入力I/F
32C 拡張IC機能BI/F
32D 拡張IC機能CI/F
33A マイコンADデータバッファ
33B 拡張ICADデータバッファ
33C 拡張IC機能Bデータバッファ
33D 拡張IC機能Cデータバッファ
34A マイコンADレシーバ
34B 拡張IC通信部
34Ba 送信バッファ
34Bb 受信バッファ
40 I/Oサービスレイヤ
41 AD入力サービス(固定部)
42 AD入力サービス(可変部)
43 割付情報公開部
51A マイコンAD変換器Obj
51B マイコンシリアル通信Obj
52A マイコンAD変換器ブロック
52B マイコンシリアル通信ブロック

Claims (6)

  1. 入力された信号に基づいてコンピュータ処理を行い、制御対象を制御する制御装置であって、
    前記コンピュータが実行するソフトウエア、及び該ソフトウエアにより扱われるデータは、
    アプリケーションソフトウエアが属する第1の階層と、
    デバイスドライバが属する第2の階層と、
    前記第1の階層及び前記第2の階層の中間層となる第3の階層と、
    を含むように階層分けされており、
    前記第3の階層は、
    前記第2の階層から提供される割付情報を束ねて公開する割付情報公開部と、
    該割付情報公開部により公開された割付情報に基づいて前記第1の階層に対して入力サービス及び/又は出力サービスを提供するサービス部と、
    を含むことを特徴とする、
    制御装置。
  2. 請求項1に記載の制御装置であって、
    前記サービス部は、接続された機器に共通するサービスを提供する固定サービス部と、接続された機器の違いに応じて変化する可変サービス部と、に分離していることを特徴とする、
    制御装置。
  3. 請求項2に記載の制御装置であって、
    前記可変サービス部は、前記固定サービス部に割り当てる信号IDが列挙された信号IDリストである、
    制御装置。
  4. 請求項1ないし3のいずれか1項に記載の制御装置であって、
    前記割付情報は、信号IDとチャネルの対応関係を規定している、
    制御装置。
  5. 請求項1ないし4のいずれか1項に記載の制御装置であって、
    前記サービス部は、電圧値、ON/OFF値、変化有無、デューティ、タイムドエッジ、ワンショットパルスの少なくとも一部の入力及び/又は出力のためのサービスを前記第1の階層に対して提供することを特徴とする、
    制御装置。
  6. 請求項1に記載の制御装置であって、
    前記デバイスドライバは、端子操作用インターフェースを有し、
    前記サービス部は、前記アプリケーションソフトウエアから信号IDとサービス要求を受け取ると、前記割付情報と前記サービス要求から呼び出す端子操作用インターフェースを特定し、該特定した端子操作用インターフェースに端子操作を指示することを特徴とする、
    制御装置。
JP2010256790A 2010-11-17 2010-11-17 制御装置 Pending JP2012108707A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010256790A JP2012108707A (ja) 2010-11-17 2010-11-17 制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010256790A JP2012108707A (ja) 2010-11-17 2010-11-17 制御装置

Publications (1)

Publication Number Publication Date
JP2012108707A true JP2012108707A (ja) 2012-06-07

Family

ID=46494264

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010256790A Pending JP2012108707A (ja) 2010-11-17 2010-11-17 制御装置

Country Status (1)

Country Link
JP (1) JP2012108707A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9716887B2 (en) 2013-06-17 2017-07-25 Dolby Laboratories Licensing Corporation Chromaticity translations in coding of enhanced dynamic range signals
CN107566129A (zh) * 2017-09-08 2018-01-09 慧翰微电子股份有限公司 一种基于开放系统的lte通信模组

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1011384A (ja) * 1996-06-24 1998-01-16 Sumitomo Metal Ind Ltd 入出力標準化装置
JP2000148413A (ja) * 1998-06-30 2000-05-30 Sun Microsyst Inc デバイス識別子に基づいた記憶デバイスの構成の検証
JP2003303161A (ja) * 2002-04-11 2003-10-24 Nec Commun Syst Ltd デバイスドライバの組み込み・実行方式、組み込み・実行方法、及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1011384A (ja) * 1996-06-24 1998-01-16 Sumitomo Metal Ind Ltd 入出力標準化装置
JP2000148413A (ja) * 1998-06-30 2000-05-30 Sun Microsyst Inc デバイス識別子に基づいた記憶デバイスの構成の検証
JP2003303161A (ja) * 2002-04-11 2003-10-24 Nec Commun Syst Ltd デバイスドライバの組み込み・実行方式、組み込み・実行方法、及びプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9716887B2 (en) 2013-06-17 2017-07-25 Dolby Laboratories Licensing Corporation Chromaticity translations in coding of enhanced dynamic range signals
CN107566129A (zh) * 2017-09-08 2018-01-09 慧翰微电子股份有限公司 一种基于开放系统的lte通信模组
CN107566129B (zh) * 2017-09-08 2020-11-10 慧翰微电子股份有限公司 一种基于开放系统的lte通信模组

Similar Documents

Publication Publication Date Title
US6862643B2 (en) USB compound device operates a plurality of devices by using the same USB logic circuit and the method for implementation thereof
US9213662B2 (en) I/O bus system
CN110781119B (zh) 一种i2c总线扩展接口及其控制方法、片上系统
KR102007368B1 (ko) Pci 익스프레스 스위치 및 이를 이용한 컴퓨터 시스템
EP1093252A2 (en) Access control device for IEEE 1394 Bus
US20140149617A1 (en) I2c bus structure and device availability query method
US20070186218A1 (en) Data processing device, data processing method and data processing program
CN104683338A (zh) 设备布局中的音频/视频流送
JP2017518585A (ja) 複数のミックスドシグナルのリソース管理のための制御モジュール
US10216664B2 (en) Remote resource access method and switching device
CN112256426A (zh) 具有总线仲裁器的主从通信系统及通信方法
CN104050111A (zh) 通过具有不同时序要求的相应命令访问不同类型的存储器
JP2012108707A (ja) 制御装置
JP4201071B2 (ja) アイソクロノスデータ転送システム及び方法
US20190286606A1 (en) Network-on-chip and computer system including the same
CN115114192B (zh) 存储器接口、功能核、众核系统和存储数据访问方法
CN109729731B (zh) 一种加速处理方法及设备
JP2022123826A (ja) データ処理装置及びデータ処理システム
CN115729862B (zh) 微控制器、外部设备、微控制系统及通信的方法
US8799529B2 (en) Direct memory access controller and operating method thereof
JP3620173B2 (ja) アドレス変換回路及びマルチプロセッサシステム
US20030040230A1 (en) Multimaster bus system
CN116248427B (zh) 一种基于总线模块通用化多模式通信设备及其通信方法
Latif et al. Application development flow for on-chip distributed architectures
JP2002198990A (ja) データ通信方式およびデータ通信用ic

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130328

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140114

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140520