HOI-LINKのELRS版

先日JDL宮崎の会場で「HOI-LINKのELRS版ってできないの?」と聞かれました。

今までのHOI-LINKS-BUS信号をUSBに変換してPCに送っているので主にフタバ系のプロポシステムが対象になっています。
一方ELRSというのはこちらで開発されているラジコン電波のプロトコルで、昨年あたりからドローンレース界隈でちょっとしたブームになっているのです。

私は今までELRSを扱える機材を持っていなかったのですが、そう言われるとやってみたくなるのが人情というもの。。。

システムは大体この図の様な感じになるので、試すには最低でも送信モジュール、受信モジュールは購入する必要がありますね。あと送信機本体はどうかな?

送信、受信のどちらのモジュールもCRSFプロトコル(ハードウェア的にはUART)で接続するので、このCRSFプロトコルを知るのがキモとなりそうです。

送信機本体でよく使われているのはファームウェアがOPEN-TXのものですが、ウチにはありません。さすがにこのために送信機まで購入するのはちょっとですね。。。
で、色々調べていくとどうやらJumperのT8SGが使えそうという事が分かってきました。
というのも送信機と送信モジュールの間はCRSFプロトコルというシリアル通信で接続します。で、T8SGにもCRSFプロトコルを選択できるのです。
ならばT8SGにCRSFプロトコルを出力させてみましょう。信号をオシロスコープで見ると、420Kbpsのそれっぽい信号が出ています。

420Kbpsも速いしデータの繰返し周期が約2mSなのも速いですねー。

なんか、イケそうですね。
ならば送受信モジュールだけ購入して実験してみましょう。

という事で発注しました。・・・そして到着したのは盆休みの最終日。もう少し前に届くと着手しやすかったんですけど、仕方ないですね。

購入した送信モジュールはBETAFPV”ELRS NANO TX”。このモジュールは技適が取れているので、日本では殆どの人がこれを使っています。
そして受信モジュールもBETAFPV”ELRS Lite RX”。この受信モジュールはメチャクチャ小さいですね。

これで材料が揃ったので、まずは普通に使えるかというところから。
こちらのページを参考にしながら試していきます。

まず最初にELRSモジュールは諸々の設定をするためにPCと接続する必要があります。送信モジュールとはUSB Type-Cで接続できるので簡単です。受信モジュールはUARTで接続しますが、フライトコントローラー経由でもBetaflightがうまくやってくれる様です(なのでFC経由でやりました)。

そして今回設定したのはこの内容。まずは送信モジュール・・・

そして受信モジュール・・・

各モジュールの設定ができたので接続します。まず送信側・・・

なおT8SGとNANO-TXの間はこの様に配線しました。

そして受信モジュールをFCと接続(実際にはファームを設定したときに接続した)・・・

FCの右についているのがERLS受信モジュール。
なお上についている基板は別の実験用なので関係ないです。

受信モジュールはTX/RX両方の信号を接続する必要があります。(テレメトリを使わなければRX側は繋がなくても良さそうに思えますが、たぶんファームの書換えにも使うのやっぱり繋いでおきます)。

ところで送信機←→送信モジュールの間、および受信機←→FCの間、両方共CRSFプロトコルで接続するという事になっているのですが、送信機側の接続はシリアル信号線は1本、受信機側は2本となっています。
たぶん送信機側は半二重、受信機側は全二重なのかと思いますが、名称的には区別ないんですかね?

そして送信機の電源を入れ、FCをPCに接続してBetaflightConfiguratorの”受信機”ページで確認すると、あっさり接続できていました。

T8SGで問題なくELRSできる様ですね。

・・・でもここまでは準備段階。ここからELRS(というかCRSFプロトコル)に踏み込んでいきます。

JDL2022R4 宮崎戦に参加

今年も行ってきました。JDL2022 Round4。宮崎での開催です。

JDL(ジャパン・ドローン・リーグ)は年間7戦のレースが開催され、各レースのポイント合計で年間の成績が決まるという仕組みです。この7戦は九州から北海道まで日本の各地で開催され、第4戦は宮崎開催なのです。
九州ではここだけなので、毎年1度だけ宮崎戦に参加しています。

機体

今回使った機体は昨年とほぼ同じ。ベースは息子の「お古」であるEachin製激安レース機Tyro99をベースに色々いじくった物です。

他に予備機(こちらも「お古」)も持って行ったけど
今回壊さなかったので、この1台で済みました。


また当然ながらフライトコントローラー(以下FCと略す)はHOIHOI-FC Rev2を載せています。
昨年はこのFCがマトモに動作するかドキドキでしたが、もうそこまでの心配はなくなりました。また、前回投稿した様に予備FCも準備しています。

先日作成したF722搭載のFC。
まだ実績が少ないので予備とします。

でもまぁ、いい加減な機体ですよね。ウラから見るとベニヤ板を使っていたり。。。
JDLの中の人、A2Cさんにも心配してもらって色々とアドバイスして頂きました。(昨年はプロペラを逆につけて練習フライトを飛べなかったり、今回の練習フライトでもVTXのアンテナコネクタが抜けて映像が極端に弱かったり、 色々とやらかしてますからねー。 )
こんな感じでドローンレースは初心者には優しいのです。

そして第一日目・・練習日

第一日目は練習日で5回の練習フライトが出来ました。練習フライトは予選と同じ形式なので90秒間に何周飛べるかを競います。90秒を過ぎて次に計測ゲートを追加した時の周回数が記録となるのです(同じ周回数の人同士ではタイムが早い方が上位となります)。
私が参加するオープンクラスは一番初心者向けのクラスですが上位の人は5周回ります。私は5回の練習フライトの内、ベストが3周でした。
本番では4周行きたいですねー。


いよいよ第二日目・・本番

予選は2回のフライトを行い良い方の記録が採用されます。
まず一回目スタート・・・しかし直後にゴーグルがずれてきて画像が見づらくなってきました。両手は送信機を操作しているのでゴーグルを修正する事はできません。しかしどんどん酷くなってくるので2周目の直線で速度を緩めてゴーグルを修正し、その後は良く見える様になったのですが、結局3周でゴールです。次からはゴーグルのベルトをもっときつく調整しておきます。

そして予選二回目スタート。 今回はゴーグルもずり落ちてはこないし、予選落ちすればこのフライトで終りなので後の事は考えずに速度を上げます。するとまあそれなりに飛べていますね。
という事で4周でゴール!一応本日の目標は達成です。

レースの結果

あとは結果発表待ち。この間に予選1回目の結果を見ると18人中10位でした。9位までに入れば予選突破なのであと一つ。
予選1回目は3周飛んで10位だったので、4周飛べた2回目では順位が一つ上がれば予選通過できるはず(無謀にも期待してしまうのでした)。
で、結果が発表されると結局は予選落ち。・・・順位的には10位のままで、やっぱり皆さん2回目はタイムが上がってるんですね。

あと一つで予選通過と考えると惜しいのですが、タイムを見ると9位の人との差は約7秒もあり、これから考えるとそんなに惜しくもないです。
もっと精進するしかありません。

そして・・・

という事で天候にも恵まれ、適度に風が吹いたので暑さもそこまで厳しくもなく、年に一度のお祭りが終了しました。
また色々な人と話していると新たに作りたいものが次々と出てきて、そちらの面でも収穫がありました。

会場の「こどものくに」はすぐ横が遠浅のビーチです。浜に出てみると泳いでいるレース参加者もいました。

いいとこですねー。

BETAFLIGHT CLI設定の覚え書き

BetaFlightのCLI設定で、たまにしか使わないコマンドをすぐに忘れるのでメモ。

バッテリー電圧低下補正の設定。

# set vbat_sag_compensation = 80

補足:
出だしに比べてバッテリー電圧が下がってくると感触が変わってくる。そこで出だしのパワーを抑える事で最初から電圧が下がった時と同じ感触で飛べる様にする(なので出だしのフルパワーは下がる)。


SmartAudioのVer2.1の時にVTXに設定できるパワーを尋ねる。

# vtx_info

RUSH TINY TANKの例

# vtx_info
level 14 dBm, power 25 mW
level 20 dBm, power 100 mW
level 23 dBm, power 200 mW
level 25 dBm, power 300 mW

補足:
VTXテーブルの設定ページでは、そのVTXが使えるパワーの選択肢も設定するが、SmartAudioのVer2.0まではVTXが何mW出せるかはメーカーのドキュメントを見るしかなかった。
Ver2.1からはこのコマンドでVTXに問い合わせる事ができる。なおVer2.1からはdBm指定になっている。

耕運機もらった・・その3

先日キャブを掃除して復活した耕運機、しばらく使わないのでキャブから燃料を抜いておこうと思いました。
その前にもう一度エンジンを掛けてみたら・・・掛かりません。

またジェットが詰まったのでしょうか?
前回は燃料タンクとコックを清掃し、ホースは交換したので、もう簡単にゴミが入ることはないと思っていましたが・・・
とりあえずキャブを外し、中を見てみます。

あら、前回ダイソーのシリコンラバーで作ったパッキンがふやけていますね。
伸びてしまってキャブのフロートチャンバーに収まりません。

小さい方のパッキンは前回の投稿に書いてませんが、劣化していたのでフロートチャンバーのパッキンと一緒に作って交換していたのです。

で、もう一度レーザーカットしてパッキンを作ろうかとも思いましたが、YouTube先生によると(シリコンラバーではないちゃんとしたパッキンの話ですが)ヒートガンで炙れば戻る場合があるとの事。

やってみます・・・

お、だいぶ縮みましたね。

もう少し炙ると・・・
何とかフロートチャンバーに収まりそうなので、このまま使ってみます。

ところで問題のジェットの方ですが、詰まったようには見えないです。
とりあえず各部の穴を掃除して再装着すると・・・

エンジン掛かりました。何だったんでしょう?
それにこのパッキンを使い続けて大丈夫なのかな・・・どちらにしても次に使うのは数か月先なので燃料を抜いて保管します。
さて次回使うときにどうなっているやら。。。

フライトコントローラーを自作してみる。~その18~ またまたF7

久々のFC自作ネタですが、内容は前回とほぼ同じ。
壊れたFCを大量に貰ってきたので、ここからSTM32のF7マイコンを外して自作基板に載せるのです。
未だにSTM32マイコンは入手困難なので壊れたFCを頂けると非常に助かります。

ESCまで含まれていますがこっちの自作は難易度高く、今の所FCだけ。

こうしてみると見るからに壊れている基板からパッと見では何ともなさそうなモノまで色々あります。正常っぽいのはもしかして直るかもという期待もあるので今回は明らかに壊れていそうな中から2枚を選び、マイコンを外して新しいFCを2個作ろうと思います。

では取り外しから。ヒートガンで温めると・・・

隣の発振子も一緒に外れました。

もう一個も外しましょう。今度はレギュレーターらしきICも一緒に外れました。

次に新しい基板にハンダペーストを塗って部品を載せます。前回までは古くなったハンダペーストにアルコールをスプレーして無理やり使っていましたが今回は新しいハンダペーストを使う事にします。

そしてリフロー

なんかいっぱいブリッジしています。

でも裏面に進み、またリフロー。

裏面は結構うまくできました。

問題は表面のブリッジ。 基板から外した時にリードが曲がり、これを完全に直していなかったのでバラバラです。
実装前にもっと完璧に直しておくべきでしたね。
もう半田ゴテでやるしかありません。汗かきながらなんとか修正しました。

またSHコネクタが思いっきりずれているのを発見。
リフロー前に手でも当たったのな?こちらも修正。


なおこの部分、F4の頃はSBUS信号を入れる為に反転回路を通す必要があったのでXOR用ICを載せる設計にしていましたが、前回F7だと反転不要である事が判ったのでXORは載せずに直結しています。

ところで私のレベルでは実装をミスる事が結構あるので実機に載せてテストするまで安心できません。という事で実装テスト。

一番良く実装をミスるのがジャイロセンサーのMPU6000ですが、今回新品のハンダペーストが効いたのか一発で動作しました。

しかし片方の基板はバッテリーから電源を供給するとDCDCコンバータ付近からジーという音がします。このDCDCはバッテリー電圧から5Vを作り出しますが、5V波形をオシロで見てもガタガタです。
DCDC周りの配線を見まわしても原因らしきものが見当たらないし、以前「MP1584EN その3」の時にハズレICを引いているので今回もMP1584ENを外してみました。外観は異常ない様ですが、別の個体を取り付けてみると正常になったので、やっぱりハズレICを引いたんですかね(もう一度このICに戻せばハッキリするんですがやる気が起きません)。’’

前回のハズレ品は裏面パッドが無かったけど今回はちゃんとついています。

今のところ10個買った内の2個がハズレなのは確率高すぎですね。やっぱりパチもんだったのかなぁ。まだ半導体不足になる前とはいえ10個で218円だったしなぁ。

ところでこの部分、VTX用の5V電源をチップコンデンサの根本から取っています。

回路図ではこの部分で・・・

ここから5Vを取ればUSBから電源供給する時にはVTXを動作させなくできます。
もし通常の5V端子からVTX電源を取ると、レースや大勢で飛ばすとき、PCと接続してレートを変更するだけでも電波が出てしまうと色々と不都合があるのです。
次に基板を設計する際はこのためのパッドを設けておこうと思います。

そんなこんなでFC2枚完成です。

実は今年も7月23,24日のJDL宮崎戦に参加する予定なので予備基板を作っておきたかったのです。機体に積んでいるFCは去年作ったF4搭載の物なので今回作ったF7の方が高性能ですが、レースまでに飛ばす機会がないので実績のある方を積んでいきます。
去年は自作FCで参戦する事が目標な感じでしたが、今回は人並みのタイムで飛ばし、できれば(オープンクラスですけど)予選を通過したいと思います。

ふる~いソケットレンチセット

このふる~いソケットレンチセット・・・安物ですがウン十年使っています。

かなり前から中のプラスチックがボロボロで工具のおさまりが悪くなりました。

プラスチックだけ取り出すとこんな感じ

そこで作り直す事にします。
まず大体の寸法を測ってJw-cadで図面を書いて・・・

ダイソーの6mm厚MDFボードをレーザーでカット。

こんな感じで納めます。

しかし6mm厚MDFだけだとちょっと薄く、取っ手を持って歩くとケース内で工具がバラけます。
そこで蓋側にプチプチを貼り付けて対策しました。

いままでソケットがバラバラでどこに何㎜のがあるかわからなくなっていましたがこれで大丈夫。

耕運機もらった・・その2

前回、エンジンを始動するとピチュピチュ音がしていた現象がいつの間にか治ったと書きました。しかし原因がかわからないままというのも気持ち悪いのでもう一度調べました。


結論を言うとシリンダーヘッドに鉄板をねじ止めし、その鉄板に燃料タンクをねじ止めする構造なのですが、このシリンダーヘッドのネジ穴から音が出ている様です。

ではネジあり/なしの音を比べてみましょう。動画にしてみました。

はっきり違いますね。間違いないです。
ちゃんと組み上げれば問題なかったところ、ネジをつけずにエンジンを掛けたのが間違いだった様です。

しかしこの穴、燃焼室につながっているんでしょうか?
なんでだろう?

耕運機もらった・・

知り合いから小型の耕運機をもらいました。
我が家の家庭菜園といっても大した広さはなく、まず自分で耕運機を買う事はないのですが鍬で耕すとヘトヘトになるし、もらえるのなら使ってみようかと。

但しくれた人も誰かから貰って10年ぐらい放置していたとの事。動くかどうかは分かりません。

シバウラのチビ楽200という機械です。 いつ頃の物かは分かりません。

空っぽの燃料タンクにに少しだけガソリンを入れ、リコイルスターターを引いてみましたがエンジンがかかる気配はありません。
でもプラグを外してスターターを引っ張ると火は飛び、点火系統は正常です。

ではキャブレターの掃除からですねー。
という事で外して開けてみました。やはりジェットは思いっきり詰まっています。
常套手段として荷札の針金でつつきました(こんな時のために荷札をを取ってあるのです)。なんかこうネバ~とした感触だったけど貫通しました。

フロートチャンバー内の汚れも取れるだけ取って組付けます。
で再トライ・・・・やっぱり掛かりませんね。しばらく試してダメだったので再びキャブを外してみたら、またジェットが詰まっていました。
こりゃタンクからキャブまでの燃料系統全部を掃除する必要がありそうです。

タンクは風呂場で洗い、燃料ホースはカチカチだったので交換しました。ストレーナーもコックもバラしてパーツクリーナーで洗浄。

キャブも再び徹底的に洗浄し、組付けようとしたところで本体とフロートチャンバーの間のパッキンが無くなっているのに気づきました。最初にバラした時にはあったので2度目の掃除の時に外れたんだと思います。
どこかで落としたんでしょうけど見つかりません。
どうしようか考えた挙句、自作する事にしました。

ガソリンに耐える材質が必要なので、ネットで調べたところニトリルという作業用手袋等に使われているゴムが良いらしいです。我が家にもゴム引き手袋はありますが布と一体なのでそのままだと何かマズそう。
ニトリルのシートならAmazonで売っていますが手元にはありません。
もうちょっと調べるとシリコンゴムも良いみたいです。これだと以前ダイソーで買ったのがあります。

リフローオーブンの時つかったシリコンゴム

コイツをレーザーで切ってみましょう。Jw-cadで二重丸を書いてカットします。

こんな感じ。輪ゴムにしか見えないですけど・・・

自作パッキン

サイズはピッタリです。

キャブレターに組付けるとピンク色のパッキンが見えてちょっとオシャレ。

これを組付けてエンジン始動。掛かりました!!
でも何だかピチュピチュという変な音がします。結構大きな音なので排気漏れかなーと思いマフラーを外してみても特に穴も見当たらず、そのまま取り付け。

小さなマフラー

その他色々調べたけど原因は分からず。まずは先に進みます。

あとエアフィルターも整備が必要です。
見たことのない形のエアーフィルター。スポンジにオイルを浸み込ませる「湿式」の様です。昔乗っていたバイクも湿式でしたが構造が違いますね。

開けてみるとスポンジはボロボロ。スポンジが溶けた様になってこびり付いているのを落とせるだけ落とします。

新たに適当なスポンジをハサミで切って取り付けました(オイルに耐えるのかは不明だけど)。
そして新しいオイルを入れて取り付けます。

あとは外したカバー等を元通りに組み付けて再びエンジン始動。すると何故かピチュピチュ音は消えていました。
何が原因だったんだろう。エアフィルター?

では実際に耕す準備を。
その為には爪を取り付ける必要があります。これまでは代りに車輪を取り付けてあったのです。

爪は途中で分割できる様ですね。初心者なので最小単位でやってみます。

爪は軸に通した上で穴にピンを貫通させて止めるのですが、今までついていた車輪のピンだと短すぎる事に気付きました。8Φで100mmぐらいのピンかボルトが必要です。こりゃ買いに行くしかないかなと思いながら工作室の中を探すとちょうどいいのがありました。しかも5本もある・・・

これで準備完了。
早速耕してみました。人生初の耕運機です。

ちゃんと耕せるじゃないですかぁ。これを鍬でやったら汗だくですよ。
うん。いいものを貰った。

小モス、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に設定したかったから(謎バージョンにはこの選択がないのです)。こうするとスティックの中点をモーター停止、上を正転、下を逆転にできるのです。息子はこれで水中ドローンを作ろうとしています。