2-2-3.PICを制御するTeraTermマクロ

  1. 撮像シーケンス
    1. C2前のダイヤモンドリングまで…タイムラプス
      • D7200・D750ともC1ちょい前から120秒毎
      • 食の最大の時刻を中心を基点時刻にする
    2. C2前11秒・後5秒
      • ダイヤモンドリングと彩層の撮像
      • 最高速SSより2段遅い速度に設定
      • 3コマ毎秒で連写
    3. 皆既中
      • 1.5EV間隔で8段階9ショットを山型制御(最高速SS⇒最低速SS→最低速SS⇒最高速SS) の4回繰り返しで8セットを撮像
    4. C3前5秒・後11秒
      • ダイヤモンドリングと彩層の撮像
      • 最高速SSより2段遅い速度に設定
      • 3コマ毎秒で連写
    5. C4まで…タイムラプス
      • D7200・D750ともC3ちょいあとから120秒毎
      • 食の最大の時刻を中心を基点時刻にする
  2. PCとPICマイコンでの役割分担
    1. PIC側 ⇒前ページに戻る
    2. PC側
      • ・TeraTermによるマクロプログラムでUSB経由でPICと通信する。内部時計を参照しつつPICにタイムラプス単写、フィルター開閉&連写&多段階露光 の動作・撮像の開始を指示する⇒以下にマクロのリストあり
      • ・前回からコードで不要だった部分を削除し、偏光撮像の撮像開始シグナル(BEEP音:50行)を発信する行を加えました。
    3. (緊急時のために )
      • (PICによるコントロールボックスで、スイッチ1つでC2前~C3後の間の撮像を統べて実行するファームも組んでおく。タイマーリモコンの端子も出しておく )
  3. するとPC側に必要となるのは…
    1. 通信ソフト・TeraTermのマクロで一種のタイマーリモコン的な働きをするプログラムを組む⇒タイマーリモコンと異なり、時刻制御なので定刻に手動でOn-Offをする必要がない!
    2. 但し、きちんと時計が合っていることが必須
通信端末ソフト・TeraTermのマクロプログラム Jun.17,2017改
   1:  ;=====================================
   2:  ;変数の指定 
   3:  ;=====================================
   4:   
   5:  a = 0
   6:  m = 1
   7:  Additional = 12 ;フィルター開閉&C2・C3ダイヤモンドリング連写にかかる秒数
   8:  Interval = 120  ;等間隔撮像・秒単位
   9:  Release = 'I'   ;シャッターレリーズ
  10:  Sequence = 'X'  ;クライマックス撮像シーケンス
  11:  C2h = 11
  12:  C2m = 33
  13:  C2s = 09
  14:  Maxh = 11   ;食の最大時
  15:  Maxm = 34   ;食の最大分
  16:  Maxs = 17   ;食の最大秒
  17:  C3h = 11
  18:  C3m = 35
  19:  C3s = 26
  20:  C4h = 12
  21:  C4m = 58
  22:  C4s = 17
  23:   
  24:  ;======================================
  25:  ;時刻の秒数化
  26:  ;======================================
  27:   
  28:  C2 = C2h*3600+C2m*60+C2s
  29:  Maxma = Maxh*3600+Maxm*60+Maxs
  30:  C3 = C3h*3600+C3m*60+C3s
  31:  C4 = C4h*3600+C4m*60+C4s
  32:   
  33:  ;======================================
  34:  ;自動撮像プログラム部分
  35:  ;======================================
  36:   
  37:  while a=0
  38:      gettime hour '%H'
  39:      gettime mini '%M'
  40:      gettime seco '%S'
  41:      str2int Nowh hour
  42:      str2int Nowm mini
  43:      str2int Nows seco
  44:      NowTime = Nowh*3600+Nowm*60+Nows        ;時刻の秒数化
  45:      if (((NowTime-Maxma)%Interval=0) and (NowTime<Maxma)) then  ;C2前のインターバル撮像
  46:          send Release                                            ;単写
  47:          pause 1
  48:      elseif (NowTime > C2-Additional)and(NowTime < C3) then  ;次のインターバル撮像がクライマックス画像に引っかかる時
  49:          pause C2-Nowtime-Additional         ;クライマックス13+α秒まで待ち
  50:          Beep 2                              ;偏光撮像開始シグナル
  51:          send Sequence                       ;フィルター開~一連の撮像~フィルター閉
  52:          pause C3-C2+Additional*2            ;クライマックス後のインターバル撮像を待つ
  53:      elseif (NowTime > C3+Additional)and(NowTime = Maxma+Interval*m) then    ;C3後のインターバル撮像
  54:          send Release                        ;単写
  55:          pause 1
  56:          m=m+1                               ;カウンタ増
  57:      elseif NowTime > C4+Interval*2 then     ;日食撮像終了
  58:          break                               ;撮像終了
  59:      endif
  60:  endwhile

        
inserted by FC2 system