JP2004263489A - Electronic control unit for work vehicle - Google Patents
Electronic control unit for work vehicle Download PDFInfo
- Publication number
- JP2004263489A JP2004263489A JP2003056590A JP2003056590A JP2004263489A JP 2004263489 A JP2004263489 A JP 2004263489A JP 2003056590 A JP2003056590 A JP 2003056590A JP 2003056590 A JP2003056590 A JP 2003056590A JP 2004263489 A JP2004263489 A JP 2004263489A
- Authority
- JP
- Japan
- Prior art keywords
- data
- controller
- electronic control
- work vehicle
- program
- 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
Links
Images
Landscapes
- Operation Control Of Excavators (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、建設機械などの作業車両の各種機器を制御する電子制御装置に関する。
【0002】
【従来の技術】
近年、建設機械の制御装置についても電子化が進んでいる。電子化された制御装置では、複数のセンサを建設機械の車体に取り付け、コントローラで各センサからの情報を収集して車体の状態を検知し、その検知した結果に基づいて車体の制御を行っている。また、このような建設機械の制御装置では、車体の制御のみならず、稼働状況を管理するために故障の発生状況などのデータを収集・記録することも行われている。これらの目的を達成するために、機能ごとに別のコントローラを用いて、これら複数のコントローラをネットワーク化している制御システムがある(特許文献1)。
【0003】
【特許文献1】
特開平7−277675号公報
【0004】
建設機械の機能には、初めから標準機能として搭載されるものもあれば、顧客の個々の要求により拡張機能として後から追加するものもある。そのため特許文献1に記載の制御システムでは、個々のシステムごとに用いるコントローラの構成は変化する。各コントローラの機能を実現するアプリケーションには、それぞれの処理に用いるデータの取得先(要求先)の情報が組み込まれているが、システムの構成が一定でないことより、そのデータの取得先がシステムによって異なる場合がある。このような場合、コントローラのアプリケーションを変えなければならないが、アプリケーションを構成するプログラムのソースコード全てを変更する必要があり、多くの費用と時間がかかっている。
【0005】
本発明は、建設機械などの作業車両の制御システムにおいて、データの取得先が変わっても容易にプログラムを変更することができる制御システムを提供するものである。
【0006】
【課題を解決するための手段】
請求項1の発明による作業車両用電子制御装置は、それぞれがプロセッサによりプログラム演算を実行して作業車両の各種機器を制御し、互いにバスで接続された少なくとも2つのコントローラを有し、プロセッサは、コントローラのそれぞれに固有のアプリケーションプログラムと、コントローラ間で授受する信号を制御し、バスを介して他のコントローラからの信号を取得するドライバプログラムと、アプリケーションプログラムとドライバプログラムとの間でデータを授受する中間プログラムとによりプログラム演算を実行して各種機器を制御する。
請求項2の発明は、請求項1の電子制御装置において、ドライバプログラムは、計測手段により計測された各種機器の制御状態を示す信号をさらに取得し、中間プログラムは、その取得信号をアプリケーションプログラムで用いるデータに変換するものである。
請求項3の発明は、請求項1の電子制御装置において、ドライバプログラムは、計測手段により計測された各種機器の制御状態を示す信号をさらに取得し、中間プログラムは、その取得信号にフィルタリング処理を行って取得信号より不要な成分を除去するものである。
請求項4の発明は、請求項2の電子制御装置において、中間プログラムは、変換したデータにフィルタリング処理を行ってそのデータより不要な成分を除去するものである。
請求項5の発明は、請求項2または4の電子制御装置において、変換したデータをバスに送信し、すべてのコントローラで変換したデータを共有化するものである。
請求項6の発明は、請求項5の電子制御装置において、変換したデータは、データごとに決められた所定の周期でバスに送信されることとするものである。
請求項7の発明は、請求項1〜6のいずれかの電子制御装置において、中間プログラムは、ドライバプログラムにより取得される信号の取得先を記憶し、中間プログラムのみを変更することで取得先を変更することができるものである。
請求項8の発明は、請求項1〜7のいずれかの電子制御装置において、コントローラは、オペレータにより操作されるレバーの操作量に基づいて作業車両の動作に用いる油圧の指令値を算出する電気レバーコントローラと、作業車両の作業範囲に設定された進入禁止領域と作業車両の動作部位との位置関係に基づいて、前記電気レバーコントローラにより算出された指令値を補正する作業範囲制限制御コントローラと、電気レバーコントローラにより算出された指令値または作業範囲制限制御コントローラにより補正された指令値に基づいて、作業車両の動作を制御する車体制御コントローラと、オペレータに作業車両の動作状態を表示する表示手段を制御し、オペレータが操作する入力手段の状態に基づいて表示手段の表示内容を変更する表示制御コントローラと、電気レバーコントローラ、作業範囲制限制御コントローラ、車体制御コントローラおよび表示制御コントローラのいずれか2つ以上のコントローラ間で授受される情報を蓄積する情報蓄積コントローラのいずれかであるとするものである。
請求項9の発明は、作業車両において適用され、請求項1〜8のいずれかの電子制御装置により制御される各種機器を有するものである。
【0007】
【発明の実施の形態】
――第1の実施の形態――
本発明による電子機器システムの第1の実施の形態を図1に示す。この電子機器システム1は、図2に示す油圧ショベル2に搭載され、これを制御する。以下、図2に示す油圧ショベル2の各部分の動作と合わせて、電子機器システム1の動作を説明する。
【0008】
バスライン11は、以降に説明する各コントローラをバス結合してネットワークを構築する。各コントローラ間のデータは、このバスライン11を介して入出力される。バスライン11は、たとえばCAN(Controller Area Network)などにより実現される。
【0009】
電気レバーコントローラ12は、オペレータにより操作された2軸の電気式操作レバー121および122の操作量を取得し、取得された操作量に基づいて、図2のフロント部26を制御するための指令値を算出する。算出された指令値は、バスライン11を介して車体制御コントローラ14に出力される。なお操作レバー121および122は、図2の運転席25内に設置されている。
【0010】
作業範囲制限制御コントローラ13は、図2のフロント部26が設定された進入禁止領域に入らないよう、各種センサの計測値に基づいて、フロント部26を制御するための指令値を算出する。算出された指令値は、バスライン11を介して車体制御コントローラ14に出力される。このとき用いられる各種センサは、傾斜センサ131、バケットストロークセンサ132、アーム角センサ133、およびブーム角センサ134である。傾斜センサ131は図2の油圧ショベル2の車体の傾斜角、バケットストロークセンサ132はバケットシリンダ266のストローク、アーム角センサ133はアーム262の角度、ブーム角センサ134はブーム261の角度をそれぞれ計測する。
【0011】
また、作業範囲制限制御コントローラ13は、プロセッサ135、ROM136、RAM137およびI/O回路138を有している。プロセッサ135は、RAM137を作業領域としてROM136に記憶されたプログラムを実行し、上述した処理を実行する。I/O回路138は、外部との信号変換を行う。なお、その他の各コントローラ12、14〜16もこの作業範囲制限制御コントローラ13と同様にプロセッサ、ROM、RAMおよびI/O回路を有しているが、図示および説明については省略する。
【0012】
車体制御コントローラ14は、電気レバーコントローラ12や作業範囲制限制御コントローラ13より出力された指令値に基づいて、電磁弁141を制御する。電磁弁141により、図2のブームシリンダ264、アームシリンダ265、およびバケットシリンダ266の油圧が制御され、フロント部26の各部が動作する。なお、フロント部26の動作の詳細については後に説明する。
【0013】
情報蓄積コントローラ15は、図示しないエンジン回転数センサや温度センサなどにより計測された各種情報、たとえば車体稼働情報や故障履歴などを記録する。記録された情報は、たとえば表示装置161により表示することとしてもよいし、必要に応じてパソコンなどの外部機器を接続し、これに出力することとしてもよい。なお情報蓄積コントローラ15により各種情報を記録するタイミングは、任意に設定できる。たとえば、あらかじめ設定された時間により周期的に記録することとしてもよいし、または何らかの異常状態がいずれかのセンサにより検出されたときに記録することとしてもよい。
【0014】
情報表示コントローラ16は、各コントローラより情報を取得し、取得した情報に基づいて、表示装置161に車体の各種情報を表示する。また、キー入力装置162の出力を検出し、検出した出力内容に基づいて、表示装置161に表示する情報内容の切り替えなどを行う。なお、表示装置161とキー入力装置162は図2の運転席25内に設置され、オペレータは表示装置161により車体の情報を確認するとともに、キー入力装置161を操作して情報内容を切り替えることができる。
【0015】
次に、図2に示す油圧ショベル2について説明する。油圧ショベル2は、前述の電子機器システム1によって制御されるフロント部26の他に、自走するための下部走行体21と、下部走行体21上に設けられてその上を旋回する上部旋回体22とを主に有する。なお上部旋回体22は、その前部の左側には運転室25が設けられており、前部の中央ではフロント部26を支持している。また上部旋回体22には、車体の傾斜角を計測する前述の傾斜センサ131が備えられている。
【0016】
フロント部26は、上部旋回体22に支持されて回転軸267を中心に俯仰動するブーム261と、ブーム261の先端に設けられて回転軸268を中心に回動するアーム262と、アーム262の先端に設けられて回転軸269を中心に回動するバケット263とを備えている。また、これらブーム261、アーム262およびバケット263はそれぞれブームシリンダ264、アームシリンダ265およびバケットシリンダ266で駆動される。ブームシリンダ264、アームシリンダ265およびバケットシリンダ266は油圧シリンダであり、図1の電磁弁141によりその油圧を制御される。これにより、それぞれのシリンダによってブーム261、アーム262およびバケット263が動作する。なお、回転軸267には前述のブーム角センサ134、回転軸268にはアーム角センサ133がそれぞれ取り付けられており、これらとバケットシリンダ266に備えられたバケットストロークセンサ132によって、フロント部26の動作状態が計測される。
【0017】
次に、図1に示す各コントローラ12〜16の処理内容について詳細に説明する。各コントローラのROMには、それぞれの処理を実行するプログラムが実装されており、その基本構成は同じである。各コントローラにおけるプログラムの基本構成は、図3に示すアプリケーション31、中間層32およびドライバ33よりなる。
【0018】
アプリケーション31は、そのプログラムが実装されるコントローラに固有の機能を実現するための処理を実行する。その処理内容は油圧ショベル2の制御に関わるものであり、各コントローラごとに異なる。たとえば作業範囲制限制御コントローラ13では、アプリケーション31において図2のフロント部26の動作範囲を制限するための指令値の補正が行われるが、この処理は他のコントローラでは行われない。なお、アプリケーション31での処理結果は必要に応じて中間層32へ出力され、アプリケーション31において処理に必要なデータがあるときは、中間層32へデータ要求が出力される。
【0019】
中間層32は、アプリケーション31とドライバ33との間で行われるデータの授受を制御する。中間層32は、さらにデータ振り分け部321、データテーブル322、データ変換部323、タイマ部324、およびデータ格納部325を有する。データ振り分け部321は、アプリケーション31またはドライバ33の一方より中間層32へ出力されたデータを適宜振り分け、もう一方へ出力したり、あるいはデータ格納部325へ格納したりする。データ振り分け部321はまた、アプリケーション31またはドライバ33の一方より中間層32へ出力されるデータ要求を受け付け、その要求されたデータをもう一方、あるいはデータ格納部325より取得して、要求元へ返信する。このとき、後に説明するタイマ部324におけるタイミング処理により、このようなデータの出力または取得を定期的に実行することもできる。
【0020】
データテーブル322は、前述のデータ振り分け部321がデータの取得や格納を行う際に必要な情報テーブルを記憶する。データ振り分け部321は、このデータテーブル322に記憶された情報テーブルに基づいて、データの出力先や取得先、あるいはデータ格納部325へ格納するときの格納先を判断する。なお情報テーブルの詳細については、後に説明する。
【0021】
データ変換部323は、必要に応じてアプリケーション31とドライバ33との間で授受するデータの変換を行う。たとえばセンサによる計測値などは、このデータ変換部323において、アプリケーション31で使用するデータ形式に変換される。例として、図1のブーム角センサ134により計測された図2のブーム261の角度は、ブーム角センサ134からは電圧値として出力され、その電圧値が作業範囲制限制御コントローラ13において検出される。その検出された電圧値は、このデータ変換部323において、角度データに変換される。このように変換されたデータは、アプリケーション31で使用される他に、後に説明するネットワークドライバによって、バスライン11のネットワーク上にそのデータごとに決められた所定の周期で出力される。このようにすることで、あるコントローラにおいて変換されたデータを、他のコントローラ全てで共有できる。
【0022】
タイマ部324は、データ振り分け部321において一定周期で定期的に実行される処理に対して、そのタイミングを取るためのタイミング処理を実行する。タイミング処理により一定の時間間隔ごとにデータ振り分け部321へタイミング信号が出力され、データ振り分け部321においてこのタイミング信号をカウントすることで、処理の実行周期が判断される。このときのタイミング信号の出力周期は、データ振り分け部321における処理の実行周期よりは少なくとも短い。または、タイマ部324において処理の実行周期を判断し、データ振り分け部321に対して一定周期ごとに処理の実行を要求することとしてもよい。
【0023】
データ格納部325は、アプリケーション31やドライバ33より出力されたデータを一時的に格納するメモリ動作を行う。格納されたデータは、必要に応じてデータ振り分け部321によって取り出され、アプリケーション31やドライバ33へ出力される。なおデータ格納部325において、データの格納先はアドレス番号により指定される。以上説明したような各構成によって、中間層32はアプリケーション31とドライバ33との間で行われるデータの授受を制御する。
【0024】
ドライバ33は、そのプログラムが実装されるコントローラが外部と授受する信号を制御し、各種センサからの信号や他のコントローラからの信号などを取得する。このドライバ33は、信号の入出力先ごとに異なるものが用いられ、1つのコントローラに対して2つ以上のドライバが用いられる場合もある。たとえば図1の作業範囲制限制御コントローラ13では、各センサ131〜134からの出力電圧をデータとして取り込むためのAD変換ドライバと、他の各コントローラとバスライン11を介してデータの入出力を行うためのネットワークドライバとが用いられている。なお、ドライバ33によって取得されたコントローラ外部の信号は、必要に応じてデータとして中間層32へ出力され、ドライバ33において処理に必要なデータがあるときは、中間層32へデータ要求が出力される。
【0025】
以上説明したプログラムの基本構成を図1の各コントローラ12〜16ごとに図示したものを、図4〜7に示す。図4は電気レバーコントローラ12および作業範囲制限制御コントローラ13のプログラムの基本構成を図示したものであり、ドライバ33として、AD変換ドライバ331およびネットワークドライバ332を有している。AD変換ドライバ331は、アナログ電圧値をデジタル値に変換するものである。電気レバーコントローラ12では、このAD変換ドライバ331によって、図1の電気式操作レバー121および122の操作量に応じて出力される電圧値を取得する。作業範囲制限制御コントローラ13では、前述のように各センサ131〜134からの出力電圧をデータとして取り込む。また、ネットワークドライバ332は、前述のとおり他の各コントローラとバスライン11を介してデータの入出力を行うものである。
【0026】
図5は車体制御コントローラ14について図示したものであり、ドライバ33として、前述のネットワークドライバ332と、PWMドライバ333とを有している。PWMドライバ333は、前述の指令値にしたがって図1の電磁弁141を制御するためのものである。また、図6は情報蓄積コントローラ15について図示したものであり、ドライバ33として、前述のネットワークドライバ332を有している。
【0027】
図7は情報表示コントローラ16について図示したものであり、ドライバ33として、前述のネットワークドライバ332と、DIドライバ334およびディスプレイドライバ335とを有している。DIドライバ334は、オペレータの設定操作などを入力する図1のキー入力装置162からの出力を取得するためのものである。またディスプレイドライバ335は、表示装置161に車体の情報画面を表示するためのものである。
【0028】
このように、図3に示すコントローラのプログラムの基本構成は、主たる処理を実行するアプリケーション31と、アプリケーション31とドライバ33との間で行われるデータの授受を制御する中間層32と、外部と授受する信号を制御するドライバ33とである。また、図4〜7に示す各コントローラごとのプログラムの基本構成は、ドライバ33の他は全て同一である。このようにすることで、図1の電子機器システム1の構成を一部変更した場合において、プログラムはデータの授受を制御する中間層32のみを変更すればよい。そのため、プログラムの開発時間および開発コストを低減できる。
【0029】
なお、図4〜7に示す各コントローラごとのプログラムの基本構成において、ドライバ33として用いられる各種ドライバは、ここで説明したものの他に各種のドライバを必要に応じて用いてもよい。
【0030】
図3〜7におけるデータテーブル322に記憶された情報テーブルの内容の例を図8〜11に示す。図8(a)および(b)は電気レバーコントローラ12、図9は作業範囲制限制御コントローラ13、図10は車体制御コントローラ14、図11は情報表示コントローラ16のそれぞれに記憶された情報テーブルの例である。これらの情報テーブルにおいて、符号81〜85に示す列の内容は次のものを表す。列81はそのデータの名称を、列82はそのデータの取得先(出力元)を表すデータソースを、列83はデータソースが複数のチャネルを有している場合、そのデータの取得先のチャネル番号を、列84はそのデータがデータ格納部325に格納される場合、データ格納部325の格納先のアドレス番号を、列85はそのデータのデータサイズを、それぞれ表す。
【0031】
たとえば、図8(a)の符号86に示す行にはブーム操作レバー操作量という名称のデータが記述されている。このデータは、AD変換ドライバ331のチャネル0より出力され、データサイズが2バイトであることが表されている。また、符号87に示す行には、ブーム指令値という名称のデータが記述されている。このデータは、メモリ、すなわちデータ格納部325に格納されるとともに、このデータ格納部325より出力され、そのアドレス番号は0x0100番地、データサイズは2バイトであることが表されている。このような情報テーブルにより、中間層32においてデータを振り分けるときのデータの出力先や、データを要求するときの要求先、あるいはデータ格納部325へ格納するときのアドレス番号を、データ振り分け部321は判断する。
【0032】
次に、図4〜7に示す各コントローラのプログラムの基本構成において、各構成における処理内容および構成間でのデータフローの例を図12〜17に示す。以下、図12より順に説明を行う。図12には、図4に示す電気レバーコントローラ12および作業範囲制限制御コントローラ13の基本構成において、AD変換ドライバ331によりデータを取得するときのデータフロー図が示されている。ステップS91では、アプリケーション31がたとえば図8(a)の行86に示すブーム操作レバー操作量を必要とするときに、アプリケーション31において、そのデータを要求するデータ要求を発行し、中間層32に出力する。
【0033】
ステップS92〜S94の処理は、中間層32において実行される。ステップS92では、ステップS91でアプリケーション31より出力されたデータ要求を受け付ける。ステップS93では、データテーブル322に記憶された図8(a)の情報テーブルを参照して、要求されたブーム操作レバー操作量の取得先がAD変換ドライバ331であり、そのチャネル番号が0であることを判断する。ステップS94では、ステップS93で判断したデータの取得先、すなわちAD変換ドライバ331に対して、チャネル番号0のデータを要求する。
【0034】
ステップS95〜S97の処理は、AD変換ドライバ331において実行される。ステップS95では、ステップS94で中間層32より出力されたデータ要求を受け付ける。ステップS96では、要求されたチャネル番号0の計測値に対してAD変換を行い、その値をデータとして取得する。ステップS97では、ステップS96で取得したチャネル番号0のAD変換データを、中間層32へ出力する。
【0035】
ステップS98〜S910の処理は、中間層32において実行される。ステップS98では、ステップS97でAD変換ドライバ331より出力されたチャネル番号0のAD変換データを取得する。ステップS99では、データ変換部323において、ステップS98で取得したデータをアプリケーション31で使用するブーム操作レバー操作量のデータ形式に変換する。ステップS910では、ステップS99で得られたブーム操作レバー操作量のデータを、アプリケーション31に出力する。
【0036】
ステップS911では、アプリケーション31において、ステップS910で中間層32より出力されたブーム操作レバー操作量を取得する。ステップS911の後には、アプリケーション31は次の処理へ移行し、このブーム操作レバー操作量を用いて、各種の処理を実行する。
【0037】
図13には、図12と同じく、図4に示す電気レバーコントローラ12および作業範囲制限制御コントローラ13の基本構成において、AD変換ドライバ331によりデータを取得するときのデータフロー図が示されている。ただし、図13における処理内容は、前述の図12のものとは異なる。
【0038】
ステップS101では、中間層32において、タイマ部324により一定周期で処理を起動する。ステップS102では、データテーブル322に記憶された情報テーブル、たとえば図8(b)の情報テーブルを参照して、必要とするデータ、たとえば行88に示すブーム操作レバーセンサの取得先が、AD変換ドライバ331であり、そのチャネル番号が0であることを判断する。さらにAD変換ドライバ331に対して、このチャネル番号0のデータを要求する。
【0039】
ステップS103〜S105では、AD変換ドライバ331において、図12のステップS95〜S97と同じ処理が行われる。ステップS103で中間層32より出力されたデータ要求を受け付け、ステップS104でチャネル番号0のAD変換データを取得し、ステップS105で中間層32へ出力する。
【0040】
ステップS106〜S1010の処理は、中間層32において実行される。ステップS106では、図12のステップS98と同様に、ステップS105でAD変換ドライバ331より出力されたチャネル番号0のデータを取得する。ステップS107では、データ変換部323において、取得したデータをアプリケーション31で使用するデータ形式、すなわち図8(b)の行89に示すブーム操作レバー操作量に変換する。ステップS108では、ステップS107で変換したデータからノイズを除去するために、フィルタリング処理を行う。ステップS109では、データテーブル322に記憶された図8(b)の情報テーブルを参照して、このブーム操作レバー操作量がデータ格納部325に格納され、そのアドレス番号が0x0100番地であることを判断する。ステップS1010では、ステップS109で判断したデータ格納部325のアドレス番号0x0100番地へ、ステップS108でフィルタリング処理を行ったブーム操作レバー操作量のデータを格納する。なお、ステップS1010を実行した後はステップS101へ戻り、一定周期が経過すると、タイマ部324により上述した処理を再び起動する。
【0041】
ステップS1011は、アプリケーション31がブーム操作レバー操作量を必要とするときに、アプリケーション31において実行される。ステップS1011では、ブーム操作レバー操作量を要求するデータ要求を発行し、中間層32へ出力する。
【0042】
ステップS1012〜S1015の処理は、中間層32において実行される。ステップS1012では、ステップS1011でアプリケーション31より出力されたデータ要求を受け付ける。ステップS1013では、データテーブル322に記憶された図8(b)の情報テーブルを参照して、要求されたブーム操作レバー操作量の取得先がデータ格納部325であり、そのアドレス番号が0x0100番地であることを判断する。ステップS1014では、ステップS1013で判断したデータの取得先、すなわちデータ格納部325のアドレス番号0x0100番地に格納されているデータを取得する。ステップS1015では、その取得したデータをアプリケーション31に出力する。
【0043】
ステップS1016では、アプリケーション31において、ステップS1015で中間層32より出力されたブーム操作レバー操作量を取得する。ステップS1016の後には、アプリケーション31は次の処理へ移行し、このブーム操作レバー操作量を用いて、各種の処理を実行する。
【0044】
図14には、図4〜7に示す各コントローラの基本構成において、ネットワークドライバ332によりデータを取得するときのデータフロー図が示されている。ステップS111〜S113の処理は、ネットワークドライバ332において繰り返し実行される。ステップS111では、バスライン11を介して他のコントローラからデータが送信されるまでデータの受信待ちを行う。他のコントローラからのデータを受信すると、ステップS112でそのデータの受信処理を行い、次のステップS113でネットワークドライバ332に備えられた不図示のバッファに、その受信データを格納する。
【0045】
ステップS114では、中間層32において、タイマ部324により一定周期で処理を起動する。ステップS115では、データテーブル322に記憶された情報テーブルを参照して、必要とするデータの取得先を判断する。たとえば、図5に示す車体制御コントローラ14において、図10に示す情報テーブルを参照して、必要とする行90に示すブーム指令値の取得先が、ネットワークドライバ332であることを判断する。さらに、ネットワークドライバ332に対して、その必要とするブーム指令値のデータを要求する。
【0046】
ステップS116〜S117の処理は、ネットワークドライバ332において実行される。ステップS116では、ステップS115で中間層32より出力されたデータ要求を受け付ける。ステップS117では、要求されたブーム指令値のデータをバッファより取得する。ステップS118では、ステップS117で取得したブーム指令値を中間層32へ出力する。
【0047】
ステップS119〜S1111の処理は、中間層32において実行される。ステップS119では、ステップS118でネットワークドライバ332より出力されたブーム指令値を取得する。ステップS1110では、図10の情報テーブルを参照して、ブーム指令値の格納先のアドレス番号が0x0100番地であることを判断する。ステップS1111では、ステップS1110で判断したアドレス番号、すなわち0x0100番地へ、ステップS119で取得したブーム指令値を格納する。なお、ステップS1111を実行した後はステップS114へ戻り、一定周期が経過すると、タイマ部324により上述したステップS114以降の処理を再び起動する。
【0048】
ステップS1112は、アプリケーション31がブーム指令値を必要とするときに、アプリケーション31において実行される。ステップS1112では、ブーム指令値を要求するデータ要求を発行し、中間層32に出力する。
【0049】
ステップS1113〜S1116では、中間層32において、図13のステップS1012〜S1015と同じ処理が行われる。ステップS1113でアプリケーション31より出力されたデータ要求を受け付け、ステップS1114で図10の情報テーブルを参照して、要求されたブーム指令値がデータ格納部325のアドレス番号0x0100番地に格納されていることを判断し、ステップS1115でそのアドレス番号0x0100番地に格納されているデータを取得し、ステップS1116で取得したデータをアプリケーション31に出力する。
【0050】
ステップS1117では、アプリケーション31において、ステップS1116で中間層32より出力されたブーム指令値を取得する。ステップS1117の後には、アプリケーション31は次の処理へ移行し、このブーム指令値を用いて、各種の処理を実行する。
【0051】
図15には、図4〜7に示す各コントローラの基本構成において、ネットワークドライバ332により他のコントローラへデータを送信するときのデータフロー図が示されている。ステップS121では、アプリケーション31において算出されたデータ、たとえば図8(a)の行87に示すブーム指令値について、データ格納の要求を発行し、中間層32に出力する。
【0052】
ステップS122〜S125の処理は、中間層32において実行される。ステップS122では、ステップS121でアプリケーション31より出力されたデータ格納要求を受け付ける。ステップS123では、データテーブル322に記憶された図8(a)の情報テーブルを参照して、格納要求されたブーム指令値の格納先のアドレス番号が0x0100番地であることを判断する。ステップS124では、データ格納部325の、ステップS123で判断した格納先のアドレス番号、すなわち0x0100番地にデータを格納する。ステップS125では、データの格納が終了したことをアプリケーション31に通知する。
【0053】
ステップS126では、アプリケーション31において、ステップS125で中間層32よりデータの格納終了が通知されたことを確認する。ステップS125の後には、アプリケーション31は次の処理へ移行する。
【0054】
ステップS127〜S1210の処理は、中間層32において実行される。ステップS127では、タイマ部324により一定周期で処理を起動する。ステップS128では、図8(a)の情報テーブルを参照して、他のコントローラへ出力するブーム指令値の格納先のアドレス番号0x0100番地を判断する。ステップS129では、ステップS128で判断したアドレス番号0x0100番地からブーム指令値のデータを読み出し、そのデータを取得する。ステップS1210では、ステップS129で取得したブーム指令値のデータをネットワークドライバ332へ出力するとともに、データの出力要求を行う。
【0055】
ステップS1211〜S1213の処理は、ネットワークドライバ332において実行される。ステップS1211では、ステップS1210で中間層32より出力されたブーム指令値のデータ出力要求を受け付ける。ステップS1212では、ブーム指令値のデータをバスライン11へ送信する処理を行う。ステップS1213では、送信が終了したことを中間層32へ通知する。
【0056】
ステップS1214では、中間層32において、ステップS1213でネットワークドライバ332よりデータの送信終了が通知されたことを確認する。ステップS1214を実行した後はステップS127へ戻り、一定周期が経過すると、タイマ部324により上述したステップS127以降の処理を再び起動する。
【0057】
図16には、図5に示す車体制御コントローラの基本構成において、PWMドライバ333を使用して電磁弁141を制御する際のデータフロー図が示されている。ステップS131では、PWMドライバ333において用いるデューティを算出する処理を終えたアプリケーション31において、このデューティの格納要求を発行し、中間層32に出力する。
【0058】
ステップS132〜S135では、中間層32において、図15のステップS122〜S125と同様の処理が行われる。ステップS132でアプリケーション31より出力されたデューティの格納要求を受け付け、ステップS133で図10の情報テーブルを参照して、デューティの格納先のアドレス番号、たとえば行91に示すデューティ(ブーム)のアドレス番号0x0108番地を判断する。ステップS134でそのアドレス番号0x0108にデューティ(ブーム)のデータを格納し、ステップS135でデータの格納が終了したことをアプリケーション31に通知する。
【0059】
ステップS136では、アプリケーション31において、ステップS135で中間層32よりデータの格納終了が通知されたことを確認する。ステップS135の後には、アプリケーション31は次の処理へ移行する。
【0060】
ステップS137では、PWMドライバ333において、タイマにより周期的に処理を起動する。このタイマは、中間層32内のタイマ部324を用いてもよく、またタイマ部324とは別のものを用いてもよい。ステップS138では、制御対象である電磁弁141のデューティ、たとえば行91に示すデューティ(ブーム)のデータを中間層32に対して要求する。
【0061】
ステップS139〜S1312の処理は、中間層32において実行される。ステップS139では、ステップS138でPWMドライバ333より出力されたデータ要求を受け付ける。ステップS1310では、図10の情報テーブルを参照して、デューティ(ブーム)の格納先のアドレス番号が0x0108であることを判断する。ステップS1311では、ステップS1310で判断したアドレス番号0x0108のデータを読み出し、デューティ(ブーム)のデータを取得する。ステップS1312では、取得したデューティ(ブーム)をPWMドライバ33に出力する。
【0062】
ステップS1313では、PWMドライバ333において、ステップS1312で中間層32より出力されたデューティ(ブーム)を取得する。ステップS1314では、そのデューティ値に基づいて、PWMドライバ333よりPWM信号を電磁弁141に出力する。なお、ステップS1314を実行した後はステップS137へ戻り、一定周期が経過すると、タイマ部324により上述したステップS137以降の処理を再び起動する。
【0063】
図17には、図7に示す情報表示コントローラ16の基本構成において、DIドライバ334によりキー入力装置162からの出力を取得する際のデータフロー図が示されている。ステップS141では、DIドライバ334において、タイマにより周期的に処理を起動する。このタイマは、中間層32内のタイマ部324を用いてもよく、またタイマ部324とは別のものを用いてもよい。ステップS142では、そのときキー入力装置162から出力されているDI値、たとえば図11の行92に示すキー0のデータを取得する。ステップS143では、その取得したキー0のデータのノイズを除去するために、フィルタリング処理を行う。ステップS144では、DIドライバ334に備えられる不図示のバッファの所定チャネル、ここではチャネル番号0に、ステップS143でフィルタリング処理を行ったキー0のデータを格納する。
【0064】
ステップS145は、アプリケーション31がキー0のデータを必要とするときに、アプリケーション31において実行される。ステップS145では、キー0のデータを要求するデータ要求を発行し、中間層32へ出力する。
【0065】
ステップS146〜S148の処理は、中間層32において実行される。ステップS146では、ステップS145でアプリケーション31より出力されたデータ要求を受け付ける。ステップS147では、データテーブル322に記憶された図11の情報テーブルを参照して、要求されたキー0のデータの取得先がDIドライバ334であり、そのチャネル番号が0であることを判断する。ステップS148では、ステップS147で判断したデータの取得先、すなわちDIドライバ334に対して、チャネル番号0のデータを要求する。
【0066】
ステップS149〜S1411は、DIドライバ334において実行される。ステップS149では、ステップS148で中間層32より出力されたデータ要求を受け付ける。ステップS1410では、要求されたチャネル番号0のバッファに格納されたキー0のデータを読み出し、その値をデータとして取得する。ステップS1411では、ステップS1410で取得したチャネル番号0のデータを、中間層32へ出力する。
【0067】
ステップS1412では、中間層32において、ステップS1411でDIドライバ334より出力されたチャネル番号0のデータ、すなわちキー0のデータを取得する。ステップS1413では、そのキー0のデータをアプリケーション31へ出力する。
【0068】
ステップS1414では、アプリケーション31において、ステップS1413で中間層32より出力されたキー0のデータを取得する。ステップS1414の後には、アプリケーション31は次の処理へ移行し、このキー0のデータを用いて、各種の処理を実行する。
【0069】
以上のとおり図12〜17により説明したようにして、各コントローラはそれぞれの処理を行い、そのプログラムの基本構成の間でデータを入出力する。このようにすることで、各コントローラ間におけるデータの授受を制御する機能を中間層32のみに持たせることができ、図1の電子機器システム1の構成が変わった場合には、図8(a)、(b)および図9〜11に示すような情報テーブルを変更すればよい。なお以上説明した例は各コントローラの処理のうちの一部であり、その他にもさまざまな処理が行われるが、ここでは省略する。
【0070】
次に、作業範囲制限制御を行うときの処理内容について説明する。作業範囲制限制御とは、たとえば電線等の障害物が作業機械の作業範囲内に存在する場合に、その作業範囲に進入禁止領域を設定し、作業機械をその領域に進入しないように制御することである。この作業範囲制限制御の実施方法例を図18に示す。油圧ショベル2の作業範囲のうち、高さHL以上の領域151は進入禁止領域であり、この領域内に進入しないようフロント部26を制御する。高さHS以上の領域152は減速領域であり、この領域内にフロント部26が進入した場合は、進入禁止領域151へ進入しないようにフロント部26を減速する。このような領域151,152は、キー入力装置162をオペレータが操作することにより設定される。
【0071】
このような作業範囲制限制御は、フロント部26の各部に設定された参照点の位置を検出することにより行われる。この参照点は、たとえば符号M1〜M4に示す場所に設定される。それぞれの設定場所について説明する。参照点M1はブーム261とアームシリンダ265の基端部分の回動部、参照点M2はアーム262とアームシリンダ265のロッド先端部分の回動部、参照点M3はアーム262の上端部、参照点M4はバケット263の刃先が内接する円の最上部である。これらの参照点の位置の検出結果が前述の進入禁止領域151または減速領域152にあるか否かを判定し、その判定結果にしたがってフロント部26の動作を制御する。
【0072】
作業範囲制限制御を行うときの各コントローラにおける処理のフローチャートを図19〜22に示す。図19は情報表示コントローラ16、図20および21は電気レバーコントローラ12、図22は作業範囲制限制御コントローラ13においてそれぞれ実行されるプログラムに基づく処理フローである。以下、これらのフローチャートについて順に説明する。
【0073】
図19のフローチャートに示される処理は、情報表示コントローラ16の動作中、常に実行される。ステップS161では、キー入力装置162により作業範囲制限が設定されているか否かを判定する。作業範囲制限が設定されている場合はステップS162へ進み、設定されていない場合は処理を終了する。ステップS162では、作業範囲制限が設定されていることを示すデータをバスライン11へ出力する。このデータを他のコントローラが受信すると、そのコントローラは作業範囲制限が設定されていることを認識する。
【0074】
ステップS163では、作業範囲制限制御コントローラ13から出力されるブーム261、アーム262およびバケット263の角度を示すデータを、バスライン11を介して受信する。これらの角度データは、前述の図12または13のようにして作業範囲制限制御コントローラ13において取得され、図15のようにして送信されたものである。ステップS164では、ステップS163で受信した各部分の角度データに基づいてフロント部26の姿勢を計算し、表示装置161にその姿勢を表示する。ステップS164を実行した後は、ステップS161へ戻る。このようにして、情報表示コントローラ16は作業範囲制限の設定の有無を検知し、作業範囲制限が設定されている場合には、他のコントローラへその情報を送信するとともに、フロント部26の姿勢を表示装置161に表示する。
【0075】
図20のフローチャートに示される処理は、電気レバーコントローラ12の起動時に実行される。ステップS171では、バスライン11に接続されているコントローラの構成を確認する。これは、たとえば電気レバーコントローラ12を含んだ図1に示す電子機器システム1を起動するときに、各コントローラよりその種別を表すデータをバスライン11に交互に出力し、そのデータにより確認するなどの方法によって行われる。
【0076】
ステップS172では、ステップS171で確認した構成の中に、作業範囲制限制御コントローラ13があるか否かを判定する。作業範囲制限制御コントローラ13がある場合はステップS173へ進み、ない場合は図20の処理を終了する。ステップS173では、作業範囲制限制御コントローラ13があることを示すフラグを内部的に設定する。このフラグが設定されていることにより、次の図21に示す処理において、出力するデータの宛先を変更する。ステップS173を実行した後は、図20の処理を終了する。このようにして、電気レバーコントローラ12は作業範囲制限制御コントローラ13の有無を判定し、ある場合にはフラグを内部的に設定する。
【0077】
図21のフローチャートに示される処理は、図20のフローチャートに示される処理を実行した後、電気レバーコントローラ12の動作中は常に実行される。ステップS181では、電気式操作レバー121、122の操作量を取得する。この操作量は、前述の図12または13のようにして取得される。ステップS182では、ステップS181で取得したレバー操作量に基づいて、フロント部26を動作させるためにブームシリンダ264、アームシリンダ265およびバケットシリンダ266に加える圧油方向と流量(指令値)を演算する。
【0078】
ステップS183では、作業範囲制限制御コントローラ13があることを示すフラグが内部的に設定されているか否かを判定する。このフラグは、前述の図20に示すステップS173において起動時に設定される。フラグが設定されている場合はステップS184へ進み、設定されていない場合はステップS186へ進む。
【0079】
ステップS184では、作業範囲制限が設定されているか否かを判定する。この判定は、前述の図19に示すステップS162において、作業範囲制限が設定されていることを示すデータが情報表示コントローラ16よりバスライン11に出力されているか否かによって行われる。バスライン11上にそのデータが出力されている場合は、作業範囲制限が設定されていると判定し、ステップS185へ進む。そのデータが出力されていない場合は設定されていないと判定し、ステップS186へ進む。
【0080】
ステップS185では、ステップS182で演算された圧油方向と流量を示す指令値のデータの宛先を、作業範囲制限制御コントローラ13に設定する。ステップS186では、このデータの宛先を、車体制御コントローラ14に設定する。なおデータの宛先の設定は、バスライン11にデータを出力するとき、そのデータに宛先を示すヘッダを付加するなどの方法により行われる。ステップS187では、ステップS185またはS186で設定された宛先にしたがって、ステップS182で演算された指令値のデータを送信する。ステップS187を実行した後は、ステップS181へ戻る。このようにして、電気レバーコントローラ12は作業範囲制限制御コントローラ13の有無と作業範囲制限の設定の有無とを判定し、圧油方向と流量を示す指令値のデータの宛先を切り替える。
【0081】
図22のフローチャートに示される処理は、作業範囲制限が設定されているときには常に実行される。ステップS191では、図21のステップS187において、電気レバーコントローラ12より作業範囲制限制御コントローラ13宛に送信された指令値のデータを受信する。ステップS192では、傾斜センサ131、アーム角センサ133およびブーム角センサ134によりそれぞれ計測された傾斜角、アーム角およびブーム角のデータを取得する。これらの角度データは、前述の図12または13のようにして取得される。
【0082】
ステップS193では、ステップS192で取得された各角度データと、あらかじめ設定されるブーム261、アーム262およびバケット263の長さとに基づいて、参照点M1〜M4の位置を算出する。ステップS194では、ステップS193で算出した各参照点の位置により、いずれかの参照点が図18の減速領域152内にあるか否かを判定する。いずれかの参照点が減速領域152内にあると判定した場合はステップS195へ進み、いずれの参照点も減速領域152内にはないと判定した場合はステップS197へ進む。
【0083】
ステップS195では、ステップS193で算出された参照点M1〜M4の位置に基づいて、減速係数Kを算出する。減速係数Kは0≦K≦1で表され、指令値のうち流量を示すデータにこの減速係数Kを乗算することで、フロント部26の動作を減速して制限する。なお減速係数Kは、図18の高さHS、すなわち通常の領域と減速領域152の境界部分において1となり、高さHL、すなわち進入禁止領域151と減速領域152の境界部分において0となる。
【0084】
ステップS196では、ステップS195で算出された減速係数Kにより、ステップS191で受信した指令値のデータを補正する。ステップS197では、ステップS191で受信した指令値のデータ、またはステップS191で受信し、ステップS196で補正された指令値のデータを、車体制御コントローラ14に送信する。ステップS197を実行した後は、ステップS191へ戻る。このようにして、作業範囲制限制御コントローラ13は参照点のいずれかが減速領域にあるかを判定し、ある場合には指令値のデータを補正する。
【0085】
このようにして決定された指令値のデータに基づいて、車体制御コントローラ14ではデューティを算出し、PWMドライバ333により電磁弁141を制御する。このとき、車体制御コントローラ14において、電気レバーコントローラ12と作業範囲制限制御コントローラ13のいずれから送信された指令値のデータであるかを考慮する必要はない。いずれの場合にも、車体制御コントローラ14に宛てて送信された指令値のデータであることを認識できればよい。
【0086】
以上のようにして、オペレータにより操作された電気式操作レバー121および122の操作量にしたがって、電磁弁141が制御され、フロント部26が動作する。このときの各コントローラでの処理内容および各コントローラ間のデータフローを、図23および24に示す。図23は作業範囲制限が設定されているときのものであり、図24は設定されていないときのものである。以下にこれらについて順に説明する。
【0087】
図23のステップS201〜S203では、電気レバーコントローラ12において図18のフローチャートに示す処理を行い、算出した指令値のデータを送信する。このときの宛先は、作業範囲制限が設定されているため、図21のステップS185により、作業範囲制限制御コントローラ13となる。続くステップS204〜S208では、作業範囲制限制御コントローラ13において図22のフローチャートに示す処理を行い、補正された指令値のデータを車体制御コントローラ14へ送信する。
【0088】
ステップS209〜S2011では、車体制御コントローラ14において処理が行われる。ステップS209では、ステップS208において作業範囲制限制御コントローラ13から送信された、補正された指令値のデータを受信する。ステップS2010では、ステップS209で受信した指令値のデータに基づいて、電磁弁141をPWM制御するときのデューティを算出する。ステップS2011では、ステップS2010で算出したデューティによりPWM制御を行い、電磁弁141を駆動する。このとき、図16のようにしてアプリケーション31からPWMドライバ333に算出したデューティを出力する。
【0089】
図24では、以上説明した処理のうち、作業範囲制限制御コントローラ13においてステップS204〜S208の処理が行われない。このとき、電気レバーコントローラ12においてステップS201〜S203の処理を行い、算出した指令値のデータを送信する。このときの宛先は、作業範囲制限が設定されていないため、図21のステップS186により、車体制御コントローラ14となる。この指令値のデータを車体制御コントローラ14で受信し、図23のステップS209〜S2011と同様にして、電磁弁141を駆動する。以上のようにして、通常の場合と作業範囲制限を行う場合の制御方法を切り替える。
【0090】
上述した電子機器システム1によれば、次の作用効果を奏する。
(1)各コントローラのプロセッサは、コントローラのそれぞれに固有の処理を実行するアプリケーション31と、コントローラ間で授受する信号を制御し、バス11を介して他のコントローラからの信号を取得するドライバ33と、アプリケーション31とドライバ33との間でデータを授受する中間層32とにより、プログラム演算を実行して油圧ショベル2の各種機器を制御する。このようにしたので、電子機器システム1のコントローラの構成が変更されデータの取得先が変わっても、中間層32のみを変更すればよく、容易にプログラムを変更することができる。
(2)ドライバ33は、各センサにより計測された油圧ショベル2の各種機器の制御状態を示す信号をさらに取得し、中間層32は、その取得信号をアプリケーション31で使用するデータに変換する。また、その取得信号または変換したデータにフィルタリング処理を行い不要な成分を除去してもよい。このようにしたので、データの取得先が変わってドライバ33により取得される信号の内容が変わっても、アプリケーション31は変更せず中間層32のみを変更すればよく、またフィルタリング処理を行うことにより、アプリケーション31において不要な成分を除去する必要がない。そのため、容易にプログラムを変更することができる。
(3)中間層32で変換したデータをバス11に送信し、すべてのコントローラで変換したデータを共有化できるようにした。また、データごとに決められた所定の周期でバスに出力することとした。このようにしたので、いずれか1つのコントローラがデータ変換機能を備えていればよく、コスト低減を図ることができる。
(4)中間層32はドライバ33により取得される信号の取得先を記憶し、中間層32のみを変更することでその取得先を変更することができるようにしたので、容易にプログラムを変更することができる。
【0091】
なお、以上の実施の形態では、油圧ショベル2に搭載されてこれを制御する電子機器システムについて説明したが、本発明はこれに限定することなく、様々な建設機械や事業車両などの作業車両に搭載されてこれを制御する電子機器システムに適用することができる。
【0092】
以上の実施の形態では、電子制御装置を電子機器システム1、作業車両を油圧ショベル2、アプリケーションプログラムをアプリケーション31、ドライバプログラムをドライバ33、中間プログラムを中間層32でそれぞれ実現している。また、電気レバーコントローラを電気レバーコントローラ12、作業範囲制限制御コントローラを作業範囲制限制御コントローラ13、車体制御コントローラを車体制御コントローラ14、情報表示コントローラを情報表示コントローラ16、情報蓄積コントローラを情報蓄積コントローラ15でそれぞれ実現している。さらに、計測手段を各センサ131〜134、表示手段を表示装置161、入力手段をキー入力装置162で実現し、コントローラはバスライン11により接続されている。しかし、これらはあくまで一例であり、本発明の特徴が損なわれない限り、各構成要素は上記実施の形態に限定されない。
【0093】
【発明の効果】
以上詳細に説明したように本発明による作業車両用電子制御装置によれば、各コントローラのプロセッサは、コントローラのそれぞれに固有の処理を実行するアプリケーションプログラムと、コントローラ間で授受する信号を制御し、他のコントローラからの信号を取得するドライバプログラムと、アプリケーションプログラムとドライバプログラムとの間でデータを授受する中間プログラムとにより、プログラム演算を事項して作業車両の各種機器を制御する。このようにしたので、コントローラの構成が変更されデータの取得先が変わっても、中間プログラムのみを変更すればよく、容易にプログラムを変更することができる。
【図面の簡単な説明】
【図1】本発明による電子機器装置の構成を示す図である。
【図2】電子機器装置が搭載される油圧ショベルを示す図である。
【図3】コントローラのプログラムの基本構成を示す図である。
【図4】電気レバーコントローラおよび作業範囲制限制御コントローラのプログラムの基本構成を示す図である。
【図5】車体制御コントローラのプログラムの基本構成を示す図である。
【図6】情報蓄積コントローラのプログラムの基本構成を示す図である。
【図7】情報表示コントローラのプログラムの基本構成を示す図である。
【図8】電気レバーコントローラのデータテーブルに記憶された情報テーブルの例を示す図である。
【図9】作業範囲制限制御コントローラのデータテーブルに記憶された情報テーブルの例を示す図である。
【図10】車体制御コントローラのデータテーブルに記憶された情報テーブルの例を示す図である。
【図11】情報表示コントローラのデータテーブルに記憶された情報テーブルの例を示す図である。
【図12】AD変換されたデータを取得する際のデータフローの一例を示す図である。
【図13】AD変換されたデータを取得する際のデータフローの別の一例を示す図である。
【図14】ネットワーク上に流れているデータを取得する際のデータフローを示す図である。
【図15】ネットワークにデータを流す際のデータフローを示す図である。
【図16】電磁弁を制御する制御値を設定する際のデータフローを示す図である。
【図17】DIのデータを取得する際のデータフローを示す図である。
【図18】作業範囲制限制御の例を示す図である。
【図19】作業範囲制限制御を行う際の情報表示コントローラの処理フローを示す図である。
【図20】作業範囲制限制御を行う際の電気レバーコントローラの起動時の処理フローを示す図である。
【図21】作業範囲制限制御を行う際の電気レバーコントローラの稼働時の処理フローを示す図である。
【図22】作業範囲制限制御を行う際の作業範囲制限制御コントローラの処理フローを示す図である。
【図23】作業範囲制限制御を行うときの各コントローラ間のデータフローを示す図である。
【図24】作業範囲制限制御を行わないときの各コントローラ間のデータフローを示す図である。
【符号の説明】
1 電子機器システム
11 バスライン
12 電気レバーコントローラ
13 作業範囲制限制御コントローラ
14 車体制御コントローラ
15 情報蓄積コントローラ
16 情報表示コントローラ
2 油圧ショベル
21 下部走行体
22 上部旋回体
25 運転室
26 フロント部
261 ブーム
262 アーム
263 バケット
264 ブームシリンダ
265 アームシリンダ
266 バケットシリンダ
31 アプリケーション
32 中間層
33 ドライバ[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an electronic control device that controls various devices of a work vehicle such as a construction machine.
[0002]
[Prior art]
In recent years, computerization of construction machine control devices has also been advanced. In the electronic control device, multiple sensors are attached to the body of the construction machine, the controller collects information from each sensor, detects the state of the body, and controls the body based on the detected result. I have. In such a control device for a construction machine, not only the control of the vehicle body but also the collection and recording of data such as the occurrence status of a failure in order to manage the operation status are performed. In order to achieve these objects, there is a control system in which a plurality of controllers are networked using another controller for each function (Patent Document 1).
[0003]
[Patent Document 1]
JP-A-7-277675
[0004]
Some construction machine functions are installed as standard functions from the beginning, and some are added later as extended functions according to individual customer requirements. Therefore, in the control system described in
[0005]
The present invention provides a control system for a work vehicle such as a construction machine, which can easily change a program even if a data acquisition destination changes.
[0006]
[Means for Solving the Problems]
An electronic control unit for a work vehicle according to the first aspect of the present invention has at least two controllers connected to each other by a bus, each of which executes a program operation by a processor to control various devices of the work vehicle. An application program unique to each controller and a driver program for controlling signals transmitted and received between controllers and acquiring signals from other controllers via a bus, and transmitting and receiving data between the application program and the driver program The various programs are controlled by executing a program operation using the intermediate program.
According to a second aspect of the present invention, in the electronic control device according to the first aspect, the driver program further acquires a signal indicating a control state of each device measured by the measuring unit, and the intermediate program converts the acquired signal into an application program. This is converted into data to be used.
According to a third aspect of the present invention, in the electronic control device according to the first aspect, the driver program further acquires a signal indicating a control state of each device measured by the measuring unit, and the intermediate program performs a filtering process on the acquired signal. This is to remove unnecessary components from the acquired signal.
According to a fourth aspect of the present invention, in the electronic control device of the second aspect, the intermediate program performs a filtering process on the converted data to remove unnecessary components from the data.
According to a fifth aspect of the present invention, in the electronic control device according to the second or fourth aspect, the converted data is transmitted to a bus, and the converted data is shared by all controllers.
According to a sixth aspect of the present invention, in the electronic control device of the fifth aspect, the converted data is transmitted to the bus at a predetermined cycle determined for each data.
According to a seventh aspect of the present invention, in the electronic control device according to any one of the first to sixth aspects, the intermediate program stores an acquisition destination of a signal acquired by the driver program and changes the acquisition destination by changing only the intermediate program. It can be changed.
According to an eighth aspect of the present invention, in the electronic control device according to any one of the first to seventh aspects, the controller calculates a command value of a hydraulic pressure used for operation of the work vehicle based on an operation amount of a lever operated by an operator. A lever controller, a work range limit control controller that corrects a command value calculated by the electric lever controller, based on a positional relationship between an entry prohibited area set in a work range of the work vehicle and an operating part of the work vehicle, A vehicle body controller that controls the operation of the work vehicle based on a command value calculated by the electric lever controller or a command value corrected by the work range limit control controller; and a display unit that displays an operation state of the work vehicle to an operator. Controlling and changing the display content of the display means based on the state of the input means operated by the operator Storage controller that stores information transmitted and received between any two or more of an electronic lever controller, an electric lever controller, a work range restriction controller, a vehicle body controller, and a display controller. It is.
The invention according to
[0007]
BEST MODE FOR CARRYING OUT THE INVENTION
--First Embodiment--
FIG. 1 shows a first embodiment of an electronic device system according to the present invention. The
[0008]
The bus line 11 connects each controller described below with a bus to construct a network. Data between the controllers is input and output via the bus line 11. The bus line 11 is realized by, for example, a CAN (Controller Area Network).
[0009]
The electric lever controller 12 obtains the operation amounts of the two-axis electric operation levers 121 and 122 operated by the operator and, based on the obtained operation amounts, command values for controlling the
[0010]
The work range restriction controller 13 calculates a command value for controlling the
[0011]
The work range restriction controller 13 includes a
[0012]
The
[0013]
The information storage controller 15 records various information measured by an engine speed sensor, a temperature sensor, and the like (not shown), for example, vehicle operation information and a failure history. The recorded information may be displayed on the
[0014]
The
[0015]
Next, the
[0016]
The
[0017]
Next, the processing contents of the controllers 12 to 16 shown in FIG. 1 will be described in detail. Programs for executing the respective processes are mounted in the ROM of each controller, and have the same basic configuration. The basic configuration of the program in each controller includes an
[0018]
The
[0019]
The
[0020]
The data table 322 stores an information table required when the
[0021]
The
[0022]
The
[0023]
The
[0024]
The
[0025]
FIGS. 4 to 7 show the basic configuration of the program described above for each of the controllers 12 to 16 in FIG. FIG. 4 illustrates a basic configuration of programs of the electric lever controller 12 and the work range restriction control controller 13. The
[0026]
FIG. 5 illustrates the
[0027]
FIG. 7 illustrates the
[0028]
As described above, the basic configuration of the program of the controller shown in FIG. 3 includes an
[0029]
In addition, in the basic configuration of the program for each controller shown in FIGS. 4 to 7, various drivers used as the
[0030]
8 to 11 show examples of the contents of the information table stored in the data table 322 in FIGS. 8A and 8B show examples of information tables stored in the electric lever controller 12, FIG. 9 shows an example of the work range restriction control controller 13, FIG. 10 shows an example of an information table stored in the vehicle
[0031]
For example, data indicated by
[0032]
Next, in the basic configuration of the program of each controller shown in FIGS. 4 to 7, examples of processing contents in each configuration and data flows between the configurations are shown in FIGS. Hereinafter, description will be made in order from FIG. FIG. 12 shows a data flow diagram when data is acquired by the AD conversion driver 331 in the basic configuration of the electric lever controller 12 and the work range restriction control controller 13 shown in FIG. In step S91, when the
[0033]
The processing of steps S92 to S94 is executed in the
[0034]
The processing of steps S95 to S97 is executed by the AD conversion driver 331. In step S95, the data request output from the
[0035]
The processing of steps S98 to S910 is executed in the
[0036]
In step S911, the
[0037]
FIG. 13 shows a data flow diagram when data is acquired by the AD conversion driver 331 in the basic configuration of the electric lever controller 12 and the work range restriction control controller 13 shown in FIG. However, the processing contents in FIG. 13 are different from those in FIG.
[0038]
In step S101, in the
[0039]
In steps S103 to S105, the AD conversion driver 331 performs the same processing as steps S95 to S97 in FIG. In step S103, the data request output from the
[0040]
The processing of steps S106 to S1010 is executed in the
[0041]
Step S1011 is executed in the
[0042]
The processing of steps S1012 to S1015 is executed in the
[0043]
In step S1016, the
[0044]
FIG. 14 shows a data flow diagram when data is acquired by the
[0045]
In step S114, the processing is started in the
[0046]
The processing of steps S116 to S117 is executed by the
[0047]
The processing of steps S119 to S1111 is executed in the
[0048]
Step S1112 is executed in the
[0049]
In steps S1113 to S1116, the same processing as steps S1012 to S1015 in FIG. In step S1113, the data request output from the
[0050]
In step S1117, the
[0051]
FIG. 15 shows a data flow diagram when the
[0052]
The processing of steps S122 to S125 is executed in the
[0053]
In step S126, the
[0054]
The processing of steps S127 to S1210 is executed in the
[0055]
The processing of steps S1211 to S1213 is executed by the
[0056]
In step S1214, the
[0057]
FIG. 16 shows a data flow diagram when controlling the
[0058]
In steps S132 to S135, the same processing as in steps S122 to S125 in FIG. 15 is performed in the
[0059]
In step S136, the
[0060]
In step S137, the
[0061]
The processing of steps S139 to S1312 is executed in the
[0062]
In step S1313, the
[0063]
FIG. 17 is a data flow diagram when the output from the
[0064]
Step S145 is executed in the
[0065]
The processing of steps S146 to S148 is executed in the
[0066]
Steps S149 to S1411 are executed by the
[0067]
In step S1412, the
[0068]
In step S1414, the
[0069]
As described above with reference to FIGS. 12 to 17, each controller performs each processing and inputs and outputs data between the basic components of the program. In this way, only the
[0070]
Next, a description will be given of processing contents when performing the work range restriction control. The work range restriction control is, for example, when an obstacle such as an electric wire is present in the work range of the work machine, setting an entry-prohibited area in the work range and controlling the work machine so as not to enter the work area. It is. FIG. 18 shows an example of a method of performing the work range restriction control. In the working range of the
[0071]
Such work range restriction control is performed by detecting the position of a reference point set in each part of the
[0072]
FIGS. 19 to 22 show flowcharts of processing in each controller when performing the work range restriction control. FIG. 19 is a processing flow based on a program executed by the
[0073]
The process shown in the flowchart of FIG. 19 is always executed during the operation of the
[0074]
In step S <b> 163, data indicating the angles of the
[0075]
The process shown in the flowchart of FIG. 20 is executed when the electric lever controller 12 is started. In step S171, the configuration of the controller connected to the bus line 11 is confirmed. For example, when the
[0076]
In step S172, it is determined whether or not the work range restriction controller 13 is included in the configuration confirmed in step S171. If there is the work range restriction controller 13, the process proceeds to step S173, and if not, the process in FIG. 20 ends. In step S173, a flag indicating that there is the work range restriction controller 13 is set internally. By setting this flag, the destination of the data to be output is changed in the next process shown in FIG. After executing step S173, the processing in FIG. 20 ends. In this manner, the electric lever controller 12 determines the presence or absence of the work range restriction control controller 13, and in some cases, sets a flag internally.
[0077]
The processing shown in the flowchart of FIG. 21 is always executed during the operation of the electric lever controller 12 after executing the processing shown in the flowchart of FIG. In step S181, the operation amounts of the electric operation levers 121 and 122 are acquired. This operation amount is obtained as shown in FIG. 12 or 13 described above. In step S182, based on the lever operation amount acquired in step S181, the direction of the pressure oil and the flow rate (command value) to be applied to the
[0078]
In step S183, it is determined whether or not a flag indicating that the work range restriction controller 13 is present is set internally. This flag is set at the time of startup in step S173 shown in FIG. When the flag is set, the process proceeds to step S184, and when the flag is not set, the process proceeds to step S186.
[0079]
In the step S184, it is determined whether or not the work range restriction is set. This determination is made based on whether or not data indicating that the work range restriction is set has been output from the
[0080]
In step S185, the destination of the data of the command value indicating the pressure oil direction and the flow rate calculated in step S182 is set in the work range restriction controller 13. In step S186, the destination of this data is set to the
[0081]
The process shown in the flowchart of FIG. 22 is always executed when the work range restriction is set. In step S191, command value data transmitted from the electric lever controller 12 to the work range restriction control controller 13 in step S187 of FIG. 21 is received. In step S192, data of the tilt angle, the arm angle, and the boom angle measured by the
[0082]
In step S193, the positions of the reference points M1 to M4 are calculated based on the angle data acquired in step S192 and the preset lengths of the
[0083]
In step S195, a deceleration coefficient K is calculated based on the positions of the reference points M1 to M4 calculated in step S193. The deceleration coefficient K is represented by 0 ≦ K ≦ 1, and the operation of the
[0084]
In step S196, the command value data received in step S191 is corrected based on the deceleration coefficient K calculated in step S195. In step S197, the command value data received in step S191 or the command value data received in step S191 and corrected in step S196 is transmitted to the
[0085]
Based on the data of the command value determined in this way, the
[0086]
As described above, the
[0087]
In steps S201 to S203 in FIG. 23, the electric lever controller 12 performs the processing shown in the flowchart in FIG. 18 and transmits data of the calculated command value. At this time, since the work range restriction is set for the destination, the work range restriction controller 13 is set in step S185 in FIG. In subsequent steps S204 to S208, the process shown in the flowchart of FIG. 22 is performed in the work range restriction controller 13 and the data of the corrected command value is transmitted to the
[0088]
In steps S209 to S2011, the processing is performed in the
[0089]
In FIG. 24, among the processes described above, the processes of steps S204 to S208 are not performed in the work range restriction controller 13. At this time, the electric lever controller 12 performs the processing of steps S201 to S203 and transmits the data of the calculated command value. At this time, since the work range restriction is not set, the destination is the
[0090]
According to the
(1) The processor of each controller includes an
(2) The
(3) The data converted by the
(4) The
[0091]
In the above embodiment, the electronic device system mounted on the
[0092]
In the above embodiment, the electronic control unit is realized by the
[0093]
【The invention's effect】
As described in detail above, according to the electronic control unit for a work vehicle according to the present invention, the processor of each controller controls an application program that executes a process unique to each controller, and a signal transmitted and received between the controllers. A driver program for acquiring signals from another controller and an intermediate program for exchanging data between the application program and the driver program control various devices of the work vehicle by performing program calculations. With this configuration, even if the configuration of the controller is changed and the data acquisition destination is changed, only the intermediate program needs to be changed, and the program can be easily changed.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of an electronic apparatus according to the present invention.
FIG. 2 is a diagram illustrating a hydraulic shovel on which the electronic device is mounted.
FIG. 3 is a diagram showing a basic configuration of a program of a controller.
FIG. 4 is a diagram showing a basic configuration of programs of an electric lever controller and a work range restriction control controller.
FIG. 5 is a diagram showing a basic configuration of a program of a vehicle body control controller.
FIG. 6 is a diagram showing a basic configuration of a program of an information storage controller.
FIG. 7 is a diagram showing a basic configuration of a program of an information display controller.
FIG. 8 is a diagram illustrating an example of an information table stored in a data table of the electric lever controller.
FIG. 9 is a diagram showing an example of an information table stored in a data table of the work range restriction controller.
FIG. 10 is a diagram showing an example of an information table stored in a data table of a vehicle body controller.
FIG. 11 is a diagram showing an example of an information table stored in a data table of the information display controller.
FIG. 12 is a diagram showing an example of a data flow when acquiring AD-converted data.
FIG. 13 is a diagram showing another example of a data flow when acquiring AD-converted data.
FIG. 14 is a diagram showing a data flow when acquiring data flowing on a network.
FIG. 15 is a diagram showing a data flow when data is transmitted to a network.
FIG. 16 is a diagram showing a data flow when setting a control value for controlling the solenoid valve.
FIG. 17 is a diagram illustrating a data flow when acquiring DI data.
FIG. 18 is a diagram illustrating an example of work range restriction control.
FIG. 19 is a diagram showing a processing flow of an information display controller when performing work range restriction control.
FIG. 20 is a diagram showing a processing flow when the electric lever controller is activated when performing the work range restriction control.
FIG. 21 is a diagram showing a processing flow when operating the electric lever controller when performing work range restriction control.
FIG. 22 is a diagram illustrating a processing flow of a work range restriction control controller when performing work range restriction control.
FIG. 23 is a diagram showing a data flow between controllers when performing work range restriction control.
FIG. 24 is a diagram illustrating a data flow between controllers when the work range restriction control is not performed.
[Explanation of symbols]
1 Electronic equipment system
11 bus line
12 Electric lever controller
13 Work range limit controller
14 Body control controller
15 Information storage controller
16 Information display controller
2 Hydraulic excavator
21 Undercarriage
22 Upper revolving superstructure
25 Driver's cab
26 Front part
261 boom
262 arm
263 bucket
264 boom cylinder
265 arm cylinder
266 Bucket cylinder
31 Application
32 middle class
33 Driver
Claims (9)
前記プロセッサは、
前記コントローラのそれぞれに固有のアプリケーションプログラムと、
前記コントローラ間で授受する信号を制御し、前記バスを介して他のコントローラからの信号を取得するドライバプログラムと、
前記アプリケーションプログラムとドライバプログラムとの間でデータを授受する中間プログラムとにより前記プログラム演算を実行して前記各種機器を制御することを特徴とする作業車両用電子制御装置。Each executing a program operation by a processor to control various devices of the work vehicle, having at least two controllers connected to each other by a bus,
The processor comprises:
An application program specific to each of the controllers;
A driver program for controlling signals transmitted and received between the controllers and acquiring signals from other controllers via the bus;
An electronic control device for a work vehicle, wherein the various programs are controlled by executing the program calculation using an intermediate program that exchanges data between the application program and a driver program.
前記ドライバプログラムは、計測手段により計測された前記各種機器の制御状態を示す信号をさらに取得し、
前記中間プログラムは、その取得信号を前記アプリケーションプログラムで用いるデータに変換することを特徴とする作業車両用電子制御装置。The electronic control device according to claim 1,
The driver program further acquires a signal indicating a control state of the various devices measured by a measuring unit,
The electronic control device for a work vehicle, wherein the intermediate program converts the obtained signal into data used in the application program.
前記ドライバプログラムは、計測手段により計測された前記各種機器の制御状態を示す信号をさらに取得し、
前記中間プログラムは、その取得信号にフィルタリング処理を行って取得信号より不要な成分を除去することを特徴とする作業車両用電子制御装置。The electronic control device according to claim 1,
The driver program further acquires a signal indicating a control state of the various devices measured by a measuring unit,
The intermediate program performs a filtering process on the acquired signal to remove unnecessary components from the acquired signal.
前記中間プログラムは、前記変換したデータにフィルタリング処理を行ってそのデータより不要な成分を除去することを特徴とする作業車両用電子制御装置。The electronic control device according to claim 2,
An electronic control device for a work vehicle, wherein the intermediate program performs a filtering process on the converted data to remove unnecessary components from the data.
前記変換したデータを前記バスに送信し、すべてのコントローラで前記変換したデータを共有化することを特徴とする作業車両用電子制御装置。The electronic control device according to claim 2 or 4,
The electronic control device for a work vehicle, wherein the converted data is transmitted to the bus, and the converted data is shared by all controllers.
前記変換したデータは、データごとに決められた所定の周期で前記バスに送信されることを特徴とする作業車両用電子制御装置。The electronic control device according to claim 5,
The electronic control unit for a work vehicle, wherein the converted data is transmitted to the bus at a predetermined cycle determined for each data.
前記中間プログラムは、前記ドライバプログラムにより取得される信号の取得先を記憶し、中間プログラムのみを変更することで前記取得先を変更することができることを特徴とする作業車両用電子制御装置。The electronic control device according to any one of claims 1 to 6,
An electronic control device for a work vehicle, wherein the intermediate program stores an acquisition destination of a signal acquired by the driver program, and can change the acquisition destination by changing only the intermediate program.
前記コントローラは、オペレータにより操作されるレバーの操作量に基づいて前記作業車両の動作に用いる油圧の指令値を算出する電気レバーコントローラと、
前記作業車両の作業範囲に設定された進入禁止領域と前記作業車両の動作部位との位置関係に基づいて、前記電気レバーコントローラにより算出された指令値を補正する作業範囲制限制御コントローラと、
前記電気レバーコントローラにより算出された指令値または前記作業範囲制限制御コントローラにより補正された指令値に基づいて、前記作業車両の動作を制御する車体制御コントローラと、
前記オペレータに前記作業車両の動作状態を表示する表示手段を制御し、前記オペレータが操作する入力手段の状態に基づいて前記表示手段の表示内容を変更する表示制御コントローラと、
前記電気レバーコントローラ、作業範囲制限制御コントローラ、車体制御コントローラおよび表示制御コントローラのいずれか2つ以上のコントローラ間で授受される情報を蓄積する情報蓄積コントローラのいずれかであることを特徴とする作業車両用電子制御装置。The electronic control device according to any one of claims 1 to 7,
An electric lever controller that calculates a command value of a hydraulic pressure used for the operation of the work vehicle based on an operation amount of a lever operated by an operator,
A work range limit control controller that corrects a command value calculated by the electric lever controller, based on a positional relationship between the entry prohibited area set in the work range of the work vehicle and an operating part of the work vehicle,
Based on a command value calculated by the electric lever controller or a command value corrected by the work range limit control controller, a vehicle body controller that controls the operation of the work vehicle;
A display controller that controls display means for displaying an operation state of the work vehicle to the operator, and changes display contents of the display means based on a state of input means operated by the operator;
A work vehicle that is any one of an information storage controller that stores information transmitted and received between two or more of the electric lever controller, the work range restriction control controller, the vehicle body control controller, and the display control controller For electronic control device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003056590A JP2004263489A (en) | 2003-03-04 | 2003-03-04 | Electronic control unit for work vehicle |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003056590A JP2004263489A (en) | 2003-03-04 | 2003-03-04 | Electronic control unit for work vehicle |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004263489A true JP2004263489A (en) | 2004-09-24 |
Family
ID=33120224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003056590A Pending JP2004263489A (en) | 2003-03-04 | 2003-03-04 | Electronic control unit for work vehicle |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004263489A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102071716B (en) * | 2009-11-20 | 2012-06-13 | 北汽福田汽车股份有限公司 | Control system and method for rotating speed of excavator |
-
2003
- 2003-03-04 JP JP2003056590A patent/JP2004263489A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102071716B (en) * | 2009-11-20 | 2012-06-13 | 北汽福田汽车股份有限公司 | Control system and method for rotating speed of excavator |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1199029C (en) | Dimensional measurement column and method for changing measurement mode through inputting command | |
EP1034982A2 (en) | Automobile control unit having different program modules | |
EP1616746A3 (en) | Vehicle control system | |
EP1283501A3 (en) | System and method for collecting vehicle data and diagnosing the vehicle, and method for automatically setting a vehicle convenience apparatus using a smartcard | |
EP0816573A3 (en) | Front control system for construction machine | |
EP3273037B1 (en) | Shovel | |
KR20170068569A (en) | Work vehicle | |
EP2169503A3 (en) | Multi-vehicle high intensity perception | |
EP0967134A3 (en) | Apparatus and method for producing a desired return torque in a vehicle power steering system | |
EP0803401A3 (en) | Apparatus for automatically controlling a direction of an optical axis of a vehicle headlight | |
CN108885455A (en) | Coordinates measurement device and working truck | |
CN107848567B (en) | Power steering adjustment device | |
JP2004263489A (en) | Electronic control unit for work vehicle | |
WO2005029302A3 (en) | Three-dimensional user interface for controlling a virtual reality graphics system by function selection | |
US11241989B2 (en) | Configuration of a massage program for a massage device of a vehicle seat | |
EP1755014A2 (en) | Point-sequence approximation method and apparatus | |
EP1560143A3 (en) | Telemetry system for a vehicle fleet | |
JPH08273015A (en) | Managing system for rental working machine | |
EP1216876A3 (en) | Operator interface system | |
EP1186990A3 (en) | Information processing apparatus and system, information processing method and device driver | |
JP3610460B2 (en) | Measuring device, measuring method, propulsion trajectory management device, and propulsion trajectory management method for propulsion trajectory and propulsion posture in propulsion shield method | |
JP4826885B2 (en) | Control device for vehicle display | |
JP2018088104A (en) | Data collection device of vehicle | |
JPH07160413A (en) | Joy stick type operation lever device | |
JP2003182473A (en) | Self diagnosing apparatus of display device for vehicle |