Портативный приёмник с цифровым демодуляторм. (Проект)

Обсуждение конструкции и прошивки приемника P-45
Ответить
Аватара пользователя
Студент
бывалый диод
Сообщения: 648
Зарегистрирован: 23 апр 2016, 22:55
Откуда: г. Красноармейск

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4040Сообщение Студент
07 ноя 2018, 22:37

Размещу пока тут, во флейме. Пока только задумка. Буду дополнять...

Принимаемая частота: до 160 Мгц.
Модуляция: любая. Начну пока с АМ так как её проще реализовать математически.

Итак. Антенна подключается сразу к паре смесителей SA612. Каждый из смесителей тактируется программируемым генератором SI5351. Управляет генератором например Атмега328 или STM32. Hа одном смесителе частота сдвинута на 90 градусов. Судя по даташитам, генератор это умет. На выходе смесителей получаем два квадратурных сигнала I и Q (нулевая промежуточная частота), которые через пару операционных усилителя подаём на АЦП микроконтроллера. Путём нехитрых математических расчётов микроконтроллер "демодулирует" цифровой сигнал в звук посредством встроенного или внешнего ЦАП.

Критика и комментарии очень приветствуются :drinks:
хладнокровный и обаятельный

Аватара пользователя
Jamy
бывалый диод
Сообщения: 1005
Зарегистрирован: 28 авг 2015, 23:39
Откуда: Харьков

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4042Сообщение Jamy
19 ноя 2018, 01:16

Студент, Уже есть какие то результаты ? Как то двигается проект ?

Аватара пользователя
Студент
бывалый диод
Сообщения: 648
Зарегистрирован: 23 апр 2016, 22:55
Откуда: г. Красноармейск

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4043Сообщение Студент
19 ноя 2018, 08:50

Jamy, пока результатов почти нет. Синтезатор ещё не приехал из Китая.
si5351.jpg
Ссылка на Алиэкспрес

Пока воспользовался своей платой на RF2713, по сути тоже самое, только гетеродин не перестраивается и настроен на ПЧ 10.7 мГц. Проблема в том, что скорости Атмеги328 никак не хватает в реальном времени захватить I/Q сигнал, обработать его и вывести в звук. По звуку кстати, хотел использовать ЦАП/АЦП на шине I2S для захвата/воспроизведению звука, но Атмега его не потянет. Не знаю... Придётся наверно использовать микроконтроллер посерьёзнее, типа Arduino M0 (Cortex M0 core), STM32 или делать на Raspberry Pi. Последний у меня есть, но его программирование пока так и не освоил.
хладнокровный и обаятельный

Аватара пользователя
Студент
бывалый диод
Сообщения: 648
Зарегистрирован: 23 апр 2016, 22:55
Откуда: г. Красноармейск

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4054Сообщение Студент
27 ноя 2018, 11:23

Заказал себе ещё "подарочков" на Новый Год. Для экспериментов :biggrin:
Roboshop.jpg
хладнокровный и обаятельный

Аватара пользователя
Студент
бывалый диод
Сообщения: 648
Зарегистрирован: 23 апр 2016, 22:55
Откуда: г. Красноармейск

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4055Сообщение Студент
02 дек 2018, 17:34

Всем привет. Arduino DUE просто мощнейшая вещь! Пока написал математическую АМ демодуляцию. На два входа АЦП ардуины подаю нулевую промежуточную частоту с приёмника Р-45 разложенную на квадратурные составляющие I и Q. На выходе ЦАП демодулированный АМ сигнал. Вот что пока получается :)
AM_firts_test.mp3
(326.45 КБ) 197 скачиваний
хладнокровный и обаятельный

Аватара пользователя
Студент
бывалый диод
Сообщения: 648
Зарегистрирован: 23 апр 2016, 22:55
Откуда: г. Красноармейск

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4057Сообщение Студент
04 дек 2018, 09:39

Приехал синтезатор из Китая. Вроде работает. Продолжаю потихоньку эксперименты. Пока не получается математическая NFM демодуляция :scratch_one-s_head:
SI5351.jpg
хладнокровный и обаятельный

Аватара пользователя
Студент
бывалый диод
Сообщения: 648
Зарегистрирован: 23 апр 2016, 22:55
Откуда: г. Красноармейск

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4152Сообщение Студент
31 дек 2018, 18:49

Почти закончил хардварную часть. На входе решил использовать привычный тв-тюнер. За ним фильтр и смеситель на SA612. После смесителя ещё фильтр на 10.7 мгц. Потом квадратурный демодулятор RF2713. За ним пара операционников и звуковая карта компьютера с программой DSRSharp. Смесители тактируются синтезатором Si5351. Пока вот что получается.

https://www.youtube.com/watch?v=EPqEDROdfUc
хладнокровный и обаятельный

yasya2004
попробовал ток
Сообщения: 46
Зарегистрирован: 01 окт 2018, 15:27
Откуда: Печора, Коми АССР

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4157Сообщение yasya2004
01 янв 2019, 22:33

Студент писал(а):
31 дек 2018, 18:49
Почти закончил хардварную часть
Я конечно не совсем тупой ну или совсем.. маниак, контрольная работа и вторая плата завелась с первого раза, но я хотел бы придать
внешний вид хотя бы первому приёмнику, а Вы уже меня подсаживаете на второй...

Аватара пользователя
Студент
бывалый диод
Сообщения: 648
Зарегистрирован: 23 апр 2016, 22:55
Откуда: г. Красноармейск

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4158Сообщение Студент
02 янв 2019, 10:49

yasya2004 писал(а):
01 янв 2019, 22:33
а Вы уже меня подсаживаете на второй...
Так можно и совместить. И подключать наш приёмник к SDRSharp и подобным программам.

Начало моих экспериментов ТУТ
Ссылка на радиосканере

86f620317f1f.jpg



UPDATED;

Вот мой приёмничек на Ардуине уже заговорил самостоятельно :yahoo:
NFM модуляция пока не получается.

https://youtu.be/00vMjCL3UoY



Блок-схема
Shema.jpg
хладнокровный и обаятельный

Аватара пользователя
Jamy
бывалый диод
Сообщения: 1005
Зарегистрирован: 28 авг 2015, 23:39
Откуда: Харьков

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4161Сообщение Jamy
04 янв 2019, 08:45

Студент писал(а):
02 янв 2019, 10:49
NFM модуляция пока не получается.
Отличный проект , а в чем затык с NFM ?

Аватара пользователя
Студент
бывалый диод
Сообщения: 648
Зарегистрирован: 23 апр 2016, 22:55
Откуда: г. Красноармейск

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4162Сообщение Студент
04 янв 2019, 10:39

Jamy, суть в том, что Ардуина 10 тыс. раз в секунду посредством своего АЦП снимает показания амплитуды I и Q.

Код: Выделить всё

     I_input = (analogRead(A0) -1880 )    ; //Читаем I DC Ofset -1880
    
     Q_input = (analogRead(A1) -1880 )  ; //Читаем Q DC ofcet -1880
Затем фильтрует их через простенький цифровой фильтр.

Код: Выделить всё

     I_input_filter = (1-K)*I_input_filter + K*I_input; // фильтруем I
     Q_input_filter = (1-K)*Q_input_filter + K*Q_input; // фильтруем Q

При амплитудной модуляции для получения мгновенной амплитуды исходного сигнала нужно извлечь корень из суммы квадратов I и Q :

Код: Выделить всё

      DAC_output = (sqrt(sq(I_input_filter)+sq(Q_input_filter)));             // АМ демодуляция
Тут всё просто и работает.

Для частотной модуляции всё сложнее. Нужно взять производную от арктангенса отношения I к Q. :biggrin:
У меня так:

Код: Выделить всё


      NFM_temp =  atan(Q_input_filter / I_input_filter);    // Считает арктангенс
      NFM_delta = NFM_temp - NFM_temp2 ;                    // Считаем производную
      NFM_temp2 = NFM_temp;                                 // Запоминаем предыдущее значение для следующего рассчета
      DAC_output = NFM_delta * 100 ;                        // Умножаем на коэффициент

В итоге получается какая-то хрень на выходе. Беда ещё в том, что у меня нет стабильного источника NFM сигнала.
Я не знаю, сколько времени у Ардуины уходит на выполнение последнего кода. Может просто не успевает и её "выдёргивает" из этого кода прерывание по таймеру для считывания АЦП. Посчитал время выполнения Амплитудной и Частотной модуляции. С учётом записи и чтения ЦАП и АЦП 17 тыс. циклов в секунду. Хватает.

Информацию взял из этой статьи.
хладнокровный и обаятельный

Аватара пользователя
Студент
бывалый диод
Сообщения: 648
Зарегистрирован: 23 апр 2016, 22:55
Откуда: г. Красноармейск

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4163Сообщение Студент
05 янв 2019, 12:25

Замутил трансивер из Raspberry PI. Интересная штука :biggrin:
Теперь будет проще экспериментировать.
хладнокровный и обаятельный

Аватара пользователя
Jamy
бывалый диод
Сообщения: 1005
Зарегистрирован: 28 авг 2015, 23:39
Откуда: Харьков

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4164Сообщение Jamy
05 янв 2019, 18:58

Студент писал(а):
04 янв 2019, 10:39
Для частотной модуляции всё сложнее. Нужно взять производную от арктангенса отношения I к Q.
А если аппаратный декодер ?
Студент писал(а):
05 янв 2019, 12:25
Замутил трансивер из Raspberry PI. Интересная штука
Теперь будет проще экспериментировать.
Круто ! Так создавай тему и развивай )

Аватара пользователя
Студент
бывалый диод
Сообщения: 648
Зарегистрирован: 23 апр 2016, 22:55
Откуда: г. Красноармейск

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4165Сообщение Студент
05 янв 2019, 19:28

Jamy, аппаратный декодер это типа NFM детектор на микросхеме? Не, так не интересно. Трансивер на Raspberry Pi не я конечно разработал :) Разберусь с NFM, создам отдельную тему. Потом кстати можно будет исходники портировать на копеечный STM32F103 и собирать готовый приёмник :)
хладнокровный и обаятельный

Аватара пользователя
Jamy
бывалый диод
Сообщения: 1005
Зарегистрирован: 28 авг 2015, 23:39
Откуда: Харьков

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4170Сообщение Jamy
10 янв 2019, 03:18

Студент писал(а):
05 янв 2019, 19:28
Разберусь с NFM, создам отдельную тему.
Зачем отдельную ,пусть тут идет хронология.

PS перенес в - приемники и сканеры.

Аватара пользователя
Студент
бывалый диод
Сообщения: 648
Зарегистрирован: 23 апр 2016, 22:55
Откуда: г. Красноармейск

Портативный приёмник с цифровым демодуляторм. (Проект)

Сообщение: # 4171Сообщение Студент
10 янв 2019, 09:04

Jamy, спасибо!

Потыкал осциллографом низкочастотные сигналы, которые приходят на АЦП микроконтроллера. Очень много в них мусора. Нужно ставить хорошие фильтры ФНЧ. Для амплитудной демодуляции это не критично, так как мы фактически просто выделяем огибающую сигнала. Для частотной демодуляции нужно, грубо говоря, выделить скорость изменения фазы сигнала во времени, то есть мгновенную частоту. И тут любые помехи в виде резких скачков очень сильно влияют на результат.
хладнокровный и обаятельный

Ответить