-
Notifications
You must be signed in to change notification settings - Fork 0
Device Host protocol
Описан протокол передачи информации (преимущественно видеопотока) от прибора (тепловизор, видеокамера) к удалённому РС. Протокол описывает формат передачи информации от разных каналов прибора с возможностью их произвольного чередования. Для идентификации переключения канала в потоке данных служит специальный признак - Channel Frame Tag (CFT). Формат слова CFT представлен ниже:
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| CFT | Data | ||||||||||||||
| 1 | Reserved | Channel Number | |||||||||||||
Формат передачи данных в каждом канале индивидуальный и зависит от приложения.
В настоящий момент времени актуален только видеоканал, протокол передачи данных которого описан ниже.
Видеопоток передаётся кадрами, сопровождаемыми служебной информацией. Для определения границы кадра используется специальный признак - Video Sync Tag (VST):
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| CFT | VST | T/Data | Data | ||||||||||||
| 0 | 1 | 0/1/x | Meta Data Block Size (MDBS) | ||||||||||||
Поле T (Type) обозначает тип синхропризнака:
- 0: начало кадра;
- 1: начало строки.
Поле MDBS определяет размер служебного заголовка, описывающего дополнительные параметры кадра и/или строки. Этот заголовок опционален и может быть опущен - в этом случае значение MDBS равно 0.
Формат Meta Data Block (MDB) индивидуален для каждого канала. Ниже приведены примеры MDB для кадрового и строчного синхропризнаков.
Кадровый MDB (MDBS = 12) вместе с VST:
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| CFT | VST | T/Data | Data | ||||||||||||
| 0 | 1 | 0 | MDBS: 15+ | ||||||||||||
| 0 | 0 | x | Frame Number[0] | ||||||||||||
| 0 | 0 | x | ... | ||||||||||||
| 0 | 0 | x | Frame Number[3] | ||||||||||||
| 0 | 0 | x | Timestamp[0] | ||||||||||||
| 0 | 0 | x | ... | ||||||||||||
| 0 | 0 | x | Timestamp[7] | ||||||||||||
| 0 | 0 | Frame Size X | |||||||||||||
| 0 | 0 | Frame Size Y | |||||||||||||
| 0 | 0 | Pixel Width | |||||||||||||
| 0 | 0 | Extension Data Block 0 begin [optional] | |||||||||||||
| 0 | 0 | ... | |||||||||||||
| 0 | 0 | Extension Data Block 0 end | |||||||||||||
| ... | |||||||||||||||
| 0 | 0 | Extension Data Block N begin [optional] | |||||||||||||
| 0 | 0 | ... | |||||||||||||
| 0 | 0 | Extension Data Block N end | |||||||||||||
Строчный MDB (MDBS = 1) вместе с VST:
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| CFT | VST | T/Data | Data | ||||||||||||
| 0 | 1 | 1 | MDBS: 1 | ||||||||||||
| 0 | 0 | x | Line Number | ||||||||||||
Для обеспечения требуемой гибкости, возникающей из-за разнообразия целевой конфигурации, протокол предусматривает блоки расширений в MDB. Блок расширения является опциональным и описывает параметры, специфичные для конкретного целевого прибора. В настоящий момент поддерживаются два блока расширений:
- параметры ПЗС приёмника телевизионной (ТВ) камеры;
- параметры активно-импульсного режима ТВ камеры.
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| CFT | VST | Parameter Name | |||||||||||||
| 0 | 0 | Control Register (CR) | |||||||||||||
| 0 | 0 | Exposition Integer Part (IEXP) | |||||||||||||
| 0 | 0 | Exposition Fractional Part (FEXP) | |||||||||||||
| 0 | 0 | PGA Code (PGA_CODE) | |||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| CFT | VST | Parameter Name | |||||||||||||
| 0 | 0 | Laser Pulses Count (NPULSES) | |||||||||||||
| 0 | 0 | Charge Reset Delay (PINCH) | |||||||||||||
| 0 | 0 | Response Intergation Time (DEPTH) | |||||||||||||
| 0 | 0 | Charge Reset Delay Trim (TRIM) | |||||||||||||