::: warn Статья не дописана
:::
Существует две версии протокола Pelco:
- Pelco P
- Pelco D
::: info Pelco D -- более новая версия, рассматривать устаревшую Pelco P мы не будем.
:::
Pelco D — протокол управления для моторизованных камер видеонаблюдения, названный по имени компании-разработчика протокола. Используется как через аппаратный интерфейс (обычно RS485, но может работать и через RS232, RS422), так и по сети в IP-версии.
Оборудование


К шине подключен только один ведущий узел, и один или несколько (максимальное число 255) подчиненных узлов также подключены к одной и той же последовательной шине. Связь всегда инициируется мастером. Подчиненные узлы никогда не будут передавать данные без получения запроса от главного узла., также подчиненные узлы никогда не будут взаимодействовать друг с другом. Главный узел одновременно инициирует только одну транзакцию Pelco (т.е. отсутствует возможность широковещательной передачи). В этом режиме транзакция Pelco состоит из 2 сообщений: запроса от ведущего устройства и ответа от ведомого устройства.
Исторически команды Pelco отправлялись по отдельной линии управления (обычно это RS-485). Однако, по мере развития сетей и их применения в видеотехнологиях вариант с прокладыванием проводов стал избыточным и появились IP-версии некогда “проводных” протоколов (Pelco-over-IP).
Команды
Команда представляет собой код из 7 байт
| Function | Byte1 | Byte2 | Byte3 | Byte4 | Byte5 | Byte6 | Byte7 |
|---|---|---|---|---|---|---|---|
| Up | 0xFF | Address | 0x00 | 0x08 | Pan Speed | Tilt Speed | SUM |
| Down | 0xFF | Address | 0x00 | 0x10 | Pan Speed | Tilt Speed | SUM |
| Left | 0xFF | Address | 0x00 | 0x04 | Pan Speed | Tilt Speed | SUM |
| Right | 0xFF | Address | 0x00 | 0x02 | Pan Speed | Tilt Speed | SUM |
| Upleft | 0xFF | Address | 0x00 | 0x0C | Pan Speed | Tilt Speed | SUM |
| Upright | 0xFF | Address | 0x00 | 0x0A | Pan Speed | Tilt Speed | SUM |
| DownLeft | 0xFF | Address | 0x00 | 0x14 | Pan Speed | Tilt Speed | SUM |
| DownRight | 0xFF | Address | 0x00 | 0x12 | Pan Speed | Tilt Speed | SUM |
| Zoom In | 0xFF | Address | 0x00 | 0x20 | 0x00 | 0x00 | SUM |
| Zoom Out | 0xFF | Address | 0x00 | 0x40 | 0x00 | 0x00 | SUM |
| Focus Far | 0xFF | Address | 0x00 | 0x80 | 0x00 | 0x00 | SUM |
| Focus Near | 0xFF | Address | 0x01 | 0x00 | 0x00 | 0x00 | SUM |
| Set Preset | 0xFF | Address | 0x00 | 0x03 | 0x00 | Preset ID | SUM |
| Clear Preset | 0xFF | Address | 0x00 | 0x05 | 0x00 | Preset ID | SUM |
| Call Preset | 0xFF | Address | 0x00 | 0x07 | 0x00 | Preset ID | SUM |
| Query Pan Position | 0xFF | Address | 0x00 | 0x51 | 0x00 | 0x00 | SUM |
| Query Pan Position Response | 0xFF | Address | 0x00 | 0x59 | Value High Byte | Value Low Byte | SUM |
| Query Tilt Position | 0xFF | Address | 0x00 | 0x53 | 0x00 | 0x00 | SUM |
| Query Tilt Position Response | 0xFF | Address | 0x00 | 0x5B | Value High Byte | Value Low Byte | SUM |
| Query Zoom Position | 0xFF | Address | 0x00 | 0x55 | 0x00 | 0x00 | SUM |
| Query Zoom Position Response | 0xFF | Address | 0x00 | 0x5D | Value High Byte | Value Low Byte | SUM |