車両挙動モデルの開発に向けて
5年A組

村田宏暁

指導教員 米田隆恒

１．要約
私は道路交通における交通渋滞の発生原理や性質について調べるため、JAVA 言語を用いてミクロ道路交通シミュレーターを開発し、研究を行っている。しかしこれまでに開発したシミュレーターは精度が不十分であったため、実際の車両の挙動データを測定し、そのデータを元に開発した車両挙動モデルを用いることで、精度の高いシミュレーターを開発しようと考えた。未だ測定には至っておらず、車両挙動の測定へ向けて準備している段階であるが、現状と今後の方針について述べる。

キーワード

交通渋滞、シミュレーション、モデル、JAVA、OBD2

２．背景
現在、道路交通は移動や輸送においてと考え、車両の挙動を測定することにした。

重要な役割を担っている。しかし、交通集中などによって渋滞が発生すると、所

３．研究内容要時間の延伸や事故率の上昇など様々な車両挙動を測定するためには、実際に問題が生じる。これを解決するためには測定する情報を決定する必要がある。今渋滞の発生原理や性質を知ることが不可

回は、運転者は車間距離、速度、前方車欠であるが、実際に実験を行うことは困の速度の三つの要素を元に一定時間後の難であるためシミュレーションによって加速度を定めるものとして、これらの四擬似的に実験を行う必要がある。

つの値を測定することにした。以下でそ私はこれまでにも独自に開発したシミれぞれの測定方法について述べる。

ュレーターを用いて道路交通についての測定は車外から測定する方法と車内か研究を行ってきたが、用いていた車両のら測定する方法の二つが考えられるが、挙動モデルはシンプルなもので精度が不昨年度の論文で述べたように車外からの十分であった。私は実際の車両挙動のデ測定では精度を確保できないと考えられータをモデル化することで精度の高い車るため、車内から測定する方法を採る。

両挙動モデルが開発できるのではないか3.1 車間距離の測定⑤ a を変化させて②～④を繰返し、最第一にレーザー距離計を用いることがも一致度の高くなる a を距離とする考えられるが、市販のレーザー距離計はしかし上記の方法をそのまま実装する測量を目的としているため連続して測定と、計算量が多いため処理に時間がかかすることが困難であり、また、窓や黒いってしまう。上の方法ではカメラ B の向

車体はレーザーを反射しにくく精度が悪

きや画角及び位置を一般化しているためくなってしまうため、車間距離の測定に計算式が複雑であるが、二つのカメラのは適さない。そのため、二つのカメラ(カ向きと画角及び前方車の後面との距離とメラ A とカメラ B)で前方車を撮影し、車高さが等しいものとすると、カメラ A の間距離を算出する。

画像の後面部分を距離に応じて左右に移

通常、観測地点の違いによる画像のず動させるだけでカメラ B の計算上の画像

れから距離を求める場合は特定の点につの後面部分を求められ、処理時間が短くいての視差から距離が算出されるが、二なるためこの方法を採用する。また、距

つのカメラから得られた画像の中から同離を定めて一致度を算出するのではなく、一の点を見つけることは困難である。そ左右の移動量を b ピクセルと定めて一致

こで「物体とカメラの位置と向き、及び度を算出し、最後に距離に変換すること

カメラの画角が既知である場合、カメラで処理を簡素化した。に物体がどのように映るかを求めること

なお、一致度は処理①で切り出した画ができる」ことを利用し、前方車の後面像のピクセル数をnとして以下の式で算出をカメラ A の向きに垂直な平面と仮定しする。て、次の①〜⑤の処理を行うことで距離を求める方法を考えた。
① カメラ A の画像から前方車の後面を切り出す② カメラ A と後面との距離を特定の値 a と仮定し、後面の位置を定める③ カメラ B に写る画像をカメラ A の画像を元に算出する④ ③で求めた画像と実際にカメラ Bから得られた画像を比較し、一致度を算出する∑𝑛𝑘=1 ∑3𝑙=1(256 − �𝑋𝑘,𝑙 − 𝑌𝑘,𝑙 �)
3 ∙ 256 ∙ 𝑛

ただし、𝑋𝑘 は切り出した画像のk番目のピクセルを、𝑌𝑘 は画像 B の𝑋𝑘 と重なるピ

クセルを表しており、𝑋𝑘,1 , 𝑋𝑘,2 , 𝑋𝑘,3 はそれぞれ𝑋𝑘 の色の R,G,B の成分を 0 以上

256 未 満 の 整 数 で 表 した も の であ る 。
𝑌𝑘,1 , 𝑌𝑘,2, 𝑌𝑘,3 も同様である。

しかし、この処理を行うにはカメラから得られた画像のどこに前方車が映っているのかが既知である必要があり、処理の際に手動で設定するため誤差が生じる

ただし、得られる速度は車載の速度計可能性がある。また、カメラの位置や向と同じであり、速度計は実際の速度よりきが既知である必要があるため、エンジ大きな値を示すよう作られていることがンによる振動などによってカメラの位置多いため、系統誤差が発生する。また、や向きがほとんど影響を受けないように得られる値は 1 km/h 単位である。

固定する必要があるが難しく、未だ測定に至っていない。

Android アプリを開発して通信を行い、速度が得られることは確認できた。しかし、受信したデータの中に意味の判明し3.2 速度の測定
GPS を用いる方法も考えられるが、デないデータが含まれており、受信データから速度への変換を自動化できていない。

ータを得られる間隔が 1 秒程度と長く、連続測定には適さない。
そこで、OBD2 を用いる。OBD2 とは車両の自己故障診断のために ECU と呼ば3.3 前方車の速度の測定
測定車の速度と、前方車の車間距離の変化率から前方車の速度を求める。

れる車両内部のコンピュータと通信する
際の通信規格であるが、故障情報の他に3.4 加速度の測定エンジンの回転数や速度などの情報を得

加速度は、スマートフォン(Android)のることもできる。車両に装備されている加速度センサを用いて、独自に開発したOBD2 コネクタに図１の機器を接続し、アプリで測定、記録する。

Android 端 末 と 当 該 機 器 と の 間 でしかし、測定に用いた Android 端末

Bluetooth を用いた通信を行うことで、間(ISW12HT)の加速度センサは重力と鉛直接的に車両と通信を行い、速度を得る。

上向き方向の加速による慣性力とを区別できず、常に重力の影響を受ける。道路が水平であれば問題は発生しないが坂道である場合は実際の加速度と異なる値が得られるため、重力の影響を除去する必要がある。

3.5 後方車の挙動測定
図１ ELM327 搭載の OBD2 アダプタ

車両の挙動は運転者によって変わる。
特定の運転者の挙動に強く影響されたモデルでは実際の道路交通を再現できない

４．今後の課題

ため、運転者集団全体の特徴を反映したまずは車間距離の測定を行い、誤差なモデルが求められる。しかし、それを開どを調べる必要がある。また、測定した発するには様々な運転者の挙動を測定すデータからモデルを開発するためには加る必要がある。ここまでで述べた測定方

速度とその他のデータとの関連を調べる

法は機器を搭載した測定車自身の挙動を必要があるが、カメラの時計とスマート測るものであり、運転者に協力していたフォンの時計との間にずれがあると正確だく必要があるため、多くの運転者の挙な関係を把握することができない。これ

動データを得ることは難しい。そこで、らの時計を精密に同期させる方法を考え測定車の後方を走行している車両の挙動る必要がある。

を測定することで、運転者に特別な協力をいただくことなくその挙動データを得５．参考文献ることを考えた。

[1]「交通工学」飯田恭敬 監修、北村隆一

後方車から見た「車間距離」は測定車編著、オーム社 版(2008 年)と後方車との間の距離であるからカメラ[2]「Java Platform, Standard Edition 6を後方に向けて設置することで、3.1 で述API 仕様」

べ た の と 同 様 に 測 定 す る こ とが で き 、

docs.oracle.com/javase/jp/6/api/「前方車の速度」は測定車の速度である[3]「Android Developers」

から 3.2 と同様に測定できる。また、後developer.android.com/

方車の「速度」は車間距離の変化率から相対速度を求めてそれに測定車の速度を加えることで得られる。後方車の「加速[4]「ELM327 v2.1 data sheet」
www.elmelectronics.com/DSheets/ELM327DS.pdf

度」は 3.4 のように加速度センサを用いて直接測ることはできないが、相対速度

６．謝辞の変化率に測定車の加速度を加えることこの研究を行うにあたり、顧問の米田で求められる。しかし、車間距離の測定隆恒先生には多大なご指導を賜り、実験方法を確立できていないため、未だ測定走行にも幾度もご協力いただきました。には至っていない。

また、立命館大学の野間春生先生、近畿大学の多田昌裕先生にも多くの助言をいただきました。この場を借りて、深く御礼申し上げます。