"作業機械の複数の稼働情報を検出する稼働情報検出手段と、この稼働情報に基づいて、予め定められた複数の異常コード毎に機械の異常を判定する異常判定手段と、異常コードに対応する少なくとも1つの稼動情報を、異常発生時を基準とした所定期間にわたり、スナップショットデータとして記憶するスナップショットデータ記憶手段と、スナップショットデータを前記スナップショットデータ記憶手段に記憶するか否かおよび前記スナップショットデータ記憶手段に記憶されているスナップショットデータを削除するか否かを含む判断をおこなうスナップショットデータ記憶制御手段と、スナップショットデータを含む情報を外部管理用端末との間で送受信する通信手段とを備えた作業機械の異常診断システムにおいて、前記スナップショットデータ記憶制御手段は、前記複数の異常コードのなかから異常コードを特定する異常コード特定機能部を有し、この異常コード特定機能部が作動すると、特定異常コードに係るスナップショットデータのみを記憶することを特徴とする作業機械の異常診断システム。請求項1に記載の作業機械の異常診断システムにおいて、前記異常コード特定機能部は、前記通信手段を介する前記外部管理用端末からの指令に基づき、異常コードを特定することを特徴とする作業機械の異常診断システム。請求項1に記載の作業機械の異常診断システムにおいて、作業機械が存在する位置を検出する位置検出手段を更に備え、前記スナップショットデータ記憶制御手段は、前記位置検出手段が検出する位置が特定エリア内であるとき、前記異常コード特定機能部が作動するように、特定エリアを設定する特定エリア設定機能部を有することを特徴とする作業機械の異常診断システム。請求項1に記載の作業機械の異常診断システムにおいて、日時を検出する日時検出手段を更に備え、前記スナップショットデータ記憶制御手段は、前記日時検出手段が検出する日時が特定期間内であるとき、前記異常コード特定機能部が作動するように、特定期間を設定する特定期間設定機能部を有することを特徴とする作業機械の異常診断システム。請求項1に記載の作業機械の異常診断システムにおいて、前記異常コード特定機能部は、2以上の異常コードを特定可能であることを特徴とする作業機械の異常診断システム。ところで、近年、作業機械は世界各地で使われるようになった。エリアごとに使用環境や使用状況が大きく異なり、国内の経験則が適用できないような原因不明の異常が頻発して発生するおそれがある。このような場合、管理者は早急に異常原因を検討するために、この原因不明の異常特定異常に係るデータをなるべく多く収集する必要がある。従来技術において、特定異常コードの優先順位を最上位に設定しておくことにより、特定異常に係るスナップショットデータを優先的に記憶しておくことができる。一方、従来技術における技術思想は、重要データの優先取得と多種のデータ取得を並存させることにある。従って、1つの特定異常に係るスナップショットデータを優先的に記憶すると、他の優先順位の高い異常に係るスナップショットデータを記憶する。通常時であれば、他の優先順位の高い異常に係るスナップショットデータも有用である。しかしながら、特定異常の原因究明のためには、特定異常に係るデータをなるべく多く収集する必要があり、それ以外のデータは無用のデータとなる。無用のデータの取得は、異常原因究明を遅らせることになる。本発明の目的は、特定の異常に係るスナップショットデータを確実に多数取得することができる作業機械の異常診断システムを提供することにある。1上記目的を達成するために、本発明は、作業機械の複数の稼働情報を検出する稼働情報検出手段と、この稼働情報に基づいて、予め定められた複数の異常コード毎に機械の異常を判定する異常判定手段と、異常コードに対応する少なくとも1つの稼動情報を、異常発生時を基準とした所定期間にわたり、スナップショットデータとして記憶するスナップショットデータ記憶手段と、スナップショットデータを前記スナップショットデータ記憶手段に記憶するか否かおよび前記スナップショットデータ記憶手段に記憶されているスナップショットデータを削除するか否かを含む判断をおこなうスナップショットデータ記憶制御手段と、スナップショットデータを含む情報を外部管理用端末との間で送受信する通信手段とを備えた作業機械の異常診断システムにおいて、前記スナップショットデータ記憶制御手段は、前記複数の異常コードのなかから異常コードを特定する異常コード特定機能部を有し、この異常コード特定機能部が作動すると、特定異常コードに係るスナップショットデータのみを記憶する。特定の異常が発生すると、スナップショット記憶制御手段は特定異常コードに係るスナップショットデータのみをスナップショット記憶手段に記憶する。このとき、特定異常以外の異常が発生した場合でも、当該異常に係るスナップショットデータを記憶しない。これにより、特定の異常に係るスナップショットデータを確実に多数取得することができる。その結果、管理者は早急に特定の異常に係る異常原因を究明できる。2上記1において、本発明は、前記異常コード特定機能部は、前記通信手段を介する前記外部管理用端末からの指令に基づき、異常コードを特定する。これにより、管理者は、作業機械から離れた場所にある管理局内から、複数の作業機機械に対し、異常コードを特定できる。複数の作業機機械からスナップショットデータを取得することにより、より多数のスナップショットデータを取得することができる。3上記1において、本発明は、作業機械が存在する位置を検出する位置検出手段を更に備え、前記スナップショットデータ記憶制御手段は、前記位置検出手段が検出する位置が特定エリア内であるとき、前記異常コード特定機能部が作動するように、特定エリアを設定する特定エリア設定機能部を有する。4上記1において、本発明は、日時を検出する日時検出手段を更に備え、前記スナップショットデータ記憶制御手段は、前記日時検出手段が検出する日時が特定期間内であるとき、前記異常コード特定機能部が作動するように、特定期間を設定する特定期間設定機能部を有する。3および4により、スナップショット記憶制御手段は、異常コード特定機能部の作動を制限し、通常時の制御をおこなう。通常時であれば、特定異常以外の異常に係るスナップショットデータも有用であり、当該スナップショットデータを確実に取得することができる。5上記1において、本発明は、前記異常コード特定機能部は、2以上の異常コードを特定可能である。本発明によれば、特定の異常に係るスナップショットデータを確実に多数取得することができる。その結果、管理者は早急に特定の異常に係る異常原因を究明できる。以下、本発明の実施形態を図面を用いて説明する。~構成~図1は、本発明が搭載される作業機械の制御システムの全体構成を示す図である。作業機械には、油圧ショベル、ホイルローダ、ダンプトラック、ブルドーザ等がある。図1において、本実施の形態に係わる制御システムは、エンジンコントローラ1と、車体コントローラ2と、情報コントローラ3と、通信コントローラ4とを有し、これらは車体ネットワーク5を介して相互に接続されている。エンジンコントローラ1はエンジンに備えられる電子ガバナを制御する。エンジン実回転数センサなどの各種センサ11からの検出信号を入力し、燃料の噴射量を制御しエンジン回転数と出力トルクを制御するように、電子ガバナなどの各機器12に指令信号を出力する。車体コントローラ2は作業機械の油圧駆動装置を制御するものであり、油圧駆動装置はエンジンにより回転駆動される油圧ポンプと、この油圧ポンプから吐出された圧油により駆動され、フロント作業機等の被駆動体を駆動する複数の油圧アクチュエータと、油圧ポンプから油圧アクチュエータに供給される圧油の流れを制御するコントロールバルブと、このコントロールバルブを操作し対応する油圧アクチュエータを駆動する操作レバー装置等の油圧機器を含んでいる。車体コントローラ2は、例えば、操作レバー装置の操作量を検出する検出センサ等の各種センサ13から検出信号を入力し、油圧ポンプの傾転角容量を制御して、その操作量に応じた流量を吐出するように、レギュレータなどの各機器14に指令信号を出力する。情報コントローラ3は、エンジンコントローラ1、車体コントローラ2から車体ネットワーク5を介して各種稼動情報検出データを入力し、それらをデータベースに収集し、記憶する。通信コントローラ4は、通信装置15を介して管理用端末16との送受信を制御する。管理用端末16は作業機械から離れた場所にある管理局内に設置されている。また、通信コントローラ4は、GPSアンテナ17を介して、GPS衛星からの位置情報および時刻情報を受信する。通信コントローラ4は、情報コントローラ3が記憶したデータを所定の時間間隔で例えば1日に1回管理用端末16に送信する。作業車両がトンネル内にある等、通信不可能な場合は、通信可能な状態に戻ったときに、送信する。図2は、本発明の異常診断システムの主要構成を示す図である。異常診断システムは、情報コントローラ3の各機能を中心に構成されている。異常診断システムは、作業機械に搭載されるものであり、入力部31と、取得稼働情報記憶部32と、異常判定部33と、設定情報記憶部34と、スナップショットデータ記憶制御部35と、スナップショットデータ記憶部36と、内部時計37と、出力部38とを備えている。入力部31は、車体ネットワーク5や各コントローラ1,2,4を介して、各種センサ11,13から作業機械の稼働状況に係る稼働情報や、管理用端末16からの指令情報や、GPS衛星からの位置情報および時刻情報等を入力する。各種センサ11,13としては、例えば、キー信号センサ、オーバーヒート信号センサ、エンジン油圧センサ、エンジン実回転数センサ、水温センサ、エアフィルタ差圧センサ、メイン油圧ポンプ圧センサ、等がある。たとえば、オーバーヒート信号センサは、エンジン冷却水温が設定値以上に到達したときに発信されるオーバーヒート信号を検出する。エンジン油圧センサは、エンジン油圧を検出し、エンジンオイル循環系統の異常を検出する。例えば、エンジン油圧が設定値以下に到達すると、エンジンオイル循環系統にオイル漏れ等の異常が発生したとみなすことができる。その他のセンサの説明については省略する。取得稼働情報記憶部32は、入力部31を介して、各種センサ11,13からの稼働情報を記憶する。センサは多数あり、長期間にわたる稼働情報を記憶すると、稼働情報のデータ量が膨大になり取得稼働情報記憶部32の記憶容量を充分確保しなければならない。そのため、取得稼働情報記憶部32の記憶容量を抑制する観点から、データの種類対象センサや記憶期間を選別し、必要なデータをスナップショットデータとして別途、スナップショット記憶部36に記憶する後述とともに、新たな稼働情報を上書きする。異常判定部33は、取得稼働情報記憶部32に記憶された稼働情報に基づいて、作業機械に異常が発生したか否かを判定する。例えば、異常判定部33は、オーバーヒート信号センサによってオーバーヒート信号が検出されるとオーバーヒートが発生したと判定し、エンジン油圧センサによってエンジン油圧が設定値以下に到達したことが検出されるとエンジン油圧低下が発生したと判定する。なお、異常判定部33は、予め定められた異常コードごとに異常を判定する。異常判定部33が異常が発生したと判定すると、スナップショット記憶制御部35が作動する。設定情報記憶部34は、予め設定された設定情報を記憶しておく。設定情報は、通常不変であるが、管理用端末16を介して管理者によりが変更可能である。設定情報には、異常コード、異常コードに対応する取得データ、異常コードの優先順位、スナップショット取得対象エリア、スナップショット取得対象稼動期間等がある。図3は、異常コードのデータ構造を示す図である。異常コードとは、異常の種類に応じて定められた識別子であり、たとえば、オーバーヒートの異常コードは、コードNo.100、優先順位1010段階中、対応取得データキー信号、水温、外気温、実エンジン回転数、エンジン負荷率、大気圧と設定されている。優先順位は、発生した異常に係るスナップショットデータのうち優先的に記憶される順位を示すもので、発生した異常が作業機械の挙動に与える影響度及び発生した異常への対応の緊急度に応じ、影響度や緊急度の高いものほど優先順位が高く設定されている。対応取得データは、異常コードに関連するデータであり、経験則から設定されている。具体的には、10段階に分かれ、影響度及び緊急度が最も高いものを最高順位の10とし、影響度及び緊急度が最も低いものを最低順位の1とする。その他の異常コードについての説明は省略する。スナップショット記憶制御部35は、記憶容量が制限されたスナップショット記憶部36を効率的に利用できるように、取得稼働情報記憶部32内の稼動情報をスナップショットデータとしてスナップショット記憶部36に記憶するか否か、既にスナップショット記憶部36に記憶されているスナップショットデータを削除するか否かなどの判断を行う。たとえば、スナップショット記憶制御部35は、新たなスナップショットデータを記憶する空きが無いときに新たな異常が発生した場合において、記憶されている過去のスナップショットデータのなかに新たな異常に係る優先順位よりも優先順位が低いものがあるとき、当該優先順位の低い過去のスナップショットデータを削除し、空いた領域に新たな異常に係るスナップショットデータを記憶するすなわち上書きする。新たな異常が同一の異常コードまたは同じ優先順位である場合も、過去のスナップショットデータが記憶されている領域に、新たな異常に係るスナップショットデータを上書きする。更に、管理用端末16に送信されたスナップショットデータを削除し、空き領域を確保する。また、スナップショット記憶部36に記憶される複数のスナップショットデータを優先順位ごとに並び替える。スナップショット記憶部36を効率的に利用するように、スナップショットデータのデータ量を抑制する必要がある。スナップショット記憶制御部35は、現在から過去に所定期間だけ遡った稼働情報のみを記憶する。稼働情報を記憶すべき期間の目安としては、スナップショットデータとして抽出される稼働情報の期間を参酌し、係る期間よりも長期間にわたる稼働情報を記憶すれば良い。例えば、異常発生時を基準としてその前後2分間の稼働情報をスナップショットデータとする場合には、少なくとも現在から過去に遡って4分間の稼働情報をスナップショット記憶部36に記憶する。上記の制御は、スナップショット記憶制御部35の通常処理機能部35aによりおこなわれる。スナップショット記憶部36は、スナップショット記憶制御部35の制御により、スナップショットデータを記憶する。図4は、通常時にスナップショット記憶部36に記憶されるスナップショットデータの一例である。スナップショットデータ記憶部36はその記憶容量メモリ容量に限りがあり、記憶できるスナップショットデータのデータ数に上限がある。たとえば、記憶可能なスナップショットデータのデータ数を3件とし、各データにID1~3を付す。スナップショット記憶部36には、優先順位の高い順に、異常コード、異常発生時刻、優先順位とともに、データ本体各センサに係る取得データが記憶される。たとえば、ID1のデータは、優先順位10の異常コード100に係るスナップショットデータである。ID2,3のデータも優先順位の高い異常コードに係るスナップショットデータである。内部時計37は、現在時刻を発信する。時刻はGPS衛星からの時刻情報に基づき適宜補正される。出力部38は、管理用端末16からの指令に基づき、車体ネットワーク5や各コントローラ4を介して、スナップショット記憶部36に記憶されているスナップショットデータを出力する。本実施形態の特徴的な構成として、スナップショット記憶制御部35は、更に、異常コード特定機能部35bと、特定エリア設定機能部35cと、特定期間設定機能部35dとを有する。異常コード特定機能部35bは、管理用端末16からの指令に基づき、複数の異常コードのなかから異常コードを特定する。この異常コード特定機能部35bが作動すると、スナップショット記憶制御部35は特定異常コードに係るスナップショットデータのみをスナップショット記憶部36に記憶する。特定エリア設定機能部35cは、管理用端末16からの指令に基づきエリアを特定し、特定エリアを設定情報記憶部34に記憶する。特定期間設定機能部35dは、管理用端末16からの指令に基づき期間を特定し、特定期間を設定情報記憶部34に記憶する。GPS衛星からの位置情報に基づき、現在位置が特定エリアであり、かつ、内部時計37の時刻が特定期間内であるとき、異常コード特定機能部35bは作動する。図5は、スナップショット記憶制御部35の制御処理フロー図である。スナップショット記憶制御部35は、まず管理用端末16から異常コード特定指令があったか否かを判定するS1。管理用端末16から異常コード特定指令がない場合は、通常処理をおこなうS2。S1において、管理用端末16から異常コード特定指令があった場合は、現在位置が特定エリアであるか否かS3、内部時計37の時刻が特定期間内であるか否かを判定するS4。現在位置が特定エリアでない、または、内部時計37の時刻が特定期間内でない場合は、通常処理をおこなうS2。S3,S4において、現在位置が特定エリアであり、かつ、内部時計37の時刻が特定期間内であるとき、特定異常コードに係る特定異常コードに係るスナップショットデータのみをスナップショット記憶部36に記憶するS5。~動作1~本実施形態に係る異常診断システムの動作の一例を示す。一般的に、オーバーヒートは、夏季日中の外気温度の高い時に発生しやすい。特に、赤道に近いエリア程、この傾向が強い。従って、諸対策を講じている。一方、冬季や夜間等は外気温度が低く、オーバーヒートが生じることは想定されてない。ここで、管理者は、あるエリアで冬季夜間にも関わらずオーバーヒートが頻発して発生しているとの報告を受けたとする。上述のように、冬季夜間にオーバーヒートが発生することは想定されておらず、管理者は早急に異常原因を検討するために、冬季夜間のオーバーヒート特定異常に係るデータをなるべく多く収集する必要がある。管理者は、管理用端末16を介して、異常コード100オーバーヒートを特定するとともに、特定エリアおよび特定期間を設定する図6参照。スナップショット記憶制御部35は、特定エリアおよび特定期間を設定情報記憶部34に記憶するとともに、異常コード100を特定する。特定エリア内および特定期間内における作業機械の稼働中に、オーバーヒートが発生すると、スナップショット記憶制御部35は異常コード100に係るスナップショットデータのみをスナップショット記憶部36に記憶するS1→S3→S4→S5。このとき、オーバーヒート以外の異常が発生した場合でも、当該異常に係るスナップショットデータを記憶しない。図7は、本動作時にスナップショット記憶部36に記憶されるスナップショットデータの一例である。スナップショット記憶部36には、時系列に、異常コード100に係るデータのみが、異常発生時刻、優先順位本動作においては重要ではないとともに、記憶される。新たなオーバーヒートが発生した場合は、最新のスナップショットデータを上書きする。ID1~3のデータは、すべて異常コード100に係るスナップショットデータである。管理者は、管理用端末16を介してID1~3のデータをダウンロードし、このデータを解析し、冬季夜間のオーバーヒートに係る異常原因を究明する。なお、日中作業時やエリア外に搬出された場合には、スナップショット記憶制御部35は通常処理をおこなうS1→S3→S2またはS1→S3→S4→S2。管理者は、冬季夜間のオーバーヒートに係る異常原因を究明すると、管理用端末16を介して、異常コード100オーバーヒートの特定を解除する。スナップショット記憶制御部35は通常処理をおこなうS1→S2。~動作2~本実施形態に係る異常診断システムの動作の別の一例を示す。国内日本においては、作業機械の燃料は規制により種類が制限されている。つまり、不純物混入等の劣悪品質の燃料を使うことはなく、燃料の品質に起因する異常が発生することは想定し難い。一方、エリアによっては、燃料に関する規制がなかったり、高品質の燃料の入手が困難であったり等の理由で、品質の劣る燃料を使用するエリアもある。ここで、管理者は、あるエリアで燃料系統に係る異常たとえば、コモンレール圧低下が頻発して発生しているとの報告を受けたとする。使用する燃料に問題があることは察しがつくが、国内の経験則が適用できず、管理者は早急に異常原因の詳細を検討するために、コモンレール圧低下特定異常に係るデータをなるべく多く収集する必要がある。管理者は、管理用端末16を介して、異常コード600コモンレール圧低下を特定するとともに、特定エリアを設定する図8参照。スナップショット記憶制御部35は、特定エリアを設定情報記憶部34に記憶するとともに、異常コード600を特定する。なお、期間を特定しない場合は、通年期間を設定したものとみなす。特定エリア内における作業機械の稼働中に、コモンレール圧低下が発生すると、スナップショット記憶制御部35は異常コード600に係るスナップショットデータのみをスナップショット記憶部36に記憶するS1→S3→S4→S5。このとき、コモンレール圧低下以外の異常が発生した場合でも、当該異常に係るスナップショットデータを記憶しない。図9は、本動作時にスナップショット記憶部36に記憶されるスナップショットデータの一例である。スナップショット記憶部36には、時系列に、異常コード600に係るデータのみが、異常発生時刻、優先順位本動作においては重要ではないとともに、記憶される。新たなコモンレール圧低下が発生した場合は、最新のスナップショットデータを上書きする。ID1~3のデータは、すべて異常コード600に係るスナップショットデータである。管理者は、管理用端末16を介してID1~3のデータをダウンロードし、このデータを解析し、コモンレール圧低下に係る異常原因を究明する。なおエリア外に搬出された場合には、スナップショット記憶制御部35は通常処理をおこなうS1→S3→S4→S2。管理者は、コモンレール圧低下に係る異常原因を究明すると、管理用端末16を介して、異常コード600オーバーヒートの特定を解除する。スナップショット記憶制御部35は通常処理をおこなうS1→S2。~効果~従来技術に相当する、通常時にスナップショット記憶部36に記憶されるスナップショットデータ図4と上記動作1時にスナップショット記憶部36に記憶されるスナップショットデータ図7を比較することにより、本実施形態の効果を説明する。図4において、ID1のデータは、異常コード100に係るスナップショットデータであるが、ID2,3のデータは、異常コード100以外のスナップショットデータであるすなわちデータ1件。通常時であれば、ID2,3のデータも有用である。しかしながら、想定外のオーバーヒートの原因究明のためには、異常コード100オーバーヒートに係るデータをなるべく多く収集する必要があり、それ以外のデータは無用のデータとなる。無用のデータの取得は、異常原因究明を遅らせることになる。図7において、ID1~3のデータは、すべて異常コード100に係るスナップショットデータであるすなわちデータ3件。このように、本実施形態の異常診断システムは、異常コード100に係るスナップショットデータを確実に多数取得することができる。その結果、管理者は早急に想定外のオーバーヒートの異常原因を究明できる。一方、図3において、異常コード600コモンレール圧低下の優先順位を10最上位に変更することにより、通常時従来技術に相当にID1のデータは異常コード600に係るスナップショットデータとなるすなわちデータ1件。しかし、ID2,3のデータは、異常コード600以外のスナップショットデータである。これに対し、上記動作2時にスナップショット記憶部36に記憶されるスナップショットデータ図9は、ID1~3のデータとも、すべて異常コード600に係るスナップショットデータであるすなわちデータ3件。このように、本実施形態の異常診断システムは、異常コード600に係るスナップショットデータを確実に多数取得することができる。その結果、管理者は早急に経験外のコモンレール圧低下の異常原因を究明できる。~変形例~本発明は、本実施形態に限定されるものでなく、発明の範囲内で種々の変形が可能である。1本実施形態において、管理者は、作業機械外部に設置された管理用端末16を介して異常コードを特定し、異常コード特定機能部35bは、外部管理用端末16からの指令に基づき、異常コードを特定しているが、直接、作業機械の制御システムを操作してもよい。作業機械には、インターファイスとしても機能するモニタ装置図示省略が搭載されている。管理者は、モニタ装置を介して異常コードを特定し、異常コード特定機能部35bは、モニタ装置からの指令に基づき、異常コードを特定する。また、管理者から連絡を受けた作業機械の操作者が、モニタ装置を介して異常コードを特定しても良い。2本実施形態において、異常コードを特定するとともに、特定エリアおよび特定期間を設定しているが、特定エリアおよび特定期間の設定は任意である。3本実施形態において、異常コード特定機能部35bは、動作1では異常コード100オーバーヒートを特定し、動作2では異常コード600コモンレール圧低下を特定しているが、同時に2以上の異常コードを特定してもよい。"