(57)【特許請求の範囲】
【請求項１】
エンジンに発生した異常を検出するエラー検出部と、
エンジンの通常運転時に前記エラー検出部が検出した異常に関するエラー情報を記憶可能な記憶部と、
通常運転時に前記エラー検出部が検出した異常が所定の制限運転条件を満たす場合に、前記エンジンの機能の一部を制限した制限運転を行う制限運転部と、
通常運転時に前記エラー検出部が検出した異常が所定の制限解除条件を満たす場合に、エンジンの前記制限運転時において、前記制限運転を解除するユーザの操作が検出されると、当該制限運転から、前記エンジンの機能の制限を解除した制限解除運転に切り換える制限解除運転部と、
を備え、
前記記憶部は、エンジンの前記制限解除運転の開始時に前記エラー検出部が検出していた異常に関する情報を前記制限解除運転の開始時のエラー情報として記憶可能であり、
前記制限解除運転中に前記制限解除運転を終了させるユーザの操作が検出されると、前記記憶部は、エンジンの前記制限解除運転の終了時に前記エラー検出部が検出している異常に関する情報を、前記制限解除運転の終了時のエラー情報として記憶可能であり、
前記制限解除運転の開始時のエラー情報と、前記制限解除運転の終了時のエラー情報とを、区別して読出し可能に構成されていることを特徴とするエンジン制御装置。
【請求項２】
請求項１に記載のエンジン制御装置であって、
前記制限解除運転の開始時のエラー情報と、前記制限解除運転の終了時のエラー情報とは、エンジン積算運転時間と関連付けて記憶されることを特徴とするエンジン制御装置。
【請求項３】
請求項１又は２に記載のエンジン制御装置を備えることを特徴とするエンジン。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主として、エンジンに発生した故障などの異常に関するエラー情報を記憶するエンジン制御装置に関する。
【背景技術】
【０００２】
この種のエンジン制御装置は、例えば特許文献１に開示されている。特許文献１に開示される電子制御装置（ＥＣＵ）は、車両に組み付けられて、該車両のエンジン等を制御する構成となっている。このＥＣＵは、車両に搭載された各種センサからの情報に基づき様々な診断項目についての診断（正常か異常かの判断）を行い、故障を検出した場合には、その故障を示す故障情報（Ｄｉａｇｎｏｓｔｉｃ  Ｔｒｏｕｂｌｅ  Ｃｏｄｅ、ＤＴＣ）を、ＥＥＰＲＯＭ等の不揮発性メモリに記憶する。
【０００３】
具体的には、特許文献１は、ＥＣＵに電源が供給され故障を検出すると、その検出した故障のＤＴＣを揮発性メモリであるＲＡＭに記憶するようにし、イグニッションスイッチがオフされた後に、ＲＡＭ内のＤＴＣのうち、ＥＥＰＲＯＭに保存すべき条件を満たすＤＴＣを選択して、その選択したＤＴＣをＥＥＰＲＯＭに書き込む構成を開示している。
【０００４】
特許文献１に開示されるＥＣＵは、車両の故障診断を行うための例えばハンディタイプの装置であるスキャンツールと通信可能に構成される。スキャンツールは、ＤＴＣ読出し要求コマンドを送ることで、ＥＣＵのＥＥＰＲＯＭに保存されたＤＴＣをスキャンツール側に読み出すことができる。
【０００５】
また、特許文献１のＥＣＵは、イグニッションスイッチがオフされた場合に、ＲＡＭ内のＤＴＣをいったんバッファに記憶させ、当該バッファ内のＤＴＣをＥＥＰＲＯＭに書き込むように構成されている。そして、スキャンツールからＲＡＭ内のＤＴＣの消去コマンドを受信した場合においても、対象のＤＴＣをいったんバッファに記憶させ、その後にＤＴＣの消去処理を行う構成になっている。特許文献１は、この構成により、スキャンツールを使用してＲＡＭ内のＤＴＣが消去される場合でも、バッファを利用して、当該ＤＴＣのＥＥＰＲＯＭへの保存処理を問題なく行うことができるとする。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−１３００４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、このようなエンジン制御装置において、エンジンに異常が発生し、当該異常が所定の条件を満たす場合に、自動的に機能の一部を制限しつつエンジンを制御するように構成されることがある（制限運転）。この制限運転により、エンジンを保護して状況の悪化を防ぎつつ、エンジンの稼働を継続することができる。
【０００８】
一方で、例えば、エンジンを船舶に搭載した場合に、沖合にてエンジンに異常が発生して上記の制限運転に移行したものの、例えば天候等の関係で、船舶をどうしても早く寄港させたいとユーザが希望することが考えられる。このような場合を考慮すれば、エンジン制御装置において、上記の制限運転をユーザが解除して通常の運転制御を行わせることもできるように構成することが好ましい（制限解除運転）。
【０００９】
上記の場合において、ユーザが制限解除運転に移行させる操作をしたとき、その後は、異常が発生している状況下でエンジンを無理に通常どおり運転することになるため、発生した異常がエンジンに損傷を与える可能性が高くなると予測される。従って、制限解除運転をした後は、運転後に十分なメンテナンスを行うことが必須になると考えられる。
【００１０】
しかし、特許文献１のようにＥＥＰＲＯＭに単純にＤＴＣを記録するだけでは、事後にスキャンツールで情報を取得しても、どのような異常による制限運転を解除したかを必ずしも明確に把握することができず、その後のメンテナンス作業を適切に行うことができなかったり、作業効率を低下させたりすることがあった。
【００１１】
また、上記の制限解除運転はユーザの特別な意思で行われるものであるから、制限解除運転後に発生した異常と、制限解除運転以前に発生した異常とは、区別して記憶すべきである。しかしながら、上記のようにＥＥＰＲＯＭにＤＴＣを単に記録するだけでは、異常がいつ発生したのか（制限運転を行う前に発生したのか、制限運転時に発生したのか、制限解除運転時に発生したのか等）を、ＥＥＰＲＯＭの記憶内容に基づいて把握することが容易であるとはいいがたい。
【００１２】
本発明は以上の事情に鑑みてされたものであり、その目的は、エンジンの異常に関する情報を制限解除運転との関係で的確に記憶できるエンジン制御装置を提供することにある。
【課題を解決するための手段及び効果】
【００１３】
本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。
【００１４】
本発明の観点によれば、以下の構成のエンジン制御装置が提供される。即ち、このエンジン制御装置は、エラー検出部と、記憶部と、制限運転部と、制限解除運転部と、を備える。前記エラー検出部は、エンジンに発生した異常を検出する。前記記憶部は、エンジンの通常運転時に前記エラー検出部が検出した異常に関するエラー情報を記憶可能である。前記制限運転部は、通常運転時に前記エラー検出部が検出した異常が所定の制限運転条件を満たす場合に、前記エンジンの機能の一部を制限した制限運転を行う。前記制限解除運転部は、通常運転時に前記エラー検出部が検出した異常が所定の制限解除条件を満たす場合に、エンジンの前記制限運転時において、前記制限運転を解除するユーザの操作が検出されると、当該制限運転から、前記エンジンの機能の制限を解除した制限解除運転に切り換える。前記記憶部は、エンジンの前記制限解除運転の開始時に前記エラー検出部が検出していた異常に関する情報を前記制限解除運転の開始時のエラー情報として記憶可能である。前記制限解除運転中に前記制限解除運転を終了させるユーザの操作が検出されると、前記記憶部は、エンジンの前記制限解除運転の終了時に前記エラー検出部が検出している異常に関する情報を、前記制限解除運転の終了時のエラー情報として記憶可能である。前記制限解除運転の開始時のエラー情報と、前記制限解除運転の終了時のエラー情報とを、区別して読出し可能に構成されている。
【００１５】
これにより、事後のメンテナンス作業において、エンジンの重大なダメージに繋がり易い制限解除運転開始時の異常を見落とすことが防止されるので、適切なメンテナンスを行うことができ、また、作業効率を向上させることができる。また、制限解除運転の開始時点で生じていた異常を明確に把握することができる。
【００１６】
前記のエンジン制御装置においては、前記制限解除運転の開始時のエラー情報と、前記制限解除運転の終了時のエラー情報とは、エンジン積算運転時間と関連付けて記憶されることが好ましい。
【００１７】
これにより、エンジンのメンテナンスのために一層有用な情報を得ることができる。
【００２６】
本発明の他の観点によれば、前記のエンジン制御装置を備えるエンジンが提供される。
【００２７】
これにより、制限解除運転を行わなければならなくなった場合でも、記憶部に記憶された制限解除時エラー情報に基づいて、事後のメンテナンス作業等を円滑かつ的確に行うことができる。
【図面の簡単な説明】
【００２８】
【図１】船及びその推進機構を示す概略側面図。
【図２】エンジンの概略平面図。
【図３】吸気及び排気の流れを模式的に示す説明図。
【図４】エンジンの機能ブロック図。
【図５】エンジン制御装置の機能ブロック図。
【図６】エラー情報、制限解除運転時エラー情報、及び制限解除運転終了時エラー情報の例をそれぞれ示す図。
【図７】エラー情報等をＥＥＰＲＯＭに保存するために行われる処理を示すフローチャート。
【図８】制限運転及び制限解除運転を行うための処理を示すフローチャート。
【発明を実施するための形態】
【００２９】
次に、図面を参照して本発明の実施形態を説明する。図１は、船１及びその推進機構を示す概略側面図である。
【００３０】
図１に示すように、船１は、縦帆を有するタイプの帆船である。船１の船体２にはマスト３が立設されており、当該マスト３には帆が貼られている。また、船１の船底４には、当該船１の姿勢を安定させるためのセンターボード５が形成されている。
【００３１】
また、船１には、推進機構として、エンジン６と、推進装置７と、が搭載されている。エンジン６は、船体２の内部に配置されている。エンジン６は、コモンレール式の燃料噴射装置を有するディーゼルエンジンである。エンジン６の後端には、推進装置７が連結されている。
【００３２】
推進装置７は、船底４の開口部４ａの近傍に配置されている。推進装置７は、アッパユニット９及びロアユニット１０から構成されている。アッパユニット９は、船体２の内部に配置されており、エンジン６と連結されている。ロアユニット１０は、プロペラ１１及び図略の舵を備えており、当該プロペラ１１及び舵が船底４の開口部４ａから水中に出るように配置されている。このように、本実施形態は船内外機と称される設置方式が用いられている。
【００３３】
この構成により、エンジン６で発生させた動力を用いてプロペラ１１を駆動することで、船１を移動させることができる。
【００３４】
次に、図２及び図３を参照して、エンジン６の構成について簡単に説明する。図２は、エンジン６の概略平面図であり、図３は、吸気及び排気の流れを模式的に示す説明図である。
【００３５】
図２に示すように、エンジン６は、吸入部２０と、過給機２１と、吸気管２２と、インタークーラ２４と、清水クーラ２５と、吸気マニホールド２７と、を備える。
【００３６】
吸入部２０は、外部の空気を吸入する。なお、吸入部２０の内部には、吸気に含まれる粉塵等を取り除くためのエアクリーナが配置されている。過給機２１は、図３に示すように、タービンホイール２１ａ及びコンプレッサホイール２１ｂを備える。タービンホイール２１ａは、排気ガスを利用して回転するように構成されている。コンプレッサホイール２１ｂは、タービンホイール２１ａと同じシャフト２１ｃに接続されており、タービンホイール２１ａの回転に伴って回転する。このようにコンプレッサホイール２１ｂが回転することにより、空気を圧縮して強制的に吸気を行うことができる。
【００３７】
吸気管２２は、吸入部２０及び過給機２１と、インタークーラ２４と、を接続する。吸気管２２を流れた空気は、インタークーラ２４によって冷却される。インタークーラ２４は、吸入部２０及び過給機２１によって吸入された空気を、船外から取り入れた水（本実施形態では、海水）との熱交換によって冷却する。インタークーラ２４において熱交換に使用された海水は、清水クーラ２５で冷却水と更に熱交換された後に船外へ排出される。
【００３８】
インタークーラ２４によって冷却された空気は、吸気管２２を介して、図３に示す吸気マニホールド２７へ供給される。当該吸気マニホールド２７は、吸気管２２から供給された空気をエンジン６のシリンダ数に応じて分配して、燃焼室へ供給する。
【００３９】
図２に示すように吸気マニホールド２７の近傍には、コモンレール２８が設けられている。コモンレール２８は、図略の燃料タンクから供給された燃料を高圧で蓄え、インジェクタへ供給する。燃焼室では、吸気マニホールド２７から供給された空気が圧縮された後に、インジェクタから燃料が噴射される。これにより、燃焼室で燃焼が発生し、ピストンを上下運動させることができる。このようにして発生した動力は、クランク軸等を介して推進装置７へ伝達される。
【００４０】
なお、燃焼室で発生した排気ガスは、排気マニホールド２９によってまとめられた後に、過給機２１のタービンホイール２１ａを通過した後に排出される。
【００４１】
次に、エンジン６の電気的な構成について説明する。図４は、エンジン６の機能ブロック図である。図５は、エンジン制御装置３０の機能ブロック図である。
【００４２】
図４に示すようにエンジン６はエンジン制御装置（ＥＣＵ）３０を備え、このエンジン制御装置３０は、図５に示すように、ＣＰＵ８１、ＲＯＭ８２、ＲＡＭ８３、及びＥＥＰＲＯＭ（記憶部）８７等を備えている。エンジン制御装置３０のＣＰＵ８１は、ＲＯＭ８２に記憶されたプログラムをＲＡＭ８３に読み出して各種制御を実行する。ＲＡＭ８３は揮発性のメモリであり、データの短期的な保存に用いられる。ＥＥＰＲＯＭ８７は不揮発性のメモリであり、データの長期的な保存に用いられる。
【００４３】
エンジン制御装置３０は、様々なセンサから得られた情報に基づいて、エンジン６が備える制御対象部品（アクチュエータ等）を動作させたり、エラーの記録及び報知を行ったりする。以下、センサ及び制御対象部品の一例について簡単に説明する。
【００４４】
図４に示すように、エンジン６は、センサの一例として、バッテリー電圧センサ３１と、冷却水温度センサ３２と、燃料温度センサ３３と、エンジンオイル温度センサ３４と、エンジン回転数検出センサ３５と、レール圧センサ３６と、吸気圧センサ３７と、排気圧センサ３８と、を備える。
【００４５】
バッテリー電圧センサ３１は、バッテリーの電圧を検出する。なお、バッテリー電圧センサ３１は、エンジン６の動作中だけでなく、エンジン６の始動前においてもバッテリーの電圧を検出することができる。
【００４６】
冷却水温度センサ３２は、冷却水タンク又は冷却水管の内部に配置され、冷却水の温度を検出する。冷却水の温度が高い場合、清水クーラ２５が故障しているか、エンジン６がオーバーヒートしている可能性がある。燃料温度センサ３３は、燃料管又は燃料ポンプ等に設けられ、燃料の温度を検出する。燃料の温度が高過ぎる場合、シール部品等が劣化する可能性がある。エンジンオイル温度センサ３４は、オイル管又はオイルパン等に配置され、エンジンオイルの温度を検出する。エンジンオイルの温度が高い場合、潤滑機能が適切に発揮できなくなる。
【００４７】
エンジン回転数検出センサ３５は、エンジン６の回転数（回転速度）を検出する。このエンジン回転数検出センサ３５は、例えば、エンジン６の図略のクランク軸の回転を検出するクランクセンサとして構成することができる。なお、本明細書では、所定時間あたりのエンジンの回転数（即ち回転速度）を単に「エンジンの回転数」と記載する。レール圧センサ３６は、コモンレール２８内の燃料の圧力を検出する。コモンレール２８の圧力が高い場合、圧力制御に異常があり、燃料噴射を適切に行うことができない可能性がある。吸気圧センサ３７は、吸気マニホールド２７等に設けられ、吸気圧を検出する。排気圧センサ３８は、排気マニホールド２９等に設けられ、排気圧を検出する。吸気圧及び排気圧が異常である場合、吸気又は排気が漏れている可能性がある。
【００４８】
エンジン６は、制御対象部品の一例として、スターターリレー４１と、燃料噴射アクチュエータ４２と、を備える。
【００４９】
スターターリレー４１は、スターターモータを駆動してエンジン６を始動させる。燃料噴射アクチュエータ４２は、エンジン制御装置３０の指示に応じて、インジェクタから燃料を噴射させる。燃料噴射アクチュエータ４２を制御することで、燃料の噴射量及び噴射タイミングを調整することができる。この構成により、出力の調整、排気ガスのクリーン化、及び騒音の抑制等を実現することができる。
【００５０】
次に、操船者が船１を操作するための構成について説明する。図４に示すように、エンジン６は操作部５１を備え、この操作部５１は少なくとも、スロットルハンドル５２と、操舵輪５３と、制限解除スイッチ５４と、を備える。
【００５１】
スロットルハンドル５２の操作位置は、適宜の通信手段によってエンジン制御装置３０に出力される。エンジン制御装置３０は、スロットルハンドル５２の操作位置に応じて、燃料噴射アクチュエータ４２の燃料噴射量を調整する。
【００５２】
操舵輪５３は、船１の進行方向を操作するために備えられるものである。操船者が操舵輪５３を左又は右に回転させることで、操作部５１は、当該操舵輪５３の回転方向及び回転角に応じた信号を推進装置７に送信する。推進装置７は、この信号に基づいて舵の角度を変化させる。このようにして、船１の進行方向を変化させることができる。
【００５３】
制限解除スイッチ５４は、エンジン６が後述の制限運転モードになったときに、この運転の制限を取り止めて通常どおりの運転（制限解除運転）を行うことを操船者が指示するために備えられる。
【００５４】
次に、エンジン６において発生する異常を記録するための構成について説明する。
【００５５】
図５に示すＲＯＭ８２には、エンジン６に異常が発生しているか否かを監視し、発生していた場合にはその旨を記録するとともに、必要に応じてエンジン６の制限運転や制限解除運転を行うように制御するプログラムが記憶されている。なお、制限運転や制限解除運転の詳細は後述する。そして、ＣＰＵ８１、ＲＯＭ８２、ＲＡＭ８３、ＥＥＰＲＯＭ８７等のハードウェアと、上記のソフトウェアと、が協働して動作することにより、エンジン制御装置３０を、エラー検出部７１、制限運転部７２、制限解除運転部７３、ＲＡＭ書込処理部７４、ＥＥＰＲＯＭ書込処理部７５、アクセス規制部７６、通信部７７等として動作させることができる。
【００５６】
エラー検出部７１は、エンジン６に取り付けられた上記のセンサ群の検出値に基づいて、エンジン６に発生する異常を検出する。これにより、エンジン制御装置３０の自己診断機能が実現される。なお、エラー検出部７１が異常を検出した場合には、図示しない警報部（例えば、エンジンチェックランプやブザー等）によって異常発生の旨を操船者に知らせ、対応を促すことができるようになっている。
【００５７】
制限運転部７２は、エラー検出部７１が検出したエンジン６の異常が予め定められた条件（制限運転条件）を満たす場合に、エンジン６の機能の一部を制限しつつ運転するようにエンジン６を制御する（制限運転、いわゆるフェイルセーフモード）。
【００５８】
この制限運転に移行する条件となる異常は様々であり、例えば、ＥＣＵ内部の異常、回転数センサの異常、レール圧センサの異常、レール圧の異常、燃料温度の異常、冷却水温度の異常等を挙げることができるが、これらに限られない。このような異常がエラー検出部７１により検出されると、制限運転部７２は、異常箇所のセンサの情報を無視して、予め設定された制御をエンジン６に対して行う。この制限運転制御によって、例えばエンジン出力が抑制される等、エンジン６の一部の機能が制限されることになる。このような縮退的な制御により、エンジン６を保護して状況の悪化を防ぎつつ、船１の航行継続を可能にする。
【００５９】
この制限運転制御は、エラー検出部７１が検出して当該制限運転に移行する原因となった異常が検出されなくなると、自動的に通常通りの運転に戻ることになる。
【００６０】
制限解除運転部７３は、エラー検出部７１が検出した異常が予め定められた条件（制限解除条件）を満たし、当該異常の検出に基づいて制限運転部７２により制限運転制御が行われているときに、操船者が上記の制限解除スイッチ５４を操作することを条件にして、制限運転を解除させるものである。なお、上記の制限解除条件としては、上述の制限運転条件で説明した異常のうち、深刻度がさほど重大でないものとして予め定められたもの（例えば、ＥＣＵ内部の異常、回転数センサの異常、レール圧センサの異常等）が該当する。即ち、エンジン６に異常が発生しているのであるから、エンジン６を保護する観点からは上記の制限運転制御を行うのが好ましいが、例えば天候等の関係で、船１をどうしても早く寄港させたい等の事情が生じる場合がある。この場合には、操船者が自らの判断で、制限解除スイッチ５４を押してＯＮ操作を行うことにより、制限解除運転部７３が、機能の制限を行わない通常の運転制御（制限解除運転制御）を行う。
【００６１】
この制限解除運転は、操船者が制限解除スイッチ５４をＯＮ操作することにより開始される。一方、エラー検出部７１が検出して前記制限運転に移行する原因となった異常が検出されなくなると、制限解除運転は自動的に解除され、エンジン６は通常どおり運転される。
【００６２】
また、制限解除運転は、操船者が制限解除スイッチ５４をＯＦＦ操作することにより終了させることができる。この場合、エンジン６は、制限解除運転から再び制限運転に戻る。
【００６３】
ＲＡＭ書込処理部７４は、エラー検出部７１がエンジン６の異常を検出した場合は直ちに、当該異常の種類を示すコードを、ＲＡＭ８３に割り当てられたエラー情報記憶領域８４に書き込む。具体的には、このエラー情報は、上述のＤＴＣを含んで構成される。
【００６４】
なお、詳細には図示しないが、前記ＲＡＭ８３には、前記エラー情報とともに、エンジン６の異常が検出された瞬間のエンジン制御装置３０の制御データ（いわゆるフリーズフレームデータ）が記憶される。
【００６５】
また、ＲＡＭ書込処理部７４は、制限解除運転部７３が制限解除運転制御を開始した場合には、その時点でエラー検出部７１が検出している異常の種類を示すＤＴＣと、制限解除運転制御の開始タイミングを示す情報（本実施形態では、当該タイミングにおけるエンジン積算運転時間）と、を含む制限解除運転時エラー情報（制限解除時エラー情報）を、ＲＡＭ８３に割り当てられた制限解除時エラー情報記憶領域８５に直ちに書き込む。
【００６６】
同様に、ＲＡＭ書込処理部７４は、制限解除運転部７３が制限解除運転制御を終了した場合には、その時点でエラー検出部７１が検出している異常の種類を示すＤＴＣと、制限解除運転制御の終了タイミングを示す情報（本実施形態では、当該タイミングにおけるエンジン積算運転時間）、を含む制限解除運転終了時エラー情報（制限解除終了時エラー情報）を、ＲＡＭ８３に割り当てられた制限解除終了時エラー情報記憶領域８６に直ちに書き込む。
【００６７】
ＥＥＰＲＯＭ書込処理部７５は、エンジン回転数検出センサ３５が検出するエンジン回転数が所定の設定値（トリガ回転数）を下回った場合に、ＲＡＭ８３に記憶されているエラー情報記憶領域８４、制限解除時エラー情報記憶領域８５、及び制限解除終了時エラー情報記憶領域８６の記憶内容を、ＥＥＰＲＯＭ８７のエラー情報記憶領域８８、制限解除時エラー情報記憶領域８９、及び制限解除終了時エラー情報記憶領域９０にコピーする。また、ＥＥＰＲＯＭ書込処理部７５は、ＲＡＭ８３に記憶されているフリーズフレームデータも、ＥＥＰＲＯＭ８７にコピーする。
【００６８】
このように、本実施形態では、エンジン回転数が所定のトリガ回転数を下回ったタイミングで、ＥＥＰＲＯＭ８７へのエラー情報等の記憶が行われる。なお、このトリガ回転数としては、エンジン６の通常の使用域における回転数の下限よりも低い値が設定される。
【００６９】
従って、従来の構成よりもＥＥＰＲＯＭ８７への記憶タイミングが早くなるので、その後に電源の瞬断等があっても、ＥＥＰＲＯＭ８７に記憶されたエラー情報等が失われないようにすることができる。
【００７０】
一般的に、エンジン回転数が通常の使用域を外れて低下する原因は、エンジン異常によるエンストが発生した場合や、操船者がエンジン停止操作をした場合等、様々な場合が考えられる。本実施形態のＥＥＰＲＯＭ書込処理部７５は、何れの場合にせよ、エンジンの始動が完了した後にエンジン回転数がトリガ回転数を下回った時点で、ＥＥＰＲＯＭ書込処理部７５がエラー情報等をＥＥＰＲＯＭ８７に記憶させる。
【００７１】
なお、ＥＥＰＲＯＭ書込処理部７５は、エンジン回転数がトリガ回転数を下回るという条件を単純に満たせばＥＥＰＲＯＭ８７への書込みを行う訳ではない。即ち、ＥＥＰＲＯＭ書込処理部７５がＥＥＰＲＯＭ８７への書込みを行う条件としては、エンジン６の始動がいったん完了し、その後にエンジン回転数がトリガ回転数を下回ることが必要になる。なお、エンジン６の始動が完了したか否かは、例えばエンジン回転数が所定の回転数を上回ったか否かで判定することができる。これにより、例えばエンジン６の始動が連続的に何度も失敗した場合でも、ＥＥＰＲＯＭ８７に内容が頻繁に書き込まれるのを防ぎ、ＥＥＰＲＯＭ８７の寿命を延ばすことができる。
【００７２】
ＥＥＰＲＯＭ８７へのエラー情報等の書込みのタイミングを決定する上記のトリガ回転数としては、ＥＥＰＲＯＭ８７のトリガ回転数記憶領域９１に記憶された設定値が読み出されて用いられる。このトリガ回転数記憶領域９１の記憶内容は、エンジン制御装置３０に図略の設定器を電気的に接続することで変更することができる。従って、例えばエンジン６の工場出荷時に、トリガ回転数として様々な値を設定することができる。この結果、例えばエンジン６の種別に応じた最適な書込み開始時期を設定することができる。
【００７３】
なお、エンジン回転数がトリガ回転数を下回ってＥＥＰＲＯＭ書込処理部７５がＥＥＰＲＯＭ８７への書込みを開始した後に、エラー検出部７１が新たにエンジン６の異常を検出する場合も考えられる。この場合、当該異常に基づくエラー情報（及びフリーズフレームデータ）は、先ずＲＡＭ書込処理部７４によってＲＡＭ８３に記憶される。
【００７４】
その後、エンジン制御装置３０のシャットオフ処理時には、従来と同様に、エンジン制御装置３０が取得した各種の学習パラメータ等、様々な制御情報がＥＥＰＲＯＭ８７に保存される。本実施形態ではこれと同時に、ＥＥＰＲＯＭ書込処理部７５は、ＥＥＰＲＯＭ８７に保存すべき新しいエラー情報がＲＡＭ８３のエラー情報記憶領域８４に記憶されているかどうかを調べる。そして、新しいエラー情報がある場合には、ＥＥＰＲＯＭ書込処理部７５は、ＲＡＭ８３のエラー情報記憶領域８４に記憶されている当該エラー情報を、ＥＥＰＲＯＭ８７のエラー情報記憶領域８８にコピーし、フリーズフレームデータもＥＥＰＲＯＭ８７の適宜の領域にコピーする。これにより、エンジン回転数がトリガ回転数を下回った後の異常に関するエラー情報についても、漏れなく不揮発性のＥＥＰＲＯＭ８７に記憶させることができる。
【００７５】
また、前述のようにエンジン回転数が低下してトリガ回転数を下回ったために、ＥＥＰＲＯＭ書込処理部７５がＥＥＰＲＯＭ８７にエラー情報等を書き込もうとしたときに、他の制御プログラムがＥＥＰＲＯＭ８７にアクセス中である場合も考えられる。この場合は、ＥＥＰＲＯＭ書込処理部７５は、当該他の制御プログラムがＥＥＰＲＯＭ８７へのアクセスを終了するまで待機し、アクセスが終了した後に、ＥＥＰＲＯＭ８７へのエラー情報等の書込みを開始する。これにより、ＥＥＰＲＯＭ８７へのアクセスに関する排他制御を実現でき、記憶内容の一貫性を確保することができる。
【００７６】
また、アクセス規制部７６は、ＥＥＰＲＯＭ書込処理部７５がＥＥＰＲＯＭ８７へエラー情報等を書き込んでいるときに、他の制御プログラムがＥＥＰＲＯＭ８７にアクセスすることを禁止する。これにより、上記と同様にＥＥＰＲＯＭ８７へのアクセスの排他制御を実現することができる。
【００７７】
通信部７７は、例えば通信インタフェースから構成されている。通信部７７は、図４に示すようにエンジン制御装置３０にスキャンツール９５が接続され、当該スキャンツール９５からエラー情報等の取得が要求された場合に、ＥＥＰＲＯＭ８７等からエラー情報等を読み出して、スキャンツール９５に出力する。これにより、例えば修理作業者は、異常発生の原因を特定するための有力な情報を得ることができる。
【００７８】
特に、本実施形態のエンジン制御装置３０では、図６（ａ）に示すエラー情報のほかに、制限解除運転部７３が制限解除運転を開始した時点において、エラー検出部７１が検出していた異常の種類と、当該制限解除運転の開始のタイミングと、がＥＥＰＲＯＭ８７に記憶される（図６（ｂ）の制限解除運転時エラー情報）。また、制限解除運転部７３が制限解除運転を終了した時点において、エラー検出部７１が検出していた異常の種類と、当該制限解除運転の終了のタイミングと、がＥＥＰＲＯＭ８７に記憶される（図６（ｃ）の制限解除運転終了時エラー情報）。
【００７９】
即ち、操船者により制限解除運転が指示された場合は、エンジン６に異常が発生している状況下で、エンジン制御装置３０の制限解除運転部７３が当該エンジン６を通常どおり運転するように制御する。従って、当該異常がエンジン６にダメージを与える可能性が相当に高くなるため、制限解除運転が行われた後は、エンジン６のメンテナンスを十分に行うことが極めて強く望まれる。
【００８０】
この点、本実施形態のエンジン制御装置３０では、制限解除運転が開始された時点でのエラー情報が、制限解除運転時エラー情報としてＥＥＰＲＯＭ８７に記憶され、この制限解除運転時エラー情報をエラー情報と区別して読出し可能に構成されている。従って、この制限解除運転時エラー情報を前記スキャンツール９５で読み出すことにより、どのような異常による制限運転を解除して運転を継続したのかが把握できるので、制限解除運転の終了後にメンテナンスしなければならない項目が明確になる。この結果、制限解除運転を行ったためにエンジン６に大きなダメージが生じていた場合の点検漏れを効果的に防止することができる。
【００８１】
また、制限解除運転時エラー情報に含まれているエラーは、制限解除運転の開始前から発生していた異常を表しているので、操船者が通常の使用方法でエンジン６を稼働させた結果の異常である可能性が高い。一方で、制限解除運転時エラー情報に含まれず、制限解除終了運転時エラー情報に含まれているエラーは、制限解除運転を行ったことによって発生した異常であるので、操船者がエンジン６を無理に運転した結果であるということができる。このように、本実施形態では、制限解除運転後に発生した異常と、制限解除運転以前に発生した異常とを、明確に切り分けることができる。
【００８２】
また、本実施形態のＥＥＰＲＯＭ８７において、制限解除運転の開始時でのエラー情報を記憶する領域（制限解除時エラー情報記憶領域８５）、及び、制限解除運転の終了時でのエラー情報を記憶する領域（制限解除終了時エラー情報記憶領域８６）が、発生したエラー情報を単純に記録する領域（エラー情報記憶領域８４）とはそれぞれ別の記憶領域に設けられている。
【００８３】
即ち、制限解除運転の開始時及び終了時で発生していた異常に関する情報は、その後のエンジン６のメンテナンス項目を決定するための根拠として利用できる点で、他のタイミングで発生した異常に関する情報よりも重要であるということができる。従って、本実施形態のように記憶領域を特別に設けることで、例えばエラー情報記憶領域８４に記憶すべきエラー情報が多数発生し、記憶領域がなくなって古いエラー情報を消去しなければならなくなったとしても、制限解除時エラー情報記憶領域８５及び制限解除終了時エラー情報記憶領域８６の記憶内容を問題なく保持しておくことができる。この結果、上記の重要な情報を確実に保存することができる。
【００８４】
ただし、上記の構成に限定するものではなく、制限解除運転時エラー情報及び制限解除運転終了時エラー情報に対し、制限解除時／制限解除終了時のエラー情報であることを示すフラグ等を付加した上で、エラー情報と同一のテーブル（記憶領域）に記憶させるようにしても良い。この場合でも、制限解除運転時エラー情報及び制限解除運転終了時エラー情報をそれぞれエラー情報と区別して読み出すことが可能である。また、上記のようにすれば、情報の一元的な取扱いが可能になる。
【００８５】
更に、本実施形態においては図６（ｂ）に示すように、制限解除運転時エラー情報に、制限解除運転が開始したタイミングを表すエンジン積算運転時間が含まれている。また、図６（ｃ）に示すように、制限解除運転終了時エラー情報には、制限解除運転が終了したタイミングを表すエンジン積算運転時間が含まれている。従って、エンジンのメンテナンスのために一層有用な情報を得ることができる。
【００８６】
次に、エラー情報等をＥＥＰＲＯＭ８７に保存するために行われる具体的な処理について、図７のフローチャートを参照して説明する。
【００８７】
制御がスタートすると、エンジン制御装置３０は、エンジン６の回転数が十分に上昇するまで待機する（ステップＳ１０１）。エンジン６の回転数が十分に上昇すれば、エンジンが始動したものと判断してステップＳ１０２に進む。
【００８８】
ステップＳ１０２では、エラー検出部７１によってエンジン６に異常が生じているかどうかが判定される。異常があった場合には、エラー情報（及びフリーズフレームデータ）を作成して、直ちにＲＡＭ８３に書き込む（ステップＳ１０３）。次に、エンジン回転数が上記のトリガ回転数を下回っているか否かを判定する（ステップＳ１０４）。エンジン回転数がトリガ回転数以上だった場合には、ステップＳ１０２に戻り、エンジン回転数がトリガ回転数を下回るまで、ステップＳ１０２及びＳ１０３の処理を繰り返す。
【００８９】
エンジン回転数がトリガ回転数を下回ると、ステップＳ１０５で、ＲＡＭ８３に記述されていたエラー情報（及びフリーズフレームデータ）をＥＥＰＲＯＭ８７にコピーする。これにより、ＥＥＰＲＯＭ８７に対してエラー情報を早いタイミングで書き込むことができる。
【００９０】
その後、ステップＳ１０６では、エラー検出部７１によってエンジン６に異常が生じているかどうかが判定される。異常があった場合には、エラー情報（及びフリーズフレームデータ）を作成して直ちにＲＡＭ８３に書き込む（ステップＳ１０７）。次に、エンジン制御装置３０のシャットオフ処理が開始されているかを判定する（ステップＳ１０８）。シャットオフ処理が開始されていない場合には、ステップＳ１０６に戻り、シャットオフ処理が開始されるまで、ステップＳ１０６及びＳ１０８の処理を繰り返す。これにより、ステップＳ１０５の処理でＥＥＰＲＯＭ８７に書き込んだ後に発生した異常に関するエラー情報が、ＲＡＭ８３に保存されることになる。
【００９１】
シャットオフ処理の開始が検知されると、ステップＳ１０９で、ＲＡＭ８３に記述されていたエラー情報（及びフリーズフレームデータ）をＥＥＰＲＯＭ８７にコピーする。なお、各種の制御学習パラメータ等についても、このときにＥＥＰＲＯＭ８７に記憶される。以上により、１回目のＥＥＰＲＯＭ８７への書込み後に発生したエラー情報についても、漏れなくＥＥＰＲＯＭ８７に保存することができる。その後、ステップＳ１１０で、エンジン制御装置３０のシャットオフ処理が完了する。
【００９２】
続いて、エンジンの制限運転及び制限解除運転等を行うために行われる具体的な処理について、図８のフローチャートを参照して説明する。
【００９３】
処理がスタートすると、エンジン制御装置３０は、エンジン６を通常通り運転する（ステップＳ１２１）。この通常運転は、ステップＳ１２２でエラー検出部７１が異常を検出するまで継続される。
【００９４】
ステップＳ１２２でエンジン６の異常が検出されると、エンジン６の制限運転が行われる（ステップＳ１２３）。なお、図８のステップＳ１２２では記載を簡略化しているが、当該ステップＳ１２２では、エンジン６に異常が検出されたかどうかだけでなく、当該異常が制限運転をすべきものに該当するか否かについても併せて判断される。
【００９５】
次に、エンジン制御装置３０は、制限解除スイッチ５４が操船者によってＯＮ操作されたか否かを調べる（ステップＳ１２４）。
【００９６】
ステップＳ１２４の判断で、制限解除スイッチ５４がＯＮ操作されていなかった場合、エンジン制御装置３０は、エラー検出部７１を調べ、ステップＳ１２２で検出した異常が解消していないかを調べる（ステップＳ１２７）。異常が解消している場合、ステップＳ１２１に戻り、エンジン６は通常運転に戻される。異常が解消していない場合、ステップＳ１２３に戻り、エンジン６の制限運転が継続される。
【００９７】
ステップＳ１２４の判断で、制限解除スイッチ５４がＯＮ操作されたと判定すると、エンジン制御装置３０は、制限解除運転時エラー情報をＲＡＭ８３に書き込んで記憶させた上で（ステップＳ１２５）、エンジン６の制限解除運転を行う（ステップＳ１２６）。その後、ステップＳ１２８で、制限解除スイッチ５４がＯＦＦ操作されたか否かが調べられる。
【００９８】
ステップＳ１２８で、制限解除スイッチ５４がＯＦＦ操作されていた場合、エンジン制御装置３０は、制限解除運転終了時エラー情報をＲＡＭ８３に書き込んで記憶させた上で（ステップＳ１２９）、ステップＳ１２３に戻り、エンジン６を制限運転に切り換える。
【００９９】
ステップＳ１２８で、制限解除スイッチ５４がＯＦＦ操作されていない場合、エンジン制御装置３０は、エラー検出部７１を調べ、ステップＳ１２２で検出した異常が解消していないかを調べる（ステップＳ１３０）。異常が解消している場合、制限解除運転終了時エラー情報をＲＡＭ８３に書き込んで記憶させた上で（ステップＳ１３１）、ステップＳ１２１に戻り、エンジン６は通常運転に戻される。異常が解消していない場合、ステップＳ１２６に戻り、エンジン６の制限解除運転が継続される。
【０１００】
なお、この図８に示すフローチャートでは、操船者がいったん制限解除スイッチ５４をＯＮ操作すると、エンジン６に発生した異常が解消されない限りは、制限解除スイッチ５４をＯＦＦ操作されるまで制限解除運転が解除されない（ステップＳ１２８を参照）。しかしながら、制限解除運転はエンジン６に異常が生じている状況において通常どおりエンジン６を運転するものであるから、エンジン６にダメージを与える可能性が高く、極端な場合はエンジンが停止してしまうこともある。従って、制限解除運転が不必要に継続することは好ましくない。
【０１０１】
この点を考慮し、図８のフローチャートのステップＳ１２８において、ユーザが制限解除のＯＦＦ操作をするか、又は、制限解除運転が開始してから所定時間が経過したり、燃料噴射量の積算値が所定値を超えたりした場合に、制限解除運転を終了させて再び制限運転に戻るように変更しても良い。こうすることで、当該制限解除運転が真に必要かどうかの観点からの見直しを、一定の頻度で操船者に行わせることができる。この見直しの結果、操船者が制限解除運転を打ち切った場合は、その分だけエンジン６のダメージを軽減することができる。
【０１０２】
以上に説明したように、本実施形態のエンジン制御装置３０は、エラー検出部７１と、ＥＥＰＲＯＭ８７と、制限運転部７２と、制限解除運転部７３と、を備える。エラー検出部７１は、エンジン６に発生した異常を検出する。ＥＥＰＲＯＭ８７は、エンジン６の通常運転時にエラー検出部７１が検出した異常に関する情報を少なくとも含むエラー情報を記憶可能である。制限運転部７２は、通常運転時にエラー検出部７１が検出した異常が所定の制限運転条件を満たす場合に、エンジン６の機能の一部を制限した制限運転を行う。制限解除運転部７３は、通常運転時にエラー検出部７１が検出した異常が所定の制限解除条件を満たす場合に、エンジン６の制限運転時における操船者の操作に応じて、当該制限運転から、エンジン６の機能の制限を解除した制限解除運転に切り換える。ＥＥＰＲＯＭ８７は、エンジン６の制限解除運転の開始時にエラー検出部７１が検出した異常に関する情報を少なくとも含む制限解除運転時エラー情報を記憶可能であり、制限解除運転時エラー情報を、エラー情報と区別して読出し可能に構成されている。
【０１０３】
これにより、制限解除運転の開始時点で検出されていた異常を示す制限解除運転時エラー情報を、ＥＥＰＲＯＭ８７の記憶内容をスキャンツール９５で読み出すことにより、通常運転時のエラー情報と明確に区別して把握することができる。従って、事後のメンテナンス作業において、エンジン６の重大なダメージに繋がり易い制限解除運転開始時の異常を見落とすことが防止されるので、適切なメンテナンスを行うことができ、また、作業効率を向上させることができる。また、制限解除運転の開始時点で生じていた異常を明確に把握することができる。
【０１０４】
また、本実施形態のエンジン制御装置３０において、ＥＥＰＲＯＭ８７は、制限解除運転時エラー情報を、エラー情報とは別の領域（制限解除時エラー情報記憶領域８５）に記憶する。
【０１０５】
これにより、他のエラー情報と比較して重要である制限解除運転時エラー情報を、特別に用意された領域に記憶することが可能になる。従って、例えば通常のエラー情報を記憶する領域が足りなくなり、古いエラー情報を削除しなければならなくなったとしても、制限解除運転時エラー情報の記憶を確実に保持しておくことができる。
【０１０６】
ただし、上記のエンジン制御装置３０において、ＥＥＰＲＯＭ８７は、制限解除運転時エラー情報とエラー情報とを区別するためのフラグ等の情報を制限解除運転時エラー情報及びエラー情報の少なくとも何れかに付加した状態で、制限解除運転時エラー情報とエラー情報とを同一の領域に記憶するように構成することもできる。
【０１０７】
この場合、制限解除運転時エラー情報及びエラー情報の一元的な取扱いが可能になる。
【０１０８】
また、本実施形態のエンジン制御装置３０において、制限解除運転時エラー情報には、制限解除運転が開始したタイミングに関する情報（エンジン積算運転時間）を含む。
【０１０９】
これにより、制限解除運転が開始した時点で発生していた異常を把握できるとともに、当該制限解除運転の開始タイミングを把握することができる。従って、メンテナンス作業等のために、制限解除運転時エラー情報を一層活用することができる。
【０１１０】
また、本実施形態のエンジン制御装置３０において、ＥＥＰＲＯＭ８７は、エンジン６の制限解除運転の終了時にエラー検出部７１が検出している異常に関する情報を少なくとも含む制限解除運転終了時エラー情報を記憶することができる。
【０１１１】
これにより、制限解除運転が終了した時点でどのような異常が発生していたかを把握できるので、事後のメンテナンス作業等を一層円滑に行うことができる。
【０１１２】
また、本実施形態のエンジン制御装置３０において、制限解除運転終了時エラー情報には、制限解除運転が終了したタイミングに関する情報（エンジン積算運転時間）を含む。
【０１１３】
これにより、制限解除運転が終了した時点で発生していた異常を把握できるとともに、当該制限解除運転の終了タイミングを把握することができる。従って、メンテナンス作業等のために、制限解除運転終了時エラー情報を一層活用することができる。
【０１１４】
以上に本発明の好適な実施の形態を説明したが、上記の構成は例えば以下のように変更することができる。
【０１１５】
上記実施形態においては、エラー情報、制限解除運転時エラー情報、制限解除運転終了時エラー情報を記憶する記憶部としてＥＥＰＲＯＭ８７を用いたが、この代わりに例えばフラッシュＲＯＭを用いても良い。
【０１１６】
上記実施形態においては、エラー情報と、制限解除運転時エラー情報とは、同一のＥＥＰＲＯＭ８７に記憶される。しかしながら、例えば物理的に別のメモリを備えて、一方にエラー情報を記憶し、他方に制限解除運転時エラー情報を記憶するように構成しても良い。
【０１１７】
上記実施形態においては、エラー情報、制限解除運転時エラー情報、制限解除運転終了時エラー情報は、いったんＲＡＭ８３に記憶され、その後にＥＥＰＲＯＭ８７に記憶される。しかしながらこれに限定されず、当初からＥＥＰＲＯＭ８７に上記の情報を記憶するように構成しても良い。
【０１１８】
上記実施形態においては、制限解除運転等が開始したタイミングとして、エンジン積算運転時間をＥＥＰＲＯＭ８７に記憶している。しかしながら、各種のタイミングを記録する方法はこれに限定されず、例えばエンジン制御装置が時計等の計時手段を備え、この計時手段から得られた現在時刻をＥＥＰＲＯＭ８７に記憶させるように構成しても良い。
【０１１９】
エラー検出部７１が検出するエンジン６の異常は、上記に限定されず、適宜定めることができる。また、どの異常を制限運転や制限解除運転の対象とするか（即ち、前記の制限運転条件及び制限解除条件）についても、事情に応じて様々に変更することができる。
【０１２０】
上記の実施形態においてエンジン６は舶用としているが、このエンジン６は舶用に限らず、建設機械用、農業機械用を含め、幅広い用途に適用することができる。
【符号の説明】
【０１２１】
６  エンジン
３０  エンジン制御装置
７１  エラー検出部
７２  制限運転部
７３  制限解除運転部
８７  ＥＥＰＲＯＭ（記憶部）
８８  エラー情報記憶領域
８９  制限解除時エラー情報記憶領域
【図１】
0006289325.tif 000002
【図２】
0006289325.tif 000003
【図３】
0006289325.tif 000004
【図４】
0006289325.tif 000005
【図５】
0006289325.tif 000006
【図６】
0006289325.tif 000007
【図７】
0006289325.tif 000008
【図８】
0006289325.tif 000009