| ホーム |
OnStepコントローラのWifi化
今回もまた、既に、多くの方が実施されている工作です。のりきゅうさんのブログやくわなリモート天文台プロジェクトさんのプログを見て、何とかなりそうだったので、導入してみましたが、多少、引っ掛かりましたので、カキコします。
当方が入手したESP8266も、くわなさんと同じタイプのものです。
Bluetoothモジュールとの違いは、VCCは3.3Vですが、これはTeensy内部で生成される3.3V出力端子から供給します。その他のGND・TX・RX端子以外に、ファームウェア書き込み用に、RST(RESET)とGPIO0を、Arduinoと結線する必要があります。空きピンの少ないTeensy3.2では、通常使用しないステッパードライバーのFAULTピンを使います。ついでに、極軸望遠鏡照明用のLEDも追加しました。
これらの結線をしたら、上記の参照ブログのファームウェアアップ方法を見ながら、
2) ボードマネージャーで、ESP8266モジュールのダウンロード
3) 「#define ESP8266_CONTROL_ON」 をOnStepのConfig.hに追加
4) OnStepスケッチの書き込み
5) シリアルモニタで、「:hC#」、「:hF#」、「:ESPFLASH#」の実行、フラッシュモードのメッセージ確認
6) 「Wifi-Bluetooth.ino 」のコンパイルと書き込み
を実行するのですが、どうも書き込みができません。ESP8266のFlashがアクセスできない、というようなメッセージが出ます。
一晩頭を冷やして、他の方のブログを良く読んだみたところ、ESP8266のCH_PDの端子処理を忘れていました。
この端子を処理しないと、ESP8266は、常に低電力の待機モードのままのようです。
で、翌日、すぐに3.3Vの1kΩのプルアップ抵抗を追加したのですが、もっと困ったことに、なぜかTeensyが動作しなくなります。もちろん、プルアップ抵抗を外すと、Teensyは普通に動作します。なんだ??困った困った!
試しに、もう一台のAmega2560から3.3Vを供給してやると、プルアップ抵抗を付けてもTeensyは動作します。
どうやら、このタイプのESP8266は、定常時、3.3V電源を300mAほど消費するようなのですが、Teensy3.2はこの電流が供給しきれずに、停止してしまうようなのです。要するに、個体差かもしれませんが、当方の入手したESP8266は3.3Vの消費電流が多すぎるようです。別途3.3V電源を作るか、もっと消費電流の少ないチップを使う必要があるようです。((+_+))
といっても、EM-10内部に組み込むためには、これ以上のチップを持ち込むのは避けたいところです。それで、大変冒険で、普通の方は、絶対にやらないと思いますが、試しに、(恐る恐る)VCCに5V電源を繋いでみたところ、煙を発することもなく、普通に動いているようなので、しばらくこの方法で回避することにしました。<(_ _)>
のりきゅうさんの使っているESP-WROOM-02 などは、もう少し消費電流が少ないようなので、近々に入れ替えたいと思います。
とりあえず、ESP8266の結線が完了したので(オイオイ!)、再度、フラッシュ書き込みを実施したところ、途中でエラーが出てしまいます。フラッシュのメモリーサイズなどが違っているのかも?と、OnStep本家のWikiやESP8266の他サイトのチップ情報などから、以下のように設定すると、うまくフラッシュの書き込みができて、Wifiサーバーとして動作するようになりました。
いざ、Wifi接続ができるようになると、Android以外に、iPhoneやiPadのSkySafariでも操作できるようになることと、Bluetoothとは違って、複数のデバイスから同時に接続できるのは、いろいろ便利そうですね。
以上のように、OnStepは、Bluetoothモジュールとの接続は本当につなぐだけなのですが、Wifiモジュールはちょっと厄介です。モジュールの選択なども注意が必要です。既に多くの皆様が、OnStep専用基板を使われて製作されていると思いますが、独自で自作されている方の参考になれば幸いです。
ちなみに、ちょっと残念なのは、ステラナビゲータ10では、LX200を選択するとCOMポートしか選択できず、IPアドレスが指定できないところです。やはりASCOMで使うしかない?
最近は、SkyFiとかもあるのに、皆さん、どうしてるんでしょね?
P.S.
良く良く確認してみたら、当方が使っているTeensyは、3.2じゃなく3.1でしたね。3.1の3.3Vは最大100mAだそうです(>_<)
3.2は、3.3Vは最大250mAなので、ESP8266が最大300mAとしても、多分問題なしなんでしょうね。お騒がせしました!<(_ _)>
OnStepコントローラーのTMC2100化
既に多くの方が実施されていると思われますが、当方も、遅ればせながら、OnStepの赤道儀コントローラーのステッピングドライバーを、drv8825からTMC2100に置換してみました。
というのも、drv8825で駆動するモーターは、駆動中の赤経側はシャカシャカシャカシャカ・・、停止中の赤緯側もピューとかシャーとかと、音がして騒がしいためと、TMC2100も価格が下がって来たためです。電源の入らないジャンクEM-10が入手できたので、コントローラー置換の際に、ドライバーも入れ替えることにしました。
こちらのRepRapのページを参考にして検討しました。購入は、Amazonプライムの最安値のものを選択しました。
気になる、Vrefとモーター電流の関係は、購入したパーツにより違いがあるようです。当方が購入したのは、「i = Vref×1.9/2.5 となっており、デフォルトVrefが約0.65Vの場合、デフォルト電流0.5A、最大電流1A」となっていました。届いたものは、たしかに、Vrefが0.65Vくらいだったので、そのまま使うことにしました。
drv8825との大きく違うのは、CFG1~3のピン設定です。TMC2100にはオープン状態(何もつながっていない状態)があります。 drv8825は1/4のクォーターステップで使用していたので、OnStepのdrv8825の設定のまま、CFG1=GND、CFG2=VCCで使用することにしました。なお、StealthChopモードは静音だけどトルク少な目、SpreadCycleモードは多少音が出るがトルクがある、とのことです。
早速、TMC2100でEM-10のモーターを駆動してみると、恒星時駆動はとにかく静かです。ほぼ無音です。モーターが回っているかどうか、ギアを見ないとわかりません。それくらい静かでした。SpreadCycleモードは多少音が出るとなっているのに、これなら全く問題なし!、と思っていたのですが、どうもスピードが遅いのです。恒星時駆動の半分くらいしか回転していません。
その後、OnStepの設定を見直したり、OnStepのコメントには、TMC2100はCFG3をオープンで使用せよ、などと記述があるので、CFG3のジャンパーを外してみたり、CFG1やCFG2もいくつか試したのですが、まったく変化しません。
もしかしてと思ってはいたのですが、中華の安価なパーツ基板の場合、CFG1~3が結線されていないことがあるようです。下図の赤丸の部分が、通常は0Ωでジャンパーされるようですが、結線されていません。小さな上下のパターンをテスターで当たってみると、上側はピンと0ΩだがGNDとは∞、下側はピンとは∞でGNDとは抵抗値有、という状況でした。ということは、CFG1もCFG2もオープンの16マイクロステップのStealthモードで動いていたようです。駆動は遅いし、音も静かなはずです(笑)
| ホーム |