以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
(実施の形態1)
図1は実施の形態1に係る特装車1の全体構成を示す側面図、図2はその平面図、図3は荷箱を起立させた状態の側面図である。図1~図3に例示する特装車1は、走行部であるトラックシャシ2と、走行部に搭載される架装装置の一例であるダンプ装置3とを備えるダンプトラックである。以下の説明において、前後、左右、上下の各方向は、トラックシャシ2の運転席に座った運転手から見た前後、左右、上下の各方向を表すものとする。なお、図2では、説明のために、ダンプ装置3を取り除いた状態を示している。
トラックシャシ2は、運転席が設けられるキャブ20と、キャブ20を支持するシャシフレーム21とを備える。シャシフレーム21は、前後方向に延びる左右一対のメインフレーム(縦根太)21A,21Aと、左右一対のメインフレーム21A,21Aを連結するクロスメンバ(横根太)21B,21B,…,21Bとにより構成される(図2を参照)。トラックシャシ2の前輪22F及び後輪22Rは不図示の懸架装置を介してメインフレームに回転可能に取り付けられる。トラックシャシ2は、図に示していないエンジン(原動機)と、このエンジンにクラッチを介して連結される変速機とを備えており、駆動輪(例えば前輪22F)の駆動系にエンジンの駆動力を変速機を介して伝達することによって、走行するように構成されている。
ダンプ装置3は、シャシフレーム21上に固定されるサブフレーム30と、サブフレーム30によって支持され、土砂などの荷が積載される荷箱4とを備える。荷箱4は、サブフレーム30の後端部にて左右方向に延びるヒンジ軸31の回りに回動可能に支持されている。荷箱4は、上方が開放された箱体であり、矩形状の底部40を囲むように配置されたフロントパネル41、左右一対のサイドパネル42、及びリアパネル(後アオリ)43を備える。リアパネル43は開閉可能に構成されている。
ダンプ装置3は、荷箱4を傾斜させるためのホイスト機構5を備える。ホイスト機構5は、例えば、リフトアーム51、油圧シリンダ52、テンションリンク53を備える。油圧シリンダ52が収縮した状態において、荷箱4は水平な姿勢に保たれる。一方、油圧シリンダ52が伸長すると、荷箱4はその前部が持ち上げられ、ヒンジ軸31の回りに回動する。その結果、図3に示すように荷箱4は後下がりに傾斜する。
特装車1は、車両状態を検出する様々なセンサを備える。特装車1は、例えば、積載物による荷重が作用する複数の部位における変位量を計測する変位センサの一例として、歪センサ81A~81Dを備える。歪センサ81A~81Dは、例えば歪ゲージにより構成される。ここで、歪センサ81Aは前輪22Fの車軸23Fの右端付近に取り付けられ、歪センサ81Bは前輪22Fの車軸23Fの左端付近に取り付けられる。歪センサ81Cは後輪22Rの車軸23Rの右端付近に取り付けられ、歪センサ81Dは後輪22Rの車軸23Rの左端付近に取り付けられる。歪センサ81A,81B並びに歪センサ81C,81Dは、例えば、特装車1の前後方向の中心線に対して左右対称に取り付けられる。歪センサ81A~81Dは、荷重に応じた車軸23F,23Rの歪量を時系列的に計測し、計測した歪量に係る計測データを出力する。なお、以下の説明において、歪センサ81A~81Dのそれぞれを個別に説明する必要がない場合、単に歪センサ81とも記載する(図4を参照)。
特装車1は、トラックシャシ2の傾斜を計測する傾斜計82を備えてもよい。傾斜計82は、シャシフレーム21の適宜箇所(例えば前後方向及び左右方向の中央付近)に取り付けられる。傾斜計82は、トラックシャシ2の前後方向の傾斜(ピッチ)、及び左右方向の傾斜(ロール)を時系列的に計測し、計測した傾斜に係る計測データを出力する。特装車1は、荷箱4の傾斜を計測する傾斜計(不図示)を備えてもよく、荷箱4の前後方向の傾斜(ピッチ)及び左右方向の傾斜(ロール)に係る計測データを時系列的に取得してもよい。
特装車1は、歪センサ81の取り付け位置及びその近傍の温度(環境温度)を計測する温度計83を備えてもよい。温度計83により計測される環境温度は歪センサ81の値を校正するために用いることができるので、温度計83は、歪センサ81の環境温度を計測するのに適した場所に取り付けられる。例えば、温度計83は、シャシフレーム21、サブフレーム30、車軸23F,23Rなどの少なくとも一箇所に取り付けられる。温度計83は、環境温度を時系列的に計測し、計測した温度に係る計測データを出力する。
特装車1は、油圧シリンダ52のシリンダ圧を計測する圧力計84を備えてもよい。圧力計84は、油圧シリンダ52のシリンダ圧を時系列的に計測し、計測したシリンダ圧に係る計測データを出力する。
特装車1は、歪センサ81により計測される歪量を含む計測データに基づき、積載物の重量(積載重量)を推定する推定装置100を備える。本実施の形態において、積載重量は、荷箱4に積載されている積載物、特装車1に乗車している乗員、特装車1に積まれている燃料など、特装車1を構成する走行部及び架装装置以外の重量の合計を表す。なお、荷を積んでいないときの走行部及び架装装置の重量の合計(以下、車両重量という)は既知であるとする。推定装置100の内部構成、及び推定装置100が実行する処理の内容については後に詳述することとするが、本実施の形態では、歪量を含む計測データと特装車1の積載重量との関係が学習された学習モデルLM1を用いて、特装車1の積載重量を推定する。推定装置100は、例えばシャシフレーム21に取り付けられる。代替的に、推定装置100は、キャブ20の内部に設けられてもよい。
本実施の形態では、特装車1の一例としてダンプ装置3を備えたダンプトラックについて説明するが、特装車1は、ダンプトラックに限らず、ドライバン、冷凍冷蔵車、液体運搬車、粉体運搬車、給水車、散水車、塵芥収集車など、積載物によって積載重量が変化し得る任意の特装車であってもよい。
以下、本実施の形態に係る積載重量推定システムの構成について説明する。
図4は積載重量推定システムの構成を説明するブロック図である。積載重量表示システムは、歪センサ81により計測される歪量を含む計測データを取得し、取得した計測データに基づき、特装車1の積載重量を推定する推定装置100と、推定装置100が推定した積載重量に関する情報を報知するための表示装置120とを備える。
推定装置100は、専用又は汎用のコンピュータであり、制御部101、記憶部102、操作部103、入力部104、出力部105、及び通信部106を備える。
制御部101は、例えば、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)などを備える。制御部101が備えるROMには、推定装置100が備えるハードウェア各部の動作を制御する制御プログラム等が記憶される。制御部101内のCPUは、ROMに記憶された制御プログラムや後述する記憶部102に記憶された各種コンピュータプログラムを実行し、ハードウェア各部の動作を制御することによって、本実施の形態における推定装置100としての機能を実現する。制御部101が備えるRAMには、演算の実行中に利用されるデータ等が一時的に記憶される。
制御部101は、CPU、ROM、及びRAMを備える構成としたが、代替的に、GPU(Graphics Processing Unit)、FPGA(Field Programmable Gate Array)、DSP(Digital Signal Processor)、量子プロセッサ、揮発性又は不揮発性のメモリ等を備える1又は複数の演算回路又は制御回路であってもよい。また、制御部101は、日時情報を出力するクロック、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
記憶部102は、ハードディスク、フラッシュメモリなどを用いた記憶装置を備える。記憶部102には、制御部101によって実行されるコンピュータプログラム、外部から取得した各種データ、推定装置100の内部にて生成した各種データ等が記憶される。
記憶部102に記憶されるコンピュータプログラムは、学習モデルLM1を生成するための学習プログラムPG1、及び学習モデルLM1を用いて特装車1の積載重量を推定するための推定プログラムPG2等を含む。
これらのコンピュータプログラムは、コンピュータプログラムを読み取り可能に記録した非一時的な記録媒体Mにより提供されてもよい。記録媒体Mは、例えば、CD-ROM、USBメモリ、SD(Secure Digital)カードなどの可搬型メモリである。制御部101は、図に示していない読取装置を用いて、記録媒体Mから各種プログラムを読み取り、読み取った各種プログラムを記憶部102に記憶させる。
記憶部102は、歪センサ81、傾斜計82、温度計83、及び圧力計84から得られる計測データを時系列的に記憶する計測値テーブルTB1を備えてもよい。図5は計測値テーブルTB1の一例を示す概念図である。計測値テーブルTB1は、歪センサ81により計測される歪量、傾斜計82により計測される特装車1の傾斜角度(ピッチ及びロール)、温度計83により計測される環境温度、及び圧力計84により計測される油圧シリンダ52のシリンダ圧の計測データを時間(計測時刻)に関連付けて記憶したテーブルである。計測値テーブルTB1は、積載重量を1トンに固定して計測した計測値を記憶するテーブル、積載重量を2トンに固定して計測した計測値を記憶するテーブル、積載重量を3トンに固定して計測した計測値を記憶するテーブルといったように積載重量毎に用意される。なお、計測値テーブルTB1に記憶される値は、センサの出力値であってもよく、センサの出力値から換算した物理量であってもよい。
記憶部102は、歪量を含む計測データから特装車1の積載重量を推定するための学習モデルLM1を備えてもよい。学習モデルLM1は、歪量を含む計測データが入力された場合、積載重量に関する演算結果を出力するように構成される。学習モデルLM1は、その定義情報によって定義される。学習モデルLM1の定義情報には、例えば、学習モデルLM1の構造(層の種類や数、ノードの数など)を規定する情報や学習によって定められる結合荷重などのパラメータなどが含まれる。学習モデルLM1の詳細については後に詳述する。
操作部103は、スイッチやボタンなどにより構成されており、各種の操作を受付ける。制御部101は、操作部103を通じて受付けた操作に基づき、適宜の処理を実行する。なお、本実施の形態では、推定装置100が操作部103を備える構成としたが、操作部103は必須ではなく、外部に接続された機器や通信部106を介して操作を受付ける構成であってもよい。
入力部104は、各種センサを接続するためのインタフェースを備え、歪センサ81、傾斜計82、温度計83、圧力計84などのセンサが接続される。入力部104には、これらのセンサが有線によって接続されてもよく、無線によって接続されてもよい。入力部104には、歪センサ81より出力される歪量に係る計測データ、傾斜計82より出力される特装車1の傾斜に係る計測データ、温度計83より出力される温度に係る計測データ、圧力計84より出力される油圧シリンダ52のシリンダ圧に係る計測データ等が適宜入力される。
出力部105は、液晶モニタなどの表示装置120を接続するための出力インタフェースを備える。表示装置120は、例えばキャブ20の運転席近傍に設けられる。代替的に、表示装置120は、フロントパネル41の後面側に設けられてもよい。出力部105が備える出力インタフェースは、アナログ形式の映像信号を出力する出力インタフェースであってもよく、DVI(Digital Visual Interface)やHDMI(High-Definition Multimedia Interface、登録商標)などのデジタル形式の映像信号を出力する出力インタフェースであってもよい。出力部105は、例えば、学習モデルLM1を用いた積載重量の推定結果を表示装置120に表示させるべく、表示データを表示装置120へ出力する。
本実施の形態では、推定装置100の外部に表示装置120を接続する構成としたが、推定装置100が表示装置120を搭載するものであってもよい。
通信部106は、外部機器との間で各種のデータを送受信する通信インタフェースを備える。推定装置100が通信部106を介して通信する相手先の一例は、特装車1に搭載される各種ECU(Electronic Controller Unit)やPLC(Programmable Logic Controller)である。この場合、通信部106は、特装車1に搭載される各種ECUやPLCと通信するために、例えばRS-485に準拠した通信ポートを備えてもよく、CAN(Controller Area Network)などの車内通信用の通信規格に準拠した通信インタフェースを備えてもよい。推定装置100が通信部106を介して通信する相手先の他の例は、特装車1の外部に設置されるサーバ装置やユーザが所持する携帯端末などである。この場合、通信部106は、外部のサーバ装置などと通信するために、WiFi(登録商標)、3G、4G、5G、LTE(Long Term Evolution)等の無線通信の通信規格に準じた通信インタフェースを備えてもよい。
以下、学習モデルLM1について説明する。
図6は学習モデルLM1の構成を説明する模式図である。本実施の形態における学習モデルLM1は、例えばサポートベクタ回帰モデルであり、各種計測データが入力される入力層と、入力層に入力された計測データに基づき所定の演算を行うカーネルを含む中間層と、中間層からの出力を結合し、演算結果を出力する出力層とを備える。
学習モデルLM1の入力層、中間層、及び出力層には、1つまたは複数のノードが存在し、各層のノードは前後の層に存在するノードと一方向に結合荷重で結合されている。なお、カーネルトリックを用いて非線形に拡張したサポートベクタマシンでは、中間層から出力層への結合荷重が学習により適応的に決定される。一方、入力層から中間層への結合荷重は固定であり、訓練データから機械的に求められる。
学習モデルLM1の入力層には歪量を含む計測データが入力される。例えば、図6に示すように、前輪右車軸の歪量(歪センサ81Aによって計測される歪量)、前輪左車軸の歪量(歪センサ81Bによって計測される歪量)、後輪右車軸の歪量(歪センサ81Cによって計測される歪量)、後輪左車軸の歪量(歪センサ81Dによって計測される歪量)、ロール及びピッチを含む傾斜(傾斜計82によって計測される傾斜)、並びに、環境温度(温度計83によって計測される温度)に係る計測データが学習モデルLM1の入力層に入力される。
入力層に入力された計測データは、訓練データを用いて決定された結合荷重により重み付けされて中間層へ出力される。中間層は、入力層から入力されたデータに基づきカーネルを用いた演算を実行する。中間層の各カーネルにおいて演算されたデータは、学習によって決定された結合荷重により重み付けされて出力層へ出力される。出力層は、中間層から入力されたデータを結合することにより、積載重量に関する演算結果を出力する。ここで、出力層が出力する演算結果は、積載重量の推定値であってもよく、ある積載重量に該当する確率であってもよい。後者の場合、出力層は、複数のノードにより構成され、第1ノードからは積載重量が1トンである確率、第2ノードからは積載重量が2トンである確率、…、第Nノード(Nは2以上の整数)からは積載重量がNトンである確率といったように、ある積載重量である確率を出力すればよい。
図6に示す学習モデルLM1は、歪センサ81によって計測される歪量、傾斜計82によって計測される傾斜、及び温度計83によって計測される環境温度に係る計測データの入力に応じて、積載重量に関する演算結果を出力する構成としたが、学習モデルLM1における入出力の関係は上記に限定されるものではなく、適宜設定することが可能である。例えば、学習モデルLM1は、圧力計84により計測される油圧シリンダ52のシリンダ圧を更に含む計測データの入力に応じて、積載重量に関する演算結果を出力する構成としてもよい。また、学習モデルLM1は、歪センサ81によって計測される歪量に係る計測データを入力とし、積載重量に関する演算結果を出力する構成としてもよい。更に、歪センサ81A~81Dの計測データのうち、選択した2つ又は3つの計測データを学習モデルLM1へ入力し、積載重量に関する演算結果を出力する構成としてもよい。また、学習モデルLM1は、歪量の計測データと、傾斜又は環境温度の計測データの何れか一方を入力とし、積載重量に関する演算結果を出力する構成としてもよい。
更に、制御部101は、温度計83により計測される環境温度を用いて、歪センサ81によって計測される歪量を補正する前処理を行い、補正後の歪量を含むデータを学習モデルLM1へ入力してもよい。
推定装置100は、運用を開始する前段階の学習フェーズにおいて、歪量を含む計測データを収集し、収集した計測データを訓練データに用いて学習することにより、上述したような学習モデルLM1を生成する。
図7は学習モデルLM1の生成手順を説明するフローチャートである。推定装置100の制御部101は、学習に先立ち、複数の歪センサ81により計測される歪量を含む計測データを収集する(ステップS101)。このとき、制御部101は、積載重量を固定して歪量を含む計測データを収集し、その積載重量について計測データが十分得られた場合、積載重量を変更し、変更した積載重量にて歪量を含む計測データを収集する。制御部101は、積載重量を変更しながら、順次計測データを収集すればよい。このようにして、積載重量を様々に変更したときの歪量を含む計測データが得られる。なお、歪量などを計測する際の特装車1の姿勢は、水平姿勢だけでなく、前下がり、後下がり、左下がり、右下がりといった様々な傾斜姿勢をとってもよい。積載重量については、重量が既知の物品を荷箱4に積載することによって与えてもよく、トラックスケールなどの計測器を用いて実測してもよい。ステップS101で収集した計測データは、記憶部102の計測値テーブルTB1に積載重量毎に記憶される。
なお、ステップS101において収集する計測データの種類は、生成する学習モデルLM1の構成に応じて選択すればよい。例えば、歪量、傾斜、及び環境温度に係る計測データの入力に応じて、積載重量に関する演算結果を出力する学習モデルLM1を生成する場合、制御部101は、歪センサ81によって計測される歪量、傾斜計82によって計測される傾斜、及び温度計83によって計測される環境温度に係る計測データを収集すればよい。入出力の関係が上記とは異なる学習モデルLM1を生成する場合についても同様であり、例えば、歪量に係る計測データの入力に応じて、積載重量に関する演算結果を出力する学習モデルLM1を生成する場合、制御部101は、歪センサ81によって計測される歪量に係る計測データのみを収集してもよい。
計測データの収集後、制御部101は、記憶部102から学習プログラムPG1を読み出して実行することにより、以下の処理を実行する。
制御部101は、計測値テーブルTB1から一組の訓練データを選択する(ステップS102)。訓練データは、同じ時間に計測された一連の計測データと、これらの計測データが得られたときの積載重量の値とを含む。
次いで、制御部101は、選択した訓練データを学習モデルLM1へ入力し(ステップS103)、学習モデルLM1による演算を実行する(ステップS104)。すなわち、制御部101は、学習モデルLM1の入力層を構成するノードに、歪量、傾斜、環境温度などの計測データを入力し、中間層のカーネルを用いた演算を実行し、演算結果を出力層から出力する処理を行う。なお、学習が開始される前の初期段階には、学習モデルLM1を記述する定義情報には初期値が与えられる。
次いで、制御部101は、ステップS104で得られた演算結果を評価し(ステップS105)、学習が完了したか否かを判断する(ステップS106)。具体的には、制御部101は、ステップS104で得られる演算結果と訓練データとに基づく誤差関数(目的関数、損失関数、コスト関数ともいう)を用いて、演算結果を評価することができる。制御部101は、例えば、最急降下法などの勾配降下法により誤差関数を最適化(最小化又は最大化)する課程で、誤差関数が閾値以下(又は閾値以上)となった場合、学習が完了したと判断してもよい。なお、過学習の問題を避けるために、交差検定、早期打ち切りなどの手法を取り入れ、適切なタイミングにて学習を終了させてもよい。
学習が完了してないと判断した場合(S106:NO)、制御部101は、学習モデルLM1のノード間における結合荷重を更新して(ステップS107)、処理をステップS102へ戻し、別の訓練データを用いた学習を継続する。制御部101は、学習モデルLM1の出力層から入力層に向かって、ノード間の結合荷重を順次更新する誤差逆伝搬法を用いて、ノード間の結合荷重を更新することができる。
学習が完了したと判断した場合(S106:YES)、制御部101は、学習済みの学習モデルLM1として記憶部102に記憶させ(ステップS108)、本フローチャートによる処理を終了する。
以上のように、本実施の形態に係る推定装置100は、積載重量が既知である場合の歪量を含む計測データを収集し、積載重量及び計測データを訓練データに用いることにより、学習モデルLM1を生成することができる。
なお、本実施の形態では、推定装置100において学習モデルLM1を生成する構成としたが、学習モデルLM1を生成する外部サーバ(不図示)を設け、外部サーバにて学習モデルLM1を生成してもよい。この場合、外部サーバは、特装車1により収集される訓練データを通信等により取得し、取得した訓練データを用いて学習モデルLM1を生成すればよい。また、推定装置100は、通信等により、外部サーバから学習済みの学習モデルLM1を取得し、取得した学習モデルLM1を記憶部102に記憶させればよい。
推定装置100は、運用フェーズにおいて、歪量を含む計測データを学習済みの学習モデルLM1へ入力することにより、積載重量を推定することができる。
図8は学習モデルLM1を用いた積載重量の推定手順を説明するフローチャートである。推定装置100の制御部101は、記憶部102から推定プログラムPG2を読み出して実行することにより、以下の処理を実行する。
制御部101は、入力部104を通じて、複数の歪センサ81により計測される歪量を含む計測データを取得した場合、取得した計測データを学習モデルLM1へ入力し(ステップS121)、学習モデルLM1による演算を実行する(ステップS122)。このとき、制御部101は、取得した計測データを学習モデルLM1の入力層を構成するノードに与える。入力層に与えられたデータは、訓練データを用いて決定された結合荷重により重み付けされて中間層へ出力される。中間層では、カーネルを用いた演算が実行され、学習によって決定された結合荷重により重み付けされて出力層へ出力される。出力層のノードは積載重量に関する演算結果を出力する。
制御部101は、学習モデルLM1の演算結果に基づき積載重量を推定する(ステップS123)。学習モデルLM1が積載重量の推定値を出力する構成としてある場合、制御部101は、学習モデルLM1の出力値を積載重量として推定すればよい。また、学習モデルLM1がある特定の積載重量である確率を出力する構成としてある場合、制御部101は、確率が最も高い積載重量の値を選択することにより、積載重量を推定することができる。
次いで、制御部101は、推定した積載重量を報知する(ステップS124)。このとき、制御部101は、推定した積載重量の情報を出力部105より出力し、表示装置120に表示させる。図9は積載重量の表示例を示す模式図である。図9では、積載重量の推定値、積載率、及び推定日時の情報を文字情報として表示装置120に表示させた例を示している。ここで、積載重量の推定値は、上述した学習モデルLM1を用いて推定した積載重量の値である。積載率は、上限値に対する積載重量(推定値)の割合として算出される値である。推定日時は、学習モデルLM1を用いて積載重量を推定した日時であり、例えば制御部101の内蔵クロックから得られる情報である。制御部101は、学習モデルLM1を用いて推定した積載重量の推定値、上限値に対する割合として算出される積載率、内蔵クロックから得られる日時の情報に基づき、表示画面のデータを生成し、生成した表示画面のデータを表示装置120へ出力することにより、図9に示すような画面を表示装置120に表示させることができる。
なお、本実施の形態では、推定した積載重量を文字情報として表示装置120に表示させる構成したが、グラフ表示やメータ表示などにより、積載重量の推定値を模式的に表示してもよい。
また、本実施の形態では、推定した積載重量を表示装置120に表示させる構成としたが、推定した積載重量の情報を通信部106より送信することにより、ユーザ端末等に通知してもよい。推定装置100にスピーカなどの音声出力装置が接続されている場合、推定した積載重量の情報を音声として出力してもよい。
以下、計測データの実測値、及び学習モデルLM1による推定結果の一例を示す。
図10は計測結果を示すグラフである。図10に示すグラフは、特装車1が既知の重量(この例では4000kg)の積載物を積載して一般道を走行し、到着した目的地において積載物を排出して、さらに積載物が存在しない状態で走行する間において、停車時に歪センサ81、傾斜計82、温度計83を用いて、歪量、傾斜角度、及び環境温度を計測した結果を示している。グラフの横軸は経過時間(より正確には計測タイミング)を表し、縦軸は歪量(μST)、傾斜角度(度)、又は環境温度(℃)を表す。
図10に示すグラフにおいて、前輪右車軸の歪量は、前輪22Fの車軸23Fの右端付近に取り付けられた歪センサ81Aにより計測された歪量を表す。同様に、前輪左車軸、後輪右車軸、後輪左車軸の歪量は、前輪22Fの車軸23Fの左端付近、後輪22Rの車軸23Rの右端付近、後輪22Rの車軸23Rの左端付近にそれぞれ取り付けられた歪センサ81B~81Dにより計測された歪量を表す。また、傾斜(ロール及びピッチ)は、傾斜計82により計測された特装車1の傾斜角度(ロール及びピッチ)を表し、環境温度は、温度計83により計測された温度を表す。図10に示すように、歪センサ81により計測される歪量は、特装車1が前後方向及び左右方向に±5度の範囲で傾斜した場合の計測値、環境温度が様々に変化した場合の計測値を含む。これらの計測値は、経過時間に対応付けられて計測値テーブルTB1に記憶される。
図11は学習モデルLM1の推定結果を示すグラフである。グラフの横軸は経過時間を表し、縦軸は積載重量の推定値(kg)を表す。図11の例では、積載重量が4000kgであるときの計測データ(図10を参照)の一部と、積載重量が0kgであるときの計測データ(不図示)の一部を訓練データに用いて、学習モデルLM1を生成し、残りの計測データを学習済みの学習モデルLM1に入力することにより、特装車1の積載重量を推定した。より具体的には、計測された歪量、傾斜角度、及び環境温度の4809組の計測値のうち、70%を訓練データに用いて学習モデルLM1を生成し、残りの30%を学習モデルLM1に入力して特装車1の積載重量を推定した。なお、計測データに関しては、積載重量が4000kgと0kgだけに限らず、他の積載重量に基づく計測データを用いることも可能である。
学習済みの学習モデルLM1を用いて推定した推定結果を実線(補正後)のグラフにより示す。また、参考として、従来の自重計により計測した積載重量の計測結果を破線(補正前)のグラフにより示す。特装車1の積載重量を4000kgとしたとき、従来の自重計は、およそ2200kgから4500kgの計測値を示しており、中央値を3350kgとして±1150kgの誤差を有していることが分かる。これに対し、学習モデルLM1を用いて特装車1の積載重量を推定した結果、およそ4000±50kgの推定値が得られており、従来の自重計と比較して精度良く積載重量を推定できていることが分かる。
なお、図11に示す推定結果は、積載重量が4000kgであるときの計測データの一部と、積載重量が0kgであるときの計測データの一部とを訓練データに用いて生成した学習モデルLM1による推定結果を示したものであるが、積載重量を様々に変更して計測データを収集し、収集した計測データを用いて学習モデルLM1を生成することにより、様々な積載重量を推定することが可能である。
また、図11では、歪センサ81によって計測される歪量、傾斜計82によって計測される傾斜、及び温度計83によって計測される環境温度に係る計測データの入力に応じて、積載重量に関する演算結果を出力するよう構成された学習モデルLM1を用いて積載重量を推定した結果を示したが、学習モデルLM1における入出力の関係は上記に限定されるものではなく、適宜設定することが可能である。上述したように、学習モデルLM1は、圧力計84により計測される油圧シリンダ52のシリンダ圧を更に含む計測データの入力に応じて、積載重量に関する演算結果を出力する構成としてもよい。また、学習モデルLM1は、歪センサ81によって計測される歪量に係る計測データを入力とし、積載重量に関する演算結果を出力する構成としてもよい。更に、歪センサ81A~81Dの計測データのうち、選択した2つ又は3つの計測データを学習モデルLM1へ入力し、積載重量に関する演算結果を出力する構成としてもよい。また、学習モデルLM1は、歪量の計測データと、傾斜又は環境温度の計測データの何れか一方を入力とし、積載重量に関する演算結果を出力する構成としてもよい。
以上のように、本実施の形態では、歪量を含む計測データと積載重量との関係が学習された学習モデルLM1を用いることにより、特装車1の傾斜の有無に関わらず、積載重量を精度良く推定し、推定した積載重量を報知することができる。
なお、本実施の形態では、学習モデルLM1の一例としてサポートベクタ回帰モデルについて説明したが、線形回帰、ロジスティック回帰等の回帰分析手法を用いてもよい。また、決定木、回帰木、ランダムフォレスト、勾配ブースティング木等の探索木を用いた手法、単純ベイズ等を含むベイズ推定法、AR(Auto Regressive)、MA(Moving Average)、状態空間モデル等を含む時系列予測手法、K近傍法等を含むクラスタリング手法、ブースティング、バギング等を含むアンサンブル学習を用いた手法、階層型クラスタリング、非階層型クラスタリング、トピックモデル等を含むクラスタリング手法、アソシエーション分析、強調フィルタリング等を含むその他の手法により学習された学習モデルを用いてもよい。また、学習モデルLM1を、深層学習によるニューラルネットワーク、畳み込みニューラルネットワーク、再帰型ニューラルネットワークなどにより構成してもよい。
上記実施形態では、歪センサ81は、歪ゲージからなるものであったが、本発明はこれに限らず、歪センサ81を、歪ゲージ式のロードセルとすることもできる。その場合、ロードセルの形状は、バー型とピン型のどちらであってもよい。
また、上記実施形態では、歪センサ81は、車軸23F,23Rまたはサブフレーム30に取り付けられていたが、本発明はこれに限らず、歪センサ81を他の場所に取り付けてもよい。例えば、歪センサを、ダンプ装置3における荷箱4に取り付けたり、荷箱4とサブフレーム30とを連結するヒンジ軸31に取り付けたりしてもよい。また、歪センサ81を、シャシフレーム21や懸架装置(不図示)に取り付けてもよい。例えば、懸架装置に取り付ける際には、歪センサ81の取付部位が他の部位と比較してどの程度沈み込むかを計測することも有用である。そのため、こうした場合には取付部位の歪量を計測するのではなく他の部位に対する沈み込み量を計測する変位センサ(レーザー距離センサなど)を用いても良い。なお、沈み込み量などの変位量を計測する場合には、特装車1における前輪22Fもしくは後輪22Rの空気圧の影響も受けやすいことから、タイヤプレッシャモニタなどを用いてこれらの計測データも計測値テーブルTB1に加えるとさらに好ましい。
また、上記実施形態では、推定装置100は、特装車1のシャシフレーム21やキャブ20の内部に設けられていたが、本発明はこれに限らず、推定装置100を、管理センタ等の特装車1とは別の離れた場所に設けるようにしてもよい。その場合、特装車1には、歪センサ81、傾斜計82、温度計83、圧力計84等の各種センサと通信装置と表示装置とを設け、これらの各種センサからのデータを当該通信装置により推定装置100に送信するようにすればよい。推定装置100では、受信した各種センサからデータを処理して、結果を特装車1の通信装置へ送信し、これにより、特装車1の表示装置に積載重量の推定結果を表示させるようにしてもよい。
さらに、上記実施形態では、複数の歪センサ81から歪量に係る計測データに基づいて積載重量を推定するものとしているが、複数の油圧センサからの油圧変化量に係る計測データに基づいて積載重量を推定するものなど、他の指標に基づくものであっても構わない。例えばホイスト機構5内の油圧シリンダ52のシリンダ圧を計測する圧力計84とともに、ヒンジ軸31付近に油圧式のロードセルを設けた構成とすると良い。この場合、わずかに油圧シリンダ52を伸長させて荷箱4をわずかに傾斜させた状態とし、圧力計84及び上記ロードセルにおける油圧の計測データに基づいて積載重量を推定する。こうした計測データは、上述した歪、油圧などに限定されず、他の変位量も適宜計測対象とすることができる。
(実施の形態2)
実施の形態1では、車軸23F,23Rに取り付けられた歪センサ81から歪量に係る計測データを取得する構成としたが、歪センサ81の取り付け箇所は、車軸23F,23Rに限定されるものではない。
実施の形態2では、シャシフレーム21に固定される構造物に歪センサ81を取り付けた構成について説明する。
図12は実施の形態2に係る特装車1の全体構成を示す側面図である。図12に示す特装車1は、歪センサ81の取り付け箇所のみが実施の形態1と異なる。実施の形態2における歪センサ81は、シャシフレーム21に固定される構造物の複数箇所に取り付けられる。シャシフレーム21に固定される構造物の一例はサブフレーム30である。図12の例は、このサブフレーム30の前後方向に離隔した2箇所に歪センサ81を取り付けた構成を示している。
なお、図12では、サブフレーム30の前後方向に離隔した2箇所に歪センサ81を取り付ける構成としたが、特装車1の前後方向の中心線に対して左右対称の2箇所に歪センサ81を取り付けてもよい。また、取り付ける歪センサ81の個数は2個に限定されるものではなく、3箇所以上の歪センサ81が取り付けられてもよい。更に、歪センサ81を取り付けるための専用ブラケットを用意し、専用ブラケットを介して歪センサ81をサブフレーム30に取り付けてもよい。
推定装置100は、サブフレーム30に取り付けられた歪センサ81により計測される歪量を含む計測データを用いて、実施の形態1と同様の学習モデルLM1を生成し、生成した学習モデルLM1を用いて、荷箱4に積載される積載物の重量を推定することができる。
以上のように、実施の形態2では、歪センサ81をサブフレーム30に取り付ける構成としたので、トラックシャシ2に対して何ら改変を加えることなく、積載重量の推定が可能となる。
(実施の形態3)
実施の形態3では、荷箱4を昇降させるための油圧アクチュエータ(本実施の形態では油圧シリンダ52)に作用する油圧の大きさを計測し、計測した油圧の大きさに基づき、積載重量を推定する構成について説明する。
図13は特装車1における荷箱4の昇降機構を説明する説明図である。特装車1は荷箱4を昇降させるための機構としてホイスト機構5を備える。ホイスト機構5は、上述したように、リフトアーム51、油圧シリンダ52、テンションリンク53を備える。ホイスト機構5の油圧シリンダ52を伸長させると、荷箱4は、その前部が持ち上げられ、傾斜角度が大きくなる方向に回動する。傾斜角度が大きくなる方向への荷箱4の回動を、本実施の形態では荷箱4の上昇ともいう。一方、ホイスト機構5の油圧シリンダ52を短縮させると、荷箱4は、その前部が下げられ、傾斜角度が小さくなる方向に回動する。傾斜角度が小さくなる方向への荷箱4の回動を、本実施の形態では荷箱4の下降ともいう。
油圧シリンダ52を伸縮させる油圧機構は、油圧ポンプ61、作動油タンク62、制御弁63などを備える。油圧供給源である油圧ポンプ61は、PTO71(Power Take-Off)を介して伝達されるエンジン70の動力によって駆動されることにより、油圧配管64を通じて作動油タンク62内の作動油を汲み上げ、吐出口に接続された主管65を通じて油圧シリンダ52に作動油(圧油)を供給する。なお、エンジン70の動力伝達の断接は、キャブ20内に設けられるPTOスイッチ72により切り替えられる。
油圧ポンプ61から吐出される作動油の供給方向は、手動式の操作レバー67によって操作される制御弁63により切り替えられる。例えば、操作レバー67の操作により制御弁63が中立位置にあると、油圧ポンプ61から油圧シリンダ52に作動油は供給されず、荷箱4の傾動動作は行われない。操作レバー67が上昇位置に操作されると、制御弁63が切り替えられ、油圧ポンプ61から油圧シリンダ52に作動油(圧油)が供給される。油圧シリンダ52は、作動油が供給されることによって伸長し、荷箱4を上昇させる。一方、操作レバー67が下降位置に操作されると、制御弁63が切り替えられ、油圧シリンダ52に供給された作動油は作動油タンク62に還流する。これに伴い、油圧シリンダ52は短縮し、荷箱4を下降させる。
油圧機構には、油圧シリンダ52に作用する油圧の大きさを計測するための圧力計84が設けられている。また、特装車1には、トラックシャシ2の傾斜(ピッチ及びロール)を計測するための傾斜計82と、荷箱4の傾斜(ピッチ及びロール)を計測するための傾斜計85が設けられている。更に、特装車1には、実施の形態1において説明した歪センサ81や温度計83が設けられてもよい。
本願発明者らは、トラックシャシ2のピッチ角度と油圧値との関係を詳細に調べたところ、荷箱4を上昇させた後に停止させた場合の油圧値と、荷箱4を下降させた後に停止させた場合の油圧値との間にギャップが生じることを見出した。
図14はトラックシャシ2のピッチ角度と油圧値との関係を示すグラフである。グラフの横軸はトラックシャシ2のピッチ角度(deg)を表し、縦軸は油圧値(MPa)を表す。図14に示すグラフは、トラックシャシ2のピッチ角度と荷箱4の既知の積載重量とを様々に変更しながら油圧値を計測した結果を示している。なお、ピッチ角度が0度未満の場合、特装車1は前下がりの状態にあり、ピッチ角度が0度超の場合、特装車1は前上がりの状態にある。
図14のグラフでは、荷箱4を上昇させた後に所定のダンプ角度(例えば0.5度)で停止させて計測したときの油圧値を黒丸で示している。また、荷箱4を下降させた後に所定のダンプ角度(例えば0.5度)で停止させて計測したときの油圧値を白丸で示している。なお、ダンプ角度は、トラックシャシ2に対する荷箱4の相対角度であり、荷箱4の傾斜角度(傾斜計85の計測値)からトラックシャシ2の傾斜角度(傾斜計82の計測値)を差し引くことにより算出される値である。
また、図14のグラフにおける各破線は、当該グラフの上記黒丸全体のうち、所定の既知の積載重量(例えば10ton)においてトラックシャシ2のピッチ角度を変更していったときに計測された複数の黒丸の回帰直線である。また、図14のグラフにおける各一点鎖線は、当該グラフの上記白丸全体のうち、所定の既知の積載重量(例えば10ton)においてトラックシャシ2のピッチ角度を変更していったときに計測された複数の白丸の回帰直線である。
図14に示すグラフから、同一の積載重量であってもトラックシャシ2のピッチ角度が小さくなる程(前下がりになる程)、油圧値が大きくなることが読み取れる。また、同一の積載重量であっても、荷箱4を上昇させた後に所定のダンプ角度で停止させて計測した油圧値(黒丸で示す油圧値)と、荷箱4を下降させた後に所定のダンプ角度で停止させて計測した油圧値(白丸で示す油圧値)との間にはギャップが生じていることが読み取れる。更に、そのギャップは、積載重量が増える程、拡大することが読み取れる。
実施の形態3における積載重量推定システムは、油圧値を含む計測データを用いて荷箱4に積載されている積載物の重量(積載重量)を推定する。本願発明者らの検討により、荷箱4を上昇後に停止させた場合の油圧値と、荷箱4を下降後に停止させた場合の油圧値との間にはギャップが生じることが分かったので、実施の形態3における積載重量推定システムでは、荷箱4を上昇後に停止させた場合と、荷箱4を下降後に停止させた場合とで異なる学習モデルを用いて積載重量の推定を行う。
図15は実施の形態3における積載重量推定システムの構成を説明するブロック図である。推定装置100は、制御部101、記憶部102、操作部103、入力部104、出力部105、及び通信部106を備える。これらハードウェア各部の構成は実施の形態1において説明したものと同様であるため、その説明を省略する。
実施の形態3では、荷箱4が上昇後に停止した状態(第1停止状態)と、荷箱4が下降後に停止した状態(第2停止状態)とを区別し、両者で異なる学習モデルを用いて、荷箱4の積載重量を推定する。すなわち、実施の形態3では、第1停止状態にて計測された油圧値を含む計測データを用いて積載重量を推定するための学習モデルLM10と、第2停止状態にて計測された油圧値を含む計測データを用いて積載重量を推定するための学習モデルLM20とが用意される。学習モデルLM10,LM20は、それぞれの定義情報によって定義され、例えば記憶部102に記憶される。学習モデルLM10,LM20の定義情報は、層の種類や数、ノード数などモデル構造を規定するパラメータ、及びノード間に設定される結合加重など学習により定められるパラメータを含む。
推定装置100の制御部101は、第1停止状態において計測された油圧値を含む計測データを取得した場合、取得した計測データを学習モデルLM10に入力し、学習モデルLM10による演算を行うことにより荷箱4の積載重量を推定する。また、制御部101は、第2停止状態において計測された油圧値を含む計測データを取得した場合、取得した計測データを学習モデルLM20に入力し、学習モデルLM20による演算を行うことにより荷箱4の積載重量を推定する。なお、推定装置100の入力部104には、キャブ20の内部に設けられ、推定処理の開始指示を与えるための計量スイッチ89が接続されてもよい。
図16は学習モデルLM10,LM20の構成を説明する模式図である。学習モデルLM10,LM20は、実施の形態1において説明した学習モデルLM1と同様であり、各種計測データが入力される入力層と、入力層に入力された計測データに基づき所定の演算が実行される中間層と、中間層からの出力を結合し、演算結果を出力する出力層とを備える。
図16Aは学習モデルLM10の構成を示している。学習モデルLM10の入力層には、第1停止状態(荷箱4の上昇停止後の状態)において圧力計84により計測される油圧値が入力される。また、学習モデルLM1の入力層に入力される計測データは、傾斜計82により計測されるトラックシャシ2の傾斜角度、歪センサ81により計測される車軸23F,23Rの歪み、及び温度計83により計測される環境温度の少なくとも1つが更に含まれてもよい。環境温度は、特装車1の周囲の温度であってもよく、油温であってもよい。中間層は複数の層を有し、各層は複数のノードにより構成されている。学習モデルLM10の入力層に上記計測データが入力された場合、推定装置100の制御部101は、中間層を構成する各ノードに設定されているパラメータを用いて所定の演算を実行する。出力層は、中間層からの出力を結合し、荷箱4における積載重量の推定値を演算結果として出力する。
学習モデルLM10は、上述した各種計測データの入力に応じて荷箱4の積載重量の推定値に係る情報を出力するよう学習される。学習モデルLM10を生成する場合、例えば推定装置100は、荷箱4に積載する積載物の重量(既知とする)を様々に変更にしながら上述した各種計測データを収集する。推定装置100は、収集した計測データと、既知の積載重量とを多数含むデータセットを訓練データに用いて、計測データの入力に応じて積載重量の推定値に係る情報を学習モデルML10が出力するよう学習する。学習アルゴリズムは実施の形態1と同様であるため、その説明を省略する。学習モデルLM10は外部サーバ(不図示)において生成されてもよい。この場合、推定装置100は、通信により学習モデルLM10を取得し、記憶部102に記憶させるとよい。
図16Bは学習モデルLM20の構成を示している。学習モデルLM20は、第1停止状態での油圧値に代えて、第2停止状態(荷箱4の下降停止後の状態)での油圧値が入力層に入力される点が学習モデルLM10と異なり、その他の構成は学習モデルLM10と同様である。学習モデルLM20は、第2停止状態において計測された油圧値を含む計測データと、既知の積載重量とを含むデータセットを訓練データに用いて学習することにより生成される。
図17は実施の形態3における積載重量の推定手順を説明するフローチャートである。推定装置100の制御部101は、入力部104を通じて入力される信号を監視することにより、計量スイッチ89がオンされたか否かを判断する(ステップS301)。オンされていない場合(S301:NO)、制御部101は、計量スイッチ89がオンされるまで待機する。
計量スイッチ89がオンされた場合(S301:YES)、制御部101は積載重量の推定処理を開始する。推定処理を開始する際、ダンプ角度を所定角度に調整するようユーザに指示を与えてもよい。所定角度は、例えば0.1度より大きく、0.8度より小さい範囲の角度である。制御部101は、表示装置120に文字情報などを表示することにより指示を与えてもよく、図に示していないスピーカより音声を出力することにより指示を与えてもよい。実施の形態3において、ダンプ角度は操作レバー67を用いて手動により調整される。
制御部101は、入力部104を通じて、傾斜計82,85にて時系列的に計測される傾斜角度の計測データを順次取得し、取得した計測データに基づき、現在のダンプ角度を検出する(ステップS302)。制御部101は、傾斜計85の計測値として得られる荷箱4の傾斜角度から傾斜計82の計測値として得られるトラックシャシ2の傾斜角度を差し引くことにより、ダンプ角度を求めることができる。制御部101は、検出したダンプ角度を時系列的に記憶部102に記憶させる。
制御部101は、ステップS302で検出したダンプ角度が最小角度θ1より大きいか否かを判断する(ステップS303)。最小角度θ1は、荷箱4の積載重量を計測するのに適した角度範囲の最小値として設定される値である。最小角度θ1の一例は0.1度である。
現在のダンプ角度が最小角度θ1以下であると判断した場合(S303:NO)、制御部101は、ユーザに対して荷箱4の上昇を指示する(ステップS304)。制御部101は、荷箱4を上昇させるべき旨の文字情報を表示装置120に表示させることにより、ユーザへの指示を行う。代替的に、制御部101は、荷箱4を上昇させるべき旨の音声を図に示していないスピーカから出力させることにより、ユーザへの指示を行ってもよい。制御部101は、ユーザへの指示を行った後、処理をステップS302へ戻す。
現在のダンプ角度が最小角度θ1より大きいと判断した場合(S303:YES)、制御部101は、現在のダンプ角度が最大角度θ2より小さいか否かを判断する(ステップS305)。最大角度θ2は、荷箱4の積載重量を計測するのに適した角度範囲の最大値として設定される値である。最大角度θ2の一例は0.8度である。
現在のダンプ角度が最大角度θ2以上であると判断した場合(S305:NO)、制御部101は、ユーザに対して荷箱4の下降を指示する(ステップS306)。制御部101は、例えば、荷箱4を下降させるべき旨の文字情報を表示装置120に表示させてユーザへの指示を行う。代替的に、制御部101は、荷箱4を下降させるべき旨の音声を図に示していないスピーカから出力させてユーザへの指示を行ってもよい。制御部101は、ユーザへの指示を行った後、処理をステップS302へ戻す。
現在のダンプ角度が最大角度θ2より小さいと判断した場合(S305:YES)、制御部101は、内蔵タイマの出力を参照して、ダンプ角度が設定された角度範囲に入ってから所定時間が経過したか否かを判断する(ステップS307)。所定時間が経過していない場合(S307:NO)、制御部101は、所定時間が経過するまで待機する。
所定時間が経過したと判断した場合(S307:YES)、制御部101は、所定時間が経過するまでの間、荷箱4が停止状態であったか否かを判断する(ステップS308)。制御部101は、記憶部102に記憶させたダンプ角度の履歴データから変化の有無を判断することにより、荷箱4が停止状態であったか否かを判断することができる。停止状態でなかった場合(S308:NO)、制御部101は、処理をステップS302へ戻す。
所定時間が経過するまでの間、荷箱4が停止状態であった場合(S308:YES)、制御部101は、積載重量の計量の準備ができた旨をユーザに報知する(ステップS309)。制御部101は、例えば、積載重量の計量の準備ができた旨の文字情報を表示装置120に表示させる。代替的に、制御部101は、積載重量の計量の準備ができた旨の音声を図に示していないスピーカから出力させてもよい。
次いで、制御部101は、荷箱4は上昇後に停止したか否かを判断する(ステップS310)。制御部101は、記憶部102に記憶させたダンプ角度の履歴データから、荷箱4が上昇後に停止したか否かを判断することができる。
制御部101は、荷箱4が上昇後に停止したと判断した場合(S310:YES)、積載重量の推定に用いる学習モデルを上昇停止用の学習モデルLM10に設定し(ステップS311)。一方、制御部101は、荷箱4が下降後に停止したと判断した場合(S310:NO)、積載重量の推定に用いる学習モデルを下降停止用の学習モデルLM20に設定する(ステップS312)。
制御部101は、油圧値を含む計測データを入力部104より取得し、ステップS311で設定した上昇停止用の学習モデルLM10、又はステップS312で設定した下降停止用の学習モデルLM20に取得した計測データを入力することによって、荷箱4における積載重量を推定する(ステップS313)。このとき、制御部101は、取得した計測データを学習モデルLM10(又は学習モデルLM20)の入力層を構成する各ノードに与え、中間層による演算を実行し、出力層から出力される演算結果を取得することにより、荷箱4の積載重量を推定すればよい。なお、入力層のノードに与える計測データは、油圧値のみであってもよく、油圧値に加え、トラックシャシ2の傾斜角度、車軸23F,23Rの歪み、及び環境温度の少なくとも1つを更に含んでもよい。
次いで、制御部101は、推定した積載重量を報知する(ステップS314)。このとき、制御部101は、推定した積載重量の情報を出力部105より出力し、表示装置120に表示させる。制御部101は、積載重量の情報を文字情報として表示装置120に表示させてもよく、グラフ表示やメータ表示などの模式的な表示方法を用いてもよい。また、制御部101は、推定した積載重量の情報を図に示していないスピーカから音声として出力させる構成としてもよい。これらの一連の処理が終了した後、荷箱4は、計量スイッチ89がオフされることにより、ダンプ角度が0度となるまで下降される。
本願発明者らにより、圧力計84により計測される油圧値は、たとえダンプ角度が同一であったとしても、荷箱4が上昇後に停止した状態と、荷箱4が下降後に停止した状態とでは値が異なることが分かった。このため、両者で同一の学習モデルを用いて積載重量を推定した場合には、推定精度が低くなる可能性があるが、実施の形態3では、上昇停止用の学習モデルLM10と下降停止用の学習モデルLM20とを選択的に用いて積載重量を推定するので、推定精度の低下を抑えることができる。
(実施の形態4)
実施の形態4では、ダンプ角度を自動で調整する構成について説明する。なお、特装車1の構成は実施の形態3と同様であるため、その説明を省略する。
図18は実施の形態4における積載重量推定システムの構成を説明するブロック図である。実施の形態4に係る積載重量推定システムは、推定装置100と、推定装置100に接続される昇降制御装置200とを備える。推定装置100は、実施の形態3において説明したものと同様であり、制御部101、記憶部102、操作部103、入力部104、出力部105、及び通信部106を備える。
昇降制御装置200は、入力部201、制御部202、及び出力部203を備えており、特装車1が備える油圧機構の動作を制御することにより、荷箱4の昇降を制御する。入力部201は入力インタフェースを備える。入力部201には、推定装置100から出力される情報、操作レバー67の操作情報、PTOスイッチ72の操作情報などが入力される。入力部201に入力された情報は制御部202に出力される。
制御部202は、例えばPLC(Programmable Logic Controller)により構成される。制御部202は、プログラムされたロジックに従って、入力部201を通じて入力された情報に基づき荷箱4を昇降制御するための制御信号を生成する。制御部202は、生成した制御信号を出力部203より制御弁63へ出力する。出力部203は、出力インタフェースを備えており、制御弁63や推定装置100などが接続されている。なお、実施の形態4における制御弁63は、電気的に制御可能な電磁制御弁として構成されているものとする。
本実施の形態では、積載重量推定システムが推定装置100と昇降制御装置200とを別体として備える構成としたが、両者が一体の構成であってもよい。
図19は実施の形態4における積載重量の推定手順を説明するフローチャートである。推定装置100の制御部101は、入力部104を通じて入力される信号を監視することにより、計量スイッチ89がオンされたか否かを判断する(ステップS401)。オンされていない場合(S401:NO)、制御部101は、計量スイッチ89がオンされるまで待機する。
計量スイッチ89がオンされた場合(S401:YES)、制御部101は、PTOスイッチ72がオンであるか否かを判断する(ステップS402)。PTOスイッチ72がオンでない場合(S402:NO)、制御部101は、ユーザに対してPTOスイッチ72をオンするように指示し(ステップS403)、エンジン70の動力伝達先を油圧ポンプ61に切り替えさせる。ユーザへの指示は、表示装置120に文字情報を表示することにより行ってもよく、図に示していないスピーカより音声として出力することにより行ってもよい。
PTOスイッチ72がオンである場合(S402:YES)、制御部101は、ダンプ角度を調整する旨をユーザに報知する(ステップS404)。制御部101は、例えば、ダンプ角度を調整する旨の文字情報を表示装置120に表示させる。代替的に、制御部101は、ダンプ角度を調整する旨の音声を図に示していないスピーカから出力させてもよい。
次いで、制御部101は、荷箱4の上昇を昇降制御装置200に指示する(ステップS405)。具体的には、制御部101は、荷箱4の上昇を指示する制御信号を生成し、生成した制御信号を出力部105より昇降制御装置200へ出力することにより、昇降制御装置200への指示を行う。昇降制御装置200の制御部202は、推定装置100からの指示に応じて、荷箱4を上昇させるための制御信号を制御弁63へ出力することにより、荷箱4を上昇させる。
制御部101は、入力部104を通じて、傾斜計82,85にて時系列的に計測される傾斜角度の計測データを順次取得し、取得した計測データに基づき、現在のダンプ角度を検出する(ステップS406)。
制御部101は、ステップS406で検出したダンプ角度が最小角度θ1より大きいか否かを判断する(ステップS407)。最小角度θ1は、荷箱4の積載重量を計測するのに適した角度範囲の最小値として設定される値である。最小角度θ1の一例は0.1度である。
現在のダンプ角度が最小角度θ1以下であると判断した場合(S407:NO)、制御部101は、処理をステップS405へ戻し、荷箱4の上昇制御を継続させる。
現在のダンプ角度が最小角度θ1より大きいと判断した場合(S407:YES)、制御部101は、現在のダンプ角度が最大角度θ2より小さいか否かを判断する(ステップS408)。最大角度θ2は、荷箱4の積載重量を計測するのに適した角度範囲の最大値として設定される値である。最大角度θ2の一例は0.8度である。
現在のダンプ角度が最大角度θ2以上であると判断した場合(S408:NO)、制御部101は、荷箱4の傾斜角度が積載重量を計測するのに適した角度範囲から外れているため、エラーを報知し(ステップS409)、本フローチャートによる処理を終了する。エラーを報知した後、制御部101は、荷箱4の下降を昇降制御装置200に指示してもよい。
現在のダンプ角度が最大角度θ2より小さいと判断した場合(S408:YES)、制御部101は、荷箱4の上昇後の停止を指示する(ステップS410)。具体的には、制御部101は、荷箱4の停止を指示する制御信号を生成し、生成した制御信号を出力部105より昇降制御装置200へ出力することにより、昇降制御装置200への指示を行う。昇降制御装置200の制御部202は、推定装置100からの指示に応じて、荷箱4を停止させるための制御信号を制御弁63へ出力することにより、荷箱4を停止させる。
次いで、制御部101は、積載重量の計量の準備ができた旨をユーザに報知する(ステップS411)。制御部101は、例えば、積載重量の計量の準備ができた旨の文字情報を表示装置120に表示させる。代替的に、制御部101は、積載重量の計量の準備ができた旨の音声情報を図に示していないスピーカから出力させてもよい。
次いで、制御部101は、積載重量の推定に用いる学習モデルを上昇停止用の学習モデルLM10に設定し(ステップS412)。制御部101は、油圧値を含む計測データを入力部104より取得し、ステップS412で設定した上昇停止用の学習モデルLM10に取得した計測データを入力することによって、荷箱4における積載重量を推定する(ステップS413)。
次いで、制御部101は、推定した積載重量を報知する(ステップS414)。このとき、制御部101は、推定した積載重量の情報を出力部105より出力し、表示装置120に表示させる。制御部101は、積載重量の情報を文字情報として表示装置120に表示させてもよく、グラフ表示やメータ表示などの模式的な表示方法を用いてもよい。また、制御部101は、推定した積載重量の情報を図に示していないスピーカから音声情報として出力させる構成としてもよい。
制御部101は、積載重量を推定し、ユーザに報知した後、荷箱4を下降させる指示を昇降制御装置200に与えてもよい。昇降制御装置200の制御部202は、推定装置100からの指示に応じて、荷箱4を下降させるための制御信号を制御弁63へ出力することにより、荷箱4を下降させればよい。
積載重量を手動計測する場合、ダンプ角度を所定角度(例えば0.5度)に合わせる必要があるため、ユーザに操作の煩わしさを感じさせる場合がある。これに対し、本実施の形態では、計量スイッチ89の操作によって自動的に積載重量を計測することができるので、操作の煩わしさを軽減できる。
なお、実施の形態4では、荷箱4の上昇停止後に積載重量を推定する構成であるため、記憶部102には、上昇停止用の学習モデルLM10が記憶されていればよく、下降停止用の学習モデルLM20は記憶されていなくてもよい。
(実施の形態5)
実施の形態5では、学習モデルLM1の推定結果を個々の特装車1に応じて校正する構成について説明する。
図20は校正手法を説明する説明図である。実施の形態5では、学習モデルLM1の後段に校正層CLが設けられる。校正層CLは、学習モデルLM1の出力(積載重量)を個々の特装車1に応じて校正する。校正するためのパラメータは、特装車1の出荷時において定められる。例えば、重量が既知の積載物を積んだときの学習モデルLM1の出力を取得し、学習モデルLM1の出力を実際の積載重量に変換するようなパラメータを事前に導出すればよい。例えば、学習モデルLM1の出力をX1、実際の積載重量をX2とした場合、X2=aX1+bを満たすようなパラメータa、bを導出すればよい。
推定装置100の記憶部102には、事前に導出された校正パラメータ(上記の例では、パラメータa,b)が記憶される。制御部101は、計測データを学習モデルLM1に入力し、学習モデルLM1の演算結果を取得した場合、記憶部102に記憶された校正パラメータを読み出して、演算結果を校正することにより、校正後の積載重量の推定値が得られる。
以上のように、実施の形態5では、相互に荷箱4の大きさ、形状、重量等が異なる複数の特装車1に対応して学習モデルLM1の演算結果を校正できるので、個々の特装車1に依存するような学習モデルLM1を生成する必要はなく、標準的な学習モデルを外部のコンピュータにおいて生成しておき、個々の推定装置100にインストールすればよい。
なお、上述した校正手法は、実施の形態1において説明した学習モデルLM1に適用できるだけでなく、実施の形態3で説明した学習モデルLM10,LM20、後述する実施の形態7において説明する学習モデルLM2に適用することが可能である。
(実施の形態6)
実施の形態6では、推定した積載重量から積載状態を判定し、判定結果に応じた態様にて積載状態を報知する構成について説明する。
図21は積載状態を報知する手順を説明するフローチャートである。推定装置100の制御部101は、例えば、荷箱4への積み込み作業が開始された後の定期的なタイミングにて以下の処理を実行する。
制御部101は、図8のフローチャートに示す手順と同様の手順により、積載重量を推定する。すなわち、制御部101は、複数の歪センサ81により計測される歪量を含む計測データを学習モデルLM1へ入力し(ステップS601)、学習モデルLM1による演算を実行し(ステップS602)、学習モデルLM1の演算結果に基づき積載重量を推定する(ステップS603)。
制御部101は、推定した積載重量に基づき積載状態を判定する(ステップS604)。例えば、制御部101は、推定した積載重量を内蔵メモリに記憶させておき、ステップS603において推定した積載重量と予め設定された上限値とを比較し、推定した積載重量にまだ余裕がある場合(例えば上限値の90%未満である場合)、積載状態が「積み込み可」であると判定する。また、制御部101は、推定した積載重量と予め設定された上限値とを比較し、推定した積載重量が上限値に近い場合(例えば上限値の90%を超え、100%未満である場合)、積載状態が「上限値間近」であると判定してもよい。更に、制御部101は、推定した積載重量が上限値に達した場合、積載状態が「積み込みストップ」の状態であると判定してもよい。更に、制御部101は、推定した積載重量が予め設定された積載重量の上限値を超えた場合、積載状態が「過積載」であると判定してもよい。
制御部101は、ステップS604の判定結果に応じた態様にて積載状態を報知する(ステップS605)。
図22は積載状態の報知例を示す模式図である。図22は特装車1を後側から眺めた状態を示している。図22の例において、表示装置120は、青色又は赤色にて点灯・点滅・消灯が可能な表示灯により構成されており、フロントパネル41の後面側の上部に設けられている。
図22Aは、積載状態が「積み込み可」であると判定された場合の報知例を示している。制御部101は、学習モデルLM1を用いて推定した積載重量に基づき、現在の積載状態が「積み込み可」であると判定した場合、表示装置120を例えば青色にて1秒間に1回だけ点滅させる制御を実行する。この結果、表示装置120は、消灯状態から青色でゆっくりと点滅した状態に遷移する。作業者は、表示装置120における表示態様(この場合、青色でゆっくり点滅)を確認することにより、現在の積載状態が「積み込み可」であると把握することができる。
図22Bは、積載状態が「上限値間近」であると判定された場合の報知例を示している。制御部101は、学習モデルLM1を用いて推定した積載重量に基づき、現在の積載状態が「上限値間近」であると判定した場合、表示装置120を例えば青色にて1秒間に5回点滅させる制御を実行する。この結果、表示装置120はゆっくりとした点滅状態から早い点滅状態に遷移する。作業者は、表示装置120における表示態様(この場合、青色で早く点滅)を確認することにより、現在の積載状態が「上限値間近」であると把握することができる。
図22Cは、積載状態が「積み込みストップ」であると判定された場合の報知例を示している。制御部101は、学習モデルLM1を用いて推定した積載重量に基づき、現在の積載状態が「積み込みストップ」であると判定した場合、表示装置120を例えば青色で点灯させる制御を実行する。この結果、表示装置120は、青色の点滅状態から点灯状態に遷移する。作業者は、表示装置120における表示態様(この場合、青色で点灯)を確認することにより、現在の積載状態が「積み込みストップ」であると把握することができる。
図22Dは、積載状態が「過積載」であると判定された場合の報知例を示している。制御部101は、学習モデルLM1を用いて推定した積載重量に基づき、現在の積載重量が「過積載」であると判定した場合、表示装置120を例えば赤色で点滅させる制御を実行する。この結果、表示装置120は、青色の点灯状態から赤色の点滅状態に遷移する。作業者は、表示装置120における表示態様(この場合、赤色で点滅)を確認することにより、現在の積載状態が「過積載」であると把握することができる。
以上のように、本実施の形態では、表示装置120における表示態様を異ならせることによって、荷箱4における現在の積載状態を作業者に報知することができる。
本実施の形態では、一例として、表示装置120をフロントパネル41の後面側の上部に設けた構成について説明したが、表示装置120の設置場所は図22に示した場所に限定されるものではなく、作業者が視認できる場所であれば任意の設置場所に設置してもよい。例えば、表示装置120は、フロントパネル41の側面部に設置されてもよく、フロントパネル41以外のサイドパネル42やリアパネル43に設置されてもよい。また、表示装置120は、運転席の近傍に設置されてもよい。更に、作業者が所持する携帯端末に通信により報知する構成としてもよい。
また、本実施の形態では、色及び点灯・点滅状態を変更することによって表示装置120における表示態様を積載状態に応じて異ならせる構成としたが、積載状態に応じた文字又は図形を表示装置120に表示させてもよい。また、表示装置120による表示だけでなく、音や音声によって積載状態を報知してもよい。
(実施の形態7)
実施の形態7では、自車両の状態を検知し、検知した自車両の状態に関する情報を報知する構成について説明する。
図23は実施の形態7に係る特装車1の全体構成を示す側面図である。実施の形態7に係る特装車1は、上述した構成に加え、荷台の傾斜を計測する傾斜計85、及び荷箱4の内部を撮像する撮像装置86を備える。特装車1は、更に、自車両の現在位置を測位するGPS(Global Positioning System)受信機87を備えてもよい。
傾斜計85は、荷箱4の適宜箇所に取り付けられ、荷箱4の前後方向の傾斜(ピッチ)を時系列的に計測し、計測した傾斜に係る計測データを推定装置100へ出力する。傾斜計85は、荷箱の前後方向の傾斜(ピッチ)に加え、左右方向の傾斜(ロール)を時系列的に計測してもよい。
撮像装置86は、例えばフロントパネル41の上部から斜め下後方の範囲を撮像するように設置され、荷箱4の内部を時系列的に撮像する。撮像装置86は、例えばCMOS(Complementary Metal Oxide Semiconductor)などの固体撮像素子を備え、固体撮像素子より得られるデジタル形式の画像データを推定装置100へ出力する。撮像装置86は、ステレオカメラや距離画像センサなどの距離情報を取得できるものがより好ましい。
GPS受信機87は、GPS衛星(不図示)から送信される電波を受信し、特装車1の現在位置を時系列的に測位する。GPS受信機87は、特装車1の現在位置に係る位置情報を推定装置100へ出力する。
図24は実施の形態7における推定装置100が実行する処理の手順を説明するフローチャートである。推定装置100の制御部101は、入力部104を通じて、傾斜計85から出力される計測データを取得した場合(ステップS701)、取得した計測データに基づき荷箱4の状態を判定する(ステップS702)。このとき、制御部101は、荷箱4がシャシフレーム21に対して傾斜した状態(リフトアップした状態)であるか否かを判定してもよい。また、制御部101は、荷箱4の状態として、傾斜角から荷箱4の最上位の高さ(車両高さ)を算出してもよい。
制御部101は、ステップS702において判定した荷箱4の状態を報知する(ステップS703)。図25は荷箱4の状態の報知例を示す模式図である。制御部101は、ダンプの状態を示す文字や図形を出力部105より表示装置120へ出力することにより、ダンプの状態を報知することができる。図25Aはダンプ中である旨を文字情報として表示装置120に表示させた状態を示している。図25Bは荷箱4の最上位の高さが4.8mに達していることを表示装置120に模式的に表示させた状態を示している。また、制御部101は、算出した荷箱4の最上位の高さが設定値を超える場合、アラートを出力してもよい。
制御部101は、入力部104を通じて、撮像装置86から出力される画像データを取得した場合(ステップS704)、取得した画像データに基づき荷箱4における積載状態を判定する(ステップS705)。制御部101は、例えば、荷箱4の内部が撮像された画像データの入力に応じて、積載状態に関する情報を出力するように構成された学習モデルLM2(図26を参照)を用いて、積載状態を判定することができる。
図26は実施の形態7における学習モデルLM2の構成を説明する模式図である。実施の形態7における学習モデルLM2は、例えば、CNN(Convolutional Neural Networks)による学習モデルであり、入力層、中間層及び出力層を備える。学習モデルLM2は、荷箱4の内部を撮像して得られる画像データの入力に対して、例えば積載物の高さに関する情報を出力するように予め学習される。
入力層には、荷箱4の内部を撮像して得られる撮像装置86からの画像データが入力される。入力層に入力された画像データは、入力層を構成するノードを通じて中間層へ送出される。
中間層は、例えば、畳み込み層、プーリング層、及び全結合層により構成される。畳み込み層及びプーリング層は交互に複数設けられてもよい。畳み込み層及びプーリング層は、各層のノードを用いた演算によって、入力層を通じて入力される画像の特徴を抽出する。全結合層は、畳み込み層及びプーリング層によって特徴部分が抽出されたデータを1つのノードに結合し、活性化関数によって変換された特徴変数を出力する。特徴変数は、全結合層を通じて出力層へ出力される。
出力層は、1つ又は複数のノードを備える。出力層は、中間層の全結合層から入力される特徴変数を基に、ソフトマックス関数を用いて確率に変換し、積載物の高さに関する推定結果を出力する。出力層による推定結果の出力形態は任意である。例えば、出力層を第1ノードから第nノードまでのn個のノードで構成し、第1ノードから積載物の高さが上限値を超えている確率、第2ノードから積載物の高さが上限値に達している確率、第3ノードから積載物の高さが上限値の90%である確率、第4ノードから積載物の高さが上限値の80%である確率、…といったように、出力層を構成する各ノードから積載物の高さに関する確率を出力すればよい。出力層を構成するノードの数、及び各ノードから出力する内容は、上記に限定されるものではなく、適宜設計することが可能である。
推定装置100は、撮像装置86により撮像された画像データと、画像データを撮像したときの積載物の高さのデータ(例えば実測値)とを多数収集し、収集した画像データと高さのデータとを訓練データに用いて学習することにより、図26に示すような学習モデルLM2を生成することができる。また、推定装置100にて学習モデルLM2を生成する構成に代えて、外部サーバにて学習モデルLM2を生成し、学習済みの学習モデルLM2を外部サーバから取得する構成としてもよい。推定装置100は、自装置にて生成した学習モデルLM2又は外部サーバから取得した学習モデルLM2を記憶部102に記憶させる。
推定装置100の制御部101は、図26に示すフローチャートのステップS704において撮像装置86から出力される画像データを取得した場合、取得した画像データを学習モデルLM2に入力し、学習モデルLM2を用いた演算を実行する。制御部101は、学習モデルLM2による演算結果を参照し、積載状態(この例では積載物の高さ)を判定する。このとき、制御部101は、出力層の各ノードから出力される確率のうち、最も確率が高い状態を選択することにより、荷箱4における積載状態を判定することができる。
制御部101は、ステップS705において判定した荷箱4の積載状態を報知する(ステップS706)。図27は荷箱4の積載状態の報知例を示す模式図である。制御部101は、積載物の高さを示す文字情報を出力部105より表示装置120へ出力することにより、積載状態を報知することができる。図27の例は積載物の高さが上限値を超えている旨の文字情報を表示装置120に表示させた状態を示している。
以上のように、本実施の形態では、特装車1の状態を検知し、検知した特装車1の状態を乗員に報知することができる。
なお、図24に示すフローチャートでは、荷箱4の状態の判定及び報知を実行した後に、積載状態の判定及び報知を実行する手順としたが、これらの実行順序は任意に設定してもよい。また、荷箱4の状態の判定及び報知、および、積載状態の判定及び報知の何れか一方のみを実行してもよい。
また、本実施の形態では、特装車1の状態として、荷箱4の状態及び荷箱4における積載物の状態を検知し、検知結果を報知する構成について説明したが、傾斜計82により計測される特装車1の傾斜(ロール及びピッチ)及び傾斜に対する上限値を報知してもよい。
また、本実施の形態では、特装車1の状態を表示装置120に表示させる構成としたが、外部の管理サーバへ通知してもよい。このとき、特装車1を識別する識別子、及びGPS受信機87により測位される特装車1の位置情報を付加し、特装車1毎に位置情報及び特装車1の状態を管理サーバに管理させてもよい。また、表示装置120は、荷箱4の視認可能な部位に設けるものに限らず、作業者が所持しているスマートフォン等の携帯端末であってもよい。
また、本実施の形態では、学習モデルLM2を用いて積載物の高さを推定する構成としたが、撮像装置86より得られる画像を解析し、画像内で積載物の高さ位置を特定することによって積載物の高さを推定する構成としてもよい。
今回開示された実施形態は、全ての点において例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
例えば、本実施の形態では、特装車1として、積載重量を推定する推定装置100と、推定装置100が推定した積載重量に関する情報を報知する表示装置120と、ダンプ装置3とを備えるダンプトラックを例に挙げて説明したが、本発明はダンプトラックに限らず、種々の特装車に適用可能である。例えば、塵芥車、ミキサ車、タンクローリ、吸引車、コンテナ脱着車等の特装車に適用できる。
また、実施の形態1~7では、特装車1が推定装置100を備える構成としたが、推定装置100は、特装車1の外部に設けられるコンピュータであってもよい。例えば、当該コンピュータは、特装車1に搭載される制御装置と通信可能に接続されるサーバ装置であってもよい。この場合、推定装置100は、特装車1に搭載される制御装置から歪量、油圧値、傾斜角度、温度などの計測データを通信により取得し、取得した計測データを学習モデルLM1等に入力することによって、特装車1における積載重量を推定してもよい。