ここ最近、床下配管ばかりの作業でちょっと気が滅入ってきた感じがあるので、少し大物の加工を実施。

キャブ屋根の着脱式可に挑戦。

 

 モデル雑誌などに掲載されているモデル制作の神様の様な方々の作品には、キャブ内まで精緻に加工が施されている見ているものもある。

 決してそこまでの完成度、精密さを追い求めているというわけではないものの、すでにキャブ内の加工を少し実施したこと、完成後の塗装作業を考えるとオリジナル設計のままキャブ屋根を取り付けてしまうわけにもいかなそう。

 キャブ屋根の着脱化もいくつか方法がある様だが、今回は模型教室の先生に教えてもらった”雨樋沿いでの分割加工”を実施することに。

 

 

まずは未加工状態のキャブ屋根。

プレスで曲げ加工が施されているが、ポイントは側面への回り込みも表現されていること。

この屋根を雨樋取り付けライン(図中の赤い線あたり)に沿って糸鋸で切断することに。

 

 

 分割完了後、屋根の左右部分は、キャブ側面の上端にはんだ付け。

さらに切断エッジに沿って、φ0.5mmの真鍮線を屋根上に取り付ける。

 追加の加工として、0.5mmの真鍮板から長方形の小片を切り出したものを左右や屋根の下側にはんだ付けしておく。

この4つの小片が屋根本体を支える土台になる予定

 

切断した屋根本体の後端にキット付属の端梁を取り付け。

キャブ本体に仮置きするとこんな感じに。

当然、屋根その他の歪みは繰り返し調整することでできるだけ隙間がなくなる様に繰り返し現物調整を実施してみた。
 
ぱっと見では分割屋根であることはわからない程度にはなったかと。
この後は前後方向の位置決めをするためのストッパーをどこに儲けるか?
屋根ルーバーの取り付け前に屋根の切り抜き加工をどうするか?などまだまだ考えないとならないことはたくさん。
 
知恵の輪の様な配線、配管加工も良いが、やはりモデルとして一番目立つ外観周りの加工は”やった感”があって面白いところ。
この後も引き続き屋根周りの加工を完了させる予定です。
 

 

 

 

 

 

 

 先日、いつもの様に真鍮線のハンダ付けを行うべく、いつも使用しているハンダこてを使用した。

使用しているのは石崎電気製の100wタイプ。

 

容量も大きく、真鍮板や大きめのパーツのはんだ付けが非常にやりやすい代わりに、電源投入後の昇温、切断後の冷却には少し時間がかかる。

 ハンダつけを行う際には、あらかじめ作業の3、4分前に電源を投入する様にしているが、この日は5分たってもハンダが溶ける気配がない。

手をかざして(火傷するので当然、絶対に触らない)温度を確認すると、こてが温まっていない様子。
 電源が入っていないのか?そもそもコンセントが抜けていないか?などを確認すること数分。どうやらはんだこてのヒータが壊れてしまっている様子。
 
幸い、石崎電気のハンダコテは分解、ヒータ交換ができる様設計されており、交換部品もオンライン購入が可能。
値段を調べるとAmazonで700円弱。早速購入して修理作業を行うことに。

https://www.amazon.co.jp/dp/B002P7PWMW?ref=ppx_yo2ov_dt_b_fed_asin_title

特にヒータ交換手順などは手順書が用意されているわけではないので、現物を見ながら作業を実施。

せっかくなので以下に作業フローを。

 

ステップ1 ヒータ部のネジ取り外しと小手先の取り外し。

ヒータが入っている膨らみ部分のネジを緩める。小手先もこのネジで固定されているので、ネジを外すと小手先も引き抜くことができる。

 

ステップ2グリップ部のネジの取り外し。

このネジ自体はグリップの緩みを防止するためのもの。

なぜかこのネジはドライバーでの取り外しができないタイプ。分解は感電、漏電などの危険性もあるので、無闇に誰にでも勧められるものではないとしても、修理前提の設計であるのになぜこうなのだろう?

しょうがないのでニッパーを使って力づくで抜き取ることに。

 

ステップ3 ヒータの取り外しと交換

グリップ部を固定しているピンを抜いたあとは、グリップ自体を回して分解を進める。

グリップ内部にはAC電源とヒータを接続するためのボードが。

表裏に分かれて固定されているヒータからの線を、ボード上のネジを緩めて取り外す。

 

 

ステップ4ヒータの交換

 ヒータ部は、先ほど小手先を外した先端部から配線ごと引き抜ける。

 この時、ヒータカバーを多少力を入れて開く必要がある。

↓上が取り外した故障品。下が交換用に準備した新品

 

ステップ5 ヒータの差し込みと配線の固定

 ここは分解の手順の逆をするだけ。

新品のヒータの配線2本を元の状態になる様にネジで締め付け固定。

長すぎるワイヤはニッパで切断しておく

 

ステップ6 小手先の取り付けと動作確認

最後は小手先を再度取り付け、ネジを閉めて固定する。

最後に電源を入れて正常に小手先が加熱することを確認する。

 

ハンダコテというのは構造が簡単なこともあり、修理作業の難易度は決して高くはないが、

ちょっとした修理で愛用の道具がまた使える様になるのは嬉しいことで。
 

4月も下旬。陽気も良くなり工作日和の今日この頃。

週末の買い物、もろもろの家事などをこなしつつ、模型作成の時間を捻出。

引き続き、C55のキャブ下の加工を実施。

 

 ブレーキ関連の圧縮空気を運転席内の制御弁の指示に合わせて、経路ごとに供給をする空気分配弁。

正直未だに全ての機能を理解はできていないが、少なくとも空気分配弁(ET6型と呼ばれるらしい)につながる主な配管の理解は行えたので、それらしい配管加工を実施することに。

空気分配弁自体はすでに本体に取り付け済みであったが、一旦取り外して加工をすることに

 

この空気分配弁には合計5本の吸排気管が接続されているが、真鍮線を芋漬けでは強度不足+見た目的にもイマイチと思われるため、真鍮線差し込み用の穴の加工を実施することに。

下の写真左側には、いずれもブレーキ弁御台に繋がる3本、右側にはブレーキ管、ブレーキシリンダ管につながる2本が繋がっている(らしい)

それぞれの真鍮線を固定後、それらしい方向に折り曲げて完成。

最初は接続先の加工も行うことを想定していたものの、車両下回りや、テンダーに搭載のDCCデコーダからの配線配置との干渉がありそうなためスッパリ諦めることとした。

 

↑が取り付け状態。

よく見ると一番上の配管が若干曲がってしまっているので後ほど修正をする予定。

この後はもう少しキャブ周りの配管を続ける予定。

 

 

 なかなか進まないC55の作製。ほんの少しだけアップデート。
最近、以前に増して加工が進まない理由は、蒸気機関車特有の複雑な配管の理解に時間がかかること。

蒸気機関車機関車に限らず全ての鉄道車両にはブレーキ装置と、ブレーキ動作に関わる空気配管が存在する。
 蒸気機関車の場合、公式側キャブ下=運転士席の下あたりに複雑に絡み合う様に配置されている配管類。

色々調べてみると、構造はそれなりに複雑で、
•ブレーキ用の圧縮空気を作る機構、
•ブレーキ用の圧縮空気の圧力を調整する機構、
•機関車自身の動輪、テンダー車輪のブレーキを制御するための空気配管。
•牽引される車両に供給、牽引車両のブレーキを制御するための配管。
•上記のそれぞれに圧縮空気を分配する弁装置
などが狭いエリアに密集している。

模型製作の場合、見た目と難易度、スペース的制約などで一定程度の省略は必要。
とはいえ、せっかくなので実物の理解、再現を目指したくなる気持ちも。

順番に配管の位置、取り付け方法は、考えていくこととして、今回はランボード下の二本の配管の取り付けを。


 上の写真の奥側=火室よりの配管はブレーキ管といって、機関車先頭まで伸びる管。

目的は機関車が逆進運転をする際に、牽引される車両に圧縮空気を供給するもの。
 手前側=はブレーキシリンダー管といって、機関車の動輪のブレーキを制御するための空気管。
この管は写真左側はボイラー下に潜り込んで行くが、右側はキャブの後端付近で機関車非公式側に延び、その後テンダーに接続。テンダーのブレーキシリンダに圧縮空気の供給をするもの。
途中で空気分配器からの配管と、T型に接続されているもの。

下の写真、右側に見える塊が空気分配器。

工作のポイントとしてはランボード下にぶら下がる様に取り付けられる状態の再現として.0.1mm銅板を、約1.5mmの幅にカット、真鍮線に巻き付けてステーの表現を(ランボード下なのでロストパーツを使うほどでもないかなと。。)

外見的に目立つキャブしたの配管折り曲げはL字ジョイントを使用してアクセントに。

ブレーキ管、シリンダー管はそれぞれキャブ後端、ブレーキ弁御台下あたりに伸ばして終了。


この後は分配弁に接続される各種配管に取り掛かる予定。。




大分期間を開けてしまったC55の作成。

Smile DecoderをつかったDCC化の準備も一応ひと段落したので、そろそろ車両加工を再開。

本体上回りは80%程度は完了したので、これからは下回り。

そのなかでも最も難解なキャブ下あたりの配管に取り掛かることに。

 

蒸気機関車のキャブの下には、

・ブレーキ関係の圧縮空気の流れる配管類(主に運転席側)

・テンダーからの給水管

・キャブ床を貫通してテンダー方向に供給される蒸気暖房管

・その他車輪冷却用の水が流れる配管など複数の配管がジャングルジムさながらに取り付けられていて、すべてを理解するのはかなり困難。。

 

日々配管図をたどっては、写真と見比べる。そんな作業をしているうちに工作作業へのモチベーションが消費されて中断。

そんな日々が続いていたので、一念発起!

すべてを理解、把握するのは一旦あきらめて、理解できたところから作業をする方針に路線変更。

 

今日までに進んだ点は…

 

①泥タメと前後の配管

  
ボイラーの底に沈殿する汚れ、ごみ、残渣を少しずつ排出するための装置。
↑の写真、ランボード下にある縦長、円柱状のタンクと、そこにつながる配管類。
ボイラーの底から泥タメに向かって水が流れる配管が泥タメ左側。
泥タメにボイラーからの”水を流すかどうか”をコントロールするために供給される蒸気用の管が泥タメ右上から右方向、キャブ下に伸びる。
実物は”空気圧縮機”へ供給される蒸気が分岐、泥タメに供給され、排水On/Offを同時にコントロールしているらしい。

 

②チリコシと、給水管

チリコシというのは、読んで字のごとく、テンダーから給水ポンプにつながる配管の途中で、チリ=ゴミを除去する装置。
C55だけでなく、日本の制式蒸気機関車では大体同じ位置=助手席側、キャブのちょっと前、ランボード下が定位置。
 
模型の場合、実部の車両以上に急なカーブ、勾配を走行するため、従台車との干渉を気にする必要がある。
横から見たときにはそれほど差はわからないが、模型、かつガニ股設計の16番では特にこのあたりの微調整は重要。

従台車との干渉を避けるため、実物写真の通りに設置するわけにもいかず、実物合わせでの位置決めをすることに。

固定は↓の写真の通り、火室いたに貫通孔、チリコシ裏にφ1.0㎜の半穴をあけて真鍮線で固定することに。

この辺りは模型と割り切ってやりやすい方法でよいのではないか?という判断。

 

世の中には、こうした”ズル”を許さず、実機と同様ランボード下からの固定用ステーを自作される方もおられるようではあるが、

そろそろ作成開始から1年を経過するC55、このくらいのデフォルメは許容ということで。。

 

この後は助手席キャブしたの蒸気暖房管、二子三方弁周りの水配管。

運転席側のブレーキ類配管に作業を進める予定。

気候も良くなり積極的に模型活動も活発化させたいところであります!

SmileSound サウンドフロー最終!

悪戦苦闘を続けてきた SmileSound のサウンドフロー編集も、今回で一区切りに!

これまで段階的に調整を行ってきたが、結局目指していたのは

 「超低速域のタイミング」と「中高速域のタイミング」のバランスをどのようにとるのか?」

という点。


これまでの流れを再整理すると↓のようなトライ&エラーでした。

Step1:オリジナル状態

・よく出来ている。音をつけたい!という点であれば十分!

・とはいえ、加速/減速で音量差なしが気になる
・ドラフト音と動輪動作にズレがある
・特に低速域で周期の違和感が大きい


Step2:減速判定の導入

減速時専用の音量ファイルを用意し、サウンドフロー側で加減速判定を実装。

減速時は小音量ドラフト再生とすることで、走行感は大きく改善した。

完全絶気=無音状態の再現も考えてはみたが、サウンドフローファイルの上限(128アイテム=128指令という上限設定あり)があるため、ここは断念。


Step3:STMSパラメータ調整

次にSTMS多点化による精密同期をトライ。しかし、いろいろと課題があり、

・調整点の増加 = フローファイルの上限制限
・調整難易度 = 超低速<>低速<>中速<>… という各ステップの切り替えタイミングでのドラフト音間隔のずれを違和感のないレベルまで調整するのは困難

ということで、ある程度まで追い込めたものの採用は断念。


Step4:超低速域の固定周期化

そこで発想を「えいっ!」と転換。

超低速域では STMS を参照せず、ドラフト間隔を固定値とする方式へ変更した。

■ 始動直後4拍

STMS1:1200
STMS2:1200

最初の4拍は1200ms間隔で一定周期で安定再生。

つまり、動輪1回転で4800ms=4.8秒。
計算すると約4.12km/h相当の速度で走行を開始する状態を再現できる。


■ 4拍後の設定

ここからはSTMSの機能を使用して、モータ回転状況に応じてドラフト音間隔を自動調整してもらうことに。

4拍の再生が終了した段階で、STMSを以下のように設定しなおし。

STMS1:1000 > 約5km/h相当
STMS2:80 > 80 × 4 = 320ms/回転 → 約62km/h相当


おまけ:停止時および再始動処理

こまかな点の補足ではあるが、始動時の“固定周期ドラフト音設定”は、始動時だけでなく、

停止 → 再始動後も必ず同じフローを通るようサウンドフローファイルを再設計した。

・再始動時は必ず“4拍固定”から開始

というフローを追加して、再始動時も安定して、慎重さの漂うゆっくりとしたドラフト音の再現を行えた。


最後に

大分時間がかかってしまった SmileDecoder のサウンドフローのトライ。

100点満点とは言えないものの、それなりの設定ができた(と思うことにする)。

ESUなどSmileSoundに比べて高性能かつ倍以上のコストのかかるデコーダを使用すれば、完成度の高いサウンド表現もできるようではある。

完成度を高める!ということだけを目的とするのであればESU一択かもしれないが、自分の場合は

 ・初めてトライするSmileSoundを理解すること
 ・少しでもうまく工作すること
 ・できるように勉強すること自体が目的

まだまだ完璧な理解には至っていないものの、今回の調整は一旦ここまでとしようと思う。


しばらく停滞してしまっている本体の加工作業を再開し、出来たら暖かくなるころまでには走行できる状態まで持っていきたい。

その後は、

・中古D51の再生+DCC化
・こっそり購入済みのC62のディテールアップとDCC化
・中古で購入のラインゴルト客車のDCC室内灯化

やりたいと思っていることはいっぱい。
問題は時間とやる気。

ぼちぼち頑張っていこう。

サウンドフロー再設計の途中経過

(減速ラベル〜STMS検証、その先へ)

最近ブログ更新が止まっていました。

蒸気機関車のドラフト音と動輪・ロッドの動きを、できるだけ一致させることが目標ですが、DSSPに用意されているパラメータ調整で対応するには、技術的な限界も見えてきました。
「完璧な同期」を目指しているわけではありませんが、DSSPやサウンドフローを見ていると、

もう少し何とかできるのでは?

という感触もあり。

そこで現在は、ChatGPTに相談しつつサンプルフローの再設計を進めています。

一度手を入れ始めると想像以上に奥が深く、トライ&エラーの連続。

ブログ更新が止まっていた一番の理由は、サウンドフローの見直しトライに時間を取られていたためです。


■ 今回の再設計の本質

目標は大きく2つ。

  1. 加減速状態に応じたドラフト音ボリュームの制御

  2. ドラフト音と動輪動作タイミングのマッチング

どちらも「完璧」ではなく、「それらしく自然に聞こえること」が目的地です。


■ 悪戦苦闘の流れと、構造の変化

細かな試行錯誤は多数ありますが、構造の変化という観点で整理してみます。


1.出発点=オリジナル状態

オリジナルのフローは非常によく出来ています。

【オリジナル構造】

始動検出 → 速度段階判定 → ドラフト再生

 

基本は速度依存のみ。加速・減速の判定はありません。

ただし気になってきたのが、

・減速時も加速時と同じドラフト音
・超低速域の表現が単調
・動輪回転とドラフト音タイミングが完全には一致しない

という点でした。


2.減速判定の導入

2-1 減速専用ラベルの追加

まず着手したのは、減速時の音量抑制。

発想はシンプルで、

減速時だけ別ラベルへ分岐し、別音声を再生する

という方式。

 

【減速判定追加構造】

始動検出 → 減速判定 → 段階判定 → 再生

構造分離自体は比較的スムーズに実装できました。


2-2 3状態化(加速/惰行/減速)+ボリューム制御

さらに発展させ、

  • 音声ファイルは共通化

  • 状態に応じて再生ボリュームのみ変更

という方式も検討。

 

【3状態制御構造のフロー】

始動検出 → 加速/惰行/減速 判定 → ドラフト再生(音量制御)

 

メリットととしては以下の2点

  • 音声ファイル数削減

  • フロー行数節約

ここで音量制御は実現!こできるはずがこれも挫折。。

再生ボリュームをサウンドフロー内で個別調整はできない仕様。うむむむむ。


3.STMSによるタイミング調整

 ドラフト音の再生間隔は STMS という仕組みで制御されています。  
STMS1 では起動直後、STMS2 では最高速時のドラフト間隔を指定し、  
中間は速度に応じて線形に補間されるというシンプルな機能。

 

ただし、このシンプルさの影響で両端を合わせても、中間速度でズレが発生するというのが問題点。

原因として考えられるのが、

モータ特性が完全な線形ではないこと( 特に超低速時)

つまり、
線形補間では線形ではないモータの特性には物理的に追従できない。

「端を合わせると中央が狂う」状態です。

 この状態を自分なりに理解を進めると、↓のようなことが起こっているものと推定。

 

赤い線が電圧に対してのモータ回転=車両速度。起動直後=超低速時とそれ以降=中速運転時では、入力の電圧に対してのレスポンスに差がある。

仮にSTMS1を1000ms=初期ドリフト音1秒間隔 とすると、速度20以下ではズレが大きくなる=ドラフト音のほうが早すぎる

STMS1を1500msにすることで、速度20以下でも音と動作のズレは少なくなる、が、速度20を過ぎてからの音ズレ (ドラフト音が遅い)が顕著に発生する。

非線形のものを線形で補間はできない!が。ここまでのまとめ。

 


3-1 疑似多点設定トライ

非線形のモータ特性に合わせて追従するには、何らかの方法を考えなければいけない。

柔よく剛を制すの精神。

 

理想状態として考えたもの: 
 速度ごとに非線形で間隔設定したい。

 例:速度10で間隔1000ms 速度20で 間隔800 速度40で 間隔400 速度60で 間隔200。。。 といった非線形調整。 
 これができれば簡単に音と動作を一致させられる!と思ったがSmileSoundeではこの機能は実装なし。
 ということで早速挫折。

 

その後、疑似多点設定トライのために行ったのが、速度帯多段化。
 起動直後=超低速 /低速 /中速/高速の4段階に分離。
 各々の速度帯で、STMS1とSTMS2を再設定したらなんとかなるんじゃないか?というトライ。
 結果から行くとSmileDecoderではSTMSの設定変更は可能だが、どうしても速度帯変遷の際にドラフト音再生間隔のズレがめだってしまい、実装は断念。
 イメージでは↓のような調整ができないかとトライしたが、やはりスムースな速度帯の変遷の難易度が高くNG。 いや、もう少しやればもしかしたらなんとかなるかも。。。。ならないかも。。。

説明
 超低速から、高速の4段階にそれぞれSTMS1,2を設定、異なる傾斜のドラフト間隔/速度ライン(破線)を作成。
理屈的には、実車の速度似合わせ、ちょうどよいタイミングで超低速>低速>中速>高速のSTMS設定に切り替えれば違和感なくドラフト音のタイミング切り替えと調整ができる。はず。。なんだけどなぁ。
 

 


4.起動1拍目の独立化(現在検討中)

ここで発想を再度転換。

本物の蒸気機関車では、始動時は急激に蒸気を入れないはず。

最初の一拍目から2拍目には間があり、2拍目以降でそこから徐々に加速する状態を再現するだけでいい。

そこで考えているのが

1拍目のみ独立再生
2拍目以降はSTMS管理

という構造。

【1拍目独立構造】

始動検出 →  0.5秒後に1拍目再生 →  1秒後にSTMS設定 → 加速/惰行/減速 判定 → ドラフト再生

この方法であれば、1拍目から2拍目の長い間隔はSTMSの影響を受けずに固定値で設定できるはず。

で、今はこのフローを作成中。


■ 今回の再設計の本質

今回やっているのは、

「音を増やす」作業ではなく、

状態判定に基づいて音を制御する仕組みづくり

です。


■ 見えてきたこと

今回の見直しで明確になったのは、

・ラベル設計の重要性
・多段化の限界
・線形補間のクセ
・状態別ボリューム制御の可能性

まだ完成ではありません。

しばらく試行錯誤が続きそうですが、
ChatGPTの助けも借りながら、引き続き挑戦していきます。

なかなか終わりの見えない、SmileSoundサウンドフローの調整作業。

 

本日までの進捗を。

1.やっていること。

何をしているかというと。具体的には

①減速時のドラフト音のボリューム小化 > こっちは成功

②速度別のドラフトとロッド動作同期の改善 > 苦戦中

という状況。

いかに本日までの悪戦苦闘のまとめを。

 

2.なぜ減速時もドラフト音が大きいのか?

 まずは、減速中でもドラフト音がおおきい問題について。

加速時も減速時もドラフト音のボリュームが同じというのは、オリジナルのサウンドフローでは加速時と減速時の判別が行われていないことが理由。

さっそくサウンドフローを開いて斜め読み。当然すぐに100%の理解はできないものの、大まかに理解を。

 

 オリジナルフローは大まかに以下の流れとなっていることがわかった。

1.停止⇄低速(A)⇄中速(B)⇄高速(C)⇄超高速(D)の、5つの状態(ラベル)判定をしている。

2.それぞれに用意された音声ファイル(各4ファイル)を再生している。

3.音声再生完了後には、速度検出を行なって結果に応じてラベル間を移動している。

4.なお、低速(A)の状態からは、”減速+停止直前速度”の検出で、ブレーキ音再生をしている。

 

フローを理解すると↓の通り。Labelという塊があって、ドラフト音を鳴らしている。Labelの最後で条件判定を行い、次はどのLabelに進むのかを判断するというもの。

3.どうすれば減速時のドラフト音が調整できる?

 減速時のドラフト音を小さくするためには?

簡単に考えれば、 加速時と減速時で再生する音のボリュームを変えれば良い。

ただし、DSSPの仕組みでは一つの音声ファイルのボリュームを大きくしたり、小さくしたりするという調整はできないので、

加速時用のドラフト音とは別に、減速時用のドラフト音のファイルを準備する。

 

4.サウンドフローの書き換え内容は?

 ここが少し面倒。 

もともとのラベルのながれは

  停止⇄低速(A)⇄ 中速(B)⇄ 高速(C)⇄ 超高速(D)

上下のLabel間を移動するというで至ってシンプルなもの。

 

これを↓のように変える必要がある

  停止→加速・低速 → 加速・中速 → 加速・高速 → 加速・超高速

        ↕         ↕      ↕       ↕

  停止←減速・低速 ← 減速・中速 ← 減速・高速 ← 減速・超高速

 

加速状態と減速状態を分離、それぞれに低速から超高速のLebelを準備する(加速用Lebelは元のままでOK減速用を追加)。

また、Lebelの最後に”加速状態を判定”する条件を追加し、次に進むLebelを判定させるフローを追加しておく。

 

減速用のラベルの中では加速用と同じく4個の音声を再生させるが、減速用の音声ファイルはオリジナルの音声ファイルをベースに、外部ソフトで音量調整を実施し、別ファイル名でDSSPに読み込ませておく。

 

5.ChatGPTによるフローファイルの作成

 上記のオリジナルファイルを元に希望する内容に書き換えれば良いのだが、手作業でのフロー作成はミスをする可能性も高い。

そこで活用したのが、ChatGPT。

一通り上記の説明とオリジナルのフローを貼り付けて「そのまま使えるフローファイル作ってくれたまえ!」

で、目的のファイルが1発で作成完了!というわけにはいかず、何度かの修正とリクエストを繰り返して完成したのが↓

 

 

 加速時用のLabelの最後に減速状態にある場合の判定フローが追加されている

 減速状態にあると判断されると”GENSOKU”のLabelに進行

 

"GENSOKU"Label内では最初に速度判定を実施して、速度にあった”Laberに移行する仕組み。

なお、減速状態ということで、絶気運転を意味する”ZEKKI”というLabel名で統一している。

 

で、出来上がったものが↓

 

冒頭の宣言の通り、目的通り加速時と減速時の音声ファイル切り替えは成功。

さらにさらに実機に近づけるのために、絶気状態再現として完全無音惰行なども再現できそう。

 

さて、もう一つの課題、ドラフト音とロッド動作タイミングについては以前苦戦中。

上記の動画を見ても途中でリズムがずれる状態が聞こえてしまっている。

これまでの紆余曲折をまとめるだけで大変な労力になるので、この次は奮闘の結果をまとめる予定。。

 

 

 

先日までに C55 用の汽笛ファイルの編集、入れ替えを完了し、そろそろ本体の加工を再開したいところではあるが、もうしばらく SmileSound の微調整を続けることにした。

SmileDecoder の調整には、これまでと同じく DSSP を使用。
音声ファイルの差し替えやタイミング調整は一通り行ってきたものの、動作を見ているうちに、どうも気になる点が増えてきた。

今回のブログは100%備忘録レベルのため、テキストやまもり。画像なしでご容赦ください。


気になっている点①:減速時のドラフト音

加速時も減速時も、同じボリュームでドラフト音が鳴り続け、停止直前まで力強いドラフト音が再生されている。

車で例えると、
エンジン音とブレーキ音が同時に鳴っているような状態。
さすがに違和感が。。。


気になっている点②:ドラフト音とロッド動作のズレ

もう一つは、ドラフト音と車輪の動き、つまりロッド類の往復動作とのタイミングのズレが、依然として大きいこと。

特に中速域で、このズレが目立つ。


これら二つの現象については、「模型だから」で目を瞑ることもできる。
ただ、実物との乖離があまりに大きく、自分で何とかできないものかと思い、DSSP のサウンドフローの仕組みを少し整理してみることにした。


DCCサウンドフローの仕組み

DCC におけるサウンド再生の流れを簡単に整理すると、以下のような感じ。

  1. コマンドステーションでファンクションキーを押す

  2. ファンクション番号がデコーダに認識される

  3. 対応するサウンドフローファイル(CSV)が参照される

  4. フローに記述された内容に従って音声ファイルが再生される

基本的にはかなりシンプルな仕組み。

例えば、
F2 には汽笛(長)の CSV が割り当てられており、
走行中のドラフト音は F1 に割り当てられた「蒸気.Drive.csv」で制御されている。


ドラフト音用サウンドフローの概要

走行中のドラフト音を制御しているのが、F1 に割り当てられている「蒸気.Drive.csv」

この機能は、デコーダに電源が入った時点から有効=起動する設定になっている。

サウンドフローは CSV フォーマットで記述されており、テキストエディタで編集可能。
中身はシークエンス形式になっていて、上から順に処理を実行し、条件判定によって分岐したり、音声ファイルの再生を指示したり。

フローの中では、「ラベル」と呼ばれるブロックを条件に応じて行ったり来たりする構造になっている。

ドラフト音まわりの大まかな流れを整理すると、だいたい次のような感じ。


ドラフト音制御の基本フロー(概略)

******************

  • スタート:停止状態
     → ドラフト音なし

  • モータの回転を検出
     → 低速運転モード
     → 低速用ドラフト音を再生

  • 速度が 30 を超える
     → 中速運転モード
     → 中速用ドラフト音を再生

  • 速度が 80 を超える
     → 高速運転モード
     → 高速用ドラフト音を再生

  • 速度が 80 を下回る
     → 中速運転モード
     → 中速用ドラフト音を再生

  • 速度が 30 を下回る
     → 低速運転モード
     → 低速用ドラフト音を再生

  • さらに減速して停止
     → 停止状態
     → ドラフト音停止

******************

実際には WAIT や細かな制御が入っているが、
基本的には「速度帯」に応じて再生するドラフト音を切り替えている、という理解で良さそう。


現在の課題と考えられる対策

課題①:減速時もドラフト音が大きい

原因として考えられるのは、

  • 音声ファイルが速度帯ごとにしか用意されていないこと

  • 車両が加速中なのか、減速中なのかを判定していないこと

このため、減速中であっても、その速度帯に対応したドラフト音がそのまま再生されてしまう。

対策としては、

  • 加速/減速の状態判定を追加する

  • 減速時にはドラフト音のボリュームを落とす

といった方向が考えられそう。


課題②:ドラフト音とロッド動作のズレ

こちらは、

  • 現状の 4 段階の速度帯分けではピッチ調整が粗い

  • 特に中速域で、音と実際の走行速度とのズレが目立つ

といった点が原因が想定される。

音声ファイルの再生ピッチについては、もう少し理解が必要そう。


まずは課題①から

課題①については、仕組みもだいぶ見えてきたので、まずはこちらから試してみることにした。

とはいえ、サウンドフローを手作業でいじるのはなかなか面倒。
そこで、ChatGPT に手伝ってもらいながら、フローを組み替えてみることに。

さて、うまくいくだろうか??

悪戦苦闘の結果は次のUpdateで。。

 

大分長くブログの更新期間が開いてしまいました。。

 

趣味以外のもろもろ(実家のPCの修理とか、バラ剪定とか、リビングの椅子の修理とか、仕事とか。。)があり、あまり模型いじりにかける時間が取れない日がつづいておりました。

 

とはいえ、何もして居なかったわけではなく、デコーダ書き換えを行いやすくするための延長ケーブルの作成とか、SmileDecoderのCV値いじりなど、ぼちぼちと取り組んでおります。

もう一点、最近遊んでいるのがSmileDecoderに入れる音声ファイルの編集。

今回は、音声ファイル自体の調整と入れ替え作業の流れを整理。

 

 

 SmileDecoder用には様々な音声ファイルが用意されておりDesktopstation HPからDLが可能。

今回使用しているC57/C59用のファイル内には、汽笛やドラフト、発電機動作音などの各種の音声ファイル(中身は各種のWav形式の音声ファイル)、再生のタイミングや順序を記載したサウンドフローというファイル(中身はテキストベースのcsvファイル)が含まれている。

このC57/59用ファイルは、同じC型蒸気のC55に基本的にはそのままでも使用できる。

 

 以前のブログに記載した通り、音声ファイルごとの音量や、音程(イコライザ)調整はDSSPという各種データの調整機能付き、デコーダ書き込みアプリにて調整が行える。

ただし、音声ファイル自体の調整はDSSP上では行えない。

 

今回、C57/59用ファイルをそのままC55に適用してみたところ、期待以上に良い感じの音声再生が行えて入るのだが、一つだけ気になる点が。いわゆる”汽笛音”

 

 オリジナルのファイルには、出発前に発する ”ぶぅっおー---------!っっ…” というながーい汽笛音”と、

走行中や入れ替え作業開始前などに発する”ぶぉっ!”という短い汽笛音が準備されている。

 今どきの復活蒸気では、出発前のセレモニーとしてながー---い汽笛音を鳴らすことも多く、見ている我々の”わくわく感”を引き起こすスイッチとして大いにその効果を発揮してくれているが、現役時代の蒸気機関車では、そんなに長い汽笛は忙しい出発作業の合間の時間と蒸気の無駄遣い。

実際には出発前の汽笛だって、もっと短時間の”ぶっおおーっ!!”だったはず。

 

しかもC55といえば、九州や北海道の普通列車、客貨混合列車の牽引や、せめて急行列車の牽引が主業務だったはずであり、東海道、山陽本線の優等列車牽引を任されたC59や、それを引き継いで牽引をしたC57(C57は普通列車も多いはずだけど)ほど華やかかつ芝居がかった汽笛はちょっと似つかわしくない感じがする。

 

ということで、さっそく”ちょっと短い汽笛音”の作成にトライというのが今回の流れ。

(さらに発展すれば音程の調整や、自主録音音源の使用などもできるかと)

 

では早速、作業手順を

①まずはDSSPの中の音声設定の仕組みと音声ファイルの取り出し方

 DSSPアプリの左下側に”サウンドフロー”のリストと、右下側には”ファイル名”がリスト表示されている。

 左側のサウンドフローというものが、音声再生の順序、タイミングを設定しているもの。

 ちょっとしたスクリプト=フロー形式のプロラムになっている。

 これを書き換える、入れ替えることで様々な音再生機能を追加できるが、
 今回の主目的”音声ファイルの更新、置き換え”とは主旨が異なるので今回は割愛。

  右下のファイル名を見ると、C57汽笛.wavとかそれっぽい名前のファイルが見つかる。

 まずはこのファイルを取り出して長さ調整ができるかトライ。やり方はとてもシンプル。

 ファイル名の上で、”右クリック>エクスポート”で、保存場所を指定すればよい。

 PCの指定フォルダを確認すると、保存された”c57汽笛.wav”が見つかるはず。

 ちなみにファイルの更新や追加のときは反対の流れの作業をすればよさそう。”右クリック>インポート”でファイル選択。

 

②音声編集ソフトの準備。

 これまで動画の簡単な編集作業をPCで実施した経験はあるが、音声ファイルの編集は初の作業。

 本格的な編集には知識が必要そうだが、今回の目的”ファイルの短縮”位であれば音声ファイルの”部分切り出し、貼り付け”ができれば何とかなると予想。

 今回使用した音声編集ソフトは Audacityというもの。

特にこだわりもないので、インターネット上で検索しておすすめに出てきたものをDL。もちろん、お気に入り、使い慣れているソフトがある場合はそちらでどうぞ。

 

③音声ファイルの読みこみと編集

 Audacityのインストールが完了したら後は、”①”で保存した”C57汽笛.wav”のファイルを開く。

どうやら、オリジナルの汽笛ファイルは全部で11秒ちょっとの長さ。

”ぶっ”っと鳴りはじめて”おぉぉー-・・”という余韻に入る音声ファイルの中心部分は1秒~8秒のあたり。

つまり7秒前後の長ーい汽笛音ということ。

 今回は九州の普通列車、客貨混合列車などの生活のなかにいた蒸気機関車の音が目標なので、長くても4,5秒でもよいのかなと。

 

 ↓C57_汽笛.wavの中身。

 

 

適当にソフトをいじっていると音声ファイルの一部削除、コピー、貼り付け作業は簡単にできる様子。

切り取りたい部分をカーソルで選択(始点から終点を選択)し、右クリックでメニューを開いて”切り取り”をするだけ。

汽笛音はある程度均一な音が連続して再生されているだけのため、多少適当に切り取ってしまっても特に違和感はなさそう。

前半部、中盤部、後半部から少しずつ部分切り取りを行って作ったファイルが↓

参考までにオリジナルのファイル(下)と並べるとこんな感じ。

ファイル全体の長さが約11秒から約7秒に短縮、汽笛吹鳴のメイン部分は7秒程度が5秒程度まで短縮できた。

せっかくなので音声ファイルをuploadしてみようと思ったがアメブロは音声ファイルを受け付けていないようなのでギブアップ。

 

④新音声ファイルのDSSPへの読み込み

 新しく作成した音声ファイルだが、元のファイルを上書き保存してしまうのが一番手っ取り早い更新手順。

 が、せっかくなので、新たにC55_汽笛7s.wavという名前で新しくファイルを作成したので、そのファイルのDSSPへの読み込みと、サウンド設定をすることに。

 読み込み作業は書き出し作業と同じく簡単。

 DSSPの画面、”ファイル”のリスト上で”右クリック>インポート” を選択して、目的のC55_汽笛_7s.wavを選ぶとすぐにリストに表示追加される。これでDSSPへの読み込みが完了。

 

 最後の手順は”サウンドフロー”の設定変更。

オリジナルの設定では依然として、”C57_汽笛.wav”が再生されるように設定されているので、これを”C55_汽笛_7S.wav”に変更を。

実際の作業手順は

 画面左下のサウンドフローのリストから”汽笛.長.csv”を選択し、画面上側に表示されている音再生の行 ”C57汽笛.wav”をダブルクリックからファイル選択メニューに入って”C55汽笛_7s.wav”に変更する。

 

↓C55汽笛_7.wavの選択画面。

 

以上でファイルの更新+設定変更は完了。この後はデコーダ書き込みしてのモンストレーション。

といったこころで今日の作業はおしまい。

 

今回の作業も音声ファイルの編集などの初トライの内容ではあったが、比較的簡単に思った通りの作業を完了することができた。

音源自体の自主作成(録音からノイズ除去など)はさらに高い技術が必要なはずではあるが、このくらいの作業であれば”なんとかなる”もの。

この後はCV値の最終調整作業に進める予定。少し時間がかかりそうな雰囲気ではあるがぼちぼち頑張ろうと思う。。