Розробка мікропроцесорної системи охорони офісу
Пристрої захисту офісу. Аналіз мікропроцесорних охоронних датчиків. Апаратна частина та принципова схема. Вибір типу контролера, наведення його технічних характеристик. Підбір елементів схеми, калькуляція виробу. Вибір середовища та мови програмування.
Рубрика | Коммуникации, связь, цифровые приборы и радиоэлектроника |
Вид | курсовая работа |
Язык | украинский |
Дата добавления | 15.02.2012 |
Размер файла | 982,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
КУРСОВА РОБОТА
З курсу "Архітектура та програмування мікроконтролерів"
Тема: "Розробка мікропроцесорної системи охорони офісу"
Черкаси 2008
Технічне завдання
- Вступ
- Розділ 1. Огляд пристроїв захисту офісу
- 1.1 Аналіз мікропроцесорних охоронних датчиків
- 1.2 Існуючі охоронні датчики
- 1.2.1 Датчики розбиття скла
- 1.2.2 Фотоелектричні датчики
- Розділ 2. Розробка апаратної частини
- 2.1 Розробка принципової схеми
- 2.2 Вибір типу контролера. Обґрунтування вибору
- 2.3 Наведення технічних характеристик мікроконтролера PIC16F628
- 2.4 Підбір елементів схеми
- 2.5 Калькуляція виробу
- Розділ 3. Розробка програмної частини
- 3.1 Вибір середовища програмування
- 3.2 Вибір мови програмування
- Висновки
- Список використаних джерел
- Додатки
Вступ
Головне призначення охоронної системи (охоронній сигналізації) полягає в оперативному і гарантованому сповіщенні господарів або правоохоронні служби про несанкціоноване проникнення в приміщення, що охороняються. Рішення даної задачі можливе тільки при грамотному оснащенні об'єкту охорони сучасними високонадійними технічними засобами охоронної сигналізації.
Охоронна сигналізація може бути автономною - мета такої сигналізації відлякати зловмисників і оповістити сусідів із застосуванням могутніх сирен. Але найбільший ефект від охоронної сигналізації досягається при підключенні її на пульт позавідомчої охорони або на пульт централізованого спостереження приватного охоронного підприємства. При використанні для передачі тривожних повідомлень GSM-систем можлива передача тривожних повідомлень на стільникові телефони власників об'єкту, що охороняється. Системи охоронної сигналізації своєчасно оповістять Вас про несанкціоноване проникнення на територію, що охороняється, і повідомлять про аварійні ситуації. Крім того, при проникненні всередину Вашого житла або офісу система може повідомити Вас про тривогу телефонним дзвінком на вказаний заздалегідь номер. Для знімання інформації служать датчики (інфрачервоні і радіохвильові датчики руху, магнітні датчики відкриття дверей і вікон, акустичні датчики розбиття скла, датчики удару і т.д.), а базовим блоком - контрольні панелі, на які зводиться вся інформація від датчиків. Якщо у Вас є домашня тварина, датчики руху можна налаштувати так, щоб вони не реагували на переміщення Вашого вихованця, але завжди надійно спрацьовували на появу людини. Правильно складена специфікація на сучасному комбінованому устаткуванні допоможе передбачити всі тривожні ситуації об'єкту, що охороняється, і забезпечить Ваше майно і персонал. Система за допомогою спеціальних датчиків може відстежити протікання води і витік газу, і за заздалегідь введеною програмою віддати команду виконавчим пристроям комплексної системи управління і охорони на виконання тієї або іншої дії (перекрити кран, включити сирену і т.п.). Системи периметрової сигналізації беруть під охорону не тільки приміщення, але і прилеглу територію по периметру.
Цифрові комп'ютерні системи виводять на екран графічний план об'єкту, що охороняється, і стан кожного датчика. З комп'ютера можна також ставити систему на охорону і знімати з режиму охорону. Охоронна сигналізація в комплексі з системами теленагляду створять надійний щит від зловмисників і форс-мажорних ситуацій. Системи будь-якої складності будуються на базі одних і тих же технічних пристроїв. При рішенні технічних завдань охорони в першу чергу необхідно вибрати основні параметри пристроїв, які забезпечать достатню надійність виконання покладених на них функцій. Система охоронна сигналізація фіксують факт несанкціонованого доступу на територію, що охороняється, передають сигнал тривоги, наприклад, на пульт охорони і включають виконуючі пристрої. Система охоронна сигналізація включають: датчики, пульт-концентратор, виконуючі пристрої. Особливість датчиків для систем типу охоронна сигналізація полягає в тому, що вони реєструють, в основному, неелектричні величини. Вимірювання неелектричних величин - складне завдання і при цьому датчики повинні забезпечувати високу надійність і достовірність контролю. Датчик - чутливий елемент, що перетворює контрольований параметр в електричний сигнал. Надійність датчиків забезпечується, в основному, цифровими методами обробки сигналів. Датчики об'єднуються в зони. Під зоною розуміється один або декілька датчиків, що охороняють певний об'єкт або ділянку об'єкту. У системах охоронної сигналізації використовуються датчики наступних типів: пасивні інфрачервоні датчики руху; датчики розбиття скла; активні інфрачервоні датчики руху і присутності; фотоелектричні датчики; мікрохвильові датчики; ультразвукові датчики; вібро-датчики; датчики температури; датчики наявності пари і газів; магнітні (герконові) датчики; шлейфи.
Розділ 1. Огляд пристроїв захисту офісу
1.1 Аналіз мікропроцесорних охоронних датчиків
Системи охоронної сигналізації призначені для визначення факту несанкціонованого проникнення на територію, що охороняється, видачі сигналу тривоги на пульт охорони і включення виконавчих пристроїв (сирени, освітлення і т.д.). Системи охоронно-пожежної сигналізації включають контрольні панелі, оповіщувачі (датчики і детектори), виконавчі пристрої, пристрої сповіщення (сирени, дзвінки і т.п.) і джерела живлення.
Контрольна панель (приймально-контрольний прилад) - це центральний пристрій системи охоронної сигналізації, виконане на базі мікроконтролера, програма якого визначає всі функції системи. Контрольна панель може підключатися до комп'ютера для обробки і реєстрації сигналів тривоги, автоматичного аналізу стану датчиків і функціонування всієї системи. Контрольні панелі управляють виконавчими пристроями: включають сирену, прожектор, додзвонюються по телефонній лінії по заданому номеру.
Для реєстрації змін контрольованого параметра в системах охоронної сигналізації використовуються різні оповіщувачі. Оповіщувач - це пристрій, що формує певний сигнал про зміну того або іншого контрольованого параметра навколишнього середовища. Оповіщувач можна умовно розділити на датчики і детектори. Тут під датчиками розумітимемо оповіщувачі, перетворюючі фізичні величини і характеристики (наприклад, тепло, світло, звук і т.п.) в електричний сигнал. Детекторами ж називатимемо оповіщувачі, включаючи в свій склад датчики, схему обробки сигналів і схему ухвалення рішення.
Прості оповіщувачі (датчики) виробляють аналогову обробку сигналів, що не завжди забезпечує необхідну надійність їх роботи. Підвищення надійності роботи датчиків забезпечується застосуванням цифрових методів обробки сигналів. За принципом дії оповіщувачі можна розділити на наступні типи:
електроконтакти (фольга, дріт);
магнітоконтактні;
вібродатчики;
ультразвукові;
радіохвильові;
фотоелектричні;
детектори битого скла;
пасивні і активні інфрачервоні детектори руху;
комбіновані.
Датчики і детектори дозволяють контролювати частину об'єкту (об'їм, площина і т.п.), що охороняється, іменовану зоною.
Датчики електроконтактів призначені для реєстрації пошкоджень і руйнування конструкцій, на яких вони закріплені: скляного полотна вікон, дверей, стіклоблоків і т.д. в опалювальних і не опалювальних приміщеннях. Вони виготовляються з тонкої алюмінієвої фольги товщиною від 0, 008 до 0, 04 мм і шириною не більш 12, 5 мм. Фольга має клейовий шар. Іноді для тих же цілей замість фольги використовують тонкий дріт.
Магнітоконтактні датчики призначені для реєстрації відкриття дверей і вікон, на яких вони встановлені. Датчики бувають двох видів: для зовнішньої і скритної установки. Вони виконані на основі герконів, контакти яких замикаються або розмикаються при наближенні (видаленні) постійного магніта. Підключаються такі датчики до охоронних сигналізацій за допомогою дротяного шлейфу.
Вібродатчики призначені для виявлення навмисного пошкодження різних будівельних конструкцій: бетонних стін і перекриттів, цегляних стін, дерев'яних (рами і двері) і стельових покриттів, а також сейфів і металевих шаф. Принцип дії вібродатчиків заснований на п'єзоефекті або ефекті електромагнітної індукції, коли постійний магніт переміщається уздовж обмотки котушки і тим самим наводить в ній змінний струм. У вітчизняній і зарубіжній літературі залежно від технічної реалізації такі датчики називають електромагнітними, магніторезонансними.
Ультразвукові детектори призначені для охорони закритих приміщень і характеризуються високою чутливістю і низькою перешкодостійкістю. Дія їх заснована на інтерференції ультразвукових коливань. До складу ультразвукового детектора входять випромінювач і приймач. При закритих вікнах і дверях простір, контрольований детектором, обмежений, і в точці розташування приймача формується стійка інтерференційна картина. При проникненні якого-небудь об'єкту в приміщення стійкість інтерференційної картини порушується і формується сигнал тривоги.
Радіохвильові детектори призначені для реєстрації руху в контрольованій зоні. Принцип дії заснований на випромінюванні сигналу надвисокої частоти і прийомі відображеного сигналу, частота якого змінюється при русі порушника. Ці прилади використовуються для охорони закритих приміщень і периметрів.
Фотоелектричні датчики призначені для охорони внутрішнього і зовнішнього периметрів, безконтактного блокування прольотів, дверей, коридорів і т.п. Вони складаються з передавача і приймача, що рознесе уздовж лінії охорони, і використовують сигнал інфрачервоного діапазону з довжиною хвилі порядку 1 мкм.
Детектори битого скла призначені для реєстрації навмисного руйнування скляних конструкцій: вікон, вітрин і ін. Вони реагують на звук скла, що б'ється, і удару об скло, а також аналізують спектр звукових шумів в приміщенні, дозволяють безконтактно контролювати цілісність скла розміром більше 20х20 див.
мікропроцесорна система охорона офіс
1.2 Існуючі охоронні датчики
1.2.1 Датчики розбиття скла
Рисунок 1.1 - Датчик розбиття скла
Датчики розбиття скла (рис.1.1) реагують на дзвін скла, що б'ється. Найбільше| довершені моделі аналізують спектр звукових шумів в приміщенні. Якщо спектр шуму містить складову, співпадаючу із спектром ушкоджуваного скла, то датчик спрацьовує. Один такий датчик може охороняти скляні вікна, вітрини і т.п., площею до 10 м. Двохпорогові датчики реєструють звук удару по склу і дзвін розбиваного скла. Для індикації тривоги такий датчик повинен зареєструвати два відповідні сигнали з інтервалом не більше 150 мс. Чутливість датчиків розбиття скла регулюється із застосуванням імітатора розбивання скла
1.2.2 Фотоелектричні датчики
Фотоелектричні датчики випромінюють і приймають відбитий сигнал інфрачервоного випромінювання з довжиною хвилі близько 1 мкм|. Вони використовуються у складі систем захисту внутрішнього і зовнішнього периметра для безконтактного блокування прольотів, дверей, ліфтів, отворів, коридорів і т.п. Їх відрізняє висока стійкість і надійність роботи Фотоелектричні датчики складаються з двох частин - передавача і приймача. Вони розносяться уздовж лінії охорони.
Між ними проходить система модульованих інфрачервоних променів (рис.1.2).
Рисунок 1.2 - Фотоелектричні датчики
Датчики цього типа спрацьовують при спробі перетнути систему променів, відрізняються високою стійкістю і надійністю роботи. На рис.3 показані випадки перетини бар'єру, які розрізняються фотоелектричним датчиком. Найбільше| довершені моделі фотоелектричних датчиків можуть працювати автономно. Для цього вони оснащуються сонячними елементами, які заряджають акумуляторні батареї датчиків.
Рисунок 1.3 - Варіанти спрацьовування бар'єрних датчиків
Розділ 2. Розробка апаратної частини
Для охорони офісу розробимо охоронний пристрій на базі мікропроцесора PIC16F628 з використанням датчиків розбиття скла, та фотоелектричних датчиків.
Рис.2.1 Узагальнений вигляд розроблюваного пристрою.
При спрацьовуванні сигналізації включається звуковий сигнал. Пристрій має вбудоване джерело живлення і в аварійній ситуації є енергонезалежним. Вся схема пристрою разом із звуковим сигналом виконані в одному корпусі.
Працює пристрій з двома лініями від датчиків:
а) фотоелектричний - включає звуковий сигнал із затримкою 6 секунд;
б) датчик розбиття вікон - включення звукового сигналу миттєво.
Схема пристою забезпечує після включення режиму охорони затримку в 12 секунд для виходу з приміщення і 6 секунд при вході - для відключення сигналізації до спрацьовування звукового сигналу.
У схемі сигналізації є світлодіодна індикація режиму спрацьовування датчиків, що є показником роботи.
Блок охорони розміщується в прихованому місці, а з'єднання з датчиками краще виконувати перевитими між собою дротами, що виключить вплив зовнішніх перешкод.
2.1 Розробка принципової схеми
Перш за все розробимо принципову схему розроблюваного пристрою. Зобразимо для початку дану схему за допомогою графічного редактора.
В даному випадку принципова схема дає загальне представлення про електрообладнання механізму пристрою, відображає роботу системи автоматичного управління механізмом, служить джерелом для створення схем з'єднань та підключень, розробки конструктивних вузлів та оформлення переліку елементів.
Рис.2.2 Попередньо розроблена узагальнена принципова схема пристрою.
2.2 Вибір типу контролера. Обґрунтування вибору
Для даного проекту будемо використовувати мікроконтролер PIC16F628. Вибір зроблено саме такий тому, що вищезгаданий мікроконтролер обладнаний універсальним синхронно/асинхронним прийомо-передавачем - USART. Цей апаратний пристрій в МК дозволяє приймати і передавати інформацію по протоколу RS-232 з відповідним перетворювачем рівнів +/ - 12В, звичайно. Можна, наприклад, підключити декілька датчиків температури типу DS18xx, архівувати значення і передавати дані в PC по запиту останнього, можна реалізувати систему пропорційного (дискретного) управління з передачею команд через USART, загалом придумати можна будь-яку річ де потрібна передача та прийом даних по 2-3 дротам. Дана властивість буде корисною та необхідною для реалізації проекту захисту приміщення від несанкціонованого доступу. За допомогою USART можна також здійснювати управління пристроєм та передавати дані на відстані.
2.3 Наведення технічних характеристик мікроконтролера PIC16F628
Високопродуктивний RISC-процесор. Всього 35 простих для вивчення односкладових інструкції. Швидкість роботи: тактова частота до 20 Мгц, мінімальна тривалість такту 200 нс.
Організація пам'яті мікроконтролера наведена в таблиці 2.1.
Таблиця 2.1 Організація пам'яті мікро контролера PIC16F628.
FLASH |
ОЗП |
ПЗП |
||
PIC16F628 |
2048 x 14 |
224 x 8 |
128 x 8 |
16 апаратних регістрів спеціального призначення, 8 - рівневий апаратний стек, прямий, непрямий і відносний режими адресації для даних і інструкцій, механізм переривань.
Периферія:
Timer0 - 8-розрядний таймер/лічильник реального часу з 8-розрядним попереднім дільником;
Timer1 - 16-розрядний таймер/лічильник реального часу із зовнішнім входом;
Timer2 - 8-розрядний таймер/лічильник реального часу з 8-розрядним регістром періоду, попереднім дільником і вихідним дільником;
Аналоговий модуль компаратора:
Два аналогові компаратори
Програмований модуль вбудованого джерела опорної напруги (VREF)
Програмований мультиплексорний вхід від входів пристрою і внутрішнього джерела опорної напруги
Виходи компаратора можуть бути сигнальними виходами
15 ліній введення/виведення з індивідуальним заданням напряму.
Високий вхідний та вихідний струм для безпосереднього управління світлодіодними індикаторами.
Універсальний синхронно-асинхронний прийомопередатчик (USART/SCI).16 байт загальної пам'яті.
Модуль захвату /компаратора /ШИМ:
захоплення 16 розрядів, максимальна роздільча здатність 12,5 нс;
порівняння 16 розрядів, максимальна роздільча здатність 200 нс;
ШИМ, максимальна роздільча здатність 10 розрядів.
Рис.2.3 Схема мікроконтролера серії PIC16F62Х.
Особливості ядра:
Скидання при включенні живлення (POR);
Таймер включення живлення (PWRT) і таймер запуску генератора (OST)
Скидання по падінню напруги живлення (BOD)
Сторожовий таймер (WDT) з власним вбудованим RC-генератором для підвищення надійності роботи;
Програмований захист коду
Режим економії енергії (SLEEP)
Програмування на платні через послідовний порт (з використанням двох виводів)
Чотири програмованих користувачем ідентифікатора
Низька напруга програмування;
Multiplexed MCLR-pin
Programmable weak pull-ups on PORTB
Пробудження з режиму SLEEP по зміні стану виводів;
Внутрішні резистори до шини живлення на лініях введення/виведення;
Внутрішній резистор на лінії MCLR;
Вибирані режими тактового генератора:
FLASH конфігураційні біти для установки режимів генератора;
Двочастотний INTRC з низьким енергоспоживанням;
EXTRC: зовнішній недорогий RC-генератор;
XT: стандартний генератор на кварцевому резонаторі;
LP: економічний, низькочастотний генератор на кварцевому резонаторі.
HS: високочастотний генератор на кварцевому резонаторі.
ЄС: вхід для підключення зовнішнього генератора.
Технологія КМОП:
Економічна, високошвидкісна технологія КМОП FLASH
Повністю статична архітектура
Широкий робочий діапазон напруг живлення:
PIC16F628 - від 3,0В до 5,5В
Низьке споживання енергії: - < 2 мА при 5,0 В, 4,0 Мгц
15 мкА (типове значення) при 3 В, 32 кГц
< 1,0 мкА (типове значення) в режимі STANDBY при 3В
Рис.2.4 Архітектура мікроконтролера PIC16F628.
Середня роздрібна ціна на мікроконтролер PIC16F628 складає порядку 20 - 25 $.
2.4 Підбір елементів схеми
В розробленій схемі були використані такі компоненти:
- мікроконтролер PIC16F628
- резистор
- світлодіод
- конденсатор
- стабілізатор KPEH5A
- датчики
- стабілітрон
- гучномовець
Зберемо розроблену схему за допомогою програмного пакету PROTEUS VSM. Сама схема показана на рис.2.5 який міститься у додатках.
2.5 Калькуляція виробу
Враховуючи ціни на всі складові елементи пристрою та їх кількість приблизна ціна проекту складає 483 долара.
Специфікація та калькуляція елементів схеми.
Елемент |
Кількість |
Ціна за шт.,$ |
Ціна комплекту, $ |
|
Мікроконтролер PIC16F628 |
1 |
20 |
20 |
|
Резистор |
10 |
0,2 |
3 |
|
Світлодіод |
5 |
2 |
9 |
|
Конденсатор |
3 |
50 |
155 |
|
Стабілізатор KPEH5A |
1 |
5,5 |
5 |
|
Датчик |
4 |
70 |
286 |
|
Динамік |
1 |
4 |
5 |
|
Всього: |
483 |
Розділ 3. Розробка програмної частини
Розробка схеми здійснювалась за допомогою програмного продукту PROTEUS VSM. Даний програмний продукт дозволяє малювати схеми і виконує наступні функції: автоматичне розведення доріжок та автоматичне розміщення елементів схеми на платі.
Програма ISIS призначена для виконання принципових схем будь-якої складності та подальшої їх перевірки за допомогою емулятора, який входить до складу програми. Емулятор роботи схеми має власну бібліотеку елементів (які використовуються для малювання) до складу якої входить велика кількість елементів, включаючи мікроконтролери фірми AVR Atmel та ін. Програмний емулятор дозволяє працювати з будь-якими мікропроцесорними системами.
Симулятор дає можливість "заглянути всередину" мікроконтролера, зіставивши форму і характер сигналів на його виходах з ходом виконання програми і змінами стану внутрішніх регістрів. До цих регістрів моделі (на відміну від реальної мікросхеми) завжди є доступ.
Можливість перевіряти роботу мікроконтролерів всіх популярних сімейств в реальному масштабі часу і у взаємодії з моделями реальних джерел сигналу і навантажень вигідно відрізняє ISIS від простих симуляторів, наявних в системах розробки програм і часто дозволяючих лише стежити за ходом покрокового виконання програми.
Друга частина пакету PROTEUS VSM - програма ARES - автоматизує розробку друкарської платні і здатна прийняти як початкові дані принципову схему пристрою, перевіреного і відлагодженого за допомогою програми ISIS.
3.1 Вибір середовища програмування
Для відлагодження роботи схеми будемо використовувати середовище MPASM. MPASM - це безкоштовна, універсальна програма компіляції вихідного тексту програми на мові асемблер для мікроконтролерів PICmicro компанії Microchip Technology Incorporated. MPASM забезпечує універсальний інструмент розробки програм для 12/14/16 - розрядних мікроконтролерів PICmicro.
MPASM використовується для генерації абсолютного коду, який може бути завантажений безпосередньо в мікроконтролер. Абсолютний код - це режим роботи програми MPASM по замовчуванню. При компіляції вихідного файлу в цьому режимі, всі значення повинні бути у вихідному файлі. Якщо компіляція виконана без помилок, то буде створений hex файл коду програми, який можна використовувати для безпосереднього програмування мікроконтролера.
Вибір середовища в програмному продукті PROTEUS VSM.
Рис.3.1 Вибір програми для компіляції.
Отже, перевагами MPASM є підтримка всіх інструкцій мікроконтролерів PICmicro, віконний інтерфейс, система директив, підтримка макросів та сумісність з MPLAB IDE.
3.2 Вибір мови програмування
Так як розробка схеми здійснювалась за допомогою програмного продукту PROTEUS VSM, вибір мови програмування здійснився автоматично. Програма розроблялась на мові програмування асемблер.
Асемблер - це мова програмування низького рівня. Мова Асемблера об'єднує в собі переваги мови машинних команд і деякі риси мов високого рівня. Асемблер забезпечує можливість застосування символічних імен в початковій програмі і позбавляє програміста від утомливої праці (неминучої при програмуванні на мові машинних команд) по розподілу пам'яті комп'ютера для команд, змінних і констант.
Асемблер дозволяє також гнучко і повно використовувати технічні можливості комп'ютера, як і мова машинних команд. Транслятор початкових програм в Асемблері простіший за транслятор, потрібний для мови програмування високого рівня. На Асемблері можна написати таку ж ефективну за розміром і часом виконання програму, як і програму на мові машинних команд. Ця властивість відсутня у мов високого рівня. Цю мову часто застосовують для програмування систем реального часу, технологічних процесів і устаткування, забезпечення роботи інформаційно-вимірювальних комплексів. До таких систем звичайно пред'являються високі вимоги за об'ємом займаної машинної пам'яті. Часто мова Асемблера доповнюється засобами формування макрокоманд, кожна з яких еквівалентна цілій групі машинних команд. Таку мову називають мовою макроасемблера. Застосування мак "будівельних" блоків і наближає мову Асемблера до мови високого рівня. Асемблер машинно-залежна мова, тобто він відображає особливості архітектури конкретного типа комп'ютера. Початкова програма, написана на асемблері, складається з одного або декількох початкових модулів, а кожен модуль - з операторів.
Нижче показаний процес вибору hex-файлу для мікроконтролера.
Рис.3.2 Вибір прошивки для PIC16F628.
Текст програми для мікроконтролера PIC16F628 наведений в додатках.
Наведений код є програмною реалізацією пристрою захисту від несанкціонованого доступу. При порушенні шлейфу, тобто при замиканні одного із використаних в схемі ключів, спрацьовує звукова сигналізація за допомогою гучномовця та світлова сигналізація, реалізована за допомогою світлодіодів різного кольору світіння.
Висновки
При виконанні даної курсової роботи було розроблено мікропроцесорний пристрій охорони офісу. Принципова схема була побудована на базі мікрконтролера PIC16F628 та з використанням датчиків розбиття скла та фотоелектричних. Розроблений пристрій являється програмно-апаратним засобом охорони офісу та є реалізацією технологічних методів захисту інформації.
Головною особливістю і перевагою мікрконтролера PIC16F628 є наявність у його складі універсального синхронно/асинхронного прийомо-передавача - USART. Цей апаратний пристрій в мікро контролері дозволяє приймати і передавати інформацію по протоколу RS-232 (інтерфейс COM - порту). PIC16F628 - це високопродуктивний RISC-процесор. Необхідно всього 35 простих для вивчення односкладових інструкції. Швидкість роботи контролера: тактова частота до 20 Мгц, мінімальна тривалість такту 200 нс.
Даний звіт включає в себе принципову та загальну схеми розробленого пристрою, вибір мови програмування прошивки для мікро контролера, текст програми, калькуляцію проекту.
Список використаних джерел
1. http://auction.ua/item/1147312. htm
2. http://gsm-c45. narod.ru/PIC16F628A.html
3. http://pro-radio.ru/controllers/3864/
4. http://www.compitech.ru/html. cgi/arhiv/03_04/stat_120. htm
5. http://www.rlocman.ru/shem/search.html? q=PIC16F628A
6. http://www.gsm-storozh.com/1. htm
7. Вовків А. УЗ датчик охоронної сигналізації. - Радіо, 2003 № 5, с.
8. www.itsf.ru/bespr. htm
9. Козаченко В., Хмельовськая Л. Кодовий замок // Радіо. - 1990. - №8
10. Марченко Д.Н. Просте економне охоронне устройство //. - №9.
11. Нечаєв І. ІК-локатор для сліпих. - Радіо, 1989 N10, С.84
12. ("Радіомир" №9/2004, с.38-44.
13. Вілл В. Інфрачервоний сторож. - Радіо, 1996 № 1, с.52-54.
14. Вілл В. Ультразвукий автосторож. - Радіо, 1996 № 4, с.43-49.
15. Виноград Ю. Электронная охрана. - М.: СИМВОЛ-Р|, 1996
16. Радіо, 1998 N7, С.42
17. Магнітометричний пристрій для охоронної сигналізації // Патент РФ № 2075905 від 20.03.96
Додатки
Додаток 1. Основні технічні характеристики мікроконтролера PIC16F628
Додаток 2
Рис.2.5 Схема розробленого пристрою.
Додаток 3. програма для мікроконтролера PIC16F628A
includep16f628. inc
__config _WDT_ON & _MCLRE_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT & _LVP_OFF & _BODEN_OFF
; программа для частоты процессора 1 МГц!!!
cblock 0x20
dsdat0
dsdat1
dsdat2
dsdat3
dsdat4
dsdat5
dsdat6
dsdat7
var_01
var_02
var_03
var_04
var_05
var_06
_4del
_ms_del
endc
DQequ4
Bp1equ2
Bp2equ3
; - ------
org 0x00
movlwb'00000111'
movwfCMCON; компараторы не используются
bcfPORTA, 1;!!!!!!!!!!!!!
bcf STATUS, RP1
bsf STATUS, RP0; bank 1
movlwb'11110001'
movwfTRISA
movlwb'00000001'
movwfTRISB
movlwb'01111010'
movwfOPTION_REG
bcfSTATUS, RP0; bank 0
movlwd'50'
movwfvar_01
start_test:
btfscPORTB, 0
gotod_start
movlwd'100'
call _ms_delay
decfszvar_01, f
gotostart_test
call_clean_eeprom; - очистить EEPROM
movlwd'114'
movwfvar_01
movlwd'31'
movwfvar_02
movlwd'2'
movwfvar_03
call_sound
movlwd'67'
call_ms_delay
call_sound
d_start:
; задержка ~72 мс
sleep
; передаём ипульс сброса
bcfPORTA, DQ
bsfSTATUS, RP0; bank 1
bcfTRISA, DQ; DQ - выход
bcfSTATUS, RP0; bank 0
movlwd'124'; задержка 502 мкс
call_4delay
bsfSTATUS, RP0; bank 1
bsfTRISA, DQ; DQ - вход
bcfSTATUS, RP0; bank 0
movlwd'16'; задержка 70 мкс
call _4delay
btfscPORTA, DQ; на DQ низкий уровень?
gotod_start; нет - начать с начала
movlwd'106'; задержка 430 мкс
call_4delay
btfssPORTA, DQ; на DQ высокий уровень?
gotod_start; нет - начать с начала
; передаём команду
movlw0x33; код команды
callsend_byte
movlw dsdat0
movwf FSR
movlwd'8'
movwfvar_03
_next_rc_byte:
callreceive_byte
movwfINDF
incfFSR, f
decfszvar_03, f
goto_next_rc_byte
movfdsdat0, f
btfscSTATUS, Z
goto_error_data
; вычисляем CRC
clrfvar_04
movlwd'7'
movwf var_01
movlw dsdat0
movwf FSR
Next_byte:
movlw 0x08
movwf var_02
movfINDF, w
movwf var_03
DoCRC_Loop:
xorwf var_04, w
movwf var_05
rrf var_05, w
movf var_04, w
btfsc STATUS, C
xorlw b'00011000'
movwf var_05
rrf var_05, w
movwf var_04
bcf STATUS, C
rrf var_03, f
movf var_03, w
decfsz var_02, f
goto DoCRC_Loop
incf FSR, f
decfszvar_01, f
goto Next_byte
; в переменной var_04 - crc первых 7-ми байт
movf var_04, w
xorwf dsdat7, w
btfss STATUS, Z
goto _error_data
clrwdt; сброс watсhdog таймера
callsearch_eeprom
xorlw0x01
btfssSTATUS, Z
gotof_id
ok_idcall_identify_ok
gotod_start
f_idcall_identify_failed
gotod_start
search_eeprom:
; поиск в EEPROM
clrw
bsfSTATUS, RP0; bank 1
movwfEEADR
bsfEECON1, RD
movfEEDATA, w
bcfSTATUS, RP0; bank 0
movwfvar_01; количество ключей
movlw0x01
movwfvar_02; адрес в EEPROM
_next_sr:
movlwd'6'
movwfvar_03; номер проверяемого байта
movlwdsdat1
movwfFSR
_st_cmp:
movfvar_02, w; адрес в W
bsfSTATUS, RP0; bank 1
movwfEEADR; W в регистр адреса
bsfEECON1, RD; начать чтение
movfEEDATA, w; из EEPROM в W
bcfSTATUS, RP0; bank 0
xorwfINDF, w; сравнить прочитанный байт с байтом
btfscSTATUS, Z; равны?
goto_next_cmp; да, сравнить следующий
movfvar_03, w
addwfvar_02, f
decfszvar_01, f; все номера сравнены?
goto_next_sr; нет, сравнить снова
clrw; да, выйти из подпрограммы с W=0
gotoexit_se
_next_cmp:
incfFSR, f; следующий байт
incfvar_02, f; следующий байт EEPROM
decfszvar_03, f; все байты проверены?
goto_st_cmp; нет, проверить следующие
; да - выйти из подпрограммы с W=1
movlw0x01
exit_se:
return
_identify_ok:
; сигнал "пользователь определён"
movlwd'45'; 556 Hz
movwfvar_01
movlwd'37'; 1/15 сек
movwfvar_02
movlwd'2'
movwfvar_03
call_sound
movlwd'40'; 625 Hz
movwfvar_01
movlwd'42'; 1/15 сек
movwfvar_02
call_sound
movlwd'67';
call_ms_delay;
movlwd'30'; 833 Hz
movwfvar_01
movlwd'111'; 1/7 сек
movwfvar_02
call_sound
movlwd'15'
movwfvar_01
movlwd'222'
movwfvar_02
call_sound
btfssPORTB, 0;!!!!!!!
call_write_serial;!!!!!!!
bsfPORTA, 1
movlwd'7'
movwfdsdat0;!!!! используется dsdat0
next_id_sound:
movlwd'14'
movwfvar_01
movlwd'51'
movwfvar_02
movlwd'14'
movwfvar_03
call_sound
movlwd'100'
call_ms_delay
decfszdsdat0, f
gotonext_id_sound
bcfPORTA, 1
return
_identify_failed:
; сигнал "пользователь не определён"
movlwd'45'; 556 Hz
movwfvar_01
movlwd'37'; 1/15 сек
movwfvar_02
movlwd'2'
movwfvar_03
call_sound
movlwd'40'; 625 Hz
movwfvar_01
movlwd'42'; 1/15 сек
movwfvar_02
call_sound
movlwd'67';
call_ms_delay;
movlwd'241'; 104 Hz
movwfvar_01
movlwd'14'; 1/7 сек
movwfvar_02
call_sound
movlwd'67';
call_ms_delay;
call_sound
btfssPORTB, 0
call_write_serial
movlwd'7'
movwfvar_01
movlwd'250'
call_ms_delay
decfszvar_01, f
goto$-3
return
; подпрограмма передачи байта
send_byte:
movwfvar_01
movlwd'8'
movwfvar_02; количество передаваемых бит
next_tr_b:
bcfPORTA, DQ
bsfSTATUS, RP0; bank 1
bcfTRISA, DQ; DQ - выход
bcfSTATUS, RP0; bank 0
nop
nop
rrfvar_01, f
btfscSTATUS, C
goto_set_in
nop
nop
goto_no_set_in
_set_in:
bsf STATUS, RP0; bank 1
bsfTRISA, DQ; DQ - вход
bcfSTATUS, RP0; bank 0
_no_set_in:
movlwd'14'; задержка 62 мкс
call_4delay
bsf STATUS, RP0; bank 1
bsfTRISA, DQ; DQ - вход
bcfSTATUS, RP0; bank 0
nop
nop
nop
nop
decfszvar_02, f
gotonext_tr_b
return
; подпрограмма приёма байта
receive_byte:
movlwd'8'
movwfvar_01
clrfvar_02
next_rc_b:
bcfPORTA, DQ
bsfSTATUS, RP0; bank 1
bcfTRISA, DQ; DQ - выход
bcfSTATUS, RP0; bank 0
nop
nop
nop
nop
nop
nop
bsfSTATUS, RP0; bank 1
bsfTRISA, DQ; DQ - вход
bcfSTATUS, RP0; bank 0
nop
nop
nop
bcf STATUS, C
btfscPORTA, DQ
bsfSTATUS, C
rrfvar_02, f
movlwd'11'; задержка 50 мкс
call_4delay
decfszvar_01, f
gotonext_rc_b
movfvar_02, w
return
; - -----____--------------
_error_data:
movlwd'223'
movwfvar_01
movlwd'9'
movwfvar_02
movlwd'2'
movwfvar_03
call_sound
goto d_start
; подпрограмма задержки ms
_ms_delay:
movwf_ms_del
_1000us:
nop
nop
movlwd'247'
call_4delay
decfsz_ms_del, f
goto_1000us
return
; подпрограмма задержки us
_4delay:
movwf _4del
l4dlclrwdt
decfsz _4del, f
goto l4dl
return
_write_serial:
movlwdsdat1
movwfFSR
bsfSTATUS, RP0; bank 1
clrfEEADR
bsfEECON1, RD
movfEEDATA, w
bcfSTATUS, RP0; bank 0
movwfvar_01
sublwd'20'
btfssSTATUS, C
goto_mem_full
movfvar_01, w
bcfSTATUS, C;
rlfvar_01, f; умножаем var_01 на 6
rlfvar_01, f; - ------ // ---------
addwfvar_01, f; - ----- // ---------
addwfvar_01, f; - ---- // ---------
incfvar_01, w; var_01 +1
bsfSTATUS, RP0; bank 1
bsfEECON1, WREN
movwfEEADR
_next_byte:
movfINDF, w
movwfEEDATA
call_eeprom_write
incfEEADR, f
incfFSR, f
movlwdsdat7
subwfFSR, w
btfssSTATUS, C
goto_next_byte
bcfEECON1, WREN
clrfEEADR
bsfEECON1, RD
movfEEDATA, w
addlw0x01
bsfEECON1, WREN
movwfEEDATA
call_eeprom_write
bcfEECON1, WREN
bcfSTATUS, RP0; bank 0
gotoexit_write_serial
_mem_full:
movlwd'30'
movwfvar_01
movlwd'165'
movwfvar_02
movlwd'2'
movwfvar_03
call_sound
movlwd'67';
call_ms_delay;
movlwd'34'
movwfvar_01
movlwd'105'
movwfvar_02
call_sound
movlwd'67';
call_ms_delay;
movlwd'28'
movwfvar_01
movlwd'178'
movwfvar_02
call_sound
movlwd'67';
call_ms_delay;
movlwd'45'
movwfvar_01
movlwd'79'
movwfvar_02
call_sound
exit_write_serial:
return
_clean_eeprom:
bsfSTATUS, RP0; bank 1
bsf EECON1, WREN; разрешить запись
clrfEEADR
movlw0x00
movwfEEDATA
goto_write_first
_nx_adrmovlw0xFF
movwfEEDATA
_write_first:
call _eeprom_write
incfEEADR, f
movlw0x80
subwfEEADR, w
btfssSTATUS, C
goto_nx_adr
bcfEECON1, WREN; запретить запись
bcfSTATUS, RP0; bank 0
return
_eeprom_write:
; bcf INTCON, GIE; запретить прерывания
clrwdt
movlw 0x55
movwf EECON2
movlw 0xAA
movwf EECON2
bsf EECON1, WR
eewrtsbtfsc EECON1, WR
goto eewrts
return
org 0x2100
DATA 0x00
end
Размещено на Allbest.ru
Подобные документы
Технічні засоби міжконтролерного обміну інформацією з визначенням та виправленням помилок: принципи утворення коду, структурна, функціональна та принципова схеми контролера. Обґрунтування вибору елементної бази та мови програмування, розробка програми.
курсовая работа [1,9 M], добавлен 19.01.2010Загальна характеристика метеорологічних приладів: термометрів, барометрів, психрометрів, гігрометрів. Розробка електричної принципової схеми мікропроцесорної метеостанції, розрахунок її надійності. Вибір мікроконтролера і датчиків, монтаж друкованих плат.
дипломная работа [3,1 M], добавлен 13.06.2012Алгоритми роботи та структура контролера, опис його функціонування, вибір і характеристика основних елементів. Реалізація базових вузлів контролера виконавчого модуля і розроблення принципової схеми. Розрахунок собівартості й лімітної ціни нового виробу.
дипломная работа [2,7 M], добавлен 07.02.2015Вибір, обґрунтування методів автоматичного контролю технологічних параметрів. Розробка структурних схем ІВК, вибір комплексу технічних засобів. Призначення, мета і функції автоматичної системи контролю технологічних параметрів, опис функціональної схеми.
курсовая работа [32,7 K], добавлен 08.10.2012Розробка електричної схеми оптичної охоронної системи. Дослідження можливої реалізації структурних блоків. Вибір елементної бази та розрахунок параметрів елементів схеми. Характеристика особливостей сервісних датчиків і пристроїв охоронної сигналізації.
курсовая работа [358,0 K], добавлен 12.03.2014Вимоги до системи безпеки об'єктів категорії Б. Розробка підключень і розрахунок необхідної кількості відеокамер та датчиків для забезпечення захисту приміщення. Перевірка правильності вибору та оцінки споживчих характеристик технічних засобів охорони.
курсовая работа [308,0 K], добавлен 28.04.2011Розробка сигналізації для 10 квартир багатоквартирної будівлі. Опис пристрою. Основні характеристики і аналіз мікроконтролерів. Вибір інших елементів пристрою. Вибір середи програмування. Програмування мікроконтролеру. Фінальне налаштування та тестування.
курсовая работа [1,0 M], добавлен 31.05.2016Розробка інформаційно-вимірювальної системи визначення температури. Методи вимірювання температури, вибір оптимальної структурної схеми. Електрична принципова схема, розрахунок вузлів системи. Визначення основної похибки перетворювача–датчика KTY81-121.
курсовая работа [991,6 K], добавлен 24.01.2011Розробка, коригування електричної схеми. Обґрунтування вибору елементної бази. Вибір пасивних елементів. Проектування друкованої плати. Вибір матеріалу основи друкованого монтажу і провідникового матеріалу. Вибір електричного приєднання друкованої плати.
курсовая работа [3,1 M], добавлен 01.10.2014Вибір та обґрунтування функціональної схеми акустичної системи. Розрахунок фільтрів. Вибір фільтруючих ланок. Характеристика інтегральних підсилювачів. Вибір гучномовців та розрахунок корпусів.
дипломная работа [3,6 M], добавлен 08.08.2007