ここから本文です
〆鯖
鉄道やらBVEやら

DD51形ディーゼル機関車

DD51形ディーゼル機関車の車両データです。

このデータは製作開始から一年半になりますが、
はじめは3ヶ月ぐらいで公開できるだろうと思っていました。
しかし、いざ作り始めると古い機関車だけあっていくらでも資料が手に入るのです。
これはいっそ全部再現したら面白いのでは?ということになり、
ブレーキシステムや制御回路、冷却回路やエンジンの物理モデルなどを再現することにしました。
このデータを製作する中で教本やツナギ図といったものを必死で読み漁り、車両工学やプログラミングを深く学ぶきっかけにもなりましたし、3Dモデリングにも手を出したり、終いには運転台を製作したり、いろいろな世界の方とお会いできる機会を得ることができました。
今となっては少々見劣りする部分もあり、
試行錯誤と背伸びの跡が随所に感じられるかと思いますが一つの形として公開します。

だうん
<車両データダウンロード>http://miyakoji.bugyo.tk/BVE/DD51.zip

※このデータはエンジン音の再生にOpenALを使用していますので、
からダウンロード&インストールしてください。


都路各停様に路線を作成していただきました。
すばらしいデータですので是非合わせてご使用ください。

<路線データリンク>


NT様に軽量化パッチを作成していただきました。
機関始動関係や配電盤操作など運転以外の機能は使えなくなります。
重すぎてどうにもならない方は是非使ってみてください。

※DD51は非常に複雑かつ難易度の高いデータです。付属の説明書をよくお読みください。
BVEやPCの基本的な事項は自己解決をお願いします。どうしても必要な場合はコメント等で書いていただければ可能な限り回答します。

※F8の早送りをしようするとエアのシュミレーションの値が発散して強制終了されることがしばしばあります。注意してください。

※ブレーキ甘すぎじゃない??
確かに50系客車はかなり弱めの設定になっています。
Parametersフォルダ内にParameters_50.txtなどの性能ファイルがあります。
この中の記述の、

[Brake]
PistonArea = 0.40
ShoeFriction = 0.44,0.00799,0.0241
;JRS2(一般車)

PistonArea(制動筒の面積)を0.40〜0.50ぐらいまで上げてやるといい感じになります。他の車両でも少々上げたほうが運転しやすくなると思うのでお試しください。









この記事に

開くトラックバック(0)

DD51用運転台

DD51の運転をよりリアルに体験するために、
運転台を製作しています。
イメージ 1
各ハンドル、スイッチ、メータ、表示灯などはBVEと連動して動作します。
↓運転している動画です。

この記事に

開くトラックバック(0)

近況

しばらくご無沙汰しておりましたが、BVE製作はぼちぼち続けております。
製作状況などは基本的にTwitterの方でつぶやいていますが、
こちらはまとまった段階で上げていくことに使おうかなぁと思っています。

DD51はこんな感じにだいたいまとまりました。

あとは↓キハ82なんかも作っています。
イメージ 1
自動ブレーキや機関&変速機の力学モデルを重視しています。
パネルはフル3DCGで製作してみました。


この記事に

開くトラックバック(0)

冷却回路

イメージ 1最近は3DCGでちまちま部品を作ってのっけています。
側窓をつけたら随分と,距離感覚や速度感覚がつかみ易くなりました。
これができるのは3Dシュミレータの良さですね。


DD51にはDML61-Z機関が2基搭載されており、それぞれ1500rpmにおいて1100psを発揮します。機関で発生した動力はDW-2A液体変速機を介して車輪に伝えています。
巨大なAT車といったところです。
機関効率は30〜40%ほど、液体変速機の効率は最大80%程度ですから、
片端あたり最大で約500kcal/secの発熱があります。
この熱を大気に放熱するための冷却システムをシュミレートしてみました。
イメージ 2
上の図はDD51の冷却配管を簡略化した物です。実際には過給機や車内放熱器(暖房)等もありますが、とりあえず無視して主な要素のみ再現しています。

機関冷却水は機関軸により駆動されるポンプで送り出され、
冷却水タンク→液体変速機、油冷却管→機関冷却管→放熱器→冷却水タンク
という経路を流れます。
冷却水の温度は機関直後に最大になるために、ここに85℃水温注意継電器と95℃水温高継電器を設けています。水温高になれば力行が切れ、急速冷却に入ります。
変速機の油の温度は105℃油温注意継電器と115℃油温高継電器を設け、油温高であれば力行が切れます。
送風ファンの回転数はエンジン直後の水温により制御されており、
70℃になれば回転を始め、80℃において最大風量となります。
また送水ポンプは機関軸により駆動されるため、送水量は機関回転数に依存します。


運転してみた感じでは、
外気温が30℃を超えてくるとノッチオフで機関回転数が低下し、
送水量が減少して水温注意が点灯することがありますが、通常運転で力行が切れることはほぼ無いです。
油温は変速機効率が低い範囲で高負荷運転をすると急激に上昇します。
1速固定で走ったりすると、結構簡単に油温高継電器が入ります。
このあたりはパラメータで調整でなんとでもなるため、ある程度直感で決めていますのでもう少し煮詰めていきたいです。
各部の温度は目立たない場所に温度計をつけてモニターできるようにしたいと考えています。

再現にあたっては、
日立評論1967年11月号、ディーゼル動車エンジン冷却水の温度制御に関する一考察を参考にしました。深く知りたい方はぜひご覧ください。



この記事に

開くトラックバック(0)

イメージ 1
DD51ディーゼル機関車です。
最近ちまちまと作ってます。
国鉄形は資料が手に入りやすく、中身も単純なのでどこまでも作りこめて幸せです。
ところで、
BVEは機関車は主眼において設計されていないために、
機関車の特にブレーキに関してはどうしてもうまく再現する方法がありませんでした。
そのためこの作品ではブレーキ関係の計算はプラグイン側で行い、本体には電気指令式ブレーキとして出力する方法をとっています。
客車のブレーキ圧と機関車のブレーキ圧を別に算出した上で、
客車と機関車のブレーキ力の比から、編成全体のブレーキ圧として本体に出力することであくまで”もどき”ですが、単弁、自弁両方の操作が可能です。
汎用性のある方法なので、再現したいブレーキ方式がない場合の参考として一例を紹介しておきます。
イメージ 2



最も単純な直通ブレーキの図です。
元空気ダメ、ブレーキシリンダと2つのバルブから構成されます。
ブレーキをかける時はバルブ2は閉じたままで1のバルブを開放し、緩めるときはバルブ1を閉じて2のバルブを開放します。両方閉じれば重なりです。
これを再現する一例です,

int V_1;//バルブ1(ブレーキ)
int V_2;//バルブ2(ユルメ)
double Q_1;//流量(バルブ1)(m^3)
double Q_2;//流量(バルブ2)(m^3)
const double K_1= 1.0;//流量係数(バルブ1)
const double K_2 = 1.0;//流量係数(バルブ2)
const double MR_volume = 1.0;//元空気ダメ容量(m^3)
const double BC_volume = 0.1;//ブレーキシリンダ容量(m^3)
double MR_Press;//元空気ダメ圧力(pa)
double BC_Press;//ブレーキシリンダ圧力(pa)
double delta_MR;//元空気ダメ圧力変化(pa)
double delta_BC;//ブレーキシリンダ圧力変化(pa)
double pre_MR_Press;//前フレームの元空気ダメ圧力(pa)
double pre_BC_Press;//前フレームのブレーキシリンダ圧力(pa)
int brake_notch;//本体からのブレーキノッチ
int time;//刻み時刻(1/1000s)
int  pre_time;//前フレーム刻み時刻(1/1000s)

これらを定義した上で、elapse内で計算します。

if(pre_MR_Press >= pre_BC_Press)
{
Q_1 = (K_1* sqrt(pre_MR_Press - pre_BC_Press)) * (time - pre_time) / 1000;
}else
{
 Q1 = (K_1* sqrt(pre_BC_Press - pre_MR_Press)) * (time - pre_time) / 1000
}
if(pre_BC_Press > 0)
{
Q_2 = (K_2* sqrt(pre_BC_Press - 0)) * (time - pre_time) / 1000;
}


if(brake_notch == 0)//ユルメ
{
V_1 = 0;
V_2 = 1;
}
if(brake_notch == 1)//重り
{
V_1 = 0;
V_2 = 0;
}
if(brake_notch == 2)//ブレーキ
{
V_1 =1;
V_2 = 0;
}

delta_MR = 0;
delta_BC =0;

if(V_1 == 1)//バルブ1開
{
delta_MR +=(pre_MR_Press * MR_volume - Q_1) / MR_volume - pre_MR_Press;//MR減圧
delta_BC += (pre_BC_Press * BC_volume + Q_1) / BC_volume - pre_MR_Press;//BC加圧
}

if(V_2 ==1)//バルブ2開
{
delta_BC += (pre_BC_Press * BC_volume - Q_2) / BC_volume - pre_MR_Press;//BC減圧
}

BC_Press = pre_BC_Press + delta_BC;//計算した圧力を加える
MR_Press = pre_MR_Press + delta_MR;//計算した圧力を加える
pre_MR_Press = MR_Press;
pre_BC_Press = BC_Press;
本体のパラメータで電気指令ブレーキを数百程度に当分して、BC_Pressの値を出力すれば良いわけです。
ブレーキハンドルの位置に対応したバルブ状態と空気ダメの組み合わせで独自のブレーキシステムが作成できます。
ちなみにDD51の場合、いまのところ機関車本体で約20のバルブ、4つの空気ダメおよび空気管を用いて自動ブレーキを再現しています。

この記事に

開くトラックバック(0)

[ すべて表示 ]

本文はここまでですこのページの先頭へ
みんなの更新記事