2015
    2014 2013 2012 2011 2010 2009 2008



    (2016,10/15)
    NS-301 WiFi Navigator
    NEXUS互換機能を実装しました。
    NS-301
    の開発は順調に進んでいます。
    新しくSkySafari用としてBasic Encoder Systemというプロトコルを追加しました。
    これによりNEXUS(Digital Setting Circles)互換機として導入支援できます。Nexus

    現在の開発状況は以下のとおりです。
    とりあえず3つのモードを作りました。経緯台 、赤道儀、そして新しいNEXUS互換機です。

    経緯台
    方位、高度の確認、初期化(アライメント)ができます。
    方位は、例えば123.456度など細かく初期化することもできますが、実際の運用ではこれは難しいと考え、
    NS600
    ドームコントローラで検討した東西南北で初期化することにしました。
    また高度の方も同じような発想で水平もしくは垂直(天頂)にして初期化できるようにしました。

    :@*aAZ#
        方位を確認する
    :@*aAZ=X#
      方位を東西南北で初期化する X: E東、S南、W西、N

    :@*aAL#
        高度を確認する
    :@*aAL=X#
      高度を 水平0°または垂直90°で初期化する

    赤道儀
    赤経、赤緯は、確認、初期化(同期、アライメント)ができるようになりました。
    ステラナビゲータ、SkySafari 5 Plus(Android NEXU7にて)から接続し、星図上に望遠鏡マークが表示されるのを確認しました。
    エンコーダを回すとそれに応じて自動的にマークが移動します。

    NEXUS互換機
    SkySafari
    Scope Typeとして、Mead LX-200 ClassicをはじめタカハシTemmaなど様々な架台に対応しています。
    その中にBasic Encoder Systemというのがあります。
    これはNEXUS対応の特別なプロトコルで、星図上にマークを表示し導入支援することができます。

    それから素晴らしいことに、経緯台、赤道儀のどちらにも対応しています。
    経緯台の場合は2点アライメントで初期化します。
    また赤道儀の場合は1点アライメントです。(もう1点は極軸合わせで済んでいます)

    SkySafari
    について調べていたらこのプロトコルを発見しました。
    それからネットで資料を探し、それを元にしてBasic Encoder Systemを作り、テストを繰り返してようやく実装できたとおもいます。
    試行錯誤しましたが、仕組みはほぼ理解できました。
    初めてのテストは、SkySafariのコマンドに対するNS301からのアンサ(応答、レスポンス)が間に合わず、
    表示がもたついたり、動作が緩慢になったり、時々接続が切れました。

    SkaySafari
    は他の星図アプリよりも速い傾向がありますが、NS301wifiスピードが遅いのが原因でした。
    そこでプログラムの構成、内容を検討してできるだけ速くアンサを送信できるように改良しました。
    またCPU クロックを80MHzから160MHzに変更しました。今は実用的なレベルで動作しています。


    NS301は、NEXUS互換機になります。
    SkySafari
    画面に望遠鏡マークが表示されています。











    (2016,10/5)
    NS-301 WiFi Navigator
    (暫定)開発しています。
    名前ですが、NS-301 WiFi Navigatorにします。
    開発は良好に進んでいます。現在の時点でNS301の基本的な枠組みができたと思います。

    開発済のNS401ですが、ほとんどそのまま利用できますので、全てのプログラムをコピペしてNS301に移植しました。
    次にエンコーダ関係のプログラムは、NS600ドームコントローラで開発してありますので、それもそのままコピペしました。
    赤経(方位)と赤緯(高度)エンコーダがあるので2組作りました。これは変数名、関数名を変えただけです。

    現在はエンコーダは良好に動作していますが、移植時に問題が発生しました。
    以下は少々専門的な内容になります・・・、
    エンコーダ関係のプログラムは、NS600(CPU ATMEGA2560)で動作確認してあります。
    CPU
    は異なりますがNS301は同じArduino(CPUESP8266)ですからプログラムはそのまま実行できるはずです。
    プログラムを移植してからエンコーダーを回したところ、32ビット エンコーダカウンタ(変数)に正確に反映されれいることを確認しました。

    ところがその後不規則に例外(致命的なエラー)が発生してCPUがリセットされるようになりました。
    しばらく正常に動いているように見えても突然例外が発生しました。x1、x2、x4逓倍の分解能を変えても発生します。
    常に、例外はエンコーダを回しているときに発生します。
    エンコーダプログラムは、attachInterruptという割込みを利用しています。setupは以下のとおりです。

    // Encoder
    encoder_stateRA = readEncoderRA(); //encoder
    の状態を読む
    if (encoder_resolutionRA == 1){
    attachInterrupt(digitalPinToInterrupt(RA_A), _mencoderRA, RISING); // x1
    逓倍
    }else{
    attachInterrupt(digitalPinToInterrupt(RA_A), _mencoderRA, CHANGE); // x2,x4
    逓倍
    attachInterrupt(digitalPinToInterrupt(RA_B), _mencoderRA, CHANGE);
    }


    ごく普通のプログラムです。割込みはなるべくシンプルに処理時間がかからないように設計しています。
    念のため割込みハンドラ内のプログラムを全て削除し試しました。つまり割込みは在るけれども実行時間はほぼ0になります。
    ところがそれでも例外が発生しました。

    その後、wifi(スタック)関係の割込みと競合している可能性を考えて、main Loopに入れてあるdelay(1)を調べました。
    詳しい理由は分かりませんが、これはwifiスタックに時間を与えるために入れているものです。
    時間が不足?が原因なら増やせばいいと考えdelay(10)に変えてみました。
    ところが今度は エンコーダを回しても、エンコーダカウンタが全く変化しなくなりました。
    つまりattachInterrupt割込みが実行されていない訳です。(delay中でも割込み有効なはずなのですが?理由はわかりません。)

    そこで逆にdeay(1)を削除したところ、全て正常に動くようになりました。それから例外は発生していません。
    念のため代わりに yield(); (delay(0)と等価だそうです)を入れました。mainloopの内容












    (2016,9/25)
    新型のNS-401 WiFi Adapter 開発しました。
    NS-400 Bluetooth Adapter
    を出していますが、今度はWiFi用のNS401を作りました。
    今日は早朝から残りのNS401コマンド部分のプログラミングを始めて、PM10、ようやく完了したと思います。

    NS-600
    ドームコントローラの方はプログラミングは終わっていますので、今後はCPU基板を作ることになります。
    代理店様からNS5000WiFi対応できないかお問い合わせがありました。
    次のデジタル表示器NS-301の開発を計画していますが、WiFi版のNS401はこれに役に立つと思い検討しました。
    インターフェースは3チャンネルにしました。USB,WiFi,RS232C(ソフトシリアルを実装しました)
    NS-401
    は星図アプリからWiFi経由で各種導入装置をコントロールできます。
    NS-401
    の開発で、NS5000WiFiに対応できるようになりました。


















    (2016,9/13)
    NS-600
    ドームコントローラ(暫定)
    NS-600
    ドームコントローラはほぼプログラミングが終わりました。
    少しですが遠隔、確認、その他用としてコマンドを追加しています。
    またWiFi,bluetooth関係のコマンドを作る可能性がありますが、一先ず目標のドームコントローラ開発は完了しました。
    現在テスト中です。予定通り動いています。

    通常PC,タブレットからコントロールすると仮定していますが、操作パネルのボタンだけでも基本的な機能を実行できるようにしました。
    操作パネルに以下のものがあります。

    確認ランプ(TLED
    原点ランプ      原点にあると自動的に点灯します。
    ブザー(BEEP)   動作の始まり、終了を表示します。
    Homesync
    ボタン  原点を検出して、ドームの方位を初期化します。周回パルスは計測しません。
    park
    ボタン park方位を導入します。
    CW
    ボタン ドームをCW方向に回転します。ドームを上から見下ろして時計方向をCWとします。      
    CCW
    ボタン ドームをCCW方向に回転します。
    スリットopenボタン スリットを開けます。
    スリットcloseボタン スリットを閉じます。
    停止ボタン ドーム回転を止めます。
    ドーム照明ボタン ドームの照明(light)を点灯します。押す度に点灯、消灯します。

    電源出力は1系統から3系等に増やしました。powerA,B,C
    これによりインターネットから例えば除湿機、ヒータ、換気扇・・などをコントロールできます。


    ブレッドボードを作りテストしています。











    (2016,9/7)
    NS-600
    ドームコントローラ(暫定)
    ACL
    互換プロトコルの部分は、ほぼ完成したと思います。
    初め一部のパケットのみアンサ(応答)パケットを送信すればいいと思っていましたが、(ブラインド命令? )
    基本的に全てのパケットに対しアンサを返す必要があるのが分かりました。
    これにより時に警告のメッセージが出ることがありましたが、それも無くなり、サクサク動くようになりました。

    POTH
     Handsetから、特定の方位をgoto(導入)、parkができます。
    POTH setup
    [Motion Controls]にチェックを入れると、回転角度を指定してドームを正転(CW)、逆転(CCW)ができます。
    同時に、赤道儀側(NS5000)も同じようにをコントロールできました。
    また、 [Home] ボタンを押すと、home find命令が発行され、自動的に原点を探し、周回パルスを計測し、方位を初期化します。

    安全のため、cw,ccw,goto,parkにそれぞれtimeoutを設定しました。
    たとえば :<TimeoutW60#コマンドを実行してから、:<Xcw#を送信するとドームがCW方向に回転を始め60秒後に自動的に止まります。

    NS600
    コマンドの方は、80%ぐらい完成したと思います。
    残りはステータス、操作パネル、温度湿度関係・・のプログラムです。
    これができたらスイッチ、LED、エンコーダ・・を取り付けて、徹底的なテストを行います。











    (2016,9/2)
    NS-600
    ドームコントローラ(暫定)
    開発は順調に進展しています。プログラミングは全体の50%以上はできたと思います。
    とくに難しい部分はほとんど完成しました。
    今日は、home find命令、Encoder命令を検討し一部を作りました。


    OKはプログラミングが完了しています。


    新型デジタル表示器NS-301(暫定)を開発しています。
    インターフェースは有線はやめてWiFibluetoothにします。













    (2016,7/30)
    NS-600ACL
    ドームコントローラ(暫定)
    シュミレータを実装したNS-701 WiFi Autoguiderはポートが少ないのでArduino Mega2560に移植しました。
    これはROM256KRAM8Kあり大きなシステムを開発することできます。
    さらにシリアルポートが4チャンネルあり、このおかげでNS-600ACLはいろいな構成が可能になります。

    今日までに、
    1 ACL互換シュミレータをMega2560に移植しました。(一部Mega2560改造、カスタムチップを組み合わせる予定)
    2 4チャンネルの内1チャンネルをACL互換シュミレータに指定できるようになりました。
    3 4チャンネルの全てにNS600ACLプロトコル を実装できるようにしました。
      これは枠組みができただけで、まだ何も機能は実装されていません。
    4 エンコーダ関係のプログラムを作りました。正常に動いています。
      今回は割り込みという方法で開発しました。これにより高速でエンコーダ信号を捉えることができます。

    テスト用にコパルのエンコーダを購入して動作確認をしました。
    エンコーダのパルスはプログラムにより、x1 x2 x4逓倍の3種類を実現しました。
    通常天文用のデジタル表示器は、座標分解能を少しでも上げるため4逓倍を使いますが、
    今回はドームで1°ぐらいの誤差があっても実用上問題ありません。
    CPU
    の負担が一番少ないx1逓倍を標準にする予定です。
    例えば、1000パルスのエンコーダなら1回転につきx1 1000パルス、x2 2000x4 4000となります。

    エンコーダが使えるようになりましたので、今度の開発と平行して、新型デジタル表示器NS-301(暫定)を開発します。
    これはインターフェースとして、WiFiUSB/RS232Cを実現したいです。


    中央のボリュームがロータリーエンコーダーです。








    (2016,7/26)
    NS-5000PK543AW NJP
    用が完成しました。(2016,7/14)
    NJP
    用としてお客様からPK543AW-H50S(取り付け角寸法は42mm ハーモニックギア)をご支給いただき、
    それに合わせてNS-5000と新規にベルトドライブ仕様のモータユニットを製作しています。
    https://www.orientalmotor.co.jp/products/detail.action?hinmei=CRK543APB-H50

    NS-5000
    はオプションのモータドライブ信号出力(1パルス方式 PLS/DIR)を組み込みこんでから、
    2個の5相モータ用ドライバを内蔵しました。
    NS-5000
    は完成しましたので工場へ発送しました。工場ではモータユニットを製作しています。
    NS-5000
    の他に ウォームギア軸受けベアリング化、 オーバーホールを行いますので、
    高速特性、微小運転(オートガイド)が改善され、ベルトドライブ方式、5相モータにより、高い性能を発揮する可能性があります。


    作業内容は以下のとおりです。(愛知県春日井市)

    > a
    1 JP/NJP赤道儀 ウォームギア軸受けベアリング化作業
    > a
    2 組み付け、調整
    > b
    1 JP/NJP赤道儀 オーバーホール
    >
      作業内容
    >
      分解、洗浄、再グリースアップ
    >
      ウォームラッピング
    >
      消耗品、油脂類
    > c
    1 NS-5000PK543AW_BLT ベルトドライブユニット一式製作
    >
    > d
    NS-5000PK543AW   Ver6.30
    > d
    2 オートガイダー入力端子 LX200互換モジュラージャック
    > d
    3 モータ接続ケーブル
    > d
    4  LEDハンドボックス
    > d
    5 Bluetooth(ブルートゥース)
    >
    > e
    8 Bluetoothドングル
    >
    > f
    1 赤道儀送付用の通箱 (赤道儀の送料になります)
    >
    >
    ストレートシャフト作製




    5相モータユニット2台内蔵しました。大きめのケースを選びました。

    NS-600ACLドームコントローラ(暫定)を開発しています。
    お客様からのお問い合わせがありましたので、一応計画だけはしていましたが、開発を始めました。

    概要ですが、
    1 ニッシンドーム、マウナケアドームなどの標準的なドームに設置して、ASCOMからコントロールできます。
    2 インターネット、遠隔コントロールを検討します。
    3
     ワイヤレス化を実現します。
    4 ASCOM
     DomeドライバーとしてACL Dome を使います。http://ascom-standards.org/Downloads/DomeDrivers.htm
    5 NS-600ACL
    は2種類のプロトコルを内蔵します。ACL互換プロトコル、そしてNS600ACLオリジナルのコマンド(NS5000互換)を内蔵します。

    初めはACLパケットのチェックサムに少々てこずりましたが、ようやく解決して、ACL互換コントローラのシュミレータを製作することができました。
    このシュミレータはNS-701 WiFi Autoguiderを改造して、ACLパケットの送受信、ACLドームコントローラのシュミレータを実現しました。
    シュミレータ開発はこちらのサイトを参考にさせていただきました。

    POTH
     HandsetACLドームコントローラ(シュミレータ)を接続しながら、NS-5000をコントロール、自動導入できました。
    また、同時にシュミレータに対し、方位の表示、ボタンでドームを正転、逆転できました。
    また、特定の方位を入力してGotoできました。
    それから望遠鏡と連動して(slave Dome)自動的に望遠鏡方位へドームをGotoするのも確認しました。


    内容は変化する可能性があります。


    内容は変化する可能性があります。









    (2016,7/4)
    NS-701
    アプリを作りました。
    NS-701
    用としてオートガイド・リレーボックス  プログラムを作りました。
    2種類あります。接続方法はUSBもしくはWiFiです。
    WiFi
    の方は仮想COMプログラム(Virtual Serial Port)が必要です。

    プログラムをarduino IDEでコンパイルしNS-701へ転送すると、
    NS-701
    オートガイド・リレーボックスとして動作するようになります。

    オートガイドする場合は、NS-701基板(arduino互換)にオートガイド出力端子(LX200ST−4互換)を増設する必要があります。
    またオートガイドケーブル(モジュラーケーブル)が必要です。

    プログラムはNS-701ユーザー様に許諾するものです。
    それ以外はご遠慮ください。

    ダウンロードしてからArduino IDEで開いてください。(arduino_1_6_9で開発しました)
    NS-701
    オートガイドプログラム    テキストNS-701 WiFi Autoguider


    NS-701基板


     オプションのオートガイド出力端子、パネル取付用金属金具を付けています。


    NS-5000U200
    は完成しました。
    作業(見積もり)内容は以下のとおりです。

    DOG NS-5000PKP243A1  Ver6.30
     これでU200赤道儀をコントロールできます。電源ケーブル付属しています。
     U200は初めてですが、経験から300倍速以上のスピードが出ると思います。

    2 オートガイダー入力端子 LX200互換モジュラージャック

    3 マイクロステップ切替スイッチ
    マイクロステップ駆動(1/2,1/4,1/8,1/16)を設定します。

    4 赤経カレントダウン調整ボリューム
    恒星時追尾のトルクを調整できます。低振動化に効果があります。

    5 U200専用 金属コネクタ モータ接続ケーブル製作
      ケーブル長は2〜2.5m可能です。耐寒、耐熱、耐油ケーブルです。

    NS5000LEDハンドボックス
     オートガイドの様子がLEDランプで分かります。
     あるいは、通常のLEDハンドボックス があります。

    7 Bluetooth(ブルートゥース
      Windows/Androidタブレット、パソコンから無線で自動導入できます。

    11
     電源器  19.5V24V AC-DCアダプタ
      100VAC電源用です。4A以上 ノートPC用を改造する予定です。



    恒星時133pps1/16マイクロステップで初期化しました。
    ケーブル長は、ハンドボックス5m,モータ接続ケーブル2.5mにしました。

    ********** 16分割
    赤経,赤緯 計算

    1
    ステップ角1.8゜、1/16分割、減速ギア比10:1、伝達ギア比1:1、ウオームギア360:1
    基本定数 = 200 * 16 * 10 * 1 * 360 = 11520000 0x00AFC800
    恒星時速度 = ( 200 * 16 * 10 * 1 * 360 ) / 86164 = 133.698 [Hz]










    (2016,6/11)
    NS-5000U200
    を製作中です。
    ユーハン工業製U200赤道儀用のNS-5000のご注文いただきました。(2016,5/30)
    U-200
    U-150赤道儀の後継機にあたると思います。http://www.u-han.co.jp/U200.html
    これまでお客様にはその他の赤道儀でNS-5000をご利用いただいていました。
    http://wakusei-image.la.coocan.jp/siyoukizai.htm


    NS-5000U200 CPUボードは完成しています。
    接続用の専用コネクタは来週早々には入荷する見込みです。
    もう少しお待ち下さい。








    (2016,6/10)
    お客様がNS-5000 (5相モータドライブ仕様)のハンドボックスをワイヤレス化されました。
    NS-5000
    ZigBee TWE-LITE DIP を組み込んで無線化されています。
    ハンドボックスのスイッチは、モータドライブのほとんどはボタン型のスイッチを使っていますが、これはジョイスティック の様に見えます。
    独特の操作性が実現されたのかも知れません。













    (2016,3/4)
    5相ドライバCRD5114PNS-5000を作りました。


    5相ドライバCRD5114P NS-5000(アストロショップAu様、2016,2/17
    バラックセットの状態です。
    これを大型赤道儀架台内部に設置するため、
    コネクタで基板を分離ができ、
    さらに赤道儀パネルにスイッチ、コネクタ、RS232Cbluetooth・・・
    を配置、配線できるようにしました。


    イタリア アバロン社M-UNO赤道儀用 2/5相ドライバ用 NS-5000を作りました。(横浜市)
    2または5相モータをドライバで駆動されるそうです。モータの取付け、配線はお客様が行います。
    また、非常に興味深い方法として、ZigBee TWE-LITE DIP を使ってハンドボックスを無線化されます。


    NS-701はまだ販売していませんが、一部お客様にご案内していました。


    ZigBeeを組み込むために、NS-5000 CPUボードの一部を改造し、配線用のコネクタ、ワイヤーを用意しました。


    NS-701
    I2C接続LCDモジュールを接続してみました。
    近くNS-701をご案内する予定です。


    NS701Arduino互換機)は、I2C端子がありますので接続が簡単です。









    (2016,1/28)
    本年もよろしくお願いします。

    他の仕事で更新が遅くなりました。今年はNS-701アプリの開発に力を入れる予定です。


    NS-701オートガイドリレーボックスは完成しています。今はNS-701アプリをプログラミング中です。

    最大の目標は「NS-300互換機WiFiデジタル表示器」を作ることです。
    これができればNS-5000互換機を実現できるかも知れません。
    NS-300
    NS-5000は基本的な構造はかなり共通しています。
    主な違いNS-300のエンコーダの部分がモータコントロールになっているだけです。

    NS-300
    NS-5000互換機はNS-701だけでは製品化できませんが、必要なハードウエアを追加すれば実現できる可能性があります。既に製品化していますので、いまさら必要性が無い様にみえますが、NS-701ArduinoIDEで開発しますので、これはほぼC言語に相当します。
    つまりNS-300NS-5000互換機の開発が成功すればC言語でシステムを実現できたことになり、
    様々なCPU、取り分け32ビットCPUに移植することが容易になります。
    これはきっと将来役に立つと思います。


    以下のNS-5000を製作しています。


    左から、
    外部モータドライブ用NS-5000 赤道儀はイタリア アバロン社M-UNO(横浜市)
     あと2,3日で完了する予定です。
    5相ドライバ用NS-5000(アストロショップAu様)2台目です。
    NS-5000PKP264
    ベルトドライブ仕様(2016,1/21 福島県いわき市




    [HOME]

    このサイトで公開するハードウエアー、ソフトウエアーなどの情報、データ、その改造、応用したものの公開や営利目的の販売などをお断りします。