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

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

OMSIでの動作確認

それではOPLファイルを作成したので実際にOMSIで動作するか確認したいと思います。手順は以下の通りです。

1)OFK.exeを起動して[File]-[Load profile]をクリックし、作成したOPLファイルを選択、右下の"Enable action?"のチェックボックスにチェックを入れて[Load]ボタンをクリックします。
2)OFK.exeを閉じ、pluginsフォルダにあるKOMSI.oplがさきほど読み込んだOPLと同一になっていることを確認します。KOMSI.dllはこのファイルを読み込んでArduinoのピンアサインを決めます。OFK.exeでチェックボックスにチェックを入れていたのはこのファイルを上書きして反映させるためです。仮にチェックを入れなかった場合は、OFK.exe内で編集可能になるだけでKOMSI.oplには反映されません。
3)動作が分かるように定義したピンと5Vピンの間にLEDと抵抗を接続します。サーボモーターがあるときはサーボモーターも接続してください。
(私が試しに使ったSG90というサーボモーターの場合、赤線を5V、茶色をGND、オレンジをアナログ出力ポートに接続しました。)
4)KOMSI Serverを起動した後、OMSIを起動します。
5)OMSI内で内部変数が変化する操作(例としてウインカーを定義しているならその操作)を実行してLEDが点灯することを確認できればOKです。

youtu.be

youtu.be

これで基本的な動作確認は完了です。
もちろん、マイコンの基板から直接24Vの装置を稼働させることはできませんが、論理的にはうまくいっているわけです。
あとは外部回路さえ作成すれば、Arduino側のON/OFFで24Vの電球をON/OFFさせることも可能です。

あと一点注意事項があります。Arduinoマイコン基板なのでたとえ5Vで動作する負荷であっても消費電流の多い負荷は接続することができません。1ピン当たり最大40mAと決められているので、それ以上必要な場合はやはり外部回路をつくる必要があります。また、基板全体でも制約があって、単にUSB接続の場合は400mAくらい、5V 1A以上のACアダプタを使用して900mAくらいになります。決して満足な容量ではないので、基本Arduinoで直接負荷を稼働させるのはやめたほうが賢明かもしれません。