デスクトップステーション株式会社 Principal EngineerのYaasanです。
SmileSoundのサンプルのサウンドデータは、大原則としてモータ制御とサウンドの両方を同時に制御する前提で設計・作成されてます。ここでいうのは、「SmileSound」自体の話ではなく、「SmileSound用のサンプルのサウンドデータ」の話です。SmileSoundは、サウンドデータに記述されたプログラムに沿って動く装置であって、車両やサウンドの動きを決めているのはサウンドデータになります。SmileSound自体の問題ではないので、そこは誤解をなさらないようにお願いいたします。
なぜ、サウンド部分のデコーダと、車両を動かすモータ制御用デコーダを同時に動かす前提に鳴っているかというと、音を出すタイミングを調整しているためです。具体的には、スキール音や緩解音などです。
具体的に、見ていきましょう。E131系日立SiC VVVFサウンドデータのdrive.csvを見てみます。見てもらいたいのは赤い線で示した部分です。サウンド専用デコーダにSmileSoundを使用し、モータデコーダを別の製品とした場合に問題が出る要因となる箇所になります。
![](https://desktopstation.net/blog/wp-content/uploads/2024/08/image-10.png)
0行目: 走り出さないように、上限速度を0に設定してます。つまり、この命令が効いている間は、車両は走り出しません。なぜ走らないようにしているかというと、次に説明する緩解音を出してから走り出したいからです。つまり、別のデコーダでモータを動かす場合には、機能しません。
5-6行目: ブレーキ緩解音を出します。走り出す時に大抵の電車・車両はこの音がします。これがリアルな雰囲気を出すうえで重要になります。ブレーキ解除しないのに走れるわけがないので、止まってる時に鳴らさないといけません。
7行目: 速度上限を解除(=最大の速度に設定)しています。これで車両はコマンドステーションの指令どおりに走り出します。
もし、どうしてもモータデコーダとサウンドデコーダを分けたい場合は、上記の赤線で示した部分を全て削除し、走り出す前に手動でファンクション操作でブレーキ緩解音を自分で鳴らすようにすればいいわけです。
E131系サウンドデータに限らず、他のサウンドもほぼ同じ構造をしていますので、ご参考としてください。
いかがでしたでしょうか。SmileSoundのサウンドデータは、プログラミングによって自由に車両の動きを変えることができます。うまく活用し、お気に入りの車両のディテールアップをしてみてください。