-
27.08.2009, 23:25 #1
- Регистрация
- 26.02.2006
- Адрес
- Рыбинск, Ярославская обл.
- Возраст
- 42
- Сообщений
- 783
- Поблагодарили
- 157
- Поблагодарил
- 478
Проект QAPRS
Сначала я было начал разрабатывать свой аналог UI-VIEW но постепенно пришёл к выводу, что графическая часть должна быть отдельно, а вся APRS логига - тоже отдельно. Поэтому работы по графической части были временно приостановлены и началась разработка ядра.
Ядро было названо QAPRS-CORE по причине того, что разрабатывается на Qt и является переносимой с win на *nix.
Основная концепция ядра состоит в том, что оно реализовывает всю низкоуровневую часть: прием/передачу ui пакетов через порты, выдает маяки, ретранслирует пакеты, маршрутизирует их между портами, принимает сообщения (и поддтверждает их если требуется). Кроме того все данные хранятся в локальной базе данных. Данные разделены на: база данных принятых/переданных пакетов, сообщений, станций. К ядру подключаются графические модули - VIEW для отображения объектов на карте, MAIL - для отправки и приема сообщений.
На данный момент выпустил третью версию ядра. Предыдущие версии см. по ссылке
Ядро поддерживает следующие типы портов:
- APRS Internet Server Connection - порт соединения с APRS Internet сервером. Порт хранит 3 адреса серверов и, при потере соединения с первым, пытается установить соединение со следующим. Время пересодинения 30с. Соединяться с серверами теперь можно через прокси сервер!!!! Поддерживается пока HTTP Proxy с авторизацией или без.
- KISS TNC - порт соединения с TNC контроллером по KISS протоколу. По настройке почти не отличается от такого же в UI-View (только 8n1 и увеличено количество портов). Вообще выбирается не порт, а его имя. Имя порта может быть введено вручную. В ОС UNIX вводится имя файла устройства в /dev.
- AGW Core - порт соединения с ядром AGW для работы с одним из его портов.
- AXIP - AX over IP.
В этой версии порты автоматически включаются при подключении к системной БД (бд, в которой хранятся параметры портов и принятая информация). Для применения изменений в параметрах порта теперь не требуется отключать и включать обратно все порты. Изменение параметров происходит "динамически". Так же динамически можно добавлять и удалять порты. Состояние порта отображается лампочкой:
- серая - порт не создан в ядре;
- зеленая - порт в рабочем состоянии;
- морковная - порт не работает (для agw - нет соединения с ядром, для Inet - нет соединения с сервером, для KISS - не открыт последовательный порт).
После изменения параметров порта программе UI-View отправляется измененный список портов (при этом переподключение UI-View к ядру не требуется). Список портов и их параметры ведутся на закладке Ports. Все порты в ядре или по отдельности могут быть включены либо выключены. Вновь создаваемый порт по умолчанию выключен.
Пока в программе не реализованы все функции: отображение карт, прием обработка и передача сообщений. Эта версия qaprs идет под кодовым названием Jares. Название (а не номер) позволят мне лучше отличать версии по функциональным (и внутренним) особенностям.
Особенность данной версии в том, что основное ее назначение вести лог принятых пакетов, сообщений, услышанных станций. Самостоятельных действий по инициации передачи в эфир каких то данных (ответы на пинг, подтверждение приёма и т. д.) программа не ведёт (маяк - единственное исключение). В общем в двух словах ядро само "только слушает" (SWL) и всё запоминает.
Но не смотря на это, ядро позволяет работать через него программе UI-View как с ядром AGW. Все возможности работы в APRS реализуются с помощью UI-View (пинги, сообщения и т. д.).
Пакеты, принятые и переданные через порты, отображаются в окне Packets. Строки с переданными пакетами отмечены красным, принятые - зелёным цветом. Принятые пакеты кроме системной БД пишутся еще и в текстовый файл в папке с программой.
Из принятых и переданных пакетов выделяются сообщения и отображаются в окне Messages. Принятые сообщения кроме системной БД пишутся ещё и в текстовый файл в папке с программой.
Из принятых пакетов выделяются сообщения, в которых содержится информация о координатах станции. Поддерживается обычный стандарт координат станции и упакованный. Пакеты, не содержащие информации о координатах просто добавляют станцию в список услышанных (окно Stations). Кроме того, в Stations отображается символ станции, комментарий к символу, путь (via), комментарий маяка, расстояние до станции и угол, когда была услышана станция и сколько минут назат.
ИНСТРУКЦИЯ ПО БЫСТРОМУ ЗАПУСКУ ВЕРСИИ
Ссылка для скачивания: http://code.google.com/p/qaprs/downloads/list
- Скачиваем. Само ядро QAPRS-CoreJares002.rar. DLL.rar файлы к нему (если есть старая версия, то подойдут dll оттуда). Всё распаковать в одну папку. Если нужна русификация интерфейса - распаковать туда же qaprs-core_ru.rar.
- Распаковать в удобной для вас папке
- Запустить qaprs-core.exe
- Ввести личные данные General Station Information, QTH, Default Parameters.
- Нажать кнопку Save для сохранения параметров.
- Для начала работы нажать кнопку Connect - ядро соединится с системной БД и начнет работать.
- Перейти на закладку Ports. В прилагаемой системной БД создано два порта: Inet и Kiss.
- Настроить Inet порт на ваше имя и пароль, указать нужный фильтр, откорректировать параметры Proxy. Сохранить.
- Настроить KISS порт на используемый последовательный порт. При правильно указанных параметрах "лампочки" в столбце Act должны быть зеленого цвета.
- Запустить UI-View. Указать параметры подключения Setup -> Comms Setup в поле Host Mode указать AGWPE нажать кнопку Setup и указать адрес и порт QAPRS-AGW - 127.0.0.1 порт 8001 (или другой, выбранный на закладке General в параметрах AGW Core Emulator).
- UI-View должен отобразить список портов.
После этого система готова к работе!
При закрытии основного окна в трее останется значок ядра. С помощью контекстного меню (правой кнопкой мыши) можно обратно вызвать окно настройки, а также отобразить окна "Пакеты", "Сообщения" и "Станции".
Скриншоты см. ниже...Последний раз редактировалось UA3IRS; 28.08.2009 в 08:44.
С уважением, Алексей. UA3MQJ
-
27.08.2009, 23:32 #2
- Регистрация
- 26.02.2006
- Адрес
- Рыбинск, Ярославская обл.
- Возраст
- 42
- Сообщений
- 783
- Поблагодарили
- 157
- Поблагодарил
- 478
Интерфейс, в общем, такой:
С уважением, Алексей. UA3MQJ
-
27.08.2009, 23:41 #3
- Регистрация
- 26.02.2006
- Адрес
- Рыбинск, Ярославская обл.
- Возраст
- 42
- Сообщений
- 783
- Поблагодарили
- 157
- Поблагодарил
- 478
Неоднократно возникают вопросы о необходимости изобретения данного велосипеда. Поэтому опишу основные причины:
- Собственное развитие в области программирования hi
- Разработка современной программы - хотя-бы аналога UI-View.
- Привлечение новых пользователей в APRS.
Основные цели и направления проекта:
- Реализация многопортовости. Сейчас пока не реализованы очереди и задержки в отправке сообщений на соседние порты. Это иногда бывает необходимо на многопортовых станциях, когда передаваемый пакет по соседнему порту мешает приему на другом (взаимное проникновение, наводка на приемник). Пока решаем через UI-View -> Setup -> Miscellaneous Setup задержка в отправлении пакетов Beacon Pause (secs) выставляем нужное значение.
- Реализация поддержки современных сетевых сервисов.
- Реализация всех основных функций APRS станции: ответы на запросы (query) прием/отправка сообщений, маршрутизация. Реализация всего этого вызывает много вопросов, которые могут быть обсуждены перед принятием решения об алгоритме реализации. Такие обсуждения помогут нам всем лучше понять определенные аспекты работы APRS протокола.
Последний раз редактировалось UA3IRS; 28.08.2009 в 07:16.
С уважением, Алексей. UA3MQJ
-
27.08.2009, 23:50 #4
- Регистрация
- 27.08.2008
- Адрес
- Тосно, Ленинградская обл., Россия
- Возраст
- 39
- Сообщений
- 5,302
- Записей в дневнике
- 5
- Поблагодарили
- 817
- Поблагодарил
- 756
-
27.08.2009, 23:51 #5
- Регистрация
- 26.02.2006
- Адрес
- Рыбинск, Ярославская обл.
- Возраст
- 42
- Сообщений
- 783
- Поблагодарили
- 157
- Поблагодарил
- 478
Возможности ставшие доступны благодаря QAPRS.
- Лог пакетов.
- Реализация подключения к APRS интернет серверу не через UI-View -> Connect APRS Server, а через один из портов. Т. е. соединение с APRS сервером - это всего лишь один из портов ядра. Что это дает - пока сказать сложно, т. к. маршрутизация между обычными радиопортами и каналом интернета происходит по разным принципам - рекомендую с осторожностью настраивать станцию в режиме GATE.
- Реализация подключения к APRS интернет серверу реализована с поддержкой прокси. Я знаю, что некоторым приходится работать через прокси серверы - при этом возникала проблема в том, что UI-View требует прямого подключения к интернет, ну или хотя-бы NAT (сам тоже вынужден работать через прокси).
- Портов может быть достаточно много независимо от типа. Например можно создать два порта соединения к APRS серверу: один для работы с BPSK31Srv а второй для соединения с Интернет APRS. На сколько я понимаю, до этого такую конфигурацию было не настроить с использованием UI-View.
Сам обычно пользуюсь тремя портами:
- APRS Internet Server
- KISS<->Mix FT850 20M 300 bps
- KISS<->Mix ТаисРМ41 10М 1200 bps
Последний раз редактировалось UA3IRS; 28.08.2009 в 08:45.
С уважением, Алексей. UA3MQJ
-
27.08.2009, 23:51 #6
- Регистрация
- 27.08.2008
- Адрес
- Тосно, Ленинградская обл., Россия
- Возраст
- 39
- Сообщений
- 5,302
- Записей в дневнике
- 5
- Поблагодарили
- 817
- Поблагодарил
- 756
-
27.08.2009, 23:52 #7
- Регистрация
- 26.02.2006
- Адрес
- Рыбинск, Ярославская обл.
- Возраст
- 42
- Сообщений
- 783
- Поблагодарили
- 157
- Поблагодарил
- 478
Отключите Use Proxy. Перезапустите.
Потом нажмите Connect.
В UI-View еще раз в Setup -> Comms Setup
Host mode - AGWPE затем SETUP
там параметры
host mashine 127.0.0.1
порт обязательно(!!!) 8001 - такой же, как указан в окне настройки QAPRS
Потом Ок
Если все нормально, должен отобразиться список портов.
У меня:
AGWPE - V2005.127 - 127.0.0.1
Port 1 => 0 Internet (Inet)
Port 2 => 1 n\a (KISS)Последний раз редактировалось UA3MQJ; 27.08.2009 в 23:56.
С уважением, Алексей. UA3MQJ
-
27.08.2009, 23:59 #8
- Регистрация
- 27.08.2008
- Адрес
- Тосно, Ленинградская обл., Россия
- Возраст
- 39
- Сообщений
- 5,302
- Записей в дневнике
- 5
- Поблагодарили
- 817
- Поблагодарил
- 756
-
28.08.2009, 00:23 #9
- Регистрация
- 26.02.2006
- Адрес
- Рыбинск, Ярославская обл.
- Возраст
- 42
- Сообщений
- 783
- Поблагодарили
- 157
- Поблагодарил
- 478
Хотелось узнать заработало ли у вас и подробности на счёт ISS.
Последний раз редактировалось UA3IRS; 28.08.2009 в 07:26.
С уважением, Алексей. UA3MQJ
-
28.08.2009, 08:43 #10
- Регистрация
- 03.04.2002
- Адрес
- Химки, Московская обл.
- Возраст
- 71
- Сообщений
- 5,371
- Записей в дневнике
- 8
- Поблагодарили
- 920
- Поблагодарил
- 1393
Алексей приветствую.
Под какими Windows OS тестировалась программа и под какими OS она работает успешно ?[SIZE=1][FONT=Verdana]73. Сергей ([B]UA3IRS[/B] aka [B]UR3IRS[/B]) :ru: :: OnLine: [url=facetime://ur3irs@gmail.com]FaceTime[/url], [url=callto://ur3irs]Skype[/url], [url=xmpp://ur3irs@gmail.com]Jabber[/url] :: Web: [url=twitter.com/ur3irs/]Twitter[/url], [url]aprs.ru[/url], [url]echolink.ru[/url], [url=https://www.flickr.com/photos/ur3irs/sets/]Flickr[/url], [url]ur7iwz.qrz.ru[/url][/FONT][/SIZE]
-
28.08.2009, 10:53 #11
- Регистрация
- 27.08.2008
- Адрес
- Тосно, Ленинградская обл., Россия
- Возраст
- 39
- Сообщений
- 5,302
- Записей в дневнике
- 5
- Поблагодарили
- 817
- Поблагодарил
- 756
-
28.08.2009, 13:57 #12
- Регистрация
- 26.02.2006
- Адрес
- Рыбинск, Ярославская обл.
- Возраст
- 42
- Сообщений
- 783
- Поблагодарили
- 157
- Поблагодарил
- 478
Тестировалось под WinXP (мной), на cqham - Serg тестировал под 98SE - вроде как работало.
Самую первую версию сам тестировал под FreeBSD 7. Последние две версии не тестировал, но коренным образом ничего не изменилось. Реализация портов Интернет, AXIP и AGW полностью кроссплатформенная. Порт KISS написана разная реализация под WIN И UNIX так как принцип работы с портами разный. Под UNIX тестировалось на Нуль модемном кабеле. Второй комп можно было подключить как KISS модем, но не нашел времени (дом, семья...).
В общем требуются тестеры с разным железом.С уважением, Алексей. UA3MQJ
-
28.08.2009, 14:35 #13
- Регистрация
- 27.08.2008
- Адрес
- Тосно, Ленинградская обл., Россия
- Возраст
- 39
- Сообщений
- 5,302
- Записей в дневнике
- 5
- Поблагодарили
- 817
- Поблагодарил
- 756
-
28.08.2009, 21:45 #14
- Регистрация
- 26.02.2006
- Адрес
- Рыбинск, Ярославская обл.
- Возраст
- 42
- Сообщений
- 783
- Поблагодарили
- 157
- Поблагодарил
- 478
А можно по подробнее по поводу трех портов? Для чего используются, куда подключены, как настроены?
Думаю будет интересно не только мне.С уважением, Алексей. UA3MQJ
-
28.08.2009, 22:52 #15
- Регистрация
- 27.08.2008
- Адрес
- Тосно, Ленинградская обл., Россия
- Возраст
- 39
- Сообщений
- 5,302
- Записей в дневнике
- 5
- Поблагодарили
- 817
- Поблагодарил
- 756
|
Социальные закладки