|
|
  |
SIM900\SIM300D, прием DTMF |
|
|
|
Jan 4 2011, 04:07
|
Участник

Группа: Участник
Сообщений: 65
Регистрация: 7-06-05
Из: Калуга
Пользователь №: 5 816

|
Цитата(Scaner @ Jun 29 2010, 21:54)  Кто-нибудь сталкивался с реализацией приема DTMF с помощью модулей SIM900\SIM300D? И вообще, стоит ли изобретать велосипед? Слышал, что прием DTMF будет одной из функций SIM900. Хотелось бы знать, так ли это...
То, что смог найти - "Алгоритм Герцеля", но как довести сигнал до АЦП процессора - остается для меня загадкой. Ведь там дифференциальный сигнал... Как его оцифровывать? При том сохранив возможность вести телефонный разговор... И еще вопрос: на сколько ресурсозатрантый этот Аглоритм Герцеля? Я реализовывал DTMF на PIC-е. С выхода SIM300 через RC-фильтр сразу на АЦП микроконтроллера, использовал только один выход модуля (что с того, что выход дифференциальный, второй выход просто не используется). В исходниках Линукса нашел готовый код Си алгоритма Герцеля (ДТМФ), адаптировал его под ПИК и всё заработало. Но работает очень долго, при анализе 16 частот (8 частот и 8 вторых гармоник) интервал 20 мс обрабатывается около секунды! Если анализировать только 2 кнопки 6 частот ( 3 частоты и 3 вторые гармоники ), то получалось быстрее... Но главная проблема в том, что при большой загрузке сотовой сети происходит уплотнение сигнала и аудио сигнал передается с перерывами. Человеческое ухо воспринимает такой сигнал нормально, а вот Микроконтроллер уже нет.
--------------------
|
|
|
|
|
Jan 7 2011, 08:16
|
Участник

Группа: Участник
Сообщений: 65
Регистрация: 7-06-05
Из: Калуга
Пользователь №: 5 816

|
Был PIC18F2520, работал на 8 Мегагерцах. Но, как уже писали, самая большая проблема в искажениях в аудио-канале. DTMF предназначен для проводных линий.
--------------------
|
|
|
|
|
Jan 10 2011, 14:59
|

Участник

Группа: Banned
Сообщений: 39
Регистрация: 10-01-11
Из: skype:s-at-an
Пользователь №: 62 128

|
Цитата(CADiLO @ Jan 7 2011, 14:22)  Конечно же я не имел в виду GSM. Речь шла о возможности реализации нормального приемника на PIC, чтобы еще ресурс и для другого оставался. А в GSM канале даже аппаратные декодеры 50 на 50 определяют. это не совсем так! декодеры типа 8870 - в гсм работают достаточно хорошо (ну 95% вероятности можно смело дать) причем я использовал очень давно (этак в 2000-2002 годах когда еще сети ГСМ имели не ахти даже CSD соединения... а GPRS просто было только кое где.. так вот DTMF для передачи данных через непосредственно через голосовой канал - малой скоростью (одна 4 бит -посылка 100мс) -именно на 8870 (а это шедевр, какой уже долгие годы для целей DTMF - живет в мире и никуда не денется наверное до 2го пришествия аж, а возможно и переживет это событие) Так вот.. посылки размером 100 байт- это все прекрасно гоняло по ГСМ точка-ГСМ-точка.. И там не менее 95%- передавались без ошибок. А если и были ошибки -повтор передачи..и проблема решалась. Другое дело что пока я не имел дела со встроенными в GSM модем DTMF декодерами.. было бы интересно услышать подробности кстати про рассказы героев какие тут описывают как они делали на Сим300 и АЦП- PICа программный DTMF декодер. Замечу- на это древний герой Сизиф сказал- "пидить в инете- не камни ворочать" Цитата(CADiLO @ Jan 7 2011, 14:22)  Конечно же я не имел в виду GSM. Речь шла о возможности реализации нормального приемника на PIC, чтобы еще ресурс и для другого оставался. А в GSM канале даже аппаратные декодеры 50 на 50 определяют. это не совсем так! декодеры типа 8870 - в гсм работают достаточно хорошо (ну 95% вероятности можно смело дать) причем я использовал очень давно (этак в 2000-2002 годах когда еще сети ГСМ имели не ахти даже CSD соединения... а GPRS просто было только кое где.. так вот DTMF для передачи данных через непосредственно через голосовой канал - малой скоростью (одна 4 бит -посылка 100мс) -именно на 8870 (а это шедевр, какой уже долгие годы для целей DTMF - живет в мире и никуда не денется наверное до 2го пришествия аж, а возможно и переживет это событие) Так вот.. посылки размером 100 байт- это все прекрасно гоняло по ГСМ точка-ГСМ-точка.. И там не менее 95%- передавались без ошибок. А если и были ошибки -повтор передачи..и проблема решалась. Другое дело что пока я не имел дела со встроенными в GSM модем DTMF декодерами.. было бы интересно услышать подробности кстати про рассказы героев какие тут описывают как они делали на Сим300 и АЦП- PICа программный DTMF декодер. Замечу- на это древний герой Сизиф сказал- "пидить в инете- не камни ворочать" А уж с нормальными посылками ДТМФ (500мс)- 8870 гарантирует 99% верный прием.. Цитата(CADiLO @ Dec 23 2010, 18:20)  Думаю что должно. У нас основной поставляемый модуль SIM900, так что на модификации не обращал внимания. Они экономически невыгодны к поставке и применению. Положим что касается СИМ- этой компании я всякое доверие потерял. Ее модемы годятся лишь на разработку планируемое время жизни которой - 2года.. по причине того,что Simcom имеет привычки менят схемотехнику даже приличных приборов купленных у нормальных компаний.. и после этого- не жди надежной работы.. от новых партий купленных модемов. с виду они такие же.. внутри- совсем другая суть. После практики использования SIMCOM (разнообразной) - ничто не заставит купить модемы этой компаний как бы хороши не были отзывы о них.. Знаю что в один миг можно "попасть" так. что даром не надо ее модемов! Даже если цены Симком сделают в 3 раза ниже чем на аналогичные компаний более приличных. Играть в лоторею с симком - никому не пожелаю.. энту уж извини, барин..
--------------------
Черт не гуглит, не википедит,Черт- Таки ЗНАЕТ
|
|
|
|
|
Jan 11 2011, 07:31
|

Местный
  
Группа: Участник
Сообщений: 327
Регистрация: 6-10-09
Из: РФ :: Ленинград
Пользователь №: 52 781

|
Цитата(CADiLO @ Jan 11 2011, 13:48)  Лучше даже на PIC24 или DSPIC33. Есть модели которые по ценовой политике интереснее 18 серии. Так 18F45К20 в розницу $2.4, а PIC24FJ64GA002 или dsPIC33FJ12GP201 - $2.9. Если надо больше ног, то в среднем плюс 1-2 бакса. У нас уже многие даже на PIC32 в качестве базовой модели посматривают - они при больших возможностях проще в освоении чем 16 и 18 серии. Да нет вопросов, конечно, 24е или 33е лучше 18х. Но я на них ещё не пересел, хотя уже чувствую, что "затылок" вот-вот упрётся в "потолок". Однако, видимо, пересаживаться придётся сразу на ARMы - о них всё больше говорят и их всё чаще применяют. В любом случае, DTMF можно сносно реализовать на тех МК, что уже есть сейчас. Кто это сделает, тому будут большие респекты.
|
|
|
|
|
Jan 11 2011, 07:47
|

Гуру
     
Группа: Свой
Сообщений: 6 023
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988

|
Перезвонил коллегам, если найдут исходники семилетней давности для PIC16F77 по табличному БПФ декодированию DTMF, то выложу. В качестве основы можно будет использовать. Писалось на ассемблере, но комментарии есть, так что при желании можно разобраться и повторить на новых чипах. В частности можно переделать работу с таблицей, потому как тогда это все оптимизировалось покомандно, а в новых PIC есть готовые табличные команды. Самое интересное там сама таблица - она была полностью отмоделирована в матлабе (или маткаде - не помню как правильно прога зовется).
С чем пришлось тогда столкнуться это малый динамический диапазон при работе с АЦП PIC. Пришлось делать аналоговую часть с АРУ - схему брали от микрофонного пульта "Беринджер". После чего при выходном сигнале нч тракта радиостанции от 15 мВ до 600мВ сигнал DTMF из эфира определялся без проблем.
--------------------
Не можна втрачати надію. Не можна здаватися до останньої миті. Можливо саме вона, остання мить, принесе весну, яка стане початком нового життя.
|
|
|
|
|
Jan 11 2011, 08:26
|

Местный
  
Группа: Участник
Сообщений: 327
Регистрация: 6-10-09
Из: РФ :: Ленинград
Пользователь №: 52 781

|
Цитата(Eddy71 @ Jan 11 2011, 15:14)  но оно работало! Так что не обязательно АРМ для детектирования ставить.. Ну, наши предки из инженерного корпуса делали всё на аналоговой технике, а как работало! Дарьял весь насквозь аналоговый, Тополя тоже не на АРМах, а летают, поди ж ты! На самом деле, всё возрастающий объём ресурсов развращает разработчика, важнее быстро слепить нечто работоспособное, нежели вылизывать всё до совершенства...
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|