Tài liệu kỹ thuật

IRIG 106 thu thập dữ liệu số cho thử nghiệm bay

Trong quá trình bay thử nghiệm, dữ liệu bay được thu thập từ nhiều nguồn và có các định dạng khác nhau. Bao gồm dữ liệu cảm biến, dữ liệu điện tử hàng không, âm thanh và hình ảnh để phân tích chuyến bay. IRIG 106 tiêu chuẩn đã dùng để ghi và truyền tải dữ liệu này. Tuy nhiên để các nhóm thử nghiệm bay từ nhiều quốc gia làm việc được với nhau thì dữ liệu cần chuẩn hóa. Telemetry Group of the Range Commanders Council (RCC) đưa ra tiêu chuẩn IRIG 106, Chương 10, “Solid-State On-Board Recorder Standard” dùng để chuẩn hóa dữ liệu bay này.

Chương 10 đề cập giao diện, yêu cầu vận hành của thiết bị ghi dữ liệu số. Chương 10 cũng tham chiếu đến chương 4 Tiêu chuẩn điều chế mã xung (Pulse Code Modulation Standards), Chương 6 (Digital Cassette Helical Scan Recorder/Reproducer, Multiplexer/Demultiplexer, Tape Cassette, and Recorder Control and
Command Mnemonics Standards), Chương 9 Tiêu chuẩn Truyền thuộc tính dữ liệu đo (Telemetry Attributes Transfer Standard) và Chương 11 (Tiêu chuẩn Đinh dạng Gói dữ liệu Ghi Recorder Data Packet Format Standard).

Cấu trúc tệp tin

Trong Chương 10, cấu trúc tệp tin giao diện là tập con dựa trên tiêu chuẩn STANAG 4575 (Section 3, File Structure Definition). Cấu trúc tệp tin phù hợp với máy tính thông dụng và thiết bị lưu trữ thông dụng. Cấu trúc này không quy định các dữ liệu được lưu trữ vật lý trên thiết bị lưu trữ mà chuẩn hóa cách truy cập dữ liệu đã được lưu trữ qua giao diện tải dữ liệu. Nhà sản xuất có thể lưu trữ dữ liệu trên bất kỳ thiết bị vật lý nào, trong nhiều thư mục miễn là cấu trúc hệ thống tệp tin thấy được qua giao diện tải dữ liệu xuống như quy định trong Chương 10 phần 10.5.

Các thành phần cấu trúc tệp tin được quy định

- Cách tổ chức dữ liệu: cây thư mục và tệp tin dữ liệu.

- Định nghĩa thư mục.

- Định nghĩa dữ liệu.

Cấu trúc thư mục

Định nghĩa Định dạng dữ liệu

Chương 10 quy định cách dữ liệu từ thiết bị đo trên chuyến bay thử nghiệm được ghép kênh, chèn nhãn đồng bộ thời gian, và lưu trữ trên thiết bị. Phần này chủ yếu được quy định ở mục 10.6. ĐỊnh dạng dữ liệu ghi sử dụng cho thiết bị ghi sử dụng truy cập ngẫu nhiên kỹ thuật số, bộ nhớ trạng thái rắn. Ngoài cấu trúc tệp tin, chương 10 còn quy định định dạng dữ liệu và các đóng gói gói tin thu được từ bus MIL-STD-1553, bus  ARINC429, PCM (chỉ 1 định dạng), Tương tự (analog), máy tính tạo ra, hình ảnh (chỉ 1 định dạng), UART, IRIG time, video (MPEG2). Chương 10 cũng quy định cách đóng gói gói tin theo thời gian dành cho các định dạng dữ liệu mới.

Tổng quan Định dạng Gói Dữ liệu

IRIG 106 Chương 10 quy định dữ liệu được chia thành các gói, với cấu trúc bên trong chỉ rõ kênh sử dụng (ví dụ kênh 4) và kiểu dữ liệu (ví dụ như MIL-STD-1553). Hình 2 là tổng quan cấu trúc gói dữ liệu IRIG 106. Mỗi gói tin bắt đầu với phần header xác định kênh và kiểu dữ liệu, số thứ tự tăng dần 8 bít đánh dấu gói tin, độ dài gói tin, thời gian cho bit đầu tiên gói tin và mã kiểm tra checksum. Theo sau phần header gói tin là tùy chọn header gói tin thứ hai.

 

 Hình 2 - Định dạng gói tin tổng quan.

Gói tin đầu tiên là Setup Record sẽ được quy định theo "“Computer Generated Data Packet, Format1 Setup Record”. Nó miêu tả phần cứng, phần mềm, cấu hình kênh để truyền các gói tin còn lại. Độ dài gói tin này không quá 134,217,728 bytes.

Với các gói tin tiếp theo gói tin Setup Record, sẽ có 2 giới hạn:

(1) Kích thước không vượt quá  524,288 bytes. Bao gồm cả Packet Header, Packet Body, Packet Trailer, và tùy chọn Packet Secondary Header.

(2) Gói tin không quá  100ms dữ liệu.

Với dữ liệu thu thập bị vượt quá 2 giới hạn này, dữ liệu phải được chia thành nhiều gói tin sử dụng bộ đếm thứ tự gói tin. 

Sau đây là miêu tả các trường trong Định dạng Gói tin Tổng quan.

Packet Sync Pattern đánh dấu điểm bắt đầu gói tin. Nó có dạng 16-bit chứa giá trị cố định "EB25"h.

Channel_ID xác định kênh được theo dõi và thu thập, tất cả các kênh trong hệ thống phải có Channel_ID  duy nhất, giá trị "0000"h được dành dùng riêng. Ví dụ nếu bộ thu 8 kênh MIL-STD-1553 Channel_ID tương ứng có giá trị từ 0001’h đến ‘0008’h.

Trường Data Length và Packet Length có độ dài 4 bytes. Data Length chỉ độ dài của tổng các trường Channel-Specific Data, Intra- Packet Time Stamp, và Intra-Packet Data Header. Trường Packet Length có giá trị bằng Data Length cộng thêm số byte Packet Header,  Secondary Packet Headers (nếu dụng), and Packet Trailer (nếu dùng). Nếu không dùng trường Secondary Packet Header và Packet Trailer, Packet Length bằng Data Length cộng thêm 24 byte.

Trường Header Version với độ dài 1 byte chỉ phiên bản của IRIG 106 Chương 10. Sequence Number độ dài 1 byte chỉ số thứ tự gói tin. Số thứ tự này tăng dần 1 đơn vị cho mỗi gói tin của kênh tương ứng, và chuyển từ ‘FF’h sang ‘00’h sau khi 256 gói tin được xử lý qua mỗi kênh.

Trường 1 byte Packet Flags chỉ ra định dạng gói tin. Các bit trong trường chỉ ra việc có dùng tùy chọn Packet Secondary Header, định dạng đồng bộ thời gian, báo lỗi tràn dữ liệu, trường sửa sai checksum có được dùng hay không và độ dài là 8, 16, hoặc 32 bit. 

Trường 1 byte Data Type chỉ ra định dạng dữ liệu trong gói tin. IRIG 106-04 Chương 10 có 12 định dạng dữ liệu khác nhau bao gồm: 

Giá trị Packet

Header

 

Tên kiểu dữ liệu

Miêu tả kiểu dữ liệu

0x00

Computer-Generated Data, Format 0

User-Defined

0x01

Computer-Generated Data, Format 1

Setup Record

0x09

PCM Data, Format 1

Chapter 4, 7, or 8

0x11

Time Data, Format 1

RCC/Global Positioning System

(GPS)/Relative Time Counter (RTC)

0x19

MIL-STD-1553 Data, Format 1

MIL-STD-1553B Data

0x21

Analog Data, Format 1

Analog Data

0x29

Discrete Data, Format 1

Discrete Data

0x30

Message Data, Format 0

Generic Message Data

0x38

ARINC-429 Data, Format 0

ARINC-429 Data

0x40

Video Data, Format 0

MPEG-2/H.264 Video

0x48

Image Data, Format 0

Image Data

0x50

UART Data, Format 0

UART Data

 

Chương 10 cũng dự phòng têm một số packet header cho các kiểu dữ liệu tương lai.

Trường Relative Time Counter độ dài 48 bit (6 byte) biểu diễn bộ đếm Relative Time Counter. Relative Time Counter thể hiện giá trị đầu ra bộ đếm chạy tự do xung nhịp 10 MHz. Relative Time Counter dùng chung cho tất cả các kênh. Cách đánh dấu thời gian tùy theo từng kiểu dữ liệu riêng biệt. Trường 2 byte Header Checksum kiểm tra độ toàn vẹn gói tin bằng cách đưa ra  giá trị 16 bit tổng của phần header, không bao gồm Header Checksum Word.

Packet Secondary Header là trường tùy chọn có độ dài 12 byte. Nếu được sử dụng, phần header này bao gồm cả giá trị mẫu thời gian 48 bit cho gói tin, cùng với giá trị 2 byte Secondary Header Checksum để thể hiện thời gian.

Sau Packet Header hoặc Packet Secondary Header (nếu dùng) có 1 hay nhiều thân gói tin (Packet Body). Độ dài Packet Body không vượt quá 524,588 byte hoặc 100ms như đã nói ở trên.

Chương 10 cũng định nghĩa định dạng thân gói tin duy nhất cho mỗi kiểu dữ liệu. Trường đầu tiên trong thân gói tin là Channel Specific Data. Chỉ có 1 trường Channel Specific Data cho mỗi gói tin. Theo sau Channel Specific Data là xung mẫu thời gian Intra-Packet Time Stamp. Giá trị của Channel Specific Data là kiểu dữ liệu Data Type. Intra-Packet Time Stamp có giá trị 48 bit Relative Time  hoặc giá trị thời gian tuyệt đối 64-bit, được báo hiệu bằng bit Packet Flag. Có thể có Intra-Packet Data Header sau Intra- Packet Time Stamp. Intra-Packet Data Header chứa thông tin bổ sung dữ liệu tiếp theo. Đó là dữ liệu kênh thu có độ dài thay đổi, tiếp theo trường Channel Specific Data, trường tùy chọn Intra-Packet Time Stamp, và trường tùy chọn Intra-Packet Data Header. 

Tùy chọn Packet Trailer đi sau Packet Body cuối cùng của gói tin. Khi được sử dụng,  Packet Trailer chứa trường Filler Field hoặc mã kiểm tra  Data Checksum, hoặc cả hai trường này. Filler Field chứa các bit giữ các gói tin được căn chỉnh trong độ dài 32 bit (4 byte) và tùy chọn các gói tin tất cả các gói tin trong kênh cụ thể có cùng độ dài. Có một số ứng dụng không dùng trường Filler Field. Nếu được sử dụng, tất cả byte Filler phải có giá trị  ‘00’h hoặc ‘FF’h.

Nếu bít 1-0 của Packet Flag Bits được đặt, trường mã sửa sai Data Checksum sẽ có giá trị 32 bit, 16 bit hoặc 8 bit (tùy theo giá trị Packet Flag Bits). Giá trị 1 byte (8bit) Data Checksum biểu diễn tổng số byte trong gói tin. Giá trị 2 byte (16 bit) trong Data Checksum Field  biểu diễn tổng số word trong gói tin. Giá trị 4 byte (32 bit)  Data Checksum Field biểu diễn tổng số double word trong gói tin. 

Lấy mẫu thời gian

IRIG 106 Chương 10 có 2 lựa chọn đóng gói tin lấy mẫu thời gian và thông điệp riêng lẻ là 48-bit thời gian tương đối và 64-bit thời gian tuyệt đối. Cả hai lựa chọn đều đưa thời gian tham khảo (common time) vào mẫu thời gian cho lấy cả dữ liệu lưu trữ bởi máy thu (data recorder), không phân biệt kiểu dữ liệu. Sử dụng phương pháp thời gian tuyệt đối giúp liên hệ thời gian sự kiện của dữ liệu thu được qua máy thu dữ liệu tại một vị trí hoặc nhiều vị trí cụ thể.

Với mỗi gói tin,  flag bit sẽ chỉ ra định dạng mẫu thời gian được dùng. Cả hai cách đều dùng đồng hồ đồng bộ thời gian tại chỗ 10 MHz, nên độ chính xác sẽ là 100 ns/LSB.

Định dạng thời gian tuyệt đối ( absolute time) là thời gian giả định chạy cùng tốc độ với tất cả người quan sát trong vũ trụ. Tiêu chuẩn IRIG 200 quy định cách lấy mẫu thời gian tuyệt đối cho đồng hồ thời gian (Time Distribution). Một chuỗi xung tương tự được phát ra cập nhập hàng giây và các xung được phát ra hàng mili giây. Trong trường hợp sai số lớn nhất tại bộ tạo dao động máy thu là ±0.01% (100 PPM) (tiêu chuẩn sai số tốc độ truyền MIL-STD-1553B) của người dùng thời gian tuyệt đối, thì sai số lớn nhất sẽ là ±100 ns, hoặc 1 nhịp của đồng hồ 10 MHz.

Đầu ra bộ đếm nhị phân 48-bit 10 MHz chạy tự do xác định thời gian tương đối. Thời gian tương đối phân phối cho tất cả các kênh trong cùng máy thu, cung cấp thời gian tham khảo cho tất cả dữ liệu được lưu trữ, không phụ thuộc kiểu dữ liệu. Khi sử dụng thời gian tương đối thay cho thời gian tuyệt đối, tiêu chuẩn yêu cầu độ chính xác trong khoảng ±100μs của thời gian tương đối, độ chính xác khuyến cáo là 1μs.

Trong gói tin MIL-STD-1553, giá trị thời gian 48 bit tương ứng với bit cụ thể chỉ ra trong MIL-STD-1553 Channel Specific Data. Thời gian này có thể là thời gian bắt đầu hoặc kết thúc của word đầu tiên, hoặc kết thúc của  word cuối cùng thông điệp MIL-STD-1553.

Việc tạo thời gian cho gói tin PCM và MIL-STD-1553 được thể hiện theo hình dưới đây.

 Thiết lập bản ghi (Setup Record)   Chương 10 quy đinh tất cả gói tin bắt đầu bằng Setup Record. Bao gồm Tiêu đề (Header), Thân (Body) và Giới thiệu (Trailer). Có thể có thêm  Secondary Header. Tất cả header chứa bộ đếm thời gian tương đối  Relative Time Counter (RTC) chứa giá trị 48 bít bộ đếm chạy tự do 10 MHz 10 MHz.
 Header (bao gồm Relative Time Counter)
 Body
 Trailer
 Time Data Packet  
  Header (bao gồm Relative Time Counter)    Gói tin đầu tiên của Setup Record luôn là Gói tin Dữ liệu Thời gian (Time Data Packet - TDP). TDP được lặp lại hàng giây. Trong thân TDP chứa thông tin thời gian từ nguồn bên ngoài (IRIG-B) hoặc thời gian thực bên trong (Real-Time Clock) máy thu chỉ định trong thông tin Channel Specific Data, Định dạng Thời gian (Time Format - FMT) hoặc Nguồn Thời gian (Time Source - SRC). PCM kiểu S3DR-F và C sẽ dùng nguồn thời gian bên trong. 
 Channel Specific Data
 Time Data
Trailer
 Gói tin dữ liệu PCM  #1  
 Header (bao gồm Relative Time Counter) Thân Gói tin diệu PCM trong trường hợp Throughput Mode (chỉ định tại Header) không đồng bộ và không căn chỉnh dữ liệu PCM. Relative Time Counter là bit đầu tiên của gói tin, có thể là bit bất kỳ của khung chính.
Body
Trailer

 I

I

I

I

 
Gói tin dữ liệu PCM  #n  
 Header (bao gồm Relative Time Counter) 

Thời gian của Gói Dữ liệu PCM bất kỳ (tại bit dữ liệu đầu tiên gói tin) được tính theo công thức

tn = ttdp + (RTCn – RTCtdp) * 0.1 µs

trong đó:

tn : thời gian bit đầu tiên của Gói tin Dữ liệu N.

ttdp: thời gian TDP trước.

RTCtdp: RTC trong TDP trước.

RTCn: RTC trong gói tin dữ liệu PCM

  

Body
 Trailer
Gói tin Dữ liệu Thời gian (Time Data Packet- TDP)  Để biết thời gian các bit khác của gói tin cần biết tốc độ bit PCM, hoặc từ Setup Record hoặc nội suy giữa hai gói dữ liệu. 
 Header (bao gồm Relative Time Counter)   
Channel Specific Data  
Time Data  
Trailer  

 Hình 4. Khởi tạo gói tin PCM.

Setup Record  

Header (bao gồm Relative Time Counter)

Tệp tin bắt đầu bằng Setup Record. Cũng giống các gói tin khác bao gồm Header, Body và Trailer. Header có giá trị bộ đếm nhị phân Relative Time Counter (RTC) chạy tự do 10 MHz 48 bit.

Body

Trailer

 

Time Data Packet   

 
 

Header (including Relative Time Counter)

Channel Specific Data

Time Data

Trailer

 Gói tin đầu tiên sau Setup Record luôn luôn là Time Data Packet (TDP). TDP được lặp lại hàng giây. TDP chứa thông tin đồng bộ thời gian từ nguồn phát bên ngoài (IRIG-B) hoặc bên trong Real-Time Clock tại các trường Channel Specific Data information, Time Format (FMT) và Time Source (SRC). Máy thu MIL-STD-1553-type S3DR-F thì sẽ dùng nguồn đồng bộ thời gian bên ngoài IRIG-B. Khoảng lấy mẫu được quy định trong tài liệu IRIG-200. 
 Mil-Std-1553 Data Packet #1  
                            

Header (bao gồm Relative Time Counter)

Channel Specific Data

Intra-Packet Time Stamp cho message 1

Intra-Packet Data Header cho message 1

message 1

:

Intra-Packet Time Stamp cho message n

Intra-Packet Data Header cho message n

message n

Trailer

 Thân gói tin MIL-STD-1553 Data Packet bao gồm dữ liệu thu thập, phân cách phía trước bởi Intra-Packet Time Stamp và Intra-Packet Data Header. 

Intra-Packet Time Stamp chứa giá trị 48 bít Relative Time Counter hoặc the Absolute Time, chỉ định bằng bít 2 và 3 packet flag phần Header.

Intra-Packet Time Stamp được chỉ định trong Channel Specific Data qua trường Time Tag Bits (TTB):

00 = bit cuối cùng của word cuối cùng thông điệp.

01 = bit đầu tiên của word đầu tiên thông điệp.

10 = bit đầu tiên của word đầu tiên (word điều khiển) thông điệp.

Giá trị Relative Time Counter tại phần header tương ứng bit dữ liệu đầu tiên của gói tin.

 I

I

I

 
 Mil-Std-1553 Data Packet #n  
 

Header (bao gồm Relative Time Counter)

Channel Specific Data

Intra-Packet Time Stamp cho message 1

Intra-Packet Data Header cho message 1

message 1

:

Intra-Packet Time Stamp cho message n

Intra-Packet Data Header cho message n

message n

Trailer

 Thời gian của thông điệp bất kỳ MIL-STD-1553 Data Packet trong trường hợp dùng RTC của Intra-Packet Time Stamp được tính như sau:

tmes n = ttdp + (RTCmes n – RTCtdp) * 0.1 µs trong đó:
tn : thời gian message n
ttdp : thời gian  TDP trước.

RTCtdp : RTC trong TDP trước.
RTCmes n : RTC trong  Intra-Packet Time Stamp của message n

 

 Hình 5. Khởi tạo thời gian MIL-STD-1553.