(57)【要約】【課題】作業機内に設けられた複数の作業機用制御装置に対して、プログラム等の更新を確実に行うことができる。【解決手段】車両用通信ネットワークに接続された作業機用制御装置２５に更新プログラムを書き込む作業機用制御装置２５のプログラム更新方法において、作業機用制御装置２５のプログラムのチェックに用いるデータを予め設定しておき、当該更新プログラムを作業機用制御装置２５に書き込む前に、予め作業機用制御装置２５に格納されている既存プログラムのチェックに用いるデータを消去しておき、その後に、更新プログラムを作業機用制御装置２５に書き込むと共に、当該更新プログラムのチェックに用いるデータを最後に作業機用制御装置２５に書き込む。【選択図】図１
2010176372.tif 000002
【特許請求の範囲】
【請求項１】
車両用通信ネットワークに接続された作業機用制御装置に更新プログラムを書き込む作業機用制御装置のプログラム更新方法において、
作業機用制御装置のプログラムのチェックに用いるデータを予め設定しておき、当該更新プログラムを作業機用制御装置に書き込む前に、予め作業機用制御装置に格納されている既存プログラムのチェックに用いるデータを消去しておき、その後に、更新プログラムを作業機用制御装置に書き込むと共に、当該更新プログラムのチェックに用いるデータを最後に作業機用制御装置に書き込むことを特徴とする作業機用制御装置のプログラム更新方法。
【請求項２】
更新プログラムを作業機用制御装置の記憶部に書き込むに際し、当該記憶部に格納されている既存プログラムのチェックに用いるデータが格納されている物理領域を消去した後、この物理領域を除く領域に更新プログラムを書き込んでいき、その後に、更新プログラムのチェックに用いるデータを物理領域に書き込むようにしていることを特徴とする請求項１に記載の作業機用制御装置のプログラム更新方法。
【請求項３】
前記作業機用制御装置の記憶部は、プログラムを一時的に記憶する一時的記憶部と、プログラムを保持する保持記憶部とを備えており、前記更新プログラムを作業機用制御装置の記憶部に書き込むに際し、プログラムを書き込む動作をさせるための書き込みプログラムを外部から受信して一時的記憶部に格納しておくと共に、更新プログラムを書き込みプログラムとは領域が別の一時的記憶部に格納した上で、前記一時的記憶部に記憶した書き込みプログラムを動作させて前記更新プログラムを前記保持記憶部に書き込むことを特徴とする請求項２に記載の作業機用制御装置のプログラム更新方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バックホー等の作業機用制御装置のプログラム更新方法に関する。
【背景技術】
【０００２】
従来より、バックホー等の作業機を制御する制御装置が開示されたものとして特許文献１や特許文献２に示すものがある。
特許文献１には、操作部材の操作量とこの操作量に対応して作動信号とは別に仮想的に定められた仮想制御量との関係が示された仮想制御量変換マップと、仮想制御量の上限値を多段のレベルに分けた制御量上限変換マップと、仮想制御量を作動信号に変換する実制御変換マップとを備えた制御装置が開示されている。
特許文献２には、作業機が位置する地域に応じて少なくとも表示項目が異なる地域別表示画面を構築して、これらの地域別表示画面を選択して表示できるようにする表示態様構成手段と、ＧＰＳ衛星から出力される電波に基づいて作業機が位置する地域を判定する現在位置判定手段と、この現在位置判定手段により判定された作業機の地域に応じた地域別表示画面を表示態様構成手段より選択し、選択採用された表示画面で作業機の表示装置に表示制御を行なう表示制御手段とを有する表示制御装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２３１６９６号公報
【特許文献１】特開２００７−１１３２２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１は、仮想制御量変換マップと制御量上限変換マップ及び実制御変換マップに基づいて操作部材の操作量に応じた作動信号を出力することによってアクチュエータを制御するものである。このような制御装置において、各種変換マップ、即ち、制御に用いる制御プログラムを更新する場合には、制御装置を作業機から取り外して、当該制御装置を制御プログラムを書込装置に接続することによって、プログラム更新を行っているのが実情である。
また、特許文献２は、ＧＰＳ衛星から出力される電波に基づいて作業機が位置する地域を判定して、当該作業機の地域に応じて表示画面の文字等の言語を制御するものである。このような表示制御装置においても、言語を追加する場合には、表示制御装置を作業機から取り外して、当該表示制御装置を書込装置に接続することによって、プログラムやデータの更新を行っているのが実情である。
【０００５】
特許文献１や特許文献２に示された制御装置においては、プログラムの書込を行っている途中に何らかの事情でプログラムの書込動作が停止したり、プログラムの書込が正常通り行われない場合は、書込作業後に制御装置が動かなくなるという虞があった。
本発明は上記問題点に鑑み、作業機内に設けられた複数の作業機用制御装置に対して、プログラム更新を確実に行うことができる作業機用制御装置のプログラム更新方法を提供することを目的としたものである。
【課題を解決するための手段】
【０００６】
この技術的課題を解決するための本発明の技術的手段は、車両用通信ネットワークに接続された作業機用制御装置に更新プログラムを書き込む作業機用制御装置のプログラム更新方法において、作業機用制御装置のプログラムのチェックサムに用いるデータを予め設定しておき、当該更新プログラムを作業機用制御装置に書き込む前に、予め作業機用制御装置に格納されている既存プログラムのチェックサムに用いられたデータを消去しておき、その後に、更新プログラムを作業機用制御装置に書き込むと共に、当該更新プログラムのチェックサムに用いるデータを最後に作業機用制御装置に書き込む点にある。
【０００７】
更新プログラムを作業機用制御装置の記憶部に書き込むに際し、当該記憶部に格納されている既存プログラムのチェックサムに用いられるデータが格納されている物理領域を消去した後、この物理領域を除く領域に更新プログラムを書き込んでいき、その後に、更新プログラムのチェックサムに用いるデータを物理領域に書き込むようにしていることが好ましい。
前記作業機用制御装置の記憶部は、プログラムを一時的に記憶する一時的記憶部と、プログラムを保持する保持記憶部とを備えており、前記更新プログラムを作業機用制御装置の記憶部に書き込むに際し、プログラムを書き込む動作をさせるための書き込みプログラムを外部から受信して一時的記憶部に格納しておくと共に、更新プログラムを書き込みプログラムとは領域が別の一時的記憶部に格納した上で、前記一時的記憶部に記憶した書き込みプログラムを動作させて前記更新プログラムを前記保持記憶部に書き込むことが好ましい。
【発明の効果】
【０００８】
本発明によれば、作業機内に設けられた複数の作業機用制御装置に対して、プログラム等の更新を確実に行うことができる。
【図面の簡単な説明】
【０００９】
【図１】作業機に設けた作業機用制御装置にプログラムを書き込む際の全体構成図である。
【図２】メイン制御装置の制御プログラムを更新する場合の動作を示すフローチャートである。
【図３】サブ制御装置の制御プログラムを更新する場合の動作を示すフローチャートである。
【図４】作業機用制御装置のプログラムを更新する際でのプログラムの書き込み手順を示したフローチャートである。
【図５】作業機用制御装置のプログラムを更新する際でのプログラムの書き込み手順を図示したものであり、（ａ）書込プログラムをプログラム書込領域に格納する状態を示し、（ｂ）データ書込領域に更新プログラムを格納する状態を示し、（ｃ）アプリケーション領域内のチェックサムを消去する状態を示し、（ｄ）ＲＯＭ領域のチェックサム領域を除くアプリケーション領域に更新プログラムを格納する状態を示し、（ｅ）ＲＯＭ領域のチェックサム領域に更新プログラムのチェックサムを格納する状態を示す図である。
【図６】作業機の全体側面図を示している。
【発明を実施するための形態】
【００１０】
以下、本発明の実施の形態を図面に基づいて説明する。
図６は本発明の作業機用制御装置のプログラム更新方法における作業機の全体図を示している。
作業機及び当該作業機に設けられた作業機用制御装置について説明する。
なお、本発明の作業機用制御装置のプログラム更新方法は、この実施の形態の作業機や作業機用制御装置に限定されない。
図６に示すように、作業機（バックホー）１は、下部の走行装置２と、上部の旋回体３とを備えている。
【００１１】
走行装置２は、ゴム製覆帯を有する左右一対の走行体４を備え、両走行体４を走行モータＭで駆動するようにしたクローラ式走行装置が採用されている。また、該走行装置２の前部にはドーザ５が設けられている。
旋回体３は、走行装置２上に旋回ベアリング１１を介して上下方向の旋回軸回りに左右旋回自在に支持された旋回台１２と、該旋回台１２の前部に備えられた作業装置１３（掘削装置）とを有している。旋回台１２上には、エンジン７，ラジエータ８，運転席９，燃料タンク，作動油タンク等が設けられている。また、旋回台１２上には運転席９を囲むキャビン１４が設けられている。
【００１２】
作業装置１３は、旋回台１２の前部に左右方向の中央部よりやや右寄りにオフセットして設けられた支持ブラケット１６に上下方向の軸心回りに左右揺動自在に支持されたスイングブラケット１７と、該スイングブラケット１７に基部側を左右方向の軸心廻りに回動自在に枢着されて上下揺動自在に支持されたブーム１８と、該ブーム１８の先端側に左右方向の軸心廻りに回動自在に枢着されて前後揺動自在に支持されたアーム１９と、該アーム１９の先端側にスクイ・ダンプ動作可能に設けられたバケット２０とを備えている。
スイングブラケット１７は、旋回台１２内に備えられたスイングシリンダの伸縮によって揺動され、ブーム１８は、該ブーム１８とスイングブラケット１７との間に介装されたブームシリンダ２２の伸縮によって揺動され、アーム１９は、該アーム１９とブーム１８との間に介装されたアームシリンダ２３の伸縮によって揺動され、バケット２０は、該バケット２０とアーム１９との間に介装されたバケットシリンダ２１の伸縮によってスクイ・ダンプ動作される。なお、スイングシリンダ、ブームシリンダ２２、アームシリンダ２３、バケットシリンダ２１などの各種アクチュエータは、それぞれのアクチュエータに対して作動油を供給可能な制御弁（コントロールバルブ）により動作するようになっている。また、制御弁へのパイロット圧を後述する操作部材の操作及び電磁比例弁等によって調整することによって、当該制御弁への作動油の流量が変化するものとなっている。
【００１３】
図１は、作業機に設けた作業機用制御装置にプログラムを書き込む際の全体構成図を示したものである。
作業機１には、複数の作業機用制御装置（コントローラ）２５が設けられている。この複数の作業機用制御装置２５は互いに、車両用通信ネットワーク２６によって情報（データ）の送受信（入出力）が行えるようになっている。ここで、車両用通信ネットワーク２６とは、Controller Area Network、即ち、ＣＡＮ通信である。
図１に示すように、作業機用制御装置２５は、作業機１を動作させるための電子電気機器類である。例えば、この実施形態では、３つの作業機用制御装置２５が作業機１に備えられている。
【００１４】
第１作業機用制御装置２５Ａ（メイン制御装置ということがある）は、入力された各種制御信号等に基づいて、オートアイドル制御（ＡＩ制御）や流量制御を行うものである。
メイン制御装置２５Ａには、スイングシリンダ、ブームシリンダ２２、アームシリンダ２３、バケットシリンダ２１などの各種アクチュエータを操作する操作部材（例えば、操作レバー１５や操作スイッチ）の操作量、ガバナセンサからのガバナ角度（ガバナ位置）、アクセルレバーの操作量（角度）、アイドルスイッチ（ＡＩ-ＳＷ）のオン信号／オフ信号、エンジン回転センサからのエンジン回転数などの各種制御信号が入力される。
【００１５】
ＡＩ制御は、アーム１９（アームシリンダ２３）やブーム２０（ブームシリンダ２２）などを操作する操作部材が操作されているときは、アクセルレバーの操作量に応じてエンジン回転数を増減し、操作部材が操作されていないときは、エンジン回転数をアイドリング状態に固定するものである。
具体的には、メイン制御装置２５ＡによるＡＩ制御では、操作レバー１５を中立位置にしてアイドルスイッチのオン信号が入力されると、アクセルレバーの操作量に関わらず、オートアイドルモータにアイドル信号を出力してオートアイドルモータを駆動し、エンジン回転数をアイドル回転数にする。また、メイン制御装置２５ＡによるＡＩ制御では、操作レバー１５を前後又は左右に揺動してアイドルスイッチのオフ信号を入力すると、アクセル位置の信号に基づきオートアイドルモータに作動信号を出力してオートアイドルモータを駆動する。オートアイドルモータを駆動するとガバナレバーが作動しエンジン回転数が、アクセルレバーに対応した回転数になる。
【００１６】
流量制御は、操作部材の操作量に応じてアクチュエータを動作させるものである。
メイン制御装置２５Ａによる流量制御では、例えば、操作レバー１５を中立位置より一方（左側）に揺動させて左側の操作量を入力すると、操作したアクチュエータに対応する電磁比例弁のソレノイドに所定値の電流（作動信号）を出力する。そうすると、電磁比例弁は電流値に応じて開き、操作したアクチュエータに対応する制御弁のパイロット圧が制御され、アクチュエータが一方に動作する。なお、操作レバー１５を中立位置より上記とは反対側に揺動させて右側の操作量を入力すると、左側に揺動したときとは反対側にアクチュエータを動作させる。
【００１７】
上述したようなＡＩ制御や流量制御は、メイン制御装置２５Ａに設けられてＣＰＵやＭＰＵから構成された制御部２７により行われる。また、メイン制御装置２５Ａは、フラッシュＲＯＭ等の不揮発性メモリ（記憶部）２８を備えている。この記憶部２８に、上述したようにＡＩ制御や流量制御を行うためのプログラム（制御プログラム）や制御を行うためのデータ（制御データ）が格納されている。制御プログラムに従って制御部２７が動作することにより上述した各種制御が行われる。
第２作業機用制御装置２５Ｂ（サブ制御装置）は、入力された各種制御信号等に基づいて、ブームの高さ制御やアームの角度制御を行うものである。具体的には、サブ制御装置２５Ｂには、アームの角度、ブームの角度などの各種制御信号が入力される。
【００１８】
ブームの高さ制御は、ブームの高さの上限値（ブーム角度の上限値）を後述する表示制御装置２５Ｃに設けられたスイッチ等により予め定めておき、ブーム１８の高さが上限値に対応する角度以上となったときに操作レバー１５の操作に関わらずブーム１８の上げ動作を停止するものである。詳しくは、サブ制御装置２５Ｂによるブームの高さ制御では、操作レバー１５によりブーム１８を上げ動作しているときはブームの角度がサブ制御装置２５Ｂに入力される。そして、サブ制御装置２５Ｂに入力されたブームの角度が上限値に達した際には、サブ制御装置２５Ｂは、ブームシリンダ２２に作動油を供給する制御弁に対してパイロット圧（パイロット油）を供給する電磁比例弁又は電磁弁のソレノイドを消磁することによってブームの上げ動作を停止させる。
【００１９】
アームの角度制御は、アームの角度の制限値（上限値又は下限値）を後述する表示制御装置２５Ｃに設けられたスイッチ等により予め定めておき、アームの角度が制限値となったときに操作レバー１５の操作に関わらずアーム１９の掻き込み動作を停止するものである。詳しくは、サブ制御装置２５Ｂによるアーム角度制御では、操作レバー１５によりアーム１９の掻き込み動作をしているときはアームの角度がサブ制御装置２５Ｂに入力される。そして、サブ制御装置２５Ｂに入力されたアームの角度が制限値に達した際には、サブ制御装置２５Ｂは、アームシリンダ２３に作動油を供給する制御弁に対してパイロット圧（パイロット油）を供給する電磁比例弁又は電磁弁のソレノイドを消磁することによってアーム１９の掻き込み動作を停止させる。
【００２０】
上述したようなブームの高さ制御やアームの角度制御は、サブ制御装置２５Ｂに設けられてＣＰＵやＭＰＵから構成された制御部２９により行われる。また、サブ制御装置２５Ｂは、フラッシュＲＯＭ等の不揮発性メモリ（記憶部３０）を備えている。この記憶部３０に、上述したようにブームの高さ制御やアームの角度制御を行うためのプログラム（制御プログラム）や制御を行うためのデータ（制御データ）が格納されている。制御プログラムに従って制御部２９が動作することにより上述した各種制御が行われる。
第３作業機用制御装置２５Ｃ（表示制御装置ということがある）は、運転席９の周囲に配置されていて、作業機１の駆動に関連する情報（データ）が入力され、当該入力された情報を表示するようになっている。例えば、表示制御装置２５Ｃには、キーＳＷ（イグニッションスイッチ）のオン信号／オフ信号、エンジンの回転数、燃料センサが検出した燃料量、水温センサが検出した水温等の情報が入力される。そして、表示制御装置２５Ｃは、イグニッションスイッチのオン／オフ、エンジン回転数、燃料、水温等の情報を液晶パネル等の表示部３１に表示する。上述したような情報の表示は、表示制御装置２５Ｃに設けられてＣＰＵやＭＰＵから構成された制御部３２により行われる。表示制御装置２５Ｃは、フラッシュＲＯＭ等の不揮発性メモリ（記憶部３６）を備えている。この記憶部３０に、上述した情報を表示部３１に表示させるためのプログラム（制御プログラムということがある）や表示するためのデータ（制御データであって、例えば、表示に使用する画像や情報に対応する国言語データなど）が格納されている。この制御プログラムは、例えば、各種情報に対して、表示位置、表示色、表示言語の態様等を制御するためのプログラムである。制御プログラムに従って制御部３２が動作することにより上述した各種制御が行われる。
【００２１】
メイン制御装置２５Ａ、サブ制御装置２５Ｂ、表示制御装置２５Ｃの各作業機用制御装置２５には、情報を入出力（送受信）するための入出力部３３を備えている。
さて、上述したようなメイン制御装置２５Ａ、サブ制御装置２５Ｂ、表示制御装置２５Ｃなどの作業機用制御装置２５は、内蔵（格納）されている制御プログラムを新しいプログラムに更新（変更）しなければならないことがある。
作業機用制御装置２５に格納されている制御プログラムを更新する場合には、パーソナルコンピュータ等で構成された書込装置（ライター）３４を作業機１側に接続して、書込装置３４から更新プログラムを作業機１内の作業機用制御装置２５に送信しなければならない。
【００２２】
そこで、この作業機１では、メイン制御装置２５Ａ、サブ制御装置２５Ｂ、表示制御装置２５Ｃの少なくとも１つを、作業機１内のＣＡＮ通信２６と、このＣＡＮ通信２６とは異なる外部のネットワーク３５との通信を行うゲートウェイ機能を有するものとしている。この実施形態では、メイン制御装置２５Ａを、外部の書込装置３４（ライター）と作業機１内の作業機用制御装置２５との通信を行うためのゲートウェイ機能を有する装置（ゲートウェイ制御装置）としている。
以下、ゲートウェイ機能を有するメイン制御装置について詳しく説明する。
【００２３】
メイン制御装置（ゲートウェイ制御装置）２５Ａの入出力部３３Ａは、ＣＡＮ通信２６に接続するための第１通信ポート４０と、ＣＡＮ通信２６とは異なる通信（例えば、Recommended Standard 232、即ち、ＲＳ−２３２Ｃ）に接続するための第２通信ポート４１とを備えている。
第１通信ポート４０は、メイン制御装置２５Ａに取り込まれたデータ等をサブ制御装置２５Ｂや表示制御装置２５Ｃに向けて送信したり、サブ制御装置２５Ｂや表示制御装置２５Ｃから送信されたデータ等をメイン制御装置２５Ａに取り込むためのものである。
【００２４】
第２通信ポート４１は、書込装置３４（ライター）からＲＳ−２３２Ｃ用のケーブルにて送られてきた更新プログラムをＣＡＮ通信２６側（メイン制御装置２５Ａ内）に取り込むためのものである。第２通信ポート４１の端子部分は、運転席９周り（例えば、運転席９の座席の周り、運転席９の前側）に設置されていて、メイン制御装置２５Ａを作業機１から取り外さなくても、ＲＳ−２３２Ｃ用のケーブル等が容易に接続できるようになっている。
メイン制御装置２５Ａの記憶部２８には、サブ制御装置２５Ｂや表示制御装置２５Ｃと区別するための特定コード（例えば、ＩＤコード）が格納されている。なお、サブ制御装置２５Ｂの記憶部３０や表示制御装置２５Ｃの記憶部３６にも、他の制御装置と区別するための特定コード（例えば、ＩＤコード）が格納されている。
【００２５】
また、メイン制御装置２５Ａの制御部２７は、書込装置３４からＲＳ−２３２Ｃ用のケーブル４２を介して第２通信ポート４１に入力された更新プログラムを、当該メイン制御装置２５Ａに書き込む動作と、当該メイン制御装置２５Ａとは別のサブ制御装置２５Ｂや表示制御装置２５Ｃに送信するために第１通信ポート４０に出力する出力動作とを行うように構成されている。
詳しくは、メイン制御装置２５Ａの制御部２７は、第２通信ポート４１に入力された更新プログラムが、当該メイン制御装置２５Ａの記憶部２８に記憶されている制御プログラムを更新するためのものであれば、当該更新プログラムをメイン制御装置２５Ａの記憶部２８に書き込む動作をする。
【００２６】
また、メイン制御装置２５Ａの制御部２７は、第２通信ポート４１に入力された更新プログラムが、サブ制御装置２５Ｂにおける制御プログラムを更新するためのものであったり、表示制御装置２５Ｃにおける制御プログラムを更新するためのものであれば、第２通信ポート４１に入力された当該更新プログラムを第１通信ポート４０から出力する。
メイン制御装置２５Ａの制御部２７は、変換手段４５と、照合手段４６と、書込手段４７と、送信手段４８とを備えている。
変換手段４５は、第２通信ポート４１に入力された更新プログラムと、認証コードとをＣＡＮ通信２６の通信プロトコルに対応するように変換するものである。具体的には、変換手段４５は、ＲＳ−２３２Ｃのケーブル４２を介して書込装置３４から送られてきた更新プログラムにおいて、更新プログラムを構成する信号をＣＡＮ通信２６に流すための信号に置き換える。また、変換手段４５は、ＲＳ−２３２Ｃのケーブル４２を介して書込装置３４から送られてきた認証コードを構成する信号をＣＡＮ通信２６に流すための信号に置き換える。
【００２７】
言い換えれば、変換手段４５は、ＲＳ−２３２Ｃの規格に対応した信号（外部の通信の規格に対応した信号）をＣＡＮ通信２６の規格（作業機１内部の通信の規格に対応した信号）に対応した信号に変換する。
照合手段４６は、更新プログラムとは別に書込装置３４から送られてきた認証コードと、記憶部３０に格納されている特定コード（ＩＤコード）とを照合するものである。認証コードは、更新プログラムを書き込む先を指定するものである。即ち、認証コードは、更新プログラムがメイン制御装置２５Ａに対するものであれば当該メイン制御装置２５Ａに対応したコード（例えば、メイン制御装置２５Ａの記憶部２８に記憶されているＩＤコードと同じコード）となり、更新プログラムがサブ制御装置２５Ｂに対するものであれば当該サブ制御装置２５Ｂに対応したコードとなり、更新プログラムが表示制御装置２５Ｃであれば当該表示制御装置２５Ｃに対応したコードとなる。
【００２８】
書込手段４７は、照合手段４６による照合が成立した際には、即ち、第２通信ポート４１に入力された認証コードと、メイン制御装置２５Ａの記憶部２８に格納されている特定コードとが一致した場合、第２通信ポート４１に入力された更新プログラムを当該メイン制御装置２５Ａの記憶部２８に格納し、これにより、予め記憶部２８に格納されていた制御プログラムを新しいものに更新する。
送信手段４８は、照合手段４６による照合が不成立の際には、即ち、第２通信ポート４１に入力された認証コードと、メイン制御装置２５Ａの記憶部２８に格納されている特定コードとが一致しない場合、第２通信ポート４１に入力されて変換手段４５によりＣＡＮ通信２６の通信プロトコルに変換された更新プログラムをメイン制御装置２５Ａの第１通信ポート４０に出力して当該メイン制御装置２５Ａとは別のサブ制御装置２５Ｂや表示制御装置２５Ｃに送信する。この送信手段４８は、第１通信ポート４０から更新プログラムを出力する際には、書込装置３４から送信された認証コードも出力する。
【００２９】
このように、メイン制御装置２５Ａは、作業機１内のＣＡＮ通信２６と、このＣＡＮ通信２６とは別の通信（ＲＳ−２３２Ｃ）とを接続可能とするためのゲートウェイ制御装置としての機能も兼ね備えている。このメイン制御装置２５Ａ（ゲートウェイ制御装置）によって、作業機１内のＣＡＮ通信２６と外部の通信との相互間における通信プロトコルが変換されるため、作業機１内のサブ制御装置２５Ｂや表示制御装置２５Ｃ等の作業機用制御装置２５と、外部の書込装置３４との通信とを容易に行うことができる。
メイン制御装置２５Ａの第１通信ポート４０に出力された更新プログラムと、認証コードとは、ＣＡＮ通信２６を介してサブ制御装置２５Ｂや表示制御装置２５Ｃに入力される。具体的には、更新プログラムと認証コードとは、サブ制御装置２５Ｂに設けられてＣＡＮ通信２６に接続するための入出力部３３Ｂに入力される。
【００３０】
また、メイン制御装置２５Ａの第１通信ポート４０に出力された更新プログラムと認証コードとは、表示制御装置２５Ｃに設けられてＣＡＮ通信２６に接続するための入出力部３３Ｃに入力される。
サブ制御装置２５Ｂは、予めサブ制御装置２５Ｂの記憶部３０に記憶された特定コード（ＩＤコード）と、ＣＡＮ通信２６を経てメイン制御装置２５Ａから送信された認証コードとが一致すれば、入出力部３３に入力された更新プログラムを記憶部３０に格納し、これにより、予め記憶部３０に格納されていた制御プログラムを新しいものに更新する。
【００３１】
表示制御装置２５Ｃは、予め表示制御装置２５Ｃの記憶部３６に記憶された特定コード（ＩＤコード）と、ＣＡＮ通信２６を経てメイン制御装置２５Ａから送信された認証コードとが一致すれば、入出力部３３に入力された更新プログラムを記憶部３６に格納し、これにより、予め記憶部３６に格納されていた制御プログラムを新しいものに更新する。
図２は、メイン制御装置の制御プログラムを更新する場合のフローチャート（プログラム更新方法）を示したものである。
ＲＳ−２３２Ｃ用のケーブル４２の一端をパーソナルコンピュータ等から構成された書込装置３４に接続すると共に、ＲＳ−２３２Ｃ用のケーブル４２の他端を作業機１のメイン制御装置２５Ａの第２通信ポート４１に接続する（Ｓ１：書込装置３４とメイン制御装置２５Ａとを接続する）。
【００３２】
書込装置３４からメイン制御装置２５Ａに対応する認証コードを送信すると共に、メイン制御装置２５Ａに予め格納されている制御プログラムを更新するための更新プログラムを送信する（Ｓ２：認証コード及び更新プログラムの送信）。メイン制御装置２５Ａの照合手段４６により、認証コードと特定コードとが一致しているか否かを検証する（Ｓ３）。
メイン制御装置２５Ａの照合手段４６による照合が成立すれば（Ｓ３、ｙｅｓ）、書込手段４７により更新プログラムを当該メイン制御装置２５Ａの記憶部２８に格納して制御プログラムを書き換える（Ｓ４）。
【００３３】
図３は、サブ制御装置の制御プログラムを更新する場合のフローチャート（プログラム更新方法）を示したものである。
ＲＳ−２３２Ｃ用のケーブル４２の一端をパーソナルコンピュータ等から構成された書込装置３４に接続すると共に、ＲＳ−２３２Ｃ用のケーブル４２の他端を作業機１のメイン制御装置２５Ａの第２通信ポート４１に接続する（Ｓ１０：書込装置３４とメイン制御装置２５Ａとを接続する）。
書込装置３４からメイン制御装置２５Ａに対応する認証コードを送信すると共に、メイン制御装置２５Ａに予め格納されている制御プログラムを更新するための更新プログラムを送信する（Ｓ１１：認証コード及び更新プログラムの送信）。メイン制御装置２５Ａの照合手段４６により、認証コードと特定コードとが一致しているか否かを検証する（Ｓ１２）。
【００３４】
メイン制御装置２５Ａの照合手段４６による照合が不成立（コードが一致していない）であれば、まず、変換手段４５により、ＲＳ−２３２Ｃのケーブル４２を介して書込装置３４から送られてきた更新プログラム及び認証コードをＣＡＮ通信２６にて送信可能となるように更新プログラムの信号をＣＡＮ通信２６の規格に対応した信号に変換する（Ｓ１３）。
そして、変換手段４５により更新プログラム及び認証コードをＣＡＮ通信２６の規格に対応した信号に変換した後、更新プログラム及び認証コードを送信手段４８により第１通信ポート４０からＣＡＮ通信２６に出力する（Ｓ１４）。
【００３５】
サブ制御装置２５Ｂが、メイン制御装置２５Ａから送信された認証コードを受信すると、当該サブ制御装置２５Ｂは、予めサブ制御装置２５Ｂの記憶部３０に記憶された特定コード（ＩＤコード）と、ＣＡＮ通信２６を経てメイン制御装置２５Ａから送信された認証コードとを照合する（Ｓ１５）。照合が成立すれば、サブ制御装置２５Ｂは、更新プログラムを当該サブ制御装置２５Ｂの記憶部３０に格納して制御プログラムを書き換える（Ｓ１６）。
なお、表示制御装置においてもプログラムを更新する手順は、サブ制御装置に示したＳ１０〜Ｓ１６と同じである。
【００３６】
以上のように、書込装置３４にメイン制御装置２５Ａに接続することにより、メイン制御装置２５Ａのプログラム、サブ制御装置２５Ｂのプログラム、表示制御装置２５Ｃのプログラムを更新することができる。
図４は、作業機用制御装置のプログラムを更新する際でのプログラムの書き込み手順（プログラムを記憶部に格納する際の手順）のフローチャートである。図５は、作業機用制御装置（メイン制御装置２５Ａ、サブ制御装置２５Ｂ、表示制御装置２５Ｃ）のプログラムを更新する際でのプログラムの書き込み手順を図示したものである。なお、図４及び図５に示すプログラムの書き込み手順は、メイン制御装置２５Ａであっても、サブ制御装置２５Ｂであっても表示制御装置２５Ｃであっても同じである。図４及び図５の説明においては、上述したような認証コードと特定コードとを照合する処理は説明を省略する。
【００３７】
図４及び図５を用いて、作業機用制御装置のプログラム更新方法を詳しく説明する。
各作業機用制御装置２５において、更新プログラムを記憶部（フラッシュメモリ）２８、３０、３６に書き込む際（プログラムを書き換える際）は、まず、書込装置３４は、プログラムを書き込む動作（書き換える動作）をさせるための書き込みプログラム（書込プログラム）を送信する（Ｓ２０）。また、書込装置３４は、更新プログラムを送信する（Ｓ２１）。
作業機用制御装置２５が書込プログラムを受信すると、作業機用制御装置２５は、書込プログラム（書込手段）をフラッシュメモリのＲＡＭ領域（一時的記憶部）において所定の物理領域（プログラム書込領域）に書込プログラムを格納する（Ｓ２２：図５（ａ））。
【００３８】
また、作業機用制御装置２５が更新プログラムを受信すると、作業機用制御装置２５は、更新プログラムをフラッシュメモリのＲＡＭ領域において所定の物理領域（データ書込領域）に更新プログラムを格納する（Ｓ２３：図５（ｂ））。
ここで、作業機用制御装置２５のＲＯＭ領域（保持記憶部）において、更新前のプログラム（既存のプログラム）に対して、正常であるか否かを確認するために用いられるチェック用のデータが予め設定されている。詳しくは、所定の物理領域（アプリケーション領域）に、既存プログラムが書き込まれており、このアプリケーション領域内において既存プログラムを書き込んだ際でのチェックサムのデータが書き込まれている物理領域（チェックサム領域）が設定されている。
【００３９】
なお、書込プログラムによってアプリケーション領域におけるチェックサム領域を検出するようにしてもよいし、チェックサム領域を書込装置３４から指定するようにしてもよい。
作業機用制御装置２５が書込プログラムを動作させて、更新プログラムをアプリケーション領域に書き込む前に、予めアプリケーション領域内のチェックサムを消去する（Ｓ２４：図５（ｃ））。
予めアプリケーション領域内のチェックサム（チェックサムのデータ）を消去した後は、まず、アプリケーション領域において、チェックサム領域を除く領域に、更新プログラムを書き込んでいく（Ｓ２５：図５（ｄ））。即ち、書込プログラムによってＲＡＭ領域のデータ書込領域に格納していた更新プログラムを、まず、ＲＯＭ領域のチェックサム領域を除くアプリケーション領域に転送して書き込む。
【００４０】
そして、更新プログラムの書込が進んでいき、当該更新プログラムのチェックサムに用いるデータを物理領域（アプリケーション領域）に転送して書き込む最終的な段階になると（Ｓ２６、Ｙｅｓ）、ＲＯＭ領域のチェックサム領域に更新プログラムに対して、正常であるか否かを確認するために用いられるチェック用のデータ（チェックサムに用いるデータ）をチェックサムの領域に書き込む（Ｓ２７：図５（ｅ））。
更新プログラムにおけるチェックサムの書き込みが終了して、チェックサムを用いた更新プログラムのデータチェックが完了し、更新プログラムが正しく書き込まれたことを、書込装置３４及び／又は作業機用制御装置２５（書込プログラム等）によって確認すると（Ｓ２８、Ｙｅｓ）、更新プログラムの書き込みを終了する（Ｓ２７）。
【００４１】
なお、更新プログラムが正しく書き込まれたことを書込装置３４及び／又は作業機用制御装置２５（書込プログラム等）によって確認できない場合は、書込作業をやり直す（例えば、上述したＳ２４から作業をやり直す）。
作業機用制御装置２５のプログラム更新方法では、作業機用制御装置２５のプログラムのチェックサムのデータ（チェックに用いるデータ）を予め設定しておき、更新プログラムを作業機用制御装置２５に書き込む前に、予め作業機用制御装置２５に格納されている既存プログラムのチェックサムに用いられたデータを消去しておき、その後に、更新プログラムを作業機用制御装置２５に書き込むと共に、当該更新プログラムのチェックサムに用いるデータ（チェックに用いるデータ）を最後（最終段階）に作業機用制御装置２５に書き込むようにしている。
【００４２】
そのため、予め作業機用制御装置２５に格納されている既存プログラムのチェックサムに用いられたデータを消去し、更新プログラムのチェックサムに用いるデータを最後に作業機用制御装置２５に書き込むようにしていることから、当該チェックサムを用いて更新プログラムのデータチェックを確実に行うことができ、更新プログラムの書き込みが正常に行われたか否かを確実に確認することができる。
即ち、更新プログラムを作業機用制御装置２５に正常に書き込むことができているか否かを最終段階にて書き込まれたチェックサムのデータによって書き込み処理をしているときにチェックすることができる。その結果、書き込み処理時にエラー等が発生し、そのまま、書き込み処理を終了することによって、作業機用制御装置２５が動作しなくなるようなことを防止することができる。
【００４３】
しかも、既存プログラムのチェックサムのデータを、更新プログラムを書き込む前に消去していることから、更新プログラムの書き込み過程で、既存プログラムにおけるチェックサムと、更新プログラムにおけるチェックサムとの混同がなくなり、更新プログラムのデータチェックを確実に行えることができる。
また、プログラム更新方法では、更新プログラムを作業機用制御装置２５の記憶部２８に書き込むに際し、当該記憶部に格納されている既存プログラムのチェックサムに用いられるデータが格納されている物理領域を消去した後、この物理領域を除く領域に更新プログラムを書き込んでいき、その後に、更新プログラムのチェックサムに用いるデータを物理領域に書き込むようにしている。そのため、作業機用制御装置２５の既存プログラムを更新プログラムに簡単に変えることができる。
【００４４】
また、プログラム更新方法では、更新プログラムを作業機用制御装置２５の記憶部に書き込むに際し、プログラムを書き込む動作をさせるための書き込みプログラムを外部（書込装置３４）から受信してＲＡＭ領域（一時的記憶部）に格納しておくと共に、更新プログラムを書き込みプログラムとは別の領域のＲＡＭ領域（一時的記憶部）に格納した上で、書き込みプログラムを動作させてＲＡＭ領域に格納した更新プログラムをＲＯＭ領域に書き込むようにしている。
そのため、作業機用制御装置２５に、予め書込プログラムを格納していなくても更新プログラムを書き込むことができ、更新プログラムを作業機用制御装置２５内で高速に書き込むことができる（他のプログラムによる割り込み動作をさせなくても簡単に書き込める）と共に、記憶部の物理領域を有効に活用することができる。
【００４５】
また、上述した実施形態によれば、作業機内に設けられた作業機用制御装置２５の１つであるメイン制御装置２５Ａがゲートウェイ制御装置とされていて、当該メイン制御装置２５Ａの制御部が、第２通信ポートに入力された更新プログラムを、当該メイン制御装置２５Ａに書き込む動作とメイン制御装置２５Ａとは別のサブ制御装置２５Ｂ又は表示制御装置２５Ｃに送信するために第１通信ポートに出力する出力動作を行っている。
また、この実施形態によれば、メイン制御装置２５Ａは、特定コードを記憶する記憶部とを備え、制御部は、更新プログラムをＣＡＮ通信の通信プロトコルに対応するように変換する変換手段と、更新プログラムとは別に第２通信ポートに入力された認証コードと記憶部の特定コードとの照合する照合手段と、照合手段による照合が成立した際には、第２通信ポートに入力された更新プログラムをメイン制御装置２５Ａの記憶部に格納する書込手段と、照合手段による照合が不成立の際には、第２通信ポートに入力されて変換手段により車両用通信ネットワークの通信プロトコルに変換された更新プログラムを、メイン制御装置２５Ａの第１通信ポートに出力して当該メイン制御装置２５Ａとは別のサブ制御装置２５Ｂ又は表示制御装置２５Ｃに送信する送信手段とを備えている。
【００４６】
そのため、規格の異なる通信網間であっても、メイン制御装置２５Ａの制御プログラムや制御データの更新を簡単に出来るだけでなく、メイン制御装置２５Ａを介してサブ制御装置２５Ｂの制御プログラムや制御データの更新を簡単にすることができると共に、メイン制御装置２５Ａを介して表示制御装置２５Ｃの制御プログラムの更新も簡単にすることができる。
即ち、メイン制御装置２５Ａに更新プログラムを送信するだけで、作業機内の複数の作業機用制御装置２５におけるプログラムやデータの更新を簡単に行えることができる。
【００４７】
また、プログラムやデータの更新を行うために、プログラムやデータを更新する作業機用制御装置２５をわざわざ取り外さなくても、このような更新が行え、更新作業効率を飛躍的に向上させることができる。特に、表示制御装置２５Ｃにおいて、日本語、英語、ドイツ語などの表示言語の制御データは、作業機を使用する地域に応じて更新（変更）することが多い。このように比較的制御データの更新が多い表示制御装置２５Ｃにおけるデータ更新作業を非常に簡素化することができる。
また、メイン制御装置２５Ａに書込装置３４を接続すれば、更新プログラムの更新が容易に行うことができるため、更新プログラムの更新のために、作業機を工場やサービスセンター等にわざわざ移動させなくてもよく、場所を選ばずに容易に更新作業を行うことができる。
【００４８】
なお、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
上記の実施形態では、ＡＩ制御や流量制御を行うメイン制御装置２５Ａと、ブームの高さ制御やアームの角度制御を行うサブ制御装置２５Ｂと、作業機の各種情報を表示する表示制御装置２５Ｃとについて説明したが、これらの制御装置は、作業機を制御する制御装置であれば何でも良い。例えば、作業機用制御装置２５は、作業機のエンジンを制御するエンジンコンピュータユニット（ＥＣＵ）であってもよい。また、ＡＩ制御、流量制御、ブームの高さ制御、アームの角度制御を行う制御装置は、それぞれ個別に独立したユニット（装置）であってもよい。
【００４９】
上記の実施形態では、書込装置３４がパーソナルコンピュータで構成されていることを示しているが、書込装置３４はプログラムを作業機用制御装置２５に対して書き込むものであればどのようなものであってもよく、携帯が容易なモバイルコンピュータであってもその他のものであってもよい。
上記の実施形態では、バックホーの作業機を示したが、作業機はトラクタ等であってもよい。車両用通信ネットワークは、ＣＡＮ以外に、「ＬＩＮ」、「ＦｌｅｘＲａｙ」であってもその他のものであってもよい。
【００５０】
上記の実施形態では、既存プログラムが正常に書き込まれているか否かを判定するためのチェックに用いるデータや更新プログラムが正常に書き込まれているか否かを判定するためのチェックに用いるデータは、チェックサムのデータとしているが、これに限らず、チェックに用いるデータは、「Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ」、即ち、ＣＲＣのデータであっても、「Ｍｅｓｓａｇｅ Ｄｉｇｅｓｔ Ａｌｇｏｒｉｔｈｍ ５」、即ち、ＭＤ５のデータであってもよく、プログラムの誤りを検出するものであれば何でも良い。
【００５１】
上記の実施形態では、第２通信ポート４１は、例示としてＲＳ−２３２Ｃに接続するためのものであるとしているが、例えば、ＬＡＮを接続するものであっても、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ Ｓｅｒｉａｌ Ｂｕｓ）であっても、それ以外のものであってもよい。
【符号の説明】
【００５２】
１  作業機
２５  作業機用制御装置
【図１】
2010176372.tif 000003
【図２】
2010176372.tif 000004
【図３】
2010176372.tif 000005
【図４】
2010176372.tif 000006
【図５】
2010176372.tif 000007
【図６】
2010176372.tif 000008