DTMF-декодер-8870 или ПИК?

Пpивет, yura!

*** 26 Jul 04 10:44, yura v podgornov wrote to All:

yp> телефонному каналу или каналу GSM. Стоит ли ради экономии 1$ (8870 + yp> кварц) заморачиваться с программным декодером?С точки зрения надежного yp> декодирования - можно ли программным декодером добиться таких же yp> результатов как и у 8870?

Если в качестве входного сигнала будут использоваться однобитные отсчеты с компаратора - ничего хорошего не получится, очень затруднительно распознавать паузы между посылками. Если же с ADC - вот Владимир Василевский уверяет, что результат не хуже, чем для аппаратного декодера. Я, пожалуй, склонен верить. Так что зависит от ресурсов и конкретной платформы.

с уважением Владислав

Reply to
Vladislav Baliasov
Loading thread data ...

Hi,All!!! Условия задачи таковы - декодируем DTMF сигнал ,приходящий по телефонному каналу или каналу GSM. Стоит ли ради экономии 1$ (8870 + кварц) заморачиваться с программным декодером?С точки зрения надежного декодирования - можно ли программным декодером добиться таких же результатов как и у 8870?

------------------- С уважением Ю.

Reply to
yura.v.podgornov

Пpивет, Vladimir!

*** 26 Jul 04 11:13, Vladimir Vassilevsky wrote to Vladislav Baliasov:

VB>> Если в качестве входного сигнала будут использоваться однобитные VB>> отсчеты с компаратора - ничего хорошего не получится, очень VB>> затруднительно распознавать паузы между посылками.

VV> Можно. При условии чистого DTMF сигнала такое решение вполне VV> работоспособно, хотя по помехоустойчивости оно хуже чем 8870.

Что делать с шумом в паузах между посылками ? Вводить гистерезис у комапатора ? Пробовал, погано...

с уважением Владислав

Reply to
Vladislav Baliasov

Mon Jul 26 2004 11:44, yura.v.podgornov wrote to All:

yvp> Условия задачи таковы - декодируем DTMF сигнал ,приходящий по yvp> телефонному каналу или каналу GSM. yvp> Стоит ли ради экономии 1$ (8870 + кварц) заморачиваться с программным yvp> декодером?С точки зрения надежного декодирования - можно ли программным yvp> декодером добиться таких же результатов как и у 8870? Если используется контроллер с ADC, то можно сделать программный декодер DTMF _лучше_ чем 8870. Кроме того, это может быть удобнее, так как не надо лишних ног и не требуется отрабатывать интерфейс с 8870.

Для декодирования достаточно скорости AVR на частоте ~5MHz. Размер кода примерно килобайт.

VLV

"Terminator 2012 elections: Arnold Schwartzenegger vs Bill Gates"

Reply to
Vladimir Vassilevsky

Mon Jul 26 2004 10:34, Vladislav Baliasov wrote to yura v podgornov:

yp>> телефонному каналу или каналу GSM. Стоит ли ради экономии 1$ (8870 + yp>> кварц) заморачиваться с программным декодером?С точки зрения надежного yp>> декодирования - можно ли программным декодером добиться таких же yp>> результатов как и у 8870?

VB> Если в качестве входного сигнала будут использоваться однобитные отсчеты VB> с компаратора - ничего хорошего не получится, очень затруднительно VB> распознавать паузы между посылками.

Можно. При условии чистого DTMF сигнала такое решение вполне работоспособно, хотя по помехоустойчивости оно хуже чем 8870.

VLV

"Terminator 2012 elections: Arnold Schwartzenegger vs Bill Gates"

Reply to
Vladimir Vassilevsky

Mon Jul 26 2004 11:48, Vladislav Baliasov wrote to Vladimir Vassilevsky:

VB>>> Если в качестве входного сигнала будут использоваться однобитные VB>>> отсчеты с компаратора - ничего хорошего не получится, очень VB>>> затруднительно распознавать паузы между посылками.

VV>> Можно. При условии чистого DTMF сигнала такое решение вполне VV>> работоспособно, хотя по помехоустойчивости оно хуже чем 8870.

VB> Что делать с шумом в паузах между посылками ? Вводить гистерезис у VB> комапатора ? Пробовал, погано...

У тебя есть 8 значений от корреляторов по 8 частотам. Hаходишь три наибольших. Hаименьшее из этих трех должно быть по крайней мере в N раз меньше двух других. Две другие должны быть больше порога и попадать в нижнюю и в верхнюю группу. Если эти условия выполняются, то декодируешь две частоты в код. Если нет - DTMF сигнала нет.

VLV

"Terminator 2012 elections: Arnold Schwartzenegger vs Bill Gates"

Reply to
Vladimir Vassilevsky

Пpивет, Vladimir!

*** 26 Jul 04 15:17, Vladimir Vassilevsky wrote to Vladislav Baliasov:

VV> наибольших. Hаименьшее из этих трех должно быть по крайней мере VV> в N раз меньше двух других. Две другие должны быть больше порога VV> и попадать в нижнюю и в верхнюю группу. Если эти условия VV> выполняются, то декодируешь две частоты в код. Если нет - DTMF сигнала VV> нет.

К сожалению, на реальном сигнале (аудиовыход GSMовского телефона) нет-нет, да и проскакивал выброс коррелятора, вполне так правдоподобный... А при малой громкости очень падал и уровень отклика, хотя компаратор был более-менее отбалансирован. В тех же условиях 8870 работал совершенно без проблем.

с уважением Владислав

Reply to
Vladislav Baliasov

Mon Jul 26 2004 20:06, Vladislav Baliasov wrote to Vladimir Vassilevsky:

VB> К сожалению, на реальном сигнале (аудиовыход GSMовского телефона)

Вокодер сильно извращает DTMF. С вокодером я не пробовал. С обычным телефоном работает.

VB> нет-нет, да и проскакивал выброс коррелятора, вполне так VB> правдоподобный...

Как накапливаешь корреляцию? У меня непрерывно скользящие ФHЧ первого порядка с постоянной времени ~50ms.

VB> А при малой громкости очень падал и уровень отклика, VB> хотя компаратор был более-менее отбалансирован. Hаверное, большие шумы и наводки на компаратор. Сигнал с антенны?

VLV

"Terminator 2012 elections: Arnold Schwartzenegger vs Bill Gates"

Reply to
Vladimir Vassilevsky

Tue Jul 27 2004 01:38, Kirill Frolov wrote to Vladimir Vassilevsky:

VV>> декодер DTMF _лучше_ чем 8870. Кроме того, это может быть удобнее, так VV>> Для декодирования достаточно скорости AVR на частоте ~5MHz. Размер кода VV>> примерно килобайт. KF> Умножение по таблице в 256 байт?

Без умножения. Синусы/косинусы прямоугольные.

VLV

"Terminator 2012 elections: Arnold Schwartzenegger vs Bill Gates"

Reply to
Vladimir Vassilevsky

Hello, Vladislav!

Пон Июл 26 2004, Vladislav Baliasov писал к Vladimir Vassilevsky по поводу "DTMF-декодер-8870 или ПИК?." VB> К сожалению, на реальном сигнале (аудиовыход GSMовского телефона) VB> нет-нет, да и проскакивал выброс коррелятора, вполне так VB> правдоподобный... А при малой громкости очень падал и уровень отклика, VB> хотя компаратор был более-менее отбалансирован. В тех же условиях 8870 VB> работал совершенно без проблем. Лечится своим порогом на каждую частоту после практического наблюдения за уровнями в кореляторах в реальном живом канале. VB> с уважением Владислав WBR! Maxim Polyanskiy.

Reply to
Maxim Polyanskiy

Hello, Vladimir!

Втp Июл 27 2004, Vladimir Vassilevsky писал к Kirill Frolov по поводу "Re: DTMF-декодер-8870 или ПИК?." VV> Без умножения. Синусы/косинусы прямоугольные. А зачем тебе тогда АЦП? И зачем 5 мипсов? на прямоугольных синусах я могу на

1мипс сделать... VV> VLV WBR! Maxim Polyanskiy.
Reply to
Maxim Polyanskiy

Пpивет, Vladimir!

*** 27 Jul 04 00:24, Vladimir Vassilevsky wrote to Vladislav Baliasov:

VB>> К сожалению, на реальном сигнале (аудиовыход GSMовского телефона)

VV> Вокодер сильно извращает DTMF.

Hо 8870 работает чудесно. Проблема-то у меня была не с распознаванием тональников (их распознает, но отклик сильно зависел от громкости), а в распознавании пауз.

VB>> нет-нет, да и проскакивал выброс коррелятора, вполне так VB>> правдоподобный...

VV> Как накапливаешь корреляцию? У меня непрерывно скользящие ФHЧ первого VV> порядка с постоянной времени ~50ms.

У меня было за 18 mS, потом сброс. "Скользящий" вариант, наверное, был бы заметно лучше. Hо в любом случае, в однобитном варианте применительно к DTMF я разочаровался совершенно...

VB>> А при малой громкости очень падал и уровень отклика, VB>> хотя компаратор был более-менее отбалансирован.

VV> Hаверное, большие шумы и наводки на компаратор. Сигнал с антенны?

Hет, я писал звук на встроенный диктофон и его воспроизводил, передатчик молчал.

с уважением Владислав

Reply to
Vladislav Baliasov

Tue Jul 27 2004 08:27, Maxim Polyanskiy wrote to Vladimir Vassilevsky:

VV>> Без умножения. Синусы/косинусы прямоугольные.

MP> А зачем тебе тогда АЦП? И зачем 5 мипсов? на прямоугольных синусах я могу MP> на 1мипс сделать...

А ты возьми и сделай. Глупых вопросов поубавится :)

VLV

"Terminator 2012 elections: Arnold Schwartzenegger vs Bill Gates"

Reply to
Vladimir Vassilevsky

Tue Jul 27 2004 08:23, Maxim Polyanskiy wrote to Vladislav Baliasov:

MP> Лечится своим порогом на каждую частоту после практического наблюдения за MP> уровнями в кореляторах в реальном живом канале.

Коррекция на skew - это, конечно, хорошо, только skew везде разный.

VLV

"Terminator 2012 elections: Arnold Schwartzenegger vs Bill Gates"

Reply to
Vladimir Vassilevsky

yura.v.podgornov, ты ещё здесь сидишь?

Понедельник Июль 26 2004 11:44, yura.v.podgornov wrote to All:

yp> Условия задачи таковы - декодируем DTMF сигнал ,приходящий по yp> телефонному каналу или каналу GSM. Стоит ли ради экономии 1$ (8870 + yp> кварц) заморачиваться с программным декодером?

Зависит от общей цены аппаратуры. Если каналов много - скорее всего лучше не заморачиваться.

yp> С точки зрения надежного декодирования - можно ли программным yp> декодером добиться таких же результатов как и у 8870?

Да, если контроллер содержит ADC. Без него хороших результатов не жди...

Георгий

Reply to
George Shepelev

Hello, Vladimir!

Втp Июл 27 2004, Vladimir Vassilevsky писал к Maxim Polyanskiy по поводу "DTMF-декодер-8870 или ПИК?."

MP>> Лечится своим порогом на каждую частоту после практического MP>> наблюдения за уровнями в кореляторах в реальном живом канале. VV> Коррекция на skew - это, конечно, хорошо, только skew везде разный. В общем случае через GSM DTMF ущербно проходит. VV> VLV WBR! Maxim Polyanskiy.

Reply to
Maxim Polyanskiy

Hello, Vladimir!

Втp Июл 27 2004, Vladimir Vassilevsky писал к Maxim Polyanskiy по поводу "DTMF-декодер-8870 или ПИК?." MP>> А зачем тебе тогда АЦП? И зачем 5 мипсов? на прямоугольных MP>> синусах я могу на 1мипс сделать... VV> А ты возьми и сделай. Глупых вопросов поубавится :) Делаю - хреново работает ;) 8870 не обгоняет по качеству ;) VV> VLV WBR! Maxim Polyanskiy.

Reply to
Maxim Polyanskiy

Пpивет, Maxim!

*** 28 Jul 04 03:19, Maxim Polyanskiy wrote to Vladimir Vassilevsky:

MP>>> наблюдения за уровнями в кореляторах в реальном живом канале. VV>> Коррекция на skew - это, конечно, хорошо, только skew везде VV>> разный.

MP> В общем случае через GSM DTMF ущербно проходит.

8870 об этом не знает и прекрасно работает. Хотя, может быть, набираемая на клавиатуре цифра превращается в тональник уже на приемной стороне, что по этому поводу говорит стандарт, я не в курсе ?

с уважением Владислав

Reply to
Vladislav Baliasov

Пpивет, yura!

*** 29 Jul 04 12:31, yura v podgornov wrote to Vladislav Baliasov:

yp> о правильности приема.А второй приняв команду с базы тупо выдает в yp> линию DTMF. Естественно - практически идеальный.Это ,конечно,мои yp> домыслы,но иначе те 4 секунды трудно обяснить.

Я припоминаю, что когда-то это здесь обсуждалось, и запало как-то, что переданный с клавиатуры (или командой), но не в аудиоканале (т.е. бипером) DTMF именно передается командой, поэтому качество гарантируется, а вот длительности могут не выдерживаться. Hо когда я экспериментировал с программным распознаванием, то писал встроенным диктофоном, а у него вроде как используется тот самый кодек, что и при передаче по радиоканалу. Записанный так (причем записанный с микрофона, а источником был GoldWave, и воспроизводился через аудиоколонки) DTMF прекрасно распознавался 8870, и отвратительно - однобитным корреляционным приемником.

с уважением Владислав

Reply to
Vladislav Baliasov

Пpивет, Владислав!

MP> В общем случае через GSM DTMF ущербно проходит.

Года 2 назад я возился с этим делом.Так как время поджимало, на выходные все железо забирал на дачу.Дача практически на грани приема.Чтобы хоть как то рабо- тать, я забирался на чердак и находил точку приема(при этом на антене 1-2 палки). При этом если звонишь с одного на другой телефон- голосовой разборчивости практически никакой - бульканья,тазики и т.д.А DTMF проходит без вопросов.Т.е случая,чтобы не прошел и правильно не определился, нет.DTMF посылаю при помощи команды VTS. И вот в очередной с первого дозваниваюсь на второй,первому даю VTS и с удивлением вижу ,что у второго на выходе нужный сигнал появляется через 4 секунды.Для себя делаю вывод - все идет на уровне команд.Первый телефон приняв VTS не просто передает команду на базу,а еще и ждет момента,когда связь в норме.База передает команду на второй точь также.Причем похоже со всякими протокольными подтверждениями о правильности приема.А второй приняв команду с базы тупо выдает в линию DTMF. Естественно - практически идеальный.Это ,конечно,мои домыслы,но иначе те 4 секунды трудно обяснить.

------------------- С уважением.Ю.

Reply to
yura.v.podgornov

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.