Throttle & FlapControl

first throttle

初めのスロットルの製作は

 製作初期のスロットルは市販の可変抵抗器を使い、ヨークとの接続はUSBコネクタを使っていました。Saitecヨークはすでに内部の基板を交換していました。USBコネクタを 4ピンのコネクタとして利用しただけで、内部の信号はシリアル信号ではなく、VccとGNDと電圧値を伝えるアナログラインでした。
レバーを両側からウレタンスポンジではさんで 動きが重くなるようにしていました。ケースの底板を伸ばして、ヨーク本体の下にはさんで固定しています。
スロットルレバーの可動範囲はこのときは90°でした。

 そのあと、フラップレバーを加えました。フラップレバーは可変抵抗器ではなく、 ロータリースイッチと抵抗器でクリック感ができるようにしました。フラップの状態がレバーの位置でわかるので、便利になりました。
 カバーや塗装など まだ残っていましたが、内部の変更や追加が続くので 後回しになっていました。


左右別のレバーに

 その後、スロットルを左右のエンジンごとにするために改造しました。
スロットルの製作で難しいのは可変抵抗器の軸にレバーを取り付ける部分です。これまでは 市販のつまみを取り付けに利用していましたが、周りのプラスチック部分が割れてしまいました。それため つまみ内部の真鍮部分だけを周囲のプラを割って取り出し、1mm真鍮板にハンダ付けすることにしました。これを3mmネジで固定しました。この方がVR軸にレバーがしっかり取り付けられています。
Throttle Lever Making

可動範囲を125°に広げる

 スロットルレバーの可動範囲を90°から125°に広げました。操作する手の大きさを考えて、左右スロットルの持ち手をいっしょに握れるようにしました。机上で扱える 全体を必要なやや小さめのサイズにしています。
廃材利用や作り直しなどで、表から見えないところに あちこち余分な穴が開いています。
 これまでは Yoke内部のジョイスティック基板からアナログ入力のためのラインを引き出していました。 フラップとスロットルだけなら 2入力でよかったのですが、左右別のスロットルにするために フラップと合わせて3入力必要になりました。 ここではこわれたWingManForce3D (Logitech-wingman-force)ジョイスティックの基板を取り出して利用し、スロットルをヨークから独立させました。
 これに使われていた可変抵抗器は10x12mmサイズのプラスティック製でした。これも抵抗値の可変する部分が90°程度の狭い部分だけになっている特注品でした。この可変抵抗器は小さすぎてレバーの取り付けなどが困難です。代わりに私が使ったのは普通に入手できる100kVRです。これなら金属製でしっかりしていて レバーの取り付けもできます。ソフト側のアナログ入力の調整で普通に使えます。
 フラップコントロールにはアナログ入力を使っています。ロータリースイッチに33kΩ x 3 を直列にして4段階に可変しています。(0, 33, 66, 99kΩ)
Throttle Lever Throttle Lever2

スロットルの問題

 使っていると、スロットルの動作に問題があることに気づきました。
スロットルの左右2つの入力にジョイスティックのX軸とY軸の入力を利用していましたが、X軸入力の方が少ない角度で100%になってしまいます。変化率が大きいのです。
この問題を解決するために可変抵抗器を交換したり、設定プロパティで調整しましたが、どうやらMSFSプログラム側がX軸入力を狭い可動範囲にしているようです。もともと機体の上下方向のコントロールなので 角度はそれほど大きくはならない。やや狭い稼働角度に設定されているのではないかな。  Z軸とスロットル入力も試してみました。どちらもY軸などとペアにするには変化量がちがいました。これは利用したジョイスティック基板の問題かもしれません。
 調べていくうちにわかったことは、VRの抵抗値にばらつきがあることです。単独で使っているときには気づかないのですが、2つの可変抵抗器を組み合わせて左右のエンジンに使うためには 変化の特性がそろっていることが必要です。同じ抵抗値のはずの可変抵抗器でも、意外なほどばらつきがありました。きちんとしたメーカー製のものなら きっと 特性はそろっているのでしょうか。

 もうひとつ問題は、MSFS2020では スロットルを十分下げると 勝手にリバースモードに入ってしまうことです。リバース位置として目盛りを作りましたが 内部にリバース動作のスイッチをまだ設置していません。プログラムでこのようにしていると思われます。FSXでは 起こらなかったことです。
このことは便利そうですが、どこからリバースモードに入るのか 自由に設定できないのは困ります。

コントロール基板の交換

 これらのことを解決するために、これまでのWingManForce のジョイスティック基板を使うことをあきらめ Arduino Leonardo に自分でプログラムを組み込み 使うことにしました。入出力の端子の数は これで十分です。
Leonardo はジョイスティックの sketchが公開されています。その多くは動作テストで終わっているので、新たにsketchを書き直しました。6つのアナログ入力と14のスイッチ入力が使えるようになりました。Yokeのコントロールもここに含めています。
 MSFS2020 でのコントロール調整では ' Arduino Leonardo ' として、アナログ入力調整ができます。
 コントロール基板を代えたことで、スロットルの左右が同じように変化するようになりました。 スロットルを下げると リバースモードになってしまう問題は、アナログ入力の感度 SensitivityとNeutralの値を調整することで リバースになるレバーの位置を変更することができました。

 スロットルレバーを下げていったとき、リバースになる前に一度ストッパーがかかるようにすべきです。ATR72機のコックピットでの操作を見るとそのようになっています。 スロットルにストッパーとその解除レバーを組み込む構造に改造しました。
 解除レバーはアルミニウム板をコの字に曲げたあと、やすりで整形しました。カムのストッパーで止まるように、ピアノ線の弱いバネで下がるようにしています。レバーを引き上げると解除です。
Stopper01 Stopper02

Arduinoモジュールの検知

 気をつけなければいけないのは、自分でsketchを書き込んだ(Mobiflightではない)ArduinoもいっしょにUSB接続したときです。 Mobiflightは新しいArduinoを検知します。そして、「新しいArduinoモジュールを検知しましたがシステムをこれにも組み込みますか?」 と表示が出てきたのに きちんと英文を読まずにyesとしてしまうと、MobiflightのFirmwareを上書きされてしまい スロットルとして動かなくなります。
 ArduinoIDEで 自分のsketchを入れ直せば回復できますが、注意しないといけません、いい教訓になった失敗です。
next
logo