2018-04-25 基板頒布終了しました
2018-04-22 Teensy microUSB(シリアル)使用のための修正
2018-04-16 エラー個所一部修正
基板概要
表面
Teensy3.2, DRV8825 など主要部品が載る側です。1か所シルク印刷ミスでST-4モジュラの囲み線が裏側に描かれていますが間違いです。
裏面
BluetoothモジュールのRN-42が載ります。RN-42を使用しない場合は実装しなくても大丈夫です。
ただし、実装しない場合は、USB-シリアルコンバータなど別途PC等のデバイスと接続する方法を用意してください。
回路図
パーツ表
部品 | 数 | 備考 |
---|---|---|
Teensy 3.2 | 1 | |
DRV8825モジュール | 2 | ソケット用丸ピンにするので、足は付いていないものが良い。 |
RN-42 Bluetoothモジュール | 1 | 使用しない場合は不要。(※1)。 秋月 Bluetoothモジュール RN42-I/RM |
USBシリアルモジュール Wifiシリアルモジュール | - | 必要な場合のみ (※1)。例えば下記のようなもの。 秋月 FT232RQ USBシリアル変換キット |
3端子レギュレータ TA4805S 5V/1A(コンデンサ付き) セラコン0.1μF, 電解コン47μF | 1 | 秋月 5V1A TA4805S 他の5Vレギュレータでも可 |
レギュレータ用放熱板 | 1 | 適当なもの。下記は配置OK 秋月 放熱器(ヒートシンク)15x25x11mm もっと小さくてもいいと思います。無いと不安ですが。 |
電解コンデンサ 100μF | 2 | C1, C2 耐圧25V以上あればとりあえず。 |
抵抗 1KΩ | 1 | R2 (※1) |
抵抗 330Ω | 1 | R1 LED用 |
LED | 1 | D1 |
MINI-DIN4P コネクタ | 2 | 秋月 ミニDINソケット4P (※2) |
RJ12 6極6芯モジュラ | 1 | 秋月 6極6芯モジュラ (※2) |
DCINジャック | 1 | 秋月 2.1mm標準DCジャック |
ヘッダピン2P | 2 | J7, J8 |
ヘッダピン4P | 1 | J3 |
ジャンパピン | 3 | |
丸ピンソケット 8P | 4 | DRV8825用 (※3) |
丸ピンIC連結ソケット8P | 4 | DRV8825用 (※3) |
丸ピンIC連結ソケット14P | 2 | Teensy用 |
細ヘッダピン7P | 2 | Teensy裏面パッド引き出し用(後述) L字でも可 |
Raspberry Pi ケース | 1 | お好みのもの。私が使用したのは aitendo RaspberryPiケース |
MINI-DIN4P プラグ | 2 | モーターへの配線用プラグ |
(※2) 他メーカーのものだとピン位置が異なる場合があります。
(※3) 実験中に焼いてしまうのはDRV8825あるあるなので、ピンソケットで取り換えられるようにした方がいいです。
(※4) R3, R4の抵抗は不要です。R3をジャンパ線でショート、R4をオープンにしてください。
部品調達先
秋月電子通商 いつもお世話になっています。
スイッチサイエンス モジュール系強し。PCB製造サービスやってます。
共立エレショップ 関西ならここ。学生時代に入り浸ってました。
マルツオンライン 部品点数の多さならここ。特殊部品も見つかったりします。
aitendo 液晶が豊富。モジュール系が充実。
朱雀技研工房ストア ロボット系部材、モータードライバなど扱いあり。
ストロベリー・リナックス 電源系のモジュール探すならここ。
ロボショップ ロボット系のパーツが豊富。Teensy, DRV8825の扱いあり。
Amazon 中華系ショップは海外発送だったりするので注意。コピー品が送られてくることがあるので品質は期待してはいけない。
実装
パーツを載せていけば基本的に完成です。
モーターを付ける前にDRV8825の電流調整を忘れずに行っておきましょう。
基板には電源スイッチが付いていません。DCINで即動作を開始します。
電源周り
マイコン用の電源レギュレータの方向は右図の通り。レギュレータを寝かせて放熱板を付けてください。DCINジャックはセンタープラスの12V入力を想定していますが、ここの電圧がそのままDRV8825に入ってます。例えば9V駆動のモーターを使用するなら、DCIN9VでOKです。
ただし、8V以下はDRV8825の定格外になるので動作の保証はできません。
J8はジャンパピンを入れて通常ショートさせて使用します。オープンだと電源ラインがカットされます。
ここに電源スイッチを入れたり、ヒューズなど保護回路を挟んだり、GNDを引き出して別途DRV8825への変圧回路を入れても構いません。
Teensy 3.2 の取り付け
Teensyの裏面パッドも使用しているので、ピンで引き出す必要があります。写真のようにピンヘッダをL字に曲げ、パッドへ足を半田付けします。半田位置の枠がTeensyにシルク印刷されているので参考に。
基板短辺のピンは使用してません。
micro USB コネクタ裏面のパターンを1カ所カットします。
micro USB シリアル接続を使用する時に、USB端子からの5Vを入力しないようにVUSBラインをカットしておきます。
カットするとDCINを接続しないとTeensyが起動しません。ファームの書き換え時などご注意ください。
RN-42またはUART I/O
J3およびJ7を使用して切り替えを行います。
RN-42を使用する場合、J3のRX1, TX1を J7のTX, RX へそれぞれジャンパピンでショートさせます。I/Oレベルは3.3Vです。
USBシリアルやWifiシリアルモジュール(ESP8266)を使用する場合はJ3のみを使用します。TeensyからのUART I/Oピンと、5VとGNDが出ているので各々モジュールに配線します。3.3Vが必要な場合はTeensyの右図ピンから出ていますので配線してください(Max 250mA)
例は秋月で扱っているモジュールの接続例です。
モジュール側のCTSとRTSはショートさせます。
各モジュールは基板表面の空いている場所へ適当に配置してください。
RN-42は表面実装です。ピン間隔も狭いので難関ですが半田付けの腕の見せ所。
フラックスをサッと引いて、キレイに付けましょう(^^)
コネクタ類
RJ126極6芯モジュラはST-4互換インターフェイスです。
ピンアサインはポート正面から見て図のとおりです。
MINI-DIN4P
コネクタ正面から見て、DRV8825ピンへの接続は図のとおりです。
モーターのラインへ接続してください。
OnStepの書き込み
TeensyにOnStepを書き込まないと話になりません。OnStepのGitから最新のBeta版をダウンロードして、Arduino統合環境でTeensyに書き込みます。
この時、使用する回路とモーター、ギヤ比に合わせて Config を設定し直します。
Config
基板回路種類によって Configが分かれています。
この基板はTeensyを使用した一番単純な Config.Classic.h を使用します。
使いたい Config.****.h の先頭にある、defineスイッチをONにします。
#define Classic_ON // <- Turn _ON to use this configuration
オプションで私が追加したのは次の通りです。
#define POWER_SUPPLY_PINS_ONPins.hで定義される、Axis15vPin, Axis25vPin をHigh(5V)にします。
DRV8825のRESET, SLEEPの制御で使用しています。
#define STATUS_LED_PINS_ONステータスLEDを点灯させます。LEDが点滅するとトラッキング状態です。
#define AUTOSTART_TRACKING_ON隠しオプションのようですが、電源オンで即トラッキングを開始します。
簡易赤道儀として使う場合はこれができないと不便です。
#define ST4_PULLUPST-4ポートを内部プルアップします。実装部品を減らすための便利オプションです。
#define REVERSE_AXIS1_OFF // RA/Azm axis配線の関係でモーター回転方向が逆になってしまった場合、このフラグで反転させます。
#define REVERSE_AXIS2_ON // Dec/Alt axis
私の場合DEC側が反対だったので反転させています。
MaxRate, StepsPerDegreeAxis?, StepsPerWormRotationAxis1 などモーターやギヤ比に応じて設定するパラメータです。
OnStepのサイトに計算用のExcelシートがあるので、内容をよく読んで実際の機材の値を入れるとパラメータが計算されます。その値を転記しておきます。
その他
- ステータスLEDはRaspberry Pi ケースのAudioジャック位置になります。
- Raspberry Pi ケースによっては一部加工が必要です。また、DCINジャックの穴を加工してください。
- PCとの接続はTeensy の microUSBポートでの接続か、RN-42等のモジュール経由での接続ができます。
Linux環境においてTeensyのmicroUSB経由で接続する場合、シリアルポート初期化が上手くいかない場合があります。原因は複数考えられますが、Linux環境の modem Manager が接続の邪魔をしている可能性があります。
お久しぶりです。chunです。
返信削除活発な活動すばらしいですね。私は仕事に追われ8か月ほどさぼっていました。
手始めにSP赤道儀の改造(観測じゃないのかい)をやっており、いろいろと参考にさせていただいています。
ところで、RN42のRXに抵抗が入っていますが、不要ではと思うのですが。
Teensyは5Vトレラントと書いてありますが仕様を見ると5V系の信号を入力できるだけで、出力は3.3V系の様です。ご確認ください。
それでは、これからも参考にさせていただきます。
chunさんこんばんは。
削除すっかりはまっています(^^;
で、ご指摘の件、あれ?と思って再度データシート見たらおっしゃる通りでした。
どこのデータシート参考にしたんだろ?何か勘違いしていたようです。
分圧用のR3, R4が不要になるので簡単になりますね。
早速、修正しておきます。
ご指摘ありがとうございます!m(__)m
今晩は!
返信削除Teensyは3.3V系なのですね。私は試作でMEGA2560を使用していたので分圧しています。
私にとってRN-42のハンダ付けはかなり難易度が高いです。
SynScanはBluetoothでの接続ですと、操作中に直ぐリンクが切れてしまいます。
OnStepでは安定しています。但し、専用アプリは直ぐに接続出来るのにSkySafari 4ですと接続に数分掛かります。
何故でしょう?
こんばんは。
削除RN-42のパッド半田付けはなかなか難易度高いです(^^;
フラックスをしっかり塗布してやれば、半田ブリッジしてもリカバリー可能ですので、あとは根気ですね。
以前、別のBluetoothモジュールで同じような現象に出くわしたことがあります。
最初の接続シーケンスが上手くいかず、途中でエラーになりタイムアウトまで何もできない状態になってたようです。
そのまま2回目の接続ではすんなりつながっていました。
結局問題がSkySafariにあるのか、Bluetoothスタックにあるのかは分かりませんでした。
謎です(^^;
裏面ポートを使うなど、随分トリッキーな設定ですね。
返信削除カスタマイズ自由なのがオープンソースの魅力ですが。
しかし、有線制御なら、teensyのusbポートに直接接続すればいいのにと思うのですが、何が障害ですか?
カスタマイズの自由はおっしゃる通りです。
削除ソースコードやハードウェアが理解できる人が使用する分には十分すぎる恩恵ですよね。
かくいう私もピンアサインを変更して当初は使ってましたが、コードがバージョンアップするごとにいちいち自己修正箇所を再修正するのが面倒になったのでオリジナルに合わせました。
今回の基板も今後のソースメンテナンスの影響をできるだけ受けないようにする意味で、オリジナルの config を最低限の修正で使用開始できるようにピンアサインを変更していません。
その分、トリッキーとなるのはそうかもしれませんね。
個人的にももう少し配置しやすいアサインにしてくれたら、、、と、思うことはあります(^^;
TeensyのUSBシリアルを使えると私も当初思っていたのですが、オリジナルのOnStepが対応していないようなのでこうなってます。
ソースコードを触れば動きそうに思いますが、タイマー関係とかタイミング調整が入ってたりするとややこしそうなので触らずにおいています。
そういう実装があれば参考にしたいですね(^^)
裏側を使わない設定だと、MiniPCBがありますね。オリジナルなので、コード変更も最小限です。
削除このMiniPCBもUSB制御可能です。
Yahooブログの追い風さんとか、FC2のKiraraさんとかもたぶんUSBで制御していますね。
microUSBを使用するおまじないでもあるのですかね。
削除MiniPCBのUSB-BもTeensyの裏面パッドに配線するようにドキュメント記載があった気がしますが、microUSBと共有なら使えそうですね。
MiniPCBのコードでものぞいてみます。
NKOさん、魔法の呪文を発見しました。
削除Windows(ASCOM)ではすんなり繋がるんですね。知りませんでした(^^;;;
基本、Linux環境なので。
Linux環境だと呪文がないと繋がらないようです。
OnStepのフォーラムじゃなく、INDIのフォーラムにヒントがあったという灯台下暗しでした。
やはりINDIガラミでしたか。
削除私、LINUXは、疎いもので。
ascomは繋がるのにおかしいなぁと。
失礼しました。
のりきゅう様、
返信削除お世話になります。
4月15日にメールを送らせて頂いたのですが、未だ返事が来ません。
全ての予約が入ってからになるのかなと待ってましたら、
「基板頒布終了しました」となっていたのでビックリしました。
もう配布が終わったということですか?
真っ先に予約を入れたと思っていましたが・・・
ブログのお仲間さん優先でしょうか?それなら仕方がありません。諦めます。
Heliconconさん、こんばんは。
削除お待たせして申し訳ありません。
ただいま確認したのですが、どうやらHeliconconさんのメールが届いていないようです。
迷惑メールフィルタに引っかかったのかもしれませんので、お手数ですが再度送っていただいていいでしょうか?
事前にコメント欄で希望を頂いていたので、Heliconconさんの分は1枚確保しています。
その点はご安心ください。
お仲間優先ということもありませんよ。
Heliconconさん。
削除今度は無事届きました!
どうやら、どこかでフィルタリングされていたようです。
詳細はメールにてお知らせします。
しばらくお待ちください(^^)
1枚確保して頂いていたとは、大変気を遣わせてしまって申し訳ありません。
削除メールの表題にはOnStep基板希望と書いていました。
返事が無いのでメールを出そうとしましたが、度々出すのも厚かましいと思い躊躇していました。
相手に送れなかったというメッセージもありませんでした。
のりきゅう様、今晩は!
削除基板が届いたので早速ハンダ付けをしました。一番大変なRN42をズレた状態でハンダ付けしてしまったので、動くようにするまでに何時間も費やして凄く疲れました。
それに精根を使い果たし、馬鹿なミスをしました。DRV8825を反対向きに挿して電源を入れてしまったのです。
まずこのような間違いをする人は他にはいないでしょう。
Heliconconさん、大丈夫でしょうか(^^;
削除メールにて状況を把握しました。
アドバイス送っています。
のりきゅう様、アドバイスありがとうございます。
削除最初はICトールという何十年も前の銅線を編んだヒモでハンダを取ろうとしましたが、この時、パターンもはがしてしまったようです。メールを見る前に既にやっていまっていました。
ピン数が多いのでそれでは駄目なのが分かり、リューターでTeensyを細かく切り刻んで取りました。
それからRN42は生きているか確認するため、直接3.3Vを入れてスマホで繋がるか確認しました。
予備で買っていたTeensyがあったので早速取り付け、パターンが剥がれたところは基板裏にジャンパーを飛ばしました。
未だモーターケーブルを作っていないので、作成出来たら動作の確認を使用と思ってます。
のりきゅう様、お世話になります。
削除ちゃんと設定をして、OnStep-Betaを書き込んだところ、一度で正常に動作しました。
デフォルトで回転方向も合っていました。
SkySafariで模擬的に自動導入も確認しました。
24番Pinが繋がっていないようだったので裏配線しました。
それからRasPiに繋いで、手動でオートガイドの操作も動作確認しました。全てOKなようです。
ありがとうございました。
無事に動作、おめでとうございます(^^)/
削除ジャンパ作業も大変でしたね。
コントローラはこれでばっちり。あとはメカ部と運用ですね。
まだまだ試行錯誤が続くと思いますが、第一段階クリアと言うことでよかったと思います。
のりきゅう様、こんにちは!
削除ジャンパーは3箇所になりました(;_;)
実際の天体で確認していないので"SkySafariで模擬的に"と書きましたが、実際に赤道儀に繋いでおおよそ目的の天体の位置に向いているか確認しました。
試作のMega2560で作ったものは実践確認していますので、Teensyでも問題ないと思います。
試作機は百均の小さめの弁当箱に入れたのですが、今回はRasPiケースてとてもコンパクトでカッコイイです。(^^)/
とにかく、動いたので安心です。ありがとうございました。
Bluetooth接続時に出てくる名前も変更しました。
こんにちは!
返信削除配布頂いた基板への部品の実装が終わり、configファイルの設定に四苦八苦&ミスに気づかない等々しながら、なんとかモーター単体での動作確認まで出来ました。
LEDが点灯しない問題が残っているのですが、休みはまだありますので^ ^
やまぎりさん、こんにちは。
削除申し訳ありません。記事の図が間違っていたようです。
LEDのAKが逆ですねm(__)m
足の長い方を抵抗側にしてください。すみません。
ひとまず、モーターが動くようなればあとは取り付けと調整ですね。
もうひとやま、頑張りましょう!
のりきゅうさん、早速のコメントありがとうございます。私もただ実装しているだけで、意味が分かっていないのがバレバレですね^_^;LEDの点滅確認、ケーシングを終えたので、EQ-3へどの様にモーターを固定するか検討に移れます^_^
返信削除のりきゅうさんこんにちは
返信削除おかげさまで、Vixen SPDXのOnStep化を完了しました。ありがとうございます。
メールではタカハシのEM-1を自動導入化すると言っていましたが、全周微動(ポルタから拝借)をつけると、不動点から鏡筒までの距離が異常に長くなり、実用的ではありませんでした。結局、既存のタンジェントスクリューにモーターを付けて、2軸ガイド可能にしました。この基板を使うのはもったいないので、nanoでシンプルに作りました。2軸ガイド化したEM-1は思いのほか使い勝手がよく、重宝しています。
さて、SPDXですが、オリジナルのモーターとホルダーを取り去り、16:60のプーリーでベルトドライブ化しました。NEMA17のギヤなしモーターでも400倍速くらいは出ています。
一点問題がありました。wifi化するために、R4周辺のランドから3.3VとGNDを取っていましたが、うまく動作しませんでした。結局BTに変更しましたが、あとでよくよく見たら、R4のGND側が浮きランドになっていました...orz
ともあれ、基板のおかげで簡単にきれいに作成することができましたので、感謝しています。
ありがとうございました。
おちあいさん、こんばんは。
削除楽しい工作が進んでいますね!
ランドの件、一部GNDに落ちてない個所がありました(^^;
新基板ではたぶん大丈夫だと思いますが、基板作成も慣れないと注意カ所を見落としますね。
でも、お役に立てて幸いです。
メカ部がしっかりしていれば、電動化or自動導入化すれば本当に使い勝手良くなりますよね。
過ごしやすい季節になるので、撮影遠征もはかどりそうです。
あとは天気がー(^^;