Skip to content

Latest commit

 

History

History
99 lines (67 loc) · 5.54 KB

File metadata and controls

99 lines (67 loc) · 5.54 KB

C-71 バルブシステム 通信仕様書

C-71 バルブシステムの地上系の通信仕様を以下に示す.

C-71 で用いるGSE制御系の他,機体内のバルブ基板,RTD基板が接続される.また,C-73 のGSE制御にも対応する.

通信プロトコルの仕様

head(1byte) cmdid(1byte) length(1byte) parameters(nbyte) CRC(1byte)
0x43 n+4

headは「C」のアスキーコードである.

cmdidは以下が使用中 0x00 0x21 0x71 0xF0

CRCによって通信エラーを検知し,通信エラーの場合そのパケットは破棄するとする.CRCのポリノミアルは0x80,すなわち, $x^8 + x^2 + x + 1$ である.

通信エラーの際,マイコン側で電磁弁をターンオンする等のことは行わない.非常時の対処はコントローラのキースイッチを抜き、パワー系の電源を切断し行う.

各基板に付与されるIDについて

ackに使用される各ノードのIDは以下である。ackの帰り値の条件のため8ノードが上限であり,現在5ノードが割り当てられている.

  • PC...0b10000000
  • コントローラ基板...0b00000001
  • 中継基板...0b00000010
  • バルブ基板...0b00000100
  • RTD基板...0b00001000

この図は正しくない

コマンド詳細

1. ack

head(1byte) cmdid(1byte) length(1byte) parameters(1byte) CRC(1byte)
0x43 0x00 5 到達ノードid

PCから中継基板に向けて1Hzで発行される.

PC以外ではackを受信した場合、

  • 自ノードより下位にノードが存在する場合、自ノードのIDをparametersにOR演算し、下位のノードに送信。一定時間待機し,末端のノードから応答を待ち,応答ackのパラメータ全てをOR演算し,上位ノードに送信.下位ノードからの応答が全てない場合は上位ノードから送られてきた
  • 下位ノードが存在しない場合、自ノードのIDをparametersにOR演算し、上位のノードに送信

所定の待ち時間は以下の通り

  • コントローラ基板...200ms
  • 中継基板...100ms

根拠 ackのパケットを送信するのにかかる時間は, 1000ms / 9600 bps * 8 bits * 5 bytes = 4.17 ms

2. スイッチ状態転送コマンド

head(1byte) command(1byte) length(1byte) parameters(1byte) CRC(1byte)
0x43 0x21 5 0bEFGHIJ00

コントローラ基板から中継基板に10 Hzで発行. EFGHIJ...それぞれ外部ダンプ,内部ダンプ,充填,点火,切り離し,タワーのスイッチのステータス.0b1の場合ONで,0b0の場合OFF.

3. バルブ操作コマンド

head(1byte) command(1byte) length(1byte) parameters(1byte) CRC(1byte)
0x43 0x71 5 range

PC→コントローラ→中継→バルブ基板に転送される.また,点火スイッチが押された場合,同タイミングで中継基板からバルブ基板に発行. rangeの範囲は0-90

4. バルブ開栓率調査コマンド

調査コマンドは RTD基板 → バルブ基板 および バルブ基板 → バルブ基板 の流れで送信される.

head(1byte) command(1byte) length(1byte) parameters(0byte) CRC(1byte)
0x43 0xF0 0d04 0x33

調査コマンドに対し,応答コマンドが帰り,以下のフォーマットである.

head(1byte) command(1byte) length(1byte) parameters(2byte) CRC(1byte)
0x43 0xF0 0d06 open rate

open rate は2byteの整数である.1byte目に下位bit,2byte目に上位bitが来る.型はint16_tである.

また,バルブ基板がackを返した後,バルブ基板 → コントローラ → 中継 → PC の流れで送信され,加えて,バルブが動作中には100msごとに転送される.

head(1byte) command(1byte) length(1byte) parameters(4byte) CRC(1byte)
0x43 0xF0 0d08 time, open rate

time は2byteの整数である.1byte目に下位bit,2byte目に上位bitが来る.バルブ基板での時刻であり,ms単位である.型はuint16_tである.

5. フライトモード移行コマンド

バルブ基板,RTD基板をフライトモードに移行する.

スリープモードを実装する場合,スリープ投入・解除を行う.

6. RTDフラッシュ消去コマンド

RTDに搭載されているデータ記録用フラッシュを消去する.