"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
частотный демодулятор - частота 2350 герц
- Сообщения: 19495
- Зарегистрирован: Чт фев 20, 2014 18:57:55
Да вы жжете
Можно, конечно, и готовое юзать, но было бы все так просто - не существовало бы этой темы.
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
- Реклама
Да неее - я не жгу.
Вот я выучился, сейчас чуть кандидатскую не защитил. Имею в разработках военную технику, стоящую на вооружении в ВВС.
И мнения я того же - ту заумь, которую преподают в наших радиотехнических ВУЗах, да направить бы на изучение и создание новых программных библиотек и ОС. Только наших.
Проблема всех студентов и потом разработчиков - скудоумие.
Отсутствие кругозора и желание получать их.
Отсюда проблемы в разработках.
У нас в России нет своей массовой ОС, своих процов, своих стандартов.
Их практически нет. Они приходят с Запада, потому что тамошние инженеры имеют мышление архитектурное, а не ремесленническое, поделошное. Из-за этого их разработки завоёвывают мир.
А наши могут только грызься между собой. Потому что уровень разработки одинаково низкий.
И тут интегралы не помогут.
Я помню в школе задал вопрос учителю физики - "а что значит буква С в интеграле уровнений Максвелла?". На что наша учительница, мудрая еврейка, царствие ей небесное, Майя Хаевская, сказала : "Женя? если ты решишь эту задачу, то тебя будут знать в любой точке Земли, как Теслу, или Эйнштейна."
Помню до сих пор. А сейчас в школе, по моему, их даже не упоминают, чтобы не забивать детишкам голову чепухой.
Вот я выучился, сейчас чуть кандидатскую не защитил. Имею в разработках военную технику, стоящую на вооружении в ВВС.
И мнения я того же - ту заумь, которую преподают в наших радиотехнических ВУЗах, да направить бы на изучение и создание новых программных библиотек и ОС. Только наших.
Проблема всех студентов и потом разработчиков - скудоумие.
Отсутствие кругозора и желание получать их.
Отсюда проблемы в разработках.
У нас в России нет своей массовой ОС, своих процов, своих стандартов.
Их практически нет. Они приходят с Запада, потому что тамошние инженеры имеют мышление архитектурное, а не ремесленническое, поделошное. Из-за этого их разработки завоёвывают мир.
А наши могут только грызься между собой. Потому что уровень разработки одинаково низкий.
И тут интегралы не помогут.
Я помню в школе задал вопрос учителю физики - "а что значит буква С в интеграле уровнений Максвелла?". На что наша учительница, мудрая еврейка, царствие ей небесное, Майя Хаевская, сказала : "Женя? если ты решишь эту задачу, то тебя будут знать в любой точке Земли, как Теслу, или Эйнштейна."
Помню до сих пор. А сейчас в школе, по моему, их даже не упоминают, чтобы не забивать детишкам голову чепухой.
Я тоже, в некотором роде, радиоинженер...
- Сообщения: 19495
- Зарегистрирован: Чт фев 20, 2014 18:57:55
Сомневаюсь, что можно создать эффективные библиотеки ЦОС без знания всей той математики, да и не так уж она сложна в статьях, ссылки на которые проскакивали в этой теме. Или в предыдущем посте постебались ? Шо то я запутался 
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Знаете, у нас препод ЦОС на уроке давал материал именно заумно, когда же к нему подходили объяснить непонятные места, то он очень понятно всё объяснял - "на пальцах" и причём очень быстро.Morroc писал(а):Сомневаюсь, что можно создать эффективные библиотеки ЦОС без знания всей той математики, да и не так уж она сложна в статьях, ссылки на которые проскакивали в этой теме. Или в предыдущем посте постебались ? Шо то я запутался
Ну например какой-нить фильтр, вместо мороки с интегралами, просто и за 5 минут. Он не забывал про интегралы упомянуть, нет. Но объяснял по-человечески. Мы его спрашивали, а чего же он такую муть гонит на паре?
А требование деканата и программы министерства - "гнать муть" (т.е. с использованием псевдо-научности).
В результате потеря 90% времени на обучение. Вместо объяснения по простому и продвижения вперёд по материалу обучения - голимая псевдо-наука, запутывающая студентов. И так по многим предметам.
Человеку надо давать в руки ИНСТРУМЕНТЫ (чтобы он придумывал новое), а не заставлять его каждый раз изобретать эти инструменты заново, как это делают у нас.
Нахера мне знать как изобрели ножницы? Я просто хочу ими резать.
Я тоже, в некотором роде, радиоинженер...
- Сообщения: 19495
- Зарегистрирован: Чт фев 20, 2014 18:57:55
Чтобы изобрести ножницы лучше, по металлу, для космоса, режущие волнистой линией и т.п.
А чтобы просто резать образования не нужно вовсе.
Про псевдонаучность не понял, может у вас было что то псевдо, но в самих манипуляциях теми комплексными числами все вроде научно и без "псевдо".
Инструменты то по теме есть. Есть и бесплатные и платные и в 20 строк кода укладывающиеся, но какое то минимальное усилие надо же приложить чтобы ими воспользоваться. Я вообще не вижу проблемы в переформулированной на DTMF/CTCSS задаче
С первоначальной еще как то где то повозиться надо в виду несостоятельности простой авр'ки в качестве DSP.
Про псевдонаучность не понял, может у вас было что то псевдо, но в самих манипуляциях теми комплексными числами все вроде научно и без "псевдо".
Инструменты то по теме есть. Есть и бесплатные и платные и в 20 строк кода укладывающиеся, но какое то минимальное усилие надо же приложить чтобы ими воспользоваться. Я вообще не вижу проблемы в переформулированной на DTMF/CTCSS задаче
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
- Реклама
- Сообщения: 13796
- Зарегистрирован: Чт сен 20, 2007 14:08:00
надо сначала разобраться, как простая синусоида выглядит с точки зрения кодаMorroc писал(а): Я вообще не вижу проблемы в переформулированной на DTMF/CTCSS задаче
а для этого надо ее сначала создать, что я и нашел
помню еще давно эту статью и решил откопать http://habrahabr.ru/post/126835/
так всю программу от школы до быдловузов создает ран, а не министерство образованияbad2cat писал(а):А требование деканата и программы министерства - "гнать муть" (т.е. с использованием псевдо-научности).
один препод из мирэа говорил, что есть программа обучения и он должен ее придерживаться, хотя там 95% фуфло
ну он и решил на лабах практически показывать, что это фуфло
так его декан уволил, но дед хитрожопый был и выиграл суд
ну вот, хоть кто-то с быдловузной коркой, а то ведь я птушник и как бы не авторитет раз не осилил быдловузbad2cat писал(а):Вот я выучился, сейчас чуть кандидатскую не защитил. Имею в разработках военную технику, стоящую на вооружении в ВВС.
я когда книгу по импульсным бп открыл, то там на практике оказалось, что никаких интегралов нет, все считается на уровне школьной математики
книга была от автора-практика с конкретными схемами
кстати дтмф оказалась плохим вариантом
я на декодер дтмф натравил музыку и пошли ложные срабатывания
защититься можно только если отлавливать последовательность конкретную
тематические ответы только в форуме, в приват не пишите
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
может пригодится, имхо близко к теме:
студент диплом пишет, видео работы:
https://www.youtube.com/watch?feature=p ... lwPMvvgeN8
код в этой теме:
http://forum.easyelectronics.ru/viewtop ... 35&t=14741
библиотека бесплатная
студент диплом пишет, видео работы:
https://www.youtube.com/watch?feature=p ... lwPMvvgeN8
код в этой теме:
http://forum.easyelectronics.ru/viewtop ... 35&t=14741
библиотека бесплатная
kalobyte писал(а): кстати дтмф оказалась плохим вариантом
А ты как хотел?
"Я тебе умную вещь скажу, только ты не обижайся..."(с)
Квадратурный сигнал создать - два пальца обоссать.
Всего то требуется, чтобы частота семплирования АЦП была ровно в 4 раза выше частоты несущей у сигнала.
Вообще то АВР тут не прокатит.
Если конечно не искать какой нибудь доморощенный быдлоалгоритм для частного случая, который и приведет в ОБЩЕМ СЛУЧАЕ к быдлоработе...
ЧМ демодулируется ЭЛЕМЕНТАРНО. Для этого необходимо:
1. Семплировать с учетверенной частотой несущей.
2. Перемножить массив преобразования на ДВА гетеродина (0 и 90) с частотой несущей. Гетеродин может быть и меандром, то есть 0 градусов будет повторяющаяся комбинация 1,0,-1,0,1,0,-1,0... А 90 градусов: 0,1,0,-1,0,1,0,-1...
То есть как ты заметил, разница только в ФАЗЕ...
3. Фильтруем оба квадратурных массива одним и тем же ФНЧ (КИХ или БИХ - на вкус и по обстоятельствам разрядности - объема ОЗУ).
4. По стандартной формуле: корень квадратный из суммы квадратов квадратурных сигналов получаем ИСКОМЫЙ ВЫХОДНОЙ СИГНАЛ.
Можно найти ФАЗУ, что будет еще лучше. Для этого нужно найти арктангенс отношения квадратур.
ЗЫ. Забыл напомнить.
По входу АЦП нужен антиалиасинговый ФНЧ со срезом на верхней рабочей частоте и с подавлением на учетверенной частоте несущей соответствующим разрядности АЦП (для 10 разрядов - 60 дБ).
- Сообщения: 13796
- Зарегистрирован: Чт сен 20, 2007 14:08:00
подожди, я не настолько крут в квадратурных сигналахКРАМ писал(а):Квадратурный сигнал создать - два пальца обоссать.
для меня оно больше понятно при наличии 2х физических выходов, а откуда я их возьму в звуковой карте, если сигнал идет как бы 1
пусть и стерео
авр уже не нуженКРАМ писал(а):Вообще то АВР тут не прокатит.
приходит поток в формате мр3 из студии и в него можно подмешивать некий сигнал на студии и декодировать в техническом помещении обычным приложением под виндовс
пока я выбрал 2х частотное кодирование афск1200 и некую строку для маркеров начала и другую для конца режима
тематические ответы только в форуме, в приват не пишите
MP3 нужно преобразовать в обычный WAV, чтобы получить поток обычных выборок с частотой дискретизации 44 кГц.
Перемножить этот сигнал на ДВЕ синусоиды с частотой несущей и частотой дискретизации этого WAV, сдвинутые на 90 градусов (то есть на СИНУС и КОСИНУС с нулевой начальной фазой).
От перемножения на косинус получится Re компонента, а на синус - Im компонента квадратурного сигнала.
КАЖДЫЙ из ДВУХ этих сигналов (компонент) фильтруется либо КИХ, либо БИХ ФНЧ.
Одноименные (с одинаковыми индексами) выборки каждого массива образуют КВАДРАТУРНЫЕ ПАРЫ.
Отношение этих пар - это ТАНГЕНС ФАЗЫ несущей.
То есть АРКТАНГЕНС этого отношения - это сама фаза.
Изменение фазы во времени и есть модулирующий сигнал 123 Гц.
ЗЫ. Нужно сделать полосовой КИХ или БИХ по ВХОДНОМУ сигналу (2350 Гц) ровно на полосу девиации. И тоже самое по ВЫХОДНОМУ (123 Гц) с полосой равной обратной величине ВРЕМЕНИ ПЕРЕДАЧИ этого сигнала.

Перемножить этот сигнал на ДВЕ синусоиды с частотой несущей и частотой дискретизации этого WAV, сдвинутые на 90 градусов (то есть на СИНУС и КОСИНУС с нулевой начальной фазой).
От перемножения на косинус получится Re компонента, а на синус - Im компонента квадратурного сигнала.
КАЖДЫЙ из ДВУХ этих сигналов (компонент) фильтруется либо КИХ, либо БИХ ФНЧ.
Одноименные (с одинаковыми индексами) выборки каждого массива образуют КВАДРАТУРНЫЕ ПАРЫ.
Отношение этих пар - это ТАНГЕНС ФАЗЫ несущей.
То есть АРКТАНГЕНС этого отношения - это сама фаза.
Изменение фазы во времени и есть модулирующий сигнал 123 Гц.
ЗЫ. Нужно сделать полосовой КИХ или БИХ по ВХОДНОМУ сигналу (2350 Гц) ровно на полосу девиации. И тоже самое по ВЫХОДНОМУ (123 Гц) с полосой равной обратной величине ВРЕМЕНИ ПЕРЕДАЧИ этого сигнала.
КРАМ - выеживаешься?
Разве молодых так учат - мордой об стол. Подсказал бы заодно во что выльется (по применяемому процессору) чисто программная реализация. Может лучше ПЛМ-ку применить? 
Лучше умному тупить, чем тупому умничать
Тут нет ничего сложного.
И ПЛМ тут не нужна.
СТМ32 с ДМА или дсПИК33 С БОЛЬШИМ ЗАПАСОМ справятся с этой задачей.
И ПЛМ тут не нужна.
СТМ32 с ДМА или дсПИК33 С БОЛЬШИМ ЗАПАСОМ справятся с этой задачей.
- Сообщения: 19495
- Зарегистрирован: Чт фев 20, 2014 18:57:55
Да что то задача как то расплылась уже, надо бы условия обновить, а то была рация с ЧМ на 2350 +авр, а теперь уже и не ЧМ и не рация и не авр - нифигаж себе
Можно попробовать прикрутить к этому какой нибудь SDR софт или на радиосканере поискать "iq забава". Вот еще оттуда же преобразователь обычного сигнала в IQ (если пролистать вниз) http://www.radioscanner.ru/forum/topic44541-30.html, насколько корректно работает и что в точности теряет я хз, если частота дискретизации с запасом - пойдет наверное.
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Делал БИХ 4-го порядка на ARM с частотой 16 МГц. Три канала с частотой дискретизации 6 кГц тянуло. Четыре уже нет. Правда я писал на си без оптимизации (но с целочисленной арифметикой) и без всяких DMA (читал АЦП в прерывании).anatol378 писал(а):Разве молодых так учат - мордой об стол. Подсказал бы заодно во что выльется (по применяемому процессору) чисто программная реализация.
Последний раз редактировалось B@R5uk Пн июн 22, 2015 20:19:46, всего редактировалось 1 раз.
- Сообщения: 19495
- Зарегистрирован: Чт фев 20, 2014 18:57:55
Угу, оно немного не для того. А вот CTCSS (НЧ субтон) как раз для определения наличия в канале "своего" абонента, эти частоты обычно отфильтровывают при приеме/передаче и если специально не пытаться обмануть декодер (т.е. использовать штатный передатчик с микрофоном) - работает довольно надежно. В общем то это близко к первоначальной идее, только там оно передавалось, видимо, отдельным сигналом перед голосовой передачей, а тон CTCSS передается всегда. Для надежности можно вкорячить 2 тона сразу, но, возможно, придется какие то фильтры добавить чтобы на выходе их не было слышно.kalobyte писал(а): кстати дтмф оказалась плохим вариантом
я на декодер дтмф натравил музыку и пошли ложные срабатывания
защититься можно только если отлавливать последовательность конкретную
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Очень сильно зависит от порядка фильтра с БИХ. Для высоких порядков нужна высокая разрядность вычислений, либо переход на флоат. И то и другое резко уменьшают производительность при превышении штатной разрядности контроллера.B@R5uk писал(а):Три канала с частотой дискретизации 6 кГц тянуло. Четыре уже нет.
Поэтому есть смысл делать КИХ. Он жрет ОЗУ, но не слишком жрет производительность, особенно при наличии И ИСПОЛЬЗОВАНИИ MAC-операций контроллера с DSP-ядром. Традиционно компиляторы игнорируют DSP ядро и их следует "совать носом" в MAC-команды.
Использование АРМов с ФПУ избыточно для подобных задач. Они откровенно дороги.
Последний раз редактировалось КРАМ Пн июн 22, 2015 18:06:31, всего редактировалось 2 раза.
- Сообщения: 13796
- Зарегистрирован: Чт сен 20, 2007 14:08:00
была вещательная укв станция, там в звуковом канале передается сигнал похожий на ментовский свистокMorroc писал(а):Да что то задача как то расплылась уже, надо бы условия обновить, а то была рация с ЧМ на 2350 +авр, а теперь уже и не ЧМ и не рация и не авр - нифигаж себе
сигнал для водителей на слух заметен и он же включает режим передачи обстановки на дорогах в стереокодере
детектирует его старая аналоговая железка, которую уже никто не производит
сначала я хотел на авр делать, думал будет просто, но потом заказчик сказал, что лучше сделать софтом и исключить физические части
поэтому решил делать под виндовс, т.к. там все равно стоит виндовс и принимает мр3 поток
осталось это переварить и написатьКРАМ писал(а):Изменение фазы во времени и есть модулирующий сигнал 123 Гц.
тематические ответы только в форуме, в приват не пишите
1) Я же написал, что фильтр 4-го порядка. Это 8 операций произведения 32 на 32 с 32-битным результатом.КРАМ писал(а):1) Очень сильно зависит от порядка фильтра с БИХ...
2) Для высоких порядков нужна высокая разрядность вычислений....
3) Поэтому есть смысл делать КИХ...
2) Я в 32 бита уложился. Он даже усекался в после подсчёта суммы до меньшего числа разрядов. Про каскадные и параллельные схемы даже упоминать не буду — сами встретитесь, если займётесь.
3) Нет смысла. Кроме случаев, когда нужна линейная ФЧХ, БИХ-фильтр категорически выгоднее и по производительности, и по расходу ОЗУ. Во всяком случае для АРМов это особенно актуально, так как у них произведение 32х32->32 выполняется за 1 такт.
Когда знаковые 16*16+40->40 с предвыборками выполняются за один такт и к тому же имеют два независимых аккумулятора (очень удобно для оконной функции в скользящем массиве), в сочетании с командой цикла дает такую упаковку КИХ, что сопоставимый по порядку БИХ выполняется так же или медленней, а расход памяти порой не так уж важен. Все зависит от ее наличия в конкретном МК.B@R5uk писал(а):для АРМов это особенно актуально, так как у них произведение 32х32->32 выполняется за 1 такт.
Структура БИХ помимо умножений имеет еще суммы и кучу пересылок, что делает число умножений не вполне показательным для оценки производительности.
Хотя я вполне допускаю, что мои опыты в этой области убоги и доморощены...
ОФФ.
Как то потребовался БИХ ФНЧ со срезом в 3 Гц и нормированным (-60 дБ) подавлением 50 и 100 Гц при частоте дискретизации 300 Гц. Коэффициенты потребовали флоатов или 64 разрядного целочисленного представления... Более чем возможно, что я чего то делал не так....
PS Спасибо за напоминание. Входной фильтр ТСу нужно делать КИХ, поскольку входной сигнал - ЧМ.
Ассемблерный код в студию!КРАМ писал(а):Когда знаковые 16*16+40->40 с предвыборками выполняются за один такт и к тому же имеют два независимых аккумулятора... в сочетании с командой цикла дает такую упаковку КИХ, что сопоставимый по порядку БИХ выполняется так же или медленней
Можно было нули фильтра поместить как раз на эти 50 и 100 Гц (будет -∞ дБ подавление), а ещё один или два нуля и все полюса разместить так, чтобы в полосе 3 Гц была максимально линейная АЧХ. Естественно, надо подбирать коэффициенты стразу с учётом округления. Хотя синтез БИХ-фильра — то ещё творческое занятие. Думаю, соотношение 3 Гц / 150 Гц = 0,02 не слишком мало, чтобы использовать 64 бита целочисленной арифметики. У меня было 240/12000 = 0,02, то есть так же, и всё влезло.КРАМ писал(а):Как то потребовался БИХ ФНЧ со срезом в 3 Гц и нормированным (-60 дБ) подавлением 50 и 100 Гц при частоте дискретизации 300 Гц. Коэффициенты потребовали флоатов или 64 разрядного целочисленного представления...


