DpInRock
Sep 30 2008, 13:30
Вот кто имел дело и с тем и другим?
Хочется не взирать на затраты, но соорудить декодер DTMF.
Герцеля реализовывал только на DSP при выборках 8 кгц. Результат декодеровки мне не сильно нравился. Не в восторге я был совсем.
А вот MT8888 никогда не использовал. Смотрю, он в характеристиках на -30 dB работает. Нормально так.
Вот при прочих равных условиях что выбрать: MT88xx или Герцель на АВР?
Что надежнее засечет ДТМФ при самых худших условиях?
Конечно, хочется поставить Зарлинк и не париться. (Где бы работать, лишь бы не работать).
Но вот вдруг Герцель ничем не хуже этой микросхемы. В смысле, не лучше...
Дайте совет, если не жалко.
Kuzmi4
Sep 30 2008, 13:57
2 DpInRock - пробовал MT8870 - нечего железячка - не с чем сравнивать потому как не особо хотелось самому городить DTMF-Decoder - но на работу чипа не жалуюсь. Как говорится - можно брать
Цитата(DpInRock @ Sep 30 2008, 16:30)

А вот MT8888 никогда не использовал. Смотрю, он в характеристиках на -30 dB работает. Нормально так.
Дайте совет, если не жалко.
Алгоритм Гертцеля - не использовал... А вот МТ8870 (Вам, ведь, нужен ресивер?) - использовал. Учтите, что эта м/с очень чувствительна до всякой грязи у неё на ногах: после пайки обязательно не пожалейте спирта на промывку от флюса; и предусмотрите, чтобы во время эксплуатации устройства на её ноги не попадала пыль(грязь), если устройство будет работать в уличных условиях. Не знаю: поможет ли покрытие лаком - проблему решали герметичным корпусом.
shamray
Sep 30 2008, 14:29
Цитата(DpInRock @ Sep 30 2008, 17:30)

Герцеля реализовывал только на DSP при выборках 8 кгц. Результат декодеровки мне не сильно нравился. Не в восторге я был совсем.
Тоже интересуюь этим вопросом. Есть ли алгориты декодирования DTMF более точнве чем герцель при сопоставимых ресурсах. Сылшал есть корреляционный алгоритм, но ничего подробного о нем не нашел.
DpInRock
Sep 30 2008, 14:35
Мерси, товарищи. Вот пока задавал вопрос посмотрел аппликейшн от Техаса. Там волновые цифровые фильтры используют для декодирования DTMF.
Просто микросхемы в ближайших магах нет, вот и решил заменить беганье по улицам на программирование дома...
Мне просто нужен 3-х вольтовый вариант. А его в закромах Родины как-то не оказалось.
А вот вопрос к использовавгим. А на голос эта микросхема реагирует? Типа, вторые гармоники анализирует, или просто чисто тупо эти 8 частот?
DRUID3
Sep 30 2008, 14:39

Из цикла "вчера весь день делал детей, результатом неудовлетворен"
Надо было умудриться.
В каком смысле недовольны Герцелем??? Что, мимо частоты попадает или подзванивает? Или еще чо?
А есть еще FFT, IIR(совсем мало ресурсов но полоса пошире), FIR (я так понимаю его имели ввиду под кореляционным)... Вобщем все, что может отделять одну частоту от другой - кстати, можно и порядковыми фильтрами.
Как для меня то программные варианты в 100 интереснее в том плане, что сам можешь задать параметры которые тебе нужны...
Цитата(DpInRock @ Sep 30 2008, 17:35)

Мерси, товарищи. Вот пока задавал вопрос посмотрел аппликейшн от Техаса. Там волновые цифровые фильтры используют для декодирования DTMF.
Просто микросхемы в ближайших магах нет, вот и решил заменить беганье по улицам на программирование дома...
Мне просто нужен 3-х вольтовый вариант. А его в закромах Родины как-то не оказалось.
А вот вопрос к использовавгим. А на голос эта микросхема реагирует? Типа, вторые гармоники анализирует, или просто чисто тупо эти 8 частот?
А есть смысл во вторых гармониках?
DpInRock
Sep 30 2008, 15:27
Вы видать не в курсе декодирования дтмф, друид.
Без анализа второй гармоники просто голос вам будет выдавать тучу DTMF. А надо, чтобы на фоне голоса, музыки обнаружить. Так вот. В речи очень не часто содержится первая гармоника без второй. А вот в чистом ДТМФ - только первые гармоники.
А вот с настройкой параметров - это ВООБЩЕ НЕ НАДО. Это сразу до свиданья. У меня нет никакого интереса, хобби к настройкам. Их и в Гертцеле - навалом.
Использовал MT8870 и 8888 и другие DTMF декодеры. Супер. По моему такого же качества декодирования добится программно на AVR не реально.
DpInRock
Sep 30 2008, 16:12
2slog - а какой источник сигнала был?
Приёмник ЧМ радиостанции. DTMF уверенно декодировался даже в очень сильных шумах.
DpInRock
Sep 30 2008, 16:26
Ага. Я планирую приемник АМ радиостанции. Там тоже с шумами отлично. Сколько хочешь...
Итог наверное такой.
МТ88 на борту не помешает. А сделать программно - никогда не поздно.
Токо лишний операциооник предщусмотреть тогда повходу на всякий случай.
TheMad
Sep 30 2008, 20:52
Поддерживаю мнение что 8870\3170 лучше. При ее цене в 1 доллар работает она намного лучше всего того что можно достичь за эти деньги. Про чувствительность к грязи на выводах - никогда не замечал. Использовал много, в том числе в условиях сильных ВЧ помех (на одной плате с GSM модулями и их антеннами, передатчиками на 150\450 МГц мощностью в десятки ватт), проблем нет.
Warlockwolf
Sep 30 2008, 21:13
Работали с CMX868 только в режиме ДТМФ. пробивали по полевке 17 км. на шине было несколько устройств. проблем никаких небыло.
до того как я нашел CMX использовали 8870 и как раз для радио. в качестве радио был использован вокитоки на 433Мегагерца, средней цены. Были нарекания, тобиш на коленке все работало, как только выходили в поле, из десяти запросов 8 ответов.
СМХ по радио, не пробовали. Потому как к тому времени появились мощъные блютуфы, и на них прбивали канал в 500 метров. из 10 запрсов 10 ответов

только вот дорогие они эти смх.
DpInRock
Sep 30 2008, 22:23
Ясер Арафат что CML не стоит тех денег. Ну, может и стоит, но больно дорого. За эти деньги можно инфу на бумажке записать и бегом отнести.
Никогда не занимался декодированием DTMF, но хочу сделать заметку для DpInRock. Я согласне со словами DRUID3 о том что нет смысла анализировать вторую гармонику. Если у вас более менее приличный генератор DTMF откуда там взяться второй гармонике. Думаю что ее амплитуда будет дебилов на 40 ниже основного тона, что будет существенно ниже амплитуды голоса или музыки.
Вот нашел кое-что у себя. Приложил спектр сигнала DTMF из документа slaae16.pdf от Texas Instruments. Нетрудно заметить что амплитуда гармоник на 30 дебилов ниже основного тона. Кстати документ посвящен генерации и декодированию DTMF сигнала с помощью MSP430 есть исходники на асме. Если не найдете на сайте TI, могу выложить документ.
Цитата(DpInRock @ Sep 30 2008, 17:35)

А на голос эта микросхема реагирует? Типа, вторые гармоники анализирует, или просто чисто тупо эти 8 частот?
Цитата(DRUID3 @ Sep 30 2008, 17:39)

А есть смысл во вторых гармониках?
МТ8870 вторые гармоники не анализирует - работа м/с кратко описана в DS. Смысл анализа вторых гармоник, по-моему, есть как раз в алгоритме Гертцеля: он (алгоритм) даёт оценку средней мощности составляющей сигнала за определенный промежуток времени (т.е. фактически энергию на определенной частоте); при этом, одно и тоже значение может быть получено как при мощном коротком ("импульсном") сигнале, так и при длительном сигнале средней мощности; анализ вторых гармоник позволяет их разделить. В МТ8870 детектирование ведётся по "непрерывности" сигнала: попробуйте голосом прогудеть DTMF непрерывно в течении, например, 100мс...
DpInRock
Oct 1 2008, 07:42
Цитата
попробуйте голосом прогудеть DTMF непрерывно в течении, например, 100мс...
А погудеть DTMF - легко. Ш-ш-ш-ш-ш-ш-ш-ш.
Цитата
Ш-ш-ш-ш-ш-ш-ш-ш.
Ага, только на самом деле надо смотреть, чтобы только 2 частоты сильно превышали другие в наборе. В остальных случаях не обрабатывать. Тогда никакое шипение не поможет.
DpInRock
Oct 1 2008, 08:11
Это да. Но кто знает, как это делает МТ88. В шите в основном на длительность упирают.
А если шипит не человек, а радиоприемник, то у него терпенья много. Рано или поздно схватит.
Цитата(DpInRock @ Sep 30 2008, 18:27)

Вы видать не в курсе декодирования дтмф, друид.
Без анализа второй гармоники просто голос вам будет выдавать тучу DTMF. А надо, чтобы на фоне голоса, музыки обнаружить. Так вот. В речи очень не часто содержится первая гармоника без второй. А вот в чистом ДТМФ - только первые гармоники.
А вот с настройкой параметров - это ВООБЩЕ НЕ НАДО. Это сразу до свиданья. У меня нет никакого интереса, хобби к настройкам. Их и в Гертцеле - навалом.
Я понял о чем Вы. Ну знаете, так надо писАть, что Вы собрались это в условиях сильных помех анализировать. Тогда я бы применил FFT(если самому влом на данный момент в инете алгоритмов - завались) и шаблон. Ничего помехоустойчивие просто не будет, даже в сравнении с методом анализа 2-х гармоник.
Под настройками параметров я имел ввиду подгонку параметров системы под Ваш, конкретный, случай. Очень сомневаюсь, что разработчики аппаратного решения были столь любезны - предусмотреть все возможные случаи помех, часто взаимоисключающие...
Цитата
Рано или поздно схватит.
Это уже зависит от характеристики шумов приемника, да и параметров всего канала связи. Можно оценить вероятность такого события. Опять-же, каналов без ошибок не бывает (я тут уже пытался такую мысль совсем в другой теме донести), посему - надо принимать меры в протоколе более высокого уровня (ну, перепосылка пакета, например).

корреляция -
сердце распознавания образов... любых... Перемножение FFT и шаблона - это она и есть. Ничего "устойчивие" просто не будет. Менее ресурсозатратное, но достаточное для конкретного случая - может быть.
Цитата(DpInRock @ Oct 1 2008, 11:11)

Это да. Но кто знает, как это делает МТ88. В шите в основном на длительность упирают.
Под рукой нет DS... Но, насколько я помню, для распознания DTMF необходимо, чтобы м/с выделила строго по одной частоте в нижней группе и верхней группе, и сигналы этих частот были бы непрерывны в течении времени Т.
Цитата(uriy @ Oct 1 2008, 08:19)

Если у вас более менее приличный генератор DTMF откуда там взяться второй гармонике. Думаю что ее амплитуда будет дебилов на 40 ниже основного тона, что будет существенно ниже амплитуды голоса или музыки.
По ГОСТу коэффициент нелинейных искажений в передатчике и приемнике радиостанции должен быть не более 5%. То есть всего 10%.
Недавно мерил китайскую рацию, с закосом под "профессиональную", так у нее Кни приемника составил 12%.
Вот и прикиньте что сделает радиоканал с хорошим сигналом кодера.
Анализировать надо наличие основным тонов.
DpInRock
Oct 1 2008, 12:21
В общем-то, да. Насчет анализа второй. И в телефонных каналах вторая прет.
Harbinger
Oct 4 2008, 09:40
Цитата(TheMad @ Oct 1 2008, 13:52)

По ГОСТу коэффициент нелинейных искажений в передатчике и приемнике радиостанции должен быть не более 5%. То есть всего 10%.
Недавно мерил китайскую рацию, с закосом под "профессиональную", так у нее Кни приемника составил 12%.
Вот и прикиньте что сделает радиоканал с хорошим сигналом кодера.
Сущий кошмар! Тут 2% в сквозном тракте - уже безнадёжный брак (0,3% в передатчике и 1% в приёмнике получается на раз. NFM, номинальная девиация 3 кГц). Китайцы просто не настраивают. Или же фильтры и дискриминаторы фуфловые ставят.
А вот выделением DTMF из женского голоса или из сигнала модема MT8870 (точнее, её клон CM8870) иногда грешит. Зависит, впрочем, от партии - может, "пиратские копии" попадаются.
Цитата(Harbinger @ Oct 4 2008, 13:40)

Сущий кошмар! Тут 2% в сквозном тракте - уже безнадёжный брак (0,3% в передатчике и 1% в приёмнике получается на раз. NFM, номинальная девиация 3 кГц). Китайцы просто не настраивают. Или же фильтры и дискриминаторы фуфловые ставят.
А вот выделением DTMF из женского голоса или из сигнала модема MT8870 (точнее, её клон CM8870) иногда грешит. Зависит, впрочем, от партии - может, "пиратские копии" попадаются.
Фильтры с очень "корявой" ФЧХ, да и дискриминаторные резонаторы не сахар. Пробовал ради интереса замыкать фильтры по первой и второй ПЧ (выпаивать и впаивать на их место небольшие конденсаторы) - Кни начинает зависеть от экземпляра дискриминаторного резонатора и лежать в пределах 1-3%. Впрочем, китайцам пофигу: маленький китайский динамик этой рации искажений дает еще больше.
Конечно, я ни в коем случае не спорю что в приемнике можно получить 1% искажений, и это несложно - просто ценовая планка поднимается

Но самое главное - Кни измеряется при сильном сигнале с тестового генератора, а в реальном эфире при слабом сигнале не только появляется шум, но и увеличивается Кни. Я считаю что в связных приложениях ДТМФ должен нормально декодироваться даже тогда когда речь неразборчива, благо это относительно несложно.
Насчет ложного декодирования ДТМФ из голоса и сигналов модемов: к 8870 довешивается RC-цепочка, которая определяет минимальную длительность тона, после которой он будет принят - выставлен сигнал строба и собственно значение в двоичном коде на выходе. Подключившись туда осциллографом можно очень хорошо "почувствовать" ее работу. Оптимальное значение постоянной времени - чтобы с небольшим запасом она принимала тон при минимально допустимой для данного применения его длительности.
Можно поставить ради эксперимента туда цепочку с постоянной времени порядка милисекунды или нескольких и подать на вход шум - цифры будут лететь несколько раз в секунду

Мне кстати в конце 90-х попадалась целая партия поддельных 8870 - они дико грелись и не работали вообще. Возможно, перемаркированые были.
DpInRock
Oct 4 2008, 11:32
К слову. Один мой знакомый китаец специально вводил нелинейные искажения, чтобы на слух казалось громче. Т.е. в НЧ тракте. Чтоб динамик ревел.
Harbinger
Oct 4 2008, 12:56
Того же можно добиться компрессией, без заметных искажений, так в ТВ-рекламе делают, но китайцу было проще усиливать до ограничения
ArseGun
Oct 4 2008, 14:44
Качество аппаратного декодирования DTMF, к слову, согласно datasheet на CM8870, одна ошибка на 10.000 посылок. Так что без протокола с коррекцией ошибок не обойтись. А так, этот декодер можно использовать с хорошим результатом. Нам понравилось, как он работает. Главное следить за уровнем входного сигнала, как снизу, так и сверху.
DpInRock
Oct 4 2008, 14:49
Что, есть смысл поставить на вход АРУ?
---
Китаец мой за каждый резюк выкинутый из схемы премии раздает. А вы говорите компрессор...
ArseGun
Oct 4 2008, 15:33
[quote name='DpInRock' date='Oct 4 2008, 17:49' post='480456']
Что, есть смысл поставить на вход АРУ?
Все зависит от источника сигнала. Для CM8870 рекомендуемый уровень 27,5-869 mV RMS.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.