フライトコントローラーを自作してみる。~その11~ Rev2基板

ブログを遡って読むと、ほぼ1年前からフライトコントローラー(以下FC)を作り始めていました。当初はFCを何度も壊すので自作して安く済まそうという魂胆でしたが、だんだんとFCを作る事自体が目的になっている気がします。

前回はRev1基板を使って3インチ機でFPVしたところまで書きました。その後5インチ機でも問題なく飛行できる事を確認しています(まあ3インチで飛べりゃ5インチでも飛べますよね)。

HOIHOIFC-F411 Rev1
ツギハギだらけです。パターンも何か無駄に遠回りしているところがあるし

という事で、Rev1基板の不具合修正や改良を加えたRev2基板を作っていきます。

まずはRev1基板の不具合点を振り返ると・・・

・USB信号のプラスとマイナスが入れ替わっていた。
・ブザー駆動トランジスタのピン配置を間違っていた。
・ブザー駆動トランジスタのベース100KΩという大きな抵抗値になっていた。
・DCDCコンバータ周りの配線が長すぎて電圧が揺れていた。
・取付穴位置を30mm角ジャストにしていた(一般的なサイズは30mmジャストではなく30.5mmでした)

当然ながらこれらは修正します。

BEC(DCDCコンバータ)について

バッテリー電圧から5Vを作り出すDCDCコンバーターICについて、前回はMonolithicPower社MP2359を使っていました。これは出力1.2A、最大入力24Vでしたが6セルバッテリーにすると耐圧が足りないのでMP1584に変更します。これだと出力3A、最大入力28Vです。
実際にはショットキーダイオードの3A品はサイズが大きいので2A品を使う事にして定格2A(瞬間的には3Aいける)BECです。
事前にMP1584を試した話はこの辺りに書きました。

左がMP2359,右がMP1584。
MP1584にするとだいぶ大きくなるなぁ。

DFUモード安定化

前回DFUモードに入りにくい(不安定)という問題があり、BOOT0に加えてBOOT1端子もLに落としたりしてみましたが今ひとつすっきりしていませんでした。
でも今回原因が分かった気がします。
STM32マイコンはBOOT1端子=H状態で起動するとブートローダーが立上るのですが、この時USARTやCAN等、幾つかのシリアルポートに信号が来ているかどうかをチェックし、その後USBを見に行きます。 この時USART端子に信号が入っているとその端子からプログラム書き込み信号を待つ様になってしまいます。
STM32F411の場合、USART1と3がブートローダー端子として動作します。そしてRev1基板ではUSART1にSBUS受信機を接続していました。
恐らくこれが邪魔してUSBを受け付ける状態まで進めなかったのだと思います。なのでRev2基板ではSBUS受信をUSART6に変更します。
そういえば市販FCもUSART6にSBUSを入るのが多いと思ったら恐らくこの理由なんだと思います。

ジャイロ

前回InvenSenseMPU6500を使っていました。
どうやらこれだと感度が高すぎて振動対策をしっかりする必要があるらしく、市販FCは大抵MPU6000を使っています。
という事でRev2もMPU6000に変更します。
またMPU6500はリードが0.4mmピッチに対しMPU6000は0.5mmピッチなので実装し易くなる事も期待しています。

左がMPU6500、右がMPU6000。
これも見比べると差が大きい。

マイコン本体

これまで最初に入手した評価基板に合わせてSTM32F411を使ってきたので今回もこのマイコンで進めます。
でもよりクロック周波数が高いマイコンにSTM32F405があり、ピン配置を調べたら1か所だけ変更すれば載せ替え出来そうなので後で試せる様に作っておきます。更にSTM32F722にも同じパッケージの製品があり、これもピン配置がほぼ同じなので使えるかもしれません(でも値段が高いんですよね)。

モーターの数

Rev1では基本の4本に加え予備として2本のモーター出力端子を持っていました。これでヘキサコプターを作れる筈なのです。
そしてRev2では更に2本追加し計8本にするので、その内オクタコプターを試してみたいと思います。

その他

発振子を小型の物に変えたり部品の配置を変更したり、結局かなりの変更量となりました。

最終的な回路図はこれ

そして基板パターン設計(これが一番大変だった)。

部品配置を変更したのでちょっと余裕ができた。
やっぱり基板設計は最初の部品配置が大事ですねー。

基板発注

基板はPCBGOGOに発注します。約500円の格安基板で作る場合、FusionPCBだとソルダーレジストの最小値が0.4mmなのでマイコンやジャイロのピン間隔(0.5mm)に対しては無理があるのです。
これに対しPCBGOGOは0.1mmなので多分大丈夫。(ただし送料が若干高い気がするし、また面付けすると高くなるので用途によって使い分けてます)

つづく・・・

SBUS→PWM変換

ドローンをいじっていると色々とパーツが増えてきます。SBUS出力の受信機もそうなのですが、ふと思い立って固定翼の飛行機に普通のサーボを積もうと思うとPWM出力の受信機がないのです。
そこでSBUSからPWMに変換する基板を作ってみました。

まずシリアルポートが複数あってデバッグし易いArduinoMEGAを引っ張り出してきます。SBUSの受信は何度もやっているのでソースをコピペし、沢山定義したサーボ出力に値を渡せばファームは出来上がりです。
その後ArduinoUNOに移しても問題なく動作しました。

そして基板化。
私が作る飛行機は大抵スチレンペーパー製の小型のものなので基板もなるべく小型がよいです。そこで最近はリフロー炉も稼働した事だし、中華格安メーカーに表面実装の基板を発注しました。マイコンには0.5mmピッチQFNパッケージ(リードがないやつ)のATmega328MUを使います。

という事で面付けして全部で120枚分の基板ができてきたのですが・・・・・

約500円の格安基板

シルクデータを含めるのを忘れていました。
更に0.5mmピッチのところソルダーレジストが載っていません。一瞬基板メーカーにヤラれたか?と思いましたが仕様を見るとレジスト幅は最小0.4mmという仕様でした。0.5mmピッチでリード幅もあり、どう考えてもレジスト幅は0.4mmには収まりませんよね。
そういえばフライトコントローラーを作った時、わざわざレジスト幅が細かいメーカーを選んだのでした(でもそのメーカーは面付けすると価格が上がるのです)。

マイコン周りのソルダーレジストが崩れている

とりあえず比較的上手くレジストが載っている基板を選んで(120枚もあるので中には上手くいっているのもあるのです)部品を実装しました。

そしてArduinoUNOを使ってブートローダーを書き、FT232RLを使ってファームウェアを書きます。

ブートローダー書き込み中。
奥に見えているフリスクケースがFT232RL

ピンヘッダを付けて完成!
12chまで出せます。6chまでは3pinのピンヘッダで、残り6chは信号だけ出しています。

例によって1か所ミスっておりジャンパーで補修しています。
(どこかわかります?)

息子が製作していた機体に積んで飛ばしてもらいました。特に問題なく飛んでいます。

高校生の息子が作った機体。
キット化して小遣いを稼ぐ野望を抱いている様です。

フライトコントローラーを自作してみる。~その10~ FPVで飛ばす。

前回、自作フライトコントローラーでホバーリングできるところまで確認したので次はFPVで飛ばしてみたいと思います。

が、その前に電源周りをもう少し強化しておきます。前回ノイズっぽかったのを転流ダイオードの配線を縮めて改善したのですが、まだスイッチングノイズが載っているのでその他の配線も縮めました。またGNDも配線追加により強化し、ノイズがかなりマシになりました。第二弾の基板ではこの辺りを盛り込む必要があります。

スイッチングレギュレータ周りの配線短縮&GND強化
だんだん汚くなってきました。

また機体発見ブザーを鳴らすトランジスタ、2SC2712のピン配を間違っていてブザーが鳴りませんでした。そこで無理やりトランジスタの向きを変えて取り付けています。
更にベース電流を決めるR14を100KΩにしていたのは大きすぎで5.1KΩに変更しました。試作基板はちゃんと5.1Kだったのになぜか回路図の段階で間違っていたのです。

機体発見ブザー周り。
トランジスタ斜め取付け。
R14はこの後変更しています(5.1Kの手持ちがなく6.8Kを使用)

以上の対策をした上でレース機に積むのですが、5インチ機にいきなり積むのも勇気がいるのでまずは3インチ機で試します。しかしフライトコントローラは35mm角なので一般的な3インチ機には積めません。そこで以前作ったウッドフレームに積んでみます。これだと35mm角の基板を載せるスペースがあるのです。


久々に登場、木製フレーム機。

この機体、いまはバラバラなので別の3インチ機からフレームとFC以外の部品を持ってきました。
ESCは25mm角なのでこの様な変換スペーサーをプリントして載せることにします。

35mm角⇔25mm角変換スペーサー

こんな感じで25mm角のESCの上に35mm角のFCが載っています。

全てが無理やり・・・

そしてホバーリング実験。
この時点ではBetaflightのバージョン3.5を書き込んでいて、前回の確認と同じで問題なくホバーリングできます。。
次にBetaflight4.2を書き込んでみます。前回の機体では4.2だと機体の揺れが収まらなかったのですが・・・この機体だとピタッと安定しています。

ならばFPVやっても大丈夫そうですねー。
という事で近くの原っぱにやってきました。

ゴーグルを付けて飛ばしてみると、何事もなく飛んでいきます!!
基板はツギハギだらけですが飛んでいる間は市販FCと特に違いは感じられないのです。
息子にも飛ばさせてみましたが特に違和感は無い様でした。

という事で色々見つかった不具合を修正すべく第二弾のパターン設計をしながらも次は5インチ機で試そうと思います。

フライトコントローラーを自作してみる。~その9~ 動作確認

前回基板に部品を実装したので、いよいよ動作させてみます。

まずはUSBコネクタから5Vを入れて電流が振り切れない事を確認しました・・・これは問題なし。
その後、BOOTボタンを押しながらPCとUSBケーブルで接続するとDFUモードに入る筈ですが・・・入りません。(T_T)

回路を見直していくと基本的な間違いに気づきました。USBのD+とD-が逆になっています!!そりゃダメだわ。


完全に見落としですねー。

とにかく修正します。
D+とD-には後からダンピング抵抗を入れられる様0Ωの抵抗を付けているのでこのパターンを使って配線をクロスさせます。

モーターのコイル巻き直しに使ったエナメル線で配線をクロスさせました。

改めてケーブルをつなぎなおすと、今度はDFUモードに入りました。
そこでBetaflightConfiguratorのUpdateFirmware画面から以前作ったファームを書き込みました。
ここまで何とか問題なし(いや問題はあったけどとりあえず修正済)。

そして改めてケーブルを挿し直してBetaflightConfiguratorで接続すると、ちゃんと認識されています。この状態で基板を手で動かすと傾きが表示されるので、ジャイロセンサーも正常に接続できている事になります。実はここのパターンが細かくて一番心配でしたが正常にリフローできた様です。

あとはフライトコントローラーとしての諸々の設定をしていきます。
ここまで正常。

次に受信機を接続し、送信機の操作が伝わっている事も問題なし。

ではESCを接続してモーターを回してみます。安定化電源から2セル分の7.4Vを供給してBetaflightConfiguratorモーターつまみを上げていくと・・・ちゃんと回ります。

ならばバッテリー(3セル)を接続して送信機から制御してみると・・・なぜかArmingできません。安定化電源に戻して色々試したところ、どうやら2セル電圧だとArmingできるのに3セル電圧だとダメみたいです。
となるとBEC回路ですかね。電源電圧によって違いがあるのはBEC回路より手前だけの筈・・・。

そこでBEC回路の出力をテスターであたるとちゃんと5Vになっています。
しかしオシロで見るとBECのスイッチングノイズが電源が高いと大きく載る様です(波形取り忘れた)。

原因はどうやら図のところ、スイッチング電源のダイオードのループが長すぎた様です。
2層基板に無理やり載せたので電源周りが厳しい気がしていたのですがやっぱり。 GNDの取り回しが遠回りな感じ。

そこでGND側を最短になる様に配線を追加しました。これでもOKだったのですが念のため5Vラインに47uFを追加しています。でもまだちょっとノイズっぽいけど先に進めていきます。

これで3セル電圧でもArmingできる様になったので例の「えー加減な機体」にペラを付け、Angleモードでホバーリングさせてみます。

すると斜めに振動しながら浮き上がりました。でもこれは想定内。試作回路で飛ばした時もファームがBetaflight4.2だと同様の現象が起こり、市販のFCでも同じでBetaflight3.xに下げると安定したのです。今回もファームのバージョンは4.2を書き込んでます。
4.2で揺れる原因は調べていませんが何か機体の特性みたいです。でもバージョンで変わるのでPIDかフィルターかそのあたりを調整すれば4.2でも納まりそうな気がします。

とりあえず今回はBetaflight3.xを書き込んでみます。
・・・すると、あれ?またDFUモードに入らないぞ?

どうもDFUに入る時と入らないときがあります。
DFUモードに入れる方法には二通りあって、BOOTボタンを押しながら電源を投入する方法とBetaflightConfiguratorの「ブートローダー/DFUを有効化」ボタンを押す方法があります。このどちらの方法も不安定で、ダメなときはずっとダメなのに入る時は繰り返してもうまく入るのです。成功率30%くらいでしょうか。

BOOTボタンを押すとSTM32F411のBoot0端子がHレベルになる筈で、実際オシロで見てもHになっていて、この部分は大丈夫だと思います。
ここでひとつ気になるのはBoot1端子です。 Boot1はPB2と共通の端子で、マニュアルによるとDFUモードに入れるためにはこれをLレベルにすることになっています。
しかしDIOと共有なんですよね。この端子を本当にLに落とす必要があるのか、回路図を書くとき疑問に思いました。そこでSTマイクロエレクトロニクス社の純正開発ボードSTM32F411Nucleoを調べたらこの端子はオープンで、これを使った試作機は問題なかったので、安心してフライトコントローラーもオープンにしていたのです。
しかし改めてマニュアルを読むとやはりLにしろと書いてあります。
という事で0.5mmピッチQFPのリードに無理やり電線をハンダ付けしてプルダウン抵抗をつないでみました。

これで成功率が上がりました。でもまだ時々ミスるのでまだ何か他に原因がありそうですが、やっぱりBoot1はLにするのが正しいのですかね。まあマニュアルに書いてあるから当然そうすべきで、最低でもパターンを引き出しておけば良かったんですが。でもNucleoはなんで大丈夫なんだろう?(端子オープンなのでたまたま上手くいっているだけなのかもしれません)

時々失敗する理由は判りませんが、とにかくBetaflight3.5のファーム書き込む事ができたので再びホバーリングにチャレンジ。
初飛行の動画です。

ちょっとふらついていて調整の余地が(私の操縦技術の問題も)ありますが一応ホバーリングしています。

あとOSDとBLACKBOXへのロギングも大丈夫でした。
ここまでの問題点をまとめると次の通りです。基板の第二弾を作る時(やるのか?)修正したいと思います。

  • USBのD+とD-の入替り。
  • 5Vスイッチングレギュレータ周りのGNDの取り回し
  • Boot1端子のプルダウン

という事で何とかホバーリングするところまでたどり着いたのでレーサー機に載せてどうなるかを試していきたいと思います。

フライトシムのモーションシミュレータ化~9~

モーション フライトシミュレーターのArduiono側ソースコードを見たいという書き込みを頂いたのでアップします。

FlightMotion6.zip

中身が行き当たりばったりで恥ずかしいので載せていませんでした。
※温かい目で見てください。
(PC側のプログラムはもっとかっこ悪いのでまだ載せていませんが、もしこちらも見たい方がおられたらコメントください)

で、この中身は自分でも殆ど忘れていますが思い出しながら簡単に説明させていただきます。

  • ジャイロ/加速度センサーのMPU6050へのアクセスライブラリは、たしか下記から貰ってきたと思います。→https://github.com/jrowberg/i2cdevlib/tree/master/Arduino/MPU6050
  • PCからは”ピッチ,バンク<改行>”がテキストで送られてきます。
    ピッチとバンクは角度の少数以下一桁までを10倍した値です(浮動小数点をさける為)。
  • PCから送られるピッチとバンク角から目標とするリニアアクチュエータの目標長を算出します。
  • MPU6050が示す加速度センサーの値でも同様にリニアアクチュエーターの現在長を算出します(加速度だけ使ってジャイロの値は使っていません)。
  • ソース中の”//各ジオメトリ”に続く数行はモーションシミュレータの各寸法で、角度からリニアアクチュエーターの長さを算出するための情報です(これら値の詳しい説明は今できませんが当時は下の様な寸法図を書いていました。ソース中の値とは変わっているところもあると思います)。
  • リニアアクチュエータの目標長と現在長から動かす方向と速度を決めてPWMの関数に送ります(速度の加減は試行錯誤で決めました)。
モーション計算用寸法図

モーターを動きをもっとスムーズにするため、この次のバージョンでPID制御にしてみようと取り掛かりましたが放置状態です。

Microsoft Flight Simulator 2020 + モーション機構

先日マイクロソフトからFlight Simulator 2020が発売されました。
前作のFlight Simulator Xで開発は終了との事でしたが14年振りに復活したのです。
フライトシミュレーターといえば黙って見過ごす訳にはいきません。早速ダウンロード(一晩かかった!)して実行するとこんなのが毎回出ます。

i3-7100じゃ不足なんですかねー。
Microsoftの製品紹介ページではi5-4660以上となってます。
まあOKを押せば先に進むのでいいんですが、こんな毎回出さなくても・・・。

ソフトはまだ日々更新されているらしく、立ち上げる毎にしばらく何かのダウンロードが始まり時間がかかります。

この画面でダウンロードを待たされるのです。

その後このメイン画面が立ち上がります。
以前のXや2004とはだいぶ操作方法が変わっていますね。

メイン画面。まだ全体を見渡せていません。

コックピットの風景はこんな感じ。リアルにはなってるけどちょっと計器が見づらいなー。前作では計器類を固定表示できけど、これもできるのかな?

熊本空港 RUNWAY07

モーション機構を接続

Flight Simulator Xの時に作ったモーション機構を接続したいのですが、それにはSimconnectを使う必要があります。Simconnectは過去のバージョンからある機能で、シミュレータとは別に動かしたプログラムからシミュレーターの情報(速度とか姿勢とか)を取ってきたり設定したりできる機能なのです。これはCのライブラリとしてSDKに含まれています。

これが今回のバージョンでも使えるかですが、いろいろググってみると今回もSimconnectがついていて、デベロッパーズモードというのをONにするとダウンロードでそうなのでやってみました。

そしてコンパイルして実行したら確かにデータが取れています。
でもその後Flight Simulator Xの時にコンパイルしたプログラムをそのままで動かしてみたらこれでも問題なく動作しました。新たにコンパイルする必要なかったんですね。

とにかくここまでくれば動作したも同然。実行するところを動画にしてみましょう。
ところでいつもこのブログに動画を載せるときはYoutubeにアップロードしてリンクを貼っています。Youtube側には殆ど説明を書いていなかったのですが、今回はBGMやキャプションを入れてYoutuberの動画っぽくしてみました・・・

さ、いろんなところを飛んでみよっと。。。

スイッチングBECの製作

最近ラジコン/ドローンの投稿が多くなっていますがまたまたラジコン/ドローンネタです。

息子が通販で激安のESCを見つけてきました。スチレンペーパーの飛行機を作ったりするので多めに買ってストックしておくと便利です。

※ラジコン用語で ESCとはElectricSpeedControllerの略で要するにブラシレスモーターのドライバーです。ラジコン受信機やドローンのフライトコントローラーからの信号に合わせてモーターの出力を制御します。

見ると税別880円で20AのESCが4個入っています。但しBECが内蔵されていません。

※ ラジコン用語でBECとはBatteryEliminateCircuitの略で要はレギュレータです。独特な用語に思えますがプロペラを回すためのバッテリー電圧(7.4Vや11.1V)から受信機やサーボを動かす為の5V電圧を作り出す事で5Vのバッテリーを載せなくて済むという意味からバッテリー除外(eliminate)という事らしいです。

1個あたり220円。消費税と送料を入れても安いじゃないですか。BECだけ別に準備すれば安くESCが手に入るので早速購入しました。

4個入りを私が2セット、息子が3セットで、合計20個のESCを購入!
さすがにこんなに使うか?

そしてBECをどうするかですが、Aliexpressで見ると降圧DCDCコンバーターが80円くらいで売られているのでこれを買うのが簡単です。しかし最近はコロナウィルスの影響かAliexpressで買っても中々発送されないんですよね。という事で作ってみようかと思った次第です。

どんなのを作るか考えるに、負荷の電流が少なければ単純に3端子レギュレータ(シリーズレギュレータ)でも良いですが、飛行機に載せるとサーボを動かすのでそれなりに電流を流したいです。また発熱が多くて放熱板を取付けたりすると重くなってしまいます。となるとスイッチングレギュレータですよね。

部品箱には300円で大量に入っていたスイッチングレギュレータIC、LM2576があります。当初これを使おうかと考えたのですが結構古いのでスイッチング周波数が52KHzと低いんですよね。するとインダクターが100μHくらいのを付ける必要があり、コンデンサもそれなりに大きいのを使う必要があります。

そこで先日フライトコントローラーを修理した時に買ったMP2359のデーターシートを見ると、こちらはスイッチング1.5MHzで動作するとの事。これだとインダクターは4.7μH程度、またコンデンサーも小さくて済みます。

10個入り140円。2個使ったのであと8個残っている。

という事でMP2359を使ってみる事にしました。
いつもの様にKicadで回路図を書きます・・・

ほぼデーターシート記載のリファレンス回路図通りですがインダクタは部品箱にあった10μH(電流2.3A)の品に、その他もあり合わせの部品に合わせています。 MP2359はFB端子が0.81Vを保つ様に制御されるので6.8Kと1.2Kの抵抗分割だと計算上5.4Vの出力で若干高め狙いです。実際には抵抗の精度が5%なので動作後に実測する事にします。

Kicadでパターンを書き、久々にCNCで基板を削りました。

上がMP2359
下が切削後の基板

MP2359を搭載する部分は細かいのでショートさせてしまいそうです。そこで危なそうな部分にサンハヤトのレジスト補修材を塗って保護しました。

このレジスト補修材、何故か近所のホームセンターHANDSMANで売ってるんですよ。
1年に何個売れるんでしょう?

そして部品を載せました。基板の上の方にある大きな抵抗みたいなのが10μHのインダクタです。入口の10μFは回路図では電界コンでしたが部品箱に積層セラミックがあったのでそっちにしました。

もっと小型化できるなー。

裏側に表面実装部品を載せています。MP2359の取り付けに失敗してリードを折り、1個無駄にしましたが何とか完成。

こっち側に表面実装部品のMP2359とショットキーダイオードが載っています。

電源を入れるとほぼ思った電圧が出ているのでサーボ(4グラムタイプ)を動かしてみます。動画で・・・

動作は問題なさそうですが抵抗やコンデンサをチップ型にしてもう少し小型化したいところです。また幾つも作るなら基板も発注したくなりますが・・・しかしお金をかけるなら結局は上記の80円のDCDCコンバータを買う方が安いかもしれません。

まあこれでESC大量&BECの目途が付きましたが、どんな機体をつくりましょう?

Jumper T8SG V2 Plus ~その2~

前回紹介したJumper T8SG v2Plus、正常動作が確認できたので予定通りMODE2→MODE1に改造します。

その前にこのMODE1や2ってなんなのさ?という事を簡単に説明しておきます(このブログはラジコンやドローンよりもどちらかというと工作寄りなので)。
ラジコンの送信機で空モノを操縦するとき、基本の4つの軸(スロットル、ラダー、エルロン、エレベーター)を 2本のスティックで 操作します。2本のスティックそれぞれを縦と横に操作するので4つの軸を操作できるわけです。この時どのスティックにどの軸を割り当てるかで色々なMODEがあります。MODEには1から4までありますが大抵はMODE1かMODE2が使われています。日本では歴史的にMODE1が使われてきましたが海外ではMODE2が多いそうです(なぜなんでしょうね?)。

私も昔からMODE1を使ってきました。 どっちのモードが操縦し易いのかというと色々意見があるでしょうが、何にせよ最初に使い始めたモードに慣れると簡単に変更する事はできません(といいつつも息子は飛行機を飛ばしていた頃はMODE1でしたがマルチコプターを飛ばす様になってからMODE2に変更してしまいました)。

話は戻りますが今回購入したT8SGは前回書いた様にショップの在庫の関係でMODE2なので改造が必要なのです。大抵の送信機はジンバルの構造が似通っているので問題なく改造できると思います。

なおMODE1とMODE2の違いは2本のスティックの縦方向への割り当てが、MODE1だと右手がスロットル、左手がエレベーターですがMODE2だと逆になります。通常エレベーターはスティックから手を離すとバネで中立に戻りますがスロットルは手を放してもそのままの位置を保持します(そのため適度な摩擦感を持たせてある)。なので改造の主な内容は左右のバネ感と摩擦感を出すパーツの入れ替え作業となります。

では蓋を開けてみます。
本体裏側のネジを6本外して本体の肩の部分にあるスイッチを止めているプラスチックをこじ開けると裏蓋が外れます。
裏側から見ているので写真右側のスティックが左スティックで、このスティックの縦方向の操作がスロットルに割り当てられています。

中身

スロットルは摩擦感が必要なので金具で押さえつけてあります。

金具を取り外しました。

そして右ジンバルには中立に戻す為のバネがあります。バネ上側を取り付けてあるプラスチックパーツはバネの力だけで保持されているので引っ張り上げれば本体から外せます。

バネを保持していたプラパーツ
そしてカムを押さえつける為のレバーとバネ。
このレバーがスティック側のカムを押さえつける事で中立に戻るのです。

右スティックから外したバネとプラスチックパーツを左スティックに取付けます。

そして左スティックから外した押さえ金具を右スティックに取付けます。

ネジの締め具合で抑え圧を調整できる様です。

あとは元通りに裏蓋を取付けて電源を入れ、メニューからMODE1設定に変更すれば完了です。

これで暫く快適にシミュレーター(VelociDrone)をしていたのですが、突然右スティックを左右に動かしたときにキコキコという軋み音が出る様になったので、もう一度裏蓋をあけて右ジンバルを外してみました。


隙間が狭く当たりそうな箇所に細く切った紙を挟んで見ましたが接触している箇所はなく、やはりカムとレバーが擦れる部分で摩擦音が出ている様です。そこで 細いエナメル線にグリスを少しつけ、薄く塗ってみたら軋み音は消えました。

先日モーターのコイルを巻き直したエナメル線の切れっ端でグリスを塗った。


外したついでにジンバルを眺めまわします。この機種はホールジンバル採用というのがウリとなっていて、可変抵抗ではなく非接触のセンサーなのですり減る心配がないそうです。
恐らくこのコンデンサーマイクかと思う小さな部品と横の基板がホール素子を利用した角度センサーの様です。

これどういう仕組みなのでしょう?
ロボットなどではレゾルバという角度センサーがあります。こちらは直交コイルで回転磁界を作っておき、その中に可動するコイルを入れておくとコイルの角度によって誘導電圧の位相が変るので、位相のずれ角からコイルの角度を検出します。
実物のホールジンバルを見るまではレゾルバに似た仕組みかと想像していましたが、このサイズで実現できそうな気がしません(いや最近の中国の技術なら実現できるのか?)。
コンデンサーマイクっぽいのが磁石なのかな?

なにはともあれ軋み音は消えたのでフタを閉めました。
何となく3台並べて撮影。

左から息子のT10J、私のT6EX、そして今回のT8SGv2Plus

Jumper T8SG V2 Plus購入

今まで飛行機やマルチコプターを操作するのにフタバ T6EXという古い6チャンネルの送信機を使っていました。 6チャンネルしかないと先日書いた様に色々と苦労があるのに加えFASSTというプロトコルなのでこれに対応した受信機があまり売られていないという問題もあります。

今まで使っていたT6EX

という事で技適認証になって国内でも使えると話題のJumperの送信機、T8SG V2 Plusを購入する事にしました。マルチプロトコルなのでフタバのS-FHSSを含めDSMやFrskyなど色々な受信機と接続できるらしいです。さすがにFASSTは対象外ですが。
発注はBanggoodには長いあいだ品切れだったのでAliexpressのショップの中から技適マークありと明記してあるところに昨年11月11日のセール中に¥10,894で注文。しかし暫くしてショップから「発送したけど戻ってきた」という連絡があり、その後何度かやり取りしたけど「送れないから返金にしてくれ」の一点張りです。せっかく11.11のセールなので食い下がったのですが結局時間がもったいなくなり諦めて返金してもらいました。そしてAliexpress内の別のショップを探すと技適を明記していないけど写真には写っていたショップがあったので、ここに¥11,040(少し高くなった)で再注文。しかしこちらも暫くすると「MODE1が無いから返金するか MODE2に変更してくれ」と言ってきました。私はMODE1の人なのですがまあ改造も難しくはないだろうという事でMODE2タイプでOKにしました。

・・・という紆余曲折があり年も明けたところで到着です。

スティックの先が外れていて一瞬焦りましたが箱の中にありました。
本体と付属品一式。

電池BOXは一見すると単三用にみえますが18650サイズのリチウムイオン用です。ですが、バッテリートレイには3pinのXHコネクタが付いていて、2セルリポのバランスコネクタから電源を供給できるので実際はリポを使う方が便利です。なお電源電圧は4.5V~18Vで範囲が広くて何かと安心です。

バッテリートレイは結構広いので大き目のリポも入りそう。

ネットで他の方の画像を見るとキャリングケースや乾電池用の電池BOXが付いていたりしますが、これには付いていませんでした。送られてきた箱のサイズからしてキャリングケースは入らなさそうなので入れ忘れという訳ではなさそうです。

そして気になる技適マーク・・・

すぐに消えてしまいそうな印刷ですが、ちゃんとついています。

では早速息子のS-FHSS受信機との接続を試みます・・・が、バインドできません。
後で自分のやり方が間違っていた事がわかるのですが、当初はS-FHSS受信機3機種でバインドできず焦っておりました。
試しにと、これまた息子のトイドローンSymaX5Cとの接続を試みると正常にバインドできます。またFlyskyの受信機とも接続ができましたがS-FHSSはどれとも接続ができない状態に暫く悩まされました。

以下はおバカな私がおバカな事をやった記録なので読んでも面白くないと思いますが後々の為に書き記しておきます。
S-FHSSの受信機とつながらないのでダメ元ですがファームを上げてみる事にしました。
でもその前に現状のバックアップを取る事にします。この送信機はConfirmボタンを押しながら電源を入れるとPCからUSBメモリに見える様に接続できるので、この方法で中身をPCにコピーしておきます。しかし中に入っていたのはdeviation-t8sg_v2_plus-v5.0.0-e801244.dfuというファイルですが送信機立ち上げ時のメッセージはt8sg_v2-v5.0.0-abc5dcfと違う内容が表示されています。バージョン名も違うし’plus’の有無も違います。どこかのサイトでこの機種T8SG V2 Plusには’plus’の名前がつかないファームを入れろと書いてあったので t8sg_v2-v5.0.0-abc5dcf の方が正しい気がします。
これは謎ですがとりあえずは deviationのサイトから書き込みツールDeviationUploadとファーム最新版の’plus’有りと無しの両方を取ってきました。
そしてDeviationUploadを立上げ、まずは機種名通り’plus’ありのファームを書いてみます。書き込みは無事に完了メッセージまで進みましたが再起動すると画面が真っ黒になってしまいました。まあこれは先の情報から考えて想定内という事で、今度は’plus’なしのファームを書いて再起動します。すると一見正常に立ち上がるのですが飛行機やドローンのアイコンが表示されない上にモデル設定を変更しても保存されないという状態に陥りました。
そこで再びUSBメモリとして接続するとモデルやアイコンが入るべきフォルダが空っぽになっています。よく分かりませんが無いのなら先のバックアップから戻そうとしたら・・・何とPCにバックアップした筈のフォルダからもモデルやアイコンのファイルが消えていました(この原因は未だにわかっていません)。
今落ち着いて考えるとこの時点では、ダウンロードしてきた最新ファームのzipを解凍すればモデルやアイコンのフォルダが現れるので、これらをUSBメモリ(として接続した送信機)に放り込めばよかったのだと思います。
しかしこの時はDeviationUploadツール内の’Full Install’を実行してみました。こちらも一見正常に終了したのですが今度は全く立ち上がらず、その内にUSBメモリとして接続しようにもWindowsから「このデバイスはフォーマットを行う必要がある」という様なメッセージが出て接続されない状態になってしまいました。
もうこうなると何もできません。「終わらせてしまったかもしれない」という不安。唯一の残された手段はメッセージの通りフォーマットを行う事ですがかなり不安です。
恐る恐るフォーマットを実行すると、まずはUSBメモリとして接続できる様になりました。そしてそのメモリー(に見える送信機)にファーム(‘plus’無しの方)のzipを解凍して出てきた一式を放り込みます。
この状態だとまだ電源再投入しても立ち上がらなかったので再びDeviationUploadツールからファームをインストール(Full Installではないファームのみのインストール)をすると正常に立ち上がる様になりました。

結構危ない状態で焦りましたが何とかファームの最新化が完了しました。しかしS-FHSSがバインドできない状態は変わらず・・・。
ですが、結局バインドできないのは私がやり方を間違っていたのが原因でした。バインドする際、本来は「送信機がONの状態で受信機のバインドボタンを押しながら電源を入れる」というのが正解ですが私は受信機の電源を入れてからバインドボタンを長押ししていました。言い訳ですがT6EXにつないでいる受信機は大体この方式なんですよね。またバインドボタン長押しするとそれっぽくLEDが点滅するのでだまされたというのもあります。

何はともあれ正しい方法でやるとバインドできる様になりました。
こうなるとすごくイイです。息子の機体とバインドできますし、今後はDSMとかFlyskyの安い受信器を使う事も出来ます。またTinyドローン等はフライトコントローラーに受信機が内蔵されている場合が多く、これらのプロトコルは大抵
フタバ系ではなくFlyskyやFrskyだったりするので将来的にはこれらとも接続ができそうです。

という事で、まだ実物を飛ばしていませんがHOI-LINK経由でVelociDroneに接続してシミュレーションしています。

どどーんはじめました。~その10~ モーター修理

先日、使わずに持ち帰ったバッテリーがあったのでモーターを回して放電させていたら急にガクガクして回らなくなりました。モーターをあけてみたら中でコイルが切れています。
こりゃマズいです。飛べなくなります。 なんとか治したい!
このモーターは直径0.3mmのエナメル線が巻かれていますが手元にはありません。

いかにも安っぽいモーター

これとは別に息子がリードを根本で切って使えなくなったモーターEmax RS1306があります。
空中でモーターが外れ、リードが全部ちぎれて放置されていました。
どうせ巻き直すならこっちの高級そうなモーターにしようと思います。
同じ様にちぎれたのが2個と正常なのが2個あるのでこれを直して自分が使おうという魂胆です。

ちょっと高級そうなモーター。
でもリードが一本も生えていません。
鉄芯。
0.2mmのエナメル線を3本束で巻かれていますが、奥の方で切れて2本しか外に出ていなかったりします。

Emax1306モーターの元々の巻き線は次の図の様になっていました。
直径0.2mmのエナメル線×3本をそれぞれ9回(実質的には8回半に近い)ずつ巻き、それを3スロット分巻いて反対側で全て束ねた、スター結線とかY結線とかいうやつです。

図では一本の線として書いてあるのが実際には3本束ねてあります。
(3本×A,B,Cで全体では9本)

これを巻き直そうというのですが、0.2mmのエナメル線も手元にありません。0.2mmの3本束だと断面積的には0.35mmとほぼ同じなので手元にあった0.35mmを巻いてみましたが、線が一杯になってあふれ出す感じになり規定の回数巻けないのです。
やっぱり細い線を束ねた方がギリギリのところまで巻けるのかもしれません。

という事でAliexpressにて0.2mmのPEW線×100mを購入(実はちょっと前にポチッていたのが最近届いた)。

赤色がちょっとカッコイイ。

しかし0.2mm線でも結構ギリギリです。試行錯誤した結果3本を同時には巻かず、1本ずつ巻く方が何とかなる(というかゴマカシが効く)という結論に達しました。
なお元々の巻き線を解きながら見たところでは3本同時巻きになっているので上達すれば同時巻きが出来るのだと思います。(しかし上達する前にエナメル線のゴミがどんどん出来るので今回は1本ずつ巻きます。手間は3倍かかりますが)。

エナメル線の端っこは折り返して真ん中の穴に通しておくと巻いている途中に邪魔になり難いです。

やっと1本分(3本の束)巻けたところ。
何とか全部巻けました。

折り返していたエナメル線を引き出すのにハンダ作業用工具が重宝します。

折り返していた線を引っ張り出します。

同じ様に2個修理したので正常な2個と合わせて4個揃いました。
そして機体に積んでテスト飛行。
飛んでいる最中は修理したモーターだという事を忘れていたくらい問題なく飛びます。


しかしなんかですね。息子のおさがりパーツばっかり使っていますね。
息子は「大人なんだから買えよ」と言いますが直せば使えるんだからもったいないじゃないですか。

モーターを直せると色々と安心ですが、結構疲れました。