В продолжение темы APRS, если нет возможности формировать пакеты программно или же устройство не имеет звуковой карты, или требуется автономное устройство — на помощь придет этот несложный TNC-контроллер. Из-за простоты своего устройства, реализована лишь часть протокола AX.25, режим KISS не поддерживается в более новых прошивках от IZ8EWD значительно расширен функционал. Авторство сего устройства принадлежит Bob Ball (WB8WGA), всю сопутствующую информацию можно получить по ссылкам внизу статьи.
Итак. Декодирование и формирование сигнала методом AFSK осуществляется микроконтроллером PIC16F88 (с помощью компаратора и резистивной матрицы соответственно). Связь с компьютерным терминалом или GPS-приемником происходит по UART протоколу через преобразователь интерфейсов MAX232. Устройство питается напряжением 7-18 вольт. Не буду вдаваться в подробности работы, об этом можно почитать в переводе либо оригинале статьи.
Коллега по цеху UR5WHK в далеком 2007 году изготовил данное устройство, разработав для нее печатную плату, чертеж которой нашелся на просторах Интернета. Особенностей конструкция не имеет. И тем не менее, печатной платой предусмотрена небольшая аппаратная доработка — добавлен гистерезис в компараторе для предотвращения колебаний (установлен резистор на 470 Ом с 1 ноги МК на землю, установлен резистор 100 кОм между первой и второй ножкой МК, установлен конденсатор 1000 пФ с 17 ноги на землю.). Транзистор 2N2222 можно заменить КТ3102. В обвязке MAX232 по даташиту, как и в схеме, должны стоять конденсаторы емкостью 1 мкФ, а не 4,7, как указано на плате. Все необходимые файлы расположены внизу статьи.
Изготовление и сборка проблем не вызвала. Самая трудная задача — запрограммировать и настроить ПО контроллера. Автор использует плату Olimex и предполагает, что сначала собирается базовая схема для программирования, со светодиодом на 9 ноге МК, который мигает в режиме загрузчика, в МК загружается программатором загрузчик, после окончательной сборки осуществляется загрузка основного ПО программой Screamer. Возникает вопрос — зачем такие сложности, если можно запрограммировать устройство сразу целиком и полностью (собственно, так и поступим).
Прошивка записана, удаляем перемычку GPS Enable, подключаем нуль-модемный кабель к ПК, открываем эмулятор терминала, выбираем нужный COM-порт, подключаемся со скоростью 9600 бит/с 8N1 для версии прошивки 1.08 или 4800 бит/с 8N1 для версий 2.xx. Если все работает — в приемном окне терминала должно отображаться приветствие, приглашение командного интерпретатора и эхо самих команд (и, естественно, результат их выполнения), вводимых в терминал. На неправильные команды интерпретатор ругается знаком ?, если команда правильная — говорит OK и выводит результат.
Теперь самое интересное. Товарищи из [1] перевели на русский только первую часть статьи, в которой отсутствовало описание команд для настройки TNC. Поэтому пришлось поломать голову — а что же делать дальше?
Пожалуй, самые первые и важные команды — это help
и disp
. Команда help
выводит список всех доступных команд с кратким описанием, команда disp
выводит текущие настройки контроллера.
Базовая конфигурация следующая:
- Командой
mycall r4adx
задаем позывной (свой, естественно). - Далее задаем адрес назначения UI-фреймов:
unproto aprs
— напрямую, илиunproto aprs v wide1-1 v wide2-2
— через дигипитеры (более подробную информацию следует искать в описании стандарта APRS). - Периодичность передачи маяков настраивается командой
beacon every ##
. Для мобильных станций с GPS рекомендовано выставлять значение 1-2 минуты, для стационарных маяков — 10-30 минут. Командаbeacon every 0
выключает маяк. - Сохранить настройки в EEPROM микроконтроллера позволяет команда
perm
.
Для того, чтобы передавать фиксированные координаты маяка, используется команда btext !4820.55N/04451.43E%Hello, World!
, где
!
— тип сообщения (Координаты без отметки времени; без сообщений APRS)4820.55N
— 48º20.55′ северной широты/
— идентификатор таблицы символов APRS ( / — основная, \ — дополнительная)04451.43E
— 44º51.43′ восточной долготы%
— код отображаемого на карте символаHello, World!
— любой текстовый комментарий.
Символ, определяемый / и %, а также другие возможные символы описаны в приложении 2 Справочника по протоколу APRS, или в [4]
Использование TNC контроллера в качестве дигипитера:
Контроллер может также ретранслировать пакеты APRS или другие полученные UI-фреймы, если путь назначения совпадает с адресом, настроенным в параметре myalias
. Для активации режима используются команды:
myalias wide1-1
— задает псевдоним для пересылки пакетов.digi on
— включает режим дигипитера.
В режиме трекера необходимо поставить перемычку GPS enable и сделать соответствующие настройки.
<GPS приемника нет в наличии, проверить работу пока невозможно>
Дополнительные команды:
calibrate
— TNC переходит в режим передачи и выдает двухтональный сигналtxdelay
— задержка между переключением на передачу и генерацией сигнала. Увеличение параметра на единицу увеличивает задержку примерно на 6 миллисекундmonitor all/me/off
— мониторинг пакетов на последовательном порту.all
— все пакеты,me
— пакеты, которые предназначены дляmycall
иmyalias
,off
— выключено (например, в режиме дигипитера). Мониторинг автоматически отключается при установке перемычки GPS Enable.converse
— включает режим передачи ненумерованных UI-кадров всего, что набирается в последовательный порт (в новых версиях сокращено доconv
).TR xmit/rcv/off
— команда трассировки для тестирования программного обеспечения или экспериментов.xmit
отображает в шестнадцатеричном формате пакеты, отформатированные для передачи, но фактическая передача не происходит.rcv
делает то же самое, но с принятыми пакетами.kiss on/off
— активация режима KISS для работы с внешним программным обеспечением (режим реализован начиная с версии прошивки 2.30, предоставленной в [2]).
Настройка аппаратной части сводится к установке уровней принимаемого/передаваемого сигнала.
Файлы:
- Оригинал статьи из журнала QEX Март/Апрель 2005 года
- Прошивки разных версий, прошивка загрузчика и утилита Screamer
- Файлы печатных плат в формате Protel, конвертированные в P-CAD, картинки в Microsoft Word для непосредственной печати
Ссылки:
Антон приветствую ! Хотел узнать , интересуетесь ли темой Aprs на базе Lora ?
Нет, я давно APRS не пользуюсь… Есть демон APRX чисто на сервере домашнем, который объект в сеть транслирует, и всё