реклама на сайте
подробности

 
 
3 страниц V  < 1 2 3 >  
Reply to this topicStart new topic
> AVR и телефон.., определения вызова и отбоя АТС
АДИКМ
сообщение Mar 27 2006, 08:37
Сообщение #16


Знающий
****

Группа: Свой
Сообщений: 630
Регистрация: 2-08-05
Пользователь №: 7 294



Вставлю пять копеек.
Выбор AVR здесь не совсем правильный. Если вы хотите все это питать от линии, лучше применить MSP430. Вот вам даже готовый аплекейшн
http://focus.ti.com/docs/mcu/catalog/resou...actName=slaa178

Приавда цепочку вызова там лучше переделать. Как правильно сказали выше - ставите оптрон и смотрите частоту на его выходе при вызове. На разных АТС она сильно колеблется 13-95 Герц.
Амплитудный вызов не будет работать на всех АТС. Верный путь - частотный анализ. Тем более реализуется он элементарно.


--------------------
летаю на пепелаце...
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Mar 27 2006, 09:47
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(АДИКМ @ Mar 27 2006, 12:37) *
Вставлю пять копеек.
Выбор AVR здесь не совсем правильный. Если вы хотите все это питать от линии, лучше применить MSP430. Вот вам даже готовый аплекейшн


Я реализовывал на AVR телефонные аппараты, т.н. адаптеры и прочее. В том числе с питанием от линии. При равных условиях сравнивал их с аналогичными изделиями на контролерах PIC. В сравниваемых образцах AVR потребляла меньше чем PIC. Хотя паспортные данные .... Бросал свой взор smile.gif на MSP. Если верить описанию MSP действительно лучше подходит. 16 бит, ПДП по АЦП, в какой-то есть умножение плюс сложение аппаратное, малое потребление. Всё это очень хорошо при реализации цифровых фильтров (например распознование DTMF). Но тема развития не получила и я переделывать не стал. sad.gif К тому же MSP стоит значительно дороже. Для серийного изделия это существенно.
Go to the top of the page
 
+Quote Post
АДИКМ
сообщение Mar 27 2006, 10:15
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 630
Регистрация: 2-08-05
Пользователь №: 7 294



>К тому же MSP стоит значительно дороже
Скажите а Вы какие процессора сравниваете? AT90S2313 и MSP430F1612 ?
А насчет серийности. Если мне память не изменят - как учили в институте, серийное изделие, это тираж больше 20К.
Поверьте мне, на таких количествах цены совершенно другие.

В одном из телефонов Nokia стоит MSP430F133. И вы очень ошибаетесь, если думаете, что Нокиа покупает их по 3$.


--------------------
летаю на пепелаце...
Go to the top of the page
 
+Quote Post
defunct
сообщение Mar 27 2006, 14:22
Сообщение #19


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Спасибо всем принимавшим участие в обсуждении. Устройство сделано на том чем и задумывалось - tiny13. Сразу отвечу тем, кто советовал использовать MSP - питать от линии "прозрачно для линии" получилось не только tiny13, но и яркий светодиод (2ма) в режиме ожидания.

Сигнал "вызов" обрабатывать получилось очень просто - через делитель 1k-100k завел плюс линии на АЦП контроллера и по уровню >60В просто снимаю трубку.

Сигнал "отбой" обрабатываю с помощью аналогового компаратора, к которому через фазосдвигающую цепочку подключил "плюс" линии. Частоту не определяю, т.к. в tiny13 отсутствует режим Timer Capture. Работаю с длительностями перида - запустил таймер в режиме ОС-CTC на подсчет 100 тактов. В прерывании таймера увеличиваю счетчик. Если по прерыванию от аналогового компаратора в счетчике находится число от 27 до 29 - то предположительно это период сигнала "отбой". Подсчитывается количество таких периодов и если оно больше чем (425Гц * 0.35с)*0.5, то делается вывод, что это сигнал отбой и устройство ложит трубку.
Пробовал дудеть в трубку, за "отбой" такие вопли не принимаются. smile.gif

Привожу кусок программы с используемыми обработчиками, может кому пригодится:

Код
; Чип настроен на работу от внутреннего RC с частотой 1.2Mhz

;****************************************************
; Основной цикл программы
;****************************************************
MainCycle:          ; <----------- ОСНОВНОЙ ЦИКЛ ПРОГРАММЫ
    rcall ADC_Read
    cpi   AL, CALLING_LEVEL
    brlo  MainCycle
    ATA
    rjmp  MainCycle


;****************************************************
; Обработчик прерывания TMR1 (Timer 1 OC)
;****************************************************
TIM0_COMPA:; Timer1 Compare Handler
    in   SREGM, SREG        
    cpi  Counter, MAX_TIMER   ; Если значение счетчика не равно максимально допустимому
    brsh _skip_inc          
    inc  Counter              ; тогда инкрементировать счетчик отсчетов
_skip_inc:
    out  SREG, SREGM
    reti


;****************************************************
; Обработчик прерывания аналогового компаратора
;****************************************************
AC_Handler:
    in    SREGM, SREG

    cpi   Counter, 27       ; частота больше 1 / ((27*100)/1.2Mhz) = 444.4 Гц
    brlo  _skip_detect      ; не наша частота - выход
    cpi   Counter, 30       ; частота ниже 1 / ((30*100)/1.2Mhz) = 400 Гц
    brsh  _skip_detect      ; не наша частота - выход

    cpi   PeriodCounter, MAX_TIMER; проверить накопленное число периодов частоты сигнала "отбой"
    brsh  _skip_inc_period        ; если больше требуемого для распознавания - пропустить инкремент
    inc   PeriodCounter           ; увеличить число распознанных периодов

_skip_inc_period:
; <-- здесь можно например мигнуть светодиодом и т.п.

_skip_detect:
    cpi   Counter, MAX_TIMER        ; Если значение счетчика меньше максимального
    brlo  _skip_period_correction   ; обработку счетчика периодов пропустить

    cpi   PeriodCounter, PERIODS_AMOUNT; Сравнить значение счетчика периодов, с минимальным требуемым для
    brlo  _just_drop_pcounter          ; устойчивого распознавания сигнала "отбой"

    DROP                            ; Если отбой распознан - положить трубку

_skip_drop_signal:

_just_drop_pcounter:
    clr   PeriodCounter         ; Сбросить счетчик числа периодов

_skip_period_correction:

    clr   Counter               ; Сбросить счетчик
    out   SREG, SREGM
    reti
Go to the top of the page
 
+Quote Post
defunct
сообщение Mar 27 2006, 14:36
Сообщение #20


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(АДИКМ @ Mar 27 2006, 12:15) *
>К тому же MSP стоит значительно дороже
Скажите а Вы какие процессора сравниваете? AT90S2313 и MSP430F1612 ?
А насчет серийности. Если мне память не изменят - как учили в институте, серийное изделие, это тираж больше 20К.
Поверьте мне, на таких количествах цены совершенно другие.

Другие, но тем не менее tiny13 будет значительно дешевле любого чипа из семейства MSP (даже пресловутого MSP430F1101 в котором и АЦП нормального нет) и оптом и в розницу. И здесь еще есть один определяющий фактор - у tiny широкий диапазон рабочих напряжений, КПД простого источника питания на стабилитроне выше почти в два раза при питании ~5.1-5.5V, чем при питании 3.0-3.3V.
Go to the top of the page
 
+Quote Post
АДИКМ
сообщение Mar 27 2006, 15:01
Сообщение #21


Знающий
****

Группа: Свой
Сообщений: 630
Регистрация: 2-08-05
Пользователь №: 7 294



Сколько потребляет ваша схема от тел. линии в режиме ожидания?


--------------------
летаю на пепелаце...
Go to the top of the page
 
+Quote Post
defunct
сообщение Mar 27 2006, 15:22
Сообщение #22


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



50В/20k - 2.5 ma (-+ 0.5 ma)
Go to the top of the page
 
+Quote Post
александр_в
сообщение Mar 27 2006, 15:51
Сообщение #23


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 7-01-06
Пользователь №: 12 918



Для координатных АТС (АТСК, АТСКУ, АТС50\200, АТС100\2000) допускается потребление не более 0.2 мА
Go to the top of the page
 
+Quote Post
GeorgyBey
сообщение Mar 27 2006, 16:34
Сообщение #24


Местный
***

Группа: Свой
Сообщений: 205
Регистрация: 21-12-04
Из: Киев
Пользователь №: 1 593



Цитата(александр_в @ Mar 27 2006, 18:51) *
Для координатных АТС (АТСК, АТСКУ, АТС50\200, АТС100\2000) допускается потребление не более 0.2 мА

Смущает слово "потребление" angry.gif
Трубка лежит, аппарат отключен, кто потребляет ?
Телефонисты "греются" когда нагружают генератор вызова параллельными телефонами maniac.gif т.е. увеличенной емкостью (1 телефон = 1мкф), а при отключенном телефоне "потребление" - это утечки в линии, способные вызывать ложное срабатывание.
Включаете миллиамперметр с потенциометром на линию, крутите и замечаете ТОК срабатывания АТС.
Если таки потребляете заметно меньше - обломаются искать, спишут на утечку.
Кстати, на древних АТСках можно было не дать напряжению упасть ниже "нормы" (последовательно стабилитрон), и тогда связь УЖЕ включилась, а тарификатор ЕЩЕ НЕТ a14.gif Народ пользовался...


--------------------
На "нет" и "нах" :)
Go to the top of the page
 
+Quote Post
_artem_
сообщение Mar 27 2006, 17:48
Сообщение #25


учащийся
*****

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



На конечной стадии проект на tiny13 с потреблением около 15 микроампер заказчик хотел чтобы работало год от 200 миллиамперной батереи и ограничение на цену - один доллар. Пришлось удовлетвортить).
сам потребляет еше меньше, если клок брать от watchdog'a в power down mode. И даже можно сделать намного меньше с внешним генератором на 32 кГц. А можно и вообше вырубить клок (если не ошибаюсь).
В этом режиме используйте режим просыпания по внешнему прерыванию от цепи приема звонка . Будет полезно посмотреть section electrical characteristics в datasheet чтобы выбрать режим который вам наиболее подходит. Можно также ввести режим периодического просыпания по прерыванию от watchdoga . Работает OK.

Вообше то не ожидал но это устройство работает даже от 1.4 вольт . хотя не гарантировано в datasheet > 1.8 .

В тини 13 компаратор и ацп есть так что можно изврашаться по любому.)

Если линия шумная и ресурсов тини для цифровой обработки гудков не будет хватать поставь аналоговый полосовой фильтр для гудков с управлением по питанию от gpio чтобы в отключенном режиме энергию не потребляла а компаратором или ацп мерьте его выход и полученные данные проверьте на похожесть последовательности гудков отбоя от атс.


--------------------
Зачем лаять на караван , когда на него можно плюнуть?

Go to the top of the page
 
+Quote Post
Laptop
сообщение Mar 27 2006, 18:57
Сообщение #26


Частый гость
**

Группа: Свой
Сообщений: 142
Регистрация: 19-11-05
Пользователь №: 11 103



Если хочется выделять сигнал занято с большей достоверностью, то необходимо поставить фильтр для ослабления гармоник. Встретилось несколько АТСок с 2 и 3 гармониками значительно превышавшими основной сигнал. А дальше либо честный способ с использованием микросхем детекторов, либо получестный с компаратором и Герцелем. Тут уж либо надежность, либо дешевизна. Кстати существенные проблемы может вызвать музыка или пение. И не надо забывать про параметры сигнала, длительность сигналов и пауз хоть и плавает но все же имеет свои границы.
Успеховwink.gif

Сообщение отредактировал Laptop - Mar 27 2006, 19:06
Go to the top of the page
 
+Quote Post
defunct
сообщение Mar 27 2006, 20:54
Сообщение #27


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(_artem_ @ Mar 27 2006, 19:48) *
На конечной стадии проект на tiny13 с потреблением около 15 микроампер заказчик хотел чтобы работало год от 200 миллиамперной батереи и ограничение на цену - один доллар. Пришлось удовлетвортить).

Гм.. эта.. а как Вы умудрились уложиться в доллар?!
Как не кручу у меня получается ~$2, если не учитывать стоимость тиньки, которая сама по себе ~$1. детали не smd..
Go to the top of the page
 
+Quote Post
_artem_
сообщение Mar 28 2006, 01:16
Сообщение #28


учащийся
*****

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



тини 100 штук по 80 центов покупал от arrow. Да еше к тому заказ , если будет, то несколько десятков К, a там уже и поторговаться можно.


--------------------
Зачем лаять на караван , когда на него можно плюнуть?

Go to the top of the page
 
+Quote Post
АДИКМ
сообщение Mar 28 2006, 09:53
Сообщение #29


Знающий
****

Группа: Свой
Сообщений: 630
Регистрация: 2-08-05
Пользователь №: 7 294



Вы ничего не напутали?
я спросил - Сколько потребляет ваша схема от тел. линии в режиме ожидания.
Это подразумевает - ваш девайс просто спит и считает часы (если они есть у вас). Какой ток потребления?

После того как вы снимите трубку - там уже другой разговор.


--------------------
летаю на пепелаце...
Go to the top of the page
 
+Quote Post
defunct
сообщение Mar 28 2006, 10:11
Сообщение #30


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(АДИКМ @ Mar 28 2006, 11:53) *
Вы ничего не напутали?
я спросил - Сколько потребляет ваша схема от тел. линии в режиме ожидания.
Это подразумевает - ваш девайс просто спит и считает часы (если они есть у вас). Какой ток потребления?

После того как вы снимите трубку - там уже другой разговор.


Думаю что не напутал, 2ma в режиме ожидания т.к. горит светодиод.. Точнее подмаргивает. Да и источник питания резистор-стабилитрон-кондер потребляет стабильно. В режиме разговора устройство замыкает линию на резистор 1.6k итого потребление возрастает примерно до 10-20ma.
Go to the top of the page
 
+Quote Post

3 страниц V  < 1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 12th July 2025 - 04:55
Рейтинг@Mail.ru


Страница сгенерированна за 0.01481 секунд с 7
ELECTRONIX ©2004-2016