|
Генерация DTMF - требуется помощь., Разностная частота сбивает декодер |
|
|
|
Nov 3 2005, 05:16
|
Группа: Новичок
Сообщений: 6
Регистрация: 5-08-05
Пользователь №: 7 371

|
Возникла проблема и требуется помощь.
Генерю DTMF. Шим - 16 кГц. На выходе обыкновенный RC- фильтр и спектроанализатор. Получаю такую фигню - уровень разностной частоты на 30-35 дб меньше основных частот и детектор с большой вероятностью сбивается, принимая другую цифру. Например передаю символ "D", частоты 941/1633, принмаю "A", частоты 697/1633. Т.е разностная частота 1633-941 в декодере уверенно принимается!.
Че делать и как бороться. Бошка уже не варит...
|
|
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 19)
|
Nov 3 2005, 07:28
|

Знающий
   
Группа: Свой
Сообщений: 779
Регистрация: 9-10-04
Из: Россия, Пермь
Пользователь №: 828

|
Цитата(Checker @ Nov 3 2005, 08:16) Возникла проблема и требуется помощь. Генерю DTMF. Шим - 16 кГц. На выходе обыкновенный RC- фильтр и спектроанализатор. Получаю такую фигню - уровень разностной частоты на 30-35 дб меньше основных частот и детектор с большой вероятностью сбивается, принимая другую цифру. Например передаю символ "D", частоты 941/1633, принмаю "A", частоты 697/1633. Т.е разностная частота 1633-941 в декодере уверенно принимается!. Че делать и как бороться. Бошка уже не варит... Причем тут разностная частота??? - Проблема в уровне шумов (конкретно нелинейные искажения/гармоники), что требует современный стандарт - где-то -33дБ. Дык вот - 16 кГц маловато для ШИМ. Мы делали 32кГц. Второе - простой RC фильтр не пройдет, нужно 3/4-й порядок. В принципе все это считается, если задаться уровнем шума. Да еще, если вы не корректно формируете частоты, то у вас еще появится джиттер, который только усугубит проблему. Вдогонку, а вы у нижней группы частот на 3дБ понижаете уровень?
|
|
|
|
|
Nov 3 2005, 08:18
|
Группа: Новичок
Сообщений: 6
Регистрация: 5-08-05
Пользователь №: 7 371

|
Цитата(Make_Pic @ Nov 3 2005, 13:28) Причем тут разностная частота??? - Ну так 1633-941 = 693 Гц и она попадает как раз та низшую тональную частоту. В спектрее ее хорошо видно. Я подумал, что именно из-за этого и происходит сбой в декодере. С другой стороны непонятно то, как такая частота могла возникнуть. Это возможно только при нелинейных преобразованиях. И где это - я не могу найти.  Цитата(Make_Pic @ Nov 3 2005, 13:28) Проблема в уровне шумов (конкретно нелинейные искажения/гармоники), что требует современный стандарт - где-то -33дБ. Дык вот - 16 кГц маловато для ШИМ. Мы делали 32кГц. Уровень этой гармоники как раз вроде вписывается в допуск 30 дб. Как бы еще удавить... Попробую 32 кГц сделать. Цитата(Make_Pic @ Nov 3 2005, 13:28) Второе - простой RC фильтр не пройдет, нужно 3/4-й порядок. Так фильтр в корне не изменит ситуации, потому как помеховая частота находится как раз на месте тональной ...  Если бы помеха была за полосой 697-1633 Гц, тогда - согласен... Цитата(Make_Pic @ Nov 3 2005, 13:28) В принципе все это считается, если задаться уровнем шума. Да еще, если вы не корректно формируете частоты, то у вас еще появится джиттер, который только усугубит проблему. Это чуть подробнее... Цитата(Make_Pic @ Nov 3 2005, 13:28) Вдогонку, а вы у нижней группы частот на 3дБ понижаете уровень? Да. Обязательно. Без этого намного хуже..
|
|
|
|
|
Nov 3 2005, 08:57
|
Группа: Новичок
Сообщений: 6
Регистрация: 5-08-05
Пользователь №: 7 371

|
Цитата(G}{OST @ Nov 3 2005, 14:44) А PCD3312C поставить? Или мы не ищем лёгких путей?  Увы, я заказчику предлагал несколько вариантов, но прошел только этот. В основном по причине габаритов-стоимости.
|
|
|
|
|
Nov 3 2005, 09:08
|

Участник

Группа: Новичок
Сообщений: 48
Регистрация: 6-05-05
Пользователь №: 4 784

|
Цитата(Checker @ Nov 3 2005, 12:57) Цитата(G}{OST @ Nov 3 2005, 14:44) А PCD3312C поставить? Или мы не ищем лёгких путей?  Увы, я заказчику предлагал несколько вариантов, но прошел только этот. В основном по причине габаритов-стоимости. Неужто 8-выводный корпус за 40 рублей так сильно увеличивает габариты и стоимость? Ну что ж, раз взялся за гуж...
--------------------
|
|
|
|
|
Nov 3 2005, 11:03
|
Группа: Новичок
Сообщений: 6
Регистрация: 5-08-05
Пользователь №: 7 371

|
Цитата(G}{OST @ Nov 3 2005, 15:08) Неужто 8-выводный корпус за 40 рублей так сильно увеличивает габариты и стоимость? Ну что ж, раз взялся за гуж...  Эх. Зато мороки добавляет....  Сделал ШИМ 32 кГц. Прикрутил более-менее НЧ фильтр. Ничего не изменилось. Ну вообще ничего. Перепроверил алгоритм. По отдельности верхний и нижний тоны генерятся идеально. Может кто-что еще присоветует? Годятся любые идеи и гипотезы, вплоть до "возможности детектирования сигналов на нелинейностях входных характеристик" ..  Не ужели никто не сталкивался с такими граблями?
|
|
|
|
|
Nov 3 2005, 11:24
|

Участник

Группа: Новичок
Сообщений: 48
Регистрация: 6-05-05
Пользователь №: 4 784

|
Цитата(Checker @ Nov 3 2005, 15:03) Цитата(G}{OST @ Nov 3 2005, 15:08) Неужто 8-выводный корпус за 40 рублей так сильно увеличивает габариты и стоимость? Ну что ж, раз взялся за гуж...  Эх. Зато мороки добавляет....  Мороку я сейчас наблюдаю
--------------------
|
|
|
|
|
Nov 3 2005, 13:55
|

Знающий
   
Группа: Свой
Сообщений: 779
Регистрация: 9-10-04
Из: Россия, Пермь
Пользователь №: 828

|
>Проблема в уровне шумов (конкретно нелинейные искажения/гармоники), >что требует современный стандарт - где-то -33дБ. Дык вот - 16 кГц маловато >для ШИМ. Мы делали 32кГц. >>Уровень этой гармоники как раз вроде вписывается в допуск 30 дб. Как >бы еще удавить... Попробую 32 кГц сделать. Вообще то уровень мерится суммарный всех соотовляющих акромя двух основных тональных частот. Можно еще померить нелинейные искажения основных частот - по памяти должны укладываться в 1,8% >Так фильтр в корне не изменит ситуации, потому как помеховая частота >находится как раз на месте тональной ...  >Если бы помеха была за полосой 697-1633 Гц, тогда - согласен... >>В принципе все это считается, если задаться уровнем шума. Да еще, если >>вы не корректно формируете частоты, то у вас еще появится джиттер, >>который только усугубит проблему. >Это чуть подробнее... Выдавать в ЦАП вы дожны через временной интервал = cost. Дрожжание фазы или джиттер может привести к похожим проблемам. Еще одна подсказка: когда суммируете две частоты в цифре - значение нигде не переполняется?  И наконец последний совет - чем детектируете DTMF - может в декодере проблема? Возможна проблема у вас из за большого уровня на входе DTMF приемника. По ОСТ для первой группы уровень -6 +/- 2 дБ для второй -3 +/- 2 дБ.
|
|
|
|
|
Nov 7 2005, 05:55
|
Группа: Новичок
Сообщений: 6
Регистрация: 5-08-05
Пользователь №: 7 371

|
Цитата(Make_Pic @ Nov 3 2005, 19:55)  Вообще то уровень мерится суммарный всех соотовляющих акромя двух основных тональных частот. Можно еще померить нелинейные искажения основных частот - по памяти должны укладываться в 1,8% Мда. Померить нелинейные искажения я пожалуй не смогу. Таких приборов у меня нет. Только с помощью глазомера. Цитата Выдавать в ЦАП вы дожны через временной интервал = cost. Дрожжание фазы или джиттер может привести к похожим проблемам. Еще одна подсказка: когда суммируете две частоты в цифре - значение нигде не переполняется?  Ну с этим полный порядок. Все, что от меня зависило, как от от программиста. Цитата И наконец последний совет - чем детектируете DTMF - может в декодере проблема? Возможна проблема у вас из за большого уровня на входе DTMF приемника. По ОСТ для первой группы уровень -6 +/- 2 дБ для второй -3 +/- 2 дБ. Угу, спасибо. Проверю. На выходных сделал двух-канальный вариант. Тоны генерятся на разных лапках. Далее стоит (опять же) простейший 2-х каскадный ФНЧ. В результате - помеха меньше. Но сбои проходят. Похоже придется брать в руки паяльник и городить сложные фильтры на выходе процессора. Кто может чего подсказать. Если цифровой фильтр я могу посчитать и реализовать на АВР, то в аналоговой фильтрации я полный чайник.  Может надо полосовые фильтры городить?
|
|
|
|
|
Nov 7 2005, 15:20
|

учащийся
    
Группа: Свой
Сообщений: 1 065
Регистрация: 29-10-05
Из: города контрастов
Пользователь №: 10 249

|
Da dumayu ti chtoto namudril v tom meste gde chastoty skladivayutsya . Vmesto skladivaniya u tebja peremnozenie ili chtoto tomu podobnoe poluchaetsya otsyuda i A vmesto D gde niznyaya chastota v vide raznici proxodit . Sluchayno perepolneniya (PWM counter value)ne proisxodit pri skladivanii? Ili ze vernie li chastoty skladivaes? Sluchayno ne otsyuda kopirues : AVR314: DTMF Generator (8 pages, revision B, updated 5/02) This Application Note describes how DTMF (Dual-Tone Multiple Frequencies) signaling can be implemented using any AVR microcontroller with PWM and SRAM. http://www.atmel.com/dyn/resources/prod_do...nts/DOC1982.PDFhttp://www.atmel.com/dyn/resources/prod_documents/AVR314.zip
--------------------
Зачем лаять на караван , когда на него можно плюнуть?
|
|
|
|
|
Nov 8 2005, 04:09
|
Группа: Новичок
Сообщений: 6
Регистрация: 5-08-05
Пользователь №: 7 371

|
Цитата(_artem_ @ Nov 7 2005, 21:20)  Vmesto skladivaniya u tebja peremnozenie ili chtoto tomu podobnoe poluchaetsya otsyuda i A vmesto D gde niznyaya chastota v vide raznici proxodit . Sluchayno perepolneniya (PWM counter value)ne proisxodit pri skladivanii? Ili ze vernie li chastoty skladivaes? Проверил. Переполнения нет. Специально уменьшал амплитуды. Частоты по отдельности вполне нормальные. Но умножение или какая-то непонятная вещь все же происходит. Может ли такой эффект происходить если выход АВР-ки нагружен на простую RC-цепь (5кОм-47н)? Без буферных усилителей. Цитата Sluchayno ne otsyuda kopirues : AVR314: DTMF Generator (8 pages, revision B, updated 5/02) Это посмотрел. Открытий для себя не сделал. Вроде даже похоже.
|
|
|
|
|
Nov 30 2005, 05:41
|
Участник

Группа: Участник
Сообщений: 18
Регистрация: 24-11-05
Пользователь №: 11 322

|
А уменя на AVR c ШИМом 14 кГц и RC цепью все работает. Если интересно могу дать свой вариант проги.
|
|
|
|
|
Nov 30 2005, 16:14
|
Местный
  
Группа: Участник
Сообщений: 358
Регистрация: 29-05-05
Пользователь №: 5 526

|
Цитата Получаю такую фигню - уровень разностной частоты на 30-35 дб меньше основных частот и детектор с большой вероятностью сбивается, принимая другую цифру. Например передаю символ "D", частоты 941/1633, принмаю "A", частоты 697/1633. если разностной сигнал на 30db менше основного то DTMF декодер не должен реагировать, уже разница 6db в амплитуде high i low frequency должен быть игнорирован. PWM должен быть phase -correct иначе фазовые искажения .
|
|
|
|
|
Dec 1 2005, 05:25
|
Участник

Группа: Участник
Сообщений: 18
Регистрация: 24-11-05
Пользователь №: 11 322

|
proba Речь идет о уровне разностной частоты, а не о разнице уровней частот.
Checker А может декодер глючит или частота выборки не совпадает с частотой ШИМа, или в таблице синуса что-то не так, вариантов много. А фильтры там шибко и не влияют, я уже говорил что у меня RC цепь (33кОм и 10нФ), правда частоту ШИМа соврал, сейчас посмотрел - 8 кГц, и ничего все довольны, станции все понимают по ИПН-2 (прибор такой для проверки тонального набора телефонов) все проходит.
|
|
|
|
|
Dec 1 2005, 15:38
|

Знающий
   
Группа: Свой
Сообщений: 779
Регистрация: 9-10-04
Из: Россия, Пермь
Пользователь №: 828

|
Цитата(vlader @ Dec 1 2005, 08:25)  proba Речь идет о уровне разностной частоты, а не о разнице уровней частот.
Checker А может декодер глючит или частота выборки не совпадает с частотой ШИМа, или в таблице синуса что-то не так, вариантов много. А фильтры там шибко и не влияют, я уже говорил что у меня RC цепь (33кОм и 10нФ), правда частоту ШИМа соврал, сейчас посмотрел - 8 кГц, и ничего все довольны, станции все понимают по ИПН-2 (прибор такой для проверки тонального набора телефонов) все проходит. Доброе утро страна! Ну и шутник ты однако! Мне отвечаешь, что уровень помех в норме, а применил 8кГц ШИМ и простой RC фильтр, так ты не то что уровень помех не выполнишь, но получишь в выходном сигнале богатейший спектр! Чем мерил уровень помех, случайно не ИПН-2?
|
|
|
|
|
Dec 5 2005, 06:00
|
Участник

Группа: Участник
Сообщений: 18
Регистрация: 24-11-05
Пользователь №: 11 322

|
Make_Pic Дык, я про свои помехи ничего и не говорил, я только сказал что станции и ИПН-2 меня прекрасно понимают. Это Checker все помехи мерит.
|
|
|
|
|
Feb 26 2015, 12:09
|
Участник

Группа: Участник
Сообщений: 19
Регистрация: 4-10-10
Из: г.Псков
Пользователь №: 59 908

|
Цитата(Make_Pic @ Nov 3 2005, 10:28)  - Проблема в уровне шумов (конкретно нелинейные искажения/гармоники), что требует современный стандарт - где-то -33дБ. Дык вот - 16 кГц маловато для ШИМ. Мы делали 32кГц. Второе - простой RC фильтр не пройдет, нужно 3/4-й порядок. Добрый день. Вы делали контрольно-измерительную аппаратуру или обычный телефон? При ШИМе в 32кГц синусоида частотой 1633Гц будет строится по 20 точкам(выборкам), а сигналы более низкой частоты и того больше. Нет ли здесь избыточности? В справочнике "Интегральные микросхемы" издательство "Додека" приводятся картинки с сигналами частот DTMF, которые выдают номеронабиратели(UM91531,UM1260,UM1261): там (стр.57,64) количество выборок равно 10. Хочу повторить номеронабтратель КР1008ВЖ27 на Attiny2313, но чтобы "влезть" по энергопотреблению нужно частоту поделить на 4 и сделать ШИМ 6-разрядным. Тогда синус 1477Гц (1633Гц у этого номеронабирателя нет) "нарисуется ШИМом по 9,5 точкам. Вроде, должны получиться характеристики, как у серийных номеронабирателей...
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|