Перейти к основному содержимому

Передача фото с Raspberry Pi по УКВ

Схема передачи файлов по УКВ через Houston Telnet Client

Houston Telnet Client подключается к Houston Server (адрес 0x1) по протоколу TCP/IP, откуда команды через наземный УКВ по радиоканалу передаются на бортовое УКВ по протоколу AX.25. С бортового УКВ по шине CAN команды поступают на Raspberry Pi, где бортовой Houston Server преобразует их из CAN в TCP/IP. Дальше команды проходят через утилиту socat, которая передает поток cимволов из TCP/IP в терминал bash. В результате выполнения команд файлы с Raspberry Pi передаются по УКВ и сохраняются в соответствующей папке Houston Telnet Client (рисунок 1):

Схема передачи файлов по ВЧ

Рисунок 1. Схема передачи файлов по УКВ

Houston Telnet Client

Установите программу Houston Telnet Client со страницы Необходимое ПО

Запустите программу Houston Server, которая используется Houston Telnet Client для связи с наземным УКВ приемопередатчиком.

Подключите наземный УКВ приемопередатчик к компьютеру по USB, откройте Диспетчер устройств Windows и убедитесь, что новое устройство появилось в разделе Порты СОМ и LPT (рисунок 2):

Выбор устройства в Диспетчере устройств

Рисунок 2. Выбор устройства в Диспетчере устройств

Запустите программу Houston Telnet Client, статус TCP/IP-соединения будет отображаться в строке состояния (рисунок 3):

Статус TCP/IP-соединения

Рисунок 3. Статус TCP/IP-соединения

Описание кнопок:

  • ls - вывод информации о файлах и каталогах.

  • Флажок CR LF устанавливает символ конца строки (0x0A, если не отмечено, и 0x0D 0x0A, если отмечено).

  • Receive File - запускает передачу файла из бортовой папки в наземную. В текстовом поле справа указывается имя файла из текущего каталога.

  • Флажок Ymodem переключает на протокол Ymodem (по умолчанию используется протокол Zmodem)

    осторожно

    Внимание! Для загрузки или скачки файлов с бортового УКВ используется только Ymodem. Для загрузки фото c Raspberry Pi лучше использовать Zmodem, так как он позволяет возобновить прерванную передачу данных (для этого нужно установить флажок Resume и нажать на кнопку скачивания файла).

  • Флажок Overwrite указывает получателю перезаписать локальный файл с таким же именем.

  • Флажок Resume позволяет перейти в режим возобновления, если предыдущая передача файла была прервана.

  • Send File - запускает передачу файла из наземной папки в бортовую папку.

  • Cancel - отправляет символ завершения отправителю и отменяет локальную процедуру приема.

  • Break - отправляет символ завершения отправителю (используется, когда отправитель не доступен после передачи файла).

  • End line - сбрасывает входной буфер оболочки и получает приглашение оболочки.

  • List Photos (команда ls -l) - показывает список файлов фотографий в каталоге фотографий.

  • Receive Photo - запускает передачу фотографии с номером, указанным в текстовом поле слева, из бортовой папки в наземную.

  • Receive Thumb - запускает передачу превью фотографии с номером, указанным в текстовом поле слева, из бортовой папки в наземную.

  • Remove - удаляет фотографию и ее миниатюру, с указанным номером, из бортового каталога фотографий / миниатюр.

  • Clear - очищает текстовую область журнала.

  • Shot! - сделать фото (создает файл фото и файл превью).

  • Settings - открывает окно настроек.

Окно настройки позволяет настроить следующие параметры (рисунок 4):

  • Telnet port – порт подключения Houston Server, IP:порт (60015 – для работы с Raspberry Pi, 60002 – для работы с бортовым УКВ).
  • Zmodem – размер окна, тайм-аут при приеме, размер блока передачи.
  • Remote paths – удаленные (бортовые) каталоги фотографий, расширения файлов фотографий, скрипт для создания фотоснимка.

Сценарий по умолчанию shot.sh требуется 2 параметра: номер камеры и формат выходного файла. Например, для фотографии с бортовой камеры Raspberry Pi используется следующее значение параметра Shot script:

/home/pi/scripts/shot.sh 0 jpg
  • Локальные пути – локальные (наземные) каталоги фотографий и каталоги для других загрузок файлов.

    Окно настроек Houston Telnet Client

    Рисунок 4. Окно настроек Houston Telnet Client

Загрузка фото по УКВ

Перед началом загрузки необходимо убедиться, что имена скачиваемых файлов не совпадают с именами ранее скачанных файлов, которые лежат в папке Houston Telnet Client, т.к. при совпадении имен будет выдана ошибка и скачивание завершиться. Нужно либо удалить файл из папки Houston Telnet Client или нажать флажок Overwrite для записи нового файла поверх существующего Последовательность действий по загрузке фотографий с бортового Raspberry Pi на компьютер через УКВ.

  1. Убедиться, что в строке состояния главного окна отображается состояние Server: connected. Если нет, то проверить параметр Telnet port в настройках Settings и подключение к Houston Server (рисунок 5):

Состояние подключения

Рисунок 5. Состояние подключения

  1. Нажать кнопку «End line». Приглашение оболочки должно появиться в текстовом поле терминала (рисунок 6):

Текстовое поле терминала с приглашением

Рисунок 6. Текстовое поле терминала с приглашением

  1. Нажать кнопку List Photos. Список файлов фотографий должен появиться в текстовом поле терминала. Предположим, что имена файлов соответствуют следующему шаблону: #.jpg (рисунок 7):

Список фотографий

Рисунок 7. Список фотографий

  1. Ввести номер фотографии в текстовое поле справа от кнопки List Photos. Затем нажать кнопку Receive Thumbs для загрузки миниатюр или Receive Photo для загрузки фотографий. В начале загрузки окно Houston Telnet Client выглядит следующим образом (рисунок 8):

Начало загрузки миниатюр фотографий

Рисунок 8. Начало загрузки миниатюр фотографий

  1. Дождаться завершения передачи файла. Приблизительная скорость загрузки и индикатор выполнения отображаются в строке состояния. По окончании передачи окно Houston Telnet Client выглядит следующим образом (в журнале появляется сообщение («File receive ends»)) (рисунок 9):

Окончание передачи миниатюр

Рисунок 9. Окончание передачи миниатюр

  1. Нажать кнопку «End line». Приглашение оболочки должно появиться в текстовом поле терминала (рисунок 10):

Приглашение оболочки в текстовом поле терминала

Рисунок 10. Приглашение оболочки в текстовом поле терминала

Скачанные файлы будут лежать в соответствующих папках приложения Houston Telnet Client, фотографии в папке photos, а миниатюры в папке thumbs.