Виберіть свою мову

Телефони з автоматичним визначенням номера (АВН) користуються популярністю з моменту їх появи. Останнім часом у зв'язку з встановленням сучасного обладнання на АТС старі Аони перестають працювати. У цій статті автор розповідає про варіанті пристрою визначення номера, працюючого з сервісом CLIP (Calling Line Identification Presentation, що буквально означає "ідентифікація абонента") на цифрових станціях.

Ми давно користуємося можливістю визначати номери абонентів завдяки радіоаматорові-ентузіасту, який першим додумався зібрати пристрій, здатне отримати від АТС номер абонента. Все це добре працювало на старих радянських АТС, але з введенням в дію сучасних телефонних станцій закордонних виробників старий добрий АОН перетворився просто в музичний автомат - музика грає, будильники дзвенять, приємним жіночим голосом розмовляє, але не виконує свою головну функцію - визначення номера. Цього і слід було очікувати тому, що в радянських АТС взагалі не передбачалося надавати такий сервіс абоненту - апаратура АОН, насамперед призначалася для автоматичної тарифікації міжміських розмов. Наші Аони просто "дурили" АТС, а вона, думаючи", що номер від неї вимагає міжміський станція, видавала номер абонента. Але з зарубіжними станціями цей фокус не проходить, з'явилася можливість заблокувати видачу номера абонента.

Але не варто сильно засмучуватися, адже старий спосіб визначення номера має свої недоліки. Видається тільки номер завдовжки не більше семи цифр і категорія абонента. Для визначення номера повинно встановитися з'єднання між абонентом і АТС, що при погодинної тарифікації приносить незручності абоненту. Кожен з нас не раз стикався з ситуацією, коли набираєш номер, на тому наприкінці спрацьовує АОН, а поговорити ні з ким. Особливо це неприємно при міжміських дзвінках, тарифи особливо великі.

Зараз абоненти сучасних цифрових станцій можуть замовити послугу визначення номери (CLIP), як і інші послуги, за гроші. Але тепер зто - гарантований сервіс, платите гроші - отримуєте послугу. Сервіс CLIP вільний від вищеописаних недоліків і має більш широкі можливості. Природно, щоб користуватися цим сервісом, необхідно, по-перше, замовити його у свого телефонного оператора таким же чином, як і інші послуги. По-друге, необхідно мати визначник номера (звичайне назва Caller ID), сумісний за стандартом з обладнанням вашого телефонного оператора.

З початку 90-х років минулого століття виробники телекомунікаційного обладнання передбачили можливість видачі номера абонента як один з сервісів цифрових станцій. Паралельно розвивалися два стандарту.

Стандарт DTMF (Dual Топі Multi-Frequency - двухчастотное кодування) вперше був запропонований інженерами лабораторії Bell Labs для передачі даних з радіоканалах, а потім почав використовуватися і в інших системах передачі Тут кожен переданий символ представлений сумою двох різних частот з восьми можливих. Всього в нашому розпорядженні шістнадцять символів: десять цифрових від 0 до 9 і шість службових - "*'*, "#", "А", "В", "С", "D". Розкладка частот показана в таблиці.

Комбінуючи ці символи, отримуємо потрібне повідомлення. Перевагами цього стандарту є надійність і поширеність DTMF і простота апаратури визначення номера. Стосовно до сервісу CUP цей стандарт розвивався в кілька етапів, тому не всі станції підтримують його в повному обсязі.

На першому етапі передбачалася передача тільки номера абонента або останнього переадресующего. У цьому випадку неможливо визначити, чи переадресований дзвінок. Формат передачі: D S1 S2 S3 ...Sn С.

На другому етапі також передавався тільки номер абонента або останній переадресующий, але в цьому випадку можна визначити номер отримано: номер абонента або переадресующего абонента. Формат передачі про абонента: A S1 S2 S3 ...Sn С. Формат передачі про переадресующем абонента-DS1 S2 S3...SnC.

На третьому етапі передавався і номер абонента, та номер останнього переадресующего: (A S1 S2 S3...Sn) (DS1 S2S3...Sn)C.

На останніх етапах протокол був розширений з метою передачі додаткових параметрів. З'явилася можливість включити в повідомлення до п'яти переадресующих номерів і додаткові інформаційні коди, які вказують, як інтерпретувати повідомлення. Формат передачі: (A S1 S2S3...Sn)(DS1 S2 S3...Sn)......(D S1 S2 S3...Sn) (B S1 S2) C.

Символи А і D є стартовими для номерів викликає і переадресующего абонентів відповідно, В -стартовий символ для передачі параметрів, Sn - цифра номера, n - ціле число від 1 до 15. Передача інформації завжди закінчується символом С. Тривалість тону кожного символу і паузи між ними 70 мс.

На кожному з цих етапів передбачена передача інформації про неможливість надання номера абонента, наприклад, якщо номер захищений (сервіс CLIR). В цьому випадку передається послідовність (1 0 С). Число цифр у переданих номерах може бути не більше п'ятнадцяти. Перші дві цифри - номер зони. Для того щоб абонент отримав номер абонента, необхідно, щоб сигнальна система всього ланцюжка станцій підтримувала необхідний протокол передачі даних. Використання стандарту DTMF для визначення номера отримало розповсюдження переважно в європейських країнах.

На американському континенті і в Азії користуються в основному стандартом FSK (Frequency Shift Keying - частотна маніпуляція). На мою думку, цей стандарт більше опрацьований порівняно з DTMF, принаймні, на даному етапі. Спочатку цей спосіб був розроблений саме для передачі даних по телефонних мереж між модемами. Тут біт "0" кодується частотою 2100 Гц, а біт "1" - частотою 1300 Гц, швидкість передачі - 1200 біт/с. Біти збираються в байти завдовжки по вісім біт, а байти комбінуються в повідомлення.

Таким чином, у нашому розпорядженні є 256 символів. З'явилася можливість передавати не тільки цифри, але і символи алфавіту. Зараз проводиться величезна кількість Caller ID стандарту FSK, що дозволяють надати абоненту не тільки номер, час і дату дзвінка абонента, але також його ім'я. Що стосується ім'я контакту, то можливість його передачі залежить, насамперед, від провайдера телефонних послуг, інші параметри передаються обов'язково.

Телефонна станція перед видачею номера повинна якимось чином повідомити абонентському пристрою про свої наміри". Тут теж існують кілька варіантів: зміна полярності телефонної лінії, вимикання лінійного напруги на нормований інтервал часу або зниження лінійної напруги до певного рівня. Повідомлення може передаватися до першого сигналу виклику або між першим і другим.

У цій статті ми розглянемо конструкцію Caller ID стандарту DTMF. Пристрій працює як приставка, що підключається паралельно будь-якого телефонного апарату на аналогової телефонної лінії з напругою лінійних батарей 54...60 Приставка Ст. відрізняється простотою управління, надійністю визначення номера, гранично низьким енергоспоживанням від джерела живлення і від телефонної лінії. Приставка не заважає роботі сервіс, автовідповідачів і інших пристроїв, що працюють в автоматичному режимі та відповідає вимогам стандартів щодо підключення абонентських пристроїв. Конструктивно вона може бути виконана в окремому корпусі або вбудована в телефонний апарат.

Харчування приставки - батарея з трьох гальванічних елементів або акумуляторів типорозміру АА або ААА. Забезпечується постійна підзарядка елементів живлення малим струмом від телефонної лінії. Струм споживання від телефонної лінії при покладеній трубці в режимі очікування (при Uжив = 4,5 В) - не більше 0,1 мА, а струм підзарядки джерела живлення - не менше 0,01 мА. Струм споживання від джерела харчування: в момент набору або визначення номера - не більше 5 мА, при знятій трубці або перегляді пам'яті - не більше 0,3 мА.

Пам'ять приставки - двадцять шість вхідних номерів, організована за принципом "першим увійшов - першим вийшов". Двома кнопками можна "гортати" пам'ять в бік більш ранніх дзвінків і в бік пізніх дзвінків. В пам'ять записуються зона, номер, дата та час дзвінка. Передбачено економне використання пам'яті, т. тобто якщо один і той же абонент додзвонюється до вас з періодичністю менше 10 хв, то його номер записується в пам'ять один раз і фіксується час останнього дзвінка. При відключеному живленні інформація в пам'яті і робота годин зберігаються не менше 3 хв, що достатньо для заміни елементів живлення. Число нових дзвінків, записаних в пам'ять після останнього перегляду, відображається на індикаторі. Лічильник нових дзвінків скидається після перегляду пам'яті.

Якщо ваш телефонний апарат працює в тональному режимі, набирається номер дублюється на індикаторі, таким чином, ви можете контролювати правильність набору.

Схема приставки показана на рис. 1. Пристрій зібрано на трьох мікросхемах. В якості індикатора використовується рідкокристалічний індикатор від китайських телефонів PANAPHONE або аналогічних. Це 10-розрядний індикатор із вбудованим контролером Holtek. Основним елементом конструкції є мікроконтролер PIC16F84A (DD2). Для декодування сигналів DTMF використовується мікросхема DTMF-декодер (DD1) у типовому включенні. Апаратне декодування забезпечує більш високу перешкодостійкість і надійність, на відміну від програмної дешифрування. Крім того, спрощується і мінімізується програма.

(натисніть для збільшення)

Мікросхема DD3 поєднує в собі годинник, таймер, календар і статичне ОЗП, якому зберігаються визначилися номери. Інтерфейс l2C програмно емулюється на висновках РВ6 і РВ7 контролера DD2. Чим більше ємність конденсатора С7, тим найдовше зберігається пам'ять номерів та хід годин при відключеному живленні. Підлаштування конденсатор С6 необхідний для встановлення точності ходу годинника.

Каскад на транзисторі VT1 - це найпростіший компаратор для аналізу стану телефонної лінії. Висновок RB0 контролера DD2 сконфігурований як зовнішнє джерело переривань по фронту. Стабілітрон VD4 служить для захисту від можливого входу перенапруження. При вільної лінії транзистор VT1 відкритий, а при зниженні напруги в телефонній лінії нижче 50 він закривається. До настроювання каскаду треба поставитися особливо уважно, про що піде мова далі. Якщо ваша АТС сигналізує про передачу номери зміною полярності лінії, то цей вузол потребує доопрацювання, так як необхідно сформувати фронт при зміні полярності.

Для звукового супроводу натискання кнопок і визначення номера служить звуковою випромінювач НА1 з вбудованим автогенератором на робоче напругу 6 або 12 Ст. В режимі визначення номера двійковий код кожного декодованого символу DTMF з'являється на висновках D1-D4 мікросхеми DD1 і супроводжується високим рівнем на вихід DSO тієї ж мікросхеми При цьому відкривається транзистор VT2, який включає звуковий сигнал і забезпечує низький логічний рівень на виводі RA4 контролера DD2.

У режимі визначення номера цей висновок сконфігурований як вхід і по ньому стробируется код на входах RA0 - RA3 контролера. У відсутність сигналу на DTMF вході декодера DD1 на його виході DSO присутній низький рівень, транзистор VT2 закритий, а вхід RA4 контролера DD2 через внутрішні ланцюги випромінювача НА1 підключений до ланцюга живлення. В інших режимах декодер DD1 вимкнений, висновок RA4 сконфігурований як вихід з відкритим стоком, який управляє харчуванням НА1.

При покладеній трубці елементи R10, VD5 забезпечують впадає в ланцюг живлення струм, достатній для компенсації струму споживання в режимі очікування і підзарядки елементів живлення. Стабілітрон VD6 служить для захисту ланцюгів живлення від можливого перевищення напруги. Бажано використовувати стабілітрон з різким перепадом характеристики, від цього залежить загальне споживання.

Для живлення індикатора напругою 1,2...1,7 служить резистор R19. Під бирая його в невеликих межах, можна управляти контрастністю індикатора Завантаження індикатора проводиться з виходів RB2 і RB3. Дільники напруги R13R14 і R15R18 служать для узгодження рівнів сигналів між виходами RB2 і RB3 (DD2) і входами DI і CLK індикатора.

При включенні живлення ініціалізуються регістри контролера DD2 і годин DD3. Харчування мікросхеми DD1 вимкнено з-за низького рівня на виході RB1 DD2, таймер DD3 налаштовується на інтервал 7 с. Після цього пристрій переходить в режим режим, контролер виконує команду SLEER Він може бути активований одним з наступних подій: фронтом на вході RB0 (вхідний або вихідний дзвінок), зміною стану входів RB4, RB5 (натискання кнопок або імпульсу на виводі INT DD3).

Кожні 7 с на виведенні INT мікросхеми DD3 з'являється імпульс, за яким контролер зчитує регістри хвилин і годин з мікросхеми DD3 і завантажує цими значеннями індикатор HG1. Це запобігає автоматичне перемикання індикатора в режим вимірювання. У режимі очікування відношення часу активності контролера до часу знаходження в SLEEP одно 1:7.

При вхідному виклику перед видачею першого сигналу виклику АТС займає лінію і знижує напругу до 43...45 Ст. Транзистор VT1 закривається, контролер DD2 активується, включає живлення мікросхеми DD1 і опитує виходи декодера D1 - D3 і DSO. Прийнятий код записується в буферну пам'ять, аналізується, і якщо перший символ - А або D, приймається рішення, що зто вхідний дзвінок з передачею номери. Інформація про номер, час і дату дзвінка упаковується, записується в пам'ять і виводиться на індикатор. По отриманні стопового символу З харчування мікросхеми DD1 вимикається.

Якщо перший символ відмінний від зазначених вище, вважається, що це вихідний виклик. У цьому випадку кожен прийнятий код подовжує час включення живлення DD1 ще на 7 с. Таким чином, при вихідному виклику коди клавіш паралельно підключеного апарату відображаються на індикаторі. Природно, апарат повинен працювати в тональному (тобто DTMF) режимі.

У режимі перегляду пам'яті вхідних дзвінків натискання кнопок активує контролер, з пам'яті вибирається інформація про номер, час і дату дзвінка, розпаковується і виводиться на індикатор. Дві секунди висвічується номер, наступні дві секунди відображається дата і час дзвінка. Цей цикл повторюється тричі, потім пристрій переходить в режим очікування. Режими вхідного і вихідного викликів мають пріоритет над режимом перегляду пам'яті.

Пристрій зібрано на друкованій платі (рис. 2). Перед установкою компонентів необхідно розпаяти шість перемичок. Резистори, діоди і міст VD3 встановлюють вертикально. Відстань між центрами отворів для резисторів і діодів - 2,5 мм. Міст VD3 можна замінити на імпортний RB157, а транзистори КП501 - на КР1014КТ1. Можна застосувати SMD компоненти, які розпаюють на контактні майданчики. Мікросхему DD1 можна замінити на КТ3170, КТ9170, КТ9270, КТ8870 (перші літери можуть бути різними) або вітчизняну КР1008ВЖ18.

Для налагодження пристрою необхідні звичайний мультиметр (бажано цифровій), осцилограф з вхідним опором 10 МОм, регульований джерело постійного напруги до 60 В, який замінить нам телефонну лінію, і батарея елементів або акумуляторів напругою 4,5...4,8 В для живлення пристрою. Також знадобиться тонка Викрутка з ізольованою ручкою для регулювання підлаштування резисторів.

При правильній збірці з справних компонентів пристрій починає працювати відразу, і необхідно лише встановити тактову частоту контролера DD2 резистором R5, настроїти вхідний компаратор резистором R8 і перевірити споживаний струм. Перед налагодженням потрібно встановити движки підстроєних резисторів в середнє положення.

Не МОЖНА підключати приставку до телефонної лінії, попередньо не встановивши елементи живлення!

Включаємо живлення 4,5...4,8 через міліамперметр, встановлений на межу вимірювання 5 мА постійного струму. Приблизно через 5 з приставка перейде в режим режим (на індикаторі з'являться час і лічильник дзвінків), струм споживання при цьому не повинен перевищувати 30 мкА. Якщо струм більше або приставка не переходить у режим режим, необхідно перевірити стабілітрон VD6, якість монтажу і прошивку контролера. У режимі очікування через кожні 7 з контролер регенерує індикатор, тому струм короткочасно збільшується до 100 мкА.

Включаємо живлення безпосередньо (без миллиамперметра). До висновку 15 контролера DD2 підключаємо щуп осцилографа і, утримуючи одну з кнопок, встановлюємо період імпульсів 15 мкс підлаштування резистором R5. Відпускаємо кнопку. Тактова частота некритична і може бути встановлена з похибкою, що визначається розгорткою осцилографа

Не вимикаючи живлення, підключаємо висновки діодного моста VD3 (призначені для телефонної лінії) до регульованого джерела 60 В, а щуп осцилографа - к висновку 6 контролера DD2. При напрузі 50 В встановлюємо підлаштування резистором R8 рівень напруги на виводі 6 не більше 0,3 Ст. Зменшуємо напругу до 46, при це рівень на виводі 6 повинен бути не менше 3 Ст. Інакше необхідно перевірити стабілітрон VD4 і транзистор VT1.

Встановлюємо напругу 60 В, а в розрив одного з проводів вмикаємо міліамперметр. Приставка повинна знаходитися в черговому режимі, при цьому струм в вимірюваної ланцюга не повинен перевищувати 100 мкА.

Тепер приставку можна підключити до реальної телефонної лінії і перевірити роботу декодера DD1. Підніміть трубку на телефонному апараті, включеному в тональний режим. Дисплей очиститься, у вас є 7 з, щоб встигнути набрати довільну послідовність цифр. Вони повинні відображатися на дисплеї, а кожне натискання супроводжуватися звуковим сигналом.

Якщо індикація відсутня, необхідно перевірити правильність монтажу, справність декодера і кварцового резонатора ZQ1 . Пам'ятаєте, що живлення декодера залишається включеним не більш 7 с після останнього прийнятого сигналу DTMF. Можливо, не будуть відображатися деякі цифри. Таке зазвичай відбувається з телефонними апаратами китайського виробництва та іншими апаратами, сильно навантажуючими телефонну лінію. У цьому випадку виміряйте напругу в телефонній лінії при знятій трубці. Якщо воно нижче 8 В, увімкніть послідовно з висновками телефонного апарата резистори по 100 Ом і потужністю не менше 0,5 Вт. На як це ніяк не відіб'ється, але допоможе позбутися від проблеми.

Правильна настройка компаратора і відображення цифр при наборі з паралельного апарату є гарантією визначення номера при вхідному виклику.

Останній етап налагодження - підстроювання точності ходу годинника підлаштування конденсатор С6. Зробіть це в процесі експлуатації. Якщо годинник "йдуть", злегка поверніть ротор С6. Повторюйте цю операцію, поки не досягнете точного ходу годинника. Застосовуйте діелектричну викрутку, так як внесення ємності в ланцюг автогенератора мікросхеми DD3 може призвести до збоїв у його роботі.

Застосовуються мікросхеми чутливі до статичної електрики, тому користуйтеся ізольованим від мережі "заземленим" паяльником потужністю не більш 40 Вт. Всі операції з монтажу виконуйте при відключеному живленні.

Кілька слів про те, як управляти приставкою. Все гранично просто. Кнопка SB1 "PREV" гортає пам'ять в бік більш ранніх дзвінків, а кнопка SB2 "NEXT" - бік більш пізніх. Для входу в режим перегляду пам'яті перше натискання повинно бути не менше 0,5 с. Приставка покаже номер, дату і час дзвінка, а після цього автоматично перейде в режим очікування.

Для входу в режим установки годин натисніть одночасно обидві кнопки на час не менше 0,5 с. На індикаторі зліва направо з'являться значення дати, місяця, годин і хвилин. Для вибору значення використовуйте кнопку SB2, для установки - SB1. Для виходу з режиму установки натисніть кнопку SB2 і утримуйте її не менше 0,5 с, а за сигналом точного часу - відпустіть.

Ніяких інших установок не вимагається

На рис. 3 показано пристрій в зібраному вигляді.

Програмний код контролера.

Режим програмування - з вимкненим сторожовим таймером WDT, включеним таймером PWRT і осцилятором RС.

Автор: Ст. Бачул, р. Кишинів, Молдова