Please use this identifier to cite or link to this item:
https://er.chdtu.edu.ua/handle/ChSTU/8568| Title: | Багатоканальний таймер виконавчих пристроїв робототехнічних систем |
| Authors: | Матвієнко, Дмитро Георгійович Славов, Сергій Васильович |
| Issue Date: | 19-Jun-2023 |
| URI: | https://er.chdtu.edu.ua/handle/ChSTU/8568 |
| Appears in Collections: | 151 Автоматизація та комп'ютерно-інтегровані технології (Робототехнічні системи та автоматизація) |
Files in This Item:
| File | Description | Size | Format | |
|---|---|---|---|---|
| КРБ Славов С.pdf Restricted Access | КРБ Славов С. | 2.32 MB | Adobe PDF | View/Open Request a copy |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.
Extracted text
Вступ
Таймерні пристрої різного типу вже давно знаходять застосування, як у
побуті, так і на виробництві для автоматизації тих чи інших процесів. Багато задач
управління технологічними процесами, вимагає виконання їх в реальному часі. На
сучасному етапі використання таймерів дозволяє формувати управляючі дії з
установки різних інтервалів часу роботи обладнання, сигналізація про закінчення
відліку відведеного на той чи інший процес та інше. Таким чином використання
таймерів актуальне для автоматизації на виробництві та при побудові
робототехнічних комплексів як на виробництві так і в побуті. Наприклад
автоматичне регулювання процесів волого - теплової обробки у швейному
виробництві. Найбільш вдалим способом підтримки необхідного режиму волого-
теплової обробки — це застосування автоматичного регулювання як температури
так і витримки часу обробки.
Як варіант використовування таймерів у побуті можна розглянути
автоматизовану систему управління освітленням, вентиляцією чи обслуговування
акваріума.
Таймери самостійно включають електричні або механічні прилади.
Наприклад, вранці вони включають освітлення в акваріумі, ввечері вимикають
його. Експлуатація пристрою значно полегшує утримання акваріума. Мешканці
підводного світу, включаючи рослини, швидко пристосовується до циклічних
тимчасовим процесів: таймер позбавляє ваших вихованців від зайвих стресів.
Реле часу включає також компресор в потрібний вам час. В акваріумах, в
яких потрібно цілодобова аерація за допомогою декількох компресорів, таймер
можна запрограмувати таким чином, що він буде давати відпочинок то одному, то
іншому пристрою подачі повітря.
Автоматизувати можна також терморегулятори: у нічний час цих приладів
можна давати відпочинок. До реле часу можна підключити акваріумну помпу, яка
необхідна для поступової заміни води в акваріумі.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Одним головним недоліком таймерів, які випускає промисловість є те що
вони можуть керувати тільки одним зовнішнім пристроєм. Для управління
декількома пристроями необхідна така ж кількість таймерів, що економічно не
вигідно для споживача. Ще одним з недоліків являється однофункціональність –
управління тільки відліками часу. При розробці таймера-генератора були
враховані вказані недоліки та було розроблено пристрій якій одночасно в
реальному часі керує до 8 зовнішніми пристроями та дозволяє підтримувати
встановлену температуру (керуючи нагрівачами чи вентиляторами) по 4
незалежним каналам.
Завдяки використанню програмованого мікроконтролера вдалося досягти
розширення функціональності таймера та збільшення каналів управління з
найменшими затратами.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
1 Обгрунтування необхідності проектування на основі критичного
аналізу Internet пошуку
1.1 Таймер як пристрій
Таймер як пристрій це прилад виробничо-технічного, військового або
побутового призначення, що в заданий момент часу видає певний сигнал, або
включає - вимикає яке або обладнання через свій пристрій комутації
електроланцюга.
Таймери, що мають достатню точність і призначені для установки
тривалості будь-яких процесів у промисловому виробництві, на транспорті, у
зв'язку, наукових дослідженнях атестуються в якості засобів вимірювань.
Деякі види таймерів мають програмний пристрій для забезпечення
спрацьовування в різні моменти часу, з видачею сигналів по різних каналах,
наприклад, для включення в певній послідовності різних побутових приладів.
Також, існують програмні таймери, що реалізують подібні функції.
Таймер як елемент комп'ютера
Всі сучасні комп'ютери мають цифрові таймери двох основних видів:
апаратні та програмні.
Апаратні таймери функціонують незалежно від центрального процесора і в
момент спрацьовування посилають переривання.
Програмні таймери реалізуються за рахунок виконання у циклі заданої
кількості однакових «порожніх» операцій. При фіксованій частоті роботи
процесора це дозволяє точно визначати минулий час. Головними мінусами такого
методу є:
-залежність кількості ітерацій циклу від типу і частоти процесора
-неможливість виконання інших операцій під час затримки
1.2 Класифікація таймерів
Та́ймер — один пристроїв або засіб, що відраховує інтервал(и) часу.
Таймер можна також вважати одним з видів годинників. Таймер може бути
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
використаний для контролю послідовності події чи процесу. У той час як
секундомір відлічує від нуля для вимірювання витраченого часу, таймер відлічує з
заданим інтервалом часу, як пісочний годинник. Таймери можуть бути механічні,
електромеханічні, електронні (кварцові), або програмне забезпеченням.
Здебільшого під таймерами маються на увазі пристрої, що відмірюють
заданий інтервал часу з моменту запуску (вручну або електричним імпульсом) з
секундоміром зворотного відліку, разом з тим, існують таймери, момент
спрацювання яких задається установкою необхідного часу доби (так звані
таймери реального часу), в цьому випадку таймер має у своєму складі годинник
або пристрій збереження часу, найпростішим таймером такого роду є будильник.
Головною характеристикою таймера є його точність - мінімальний
гарантований інтервал часу. За цим параметром таймери ділять на:
-Малоточні (помилка вимірювання може досягати 0,1 с)
-Точні (помилка вимірювання не перевищує 0,001 с)
-Надточні (помилка вимірювання не перевищує 10−6 c)
За принципом відліку часу:
-Таймери інтервалів часу
-Таймери поточного (реального) часу
За принципом дії:
-Механічні таймери (рисунок 1.1)
-Електромеханічні таймери (рисунок 1.3)
-Цифрові електронні таймери (рисунок 1.10)
За вихідного впливу:
-Таймери-реле, що мають вбудований контактор для включення-
відключення електроапаратів
-Таймери з електричним вихідним сигналом (електричний потенціал,
імпульси або цифровий код)
-Таймери зі звуковою або візуальної сигналізацією (зазвичай кухонні
таймери)
За призначенням:
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
-Виробничо-технічні
-Для промислової автоматики - зазвичай таймери-реле реального часу
-Лабораторні - зазвичай інтервалів часу, електричний вихідний сигнал
-Побутові
1.3 Механічний таймер
Якщо в будинку присутні пристрої, що вимагають періодичних циклів
включення-виключення, – насосів, обігрівачів, компресорів, звільнити від
рутинної обов’язки особисто бути присутнім при цьому процесі можуть розетки-
таймери.
За принципом роботи вони бувають механічними і електронними.
Механічні простіше в обслуговуванні і настройці, до того ж вони й дешевше.
Тому їх популярність досить висока. Але у цих апаратів є особливості, з якими
варто познайомитися перш, ніж купувати і приступати до їх експлуатації.
Принцип дії:
Принцип роботи механічного таймера-розетки предсталений на рисунку
1.1.
Рисунок 1.1 – Пристрій розетки з механічним таймером: 1-розетка, 2-
перемикач режимів роботи, 3-шкала часу, 4-програмовані клавіші, 5-показник
часу, 6-штепсель
Спосіб комутації електричних контактів в розетках-таймери однаковий, він
механічний, за допомогою замикання провідників. Різниця лише в способі
управління. В електронних це роблять релейні схеми, керовані процесором.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Основою механічних таймерів є пристрій, що забезпечує безперервне
обертальний рух, що забезпечує замикання і розмикання контактів.
У старих таймери, випускалися років 30-40 тому, таким пристроєм був
механізм, ідентичний вартового, який складається з системи шестірень і
приводящийся в дію спіральною пружиною. Зараз він замінений тихохідним
імпульсним електродвигуном, що зробило пристрій менш гучним, але залежним
від зовнішнього джерела електричної енергії.
Недоліки:
Принцип управління комутацією і визначив головний недолік механічних
розеток-таймерів. В існуючих моделях неможливо провести програмування на
період більше доби. В електронних ж пристроях він може дорівнювати тижня або
місяця.
Відбувається це тому, що швидкість обертання виконавчого диска з
контактом залежить від передаточного числа редуктора, знижує кількість
оборотів в хвилину валу імпульсного електродвигуна.
Є способи змусити виконавчий диск робити повний оборот, наприклад, за
дві доби. Один з них – ускладнити редуктор, збільшивши кількість шестерень в
ньому.
Інший – збільшити діаметр виконавчого диска. Але – це екстенсивний
шлях модернізації конструкції, що збільшує її громіздкість. Тому він не
використовується.
Іншим недоліком механічних розеток-таймерів є залежність виконавчого
двигуна від зовнішнього джерела живлення. Якщо частота змінного струму
відрізняється від номінальних 50 Гц, то вони або забігають вперед або відстають.
Крім того, при аварійних відключеннях електроенергії таймери механічні
перестають працювати зовсім. В електронних розетках-таймери цього не
відбувається, оскільки вони забезпечені резервним джерелом живлення –
акумулятором.
Залежність механічного комутуючого пристрою від мережевої напруги
може бути і його плюсом. У випадку аварійного відключення він все одно
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
виконає свою програму, але дещо пізніше. А ось електронний комутатор не
помітить відключення від мережі. Контакти він замкне, а працював керований
апарат чи ні – йому байдуже.
Конструкція:
Ці таймери, що випускаються різними виробниками, дуже схожі один на
одного конструктивно.
Рисунок 1.2 – Конструкція розетки з механічним таймером
В першу чергу – це автономні пристрої, які підключаються до існуючої
схеми електроживлення через штепсельний роз’єм (розетку). На їх корпусі є два
штиря, аналогічні тим, які є на так званій електричної вилки.
У корпусі механічної розетки-таймера об’єднані штепсельний роз’єм
(зазвичай один) і виконавчий механізм у вигляді диска, що обертається з
поділками, по зовнішньому краю якого розташований ряд комутаційних кнопок.
Ділення на диску можуть бути з градаціями 15 і 30 хвилин. Комутаційні
кнопки, залежно від моделі, можуть керувати як включенням, так і вимиканням.
Наприклад, є моделі, в яких для відключення таку кнопку треба підняти, в інших
– «втопити».
На корпусі таймера є кнопка, яка його перемикає режим безперервної
подачі електроенергії в регульований. Зазвичай вона встановлена збоку, може
бути доповнена пристроєм світлової індикації.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
1.4 Електромеханічний таймер
Електромеханічні таймери призначені для управління електроприладами за
розкладом. Використовується для включення/відключення освітлення і інших
електротехнічних пристроїв протягом добового або тижневого циклу за
встановленою програмою.
Реле часу має мінімальний інтервал програмування 15 хв, є вбудований
акумулятор з резервом ходу до 100 годин, а також, що можливість примусового
включення/відключення навантаження, простий в установці і надійний.
Механічний таймер невимогливий до навколишньої температури, тому Ви
можете використовувати його в холодних приміщеннях (гаражі, неопалювані
кімнати будинку або офісу, підсобки) для управління світлом або нагрівальними
приладами.
Рисунок 1.3 – Електромеханічний таймер
Принцип дії:
Механічний добовий таймер має 96 міні-перемикачів-«пелюсток», кожен з
яких відповідає за свій 15(30)-хвилинний відрізок на 24-годинною шкалою. В ті
15(30) хвилин, коли відповідний «пелюстка» включений, прилад буде працювати.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Таймери механічні підключаються в розетку для управління побутовими
приладами можна придбати в будь-якому спеціалізованому магазині, ми ж
розглянемо промислові варіанти, що встановлюються на площину/DIN-рейку,
номінальний струм контактів 16 А.
Реле часу 1РВМ (одноканальне), 2РВМ (двоканальне) більше не
випускаються, натомість йдуть сучасні аналоги. На нашому сайті ви можете
знайти описи різних (механічних і електронних) реле часу в розділі каталогу
«Добові і тижневі реле».
Розглянемо деякі з них:
Рисунок 1.4 – Одноканальний таймер
Рисунок 1.5 – Габаритні розміри одноканального таймера
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Рисунок 1.6 – Схема підключення одноканального таймера
Технічні характеристики:
-Напруга живлення: 230 В
-Точність ходу ± 1 сек/добу
-Споживана потужність: 1.8 ВA
-Кількість контактів: 1 перемикаючий
-Номінальний струм: 16 А
-Комутована напруга: 250 В
-Діапазон робочих температур: від - 10 °C до + 45 °C - мінімальна
температура згідно з досвіду використання даних пристроїв значно нижче.
-Кріплення реле: DIN-рейка/поверхня
Рисунок 1.7 – Двоканальний таймер
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Рисунок 1.8 – Габаритні розміри двоканального таймера
Рисунок 1.9 – Схема підключення двоканального таймера
Технічні характеристики:
-Напруга живлення: 230 В
-Точність ходу ± 1 сек/добу
-Номінальний струм 16 А
-Кількість контактів: 2 перемикаючих (для CHRONO)
-Комутована напруга 250 В
-Діапазон робочих температур: від - 10 °C до + 50 °C - мінімальна
температура згідно з досвіду використання даних пристроїв значно нижче.
-Кріплення реле площину/DIN-рейка
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Застосування:
-В системах освітлення магазинів, шкіл, громадських будівель;
-Для економії електроенергії при освітленні житлових під'їздів;
-У складі зрошувальних систем і систем опалення;
-Для управління зовнішнім освітленням, світловою рекламою, включенням
і виключенням освітлювальних приладів промислового призначення.
1.5 Цифровий електронний таймер
Дозволяє проводити програмоване автоматичне управління освітленням та
іншими пристроями з урахуванням добового реального часу по таймеру.
Такий пристрій на сьогоднішній день буде актуально для економії
електроенергії для освітлення, оптимізації роботи зовнішнього освітлення, для
різних пристроїв і приладів, які потрібно включати і вимикати в один і той же час
регулярно кожні добу, протягом багатьох тижнів, місяців. Таким чином,
відбувається економія і матеріальних ресурсів.
Рисунок 1.10 – Цифровий електронний таймер
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Цифровий таймер являє собою мікропроцесорний програмований
пристрій, що володіє наступними особливостями:
-Поширений мікроконтролер ATmega8.
-Три незалежних канали з виконавчими таймерами.
-Незалежні часові інтервали таймерів для кожного каналу.
-Канали таймера, мають до трьох настроюються періодів включення-
виключення, для виконавчих пристроїв.
-Режим роботи таймера, добовий з 00:00. до 23:59.
-Точність програмованих періодів від 1 до 24 годин.
-Повне управління таймером за допомогою 4-х кнопок.
-Управління від зовнішнього датчика (виносний фотодатчик.)
-Спільна або незалежна робота каналів таймера і фотодатчика.
-Графічний ЖК дисплей.
-Індикація стану каналів таймера на дисплей.
-Функція загального скидання з користувацького меню.
Рисунок 1.11 – Електрична принципова схема цифрового таймера
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Таймер не боїться перебоїв в електроживленні і може керувати практично
будь-яким навантаженням, включаючи і енергозберігаючі лампи будь-якого типу
(так як на його виході використовуємо реле, фізично вони діють як звичайний
механічний вимикач).
Є можливість використання управління кожного каналу з прив'язкою від
зовнішнього датчика, якщо це фотодатчик, до періоду день-ніч, відповідно викл.
освітлювальних приладів вдень, і включення освітлення (якщо цей період заданий
користувачем), в сутінки і вночі.
В якості датчика може використовуватися фоторезистор або
фототранзистор.Вибір використання опції управління від зовнішнього датчика,
проводиться на розсуд користувача з користувальницького меню, для кожного
каналу окремо.
Ця опція, управління від зовнішнього датчика, надає користувачеві,
використання цього пристрою в різних варіантах комбінацій застосування.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
2 Обґрунтування технічного завдання
Проаналізуємо вихідні дані нашого дипломного проекту. І так згідно
завдання програмованого таймера, застосовується для включення і виключення
різних виконавчих пристроїв в заданий час і регулятора температури для
підтримки заданої температури. Працює при вихідній напрузі 220 В, 50 Гц.
Літієвий елемент CR1220. Кількість робочих каналів 8 шт. Живлення схеми
становить 12 В. У роли індикатора виступає WA1602L, датчика температури -
DS18B20. (Maxim-Dallas). Розміри плати становлять ширина 73 мм, довжина 134
мм, товщина 5мм, що є досить компактна в нашому випадку. Можливість корекції
похибки датчика температури. Збереження всіх програмованих параметрів в
незалежній пам’яті.
Рисунок 2.1 – Зовнішній вигляд пристрою
Даний пристрій складається з 2 плат розмірами ширина – 73 мм, довжина –
135 мм, товщина – 5 мм. Які знаходяться в пластмасовому корпусі, розмір якого
становить ширина – 88 мм, довжина – 155 мм, висота – 55 мм. 1 плата кріпиться
до дна корпусу за допомогою саморізів, 2 плата кріпиться до кришки корпусу за
допомогою 4 гвинтів. В кришці корпусу вирізаний отвір під LCD дисплей,
просвердлені отвори під 5 кнопок , якими керується пристрій. LCD дисплей
закритий захисним екраном який забезпечує захист від пошкоджень. В правому
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
нижньому куртку корпусу знаходиться отвір через який виведено датчик
температури, а в лівому нижньому куртку знаходяться отвори через які виведено
кабелі живлення таймера та кабелі керування. Для закріплення пристрою на стенд
була використана підставка.
Технічні показники проекту:
Цикл програмування таймера - 24 години (доба).
Дискретність завдання часу - 1 хвилина.
Кількість каналів - 8 каналів.
Сумарна здатність навантаження таймера - 1 кВт, (220 В)
Програмовані події - вмикання, вимикання, імпульс.
Кількість подій - 99 подій.
Тип коммутуючого елемента – реле.
Кількість каналів регулювання температури - 4 канали.
Потужність нагрівального елемента – 200 Вт, (220В.).
Живлення – 220 В, 50 Гц.
Габаритні розміри – 155 х 80 х 55.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
3 Розробка схем багатоканального таймеру виконавчих пристроїв
робототехнічних систем
3.1 Розробка структурної схеми
Структурна схема програмованого таймера-генератора для
робототехнічних комплексів зображена на рисунку 3.1.
Рисунок 3.1 - Структурна схема таймера-генератора: КР – кварцовий
резонатор, ДТ – датчик температури, ЦП – центральний процесор, ОК – органи
керування, БУЗП – блок управління зовнішніми пристроями, БЖ – блок
живлення, ЦП – мікроконтролер типу PIC16F1517-I/P(MICRO CHIP)
Характеристики наведені в таблиці 3.1.
Таблиця 3.1 – Характеристика мікроконтролера типу PIC16F1517-
I/P(MICRO CHIP)
Параметр Значення
Lead Free Status / RoHS Status Lead free / RoHS Compliant
Серія PIC® XLP™ 16F
Процесор PIC
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Розмір ядра 8 Біт
Швидкість 20 MГц
Підключення I²C, LIN, SPI, UART/USART
Периферія Brownout Detect/Reset, POR, PWM, WDT
Число вводів/виводів 36
Розмір програмованої пам'яті 14 Kбайт (8 K x 14)
Тип програмованої пам'яті FLASH
Размер памяти 512 x 8
Напруга джерела (Vcc/Vdd) 2.3 В - 5.5 В
Претворювачі даних A/D 28x10b
Тип осцилятора Internal
Робоча температура 40 °C – 85 °C
Корпус (розмір) 40DIP (0.600", 15.24 мм)
Таймер-генератор по суті є мікропроцесорною системою - являє собою
функціонально закінчений виріб, що складається з декількох пристроїв, головним
з яких є мікроконтролер.
Структура мікропроцесорної системи (МПС) є магістрально - модульною.
У такій структурі є група магістралей (шин), до яких підключаються різні модулі
(блоки), що обмінюються між собою інформацією по одним і тим же шинам по
черзі, в режимі поділу часу.
Типова мікропроцесорна система працює за допомогою шин, за якими в
систему передаються адреси модулів, до яких звертається мікропроцесор. У шину
включений шинний формувач (ШФ) – DD2, DD3, що забезпечує роботу
мікроконтролера на навантаження, утворену зовнішніми ланцюгами. Власної
здатності навантаження у МП не вистачає.
Мікроконтролер поєднує на одному кристалі функції процесора і
периферійних пристроїв, містить ОЗУ і (або) ПЗУ. По суті, це одно кристальний
комп'ютер, здатний виконувати прості завдання.
Система стабілізації частоти.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Таймер-генератор працює в режимі реального часу, тому для високої
стабільності відліку часу використовуємо часовий кварцовий резонатор
Резонансна частота часових резонаторів 32768 Гц, поділена на 15-розрядному
двійковому лічильнику, дає інтервал часу в 1 секунду.
Алфавітно-цифровий ЖК-модуль.
Для відображення поточної інформації при роботі пристрою,
програмуванні режиму роботи пристрою використовуємо алфавітно-цифровий
ЖК-модуль BC1602 фірми Bolymin
Таблиця 3.2 - Основні параметри
16 символів, 2 строки
Вбудований контролер KS0066 або аналогічний
Підсвітка фронтальна світлодіодна
Напруга + 5 В
Таблиця 3.3 - Розміри
Габарити модуля 122,0 х 44,0 мм
Розмір видимої області 99,0 х 24,0 мм
Розмір символу 4,84 х 9,66 мм
Розмір точки 0,92 х 1,10 мм
Таблиця 3.4 - Призначення виводів
№ Символ Призначення
1 Vss Загальний
2 Vdd Напруга живлення
3 Vo Регулювання контрастності
4 RS Вибір регістра команди/дані
5 R/W Зчитування/запис
6 E Стробіруючий сигнал
7 - 14 DB0-DB7 Шина даних
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
15 A/Vee Напруга живлення підсвітки/вихід джерела мінусової напруги
16 K Общий підсвітки
Таблиця 3.5 – Електричні характеристики
Параметр Символ Умова Значення Од. виміру
Напруга живлення: Vdd Vdd = + 5 В 5.0 В
Струм споживання: Idd Vdd = + 5 В 1.2 мA
Напруга живлення ЖК: Vdd-Vo 25 ºC 4.2 В
Напруга живлення LED
Vf 25 ºC 4.2 В
підсвітки
Струм споживання LED
If 25 ºC 280 мA
підсвіткою
Струм споживання EL
Iel Vel = 110 В / 400 Гц - Врмс
підсвіткою
Датчики температури
Окрім програмованого таймера, що служить для включення і виключення
різних виконавчих пристроїв в заданий час, таймер-генератор включає в себе 4
канали регулятора температури для підтримки заданої температури в
контрольованому середовищі. В якості датчиків для системи вимірювання та
контролю температури застосовуємо датчики температури – DS18B20(Maxim-
Dallas).
Рисунок 3.1 – Датчик температури
Температурний діапазон від - 55 до + 125 °С.
Точність показань 0.5 °С в діапазоні - 10 до + 85 °C.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Напруга живлення 3 – 5 В.
Крім стандартної схеми підключення датчика можлива робота і по
паразитному живленню (крім LaunchPad) - при цьому до датчика необхідно
підвести всього 2 дроти (1 і 3 вивід на мінус, 2 - дані.). так само шина даних
підключається до +5 В через резистор 4.7 кОм (підтягуючий резистор) R2…R5.
Всі датчики підключаються паралельно.
Органи керування
Для управління (програмування, ручного управління зовнішніми
пристроями, тощо використовуємо 5 кнопок з нормально розімкнутими
контактами К1…К5.
Таблиця 3.6 – Технічні параметри кнопок К1-К5
Функціональне призначення мініатюрна кнопка
Робоча напруга,В 30
Робочий струм,А 0.1
Фіксація немає
Конфігурація контактів DPDT
Підсвічування немає
Опір ізолятора не менше, МОм 100
Опір контактів не більше, Ом 0,05
Робоча температура, ºС -25…+70
Спосіб монтажу в отвори на плату
Виробник Switronic
Для контролю замикання контактів кнопок при натисканні виводиться
звуковий сигнал за допомогою п'єзо динаміка HF1.
Живлення пристрою
Пристрій живиться від мережі 220 В змінного струму через понижуючий
трансформатор 220 / 12 В, 4 Вт та схему випрямлення напруги VD15.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Для стабілізації напруги живлення мікроконтролера використовується
інтегральний стабілізатор LM78L05 – DA2.
Мікросхема — стабілізатор 78L05 (7805) має тепловий захист, а також
вбудовану систему охороняє стабілізатор від перевантаження по струму. Тим не
менш, для більш надійної роботи бажано застосовувати діод, що дозволяє
захистити стабілізатор від короткого замикання у вхідному ланцюзі.
Таблиця 3.7 - Технічні параметри стабілізатора 78L05
Вхідна напруга від 7 В до 20 В
Вихідна напруга від 4,5 В до 5,5 В
Вихідний струм (максимальний) 100 мА
Струм споживання (стабілізатором) 5,5 мА
Допустима різниця напруги вхід-вихід 1,7 В
Робоча температура від - 40 до + 125 °C
Для живлення Алфавітно-цифрового ЖК-модуля використовується DA1 -
MC34063 – універсальна мікросхема для найпростіших імпульсних
перетворювачів. На ній без застосування зовнішніх перемикаючих транзисторів
можна будувати понижуючі, підвищують і інвертують перетворювачі. А це
основні типи перетворювачів, які не мають гальванічної розв'язки.
Таблиця 3.8 - Основні технічні характеристики MC34063
Широкий діапазон значень вхідних напруг від 3В до 40В
Високий вихідний імпульсний струм до 1,5 А
Регульована вихідна напруга
Частота перетворювача до 100 кГц
Точність внутрішнього джерела опорної напруги 2 %
Обмеження струму короткого замикання
Низьке споживання в сплячому режимі
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Для збереження поточного часу при пропаданні живлення таймера від
мережі використовується литиевый елемент CR1220.
Таблиця 3.9 - Технічні параметри литиевого елемента СR1220
Найменування типу VARTA: CR1220
Класифікація МЕК CR1220
Електрохімічна система Первинний літієвий, дисковий
Ємність 35 мАч
Напруга 3 В
Блок управління зовнішніми пристроями
Для включення/виключення зовнішніх пристроїв за програмою чи в
ручному режимі передбачена подача на них оперативної напруги через контакти
реле К1…К8.
В каналах регулятора температури в якості ключів використані
напівпровідникові симістори VD11…VD14 – BTA 140 – 600
Таблиця 3.10 - Технічні параметри семістора BTA140-600
I max у відкритому стані, (A) 25
U в закритому стані, (В) 600
Відпираючий струм, max (мA) 6÷35
Pin(1,2,3) (T1, T2 G)
Корпус TO-220
Для гальванічної розв'язки кіл управління симісторів використано
оптопари МОС 3062 – DA2…DA5.
Симісторний оптрон (оптопара) являє собою світлодіод і світлочутливий
симістор, зібрані в одному корпусі і мають оптичну зв'язок. Основне призначення
– комутація високоВного навантаження змінного та пульсуючого струму. Крім
прямого включення навантаження симісторні оптрони нерідко використовуються
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
як керуючі для потужних симісторів або тиристорів (як гальванічної розв'язки і як
підсилювачі струму)
Таблиця 3.2 – Параметри симісторного оптрона
вхід вихід загальні
тип
If, мА Ur, В Udrm, В I, мА ZCC Upk, кВ
МОС3062 10 6 600 100 + 5,3(7.5)
If – струм спрацьовування;
Ur – зворотна напруга світлодіода, не більше;
Udrm – напруга, що комутується, не більше;
I – струм через симістор, не більше;
ZCC – наявність або відсутність схеми відмикання в момент проходження
через «нуль»;
Upk – напруга ізоляції, максимально допустима пікова напруга між входом
і виходом;
Urms – напруга ізоляції, максимально допустима напруга ізоляції (діюче
значення).
Інструкція по експлуатації виробу.
Для контролю і управління функціями використовується РК – індикатор 16
Х 2 і 5 кнопок.
Індикатор має два режими – робочий і програмування. Зовнішній вигляд
індикатора в робочому режимі показаний на рисунку 3.2.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Рисунок 3.2 – Робочий режим
Чотири символу праворуч угорі відображають реальний час. Для
установки часу з допомогою кнопок «вправо» і «вліво» встановити курсор на
позицію індикатора годин. Кнопки «вгору» і «вниз» встановити значення годин,
потім встановити курсор на позицію індикатора хвилин і встановити значення
хвилин і натиснути кнопку «enter». Годинник реального часу починають йти, про
це свідчить миготливе двокрапка. ( при першому включенні після повного
припинення електроживлення курсор автоматично встановлюється в потрібну
позицію). Після запуску можна встановити елемент СR1220. Без цього елемента у
разі короткочасного припинення електроживлення хід годин припиняється.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Вісім символів внизу зліва відображають стан реле каналів 1 ... 8.
Для ручного керування необхідно встановити курсор на символ,
відповідний потрібного реле і натиснути кнопку «вгору» для включення або
кнопку «вниз» для відключення. Курсор переміщається з допомогою кнопок
«вліво» чи «вправо».
Вісім символів вгорі зліва відображають режими управління реле. Для
встановлення потрібного режиму необхідно встановити курсор на символ, що
відповідає режиму потрібного реле і натиснути кнопку «вгору» для режиму
«автомат/ручний» або «вниз» для режиму «ручний» В ручному режимі реле
включаються і відключаються так, як описано вище. У режимі «автомат/ручний»
реле включаються і вимикаються вручну і автоматично. Для автоматичного
керування необхідно запрограмувати «події».
Для цього:
1. Перемикаємо індикатор таймера в режим «програмування». Натискаємо
і утримуємо кнопку «вліво», потім натискаємо кнопку «вправо». Індикатор
приймає вигляд. Відпускаємо кнопку.
2. За допомогою кнопок «вправо» і «вліво» встановлюємо курсор на
позицію, яка вказує номер події. За допомогою кнопок «вгору» і «вниз»
встановлюємо номер першої події – 01.
3. Далі встановлюємо номер каналу. За допомогою кнопок «вправо» і
«вліво» встановлюємо курсор на позицію номера каналу. За допомогою кнопок
«вгору» і «вниз» встановлюємо номер реле – 1.
4. Далі встановлюємо тип події. За допомогою кнопок «вправо» і «вліво»
встановлюємо курсор на позицію, яка вказує на тип події. За допомогою кнопок
«вгору» і «вниз» встановлюємо «+» - включення.
5. Встановлюємо час настання події. За допомогою кнопок «вправо» і
«вліво» встановлюємо курсор на позицію, яка вказує годинник настання події.
За допомогою кнопок «вгору» і «вниз» встановлюємо 10. Встановлюємо
курсор на позицію, яка вказує хвилини настання події.
За допомогою кнопок «вгору» і «вниз» встановлюємо 00.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
6. Для програмування другого події повторити пункти 2 ,4 , 5. В п. 2
встановити – 02, п. 4 встановити «-», п. 5 – 23.59. Введені події зберігаються в
пам'яті контролера весь час, поки на пристрій подано електроживлення або
встановлена батарея CR1220.
7. Для збереження інформації в енергонезалежній пам'яті необхідно при
знаходженні індикатора в режимі програмування натискати кнопку «вправо» до
тих пір, поки на дисплеї не з'явиться напис «store». Після цього натиснути кнопку
«enter». Введена інформація записується в енергонезалежну пам'ять і індикатор
переходить в робочий режим.
Крім включення і відключення існує ще один тип події – імпульс.
При настанні цієї події реле включається на заздалегідь запрограмований
час . Цей час може становити 2 – 58 секунд. Один з прикладів використання цього
типу події – подача дзвінків в школі. Припустимо, потрібно подавати дзвінки
тривалістю 10 секунд о 08.30 , 09.15 , 09.25 , 10.10 і т. д. Дзвінок підключаємо,
наприклад, до реле 7, включаємо для цього реле режим «автомат/ручний». Після
цього програмуємо #01 &7p [08:30], #02 &7p [09:15], #03 &7p [09:25], #04 &7p
[10:10] і т. д. Встановлюємо тривалість дзвінка p = 10c.
Об'єднаний режим таймера «автомат/ручний» дозволяє вносити
короткочасні корективи в запрограмований алгоритм, не змінюючи самого
алгоритму, тобто задавати події крім запрограмованого часу.
Регулятор температури складається з чотирьох терморегуляторів для
підтримки заданої температури в об'єкті регулювання. Кожен регулятор містить
датчик температури DS18B20 і нагрівальний елемент. При знаходженні
індикатора в робочому режимі нижні символи праворуч відображають номер
каналу, реальну температуру цього каналу і стан регулювання (вкл. вимк.). Для
того, щоб подивитися температуру іншого каналу необхідно встановити курсор на
номер каналу і за допомогою кнопок «вгору» і «вниз» встановити потрібний
канал. Зліва від номера каналу знаходиться символ, який вказує на стан
регулятора («+» включений, «-» вимкнено). У робочому режимі існує можливість
корекції похибки датчика температури (при необхідності). Для цього необхідно
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
помістити поряд з датчиком зразковий термометр, встановити курсор на
показання температури цього каналу і через деякий час, коли показання
термометра стабілізуються, кнопками «вгору» і «вниз» встановити на індикаторі
показання термометра. Після цього записати значення поправки в
енергонезалежну пам'ять.
Для того, щоб встановити задану температуру, необхідно індикатор
перемкнути у режим «програмування». На індикаторі в тих же знакомісцях
висвічується номер каналу і значення заданої температура. Встановити курсор на
значення температури потрібного каналу і за допомогою кнопок «вгору» і «вниз»
ввести потрібне значення.
В енергонезалежну пам'ять поміщаються:
1. Події
2. Тривалість імпульсу «р».
3. Задана температура.
4. Значення температурної корекції датчиків.
Зазначені в п. 7 дії забезпечують запис одночасно всіх параметрів, тому їх
слід проводити після повного завершення процесу програмування.
3.2 Розробка принципової схеми
На рисунку 3.1 представлена принципова схема контролера таймера-
генератора.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Рисунок 3.1 – Схема принципова контролера
Для досягнення поставленої задачі –"програмований таймер-генератор для
робототехнічних комплексів" як основний елемент апаратної та програмної
реалізації використовуємо мікроконтролер PIC16F1517-I/PT
8-бітний PIC-мікроконтролер, FLASH/ISP FLASH = 14 Кбайт, SRAM = 512
байт, Uживл, В = 2,3...5,5, к-сть вив. користув. = 36, периферія. = Brown-out
Detect/Reset, POR, PWM, WDT, розрядністьть/швидкодія АЦП/к-сть кан. = 28 х
10-біт, сумісність = I²C, LIN, SPI, UART/USART, Тексп, °C = -40...+85, швидкодія,
МГц = 20.
Мікроконтро́лер (англ. microcontroller), або однокристальна мікроЕОМ —
виконана у вигляді мікросхеми спеціалізована мікропроцесорна система, що
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
включає мікропроцесор, блоки пам'яті для збереження коду програм і даних,
порти вводу-виводу і блоки зі спеціальними функціями (лічильники,
компаратори, АЦП та інші).
Використовується для керування електронними пристроями. По суті, це —
однокристальний комп'ютер, здатний виконувати прості завдання. Використання
однієї мікросхеми значно знижує розміри, енергоспоживання і вартість пристроїв,
побудованих на базі мікроконтролерів.
Для відображення поточної інформації при роботі пристрою,
програмуванні режиму роботи пристрою використовуємо алфавітно-цифровий
РК-модуль BC1602 фірми Bolymin.
Перевагою символьних РК-модулів перед звичайними РКІ є компактний
інтерфейс і простота управління. Вхідні/вихідні сигнали мають КМОП-рівні, тому
РК-модуль, з точки зору мікроконтролера, мало чим відрізняється від зовнішньої
логічної КМОП мікросхеми. Користувачеві залишається лише підключити до
індикатору 6...11 проводів і періодично посилати за ним керуючі сигнали. Все
інше бере на себе вбудований в символьний рідкокристалічний модуль контролер.
По-англійськи його називають Dot Matrix LCD Controller/Driver, оскільки він
поєднує функції керуючого пристрою і силового драйвера для матриці точкових
сегментів
DS18B20 – цифровий датчик температури з програмованим дозволом
перетворення.
Відмітні особливості
1) Використання інтерфейсної шини даних 1-Wire для взаємодії з
управляючою системою;
2) Наявність унікального 64-бітного послідовного ідентифікаційного коду,
розташованого у внутрішній ROM-пам'яті і призначеної для багатоточкових
систем, де необхідно адресувати конкретний датчик;
3) Напруга живлення становить 3-5,5 В, що дозволяє використовувати його
не тільки в 5-Вів системах, але і в 3,3 (більшість мікроконтролерів);
4) Діапазон вимірюваної температури складає -55...+125 ос;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
5) Точність ±0,5 оС, щоправда це вірно тільки для діапазону -10...+85 ос;
6) Дозвіл перетворення визначається користувачем і становить 9...12 біт;
7) Має внутрішні регістри тригерів верхнього та нижнього порогів
спрацьовування з виробкою сигналу тривоги для систем, що використовують
термостатичну логіку роботи;
8) Ці датчики програмно сумісні з DS1822 і широко застосовуються в
промислових термостатичних регуляторів, індустріальних системах, у споживчій
електроніці та інших термочутливих системах.
MC34063 – універсальна мікросхема для найпростіших імпульсних
перетворювачів в блоках живлення.
78L05 це стабілізатор напруги на 5 В.
Симістор BTA140-600 в поєднанні з оптроном МОС3062 дозволять
керувати нагрівальними приладами достатньо потужними і одночасно
забезпечують гальванічну розв'язку мережі живлення нагрівачами від системи
управління температурними режимами.
Інші елементи схеми – резистори, конденсатори тощо, широко вживанні
елементи електронних схем для використання як в промислових так і в побутових
приладах.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Рисунок 3.2 – Схема принципова блоку управління зовнішніми пристроями
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
4 Розробка програмного забезпечення таймера-генератора для
робототехнічних комплексів
4.1 Прошивка МК головна програма
#include <htc.h>
#include "variable.c"
__CONFIG(FOSC_INTOSC & WDTE_OFF & PWRTE_ON & MCLRE_OFF &
CP_OFF &
BOREN_OFF & CLKOUTEN_OFF);
__CONFIG(STVREN_ON & BORV_HI & LVP_OFF);
//*******************************************************************
************************
void strob(void)
{
e = 1;
NOP();
e = 0;
}
void delay_15mS(void)
{
T2CON = 0x76;
PR2 = 250;
TMR2IF = 0;
while (TMR2IF == 0);
}
void delay_5mS(void)
{
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
T2CON = 0x26;
PR2 = 250;
TMR2IF = 0;
while (TMR2IF == 0);
}
void delay_150uS(void)
{
T2CON = 0x14;
PR2 = 199;
TMR2IF = 0;
while (TMR2IF == 0);
}
void delay_50uS(void)
{
T2CON = 0x04;
PR2 = 199;
TMR2IF = 0;
while (TMR2IF == 0);
}
void delay_500uS(void)
{
T2CON = 0x3C;
PR2 = 249;
TMR2IF = 0;
while (TMR2IF == 0);
}
//*******************************************************************
************
void erase_flash(void)
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
{
char i;
for (i = 0;i < 8;i++)
{
PMADR = &eeprom_rom[i][0];
CFGS = 0;
FREE = 1;
WREN = 1;
PMCON2 = 0x55;
PMCON2 = 0xAA;
WR = 1;
NOP();
NOP();
WREN = 0;
}
}
void write_flash()
{
char i,j,k;
k = count_wr << 5;
for (i = 0;i < 4;i++)
{
j = i << 1;
buffer.all = set_termo[i];
eeprom_ram[200 + j] = buffer.lb;
eeprom_ram[201 + j] = buffer.mb;
buffer.all = corr_termo[i];
eeprom_ram[208 + j] = buffer.lb;
eeprom_ram[209 + j] = buffer.mb;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
}
eeprom_ram[216] = _switch.all;
// PMADR = ROM;
CFGS = 0;
WREN = 1;
LWLO = 1;
for (i = 0;i < 32;i++)
{
PMDAT = eeprom_ram[k];;
PMADR = &eeprom_rom[count_wr][i];
PMCON2 = 0x55;
PMCON2 = 0xAA;
WR = 1;
NOP();
NOP();
k++;
}
LWLO = 0;
PMCON2 = 0x55;
PMCON2 = 0xAA;
WR = 1;
NOP();
NOP();
WREN = 0;
if (count_wr < 7)
count_wr++;
else
{
status.write = 0;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
cursor = 0;
}
}
//*******************************************************************
*********************
unsigned char Crc8(unsigned char *stroke, unsigned char len)
{
unsigned char crc = 0x00;
while (len--)
{
crc = Crc8Table[crc ^ *stroke++];
}
return crc;
}
//*******************************************************************
******************************
void ds_1_reset(void)
{
ds_port_1 = 0;
tris_1 = 0;
delay_500uS();
tris_1 = 1;
}
void ds_2_reset(void)
{
ds_port_2 = 0;
tris_2 = 0;
delay_500uS();
tris_2 = 1;
}
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
void ds_3_reset(void)
{
ds_port_3 = 0;
tris_3 = 0;
delay_500uS();
tris_3 = 1;
}
void ds_4_reset(void)
{
ds_port_4 = 0;
tris_4 = 0;
delay_500uS();
tris_4 = 1;
}
//*******************************************************************
****************************
void ds_1_read(void)
{
char i,j;
T2CON = 0x0C;
PR2 = 199;
TMR2IF = 0;
ds_port_1 = 0;
OPTION_REG = 0x08;
for (j = 0;j < 9;j++)
{
for (i = 0;i < 8;i++)
{
tris_1 = 1;
shift_reg_rx.all = shift_reg_rx.all >> 1;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
while (TMR2IF == 0);
tris_1 = 0;
TMR2IF = 0;
NOP();
NOP();
NOP();
NOP();
TMR0 = 210;
TMR0IF = 0;
tris_1 = 1;
while (TMR0IF == 0);
shift_reg_rx._bit = ds_port_1;
}
stroke_rx[j] = shift_reg_rx.all;
}
}
//*******************************************************************
***********
//*******************************************************************
****************************
void ds_2_read(void)
{
char i,j;
T2CON = 0x0C;
PR2 = 199;
TMR2IF = 0;
ds_port_2 = 0;
OPTION_REG = 0x08;
for (j = 0;j < 9;j++)
{
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
for (i = 0;i < 8;i++)
{
tris_2 = 1;
shift_reg_rx.all = shift_reg_rx.all >> 1;
while (TMR2IF == 0);
tris_2 = 0;
TMR2IF = 0;
NOP();
NOP();
NOP();
NOP();
TMR0 = 210;
TMR0IF = 0;
tris_2 = 1;
while (TMR0IF == 0);
shift_reg_rx._bit = ds_port_2;
}
stroke_rx[j] = shift_reg_rx.all;
}
}
//*******************************************************************
****************************
void ds_3_read(void)
{
char i,j;
T2CON = 0x0C;
PR2 = 199;
TMR2IF = 0;
ds_port_3 = 0;
OPTION_REG = 0x08;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
for (j = 0;j < 9;j++)
{
for (i = 0;i < 8;i++)
{
tris_3 = 1;
shift_reg_rx.all = shift_reg_rx.all >> 1;
while (TMR2IF == 0);
tris_3 = 0;
TMR2IF = 0;
NOP();
NOP();
NOP();
NOP();
TMR0 = 210;
TMR0IF = 0;
tris_3 = 1;
while (TMR0IF == 0);
shift_reg_rx._bit = ds_port_3;
}
stroke_rx[j] = shift_reg_rx.all;
}
}
//*******************************************************************
****************************
void ds_4_read(void)
{
char i,j;
T2CON = 0x0C;
PR2 = 199;
TMR2IF = 0;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
ds_port_4 = 0;
OPTION_REG = 0x08;
for (j = 0;j < 9;j++)
{
for (i = 0;i < 8;i++)
{
tris_4 = 1;
shift_reg_rx.all = shift_reg_rx.all >> 1;
while (TMR2IF == 0);
tris_4 = 0;
TMR2IF = 0;
NOP();
NOP();
NOP();
NOP();
TMR0 = 210;
TMR0IF = 0;
tris_4 = 1;
while (TMR0IF == 0);
shift_reg_rx._bit = ds_port_4;
}
stroke_rx[j] = shift_reg_rx.all;
}
}
//*******************************************************************
**************************
void ds_1_write(char command)
{
char i;
T2CON = 0x0C;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
PR2 = 199;
TMR2IF = 0;
ds_port_1 = 0;
shift_reg_tx.all = command;
OPTION_REG = 0x08;
for (i = 0;i < 8;i++)
{
tris_1 = 1;
while (TMR2IF == 0);
TMR2IF = 0;
tris_1 = 0;
TMR0 = shift_reg_tx._bit?220:0;
TMR0IF = 0;
while (TMR0IF == 0);
tris_1 = 1;
shift_reg_tx.all = shift_reg_tx.all >> 1;
}
}
//*******************************************************************
***************************
void ds_2_write(char command)
{
char i;
T2CON = 0x0C;
PR2 = 199;
TMR2IF = 0;
ds_port_2 = 0;
shift_reg_tx.all = command;
OPTION_REG = 0x08;
for (i = 0;i < 8;i++)
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
{
tris_2 = 1;
while (TMR2IF == 0);
TMR2IF = 0;
tris_2 = 0;
TMR0 = shift_reg_tx._bit?220:0;
TMR0IF = 0;
while (TMR0IF == 0);
tris_2 = 1;
shift_reg_tx.all = shift_reg_tx.all >> 1;
}
}
//*******************************************************************
***************************
void ds_3_write(char command)
{
char i;
T2CON = 0x0C;
PR2 = 199;
TMR2IF = 0;
ds_port_3 = 0;
shift_reg_tx.all = command;
OPTION_REG = 0x08;
for (i = 0;i < 8;i++)
{
tris_3 = 1;
while (TMR2IF == 0);
TMR2IF = 0;
tris_3 = 0;
TMR0 = shift_reg_tx._bit?220:0;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
TMR0IF = 0;
while (TMR0IF == 0);
tris_3 = 1;
shift_reg_tx.all = shift_reg_tx.all >> 1;
}
}
//*******************************************************************
***************************
void ds_4_write(char command)
{
char i;
T2CON = 0x0C;
PR2 = 199;
TMR2IF = 0;
ds_port_4 = 0;
shift_reg_tx.all = command;
OPTION_REG = 0x08;
for (i = 0;i < 8;i++)
{
tris_4 = 1;
while (TMR2IF == 0);
TMR2IF = 0;
tris_4 = 0;
TMR0 = shift_reg_tx._bit?220:0;
TMR0IF = 0;
while (TMR0IF == 0);
tris_4 = 1;
shift_reg_tx.all = shift_reg_tx.all >> 1;
}
}
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
//*******************************************************************
***************************
void set_cursor(void)
{
if ((key == left) && (cursor > 0))
cursor--;
if ((key == right) && (cursor < 30))
cursor++;
if (status.work == 0)
//рабочий режим
switch (cursor)
{
case 0:{
// if (key == up)
// {
// if (N < 9)
// N++;
// }
// if (key == down)
// {
// if (N > 0)
// N--;
// }
};break;
case 1:{
if (key == up)
` _switch._0 = 1;
else if (key == down)
_switch._0 = 0;
};break;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
case 2:{
if (key == up)
` _switch._1 = 1;
else if (key == down)
_switch._1 = 0;
};break;
case 3:{
if (key == up)
` _switch._2 = 1;
else if (key == down)
_switch._2 = 0;
};break;
case 4:{
if (key == up)
` _switch._3 = 1;
else if (key == down)
_switch._3 = 0;
};break;
case 5:{
if (key == up)
` _switch._4 = 1;
else if (key == down)
_switch._4 = 0;
};break;
case 6:{
if (key == up)
` _switch._5 = 1;
else if (key == down)
_switch._5 = 0;
};break;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
case 7:{
if (key == up)
` _switch._6 = 1;
else if (key == down)
_switch._6 = 0;
};break;
case 8:{
if (key == up)
` _switch._7 = 1;
else if (key == down)
_switch._7 = 0;
};break;
//**********************************************************
case 9:{
if (_switch._0 == 1)
{
if (key == up)
_auto._0 = 1;
else if (key == down)
` _auto._0 = 0;
}
else
{
if (key == up)
_manual._0 = 1;
else if (key == down)
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
` _manual._0 = 0;
}
};break;
case 10:{
if (_switch._1 == 1)
{
if (key == up)
_auto._1 = 1;
else if (key == down)
` _auto._1 = 0;
}
else
{
if (key == up)
_manual._1 = 1;
else if (key == down)
` _manual._1 = 0;
}
};break;
case 11:{
if (_switch._2 == 1)
{
if (key == up)
_auto._2 = 1;
else if (key == down)
` _auto._2 = 0;
}
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
else
{
if (key == up)
_manual._2 = 1;
else if (key == down)
` _manual._2 = 0;
}
};break;
case 12:{
if (_switch._3 == 1)
{
if (key == up)
_auto._3 = 1;
else if (key == down)
` _auto._3 = 0;
}
else
{
if (key == up)
_manual._3 = 1;
else if (key == down)
` _manual._3 = 0;
}
};break;
case 13:{
if (_switch._4 == 1)
{
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
if (key == up)
_auto._4 = 1;
else if (key == down)
` _auto._4 = 0;
}
else
{
if (key == up)
_manual._4 = 1;
else if (key == down)
` _manual._4 = 0;
}
};break;
case 14:{
if (_switch._5 == 1)
{
if (key == up)
_auto._5 = 1;
else if (key == down)
` _auto._5 = 0;
}
else
{
if (key == up)
_manual._5 = 1;
else if (key == down)
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
` _manual._5 = 0;
}
};break;
case 15:{
if (_switch._6 == 1)
{
if (key == up)
_auto._6 = 1;
else if (key == down)
` _auto._6 = 0;
}
else
{
if (key == up)
_manual._6 = 1;
else if (key == down)
` _manual._6 = 0;
}
};break;
case 16:{
if (_switch._7 == 1)
{
if (key == up)
_auto._7 = 1;
else if (key == down)
` _auto._7 = 0;
}
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
else
{
if (key == up)
_manual._7 = 1;
else if (key == down)
` _manual._7 = 0;
}
};break;
case 18:{
if (key == up)
termo_con.all |=
mask_set_1[n_can_termo];
else if (key == down)
` termo_con.all &=
~mask_set_1[n_can_termo];
};break;
case 17:{
if (key == up)
{
if (n_can_termo < 3)
n_can_termo++;
}
if (key == down)
{
if (n_can_termo > 0)
n_can_termo--;
}
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
};break;
case 20:{
if (key == up)
{
if (time_hour < 23)
time_hour++;
}
if (key == down)
{
if (time_hour > 0)
time_hour--;
}
};break;
case 22:{
if (key == up)
{
if
(corr_termo[n_can_termo] < 32000)
corr_termo[n_can_termo]++;
}
if (key == down)
{
if
(corr_termo[n_can_termo] > -32000)
corr_termo[n_can_termo]--;
}
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
};break;
case 21:{
if (key == up)
{
if (time_minute < 59)
time_minute++;
}
if (key == down)
{
if (time_minute > 0)
time_minute--;
}
};break;
}
else
{
// режим программирования
switch (cursor)
{
case 0:;break;
case 1:{
if (key == up)
{
if (n_sob < 98)
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
n_sob++;
}
if (key == down)
{
if (n_sob > 0)
n_sob--;
}
};break;
case 2:{
if (key == up)
{
if (reg_hour.n_can
< 7)
reg_hour.n_can++;
}
if (key == down)
{
if (reg_hour.n_can
> 0)
reg_hour.n_can--;
}
};break;
case 3:{
if (key == up)
{
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
if
(reg_minute.action < 3)
reg_minute.action++;
}
if (key == down)
{
if
(reg_minute.action > 1)
reg_minute.action--;
}
};break;
case 4:{
if (key == up)
{
if (reg_hour.val <
23)
reg_hour.val++;
}
if (key == down)
{
if (reg_hour.val >
0)
reg_hour.val--;
}
};break;
case 5:{
if (key == up)
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
{
if (reg_minute.val
< 59)
reg_minute.val++;
}
if (key == down)
{
if (reg_minute.val
> 0)
reg_minute.val--;
}
};break;
case 6:{
if (key == up)
{
if (n_can_termo <
3)
n_can_termo++;
}
if (key == down)
{
if (n_can_termo >
0)
n_can_termo--;
}
};break;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
case 7:{
if (key == up)
{
if
(set_termo[n_can_termo] < 560) //30 deg
set_termo[n_can_termo]++;
}
if (key == down)
{
if
(set_termo[n_can_termo] > 320) //20 deg
set_termo[n_can_termo]--;
}
if (key == enter)
{
set_termo[n_can_termo]
= 400; //25 deg
}
};break;
case 10:{
if (key == enter)
{
erase_flash();
status.write = 1;
count_wr = 0;
status.work = 0;
cursor = 0;
}
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
};break;
}
}
if (((key == up) || (key == down)) && ((cursor == 2) || (cursor == 4)))
eeprom_ram[n_sob << 1] = reg_hour.all;
//запись
измененных значений в массив
if (((key == up) || (key == down)) && ((cursor == 3) || (cursor == 5)))
eeprom_ram[(n_sob << 1) + 1] = reg_minute.all; //
key = 0;
}
//*******************************************************************
************************************************
void display(void)
{
char i;
delay_150uS();
rw = 0;
rs = 0;
port_lcd = 0x80 | light;
//установка адреса верхней строки
strob();
port_lcd = 0x00 | light;
strob();
rs = 1;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
if (status.work == 0)
//рабочий режим
{
data = _switch._0?au:man;
stroke_dysplay[0] = (index._640 & !(cursor ^ 1))?0x20:data;
data = _switch._1?au:man;
stroke_dysplay[1] = (index._640 & !(cursor ^ 2))?0x20:data;
data = _switch._2?au:man;
stroke_dysplay[2] = (index._640 & !(cursor ^ 3))?0x20:data;
data = _switch._3?au:man;
stroke_dysplay[3] = (index._640 & !(cursor ^ 4))?0x20:data;
data = _switch._4?au:man;
stroke_dysplay[4] = (index._640 & !(cursor ^ 5))?0x20:data;
data = _switch._5?au:man;
stroke_dysplay[5] = (index._640 & !(cursor ^ 6))?0x20:data;
data = _switch._6?au:man;
stroke_dysplay[6] = (index._640 & !(cursor ^ 7))?0x20:data;
data = _switch._7?au:man;
stroke_dysplay[7] = (index._640 & !(cursor ^ 8))?0x20:data;
stroke_dysplay[8] = 0x20;
stroke_dysplay[9] = 0x20;
data = H_10 + 0x30;
stroke_dysplay[10] = (index._640 & !(cursor ^ 20))?0x20:data;
data = H_01 + 0x30;
stroke_dysplay[11] = (index._640 & !(cursor ^ 20))?0x20:data;
stroke_dysplay[12] = status.second?0x3a:0x20;
data = M_10 + 0x30;
stroke_dysplay[13] = (index._640 & !(cursor ^ 21))?0x20:data;
data = M_01 + 0x30;
stroke_dysplay[14] = (index._640 & !(cursor ^ 21))?0x20:data;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
stroke_dysplay[15] = 0x20;
}
else
//программирование
{
stroke_dysplay[0] = 0x23;
//#
data = sob_10 + 0x30;
//номер события
stroke_dysplay[1] = (index._640 & !(cursor ^ 1))?0x20:data;
data = sob_01 + 0x30;
stroke_dysplay[2] = (index._640 & !(cursor ^ 1))?0x20:data;
stroke_dysplay[3] = 0x20;
stroke_dysplay[4] = 0x3e;
data = reg_hour.n_can + 0x31;
//номер канала
stroke_dysplay[5] = (index._640 & !(cursor ^ 2))?0x20:data;
if (reg_minute.action == 3)
data = 0xd9;
//включить
else if (reg_minute.action == 2)
data = 0xda;
//выключить
else
data = 0x58; //не
активно
stroke_dysplay[6] = (index._640 & !(cursor ^ 3))?0x20:data;
stroke_dysplay[7] = 0x20;
stroke_dysplay[8] = 0x20;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
stroke_dysplay[9] = 0x20;
data = h_10 + 0x30;
stroke_dysplay[10] = (index._640 & !(cursor ^ 4))?0x20:data;
data = h_01 + 0x30;
stroke_dysplay[11] = (index._640 & !(cursor ^ 4))?0x20:data;
stroke_dysplay[12] = 0x3a;
data = m_10 + 0x30;
stroke_dysplay[13] = (index._640 & !(cursor ^ 5))?0x20:data;
data = m_01 + 0x30;
stroke_dysplay[14] = (index._640 & !(cursor ^ 5))?0x20:data;
stroke_dysplay[15] = 0x20;
}
for (i = 0;i < 17;i++) //вывод информации первой
строки на индикатор
{
delay_50uS();
buff_lcd = stroke_dysplay[i];
port_lcd = buff_lcd;
strob();
port_lcd = buff_lcd << 4 | light;;
strob();
}
//*************************************************************
delay_150uS();
rw = 0;
//установка адреса второй строки
rs = 0;
port_lcd = 0xc0 | light;;
strob();
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
port_lcd = 0x00 | light;;
strob();
rs = 1;
if (status.work == 0)
//рабочий режим
{
data = relay._0?on:off;
stroke_dysplay[16] = (index._640 & !(cursor ^ 9))?0x20:data;
data = relay._1?on:off;
stroke_dysplay[17] = (index._640 & !(cursor ^ 10))?0x20:data;
data = relay._2?on:off;
stroke_dysplay[18] = (index._640 & !(cursor ^ 11))?0x20:data;
data = relay._3?on:off;
stroke_dysplay[19] = (index._640 & !(cursor ^ 12))?0x20:data;
data = relay._4?on:off;
stroke_dysplay[20] = (index._640 & !(cursor ^ 13))?0x20:data;
data = relay._5?on:off;
stroke_dysplay[21] = (index._640 & !(cursor ^ 14))?0x20:data;
data = relay._6?on:off;
stroke_dysplay[22] = (index._640 & !(cursor ^ 15))?0x20:data;
data = relay._7?on:off;
stroke_dysplay[23] = (index._640 & !(cursor ^ 16))?0x20:data;
stroke_dysplay[24] = 0x20;
data = n_can_termo + 0x31;
stroke_dysplay[25] = (index._640 & !(cursor ^ 17))?0x20:data;
data = (termo_con.all & (mask_set_1[n_can_termo]))?0x2b:0x2d;
stroke_dysplay[26] = (index._640 & !(cursor ^ 18))?0x20:data;//вкл-
откл канала темперптуры
stroke_dysplay[27] = 0x20;
data = termo_10 + 0x30;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
stroke_dysplay[28] = (index._640 & !(cursor ^ 22))?0x20:data;
data = termo_01 + 0x30;
stroke_dysplay[29] = (index._640 & !(cursor ^ 22))?0x20:data;
stroke_dysplay[30] = 0x2c;
data = termo_00 + 0x30;
stroke_dysplay[31] = (index._640 & !(cursor ^ 22))?0x20:data;
}
else
//программирование
{
stroke_dysplay[16] = 0x20;
stroke_dysplay[17] = ((cursor ^ 10))?0x20:0x73;
stroke_dysplay[18] = ((cursor ^ 10))?0x20:0x74;
stroke_dysplay[19] = ((cursor ^ 10))?0x20:0x6f;
stroke_dysplay[20] = ((cursor ^ 10))?0x20:0x72;
stroke_dysplay[21] = ((cursor ^ 10))?0x20:0x65;
stroke_dysplay[22] = ((cursor ^ 10))?0x20:0x7e;
stroke_dysplay[23] = 0x20;
stroke_dysplay[24] = 0x20;
data = n_can_termo + 0x31;
stroke_dysplay[25] = (index._640 & !(cursor ^ 6))?0x20:data;
stroke_dysplay[26] = 0x74;
stroke_dysplay[27] = 0x3d;
data = set_termo_10 + 0x30;
stroke_dysplay[28] = (index._640 & !(cursor ^ 7))?0x20:data;
data = set_termo_01 + 0x30;
stroke_dysplay[29] = (index._640 & !(cursor ^ 7))?0x20:data;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
stroke_dysplay[30] = 0x2c;
data = set_termo_00 + 0x30;
stroke_dysplay[31] = (index._640 & !(cursor ^ 7))?0x20:data;
}
for (i = 16;i < 33;i++) //вывод
информации второй строки на индикатор
{
delay_50uS();
buff_lcd = stroke_dysplay[i];
port_lcd = buff_lcd | light;;
strob();
port_lcd = buff_lcd << 4 | light;;
strob();
}
}
void BCD_decod(void)
{
h_01 = reg_hour.val;
//prg
m_01 = reg_minute.val; //prg
h_10 = 0;
//prg
m_10 = 0;
while (h_01 > 9)
//prg
{
//prg
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
h_01 -= 10;
//prg
h_10++;
//prg
}
//prg
while (m_01 > 9)
//prg
{
//prg
m_01 -= 10;
//prg
m_10++;
//prg
}
//prg
reg_hour.all = eeprom_ram[n_sob << 1];
//prg
reg_minute.all = eeprom_ram[(n_sob << 1) + 1]; //prg
sob_10 = 0;
sob_01 = n_sob + 1; //prg
преобразование из двоичного в двоично - десятичное значение
while (sob_01 > 9)
{
//prg номера события
sob_01 -= 10;
sob_10++;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
}
H_01 = time_hour;
//rab значения часов и минут в BCD
M_01 = time_minute;
H_10 = 0;
M_10 = 0;
while (H_01 > 9)
{
H_01 -= 10;
H_10++;
}
while (M_01 > 9)
{
M_01 -= 10;
M_10++;
}
//***************************************
if (termo[n_can_termo] == 0xffff)
{
termo_00 = 0x2f;
termo_01 = 0x2f;
termo_10 = 0x2f;
}
else
{
termo_01 = (char)(termo[n_can_termo] >> 4);
//rab temperatury в BCD
termo_10 = 0;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
while (termo_01 > 9)
{
termo_01 -= 10;
termo_10++;
}
termo_00 = tabl_termo[(termo[n_can_termo] &
0x000f)];
}
set_termo_01 = (char)(set_termo[n_can_termo] >> 4);
//set temperatury в BCD
set_termo_10 = 0;
while (set_termo_01 > 9)
{
set_termo_01 -= 10;
set_termo_10++;
}
set_termo_00 = tabl_termo[(set_termo[n_can_termo] &
0x000f)];
}
void alarm(void)
//rab
{
char i;
if (status.alarm == 1)
{
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
for (i = 0;i < 200;i += 2)
{
reg_hour.all = eeprom_ram[i];
// перенос из ROM в RAM
reg_minute.all = eeprom_ram[i + 1];
if ((reg_minute.action > 1) && (_switch.all &
mask_set_1[reg_hour.n_can])) //событие активно и канал в
"автомате"
{
if ((reg_minute.val == time_minute) &&
(reg_hour.val == time_hour)) //время совпало
{
if (reg_minute.action == 3)
//включить
_auto.all |=
mask_set_1[reg_hour.n_can];
else if (reg_minute.action ==
2)
//выключить
_auto.all &=
~mask_set_1[reg_hour.n_can];
}
}
}
}
status.alarm = 0;
}
//*******************************************************************
*******************************************************************
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
void out(void)
{
TRISD = 0;
TRISA = 0x0f;
relay._0 = _switch._0?_auto._0:_manual._0;
relay._1 = _switch._1?_auto._1:_manual._1;
relay._2 = _switch._2?_auto._2:_manual._2;
relay._3 = _switch._3?_auto._3:_manual._3;
relay._4 = _switch._4?_auto._4:_manual._4;
relay._5 = _switch._5?_auto._5:_manual._5;
relay._6 = _switch._6?_auto._6:_manual._6;
relay._7 = _switch._7?_auto._7:_manual._7;
relay_port_1 = relay._0;
relay_port_2 = relay._1;
relay_port_3 = relay._2;
relay_port_4 = relay._3;
relay_port_5 = relay._4;
relay_port_6 = relay._5;
relay_port_7 = relay._6;
relay_port_8 = relay._7;
counter--;
compare_out[0] = (counter + 0) & limit;
compare_out[1] = (counter + shift_1) & limit;
compare_out[2] = (counter + shift_2) & limit;
compare_out[3] = (counter + shift_3) & limit;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
if ((termo_out[0] > 0) && (compare_out[0] == termo_out[0]))
reg_1 = termo_con.on_1?1:0;
else if (compare_out[0] == 0)
reg_1 = 0;
if ((termo_out[1] > 0) && (compare_out[1] == termo_out[1]))
reg_2 = termo_con.on_2?1:0;
else if (compare_out[1] == 0)
reg_2 = 0;
if ((termo_out[2] > 0) && (compare_out[2] == termo_out[2]))
reg_3 = termo_con.on_3?1:0;
else if (compare_out[2] == 0)
reg_3 = 0;
if ((termo_out[3] > 0) && (compare_out[3] == termo_out[3]))
reg_4 = termo_con.on_4?1:0;
else if (compare_out[3] == 0)
reg_4 = 0;
}
//*******************************************************************
*********************************
void real_time(void)
{
char i;
// RC3 = 1;
second += 2;
if (second > 59)
{
second = 0;
time_minute++;
status.alarm = 1;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
if (time_minute > 59)
{
time_minute = 0;
time_hour++;
if (time_hour > 23)
time_hour = 0;
}
}
if (status.alarm == 1)
alarm();
if (status.no_pow > 0)
{
// pow_dysplay = 0;
// pow_sensor = 0;
rs = 0;
tmr_dysp_start = 50;
OSCCON = 0x02;
TRISD = 0xff;
TRISA = 0xff;
}
status.no_pow++;
// RC3 = 0;
}
//*******************************************************************
**************************************8
void keyboard(void)
{
static char k,m,j;
k = PORTB & 0b00111110;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
if ((m == no_pusch) && (k == pusch_up))
key = up ;
else if ((m == no_pusch) && (k == pusch_down))
key = down;
else if ((m == no_pusch) && (k == pusch_left))
key = left;
else if ((m == no_pusch) && (k == pusch_right))
key = right;
else if ((m == no_pusch) && (k == pusch_enter))
key = enter;
else if ((m == pusch_left) && (k == 0x2a))
{
status.work = 1;
cursor = 0;
}
else if ((m == pusch_up) && (k == 0x16))
{
status.work = 0;
cursor = 0;
}
else if ((m == pusch_up) && (k == pusch_up))
{
if (timer_key)
timer_key--;
else
{
if ((index.all & 0b00011111) == 0b00011111)
key = up;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
}
}
else if ((m == pusch_down) && (k == pusch_down))
{
if (timer_key)
timer_key--;
else
{
if ((index.all & 0b00011111) == 0b00011111)
key = down;
}
}
else if ((m == no_pusch) && (k == no_pusch))
timer_key = set_time_key_0;
j = rab;
m = k;
}
//*******************************************************************
**********************************
//*******************************************************************
*********************
void func_0(void)
{
ds_port_1 = 0;
if (termo_con._1 == 0)
{
ds_1_reset();
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
delay_500uS();
ds_1_write(0xcc);
delay_150uS();
ds_1_write(0x44);
termo_con._1 = 1;
tmr_ds_1 = 0x0a;
}
else
{
if (tmr_ds_1)
tmr_ds_1--;
else
{
ds_1_reset();
delay_500uS();
ds_1_write(0xcc);
delay_150uS();
ds_1_write(0xbe);
delay_500uS();
ds_1_read();
termo_con._1 = 0;
if ((Crc8(stroke_rx,9) == 0))
{
termo_val.mb = stroke_rx[1];
termo_val.lb = stroke_rx[0];
termo[0] = termo_val.all + corr_termo[0];
if (termo[0] < set_termo[0])
{
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
termo_out[0] = (set_termo[0] -
termo[0]) << 4;
if (termo_out[0] > limit)
termo_out[0] = limit;
}
else
{
termo_out[0] = 0;
}
}
else
{
termo[0] = 0xffff;
termo_out[0] = 0;
}
}
}
alarm();
set_cursor();
}
void func_1(void)
{
ds_port_2 = 0;
if (termo_con._2 == 0)
{
ds_2_reset();
delay_500uS();
ds_2_write(0xcc);
delay_150uS();
ds_2_write(0x44);
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
termo_con._2 = 1;
tmr_ds_2 = 0x0a;
}
else
{
if (tmr_ds_2)
tmr_ds_2--;
else
{
ds_2_reset();
delay_500uS();
ds_2_write(0xcc);
delay_150uS();
ds_2_write(0xbe);
delay_500uS();
ds_2_read();
termo_con._2 = 0;
if ((Crc8(stroke_rx,9) == 0))
{
termo_val.mb = stroke_rx[1];
termo_val.lb = stroke_rx[0];
termo[1] = termo_val.all + corr_termo[1];
if (termo[1] < set_termo[1])
{
termo_out[1] = (set_termo[1] -
termo[1]) << 4;
if (termo_out[1] > limit)
termo_out[1] = limit;
}
else
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
{
termo_out[1] = 0;
}
}
else
{
termo[1] = 0xffff;
termo_out[1] = 0;
}
}
}
BCD_decod();
if (status.no_pow == 0)
display();
}
void func_2(void)
{
ds_port_3 = 0;
if (termo_con._3 == 0)
{
ds_3_reset();
delay_500uS();
ds_3_write(0xcc);
delay_150uS();
ds_3_write(0x44);
termo_con._3 = 1;
tmr_ds_3 = 0x0a;
}
else
{
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
if (tmr_ds_3)
tmr_ds_3--;
else
{
ds_3_reset();
delay_500uS();
ds_3_write(0xcc);
delay_150uS();
ds_3_write(0xbe);
delay_500uS();
ds_3_read();
termo_con._3 = 0;
if ((Crc8(stroke_rx,9) == 0))
{
termo_val.mb = stroke_rx[1];
termo_val.lb = stroke_rx[0];
termo[2] = termo_val.all + corr_termo[2];
if (termo[2] < set_termo[2])
{
termo_out[2] = (set_termo[2] -
termo[2]) << 4;
if (termo_out[2] > limit)
termo_out[2] = limit;
}
else
{
termo_out[2] = 0;
}
}
else
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
{
termo[2] = 0xffff;
termo_out[2] = 0;
}
}
}
set_cursor();
}
void func_3(void)
{
ds_port_4 = 0;
if (termo_con._4 == 0)
{
ds_4_reset();
delay_500uS();
ds_4_write(0xcc);
delay_150uS();
ds_4_write(0x44);
termo_con._4 = 1;
tmr_ds_4 = 0x0a;
}
else
{
if (tmr_ds_4)
tmr_ds_4--;
else
{
ds_4_reset();
delay_500uS();
ds_4_write(0xcc);
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
delay_150uS();
ds_4_write(0xbe);
delay_500uS();
ds_4_read();
termo_con._4 = 0;
if ((Crc8(stroke_rx,9) == 0))
{
termo_val.mb = stroke_rx[1];
termo_val.lb = stroke_rx[0];
termo[3] = termo_val.all + corr_termo[3];
if (termo[3] < set_termo[3])
{
termo_out[3] = (set_termo[3] -
termo[3]) << 4;
if (termo_out[3] > limit)
termo_out[3] = limit;
}
else
{
termo_out[3] = 0;
}
}
else
{
termo[3] = 0xffff;
termo_out[3] = 0;
}
}
}
BCD_decod();
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
if (status.no_pow == 0)
display();
}
typedef void(*func_point)(void);
const func_point func[4] = {func_0,func_1,func_2,func_3};
//*******************************************************************
**********************
void init_LCD()
{
pow_dysplay = 1;
pow_sensor = 1;
rs = 0;
rw = 0;
delay_15mS();
port_lcd = 0x30 | light;
strob();
delay_5mS(); //не проверяем
strob();
delay_150uS(); // не проверяем
strob();
delay_50uS(); //
strob();
delay_50uS(); //
strob();
port_lcd = 0x20 | light;
strob();
delay_50uS(); //
port_lcd = 0x20 | light; // четырехбитная шина
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
strob();
port_lcd = 0x80 | light; //N F
strob();
delay_50uS();
port_lcd = 0x00 | light;
strob();
port_lcd = 0xd0 | light;
strob();
delay_50uS();
port_lcd = 0x00 | light;
strob();
port_lcd = 0x60 | light;
strob();
delay_50uS();
port_lcd = 0x00 | light;
strob();
port_lcd = 0x10 | light;
strob();
delay_15mS();
}
void init(void)
{
char i,j,k;
OSCCON = 0x7a;
PORTA = 0;
PORTB = 0;
PORTC = 0;
PORTD = 0;
PORTE = 0;
TRISA = 0b00001111;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
ANSELA = 0;
TRISB = 0b00111111;
ANSELB = 0;
TRISC = 0b00000000;
ANSELC = 0;
TRISD = 0;
ANSELD = 0;
TRISE = 0;
ANSELE = 0;
INTE = 1;
INTEDG = 1;
//прерывание по положительному фронту
TMR1IE = 1;
T1CON = 0x8d;
INTF = 0;
TMR1IF = 0;
PEIE = 1;
nWPUEN = 0;
WPUB = 0b00111110;
timer_light = set_time_light;
init_LCD();
status.work = 0;
cursor = 20;
key = 0x20;
k = 0;
for (j = 0;j < 8;j++)
//перенос данных из
ПЗУ в ОЗУ
{
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
for (i = 0;i < 32;i++)
{
eeprom_ram[k] = eeprom_rom[j][i];
k++;
}
}
for (i = 0;i < 4;i++)
{
j = i << 1;
buffer.lb = eeprom_ram[200 + j];
buffer.mb = eeprom_ram[201 + j];
set_termo[i] = buffer.all;
buffer.lb = eeprom_ram[208 + j];
buffer.mb = eeprom_ram[209 + j];
corr_termo[i] = buffer.all;
}
_switch.all = eeprom_ram[216];
}
//*******************************************************************
********************
void main(void)
{
init();
while (1)
{
if ((INTF == 0) && (TMR1IF == 0))
SLEEP(); //если прерывания нет - спим
else
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
{
if (INTF == 1)
// если прерывание от RB0
{
if (status.write == 1)
write_flash();
OSCCON = 0x7a;
if (pow_dysplay == 0)
if (tmr_dysp_start)
tmr_dysp_start--;
else
init_LCD();
status.no_pow = 0;
keyboard();
(func[index.all & 0x03])();
out();
index.all++;
INTF = 0;
}
if (TMR1IF == 1)
// если прерывание от
TMR1
{
CLRWDT();
status.second = !status.second;
real_time();
TMR1IF = 0;
}
}
}
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
}
4.2 Прошивка МК змінних
#include <htc.h>
#define relay_port_1 LATD0
#define relay_port_2 LATD2
#define relay_port_3 LATD4
#define relay_port_4 LATD6
#define relay_port_5 LATD7
#define relay_port_6 LATD5
#define relay_port_7 LATD3
#define relay_port_8 LATD1
#define port_lcd LATC
#define rs RE0
#define rw RE1
#define e RE2
#define ds_port_1 RA0
#define ds_port_2 RA1
#define ds_port_3 RA2
#define ds_port_4 RA3
#define reg_1 LATA4
#define reg_2 LATA5
#define reg_3 LATA6
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
#define reg_4 LATA7
#define light_sw RC3
#define tris_1 TRISA0
#define tris_2 TRISA1
#define tris_3 TRISA2
#define tris_4 TRISA3
#define on 0x2b
#define off 0x2d
#define noact 0x78
#define au 0xed
#define man 0xdf
#define pusch_up 0b00110110
#define pusch_down 0b00011110
#define pusch_left 0b00101110
#define pusch_right 0b00111010
#define pusch_enter 0b00111100
#define no_pusch 0b00111110
#define prg (char)(pusch_left & pusch_right)
#define rab (char)(pusch_up & pusch_down)
#define up 0x30
#define down 0x31
#define left 0x32
#define right 0x33
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
#define enter 0x34
#define set_time_key_0 100
#define set_time_key_1 50
#define set_time_light 500
//#define set_time_pulse 10
#define limit 0x3f
#define shift_1
limit/4
#define shift_2
limit/2
#define shift_3
shift_1 + shift_2
unsigned char eeprom_ram[224];
unsigned char second,buff_lcd,cursor,data,key,light;
unsigned char n_can,counter,count_wr;
unsigned char
H_10,H_01,M_10,M_01,h_10,h_01,m_10,m_01,time_hour,time_minute,i_01,i_10;
unsigned char
n_can_termo,termo_10,termo_01,termo_00,set_termo_10,set_termo_01,set_termo_00;
unsigned char n_sob,sob_10,sob_01;
unsigned int termo[4];
int corr_termo[4];
unsigned int termo_out[4];
unsigned int set_termo[4];
unsigned char tmr_ds_1,tmr_ds_2,tmr_ds_3,tmr_ds_4;
unsigned char ds_bit[] = {0x01,0x02,0x04,0x08};
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
unsigned char set_time_pulse;
unsigned char timer_key,timer_dysp_start,timer_pulse;
char stroke_dysplay[32];
unsigned char compare_out[4];
unsigned char stroke_rx[9];
unsigned int timer_light;
union {
struct{
unsigned _0:1;
unsigned _1:1;
unsigned _2:1;
unsigned _3:1;
unsigned _4:1;
unsigned _5:1;
unsigned _6:1;
unsigned _7:1;
};unsigned char all;
}_pulse;
union {
struct{
unsigned _0:1;
unsigned _1:1;
unsigned _2:1;
unsigned _3:1;
unsigned _4:1;
unsigned _5:1;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
unsigned _6:1;
unsigned _7:1;
};unsigned char all;
}_switch;
union {
struct{
unsigned _0:1;
unsigned _1:1;
unsigned _2:1;
unsigned _3:1;
unsigned _4:1;
unsigned _5:1;
unsigned _6:1;
unsigned _7:1;
};unsigned char all;
}_auto;
union {
struct{
unsigned _0:1;
unsigned _1:1;
unsigned _2:1;
unsigned _3:1;
unsigned _4:1;
unsigned _5:1;
unsigned _6:1;
unsigned _7:1;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
};unsigned char all;
}_manual;
union {
struct{
unsigned _0:1;
unsigned _1:1;
unsigned _2:1;
unsigned _3:1;
unsigned _4:1;
unsigned _5:1;
unsigned _6:1;
unsigned _7:1;
};unsigned char all;
}relay;
union {
struct{
unsigned _40:1;
unsigned _80:1;
unsigned _160:1;
unsigned _320:1;
unsigned _640:1;
unsigned _1280:1;
unsigned _2560:1;
unsigned _5120:1;
};unsigned char all;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
}index;
union {
struct{
unsigned :1;
unsigned go:1;
unsigned write:1;
unsigned second:1;
unsigned no_pow:2;
unsigned work:1;
unsigned alarm:1;
};unsigned char all;
}status;
union {
struct{
unsigned on_1:1;
unsigned on_2:1;
unsigned on_3:1;
unsigned on_4:1;
unsigned _1:1;
unsigned _2:1;
unsigned _3:1;
unsigned _4:1;
};unsigned char all;
}termo_con;
union {
struct{
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
unsigned val:5;
unsigned n_can:3;
};unsigned char all;
}reg_hour;
union {
struct{
unsigned val:6;
unsigned action:2;
};unsigned char all;
}reg_minute;
union {
struct{
unsigned tim:3;
unsigned key:5;
};unsigned char all;
}qwerty;
union {
struct {
unsigned lb:8;
//
unsigned mb:8;
//
};unsigned int all;
}termo_val;
union {
struct {
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
unsigned lb:8;
//
unsigned mb:8;
//
};unsigned int all;
}buffer;
union {
struct {
unsigned _bit:1;
//
unsigned :7;
//
};unsigned char all;
}shift_reg_tx;
union {
struct {
unsigned :7;
unsigned _bit:1;
};unsigned char all;
}shift_reg_rx;
const unsigned char eeprom_rom[8][32] =
{{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}};
const unsigned char qwesad[] = {0,0,0};
const unsigned char tabl_termo[] =
{0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x05,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x
09};
const unsigned char mask_set_1[] = {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
const char Crc8Table[256]=
{
0, 94, 188, 226, 97, 63, 221, 131, 194, 156, 126, 32, 163, 253, 31, 65,
157, 195, 33, 127, 252, 162, 64, 30, 95, 1, 227, 189, 62, 96, 130, 220,
35, 125, 159, 193, 66, 28, 254, 160, 225, 191, 93, 3, 128, 222, 60, 98,
190, 224, 2, 92, 223, 129, 99, 61, 124, 34, 192, 158, 29, 67, 161, 255,
70, 24, 250, 164, 39, 121, 155, 197, 132, 218, 56, 102, 229, 187, 89, 7,
219, 133, 103, 57, 186, 228, 6, 88, 25, 71, 165, 251, 120, 38, 196, 154,
101, 59, 217, 135, 4, 90, 184, 230, 167, 249, 27, 69, 198, 152, 122, 36,
248, 166, 68, 26, 153, 199, 37, 123, 58, 100, 134, 216, 91, 5, 231, 185,
140, 210, 48, 110, 237, 179, 81, 15, 78, 16, 242, 172, 47, 113, 147, 205,
17, 79, 173, 243, 112, 46, 204, 146, 211, 141, 111, 49, 178, 236, 14, 80,
175, 241, 19, 77, 206, 144, 114, 44, 109, 51, 209, 143, 12, 82, 176, 238,
50, 108, 142, 208, 83, 13, 239, 177, 240, 174, 76, 18, 145, 207, 45, 115,
202, 148, 118, 40, 171, 245, 23, 73, 8, 86, 180, 234, 105, 55, 213, 139,
87, 9, 235, 181, 54, 104, 138, 212, 149, 203, 41, 119, 244, 170, 72, 22,
233, 183, 85, 11, 136, 214, 52, 106, 43, 117, 151, 201, 74, 20, 246, 168,
116, 42, 200, 150, 21, 75, 169, 247, 182, 232, 10, 84, 215, 137, 107, 53
};
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
5 Оцінка точності та розрахунок надійності пристрою
5.1 Оцінка точності програмованого таймера-генератора для
робототехнічних комплексів
Похибка програмованого таймера-генератора для робототехнічних
комплексів не є постійною величиною, а змінюється в часі в залежності від зміни
умов проведення аналізів. Для вивчення похибки програмованого таймера-
генератора для робототехнічних комплексів необхідно розділити її на складові
частини. На рисунку 6.1 представлена схема програмованого таймера-генератора
для робототехнічних комплексів.
Рисунок 5.1 - Структурна схема програмованого таймера-генератора для
робототехнічних комплексів: КР – кварцовий резонатор, ДТ – датчик
температури, ЦП – центральний процесор, ОК – органи керування, БУЗП – блок
управління зовнішніми пристроями, БЖ – блок живлення, ЦП – мікроконтролер
типу PIC16F1517-I/P(MICRO CHIP)
Тоді загальна похибка програмованого таймера-генератора для
робототехнічних комплексів розраховується за формулою:
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
2 2 2 2 2 2 2
1 2 3 4 5 6 7 , (5.1)
де 1 – приведена похибка кварцового резонатора;
2 – приведена похибка датчика температури;
3 – приведена похибка центрального процесора;
4 – приведена похибка органів керування;
5 – приведена похибка блока управління зовнішніми пристроями;
6 – приведена похибка блока живлення;
7 – приведена похибка мікроконтролера.
2 2 2 2 2 2 2
0,4 0,1 1,0 0,3 0,1 0,2 1,8 2,133% .
5.2 Розрахунок надійності пристрою
Надійність є однієї зі складових якості виробу. Вона характеризує
властивість виробу виконувати задані функції, зберігаючи в часі значення
встановлених експлуатаційних показників у необхідних межах, що відповідають
заданим режимам і умовам використання, технічного обслуговування, ремонтів,
збереження і транспортування. Як комплексна властивість, надійність, у
залежності від призначення об'єкта й умов його експлуатації може включати
наступні складові: безвідмовність, довговічність, живучість і ремонтопридатність.
Кількісною характеристикою одного чи декількох властивостей надійності
є показники безвідмовності, довговічності, ремонтопридатності, живучості і
комплексні показники.
Показники безвідмовності - імовірність безвідмовної роботи P(t),
інтенсивність відмовлень (t), середній наробіток до відмовлення, - відсотковий
наробіток до відмовлення, середній наробіток до відмовлення, параметр потоку
відмовлень.
Імовірність безвідмовної роботи P(t) - імовірність того, що в межах
заданого наробітку t0 відмовлення не виникає чи, що параметри не будуть
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
виходити за межі заданих допусків протягом необхідного інтервалу часу в умовах
експлуатації:
P(t0) = 1 - F(t0), (5.2)
де F(t0) - функція розподілу наробітку до відмовлення.
Оцінка показника P(t0) характеризує частку працездатних виробів у момент
часу t0:
P(t0) = 1 – Ni / N, (5.3)
де t0 - час іспиту;
m - число інтервалів часу t, через які контролювалася працездатність, m =
t0/t;
NІ - число виробів, що відмовили на і-ом інтервалі часу;
N - загальне число випробуваних виробів.
Інтенсивність відмовлень (t) визначають як умовну щільність імовірності
виникнення відмовлення невідновленого об'єкта для розглянутого моменту часу
за умови, що до цього часу відмовлення не виникло:
(t) = f(t) / P(t). (5.4)
Приблизно (t) = N* / N ∙ t. де N* - число виробів, що відмовили при
іспитах протягом інтервалу часу t; N - число виробів, працездатних до початку
іспитів. Функції P(t), F(t), (t) взаємозалежні, тому для їхнього визначення досить
знати тільки одну. На практиці перевагу віддають інтенсивності відмовлень, тому
що її простіше визначити експериментально.
Для більшості об'єктів (деталей, виробів) залежність P(t) можна зобразити
кривої [8], що має три ділянки: 0 < t < t1; t1 < t < t2; t > t2.
Перша ділянка називається періодом чи приробляння періодом ранніх
відмовлень. Поява відмовлень у цьому періоді звичайно викликано
конструктивними чи виробничими дефектами.
Друга ділянка постійної інтенсивності (t) = const характеризує нормальну
експлуатацію, на цій ділянці:
P(t) = exp(- ∙ t). (5.5)
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Третя ділянка t - t2 називається періодом відмовлень зносу.
Середній наробіток до відмовлення tСР визначається як математичне
чекання наробітку до першого відмовлення. Розрахунок надійності будемо
виробляється для другої ділянки.
Середній час безвідмовної роботи визначається по формулі:
TСР = 1 / . (5.6)
Інтенсивність відмовлень усієї системи визначається зі співвідношення:
= . (5.7)
Для систем, елементи яких працюють в умовах сталості інтенсивності
відмовлень, імовірність безвідмовної роботи може бути визначена по формулі:
P = n
i=1 П Pi = exp(- t ∙ i) = exp(- ∙ t). (5.8)
Як видно з приведених залежностей надійність визначається інтенсивністю
відмовлень i окремих елементів системи й у період її нормальної експлуатації.
Вихідні дані і результати розрахунків надійності програмованого таймера-
генератора для робототехнічних комплексів приведені в додатку Д.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
6 Спеціальний розділ
6.1 Технологічний розділ
Наш програмований таймер-генератор для робототехнічних комплексів
складається з двох плат (рисунок 6.1 та 6.2). Розміри плат становлять ширина 73
мм, довжина 134 мм, товщина 5 мм, що є досить компактна в нашому випадку.
Рисунок 6.1 – Друкована плата контролера
Рисунок 6.2 – Друкована плата блоку управління зовнішніми пристроями
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Тип виробництва визначає спосіб виготовлення фотошаблонів, побудова
технологічного процесу і ступінь його деталізації. У залежності від розміру
виробничої програми, технічних і економічних умов виробництво буває
одиничне, серійне і масове.
Одиничне виробництво фотошаблонів характеризується широкою
номенклатурою і малим обсягом випуску, виготовлення фотошаблонів у
серійному і масовому виробництвах - застосування устаткування, що дозволяє
механізувати й автоматизувати виробничі процеси.
При ухваленні рішення про методи і послідовність виготовлення
фотошаблонів, необхідно провести оптимізацію варіантів технологічного процесу
для визначеного типу виробництва.
Тип виробництва характеризується коефіцієнтом закріплення операції:
О
К , (6.1)
ЗО
р
де О - сума операцій;
р - сума робочих місць.
Виходячи з приведеної формули необхідно установити співвідношення
між трудомісткістю виконання операцій і продуктивністю робочих місць. На
даному етапі проектування нормування операцій можна виконати,
використовуючи орієнтовані норми типового технологічного процесу.
Спираючи на вихідні дані і містячи в розпорядженні штучного чи штучно-
калькуляційного часу, визначають кількість одиниць оснащення:
N T
ШТІ штк
m
i , (6.2)
60 F
g з.н
де N - річна програма випуску;
ТШТ(К) - штучне чи штучно-калькуляційний час, хв.;
Fg - відповідної дійсності річний фонд часу, год;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
З.Н. - нормативний коефіцієнт завантаження оснащення. Завантаження
оснащення залежить від типу виробництва - можна прийняти середнє значення
З.Н.=0,8.
Після розрахунку значень m по всіх операціях установлюють кількість
робочих місць, округляючи до найближчого більшого цілого числа значення m.
Для операцій, що не вимагають через міру години, значення m може бути
значно менше одиниці, Це означає, що номенклатура робіт на таких робочих
місцях має бути розширена. Кількість операцій, що можна виконувати на кожнім
робочому місці, визначається за формулою:
з .н.
О , (6.3)
.
з .ф .
де З.Ф. - коефіцієнт фактичної завантаженості оснащення,
m
з.ф. . (6.4)
p
Після розрахунків кількості робочих місць і кількості операцій за
формулою (6.1) визначають кЗ. О..
При масовому і крупносерійному виробництвах кЗ.О.. = 1 10, при
середньосерійному кЗ.О. = 10 20, при малосерійному кЗ.О..= 20 40, при
одиничному виробництві кЗ. О.. не регламентується.
Первинний фотошаблон одержують хімічною обробкою експонованих
фотопластинок, проконтролювавши спочатку температуру робочих розчинів
термометром. Відлік часу обробки проводять за секундоміром.
Для виготовлення робочого фотошаблону використовують первинний
фотошаблон. Робочий фотошаблон одержують копіюванням первинного
фотошаблона на контактно-копіювальному верстаті і подальшій хімічній обробці
матеріалу. Перед копіюванням первинний фотошаблон необхідно протерти з
боку підкладки серветкою, змоченої в етиловому спирті для виділення пилу,
бруду, жирових плям. Стекло контактно-копіювального верстата необхідно
протерти антистатичною серветкою. Копіювання, а також висвітлення для
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
копіювання й обробки пластин і фототехнічної плівки виконуються за
допомогою фото ліхтаря з червоним світлофільтром. Діазографічні плівки
копіюють і обробляють при звичайному висвітленні, не допускаючи висвітлення
матеріалу сонячними чи променями ультрафіолетовим випромінюванням. При
копіюванні первинний фотошаблон і матеріал додають один до одному і
переносять до контактно - копіювального верстата, причому емульсійний шар
первинного фотошаблона і світлочутливий шар матеріалу повинні безпосередньо
стикатися.
Експонування проводять через первинний фотошаблон на світлочутливий
матеріал. Виготовлення робочого фотошаблону на фототехнічній плівці ФТ-41П
здійснюється шляхом експонування на контактно-копіювальному верстаті
крапковим джерелом білого світла і хімічної обробки експонованого матеріалу.
Виготовлення робочого діапозитива на діазографічній плівці ТМ
здійснюється в такий спосіб. Після експонування діазографічна плівка
обробляється в проявочному пристрої в парах аміаку до максимального
насичення кольору фото зображення.
6.2 Економічний розділ
6.2.1 Маркетингове дослідження приладу
Таймер - це пристрій або інструмент, який відраховує інтервали часу.
Таймери можна розглядати як різновид годинника. Таймери можна
використовувати для керування послідовністю подій або процесів. Якщо
секундоміри вимірюють час, що минув, відраховуючи його від нуля, то таймери
відраховують час через задані проміжки часу, як пісочний годинник. Таймери
можуть бути механічними, електромеханічними, електронними (кварцовими) або
програмними.
У більшості випадків під таймером розуміють пристрій, який вимірює
заданий інтервал часу з моменту його запуску (вручну або за електричним
імпульсом) за допомогою секундоміра зворотного відліку, але існують також
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
таймери, в яких момент спрацьовування задається встановленням необхідного
часу (так звані таймери реального часу), в цьому випадку до складу таймера
входить годинник або пристрій, що запам'ятовує час, найпростішим таймером
такого типу є будильник.
Таймерні пристрої різних типів давно використовуються для автоматизації
певних процесів, як у побуті, так і на виробництві. Управління технічними
процесами часто вимагає виконання в режимі реального часу. На сучасному етапі
таймери можуть використовуватися для формування керуючих дій, наприклад,
для встановлення різних інтервалів руху обладнання або сигналізації про
закінчення відліку часу, призначеного для певного процесу. Таким чином,
використання таймерів є актуальним як для автоматизації виробництва, так і для
побудови роботизованих систем у повсякденному житті. Прикладами можуть
слугувати автоматичне керування процесами волого- та термообробки у швейній
промисловості. Найуспішнішим способом підтримання необхідного режиму
волого-теплової обробки є використання автоматичного контролю як
температури, так і часу обробки.
Таймер як пристрій
Таймер як пристрій - це промисловий, технічний, військовий або
побутовий пристрій, який видає певний сигнал у визначений час або вмикає чи
вимикає певне обладнання за допомогою пристрою комутації електричного кола.
Таймери з достатньою точністю, призначені для встановлення тривалості
будь-якого процесу в промисловому виробництві, транспорті, зв'язку, наукових
дослідженнях тощо, сертифікуються як засоби вимірювальної техніки.
Деякі таймери оснащені програмними пристроями, які забезпечують
випромінювання сигналів по різних шляхах і спрацьовування в різний час,
наприклад, вмикання приладів у певному порядку. Існують також програмні
таймери, які реалізують подібні функції.
Таймер як елемент комп'ютера
Сучасні комп'ютери оснащені двома основними типами цифрових
таймерів: апаратними та програмними.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Апаратні таймери працюють незалежно від центрального процесора і при
спрацьовуванні надсилають переривання.
Програмні таймери реалізуються шляхом виконання певної кількості
однакових "порожніх" операцій за один цикл. Якщо частота процесора фіксована,
це дозволяє точно визначити час, що минув. Основними недоліками цього
підходу є
-Кількість ітерацій циклу залежить від типу та частоти процесора.
-Під час затримки не може виконуватися жодна інша обробка.
6.2.2 Розрахунок собівартості виготовлення пристрою –
програмованого таймера-генератора
Залежно від того, як певні продукти включаються до собівартості
виробництва, витрати можна розділити на прямі та непрямі. Прямі витрати - це
витрати, які можна безпосередньо включити до собівартості продукції. Непрямі
витрати - це витрати на утримання та експлуатацію обладнання, цехові накладні
витрати тощо. Прямі витрати включають
1. заробітна плата працівників (включаючи відрахування);
2. витрати на паливо та електроенергію для технічних цілей; та
3. вартість матеріалів та комплектуючих; та
4. вартість будь-яких використаних допоміжних матеріалів; 4. вартість
будь-яких використаних допоміжних матеріалів
5. витрати на розробку та підготовку виробництва;
6. відшкодування витрат на витратні матеріали інструментів та обладнання
спеціального призначення; погодинна тарифна ставка для першого розряду
розраховується за формулою:
Розраховуємо вартість матеріалів, запасних частин, комплектуючих які
витрачаються на виготовлення пристрою.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Таблиця 6.1 - Розрахунок вартості матеріалів, запасних частин,
комплектуючих матеріалів, грн.
№ Назва Кількість Вартість грн.
За одиницю Загальна
1 Великий корпус 1 108,00 108,00
2 Малий корпус 1 87,00 87,00
3 Трансформатор 220\12 1 71,00 71,00
4 Друковані плати 2 250,00 500,00
5 Індекатор WA1602L 1 415,00 415,00
6 Реле 8 25,00 200,00
7 Сімістор BTA 140-800 4 48,00 192,00
8 Клемник 4-х контактний 6 31,00 186,00
9 Клемник 3-х контактний 4 21,00 84,00
10 Кнопки 5 5,00 25,00
11 Штовхачі для кнопок 5 2,2 11,00
12 Зумер 1 5,00 5,00
13 Тримач батареї CR 1 4,00 4,00
14 Мікроконтролер PIC16F1517-I/PT 1 76,00 76,00
15 Датчик DS18B20 4 43,00 172,00
16 Мікросхема ULN2003 2 4,50 9,00
17 Мікросхема МС34063 1 11,00 11,00
18 Мікросхема МОС3062 4 21,00 84,00
19 Діодний міст DF08 1 15,00 15,00
20 Діод LL4148 11 0,9 9,9
21 Діод MBRS140 2 5,50 11,00
22 Діод BAV99 4 0,60 2,40
23 Діод GS1M 2 1,20 2,40
24 Стабілітрон BZV55 4.7V 1 11,00 11,00
25 Дросель 100мкГн & 500мА 1 7,00 7,00
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
26 Роз’єм ICD20 2 5,00 10,00
27 Роз’єм ВН20 2 5,00 10,00
28 Плівочний конденсатор 4 1,50 6,00
29 Конденсатор Ел 2200.0 & 25в 1 10,00 10,00
30 Конденсатор Ел 1000.0 & 25в 1 7,00 7,00
31 Конденсатор Ел 100.0 & 25в 1 3,00 3,00
32 Конденсатор 0805 9 0,70 6,30
33 Конденсатор 0.125Вт 12 1,50 18,00
34 Резистор 0805 19 0,50 9,50
Всього 125 2378,50
Загальна вартість матеріалів, запасних частин, комплектуючих складає
2378,50 грн.
6.3 Розділ охорони праці
6.3.1 Аналіз небезпек та шкідливостей, які виникають у приміщенні
проектно-технічного відділу
В даній роботі проводиться розробка багатоканального таймеру
виконавчих пристроїв робототехнічних систем. Ці роботи пов’язані з
опрацюванням великої кількості матеріалу, вивчення аналогічних проектів,
проведенням математичних розрахунків, створення схем та креслень, що потребує
використання сучасної комп’ютерної техніки.
Подібні дослідження проводяться працівниками проектно-технічному
відділу. Приміщення відділу має наступні геометричні розмірами: довжина 8 м,
ширина 5 м та висота 3 м. Площа всього приміщення складає 40 м2, а об’єм - 120
м3. В приміщенні працюють чотири працівника, тому на одного працюючого
припадає 10 м2 площі та 30 м3 об’єму, що відповідає вимогам ДСанПіН 3.3.2.-007-
98, відповідно до яких площа, виділена для одного робочого місця з ПК, повинна
складати не менше 6 м2, а об’єм - не менше 20 м3.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Висота робочої поверхні робочого столу працівника становить 70 cм, а
ширина і глибина - 115 і 80 cм відповідно, що дозволяє розташувати дисплей на
оптимальній відстані від очей користувача, що становить 60-70 см. Робочий
стілець підйомно-поворотний, поверхня сидіння м'яка, що дозволяє уникнути
передавлення судин на ногах. Висота поверхні сидіння регулюється в межах 40-50
см. Отже, організація робочого місця повністю задовольняє ергономічним
вимогам ДСТУ 8604:2015.
Мікроклімат виробничих приміщень - це сукупність параметрів повітря у
виробничому приміщенні, які діють на людину у процесі праці, на її робочому
місці, у робочій зоні. Фізичне навантаження працівників відділу слід віднести до
категорії Ιа, оскільки робота здійснюється сидячи та без фізичної напруги. До
параметрів мікроклімату відноситься температура повітря, відносна вологість
повітря та швидкість руху повітря. Параметри температури, відносної вологості і
швидкості руху повітря нормуються в комплексі. Нормативне значення залежить
від категорії важкості робіт та від періоду року. Розрізняють два періоди року:
холодний - середньодобова температура зовнішнього повітря +10°С і нижче,
теплий - середньодобова температура зовнішнього повітря понад +10°С.
Основним нормативним документом, що визначає параметри мікроклімату
виробничих приміщень є ДСН 3.3.6.042-99. Вказані параметри нормуються для
робочої зони - простору, обмеженого по висоті 2 м над рівнем підлоги чи
майданчика, на якому знаходяться робочі місця постійного або непостійного
(тимчасового) перебування працівників.
Основна роль у підтриманні оптимального теплового стану відводиться
терморегуляції, тобто процесам утворення тепла і віддачі тепла в зовнішнє
середовище, спрямованих на забезпечення термостабільності організму, тобто
підтримка внутрішньої температури тіла на постійному рівні.
Отже, для того щоб визначити, чи відповідає повітряне середовище даного
приміщення встановленим нормам, необхідно кількісно оцінити кожний його
параметр. Нормативні параметри мікроклімату для категорії Іа наведені в таблиці
6.1.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Таблиця 6.1 - Нормативні параметри мікроклімату для категорії роботи Iа
Відносна
Період Категорія Температура, С Швидкість руху повітря, м/с
вологість, %
року роботи
Опт. Доп. Опт. Опт. Допуст.
Холодний Iа 22-24 21-25 40-60 0,1 0,1
Теплий Iа 23-25 22-28 40-60 0,1 0,1-0,2
В таблиці 6.2 наведені фактичні параметри мікроклімату приміщення.
Таблиця 6.2 - Фактичні значення параметрів мікроклімату
Теплий період Холодний період
Показник
року року
Температури повітря, С 24 23
Відносна вологість повітря,% 55 52
Швидкість руху повітря, м/с 0,1 0,1
Отже, наведені фактичні значення мікроклімату задовольняють вимогам
ДСН 3.3.6.042-99.
Для підтримки оптимальної температури в теплий період року в приміщенні
відділу використовується 1 кондиціонер типу DELFA ADW-07C.
В холодний період року в приміщенні використовується система
центрального водяного опалення. Для забезпечення оптимальної температури в
холодний період року додатково використовуються 1 електричний обігрівач типу
Tiberis Classik.
Серед чинників зовнішнього середовища, що впливають на організм
людини в процесі праці, світло посідає одне з перших місць. Адже відомо, що
майже 90 % усієї інформації про довкілля людина одержує через органи зору.
Підчас здійснення будь-якої трудової діяльності втомлюваність очей, в
основному, залежить від напруженості процесів, що супроводжують зорове
сприйняття.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Світло впливає не лише на функцію органів зору, а й на діяльність
організму в цілому. У разі поганого освітлення людина швидко втомлюється,
працює менш продуктивно, зростає потенційна небезпека помилкових дій і
нещасних випадків.
Для створення оптимальних умов зорової роботи слід ураховувати не лише
кількість та якість освітлення, а й кольорове оточення. Так, при світлому
пофарбуванні інтер'єру завдяки збільшенню кількості відбитого світла рівень
освітленості підвищується на 20-40% (при тій же потужності джерел світла),
різкість тіней зменшується, покращується рівномірність освітлення. При
надмірній яскравості джерел світла та предметів, що знаходяться у полі зору,
може статися засліплення працівника. Нерівномірність освітлення та неоднакова
яскравість навколишніх предметів призводять до частої преадаптації очей під час
виконання роботи і, як наслідок цього, до швидкого втомлення органів зору. Тому
поверхні, що добре освітлюються і перебувають у полі зору, краще фарбувати в
кольори середньої світлості, коефіцієнт відбиття яких знаходиться в межах 0,3-
0,6; бажано, щоб вони мали матову або напівматову поверхню.
Освітлення робочого приміщення нормується згідно ДБН В.2.5-28-2018
«Природне і штучне освітлення». Усі робочі місця працівників розташовані біля
вікна таким чином, щоб світло падало на робоче місце з лівого або правого боку.
Природне освітлення здійснюється через 2 вікна розмірами 1,4×2,06 м,
загальною площею - 5,8 м2. З метою розсіювання прямих сонячних променів, на
вікнах висять штори. Робота працівника відповідає розряду - ІІг, тобто дуже
точній зоровій праці. Нормативне значення КПО ен=1,5 %, а фактичне значення –
29-32 %, що відповідає ДБН В.2.5-28-2018.
Штучне освітлення приміщення здійснюється 4 растровими світильниками
Lumen ЛВО-02У-418, кожен з яких має 4 люмінесцентні лампи типу T8.
Фактичне значення величини штучного освітлення відділу становить 410
лк., а нормативне значення – 400 лк. Отже, система штучного освітлення
відповідає вимогам ДБН В.2.5-28-2018 «Природне і штучне освітлення».
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Шум – це хаотична сукупність різних за силою і частотою звуків, що
заважають сприйняттю корисних сигналів. Під шумом розуміють усі неприємні та
небажані звуки (їх сукупність), які заважають нормально працювати, сприймати
потрібні звуки, відпочивати. Шум несприятливо впливає на людину і може
спричинити хворобливі наслідки: з'являються симптоми перевтоми,
послаблюється увага, підвищується нервова збудливість, знижується
працездатність, порушується робота шлунково-кишкового тракту. Шум - це одна
з форм фізичного (хвильового) забруднення природного середовища, адаптація до
якого організму людини практично не можлива.
В приміщенні основним джерелом шуму являються вентилятори системних
блоків ПК. Згідно вимог ДСН 3.3.6.037-99 «Державні санітарні норми
виробничого шуму, ультразвуку та інфразвуку» нормативне значення
еквівалентного рівня шуму становить 50 дБА. Шум від вентиляторів становить –
40-44 дБА, а отже відповідає нормативним вимогам.
Категорія приміщення проектно-технічного відділу за вибухопоже-
жонебезпечністю відповідає типу В (пожежонебезпечна), а клас пожежі - Е
(горіння установок і обладнання, які знаходяться під напругою), А2 (горіння
твердих матеріалів яке не супроводжується тлінням), що відповідає ДСТУ Б
В.1.1-36:2016.
В приміщенні знаходяться 1 переносний вуглекислотний вогнегасник ВВК-
5, який використовуються для гасіння легкозаймистих та горючих рідин, твердих
горючих речовин та матеріалів, електропроводок, що не відповідає Правилам
експлуатації вогнегасників, згідно яких на кожні 20 м2, площі приміщення
повинен припадати 1 вогнегасник.
Для того, щоб уникнути нещасних випадків на робочому місці в установі
складені та проведені інструктажі з охорони праці та техніки електробезпеки
працівників (вступний, первинний, повторний, позаплановий, цільовий),
відповідно НПАОП 0.00-4.12-05.
Працівники проектно-технічного відділу проходять медогляд один раз на
два роки, що відповідає вимогам документу «Порядок проведення медичних
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
оглядів працівників певних категорій», затверджений наказом Міністерства
охорони здоров'я України від 21.05.2007 р. № 246.
Отже, аналіз умов праці робітників проектно-технічного відділу показав, що
всі фактори виробничого середовища, відповідають своїм нормативним
значенням але необхідно розробити та впровадити систему протипожежних
заходів для зменшення імовірності виникнення пожежі на підприємстві.
6.3.2 Розробка протипожежних заходів на підприємстві
Забезпечення пожежної безпеки підприємств, як об’єктів з масовим
перебуванням людей, є важливим завданням органів державного пожежного
нагляду. Як показує практика незважаючи на заходи, що приймаються
керівниками цих установ, протипожежний захист залишається на низькому рівні.
Отже, можна запропонувати такі заходи, щодо уникнення пожежних
ситуацій:
1) організувати навчання працівників правилам пожежної безпеки,
спрямованих на запобігання пожежам, забезпечення безпеки людей, зниження
можливих майнових втрат і зменшення негативних екологічних наслідків у разі
виникнення пожеж, створення умов для швидкого виклику пожежних
підрозділів та успішного гасіння пожеж;
2) розробити і вивісити на видних місцях плани евакуації людей, який
встановлює обов'язки і дії працівників закладів і установ на випадок виникнення
пожежі;
3) ознайомити всіх працівників з порядком оповіщення людей про пожежу,
для запобігання надзвичайних ситуацій;
4) працівники об’єкта мають бути ознайомлені з вимогами протипожежного
режиму на протипожежних інструктажах із записом у журналі з зазначенням
особистого підпису;
5) визначити і обладнати місця для паління, за для запобігання виникнення
пожежі;
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
6) двері горищ, підвальних приміщень, технічних поверхів, венткамер,
електрощитових слід утримувати зачиненими. На дверях цих приміщень повинно
бути вказане місце знаходження ключів;
7) обладнати сходові марші евакуаційним освітленням, щоб при виникненні
пожежі працівники могли бачити дорогу до виходу;
8) влаштувати систему вентиляції вогнезатримуючими клапанами в місцях
приєднання поверхових повітроводів до вертикального колектору, для затримки
потрапляння вогню до приміщення;
9) вогнегасники в місцях розміщення не повинні створювати перешкоди під
час евакуації людей. Переносні вогнегасники слід розміщувати шляхом
навішування за допомогою кронштейнів на вертикальні конструкції на висоті не
більше 1,5 м від рівня підлоги до нижнього торця вогнегасника і на відстані від
дверей, достатній для їх повного відчинення, або встановлювати у пожежні шафи
поруч з пожежними кранами на пожежні щити та стенди, підставки чи спеціальні
тумби;
10) у разі пожежі ліфти й підйомники повинні опускатися на перший поверх
автоматично, відчинятися й відключатися, для безпеки працівників.
Будівля підприємства відноситься до першого класу відповідальності та
другого (II) ступеню вогнестійкості.
З першого поверху підприємства необхідно, щоб було чотири
розосереджених евакуаційних виходи, що відповідає вимогам ДБН В.1.1-7-2016.
Сходові клітини повинні сполучаються коридорами через протипожежні
тамбур-шлюзи 1-го типу з натиском повітря 20 Па. В ці сходові клітини
забезпечується натиск повітря при пожежі - 40 Па, влаштовується евакуаційне
аварійне освітлення з автономними елементами живлення. Дверні пройми
протипожежних тамбур-шлюзів з боку коридорів, та самі тамбур-шлюзи
захищаються спринклерними водяними завісами, що відповідає вимогам ДБН
В.1.1-7-2016.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
На поверхах в коридорі необхідно, щоб були встановлені перегородки з
протипожежними дверима з межею вогнестійкості 35 хвилин, що відповідає
вимогам ДБН В.2.2-9-2009.
Для забезпечення безперебійної подачі води на господарсько-побутові та
протипожежні потреби необхідно обладнати два вводи водопроводу, з міської
водопровідної системи.
Пожежні шафи на пожежних стояках повинні обладнуватись пожежними
кранами діаметром 50 м, рукавами довжиною 20 м та пожежними стволами, в
пожежних шафах також передбачається розміщення не менше двох вогнегасників,
відповідно до вимог Правил експлуатації вогнегасників.
Відповідно до вимог ДБН В.2.5-56-2014 необхідно, щоб була звукова та
світлова сигналізація пуску пожежних насосів на пульті пожежної та охоронної
сигналізації. Також необхідно, щоб була встановлена автоматична установка
пожежної сигналізації призначена для виявлення пожежі та оповіщення
обслуговуючого персоналу про її виникнення, а також відключення вентиляції та
включення сповіщувачів загальної евакуації.
Так, як проектно-технічний відділ знаходиться на третьому поверсі
необхідно розробити план евакуації (рис.6.1).
Під час евакуації на шляху виведення людей не повинно бути пандусів з
крутизною підйому більшою за 1/5 гвинтових сходів, порогів та інших перешкод,
які можуть спричинити падіння людей.
Двері, ворота і проходи вважаються евакуаційними, якщо вони ведуть з
приміщень:
а) першого поверху назовні безпосередньо або через коридор, вестибюль,
сходову клітку;
б) будь-якого поверху, крім першого, в коридор або прохід до сходової
клітки або в сходову клітку, що має вихід безпосередньо назовні або через
вестибюль, відділений від коридорів перегородками з дверима;
в) в сусідні приміщення на тому ж поверсі, що забезпечені вищеназваними
виходами.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Рисунок 6.1- План евакуації працівників з третього поверху будівлі
підприємства
Евакуаційних виходів з допоміжних будівель або приміщень повинно бути
не менше двох.
Ширина маршів і площадок на сходах, коридорів, переходів між будівлями,
проходів і дверей для евакуації людей повинна відповідати розрахункам, але не
бути меншою від таких величин, м: (маршів і майданчиків сходів - 1,2; коридорів і
переходів між будівлями - 1,0; проходів - 1,4; дверей - 0,8)
Ширина зовнішніх дверей на сходових клітках не повинна бути меншою від
ширини маршу сходів, а сходових маршів і площадок на сходах - не більше 2,4 м.
На підприємстві необхідно, щоб була встановлена припливно-витяжна
вентиляція з механічним та природним спонуканням. Кондиціювання повітря
відділів передбачає приготування санітарної норми зовнішнього повітря 100
м3/год на один відділ в центральних кондиціонерах розташованих на горищі
будівлі та працюючих по прямоточній схемі.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Витяжка з відділів виконується із санвузлів витяжними системами з
механічним збудженням в об’ємі 80 м3/год на один відділ, що відповідає ДБН В
2.5.67-2013.
В проектно-технічному відділі необхідно, щоб було 2 переносних
вуглекислотних вогнегасника ВВК-5 (при використанні яких слід пам’ятати, що
при гасінні пожежі в приміщенні необхідно враховувати можливість зниження
вмісту кисню в повітрі приміщення нижче граничнодопустимого значення), які
використовуються для гасіння легкозаймистих та горючих рідин, твердих
горючих речовин та матеріалів, електропроводок, що знаходяться під напругою
до 1000 В (рис. 6.2), що відповідає Правилам експлуатації вогнегасників.
Необхідно використовувати саме ці вогнегасники оскільки, вони дуже надійні в
експлуатації, мають миттєву готовність і не потребують техобслуговування
(розраховані на 10 років з моменту виготовлення), їх рекомендується
використовувати в офісних приміщеннях чи електроустановках напругою до 1 кВ.
Вогнегасники розміщують шляхом навішування за допомогою кронштейнів на
вертикальні конструкції на висоті не більше 1,5 м від рівня підлоги до нижнього
торця вогнегасника і на відстані від дверей, достатній для їх повного відчинення.
Рисунок 6.2 - Загальний вигляд вуглекислотного вогнегасника ВВК-5
Для попередження пожеж в приміщенні необхідно розмістити звукову
систему оповіщення та 4 димових пожежних оповісника ИП-212-54Р (рис.6.3),
відповідно ДБН В.2.5.56-2014.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Рисунок 6.3 - Загальний вигляд пожежного оповісника ИП-212-54Р
Отже, провівши аналіз протипожежного стану було виявлено, що на
підприємстві дотримуються не всіх вимог техніки безпеки. Тому для того, щоб
попередити можливі наслідки пожежі були запропоновані заходи покращення
протипожежного режиму на об’єкті.
Пожежна безпека повинна забезпечуватися шляхом проведення
організаційних, технічних та інших заходів, спрямованих на попередження
пожеж, забезпечення безпеки людей, зниження можливих майнових втрат і
зменшення негативних екологічних наслідків у разі їх виникнення, створення
умов для швидкого виклику пожежних підрозділів та успішного гасіння пожеж.
Забезпечення пожежної безпеки є складовою частиною виробничої або
іншої діяльності посадових осіб, працівників підприємств та підприємців. Це
повинно бути відображено у трудових договорах (контрактах) та статутах
підприємств.
Керівник підприємства повинен визначити обов’язки посадових осіб (у тому
числі заступників керівника), щодо забезпечення пожежної безпеки, призначити
відповідальних за пожежну безпеку окремих будівель, споруд, приміщень,
дільниць тощо, технологічного та інженерного устаткування, а також за
утримання і експлуатацію технічних засобів протипожежного захисту. Обов’язки
щодо забезпечення пожежної безпеки, утримання та експлуатації засобів
протипожежного захисту мають бути відображені у відповідних посадових
документах (функціональних обов’язках, інструкціях, положеннях тощо).
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Висновки
Розроблений в ході виконання кваліфікаційної роботи бакалавра
програмований таймер-генератор для роботехнічних комплексів являє собою
прилад призначений для для включення і виключення різних виконавчих
пристроїв в заданий час і регулятора температури для підтримки заданої
температури.
Розроблені схема електрична структурна програмованого таймера-
генератора для роботехнічних комплексів, схема електрична принципова
програмованого таймера-генератора для роботехнічних комплексів, складальне
креслення друкованої плати та креслення друкованої плати. Розроблено
програмне забезпечення програмованого таймера-генератора для роботехнічних
комплексів на основі прошивки мікроконтролера як головної прпограми так і
зміних. Проведено теплофізичне конструювання друкованої плати
мікроконтролера на основі технологічних та конструкторських розрахунків у
середовищі TFK 4.
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Список використаної літератури
1. Ловейкін В.С., Ромасевич Ю.О., Човнюк Ю.В. Мехатроніка.
Навчальний посібник. – К., 2012. - 357 с.
2. Робототехніка та мехатроніка: навч. посіб. / Л.І. Цвіркун, Г. Грулер ;
під заг. ред. Л.І. Цвіркуна ; М-во освіти і науки України, Нац. гірн. ун-т. – 3-тє
вид., переробл. і доповн. – Дніпро: НГУ, 2017. – 224 с.
3. Технології інтернету речей. Навчальний посібник [Електронний
ресурс]: навч. посіб. для студ. спеціальності 126 «Інформаційні системи та
технології», спеціалізація «Інформаційне забезпечення робототехнічних систем» /
Б. Ю. Жураковський, І.О. Зенів; КПІ ім. Ігоря Сікорського. – Електронні текстові
дані (1 файл: 12,5 Мбайт). – Київ: КПІ ім. Ігоря Сікорського, 2021. – 271 с.
4. Cпівак В.М., Власюк Г.Г., Основи електроніки (вступ до фаху), 2-е
видання доповнене та перероблене. Електронний навчальний посібник для
студентів ВНЗ. — К.: КПІ ім. Сікорського, 2017. — 208с.
5. Н.В. Морзе, Л.О. Варченко-Троценко, М.А. Гладун, Основи
робототехніки: навчальний посібник / Н.В. Морзе, Л.О. Варченко- Троценко, М.А.
Гладун. Кам’янець-Подільський : ПП Буйницький О.А., 2016. – 184 с.
6. Основи автоматики та автоматизації: навч. посіб. / Є. П. Пістун, І. Д.
Стасюк; Нац. ун-т «Львів. політехніка». — Львів, 2014. — 333 c
7. Цирульник С. М. Проектування мікропроцесорних систем:
навчальний посібник/ С. М. Цирульник, Г. Л. Лисенко. / Вінниця: ВНТУ, 2010. –
201 с.
8. Gari Bradski, Adfrian Kaebler, Learning OpenCV: Computer vision with
openCV library, O'Reilly Media, 2008.
9. R.Siegwart I.R. Nourbakhsh, Intrduction to Autonomous Mobile Robots,
MIT Press second edition 2010. B.Siciliano, O.Khatib,edt , Robots Handbook, Springer-
Verlag 2008.
10. G. Conte, C.H. Moog and A.M. Perdon, Algebraic Methods for Nonlinear
Control Systems. Theory and Applications, Springer-Verlag, 2006. 9. D. Brugali (Ed.).
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата
Software Engineering for Experimental Robotics. In Springer Tracts in Advanced
Robotics, vol. 30. Springer Berlin / Heidelberg, 2007.
11. Синтез робототехнічних систем в машинобудуванні: підруч. для
студентів вищ. техн. навч. закл., які навчаються за спец. 015 «Проф. освіта.
Машинобудування»: присвяч. 100-річчю Вєтрова Ю. О., ректора Київ. інж.-буд.
ін-ту, зав. каф. буд. машин / Л. Є. Пелевін, К. І. Почка, О. М. Гаркавенко та ін. ;
М-во освіти і науки України, Київ. нац. ун-т буд-ва і архітектури. — Київ: ТОВ
НВП «Інтерсервіс», 2016. — 258 с. : іл. — Бібліогр.: с. 257
12. Сучасні електромехатронні комплекси і системи : навч. посібник / Т.
П. Павленко, В. М. Шавкун, О. С. Козлова, Н. П. Лукашова ; Харків. нац. ун-т
міськ. госп-ва ім. О. М. Бекетова. – Харків : ХНУМГ ім. О. М. Бекетова, 2019. –
116 с.
13. Оксанич А. П., Притчин С. Е., Когдась М. Г. Програмні засоби
мікроконтролерних систем малої автоматизації. Кременчуг: ПП Щербатих О. В.,
2022. 202 с.
14. Оксанич А. П., Притчин С. Е., Волохов С. О. Проектування
мікроконтролерних систем: навчальний посібник для студентів вищих навчальних
закладів. Кривий Ріг: Мінерал, 2010. 282 с.
15. Оксанич А. П., Притчин С. Е., Петренко В. Р. Програмні засоби
систем управління. (LabVIEW): навчальний посібник для студентів вищих
навчальних закладів. Кривий Ріг: Мінерал, 2007. 503 с.
16. Терещенко Т. О. Мікропроцесорна техніка: підручник. Київ: Кондор,
2008. 440 с.
17. Гуржій А. М., Бойко В. І., Співак В. М. Схемотехніка електронних
систем. Мікропроцесори та мікроконтролери: підручник для студ. Київ: Вища
школа, 2004. Кн. 3. 434 с
Лист
ЗРС92.20144.001ПЗ
Змн. Арк. № докум. Підпис Дата