オリジナル OnStep基板 Rev2.x

<ナビゲーション>
オリジナル OnStep基板 Rev2.x
オリジナル OnStep基板 Rev2.x +ESP-WROOM-02
オリジナル OnStep基板 Rev2.x +Focuser
オリジナル OnStep基板 Rev2.x +Bluetooth

OnStep基板 Rev2.0 にGPSを載せる方法

基板概要

この基板は、オープンソース赤道儀制御ソフトウェア OnStep の実装基板です。必要な部品を実装し、OnStepを書き込むことにより、赤道儀の自動制御が可能になります。
詳しくは、OnStepのオフィシャルサイトOnStep Wikiにまとめられています。
また、ソースコードは OnStep GitHub を参照してください。
OnStepバージョンは 3.16 または 4.24 を推奨します。(TMC2130, 5160への対応(電流制御)はバージョン3.16以降で行われています。)

基板は私個人が実装したもので、オフィシャルのPCBとは設計が多少異なります。
主な仕様は次の通りです。
  • ピンマップはminiPCB2に一応準拠
  • Teensy3.2、4.0に対応
  • 赤道儀ドライバはDRV8825、TMC2100、TMC2130、TMC5160などに対応
  • DCモジュールOKI-78SRを採用。5V必須、3.3Vオプション
    代替品はこちら。
  • フォーカサー用のドライバを実装可能(オプション)
  • フォーカサー用ドライバはDRV8825、DRV8834、TMC2100などに対応
  • ESP-WROOM-02オンボード実装可能(オプション)
  • ESP-WROOM-02書き換えのためのソフトを提供(miniPCBで実装されていたTeensy経由の書き換えプログラムのサブセット版)
  • Raspberry Piサイズ。ケースはPi 4用のものを使用可。(ケース高さが必要)
  • ST4インターフェイスあり

  • (Rev2.1) ST-4ポートのピン1に+5Vを出力できるようになりました。SHCを接続する場合、使用してください。
  • (Rev2.1) モータードライバのパターン穴を1mm径に変更しました。ピンヘッダを刺すことができます。

表面

主要部品の実装面です。
Teensy は 3.2 と 4.0 に対応し、ステッピングモータードライバは、RA、DEC、フォーカサー用の3つ搭載可能です。
また、ESP-WROOM-02モジュールを表面実装するパターンを用意しました。

Rev2.1 (new!)

ST-4ポートのピン1に5Vを出力するためのジャンパ JP7 が追加されました。

Smart Hand Controller を接続する時の外部電源として使用できます。

JP7をジャンパした場合、ST-4ポートのピン1に5Vがかかりますので、ST-4ポートととしての互換性は失われます。他の機器のST-4ポートと接続した場合、接続先の機器に悪影響を及ぼす可能性がありますのでご注意ください。
ST-4ポートとして使用する場合は、JP7のジャンパは取り外してください。

裏面

ステッピングモータードライバの設定を行うためのはんだジャンパがあります。
また、ESP-WROOM-02回路用のチップ抵抗パターンがあります。
それぞれ必要な場合は実装を行います。

回路図

実装パターン

Teensy + RA、DECモータードライバ がベース実装になります。
Teensy, モータードライバ2個, DCモジュール5V が実装必須となります。
ベース実装に +ESP-WROOM-02 と +フォーカサードライバ をオプションで追加できます。
DCモジュール3.3Vは ESP-WROOM-02 を実装する場合に必要となります。


フル実装

ベース実装

パーツ表

記号番号パーツ名備考
-Teensy 3.2 or 4.01丸ピンソケット化またはロープロファイルソケット使用推奨
-モータードライバ
DRV8825
TMC2130など
2RA, DEC用
TMCとDRV系の混合はできないので注意
丸ピンソケット化またはロープロファイルソケット使用推奨
U4OKI-78SR 5V1DCモジュール
C1, C2コンデンサ
100μF
2耐圧25V以上あればとりあえず。
R6抵抗
330Ω
1LEDに適応する値に。
D1LED1ステータス用。ヘッダピンにしてLEDを引き出してもOK
J3, J4MINI-DIN4P コネクタ2秋月 ミニDINソケット4P (※1)
J56極6芯モジュラ1秋月 6極6芯モジュラ (※1)
J8DCINジャック1秋月 2.1mm標準DCジャック (※1) 
J6ヘッダピン 5P1拡張ピン用
J9ヘッダピン 2P1電源ライン用
-ピンソケット(1列) 8P4モータードライバ用
秋月 丸ピンICソケット(1列) または 秋月 ピンソケット(低メス)
-丸ピンIC連結ソケット(1列)8P4丸ピンを使用する場合 モータードライバ用
秋月 DIP連結ソケット(1列)
-ピンソケット(1列) 14P2Teensy用
秋月 丸ピンICソケット(1列) または 秋月 ピンソケット(低メス)
-丸ピンIC連結ソケット(1列)14P2丸ピンを使用する場合 Teensy用
秋月 DIP連結ソケット(1列)
-Raspberry Pi 4用ケース1OKI-78SRの高さがあるため、厚みのあるケースを選択してください。
私が使用しているのは、
共立エレショップ Raspberry Pi 4用 ABSケース (黒)
シンプルで加工しやすくオススメです。

(※1) 他メーカーのものだとピン位置が異なる場合があります。
(※2) 実験中に焼いてしまうのはモータードライバあるあるなので、ピンソケットで取り換えられるようにした方がいいです。

DCモジュールのOKI-78SRシリーズの代替品はこちら。

部品調達先

秋月電子通商 いつもお世話になっています。
スイッチサイエンス モジュール系強し。変わったパーツ多数あります。
共立エレショップ 関西ならここ。学生時代に入り浸ってました。
マルツオンライン 部品点数の多さならここ。特殊部品も見つかったりします。
aitendo 液晶が豊富。モジュール系が充実。
朱雀技研工房ストア ロボット系部材、モータードライバなど扱いあり。
ストロベリー・リナックス 電源系のモジュール探すならここ。
ロボショップ ロボット系のパーツが豊富。Teensy, DRV8825の扱いあり。
Amazon 中華系ショップは海外発送だったりするので注意。コピー品が送られてくることがあるので品質は期待してはいけません(^^;

部品実装

特にテクニカルな個所はありません。
丸ピンソケット化またはロープロファイルソケットを使用しておくと、後々、ドライバモジュールを交換したり、Teensyの裏面ピンを使用するときに抜き差しできるのでオススメします。


記号番号備考
J9電源ラインのジャンパ。通常ショートして使用します。
電源スイッチやヒューズなどの保護回路をはさむことができます。
DCINの入力電圧がそのままモータードライバへかかります。DCIN=12V を想定していますが、DCモジュール OKI-78SR の入力定格(7V~36V)以内であれば動作します。
J6拡張ピン。電源、GND、TeensyのRX1、TX1 に接続します。
ESP-WROOM-02を実装する場合は、RX1、TX1ピンは使用できません。
また、DCモジュール3.3Vを実装しない場合は、3.3Vは使用できません。
D1ステータス表示用のLED。A、Kは図の通り。
今回の基板はレイアウトの都合上、LED位置がケースの穴位置からずれています。
その他モータードライバの向きは図のピンがVMOTです。

Teensy

3.2 または 4.0 を使用可能です。

micro USB コネクタ裏面のパターンを1カ所カットします。
micro USB シリアル接続を使用する時に、USB端子からの5Vを入力しないようにVUSBラインをカットしておきます。
カットするとDCINを接続しないとTeensyが起動しません。ファームの書き換え時などご注意ください。

コネクタ類


6極6芯モジュラ

ST-4互換インターフェイスです。
ピンアサインはポート正面から見て図のとおりです。

MINI-DIN4P

コネクタ正面から見て、DRV8825ピンへの接続は図のとおりです。
モーターのラインへ接続してください。

ステッピングモータードライバ

この基板で利用できるステッピングモータードライバをいくつか例示します。
ここで挙げたもの以外でも、ピンアサインがDRV8825に近いものであれば利用できる可能性があります。各ドライバの電気特性やピン配線を確認の上、使用してください。
また、同じドライバチップでもモジュールメーカー、モジュールバージョンによってピンアサインが異なっている場合があります。
必ず、メーカーのデータシートを確認して使用しましょう。

DRV8825

おなじみのドライバです。
本基板はこのドライバを基準に設計されているので、そのまま実装すれば問題なく使用できます。
モーターを接続前に必ず電流調整を行ってください。

TMC2100

TMC系のドライバモジュールは複数のメーカーから設計の異なるものが出てます。似て非なるものがあったりするので注意してください。
ここでは、 Silent2100 FYSETC.COM V1.3 というモジュールを取り上げます。
この基板は、マイクロステップの設定がモジュール上のジャンパで設定するようになっています。詳しくは、OnStep基板rev1.1 de TMC2100 こちらの記事を参照してください。
OnStep基板へはそのまま実装することができます。
電流調整をお忘れなく。

TMC5160

TMC5160はSPIモードをサポートしています。このモードは、ドライバチップの各種設定や動作をSPIシリアル通信によって制御する方式です。
TMC5160は電流制御用の可変抵抗がなく、ハードウェアによる電流調整が不要です。その代わり、SPIを使ったソフトウェアよる細かな電流制御が可能になっています。また、非常に低発熱です。今後、このようなドライバが主流となる可能性が高いです。

ここでは、 BIGTREETECH TMC5160 V1.2 を取り上げます。

このモジュールを実装するには、基板裏面の JP1, JP2 にあるジャンパ(デフォルトでショートしています)をパターンカットします。
このジャンパはDRV8825において、RESET と SLEEPピンをショートさせているパターンになりますが、TMC5160の場合、該当するピンが SDO と CLK になるため、パターンを切り離し問題なく動作するようにします。

もし、TMC5160以外に再度載せ替える場合は、JP1, JP2 をはんだでショートさせてください。

パターンカットしたら、あとはそのまま実装すればOKです。
電流制御は、OnStep の Config.h  で行います。RA/DECのドライバ設定箇所に電流値の設定があります。

#define AXIS1_DRIVER_MODEL            TMC5160_VQUIET //    OFF, (See above.) Stepper driver model.                                      <-Often
#define AXIS1_DRIVER_MICROSTEPS       32 //    OFF, n. Microstep mode when tracking.                                        <-Often
#define AXIS1_DRIVER_MICROSTEPS_GOTO  OFF //    OFF, n. Microstep mode used during gotos.                                     Option
#define AXIS1_DRIVER_IHOLD            200 //    OFF, n, (mA.) Current during standstill. OFF uses IRUN/2.0                    Option
#define AXIS1_DRIVER_IRUN             330 //    OFF, n, (mA.) Current during tracking, appropriate for stepper/driver/etc.    Option
#define AXIS1_DRIVER_IGOTO            OFF //    OFF, n, (mA.) Current during slews. OFF uses same as IRUN.                    Option
#define AXIS1_DRIVER_REVERSE          OFF //    OFF, ON Reverses movement direction, or reverse wiring instead to correct.   <-Often
#define AXIS1_DRIVER_STATUS           OFF //    OFF, TMC_SPI, HIGH, or LOW.  Polling for driver status info/fault detection.  Option

AXIS1_DRIVER_IHOLD, AXIS1_DRIVER_IRUN, AXIS1_DRIVER_IGOTO が電流値(mA)です。詳細は、ここに説明がありますが、IHOLD が静止時の保持電流、IRUN がトラッキング時の動作電流の上限値を指定します。IGOTO はGOTO時の駆動電流ですが、無指定なら IRUNが適用されます。

AXIS2にも同じ設定がありますので、モーターに合わせた値を指定してください。

OnStepの書き込み

OnStep ver3.xxをベースに解説します。旧バージョン2.xxについては解説しません。
新しいバージョンを強く推奨します。

ArduinoIDEで指定すべき設定は、ボード設定です。
使用しているTeensyバージョンを指定してください。必要に応じてシリアルポートも指定してください。
ボードの導入方法などは説明しませんので他のサイトにて調べてください。

OnStep ver3.xx では、設定ファイルが一本化されました。
基本的に、Config.h のみを触れば、様々なパターンの回路ピンマップに対応できるようになっています。
OnStep基板Rev2.0では、基板デザインがMiniPCB2に準拠しています。
Config.hの設定はいくつか必須の設定項目があります。

PINMAP (必須)

#define PINMAP                        MiniPCB2
基板デザインを選択します。MiniPCB2を指定してください。

MOUNT_TYPE (必須)

#define MOUNT_TYPE                    GEM
駆動する架台タイプです。一般的な赤道儀ならGEMです。

LED_STATUS (オプション)

#define LED_STATUS                     ON
ステータス用のLEDを使用するスイッチです。OnStep基板のD1を実装している場合は、ONにするとLEDが点灯します。

ST4_INTERFACE (オプション)

#define ST4_INTERFACE                 ON_PULLUP
ST4インターフェイスを使用する場合は ON_PULLUP に設定してください。

AXIS1_* AXIS2_* 関係 (必須)

2軸ギアから計算される各種パラメータは、オフィシャルサイトで配布されているExcelの計算シートにて計算した値を設定してください。
これを間違えると、正しい角度で軸が回転せず、まったく明後日の方向を向いてしまいます。

その他

ケース

コネクタ類のレイアウトを Raspberry Pi4 に合わせたので、RasPi4用のケースを推奨します。また、OKI-78SR の高さがあるため、ケースも厚めのものが必要です。


写真のケースはRasPi4用でファン取り付けが可能になっているため、ケース高があります。また、RasPi4 GPIO引き出し用のスリット部分から配線も引き出せたり、加工もしやすいのでオススメです。


オリジナル 基板頒布

オープンソースの架台制御ソフト、OnStepのハードウェア実装基板などの話題です。


頒布状況 2024/3/16
○ OnStep基板 Rev2.1
○ OnStep基板 Rev3.0
○ GBC-SHC 基板 Rev1.0
頒布ご希望の方はこちら、基板頒布のお知らせ をご覧ください。

このブログを検索

Blog Archive

QooQ