2 ポイント 投稿者 GN⁺ 2025-08-20 | 1件のコメント | WhatsAppで共有
  • 筆者は 波動歯車装置(ハーモニックドライブ)ESP32マイクロコントローラ を用いてカスタム望遠鏡マウントを製作した
  • 既存の 市販追尾マウント は価格が非常に高いため、DIYで自ら設計・製作することを選んだ
  • PCBの設計・製作工程、FreeCADでの3Dモデリング、構成部品の選定など、設計全体の流れを詳しく説明している
  • 総製作費は約1,700ユーロで、1台あたりの単価では 市販製品に対して競争力 を確保している
  • 自作マウントと OnStepXファームウェア の統合を通じて、実際の天体撮影性能と改善の経験を共有している

新たな出発点

数年前、筆者は YouTubeの天体写真チャンネル に触発されて天体写真に興味を持つようになった。三脚の上で短時間露光の撮影を数百枚行い、その後Sirilソフトウェアで合成する方法でオリオン星雲の撮影を試みた。しかし 追尾装置の必要性 を感じ、Move Shoot Moveトラッカーを購入したものの、目標天体を見つける難しさや極軸合わせの大変さ、満足のいかない結果から、より本格的な望遠鏡マウントの製作に関心を持つようになった。

PCB製作経験の拡大

2024年、カスタムPCB設計 に関するYouTube動画を偶然見つけ、従来の雑然としたブレッドボードの代わりに、すっきりして安価な 実装用PCBの使い方 を学んだ。最初のプロジェクトとして、ESP32とe-paperディスプレイ、BME680センサーを活用したスマートサーモスタットを製作した。この経験をもとに、望遠鏡マウントにも自らPCB設計と製作技術を適用することを決意した。

本格的な調査とコミュニティ資源の活用

ハーモニックドライブの採用 を中心とした設計を構想。AliExpressや各種DIYコミュニティ(HEMY、HrEM、DHEM、DIY EQ Mount V2など)のオープンソースを参照しながら、部品選定と機構構造 の研究に多くの時間を費やした。ステッパー/サーボモーター、FOC制御、SimpleFOCなど各種オープンソース実装やコミュニティ情報も調査した。

設計上の決定と構造

  • RA軸(赤経軸) : 42AIM15サーボモーター + Type 17ハーモニックドライブ(100:1減速)
  • DEC軸(赤緯軸) : MKS Servo042Dステッパー + Type 14ハーモニックドライブ(100:1減速)
  • マウントおよびハウジング: Arca Swissプレートを採用、Move Shoot Moveウェッジと互換
  • 動作モード: GEM(赤道儀)またはALTAZ(経緯台)
  • マイクロコントローラ: ESP32-S3
  • 電源: USB-C PD 最大24V/4A
  • モーター制御: step/dir/en, ULN2003 + MODBUS, CANBUS
  • 拡張性: 余っているGPIOピンを外部に引き出し

モーターごとのマイクロステップおよびサーボ制御の特性を活用することで、設計を簡素化しつつ追尾精度を向上させた。CANBUSを通じたマイクロステップの動的変更により、高速スルー(位置移動)と高精度追尾のバランス を実現している。

PCB設計と問題の克服

  • KiCadで 半円形PCB を設計し、ケースにぴったり収まる形状にした
  • ESP32-S3のアンテナなしモジュールで配置の自由度を確保し、USB-C電源入力回路(最大24V)を採用
  • PicoPDオープンソース回路およびAP33772 ICを活用。JST PHシリーズコネクタを選定し、小型かつ大容量の接続 を実現
  • 初回のIC置き換え過程で I2C配線ミスと誤動作 を経験したが、第2版では検証と多数のテストポイント追加によって問題を解決

OnStepXファームウェア連携

オープンソースの OnStepXファームウェア を適用し、望遠鏡制御とWiFi通信に対応した。初期のスルー動作(高速ポイント移動)ではESP32に負荷がかかり安定性の問題が生じたが、スルー速度の低下とWiFiクライアントモード への切り替えで解決した。OnStepX向けのピンレイアウトファイルとマイクロステップ動的制御コードを追加するだけで、大きな修正なしに統合 に成功した。

製造および組み立て工程

PCB製作とCNC金属加工はどちらもJLCPCBで実施した。事前の3Dプリント試作なしにCAD図面だけでCNCを発注するという 大胆な選択 により、満足のいく部品精度を得た。ただし赤経軸キャップの設計ミスが発生し、スペーサーを使って簡単に解決した。すべての部品はM3/M4のタップ加工とねじ締結だけで組み立て可能。手作業でのタップ加工 により製造コストも削減した。

実運用の経験

数多くの 極軸合わせ、セッティング、ソフトウェア(INDI、KStars、Ekos、PHD2)の設定 に関する試行錯誤を経て、実運用の経験を蓄積した。初運用時には大小さまざまな問題で撮影失敗も多かったが、安定化の過程で 1〜2アーク秒の精度 まで到達し、600mmレンズで30秒露光に十分な結果を得た。写真のスタッキングにはSirilを使用しており、マルチナイト合成などの追加目標にも取り組んでいる。

製作費用と経済性

総費用は約1,700ユーロ(工具、ハードウェア、予備研究用の部品を含む)。1台あたりの単価に換算すると約800ユーロ程度。市販のGOTOマウント(1,200〜4,000ユーロ) と比べて高い経済性を確認したが、それ以上に自分で作る経験そのものに大きな価値を見いだしている。

項目別の単価詳細(主要項目の要約)

  • ハーモニックドライブ(2個): 144ユーロ
  • MKSおよびサーボモーター(各2個): 73〜216ユーロ
  • CNC部品: 215ユーロ
  • PCB、コネクタ、ねじ、工具などその他

結論と所感

自ら作り、問題を解決し、設計・製作・検証のサイクル全体を回した経験が、市販製品を購入する以上の意味 を持つことを強調している。Version 1 PCBの失敗を通じて、慎重な検証の重要性を学んだ。FreeCADやKiCadの習熟、オープンソースの活用、ハードウェア開発全体の過程から多くの教訓を得た。OnStepXファームウェアとコミュニティ資源 のおかげで、DIY望遠鏡マウントも一般の人が実現できるプロジェクトであることを示している。

星を追尾する自分だけのマウントを自ら作り、それを完全に理解できる――その達成感こそが本当にかけがえのない価値 なのだ。

1件のコメント

 
GN⁺ 2025-08-20
Hacker Newsの意見
  • USB-C電源から出ているケーブルがインダクタの役割を果たし、つまりLCフィルタ構成になってローパスフィルタのように動作するため、オンボードのコンデンサが必要になると説明している。モーターが瞬間的に大電流を消費するとき、インダクタの性質上すぐには電流を流せないので、コンデンサが代わりに電流を供給し、その後でインダクタが徐々に電流を渡すという動作原理だという説明

  • 本当にすばらしいプロジェクトと説明で、タイミングも最高。13歳のときからアマチュア天文に夢中で、複数の望遠鏡を所有し、家族と夜空を眺めながら長い時間を過ごしてきた。最近は10インチSCTと4インチNewtonianを引っ張り出して、7歳の息子に月と土星を見せた。両親も一緒に見られて、とても意義深かった。10インチSCTはGOTO機能のない古いフォークマウントに載っている。GOTOの利点も調べてみたが、自分で星を探す楽しさがあるので、まだ購入には至っていない。専用冷却カメラのZWO 585MCは買った。一方で、星を探すのにとてつもない時間を失った経験も多い。Telradだけでは足りず、3Dプリンタと電子工作の知識で自作のサードパーティ製マウントを作ろうとも考えた。モーターをNEMA 17ステッパーに替えることも検討した。そうして探しているうちにPiFinderというプロジェクトを知った。オートメーションと手動ガイドの完璧なバランスのように思える https://www.pifinder.io/。3DプリントとPCB製造技術の進歩によって、近いうちに多くの問題を解決できるという確信を持った

    • GOTOが面白くないという意見を読むと、本当に好みはさまざまだと改めて感じる。自分はむしろ対象を見つける過程がいちばん苦手なので、gotoマウントには感謝している
    • ZWOカメラを Kstars/EKOS に接続すれば、ソフトウェアでプレートソルビングを使って正確にどこを向いているか把握し、それに合わせて調整できる
  • このすばらしいプロジェクトで回路トレースについて1点触れると、24V対応のためにトレースを広く取りすぎたとしているが、実際には電圧が高いほど電流は低くなるので、むしろ細くしても問題ない。トレース幅は電流に応じて決まり、トレース間隔こそ電圧に応じて気にすべき部分

  • ブログからの引用: "ターゲットに向けて望遠鏡を動かすとき、モーターに送るパルス数が多くなり、小さなESP32には過負荷になる"。自分もステッパーモーターを高速かつ高精度に制御することがあり、わずかなパルス欠落やグリッチも許されない。MCUコアでは限界があるので、タイマー+DMAで制御している。最終的にはSTM32G4 MCUのACT(Advanced Control Timer)機能を活用した。DMAだけで任意波形の生成が容易で、コアが過負荷になってもスリープモードでも、タイマーは影響を受けない。最近はRP2350のPIOも検討している。ESP32にはMCPWMがあるが、複雑な加減速プロファイルを100%コアフリーで実装するには、タイマーを段階的に使うか割り込みを使う必要があり、そうすると再びコア依存になってグリッチの可能性が出る。ST社のACTはモーター1台あたり独立したタイマーなので実装が単純で、データシートをしっかり読めばよい。専用ドライバIC(Trimanicなど)という手もあるが、ソフトウェアの複雑さはむしろ自分の方式より高い

    • OnStepXは自分の知る限りパルスベースで、DMA活用方式はまだ見たことがない。どちらもCANBUS経由の位置指令モードで、パルスの代わりに駆動することは可能だと思う。OnStepXのコードでもその可能性は見たが、パルスモードは始めるのがあまりに簡単なので、そのまま選んだ
    • rp2040でステッパー制御をするときPIOも考えたが、5ビットカウンタと32命令の制限のせいで使いづらかった。代わりに第2コアをモーション制御専用にし、ビットバンギングでstep/dir信号を出して、単軸の台形プロファイルには十分実用的だった
    • MCUでステッパー制御がどこまで可能か気になるなら、Merlin 3Dプリンタファームウェアを参考にするとよい。小型の8ビットAVR MCUでもデルタプリンタ向けの複雑な演算をこなしている
    • ESP32にもRMTがあるはずだが、その方法は検討しなかったのか気になる
  • freeCADを3年間使っている。このプロジェクトで作られた成果物を見て本当に感嘆した。freeCADは好きだが、これほど執拗に不便でいらだたしい経験をしたソフトもそう多くない

    • FreeCADには感謝しているが、プロジェクトの複雑さが上がるほどランダムクラッシュに本当に苦しめられる。それでも、主に必要な機能はやり方さえ分かればFreeCADでも実現できる。ほかのCADを使ったことがないのが、かえってfreeCADに定着するきっかけになった
    • 7年間FreeCADで趣味のモデリングをしているが、初めて使う機能では今でもユーザー体験にもどかしさを感じる。FE開発者なのでQA基準は分かるが、freeCADにはその基準を満たせないUXが多い。オーバーコンストレインのエラーと警告の違いを調べるためにフォーラムを探したら、パフォーマンスを理由に意図的な方針を擁護する投稿ばかりで、パワーユーザーのゲートキーピング的な空気が本当の問題だ。まともなUX専門家とコミュニティマネージャーが切実に必要
    • OnShapeとFreeCADを交互に使っているが、OnShapeの洗練された完成度には感心する。ただ、購入したモデルの関係でOnShapeの無料ティアには上げられない。FreeCADでもできるが、「1時間で終わるだろう」と思うと結局徹夜になる
    • FreeCADが存在すること自体がすばらしく、今後の成熟に期待している。それでも、素早く結果を得たいならAutodesk Fusionの無料ティアを勧める。原則としてOSSしか使わない人には合わないかもしれないが、趣味用途では事実上制約なく品質も高い。OSSではないというだけで排斥されるように感じることがあるが、機能本位でソフトウェア選択の幅が広がるとよいと思う
    • ChatGPTやClaudeはこういう作業にとても役立つ。ドキュメントがしっかりしたソフトなら、AIがワークフローを段階ごとに丁寧に説明してくれる。完全に専門的だったり、参考資料が少ない分野では限界もあるが、目をつぶってあれこれクリックしたり、YouTubeを早回しで見るよりずっと速い。基礎概念を積み上げるための学習ガイドを作ってくれるよう頼むこともできる。ただし、AIのハルシネーションや誤りもあるので、必ずリンクや参考資料を求めるべき
  • 望遠鏡マウントで自分自身が精密測定、たとえば自力で惑星の位置天文測定(astrometry)をしてみるプロジェクトに強い関心がある。自分の測定だけで惑星軌道を解いてみるのは、Keplerら昔の天文学者たちが歩んだ道をもう一度たどるような感覚がある

    • 本当に面白いテーマだ。きれいな写真を撮る趣味を超えて、アマチュアの観測データを研究に使えるシステムを考えている。単一フレームの生データとメタデータ(時刻、座標、キャリブレーションフレームなど)を共有すれば、集団で科学研究やより美しい写真づくりにも使えるはずだ。Vera C. Rubin Observatory(米国の天文台)は数日で南半球全体を撮影できる。こうしたソフトウェアがグローバルなクラウドソーシング天文アレイへ発展したら本当にすばらしい
    • 実際、惑星の位置を正確に知るには、望遠鏡マウントの位置補正よりも、惑星を中心に入れて撮影した画像を周囲の恒星の固定座標と比較して位置を算出するほうが、はるかに正確だ。マウント自体を完璧に較正するのはほとんど不可能に近い。恒星相対座標方式は非常に高精度
    • もう一つ面白いプロジェクトとして、系外惑星のトランジット光度曲線測定がある。近い系外惑星なら、写真用レンズだけでも自宅の庭から観測可能だ。例として、ASI178MM-cとCanon FD 300mmで観測したあるアマチュアの事例を共有する https://astropolis.pl/topic/60163-wasp-10-b-w-pegazie-1270-mag-00340-mag/
    • 完全なファーストプリンシプルではないが、Seestar S50 roboscopeと回折格子を使って恒星の放射スペクトルを測定している人もいる
    • ちなみにKeplerは望遠鏡なしで、Tychoの肉眼観測データを使って研究した
  • 本当にすばらしいプロジェクトだ。PCBを設計するとき、適切なコンデンサや抵抗などをきちんと入れていないように見え、マイクロコントローラの安定性が低い。みんなどうやって必要な部品(デカップリングコンデンサなど)を決めているのか気になる。データシートを読んで、その通り全部入れればいいのだろうか

    • データシートの確認は必須。たいてい必須回路の例が載っているので、必ず参考にする。そのうえで良い習慣としては、チップのピン近くにデカップリングコンデンサを置くこと、グラウンドを安定させること、リファレンスレイアウトに従うことがある。熟練エンジニアの判断プロセスの説明(例: https://www.youtube.com/watch?v=aVUqaB0IMh4)も大いに役立つ
    • ほぼすべての部品のデータシートにはミニマル回路と参考設計がある。グラウンドプレーンの使用や信号線長などは、別途アプリケーションノートで説明されていることが多い
    • マイクロコントローラ回路を設計するときは、回路が公開されている開発ボードを参考にすると出発点をつかみやすい
    • データシートの確認に加えて、すべての電源ピンにできるだけ近くデカップリングコンデンサを入れ、PCBの片面をグラウンドプレーンにすれば、大半の問題は解決できる
  • CNC金属部品を発注して製作した点が特に印象的だった。自分もCAD設計初心者なので学びたい

    • 地元のメイカースペースに登録してマシンショップを使った。CNCマシン向けの講習と認定を受け、映画撮影機材用の単純な金属板をCADで設計してみた。簡単なGコード生成器があり、シミュレータで衝突もチェックできた。実際に製作に入るたびに誰かがヘッドを壊して装置が止まっており、結局手作業で作ったので一部寸法は完璧には合っていない。CNCサービスがあると知っていれば、直接CNCに頼めばよかったと後悔している
    • 実はとても簡単で、stepファイルをアップロードすればすぐに見積もりと製作可否を確認できる https://jlccnc.com/cnc-machining-quote
  • 本当にすばらしいプロジェクトだ。PCB製作費が高いのは実装のせいなのか気になる。JLCPCB基準で2層、100mm以下、HASL仕上げなどの基本オプションなら基板は安いが、USBコネクタ用のプレートスロットで追加料金が発生するのか、一度に何枚組立注文したのか、標準/拡張部品ライブラリの選択比率はどうだったのか、コネクタだけ別途はんだ付けした場合どれだけ変わったのか、拡張ライブラリ部品が1つでもあると全部品が個別ピッキング(組立)費用増になる構造なので、部品種類を最小化するのがコスト削減の核心なのか気になる

    • 実際、費用の主因は実装だ。基板はJLCPCBの2層で基本オプション、色だけ黒に変えて少し上がった。5枚ずつ注文し、これが最小数量だった。標準ライブラリにできるだけ合わせようとしたが、受動部品以外では限界がある。スルーホール部品は自分ではんだ付けした場合の差額は分からないが、気にするほどではない。部品種類を最小化するのが正しい。たとえば4kと6kの抵抗が必要なら、2kを5本組み合わせるほうが有利だ
  • とても印象的なプロジェクトだ。自分も自分のスコープ用に大型ハーモニックドライブマウントを買おうと思ったが、価格の壁が高すぎる。EKOS/Kstars/INDIツールを使いながらも試行錯誤が多かった。Pythonからindiデバイスを制御するために自分で書いたコードがある https://github.com/dahlend/contindi

    • どんな動機でこのコードを書いたのか気になる。EKOS自体にもスケジューリング機能が充実しているように見えるからだ。自分もMeLE 4CミニコンピュータでINDIサーバーを動かしつつ、ターミナルインターフェース(TUI)を書いてみた https://www.svendewaerhert.com/content/blog/telescope-mount/inditui.png。GNOMEリモートデスクトップの安定性問題で、ヘッドレス/リモートINDIサーバーへ移行した。近いうちにTUIのコードもきれいに整理してGithubに上げる予定だ