PDA

Просмотр полной версии : Программа для приема-передачи SSB на частоте 32 кГц через звуковую карту



RA4HTW
22.09.2014, 22:15
Собственно есть необходимость сделать прием-передачу SSB в диапазоне до 40 кГц (ультразвук). Мысль такая. Взять какой-нибудь планшетник, с одного канала микрофона подавать сигнал НЧ (речь), на один канал телефона сделать вывод SSB на 32 килогерца. Соответственно на другой канал микрофона подавать 32 килогерц, с другого канала телефона снимать НЧ. Одновременная (дуплекс передача не требуется).
Если встроенная звуковая карта не поддерживает высокую входную частоту, то подключить внешнею звуковую карту USB HOST. Никто не озадачивался такой задачей?

Леонид3
26.09.2014, 10:22
RA4HTW, именно SSB, может просто АМ, и то и другое реализуемо, но звуковая карта должна поддерживать не менее 96 кГц дискретизацию и УНЧ в ней пропускать эти 32 кГц, что сомнительно, особенно для планшетников.

RA4HTW
26.09.2014, 11:35
Задача сделать именно SSB, причем конкретные частоты. 32.768верх, 32.768ниж, 31.250вер, 31.250ниж, 28.5вер, 28.5 ниж, 25.0вер, 25.0 ниж. Собственно это частоты работы фирменных блоков.
Про платы. Рассматривать наверное можно только внешнею. Например:
Звуковая карта ASUS "Xonar U7" USB.
рязрядность АЦП 24 бит
Максимальная частота АЦП 192 кГц.
Приемник SSB на ультразвуке (точно не помню, кажется от 4 до 200 кГц) у меня есть. Правда весит 15 кг.
Аналоговыми методами сформировать одну боковую можно. Но вот хотелось бы программно. Все таки 21 век.

Леонид3
26.09.2014, 11:57
..Приемник SSB на ультразвуке (точно не помню, кажется от 4 до 200 кГц) у меня есть..
Тогда есть смысл начать с ТХ :s7:
Немного поработаю и через денёк выложу.

Леонид3
28.09.2014, 15:02
RA4HTW, в принципе сделал, но ждало разочарование: оказалось на выходе моей звуковой карты полоса ограничена 23 кГц, далее резкий спад и уже на 24 кГц сигнала нет :s9: да ещё так и не смог разделить каналы, ранее на ОС ХР с этой же картой каналы разделял, сейчас Win7, пока не удалось сделать микрофон на одном канале, а выход на другом. Прикладываю генератор НЧ 20--45000 Гц (дискретизация 96 кГц, библиотека для работы со звуком BASS в тоже в архиве), попробуйте Вашу звуковуху.
Генератор выдаёт Синус на одном канале и Косинус на другом, на картинке можно посмотреть частотную гистограмму или развёртку (переключается щелчком на картинке).

UR5ZQV
28.09.2014, 15:40
Можно даже дуплексом сделать для стандартной ЗК. В одном канале - прием, в другом передача. Проще всего фильтровым способом. Могу сделать (если надо) макет проги для простых ЗК (48 кГц). На более мощных нечем тестировать.

RA4HTW
28.09.2014, 17:08
125816Спасибо! Попробовал ту звуковуху, что стоит сейчас в компе. Вроде как 32 килогерца пропускает. Ту которую я выбрал (192 килогерца дискретеизации) я еще не купил.

Леонид3
28.09.2014, 19:16
RA4HTW, генератор-то генерирует, а измерьте тестером или осциллографом на линейном выходе :s10:
Вот полуфабрикат, скорее четвертьфабрикат, на проверку работы :s7:
В архиве программка, звуковая библиотека BASS (через неё работа со звуком) и исходник (в среде HiAsm)
При запуске предлагается выбрать звуковую карту и вход (микрофон, линейный), затем режим -- частота и полоса. На входе имеется индикатор уровня, нельзя допускать перегрузки по входу -- красный цвет проскакивает; когда жёлтый, то кричать чуть громче, до зелёного.
В микшере Windows ползунок выбранного входа поставить на "0".
На выход работает один канал, выбрать тот, который не попадает на вход, тоже надо в микшере Windows установить баланс 100% на этот канал.
(Общая задержка в буфере звуковой карты 0,1 сек.). Будут вопросы, чем смогу :s7:
Удачи!

RA4HTW
29.09.2014, 17:48
Сегодня купил плату. Как советовали будем тестить. Для первого эксперимента взял анализатор спектра Qwinstek GSP-810. Вобще то на нем написано 150 КГц-1000 Мгц. Но на заборе тоже написано. Частота Центральная встала на 30 КГц, частота -деление поставил 5 кГц. Для проверки что показывает анализатор спектра подал сигнал от 15 кГЦ до 50 с генератора Г3-118. Частота на на нем переключателями выставляется. Вполне адекватно показал частоту генератора. Для анализа звуковой платы сначала подключил на выход наушников. Разочаровался. Срыв на 20 с маленьким копейками частоте. На сегодня все. В четверг продолжу на другом выходе. Не уверен что на этой звуковухе он линейный, но на нем по крайней мере тюльпаны с разделением на правый и левый каналы.

UR5ZQV
29.09.2014, 21:32
Еще один вариант, во временной области (без Фурья, и без BASS).
Пока для карты по умолчанию, под 48 кГц. Частота передачи - плавная.

Леонид3
29.09.2014, 22:57
UR5ZQV, привет коллега по HiAsm! Рад видеть!
*.Ехе запустился и работает, а *.sha выдал кучу ошибок :s9: (элемент GetData давно не видел :swoon: какая версия HiAsm ? )

Леонид3
30.09.2014, 21:11
RA4HTW, задавал вопрос по звуковым картам на дружественном сайте, к сожалению большинство карт не работают с этими частотами на выходе, и список тестирования привели коллеги http://www.cqham.ru/forum/showthread.php?t=5734&page=149&p=1013339#post1013339

RA4HTW
02.10.2014, 11:02
Протестировал карту ASUS XONAR U7. При подаче программного генератора также срыв чуть больше 20 КГц. Несмотря на заявленную высокую частоту дискретизации 192 кГЦ (выставляется программно) максимальная выходная частота такая же низкая как и на дешевой встроенной карте ноута. Но все таки решил проверить с речью. Ура! Получилось! С оглядкой на звуковуху. Передача на частоте 25 килогерц была принята приемником. Конечно с сумасшедшими искажениями, но оно и понятно. Звуковая плата уже практически не воспроизводит эту частоту. Пойду искать другую. Но факт. Программно ультрозвуковой (точнее пока в проводах) сигнал реализован. Передан на другое устройство и им принят и демодулирован. Задержка как при работе через геостационар. Наверное секунда. Пойду пытаться сдать плату и искать другую. В том списке, что привели выше много PCI, а мне нужно только внешнею, и желательно поменьше габаритами.

Леонид3
02.10.2014, 12:32
RA4HTW, посмотрите по той же ссылке мой пост №2982, выложил фото работающей на 45 кГц ЗК и её лейбл, тоже кричал "Ура!" :s10:
Тогда дополняю передатчик приёмником. Что используете в качестве излучателя? пьезопищалки от икрушек подойдут или рассыпятся? надо попробовать.

RA4HTW
02.10.2014, 20:51
В качестве излучателей нужен титанат бария. Желательно цилиндрический, для равномерности поля в горизонтальной плоскости. Но для начала воспользуемся таблетками. Поскольку они есть. В принципе китайцы производят цилиндры. Они стоят в датчиках измерения тока жидкости. И как я понимаю, могут сделать на любую частоту. У меня есть несколько пар таблеток, про которые продавцы говорили, что они где то близко к 30 КГц. Но точно узнаю, когда их проверю по ахч.
Сегодня пошел сдал ASUS U7. Приняли в Юлмарте без вопросов и деньги вернули. По любезно предоставленной ссылке увидел, что в нужном диапазоне пропускает Creative 1090. Такой карты уже давно в продаже нет. Но в магазинах есть 1095, про которую. пишут, что от 1090 не нашли отличие. Сходил купил, стал экспериментировать. И что интересно. Просто воткнул, без подключения родного драйвера, плата сама как то определилась и какой то драйвер поставила. Включил программу генератора и анализатор спектра - и о чудо, до 40 кГц выдала красивую синусоиду. Выше начинаются искажения. Решил воткнуть родной диск с дровами из коробочки. И вот после этого опять та же картина что и с c ASUS. Выше 20 кгц обрезка. Больше сегодня ничего не успел (еще же и работать нужно). Может я зря поторопился сдать ASUS, и проблема не в железе, а в родной программе? Но если у ASUS не ставить родную прогу, то как управлять выходом и переключать частоты дискретизации и уровни?

Леонид3
02.10.2014, 21:28
RA4HTW, самое главное в работе с железками -- драйвер, и когда Вы воткнули карту, компьютер сам их нашёл и включил в работу (в соcтаве Win этих драйверов от всяких производителей железа море, а если нет, то и с сайта производителя), а на установочном диске кроме драйверов куча программ заточенных под молодого слушателя музыки, на что мы и напоролись. Выньте карту и выполните откат, и более установочный диск не трогайте :s7:
Программку на приём допилю завтра-послезавтра, вот внешность готова :s10: Нужно-ли делать переключатель приём/передача/дуплекс/симплекс?

UR5ZQV
02.10.2014, 21:35
RA4HTW, если не секрет, это не для звукоподводной связи? Чем раскачиваете излучатель? Может быть узкополосным для SSВ, надо бы параметры.
Некоторые карты имеют заявленные параметры (по дескритизации) только для выхода. Надо проверять.
PS: Леонид, здраствуйте. Всегда рад Вас видеть. К сожалению могу поддержать только программно-макетно (нет железа, а тестировать по переписке, дело неблагодарное). Версия 184 (GetData работает, хоть перенесен из старых версий, не выношу я со своим зрением новых мелких шибздиков)

Леонид3
02.10.2014, 23:34
UR5ZQV, понятно, зрение тоже не ахти, о паяльник нос обжигаю, но монитор у меня 32" и каждый пиксель 0.5 мм, пока вижу :)

RA4HTW
03.10.2014, 08:34
126188UR5ZQV, да хотелось бы звукоподводную связь. Тем кто ездит нырять в очень теплые моря она наверное не нужна, та ми так друг друга видно. А когда прозрак менее вытянутой руки, то хотелось бы общаться. был в этом году случай, когда человек зацепился баллонами за корягу, и очень долго не мог сам отцепиться. А я и не знал, что у него проблемы, хотя был всего метров в трех.
По поводу режимов. Наверное нужно так как у меня и не радиостанциях. То есть три: Симплекс, двухчастотный симплекс для работы через репитер и собственно дуплекс, для этого самого репитера. Если оставлять в лодке дуплекс - то есть репитер, а лодка висит сверху над аквалангистами, то подводные препятствия между аквалангистами будут менее критичны. Насчет пищялок от игрушек не думаю, но вот есть излучатели от ультразвуковой сигнализации. Там вроде около 40 КГЦ. Вот они то мощю прокачивают. Прилагаю страничку каталога по трубчатым излучателям. Они вроде как сильно узкополосны. На раскачку и согласования выхода ЗК и пъезоэлемента - это будет отдельная схема. Следующий этап. Для начала, что бы на кроссировке лежа на столе заработала.
Схема вырисвовыется такая - в контейнере самый маленький планшетник с USB HOST. К сожалению он не во всех маленьких планшетах бывает. К нему ЗК и схемы согласования и элемент питания. В качестве микрофона в оном из старых журналов "Спортсмен-подводник" было описано применение костного микрофона и телефона для глухих. Сейчас есть в продаже такие наушники с микрофоном на костной проводимости. Прижимаются к костям черепа перед ухом, уши свободные. Рекламируются для тех, кому нельзя в наушниках - например велосипедистам - могут что нибудь и не услышать.

Леонид3
03.10.2014, 11:14
RA4HTW, задача, которую вы перед собой поставили, достойная!
Наверху, конечно, может быть и компьютер, а вот внизу должно быть устройство надёжное и не похожее на солянку сборную. Может простой TRX по принципу приёмника/трансивера прямого преобразования с фиксированными частотами, да и в цифре учитывая низкую частоту почти любой микропроцессор справится?

RA4HTW
03.10.2014, 12:32
На микропроцессоре идея интересная. А если не делать программно, то вообще можно было взять плату от радио-76 и заменить ГПД на кварцы. И неплохо бы работала. Тот приемник что я сейчас на столе использую - "блок А" от Р-375 так и устроен."Сигнал 10-300 Кгц-ПЧ500кгц-НЧ" Внизу тоже нужен комп. Разговор - это одна из функций. Там для аквалангиста есть мысль сделать информационно-навигационный блок. Который бы показывал не только где аквалангист плавает, а что его окружает и с какой стороны в мутной воде. Картинку предварительно снять гидролокатором бокового обзора, сделать мозаику в программе SonarTRX, октрыть в кеше Гугля планеты, свои координаты принять в этот же Гугль и смотреть где мы и что и где. В надводном варианте на моем катере это все реализовано. Я вижу свое положение относительно объектов на дне. Чего не хватает - это GPS компаса. Что бы показывал ориентирование судна без хода, пока стоим. Магнитный иногда врет градусов на 180. Особенно если под тобой на глубине 8 метров объект метров 40, да еще и намагниченный.

UR5ZQV
03.10.2014, 20:50
Ну Вы батенька и замахнулись:). Это ж задача для НИИ. Лет 20 назад встречал такое и не уверен, что она решена. Голосовую ЗПС конечно по любительски можно сделать. Телеметрическую инфо положим тоже по отдельному каналу, небыстро можно гнать (кстати, а почему бы не по проводам). А вот подводная навигация, это навряд ли на коленках получиться.

RA4HTW
03.10.2014, 21:55
Голосовая ЗПС любителями с ам модуляцией делалась 30 лет назад. Ничего нового за 30 лет в это области не изобрели. Как была модуляция ультразвуковой несущей (любым методом) с излучателями из титаната бария так и осталась. То что сейчас в продаже - переведенная с фильтрового метода на цифровой синтез SSB приемопередатчик. С добавлением всякого сервиса, типа голосового меню и т.п. 30 лет назад самолеты летали исключительно по радиополукомпасам от одного города к другому (то есть от одного радиомаяка до следующего), а штурмана считали по логарифмической линейке НЛ-10М. А сейчас ваш наладоник считает до нескольких сотен миллионов операций в секунду. 30 лет назад я заказывал междугородний телефонный разговор, вызывая своих родителей на том конце на переговорный пункт телеграммой. А в позапрошлом году практически из кратера Вулкана Мутновский на Камчатке через аппарат размером с трубку от старого настольного телефона вел деловые переговоры с другим концом страны? Не удивляет? Уже привыкли. Когда я показал фотографию утопленной баржы снятой мной обычным любительским эхолотом LOWRANCE HDS с блоком бокового обзора Structture Scan и сравнил с тем что снимали в ДВГУ во время экспедиций научные работники (брат моей жены как раз и занимался подводной акустикой и ГБО) то научные работники были сильно удивленны. Так что подводная навигация не совсем на коленках. Мы используем GPS спутники (которые не на коленках создали), излучатели - тоже заводского изготовления, блок отображения в виде планшетника - тоже продукт высоких технологий. Просто сейчас другой подход. Интеграция различного универсального оборудования созданного не нами для решения поставленной перед нами задачи. НИИ часто терпели неудачу,потому что в условиях СССР было требования все разработать с нуля. Даже болты крепления в таких программах свои изобретались. Задача подводного позиционирования сводится всего навсего в:
1. Получение координат буев от спутника
2. Посылки этих координат с точными отметками времени.
3. Прием этих координат с определением задержки получения временной отметки - вычисление дальностей
4. Перевод координат в локальную систему отсчета
5. Вычисление в этой системе положение приемника (тупая математика - координаты пересечения нескольких окружностей с известными радиусам
6. возврат в обшемировую систему кординат, перевод в протокол NMEA, отправка на устройство отображения
7. Получение изображения аквалангста на картинке в бесплатной программе.
Что в этом алгоритме фантастического?
У НИИ ничего не получилось потому что:
они не могли точно отслеживать положение буев.
Не было точных отметок времени к чему привязаться.
Не было вычислительных возможностей подводного блока (СМ1420 на руку водолазу не оденешь).
Не было плоских дисплеев (а с ЭЛТ трубкой не поныряешь)

UR5ZQV
05.10.2014, 10:29
Да это понятно. С теорией подводной навигации знаком. Только слабо представляю , как я эти буи на кухне делаю :).
Кстати, почему излучатели самодельные? Не такое уж легкое дело. Можно эхолотовские (они уже подводные).

RA4HTW
05.10.2014, 11:29
А в не на кухне сделайте, а в большой комнате.:s10:
А если серьезно выберите и купите любой модуль GPS (на алиэкспресе, или еще где. Они стоят копейки:
Пакеты с данными глобальной спутниковой навигации
Несмотря на различные характеристики и большое количество производителей, GPS-приемники обладают единым форматом передачи данных по аналогии со стандартными интерфейсами, принятыми в электронном сообществе. Помимо стандартного, некоторые приемники могут иметь дополнительный формат, который определяется особенностями чипсета, например двоичный формат SiRF Binary.
В качестве единого протокола кодирования информации для общения с GPS-приемниками в настоящее время используется стандарт для поддержания совместимости морского электронного оборудования NMEA-0183, разработанный Национальной ассоциацией морской электроники США (National Marine Electronics Association). Ассоциацией определяются протоколы для разных производителей, а также для различных приложений, например систем спутниковой навигации. Для связи GPS-приемника с внешним устройством, как правило, используется встроенный последовательный асинхронный порт UART (удобно для соединения с микроконтроллером) либо интерфейсы RS232/USB/Bluetooth (для работы с персональным компьютером). Каждый байт обычно передается 10 битами: стартовый бит (логический ноль), 8 бит данных, стоповый бит (логическая единица). Скорость передачи данных варьируется от 4800 до 115200 бит/с.
Протокол NMEA-0183 имеет текстовый формат, то есть содержит цифры, символы латинского алфавита и разделительные символы. Основные сообщения, которые поступают от GPS-приемника:
GGA — фиксированные данные GPS (время, широта, долгота, высота, количествоиспользуемых спутников и др.);
GLL — географическое положение (широта, долгота, время, качество данных);
GSA — информация о количестве спутников и пока зателях точности (режим измерения,коли чество спутников для определения результата расчета позиции, точность измерений);
GSV — подробная информация о положении спутников с привязкой по идентификатору(количество видимых спутников, их высота и азимут, отношение сигнал/шум);
RMC — рекомендованная минимальная информация GPS (время, широта, долгота, высота, системный статус, скорость, курс, дата);
VTG — вектор скорости (с указанием курса и величины скорости);
ZDA — дата, локальное время и всемирное координированное время UTC.
Сообщения имеют единый формат:

$GPDTS,Inf_1,Inf_2,Inf_n*CS<CR><LF>
где $ — начало пакета данных; GP — информация для определения NMEA-приложения (в данном случае — глобальная навигация); DTS — идентификатор сообщения, например, GGA; Inf_1…Inf_n — информация с числовыми данными, например 175,4 для данных курса; * — разделитель между основной частью пакета и контрольной суммой; CS — контрольная сумма; <CR><LF> — завершающая часть пакета (перевод каретки, конец строки). Максимальный размер поля данных стандартного NMEA-сообщения не должен превышать 79 символов. Расчет контрольной суммы осуществляется путем сложения операцией исключающего ИЛИ (XOR) всех байт сообщения, расположенных между символами $ и *.
Пример набора пакетов, полученных с помощью отладочной программы Locosys GPS Fox, приведен на рис. 4. В правой части окна программы можно наблюдать декодированные значения широты, долготы и времени. В верхней части приведена информация о качестве приема сигнала, количестве спутников, их идентификаторы и расположение. В нижней части приводится скорость обмена данными с компьютером, номер COM-порта, время фиксирования GPS-данных, продолжительность эксперимента и др.
После подачи питания GPS-приемник начинает циклически посылать набор NMEA-сообщений в соответствии с заданными производителем установками. На рис. 4 показан пример передачи пакетов сообщений один раз в секунду со скоростью 9600 бит/с. Очевидно, что иногда для повышения производительности системы возникает необходимость изменения заводских настроек — увеличение скорости передачи, отключение пакетов с дублирующей информацией. Бывают случаи, когда программное обеспечение не распознает подключенный GPS-приемник из-за расхождения в скорости передачи данных. Таким образом, использование приемника становится невозможным без его дополнительной настройки. Причем, как правило, настройки не сохраняются в энергонезависимой памяти приемника, поэтому их необходимо периодически повторять — при повторном подключении GPS-приемника к компьютеру, перезагрузке системы. Настройка GPS-приемника производится по тому же интерфейсу, который используется приемником для передачи данных. Посылается специальная команда с новыми параметрами. Задача конфигурации может быть возложена на управляющий контроллер микропроцессорной системы либо выполняться вручную при помощи специальной утилиты или программы-терминала в персональном компьютере. Набор и формат управляющих команд определяется чипсетом, на котором построен GPS-приемник.

RA4HTW
05.10.2014, 11:54
Итак последовательность NMEA вы получили. Нас интересует для буя только GLL — географическое положение (широта, долгота, время).
Протокол NMEA-0183 открытый. 4800 скорость, 1 секундный интервал. Все. То что получили нужно отправить на модулятор ультрозвука. Тут варианты. Все буи на одной частоте, временное разделение посылок, или три буя на трех частотах.
Про эхолоты. На всех эхолотах излучатели направленные. Нам же нужно грубо - диск в горизонтальной плоскости. На ВВП глубины маленькие, а расстояния большие. Волга по форватеру у нас метров 10-12, а вот отплыть можно и на километр.
Наверное у нас с вами кухни разные. Я внештатный метролог у себя в конторе, и могу использовать любое радиоизмерительное оборудование. А его много. Если что не найду пойду к соседям. Временно поделятся. Корпуса из литейных алюминиевых сплавов мы уже давно льем прямо у дверей гаража. Механическая обработка в виде токарных станков есть. Фрезерный доступен. Вот с цифровой техникой и программированием я не очень дружу. Нужно наверное осваивать.

UR5ZQV
05.10.2014, 22:36
Ну, зря Вы так временя тратите нам на писанину. Достаточно было ссылок или даже названий. В частности протокол NMEA знаю и требования к нему Правил по конвенционному оборудованию (по крайней мере для судов, просто есть своя задача, небольшая халтурка по навигационному оборудованию). Ну а насчет остального, увы это уже для меня наверное не актуальна, у меня уже загубник некуда вставлять (зубов нету :( ). Хотя где то по ТВ видел, что появились уже намордники без загубника (как раз для связи удобно).
С интересом слежу за темой. Чем смогу, помогу (если надо) из своего опыта в части электроники, программирования и "железа", хотя у Леонида и так все хорошо получается.
Освоить программироване вполне реально (правда на более менее освоение ЦОС мне потребовалось ок. 3 лет, но с нуля и без отрыва от основного производства). Кстати мы с Леонидом начинали почти одновременно, и оба не были программистами. :)

Леонид3
05.10.2014, 23:47
RA4HTW, вот и "трансивер", работу проверял только на программную "вшивость", на неделе укомплектуюсь микрофонами/излучателями и буду доводить в реале (тьфу, тьфу :s7: ).
Теперь два входных индикатора -- один на микрофон (T), другой на УЗ датчик (R), да ещё переключатель режима работы дуплекс (S), приём (R), передача (Т), два последних переключаются и мышкой и клавишей "Пробел" (длинненькая такая :s10: ).
Нужно-ли при закрытии программы запоминать положения переключателей ?

UR5ZQV, до программиста ещё расти и расти (правда некогда), скорее рисовальщик калькуляторов :)

RA4HTW
07.10.2014, 07:52
Добрый день Леонид! Желательно что бы программа запоминала последнее состояние.

Леонид3
20.10.2014, 11:32
RA4HTW, чуть подработал программку для сохранения настроек при закрытии, в реестр записывать не стал (не люблю самодельных программ лезущих в реестр, как правило любители забывают "чистить" реестр после себя :s7: ), данные записываются в RTX.ini файлике в текстовом формате.
До проверки в работе так дело и не дошло, отвлёкся, но таки проверю обязательно!
Удачи!

RA4HTW
20.10.2014, 12:29
Пока купил две внешних звуковых плат и собрал макетку. На неделе распаяю разъемы для соединения все что стоит в правильно последовательности и буду пробовать. Куда то дели измеритель АЧХ Х1-46. х1-47 принес, но он высокочастотник. Не получается им резонанс в кгц найти.