路線バス運転シミュレータ開発記

OMSIを使って路線バスの運転シミュレータを製作しています。備忘録的にゆるーく書いていきたいと思いますので、お付き合いいただければ幸いです。

2021-01-01から1年間の記事一覧

システム概略図

ハードウェア面については不足している部分や稚拙なところがあり、手を加えたいところが多々ありますが、これ以上時間をかけているとマップの作成ができないため一旦運転台の製作は終了します。これでも十分に楽しめるものにはなったと思っています。 最後に…

ハンドルコントローラーの改造について

今回、ステアリングやペダルの入力部分にはLogicool G27 Racing wheelを流用したのですが、その中で実車についていたシャフトとG27をどのように結合させるかが問題でした。 下の写真は別途入手した実車のハンドル一式なのですが、ハンドルとコンビネーション…

スイッチによる入力について

ウインカーなど物理的なスイッチによってOMSIを制御したい場合、以下のようにいくつかの方法が考えられます。 1)スイッチをarduinoに接続して入力値を監視し続け、取得した値で毎回OMSIの内部値を上書きする方法2)スイッチをarduinoに接続して入力値を監視し…

計器の制御

KOMSIとarduinoを使ってOMSIと計器を連動させる場合、インジケータの場合のようにピンアサインを自由に決められるわけではなく、あらかじめ決められたピンにサーボモーターを接続して計器の指針を動かすという形になります。そのピンアサインはKOMSIに付属し…

ワンマン機器の接続

車両の運転に必要なもの以外にも路線バス特有の機器が色々ありシステムとして稼働しています。ここでは、そういった機器の配線方法などを備忘録的にメモしておきます。 【案内放送装置】 クラリオン製のものはAuto Guide System (略してAGS)と呼んでいますが…

速度計のピンアサイン

一般的に速度計は機械式ではメーターケーブルをつなぐだけで動作しますが、電気式の場合は簡単な配線が必要になります。また機械式であってもタコグラフの場合は時計の動作などに配線が必要なのでここにまとめておきます。 ■機械式タコグラフ 別の機種だとイ…

計器類のピンアサイン(三菱ふそう)

前回、日野のメーターパネルのピンアサインを調べましたが、メーカーや年式が異なれば当然ピンアサインも違ってきます。今回は三菱ふそうのものを調べてみることにします。 メーターパネルのピンアサインを調べるには、まずGNDなど共通で使われているところ…

ハンドル回りの配線(三菱ふそう)

テスターで地道に調べていった結果、ハンドル回りの配線がわかりましたのでメモしておきます。 黒 GND 青黄 ワイパー(HI) 青黒 ワイパー(LOW) 青緑 ワイパー(INT) 青橙 ウォッシャー液 赤 フォグランプ 緑白 パーキングランプ※1 緑黄 パーキングランプ※1 黄 …

道路標識の実装

道路標識のように同一の形状でかつ非常に種類の多いオブジェクトを作成する場合、種類ごとにオブジェクトを作成してしまうと、o3dファイルとscoファイルの数が膨大になってしまいますし、エディタで必要なものを探すのも大変になってきます。 そこで、まだ荒…

分断されたスプラインをつなぎたい

SDKのマニュアルを見ると、complete to 機能を使って交差点とスプラインをつなぐ事例が紹介されていますが、この機能はスプライン同士でも使えるようですので補足しておきます。

当たり判定がうまくいかないとき

トンネルや橋のオブジェクトを作成したとき、自車が通過しようと思った部分が通過できずに跳ね返ってきてしまうことがあります。これは当たり判定を行う際に、デフォルトではオブジェクト全体を囲むようなコリジョンメッシュが生成されるためで、scoファイル…

いすゞエルガ

kamy_februaryさんからすでに初の日本型であるいすゞエルガが公開されていることは前にも紹介しましたが、この度葱急车辆制造さんからもいすゞエルガが公開されました。 www.youtube.com 葱急车辆制造さんのfacebookにダウンロード先のリンクがありますので…

スプラインを作成するためのツール(まとめ)

■whistlehead Roadways V2 - Spline Generator 車線数や路面のテクスチャなどをドロップダウンリストから選択するだけで直感的にスプラインを作成できるツールがありましたのでご紹介します。このツールを使えば、作成時にパス方向も指定できるので日本型の…

to spline機能にてオブジェクトをスプラインに据え付けられない問題

街灯や柵など道路沿いにオブジェクトを一定の間隔で自動的に配置できる[to spline]機能は非常に便利ですが、スプラインの長さが長くなってくるとエディタでうまく据え付けられない問題が生じます。 これはおそらく子スプラインが親スプラインからの相対的な…

"No both THs"を使用したときに交差点オブジェクトを連結できない問題

スプラインが周囲の地表よりも低くなるような場合、Align Terrainを"No both THs"に設定すると簡単に切土になりますが、こうして作成した切土のスプラインに交差点オブジェクトを連結しようとしてもうまくいきません。 オブジェクトはデフォルトで地表の高さ…

透過テクスチャを使用する

Metasequoia上ではアルファチャネルを持ったPNGなどを指定すると透過部分が適切に表示されますが、xファイルに出力してそのままOMSIに読み込ませようとしても透過部分が適切に表示できないことがあります。 この場合、scoファイルを開いて以下のような構文を…

地表高と路面高の違い

以前、地形の作成 - 路線バス運転シミュレータ開発記にてSRTMデータから地形を生成するという話を書きましたが、マップ作成に際して注意しなければならないのが、地表高と路面高は等しいとは限らないということです。実際マップを作成してみるとわかりますが…

Metasequoiaを使用してオブジェクトを作成する際のメモ

OMSI2のマップ作成をしている方のほとんどがbelnderを使っているのではないかと思いますが、Metasequoiaを使っている場合の設定等を記載します。 ・通常、Metasequoiaでx形式のファイルを読み込むことができないので、モデリングしたデータはmqo形式でも保存…

Sceneryobject (*.sco)

scoファイルは、主に建物や標識など自動車や人など別に定義されている以外のあらゆるオブジェクトを定義するものです。また、交差点のように車両や歩行者のパスを定義したり、信号機の動作周期データを定義したりすることもできます。オブジェクトで使用する…

交差点を左側通行にする

前回はスプライン(道路)を左側通行にする方法について書きましたが、交差点も左側通行にしなければ、AI Carが交差点に進入した瞬間に消えてしまう現象が起きます。そこで試行錯誤の結果、以下の方法で左側通行にできることがわかりましたので書いておきます…

道路を左側通行にする

海外のサイトで道路のスプラインファイルや交差点のオブジェクトファイルがフリーで配布されていることがありますが、これらのものを日本のマップに活用しようとしても右側通行になっていることがほとんどで、そのまま使用することができません。 最初、スプ…

空気圧計の改造

水温計、燃料計、油圧計、電圧計の4つの計器については電気的に動作させることが可能なのですが、空気圧計については簡単にはいきません。実は以前からどうしようかと考えていたところでもあったのですが、空気圧計を動作させるには次のような方法があるかと…

計器類のピンアサイン(日野)

メーターパネルのピンアサインがわからない場合、原始的な方法ではありますがテスターを使って見当をつけていく方法しかないかと思います。今回調べたのは日野のメーターパネル(車種不詳)です。メーターパネルの配線はメーカーや車種によって異なるので、そ…

インジケータランプのテスト

OMSIとArduinoの連携動作が確認できたところで、実車のメーターパネルを動作させてみたいところです。前にも記述しましたが、Arduinoの出力ピンに24Vの負荷をつないで動かすことはできませんから、簡単ですが以下のような回路を考えてみました。フォトカプラ…

OMSIでの動作確認

それではOPLファイルを作成したので実際にOMSIで動作するか確認したいと思います。手順は以下の通りです。 1)OFK.exeを起動して[File]-[Load profile]をクリックし、作成したOPLファイルを選択、右下の"Enable action?"のチェックボックスにチェックを入れて…

出力ポートの割り当て

さて、Arduinoの動作を実際に確認できたところで、次はボードの各ピンにどのような出力を割り当てるか決める必要があります。Arduinoボードには大きく分けて、アナログ出力ポート、アナログ入力ポート、デジタル入出力ポートの3つがありますが、KOMSIで使用…

Arduinoの導入

数年前、運転台コントローラーが技術的に実現できそうか検証するため、KOMSIを使ってArduinoを動かしてみたことがあったのですが、保管してあったものを久しぶりに出して接続したらうまく動作せず、故障してしまったのかとかなり焦りました。そこで、Arduino…

入出力部分の基本設計

以前(OMSIの導入 - 路線バス運転シミュレータ開発記)で述べた通り、OMSIを操作する場合、G27のようなハンドルコントローラーを使用すればキーボードやマウスによる操作と異なり、より実感的な操作ができますが、これでも以下のような問題点があります。 ■操…

道路の配置

地形データを生成出来たら、次は道路の配置です。道路を配置すればこれを基準としてバス停や沿道の建物をどの辺りに置くか決めることができます。しかし、地形だけを基準に道路を配置するというのは難しいので、地図と地形を対比させて距離感をつかみながら…

地形の作成

マップエディタで地形を編集する場合、[Terrain]タブを開き、マウスで地形タイルをクリックするとその部分の地形が高くなったり低くなったりするので、その要領で山や丘、湖や沼地を作成します。ただ、この方法は架空のマップであれば気軽に使用できる方法な…