小モス、U99に軽量化

今年6月から航空法が改正になるので100グラム以上のラジコン機は機体登録が必要になります。
この機体登録って6月以降に新規登録するとリモートIDという機器(でもまだ実物が世に出ていないっぽい)を積む必要がありますが、今の内に登録すれば3年間は免除なのです。 これには色々と言いたい事もありますが、体制をひっくり返せる様なエネルギーもなく、まずは所有する機体を順次機体登録しているところです。

大モス

で、下の写真の機体、ムサシノ模型のモスキート・モスを電動に改造したモノで私が初めて飛ばした機体なのですが、熊本地震の時に翼が壊れたままになっていました(本棚の上に乗せていたら揺れた拍子に本棚の裏側に落ち込んでプレスされたのです)。
なのでもう登録はしなくていいかと思っていたのですがそれも悲しいので応急修理して登録しました。

ムサシノ模型製キットを電動化したモスキート・モス。
ウチでは「大モス」と呼んでいる。

小モス

そして次の写真の機体。これはバルサとスチレンペーパーで作った1/2サイズのモスキート・モスですが、コイツが120gなのです。
これもこのままだと機体登録が必要なんですね。100gという制限はちょっと厳しすぎるなぁ。

スチレンで作った1/2サイズ。
「小モス」と呼ぶ。

これはできれば登録せずに済ませたいです。という事でU99(アンダー99グラム)を目指して軽量化してみました。
変更したのは次の点・・・

・モーターを2205→1105に変更。
・バッテリーを380mAhの2セルパック→Tiny用300mAhx2本に変更。
・サーボを4gタイプ→1.xグラム(公称値わすれた)品に変更。
・受信機をPWM出力→SBUS出力+PWM変換基板に変更。
・サーボコネクタを使わず直結。

その結果が次の写真で98gです。脚を除けば93gに収まります。

はかりに載せてみると・・・
98グラム!

飛ばしてみる・・・

機体サイズに対してパワー不足は感じません。でもやっぱり風には弱いですね。今までも弱かったけど軽量化するともっと弱くなった気がします・・・まあ98gじゃ仕方ないか。

各部の写真・・・

モーター。ペラはこれしかなかったので4inchの折ペラ。
ちょっと径が大きすぎる気がする。
いつだったかMakerFaireTokyoで買ったサーボ。

SBUS→PWM変換基板でサーボに接続。
変換基板はこの時作ったモノ(基板は再設計)。
サーボコネクタは使わず直結。
TinyWhoop用バッテリ2本を挿す為PHコネクタに変更。

最後に、今まで使っていて取り外した部品。

モーター、サーボが enRouteブランド だったりする 。
(ホビー用パーツを売っていた頃の)

これで今後も気兼ねなく飛ばせます。

ESC DR-20Aのファーム書換え

以前購入した激安ESC DR-20Aのファームを書き換えてみました。

まず最初に現状がどうなっているかを見ます。
FCのモーター端子2~3に接続してBLHeliSuiteで・・・
ん?現状のファームウェアはErased or unknownとなっていますね。一応パッケージにはBLHeliと書いてあるんですけど・・・
これだとどのファームを書けば良いのかわかりません。

ならばESCの基板を眺めまわします。
ラベルを剥がすと・・・

表側
裏側

この写真を基にBLHeliがサポートするボード一覧のページ(どこだったか忘れた)と比べるとソックリのボードが載っていました。そこにはDYS SN20Aというファームを使えと書いてあります。

追記:本家ページのこの資料を見てました。33ページのところ。
 ↓  ↓
https://github.com/bitdump/BLHeli/blob/master/Atmel/BLHeli%20supported%20Atmel%20ESCs.pdf

ではDYS SN20Aを書き込んでみます・・・が、DYS SN20Aにも3つありますね。
とりあえず DYS_SN20A _MAINを選んだらメモリー不足っぽいエラーがでました。そこで DYS_SN20A _ MULTIを試すと書き込み成功。

追記:MAINはヘリコプターのメインローター用、TAILはテールローター用、MULTIはマルチコプター用との事です。
 ↓  ↓
https://github.com/bitdump/BLHeli/blob/master/Atmel/BLHeli%20manual%20Atmel%20Rev14.x.pdf


書込みが成功するとこんな画面となります。


モーターを繋いで回してみると動作も正常だったので3個とも書き込みました。

これで謎バージョンだったファームを最新に上げる事が出来ました。

ところで、なぜバージョンを上げたかったのかというと、回転方向をBIDIRECTIONに設定したかったから(謎バージョンにはこの選択がないのです)。こうするとスティックの中点をモーター停止、上を正転、下を逆転にできるのです。息子はこれで水中ドローンを作ろうとしています。

フライトコントローラーを自作してみる。~その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