![]() |
|
|
![]()
|
|
| gribikc |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 339 Регистрация: 9.2.2003 Репутация: нет Всего: нет |
надо из синусоиндального сигнала получить биты по алгоритму F,F/2
схему поять мне лень скажите как это сделать!!!!!! (сигнал идёт в звуковую карту!!!) хотябы олгаритм!!!!!!!!!!! -------------------- --------------------------------------------- Заранее спасибо!!! |
|||
|
||||
| podval |
|
|||
![]() Где я? Кто я? ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3094 Регистрация: 25.3.2002 Где: СПб Репутация: 18 Всего: 62 |
Допустим, что частота исходного сигнала равна f0 + F, если передается "1" и f0 + F/2, если передается "0". f0 - несущая.
По идее, если есть отсчеты квадратур S[k] и С[k], то реализуется схема вычислений типа: f[k] = 1/(2*pi)*((S[k]*C[k-1] - C[k]*S[k-1] )/(S[k]^2 + C[k]^2)). Нужны типа регистры для хранения отсчетов С, S. Что еще По большому счету, это все - большой гемморой. ИМХО, если надо детектировать в реальном времени, то лучше не парить мозги, а взяться за паяльник. Опыт говорит о том, что если надо детектировать радиосигнал, то никакой софт не поможет. Нужна железка. Уже много раз наступал на эти грабли. |
|||
|
||||
| Crait |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 244 Регистрация: 20.2.2003 Репутация: 1 Всего: 1 |
gribikc, ты бы выразился менее завернуто.
Шо такое
Это как, частоте F сопоставлять 1 на выходе детектора, а F/2 - 0 или что-то другое ? |
|||
|
||||
| val |
|
|||
![]() Program developer ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 992 Регистрация: 14.1.2003 Где: г. Киев Репутация: 1 Всего: 7 |
Рodval, я вижу, что Вы поняли, что имеет ввиду уважаемый gribikc... Не могли бы разъянить в чем суть вопроса...
-------------------- Терпимость - величайшее благо человечества... Ярчайший признак интеллекта – постоянно хорошее настроение… |
|||
|
||||
| podval |
|
|||
![]() Где я? Кто я? ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3094 Регистрация: 25.3.2002 Где: СПб Репутация: 18 Всего: 62 |
Суть вопроса в том, что, если я правильно понял, подается сигнал с частотной манипуляцией, где частотой F кодируется единица, а частотой F/2 - ноль. Если обозначить f0 несущую частоту, то реально имеем некоторую последовательность сменяющих друг друга частот f0+F и f0+F/2.
|
|||
|
||||
| podval |
|
|||
![]() Где я? Кто я? ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3094 Регистрация: 25.3.2002 Где: СПб Репутация: 18 Всего: 62 |
Если кто сумеет нарисовать софт - сразу шнобелевская премия
Большая закавыка современной радиоэлектроники в том, что еще никто не научился втыкать антенну непосредственно в компьютер. ВЧ-тракт приемников остается аналоговым, как ни крути. Так что флаг в руки! |
|||
|
||||
| Crait |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 244 Регистрация: 20.2.2003 Репутация: 1 Всего: 1 |
Ну, podval , стОит ли так вот уж разбрасываться
шнобелевскими-то премиями ? gribikc ведь ничего не сказал об остальных параметрах сигнала. Так что, это совсем не обязательно то, что приходит с антенны. Итак. Если сигнал не зашумлен или не очень зашумлен и амплитуда флуктуирует также не слишком сильно, то можно поставить ограничитель, с гистерезисом или без, с адаптивным(и) порогам(и) или без них и подсчитывать длительность прямоугольных импульсов, формируемых им. Быть может, после очистки от звона по фронтам и может быть, после деления счетным триггером (на 2) - это для некоторой инвариантности от последствий несимметричного ограничения. Ну и принимается решение, какой из частот ближе измеренный период. В случае зашумленного сигнала обработка несколько сложней. Вычисляется сумма квадратов произведений входного сигнала на sin(F1) и cos(F1). Так же и для F2. Сравниваются. Всё. После компаратора можно поставить ФНЧ с триггером Шмидта, если хочется получать прямоугольные импульсы без звона на фронтах. Это некогерентный прием. Ну а если помехоустойчивости даже и второго метода не хватает, следует обнаруживать сигнал уже когерентным способом. Тут вариантов много, так что без знания специфики конкретной задачи... Можно, в конце концов, использовать преобразрвание Фурье со скользящим окном и отслеживать положение максимума амплитудного спектра. По помехоустойчивости это эквивалентно некогерентному приему, (это, собственно, и есть некогерентный прием), но при этом технически легче компенсировать последствия дрейфа F1 и F2 относительно своих эталонных значений. Еще есть фильтровой метод. В реальной системе, ясное дело, будет применено еще одно-другое (третье) ноу-хау. А чего это gribikc молчит ? Или уже интерес пропал ? |
|||
|
||||
| podval |
|
|||
![]() Где я? Кто я? ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3094 Регистрация: 25.3.2002 Где: СПб Репутация: 18 Всего: 62 |
Скорее всего, уже спаял. |
|||
|
||||
| podval |
|
|||
![]() Где я? Кто я? ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3094 Регистрация: 25.3.2002 Где: СПб Репутация: 18 Всего: 62 |
Хотя, может ты уже это сделал? |
|||
|
||||
| Crait |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 244 Регистрация: 20.2.2003 Репутация: 1 Всего: 1 |
На софте - например так
А так вот на харде - ![]() Для схемы на рис. 1 рекомендую использовать 561ТЛ1, для второй схемы - 561ЛП2. Постоянная времени подавления дребезга определяется произведением R1*C1. Рекомендуемый диапазон R1 - 20 КОм..2МОм, значение R2 = 4.7 КОм +- лапоть. Это сообщение отредактировал(а) Crait - 21.4.2003, 17:25 |
||||
|
|||||
| Crait |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 244 Регистрация: 20.2.2003 Репутация: 1 Всего: 1 |
gribikc , ты хоть скажи, в тему тебе это все ?
|
|||
|
||||
| gribikc |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 339 Регистрация: 9.2.2003 Репутация: нет Всего: нет |
да в принцепе всё это в тему !!!!
-------------------- --------------------------------------------- Заранее спасибо!!! |
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |