Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
PAGE \* MERGEFORMAT 2
ХАРКІВСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ РАДІОЕЛЕКТРОНІКИ
Факультет |
Автоматики та компютеризованих технологій |
Кафедра Технології та автоматизації виробництва РЕЗ та ЕОЗ
Пояснювальна записка
до дипломного проекту
Спеціаліст |
(освітньо-кваліфікаційний рівень) |
КТ 1. Розробка компютерно-інтегрованого стенду |
«Автоматизація житлових приміщень» |
ПТ 1. Розробка модуля керування |
(тема роботи)
Виконав: студент 5 курсу, групи КІТПВc-13-1
напрямку підготовки (спеціальності)
7.05020202 «Комп'ютерно-інтегровані
технологічні процеси і виробництва»
(шифр, назва та напрям підготовки, спеціальності)
_____________Лактіонов Я.В.______________
(фамілія та ініціали)
Керівник ____доц.Новоселов С.П.__
(фамілія та ініціали)
Рецензент __________________________
(фамілія та ініціали)
Харків 2014
РЕФЕРАТ
Пояснювальна записка: 83 с., 15 рис., 12 табл., 10 джерел.
Мета роботи розробка програмного засобу для автоматизації управлінням комп'ютерно- інтегрованим стендом , який буде працювати під управлінням ОС Android.
Результат дипломного проекту спеціаліста програмний засіб для автоматизації управління інтелектуальним зданієм за допомогою системи умний дом.
Використані технічні та програмні засоби некомерційне середовище розробки програмного забезпечення на мові програмування Java .
АВТОМАТИЗАЦІЯ, МОДУЛЬ УПРАВЛІННЯ, ОХОРОННО-ПОЖЕЖНІ СИСТЕМИ, ІНТЕРФЕЙС ПРОГРАМИ, ІНТЕЛЕКТУАЛЬНИЙ БУДИНОК, БАЗА ДАНИХ, SQLITE, BLUETOOTH, ANDROID, JAVA.
РЕФЕРАТ
Пояснительная записка: 83 с., 15 рис., 12 табл., 10 источников.
Цель работы разработка программного средства для автоматизации управлением компьютерно-интегрированным стендом, которое будет работать под управлением ОС Android.
Результат дипломного проекта специалиста программное средство для автоматизации управления интеллектуальным зданием с помощью системы умный дом.
Использованные технические и программные средства некоммерческая среда разработки программного обеспечения на языке программирования Java.
АВТОМАТИЗАЦИЯ, МОДУЛЬ УПРАВЛЕНИЯ, ОХРАННО-ПОЖАРНЫЕ СИСТЕМЫ, ИНТЕРФЕЙС ПРОГРАММЫ, ИНТЕЛЛЕКТУАЛЬНЫЙ ДОМ, БАЗА ДАННЫХ, SQLITE, BLUETOOTH, ANDROID, JAVA.
СОДЕРЖАНИЕ
[1] ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ, СИМВОЛОВ ЕДИНИЦ СОКРАЩЕНИЙ И ТЕРМИНОВ
[2] [3] 1 АНАЛИЗ ЛИТЕРАТУРЫ И ТРЕБОВАНИЙ ТЕХНИЧЕСКОГО ЗАДАНИЯ [3.1] 1.1 Анализ задания на дипломное проектирование [3.2] 1.2 Анализ требований к системе управления «интеллектуальное здание» [3.3] 1.3 Обзор методов управления «интеллектуальным зданием» при помощи автоматизированных систем [3.4] 1.4 Анализ способов управления «интеллектуальным зданием» [3.5] 1.5 Анализ аналогичных программных продуктов [3.6] 1.6 Постановка задач, подлежащих решению
[4] [4.1] 2.1 Разработка архитектуры лабораторного стенда [4.2] 2.2 Разработка структуры программного обеспечения модуля управления [5] 3 Разработка структуры базы данных [5.1] 3.1 Проектирование структуры БД [6] 4 Разработка программы для модуля управления [6.1] 4.1 Особенности разработки программы для операционной системы Android [6.2] 4.2 Описание интерфейса программы [6.3] 4.3 Передача данных по Bluetooth [7] 5 ОХРАНА ТРУДА И БЕЗОПАСНОСТЬ В ЧРЕЗВЫЧАЙНЫХ СИТУАЦИЯХ [7.1] 5.1 Анализ условий труда в лаборатории с ПК [7.2] 5.2 Промышленная безопасность в лаборатории с ПК [7.3] 5.3 Производственная санитария в лаборатории с ПК [7.4] 5.4 Безопасность в чрезвычайных ситуациях в лаборатории с ПК [8] 6 ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ ДИПЛОМНОГО ПРОЕКТА [8.1] 6.1 Основные характеристики ПП [8.2] 6.2 Расчет ориентированной емкости рынка нового ПП [8.3] 6.3 Оценка трудоемкости и заработной платы разработчиков [8.4] 6.4 Расчет затрат [8.5] 6.5 Анализ риска [9] Выводы [10] Перечень ссылок [11] Приложение А |
БД база данных;
ВЧ высокочастотный;
Гб гигабайт;
ГГц гигагерц;
ДБН державні будівельні норми;
ДВП дискретное вейвлет-преобразование;
ЭВМ электронно-вычислительная машина;
ДСанПіН державні санітарні правила і норми;
ДСН державні санітарні правила і норми;
Мб мегабайт;
НПАоП нормативно-правові акти з охорони праці;
НЧ низкочастотный;
ОВПФ опасные и вредные производственные факторы;
ПК персональный компьютер;
ПО программное обеспечение;
ОС операционная система;
ООП объектно-ориентированное программирование;
СУ система управления;
ПУ панель управления;
СУБД система управления базой данных;
ЧС чрезвычайная ситуация;
ID identifier;
JVM java virtual machine;
MVC model view controller;
ORM object relational mapping;
SQL structured query language.
Целью дипломного проекта являлась разработка программного обеспечения для планшетного ПК, которое будет работать под управлением ОС Android. Планшетный ПК будет использоваться как панель управления компьютерно-интегрированным стендом. Передача данных осуществляется через интерфейс беспроводной передачи данных Bluetooth.
Управления интеллектуальными зданиями с помощью мобильных (планшетных) устройств в качестве панели управления стремительно развивается. Поэтому на данном этапе широко используются средства взаимодействия человека и автоматизированной системы. Одним из таких средств является планшетный ПК, который обладает следующими преимуществами: широким функционалом, одновременным управлением всеми компонентами, высокой надежностью, наличием собственной операционной системы, наличием беспроводных модулей, а также оптимальной стоимостью, упрощает работу человеку, и интеграцией в производственный процесс.
Таким образом, тема данного дипломного проекта является актуальной, так как в работе предлагается решение, связанное с использованием планшетного ПК для автоматизации интеллектуального здания. Данное решение имеет доступную стоимость, высокую надежность и малую отказоустойчивость, а самое главное достоинство это мобильность, портативность и беспроводная передача данных.
Программное обеспечение позволяет работать на всех устройствах с использованием ОС Android. Имеет один исполняемый файл для запуска с расширением apk.
Для достижения указанной цели при выполнении дипломного проекта поставлены следующие задачи:
- проанализировать существующие аналоги разрабатываемого программного средства, а также их функции;
- разработать объектную модель и алгоритм работы программы;
- реализовать программные модули, входящие в состав программного средства.
В данном дипломном проекте необходимо разработать программу для панели управления макетом «интеллектуального здания».
Целью дипломного проекта является разработка программного обеспечения для планшетного ПК, которое будет работать под управлением ОС Android. Планшетный ПК будет использоваться как панель управления макетом «интеллектуального здания».
Данная программа предназначается для управления «интеллектуальным зданием» при помощи панели управления. Планшетный компьютер управляет работой микроконтроллерным модулем управления через беспроводной интерфейс используя встроенный модуль Bluetooth.
Программа для панели управления будет использовать некоммерческую систему управления базами данных (СУБД) SQLite и может хранить в себе достаточно большой объем информации. Поэтому данное программное обеспечение будет полностью переносимо, и может быть использовано на разном оборудовании.
Для возможности получения отчетов, программа должна генерировать запрашиваемую информацию в удобном для пользователя виде.
Для невозможности разбития на ряд более детальных требований без потери завершённости, программа должна быть атомарна. Это достигается созданием одного запускаемого файла.
Выполнение этих требований предполагает использование объектно-ориентированного программирования.
Программное обеспечение будет позволять контролировать климат, управлять освещением, устанавливать параметры безопасности. В учебный макет монтируются датчики, передающие информацию на главный модуль, который изменяет «настройки» здания в зависимости от внешних условий.
Освещение управляется при помощи сенсоров, которые реагируют на движение.
Одно из дополнительных требований к программе экономичность, заранее установленное программное обеспечение, которое должно быть с открытым исходным кодом или бесплатным. Преимущественная операционная система Android. Так как эта операционная система предустановлена во многих планшетных ПК, она является бесплатной и оптимальной для комплексного тестирования программного продукта. Также эти системы могут быть легко настроены на выполнение одной или нескольких функций, что позволит использование бюджетных планшетных терминалов.
Также для разработки программного кода требуется свободная интегрированная среда разработки модульных кроссплатформенных приложений Eclipse, которая позволит компилировать программный код в машинный. Программный продукт реализован на языке программирования Java.
«Интеллектуальное здание» представляет собой «умную» систему, которая объединяет электрические приборы посредством линии управления. Таким образом, становится возможным одновременное управление несколькими приборами.
Под «интеллектуальным зданием» следует понимать систему, которая должна уметь распознавать конкретные ситуации, происходящие в здании, и соответствующим образом на них реагировать: одна из систем может управлять поведением других по заранее выработанным алгоритмам.
Она предназначена для автоматизированного дистанционного управления в учебном макете при помощи панели управления.
При помощи данного программного обеспечения можно:
- выводить на экран панели план помещения;
- изменить режим работы климатических установок;
- управлять освещением;
- включить или отключить охранные системы;
- наглядно выводить информацию о системе.
Основные компоненты учебного стенда:
- центральный модуль управления на базе планшетного ПК;
- предоставленный интерфейс программы для управления;
- беспроводной интерфейс передачи данных Bluetooth.
«Интеллектуальное здание» имеет такие преимущества, как:
- снижение потребления электроэнергии при повышении безопасности системы энергоснабжения;
- экономия на сетевом оборудовании и кабельных сетях;
- увеличение производительности за счет снижения объема работ;
- диспетчерских и эксплуатационных служб;
- оперативность управления объектом.
На сегодняшний день разработка системы управления интеллектуальным зданием является одним из приоритетных направлений развития автоматизированных систем. В современной системе умного дома, имеющей открытую архитектуру, каждая из систем работает в оптимальном режиме за счет взаимообмена данными с другими системами здания, что в итоге позволяет максимизировать эффективность работы всей системы в целом.
Существуют следующие методы управления «интеллектуальным зданием»:
- автоматическое управление зданием на основе датчиков;
- управление зданием с помощью пульта дистанционного управления и панели управления;
- удаленное управление.
Система управление зданием на основе датчиков и микроконтроллеров используется для управления таких систем, как: системы климат контроля, системы безопасности, системы контроля освещения, системы контроля доступа и т.д. В системе содержится следующие типы датчики: датчик присутствия, датчик дыма, датчик движения, датчик температуры, датчик освещения, датчик протечки воды и т.д.
На рис. 1.1 представлена архитектура системы автоматического управления зданием на основе датчиков.
Рисунок 1.1 Архитектура системы управления домом на основе датчиков
Одним из таких сигналов является датчики движения. Сигнал на выходе датчика зависит от уровня ИК излучения, усредненного по полю зрения датчика. При обнаружении, каких-либо перемещений человека на выходе датчика повышается температура, эта температура значительно больше, чем температура фона датчика.
Датчик присутствия относится к группе пассивных ИК датчиков, как датчики движения или датчики движения охранной системы. Эти устройства следует различать по их внутренней схеме, детектированию и обработке сигнала, что определяет их применение:
- после обнаружения движения датчик движения включает освещение в зависимости от освещенности и выключает в зависимости от освещенности, если движение больше не обнаруживается;
- датчик движения охранной системы выдает сигнал об обнаружении движения (импульс) центральной охранной системе независимо от освещенности. Количество импульсов, передаваемых в течение определенного промежутка времени, часто можно задавать произвольно;
- датчик присутствия спроектирован для включения освещения в зависимости от освещенности при обнаружении движения и выключения, если освещение больше не нужно. Это происходит, если освещенность без искусственного освещения достаточна, или больше нет присутствия людей;
- датчик присутствия монтируется только под потолком помещения и контролирует поверхность под собой. Он имеет пассивный ИК датчик и реагирует на тепловые перемещения, вызываемые людьми, животными или предметами.
Датчик освещения предназначены для автоматического включения электрических источников освещения (лампы, прожекторы, светильники) при наступлении условий недостаточной видимости. По исполнению датчики освещенности бывают малогабаритными и стандартными. Малогабаритные датчики освещения могут встраиваться непосредственно в светильники, стандартные устанавливаются в помещении на стенах.
Датчик дыма и температуры позволяет управлять температурой в конкретном помещении. Система самостоятельно создает необходимые условия в помещении. Для того чтобы выставить требуемую температуру в комнате, достаточно задать значение температуры на панели электронного термостата или сенсорной управляющей панели. Система сама решит, какое тепловое устройство (радиаторы отопления, теплые полы, тепловентиляторы, кондиционеры) и на какую мощность включить, чтобы добиться заданных параметров. При этом мощность и количество включенных тепловых приборов будут выбраны в зависимости от уличной температуры и нужной скорости прогрева.
Система безопасности с использованием дымовых и тепловых пожарных датчиков. Использование качественных профессиональных датчиков предотвратит возгорание, своевременно сообщив пользователю о месте и типе возможного происшествия, в том числе на системы визуализации, монитор, телевизор, сенсорные панели, мобильные и стационарные телефоны.
Пульт дистанционного управления и панель управления наиболее распространенное управляющее устройство. Выбор пульта дистанционного управления широк: от пульта с одной кнопкой до универсального пульта, способного управлять практически всеми бытовыми приборами. Пульт управляет модулями: сигналы принимает трансивер и преобразует их в команды, передаваемые в электрическую сеть. Трансивер может быть выполнен как отдельное устройство, а может быть совмещен с другим устройством. Подключив трансивер в обычную электрическую розетку, можно с дистанционного пульта «включить/выключить» электрический прибор, изменить яркость освещения, «включить/выключить» весь свет. Практичность ПУ из любой точки дома можно управлять и освещением, и любыми электроприборами.
Пульт дистанционного управления используется для передачи основных команд, таких как включения и выключения света или изменение его яркости. Существуют различные методы передачи сигналов пульта дистанционного управления: ИК, радио и Bluetooth.
В настоящее время самым распространенным пультом дистанционного управления является универсальный пульт. Универсальный пульт дистанционного управления это разновидность ПДУ, предназначенная для управления несколькими бытовыми устройствами.
Трансивер предназначен только для передачи сигналов от пульта другим устройствам по электропроводке. С его помощью все команды, которые мы подаем с пульта, передаются соответствующим устройствам, находящимся в любом месте дома. Бывают также трансиверы, которые могут сами управлять электрическими приборами. В этом случае трансивер не только передает сигналы от пульта, но и исполняет те команды, которые ему посылаем.
Система удаленного управления зданием управление зданием с компьютера или мобильного телефона.
Для управления зданием с помощью компьютера необходимо наличие сервера. С одной стороны, сервер встраивается в локальную сеть (это и витая пара, и точки доступа Wi-Fi) дома, с другой подключается к информационной системе управления. Далее сервер превращается в простого посредника: он перенаправит команды, пришедшие по локальной сети от нас к управляющим устройствам здания. И наоборот он собирает информацию от систем дома и посылает ее нам по локальной сети. Не нужно привыкать к новому интерфейсу, сервер системы это веб-сервер, поэтому для общения с ним мы используем обычный веб-браузер. Это утилитарность дает еще одно важное преимущество: если локальная сеть подключена к Интернету то, нам необязательно находится дома можем быть где угодно общение с умным домом будет выглядеть абсолютно также. Посредником между нами и домом может выступать как стационарный компьютер, находящийся у нас дома или, скажем, в Интернет-кафе, так и портативный компьютер или телефон- коммуникатор. Если нет под рукой ни одного из перечисленного выше устройства, мы можем сделать это непосредственно с помощью мобильного телефона сервер поддерживает WAP технологию.
Интернет сервер интеллектуального здания также несет на себе функцию обратной связи здания с нами. Формируя с помощью веб-камеры изображения различных частей здания, сервер может ретранслировать ее нам в реальном времени с помощью Интернет. Или, например, он может проинформировать о внештатной ситуации, случившейся в наше отсутствие.
Удаленный контроль обычно доступен с мобильного телефона или через Интернет. Практичность этой опции сомнений не вызывает. Заблаговременно включив освещение, мы сможем создать нужную для оптимальной ситуации освещения и температуру в помещении к своему появлению. Или, послав запрос со своего телефона, вы узнаете о текущем состоянии системы и при необходимости отрегулируете ее работу. Для защиты от несанкционированного доступа, как правило, используют ввод пароля.
Одним из главных достоинств является простота и практичность управления оборудованием и системой, которые объединены автоматизированными системами «интеллектуальное здание» в единое целое.
Для общения с системой и её управлением, используются все средства: от кнопочных выключателей различного дизайна до сенсорных видео панелей. Причем выключатели и пульты управления не связаны с конкретным светильником, телевизором, кондиционером.
Кнопочная панель, оснащенная микроконтроллером, и подключенная к системе «интеллектуальное здание», способна управлять не только освещением в данном помещении, но и всем зданием, например, климатом или безопасностью. Функциональность каждой кнопки задается программно и может быть изменена.
Панель управления является многофункциональным интерактивным органом управления системой и контроля над состоянием «интеллектуального здания»
Интуитивно понятный интерфейс пользователя «интеллектуального здания» создается разработчиком. На панели управления отображается план любого помещения или окружающей территории, выводятся картинки с видеокамер. Нажатием на конкретную иконку можно изменить режимы работы климатических установок, включить освещение или отключить сигнализацию.
Панель управления может быть стационарной или переносимой, различного размера и дизайна.
Управлять системой можно с помощью планшетного ПК, персонального компьютера или ноутбука, подключенного к автоматизированной системе «интеллектуальное здание» через беспроводной интерфейс Bluetooth, локальную сеть или через сеть Интернет.
Для повышения практичности система управления может иметь набор типовых "сценариев" автоматизированной работы с фиксированными предустановленными настройками.
В одну систему автоматизации связываются освещение, розеточная сеть, охранные системы и климатические установки, что позволяет контролировать и изменять условия комплексно. Эти настройки определяются пользователем и программируются на стадии установки системы.
При работе системы по любому "сценарию" пользователь может оперативно изменить параметры работы всех устройств здания с помощью любого пульта управления.
На данный момент существует большое количество систем автоматизации управления и контроля систем «Интеллектуальное здание». Это связано с тем, что архитектура такой системы, ее характеристики имеют спрос на рынке и внедряются во многие предприятия и организации, для того, чтобы сделать контроль и управления этими зданиями оптимально простыми и качественными
Рассмотрим характеристики двух программных утилит для автоматизации управления зданиями Domintell и NetPing.
Domintell это автоматизированная система управления, предназначена для контроля и управления освещением, отоплением, вентиляцией, водоснабжением, безопасностью, аудио/видео аппаратурой и другими инженерными системами дома. Все устройства объединены одним кабелем, что существенно сокращает кабельное хозяйство, делает систему гибкой и позволяет легко наращивать её функции. Систему можно настраивать и модифицировать по желанию. Всеми функциями системы можно управлять дистанционно с пульта или даже с мобильного телефона. Domintell позволяет интегрировать различные подсистемы, обеспечивая их слаженную работу и высокую функциональность всего комплекса.
Интеграция подразумевает слаженную работу различных систем. Это позволяет не только исключить конфликты при их функционировании, но и обеспечить гармоничное взаимодействие.
Основные функции программы:
а) управление освещением. Внутреннее освещение во всём доме, наружное освещение, динамичные световые сцены, позволяющие придать разные «настроения» помещению, включение при прохождении, плавное включение ламп накаливания с учетом мощности, выключение всех устройств по одной команде;
б) управление силовыми розетками. Включение/отключение групп розеток или отдельных розеток в каждой комнате. При этом можно управлять различными бытовыми устройствами, к примеру, отключить телевизор в детской комнате, отключить питание утюга после заданного интервала времени, уходя из дома обесточить все устройства (кроме определённых) по нажатию одной кнопки и т.д.;
в) управление электродвигателями. Шторы, жалюзи, роллеты, автоматические ворота, шлагбаумы, гаражные ворота, насосы;
г) sms - оповещение и управление. Оповещение на мобильный телефон при возникновении аварийных ситуаций пожар, затопление водой, несанкционированное проникновение и т.п. Домом можно управлять, отправляя SMS-сообщения с мобильного телефона;
д) безопасность и сигнализация. Датчики движения, датчики закрытия окон и дверей обеспечивают защиту помещений от несанкционированного проникновения. К функциям безопасности также относится защита от затопления водой, пожарная сигнализация, обесточивание электроприборов при уходе, возможность отправки сообщений по SMS при аварийных ситуациях, включение сирен, имитация присутствия. Кроме того, система позволяет организовать тревожные кнопки, например, в детской комнате, у кровати больного и т.д.;
е) функции «Мультирум». Система мультирум обеспечивает матричную коммутацию аудио сигналов по помещениям. Звук от различных источников (DVD и CD проигрыватели, радио и т.д.) выводится в требуемых помещениях. Управление переключением каналов, настройкой громкости выбор FM-станции по командам с ИК-пульта или настенных кнопок, по датчикам движения и т.д.;
є) функции универсального дистанционного ИК-пульта. Система, имея ИК-передатчики, может управлять устройствами, поддерживающими управление по ИК-каналу. Таким образом, с пульта Domintell, сенсорной панели, кнопочных выключателей или мобильного телефона можно удалённо управлять плеерами, кондиционерами, телевизорами, CD/DVD проигрывателями во всём доме. Система позволяет управлять климатом, как во всём доме, так и в отдельных помещениях, обеспечивая слаженную работу систем и приборов, ответственных за климат (система отопления, теплый пол, вентиляция, кондиционирование, влажность и т.д.). Domintell позволяет задавать различные режимы при присутствии или отсутствии людей;
ж) климат-контроль. Автоматический полив: контроль влажности почвы, управление насосами, управление по расписанию, учёт погодных условий;
з) функции диспетчеризации может быть использованы для построения систем диспетчеризации. При этом с компьютера диспетчера осуществляется мониторинг и управление всеми функциями системы. Подключение к ПК осуществляется через шлюзовой модуль.
Умный дом Domintell отдельных апартаментов легко интегрируются в общую систему интеллектуального здания. Это позволяет контролировать аварийные ситуации (затопление, пожар, охрана), состояние оборудования, температуру и другие параметры всех автоматизированных апартаментов в одном диспетчерском пункте. Из определенного помещения можно вызывать необходимые службы.
Управление умным домом программное. Программа может легко модифицироваться в дальнейшем по требованию пользователя.
Управляющие команды подаются:
а) при помощи кнопочных выключателей, расположенных у дверей, кроватей и в других местах. Кнопки имеют подсветку и подсветку статуса;
б) с дистанционного ИК пульта. При этом команды, подаваемые с пульта, могут вести себя одинаковым образом в разных помещениях. К примеру, первая кнопка отвечает за свет в данном помещении. Реакции на команды с пульта могут иметь глобальных характер, распространяясь на все помещения в квартире;
в) сенсорной панели, возможно управление всеми запрограммирован-ными функциями системы. Панель имеет интуитивно понятный интерфейс с разбивкой функций, сценариев и исполнительных устройств по помещениям;
г) с мобильного телефона, путём отправки SMS-сообщений;
д) по срабатыванию датчиков движения, пожарной сигнализации, датчиков протечки воды, открытия, закрытия дверей и т.д.;
е) По таймерам, запрограммированными на различные события.
Преимущества Domintell:
а) доступная цена;
б) лёгкость установки и эксплуатации. Программирование системы простое. Настраивать систему может любой человек, знакомый с Windows, не имея высокой квалификации в области электроники;
в) дизайн. Кнопочные выключатели, дисплеи и пульты дистанционного управления, выполненные в металле, с подсветкой.
Рассмотрим вторую утилиту NetPing. Отечественная компания «Alentis Electronics» является разработчиком и производителем устройства мониторинга окружающей среды NetPing. Основная сфера применения удаленный контроль и мониторинг устройств в доме и офисе. Задачи, решаемые при помощи устройства NetPing:
- удаленное управление электропитанием;
- управление безопасностью и отслеживание чрезвычайных
происшествий, используя датчики дыма, протечки воды, утечки газа,
антивандальные системы, управление камерами видео наблюдения;
- управление микроклиматом при помощи датчиков температуры,
влажности и управление кондиционером через инфракрасный порт;
- управление АТС по порту RS-232;
- дистанционное изменение настроек в зависимости от ситуации;
- отправка уведомлений о неполадках или других важных событиях по
средством SMS, электронная почта;
- доступ к системе в реальном времени через HTTP или SNMP;
- управление освещением и другими бытовыми приборами по расписанию.
На рисунке 2.1 показана схема взаимодействия компонентов Domintell
Рисунок 1.2 Схема взаимодействия компонентов
Устройства NetPing позволяю подключить до 16 датчиков на одно устройство. Благодаря встроенному Web-серверу контроль и управление осуществляется через браузер.
На рисунке 1.3 представлен интерфейс управления NetPing из браузера
Рисунок 1.3 NetPing, управление через браузер
Но можно использовать сторонние программы мониторинга, например, Zabbix, Nagios и PRTG Network (http://www.paessler.com/prtg) который рекомендует производитель NetPing.
Преимущество PRTG Network заключается в более удобном интерфейсе программы, возможность вести подробную статистику и мобильную версию приложения (Android и iOS).
На рисунке 1.4 показан интерфейс рекомендуемый производителем Netping
Рисунок 1.4 Интерфейс стороннего интерфейса PRTG Network
Главная цель дипломного проектирования разработать интерфейс программного обеспечения для панели управления макетом «Интеллектуального здания», которое сможет выводить информацию на панель управления и управлять датчиками, а также исполнительными механизмами.
Для нормальной работы разрабатываемого программного средства необходимо реализовать следующие требования к рабочей станции:
- наличие ПК с ОС (желательно Microsoft Windows версии XP и выше);
- не менее, чем 1 ГБ оперативной памяти, процессор с тактовой частотой не менее, чем 2 Ггц, дисковую подсистему, что обеспечивает информационный обмен со скоростью не менее, чем 30 МБ/с и имеет вместительность не менее, чем 80 Гб;
- планшетный ПК с операционной системой Android, который поддерживает установку и функционирование программного продукта, реализованного на языке ООП Java.
Программный продукт должен иметь удобный и понятный интерфейс для управления всеми операциями и объектами, а также быть доступным для легкого освоения его персоналом.
На панели управления будет отображаться план любого помещения или план окружающей территории в виде картинки. Нажатием на конкретную иконку можно изменить:
- режим работы освещения;
- включить или отключить охранные системы;
- настроить работу климатических установок.
Основные функции программы:
- вывод план помещения на экран;
- вкл/откл. датчиков и исполнительных механизмов;
- редактирование исполнительных элементов;
- вывод текущего состояния на экран.
Система, для которой будут обеспечены перечисленные требования, позволит организовать быструю и качественную ее работу.
Разрабатываемый компьютерно-интегрированный стенд предназначен для проведения исследований связанных с изучением принципов автоматизации интеллектуальных зданий, использования компьютеризованных технологий для управления умным домом.
В состав лабораторного стенда будет входить следующие модули:
- модуль управления;
- демонстрационный (исполнительный) модуль.
Модуль управления предназначен для выполнения диспетчерского контроля за состоянием демонстрационного модуля. Его основные функции:
- получение информации о состоянии датчиков;
- отображение состояния датчиков и исполнительных устройств на экране ПК или планшета;
- управление исполнительными устройствами макета;
- предоставление пользователю возможности для формирования управляющих команд.
Демонстрационный модуль предназначен для визуализации состояния исполнительных устройств. Данный модуль состоит:
- блок управления освещением;
- блок управления воротами;
- блок управления жалюзи;
- блок контроля температуры;
- блок контроля состояния охранно-пожарной сигнализации.
На рисунке 2.1 показана архитектура компьютерно-интегрированного стенда.
Рисунок 2.1 Архитектура компьютерно-интегрированного стенда
Как видно из приведенного рисунка связь между компонентами макета осуществляется при помощи беспроводных технологий. Такой технологией может быть Bluetooth.
Данный выбор обусловлен наличием встроенного модуля Bluetooth практически во всех мобильных устройствах (планшетах и телефонах), а также широкой доступности преобразователей для настольных ПК.
На рисунках 2.2 и 2.3 приведена структура программного обеспечения, которое лежит в основе модуля управления. В программе можно выделить две основных функции: прием сообщений от демонстрационного модуля и передача управляющих команд.
На рисунке 2.2 показаны основные программные модули для реализации функции приема и обработки сообщений.
Рисунок 2.2 Основные программные модули для реализации функции приема и обработки сообщений
В данном режиме основной задачей программы является контроль за поступающими сообщениями.
При появлении сообщения производится его анализ. В первую очередь проверяется правильность принятия пакета данных. Для этого проверяется его длина и признак соответствия нашему устройств.
Если длина сообщения отличатся от заданной, то такое сообщение исключается из рассмотрения, и программа переходит снова в режим ожидания.
Далее проверяется принадлежность сообщения нашему устройству. Для этого нужно сравнить поле адреса принятого сообщения со значением, которое определено в формате пакета.
В нашем случае формат сообщения, следующий:
* |
UD |
AA |
TU |
PPPP |
CR |
# |
Рисунок 2.3 Формат сообщения
Если сообщение относится к нашему устройству, то программа переходит к его анализу.
Для этого вначале проверяется поле адреса. Данное поле должно состоять из двух символов в формате ASCII. Например, запись «03» означает, что сообщение пришло от модуля с адресом «три».
Получив адрес устройства-отправителя производится его писк в базе данных. Если такого устройства нет, то это значит, что сообщение пришло с ошибкой, и оно исключается из дальнейшего рассмотрения.
Если в базе данных будет найдено соответствие полученному адресу, то переходим к следующему шагу анализ типа устройства. Тип устройства закодирован в следующих двух байтах сообщения.
Так же, как и ранее после выделения двух байт из полученного сообщения выполняется проверка по базе данных на наличие указанного типа устройства.
Если такой записи не будет обнаружено, то сообщение исключается из рассмотрения.
Если тип устройства обнаружен в базе данных, то программа переходит к проверке следующих четырех байт. В них закодирован передаваемый параметр.
В качестве параметра может быть четырехзначное число или слово до четырех символом с учетом пробела. Например, число «0256» или управляющая команда «-on-», или «-off».
Алгоритм программы работает таким образом, что после получения, указанных четырех символов, выполняется проверка на соответствия числу или одному из зарезервированных слов:
- on;
- off;
- left;
- rigt; (rigt это сокращенная запись слова right, так как размер поля только четыре знака).
В конце проверяется контрольная сумма и признак конца сообщения.
На рисунке 2.4 приведен алгоритм работы программы в режиме приема сообщений.
Рисунок 2.3 Алгоритм работы программы в режиме приема сообщений, лист 1
Рисунок 2.3, лист 2
Рисунок 2.3, лист 3
На рисунке 2.4 показаны основные программные модули для реализации функции формирования сообщений и их отправки.
Рисунок 2.4 Основные программные модули для реализации функции формирования сообщений и их отправки
Для управления исполнительными устройствами программа формирует сообщение в соответствии с форматом, показанным на рисунке 2.2 и отправляет его через модуль отправки.
База данных построена на основе СУБД SQLITE. Данное СУБД выбрано потому, что SQLite доступен на любом Android-устройстве, его не нужно устанавливать отдельно.
SQLite поддерживает типы TEXT (аналог String в Java), INTEGER (аналог long в Java) и REAL (аналог double в Java). Остальные типы следует конвертировать, прежде чем сохранять в базе данных. SQLite сама по себе не проверяет типы данных, поэтому можно записать целое число в колонку, предназначенную для строк и наоборот.
В базе данных будут сохраняться следующие объекты:
- список модулей, установленных на демонстрационном стенде;
- список типов модулей;
- список состояний модулей;
- журнал событий.
Список модулей содержит перечень устройств, их названия и адреса, а также изображения.
Список типов модулей содержит перечень наименований типов.
Список состояний предназначен для описания поведения виртуального модуля на экране планшета или телефона. В данном списке сохраняются следующие данные:
а) состояние модуля. Состояние может быть записано в виде служебных слов «on / off», в виде численных данных, например «0..100»;
б) реакция на нажатия кнопок управления. Значениями может быть служебное слово «on» или «off», а также знаки, например «-» или «+». Это значением должно задаваться пользователем при настройке макета или подготовке к проведению эксперимента;
в) ссылки на изображения, соответствующие следующим состояниям исследуемым модулям:
1) модуль включен;
2) модуль выключен;
3) состояние модуля: 0%, 25%, 50%, 75%, 100% уровня сигнала или мощности.
В таблице «Журнал событий» сохраняются данные о произошедших действиях с тем или иным модулем. В ней также сохраняется информация о дате и времени события, наименовании и параметрах, которые были переданы в это время и связаны с текущим событием.
Структура таблицы «Список модулей» представлена в таблице 3.1.
Таблица 3.1 Структура таблицы «Список модулей»
Наименование поля |
Тип поля |
Размер |
Ключ |
ID |
Integer |
Primary |
|
Name |
Text |
32 |
|
Notice |
Text |
256 |
|
Image |
Text |
256 |
|
ID_Type |
Integer |
||
Status |
Text |
32 |
Поле ID используется для автоматической нумерации строк в таблице. Это поле уникально и используется как первичный ключ таблицы.
Поле Name предназначено для сохранения наименования модуля. Поле имеет текстовый формат данных.
Поле Notice предназначено для хранения дополнительной информации о модуле. Поле имеет текстовый формат данных.
Поле Image используется для сохранения ссылки на файл с изображением модуля. Тип поля текстовый.
Поле ID_Type используется для создания ссылки на таблицу типов модулей. Тип поля числовой.
Поле Status предназначено для хранения данных о состоянии модуля и может использоваться для скрытия временно неиспользуемых модулей. Тип поля текстовый.
В таблице 3.2 приведена структура таблицы «Список типов модулей».
Таблица 3.2 Структура таблицы «Список типов модулей»
Наименование поля |
Тип поля |
Размер |
Ключ |
ID |
Integer |
Primary |
|
Name |
Text |
32 |
|
Notice |
Text |
256 |
Поле ID используется для автоматической нумерации строк в таблице. Это поле уникально и используется как первичный ключ таблицы.
Поле Name предназначено для сохранения наименования типа модуля. Поле имеет текстовый формат данных.
Поле Notice предназначено для хранения дополнительной информации о типе модуля. Поле имеет текстовый формат данных.
В таблице 3.3 приведена структура таблицы «Список состояний модулей».
Поле ID используется для автоматической нумерации строк в таблице. Это поле уникально и используется как первичный ключ таблицы.
Поле ID_Module используется для ссылки на таблицу «Список типов модулей». Тип поля числовой.
Поле State используется для сохранения текущего состояния модуля. Тип поля текстовый.
Поле Key1 предназначено для хранения выражения или команды, которая будет выполняться при нажатии на левую кнопку в интерфейсе управления модулем.
Таблица 3.3 Структура таблицы «Список состояний модулей»
Наименование поля |
Тип поля |
Размер |
Ключ |
ID |
Integer |
Primary |
|
ID_Module |
Integer |
||
State |
Text |
32 |
|
Key1 |
Text |
32 |
|
Key2 |
Text |
32 |
|
Image_on |
Text |
256 |
|
Image_off |
Text |
32 |
|
Image_0P |
Text |
256 |
|
Image_25P |
Text |
256 |
|
Image_50P |
Text |
256 |
|
Image_75P |
Text |
256 |
|
Image_100P |
Text |
256 |
Поле Key2 предназначено для хранения выражения или команды, которая будет выполняться при нажатии на правую кнопку в интерфейсе управления модулем.
Поле Image_on используется для хранения ссылки на изображение, которое соответствует исполнительному модулю во включенном состоянии.
Поле Image_off используется для хранения ссылки на изображение, которое соответствует исполнительному модулю в выключенном состоянии.
Поле Image_0P используется для хранения ссылки на изображение, которое соответствует исполнительному модулю с нулевой мощностью выходного сигнала.
Поле Image_25P используется для хранения ссылки на изображение, которое соответствует исполнительному модулю с уровнем мощности выходного сигнала равной 25%.
Поле Image_50P используется для хранения ссылки на изображение, которое соответствует исполнительному модулю с уровнем мощности выходного сигнала равной 50%.
Поле Image_75P используется для хранения ссылки на изображение, которое соответствует исполнительному модулю с уровнем мощности выходного сигнала равной 75%.
Поле Image_100P используется для хранения ссылки на изображение, которое соответствует исполнительному модулю с уровнем мощности выходного сигнала равной 100%.
В таблице 3.4 приведена структура таблицы «Журнал событий».
Таблица 3.4 Структура таблицы «Журнал событий»
Наименование поля |
Тип поля |
Размер |
Ключ |
ID |
Integer |
Primary |
|
ID_Module |
Integer |
||
Date |
Date |
||
Time |
Time |
||
State |
Text |
256 |
|
Action |
Text |
32 |
|
Parametr |
Text |
32 |
Поле ID используется для автоматической нумерации строк в таблице. Это поле уникально и используется как первичный ключ таблицы.
Поле ID_Module используется для ссылки на таблицу «Список типов модулей». Тип поля числовой.
Поле Date служит для хранения даты произошедшего события. Тип поля дата.
Поле Time служит для хранения времени произошедшего события. Тип поля время.
Поле State предназначено для сохранения текущего состояния модуля.
Поле Action предназначено для хранения записи о выражении или команды, которая будет выполнялась при нажатии на соответствующую кнопку в интерфейсе управления модулем
Поле Parametr хранит текущее значение параметра.
На рисунке 3.1 показана структура спроектированной базы данных и связи между таблицами.
Рисунок 3.1 Структура спроектированной базы данных
Для работы с базой нам понадобятся два класса:
SQLiteOpenHelper класс для создания и обновления базы данных. В приложении необходимо будет создать класс-наследник от SQLiteOpenHelper и описать в нем два метода:
- onCreate(SQLiteDatabase db) вызывается один раз при создании БД;
-onUpgrade (SQLiteDatabase db, int oldVersion, int newVersion) вызывается, когда необходимо обновить БД (в данном случае под обновлением имеется в виду не обновление записей, а обновление структуры базы данных.
Для приложения можно создать несколько БД, все они будут доступны из любого класса программы, но не доступны для других программ.
SQLiteDatabase класс, который предоставляет методы для добавления, обновления, удаления и выборки данных из БД. Основными методами являются:
- long insert(String table, String nullColumnHack, ContentValues values) добавление строки в таблицу;
- table название таблицы;
- nullColumnHack SQL не позволяет вставлять полностью пустую строку без названия хотя бы одного столбца.
Для добавления данных в таблицу необходимо написать код в формате:
INSERT INTO my_table (my_column) VALUES (NULL);
При этом, если values пустой, то в таблицу строка не добавится, если же это необходимо, то в nullColumnHack передается название столбца, которое будет использоваться при построении такого запроса. Очевидно, что столбец при этом может быть любым. Если же при пустом values добавлять строку не надо (что чаще всего и бывает), то передается null.
Values структура (ассоциативный массив) содержащая данные которые необходимо вставить. Ключом массива является название столбца, а значением значение столбца.
Возвращает метод id добавленной строки или -1 если произошла ошибка (например, а случае пустого values строка добавлена не будет и метод вернет -1).
Int update(String table, ContentValues values, String whereClause, String[] whereArgs) обновление одной или нескольких строк.
Table и values аналогично, как и в insert, название таблицы и значения
WhereСlause и whereArgs используются для построения выражения WHERE в sql. Причем в строке whereClause пишется само выражение, например, «column_one = ? AND column_two < ?», а в whereArgs передается массив строк, которые будут подставляться вместо знаков «?» в выражение whereClause. Этот метод возвращает количество обновленных строк.
Int delete(String table, String whereClause, String[] whereArgs) удаление строк
Параметры аналогичны методу update(), возвращается количество удаленных строк.
Cursor query(boolean distinct, String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy, String limit) выборка строк
Distinct определяет уникальность выбранных строчек. См DISTINCT в sql
Table название таблицы
Columns массив строк с названиями столбцов, которые необходимо выбрать. Для выборки всех столбцов передается null.
Selection и selectionArgs условия выборки и аргументы для выборки. Аналогичны whereClause и whereArgs в методе update ()
Groupsby, having, orderBy, limit определяет группировку, сортировку и количество выбираемых строк. Строки имеют тот же формат как они писались бы в sql-выражении (без слов «GROUP BY», «HAVING», «ORDER BY», «LIMIT» соответственно). См GROUP BY, HAVING, ORDER BY в sql.
Cursor rawQuery (String sql, String[] selectionArgs) метод, который делает то же, что и предыдущий, только здесь запрос пишется как обычный sql-запрос. С помощью этого метода можно производить выборку из нескольких таблиц, использовать JOIN и писать другие запросы.
Два последних метода возвращают экземпляр класса Cursor. Класс Cursor содержит все строки, которые выбираются из БД, а также имеет понятие итератора (указателя), который указывает на одну из строк. То есть в каждый момент времени мы можем прочитать значения только одной строки, затем передвигаем итератор на другую строку и читаем ее значения. Метод int getCount() - возвращает общее количество строк.
Главной особенностью в Android является возможность использовать приложением компоненты/элементы других приложений, естественно с их разрешения.
В Android существует четыре важных компонента:
а) activity описывает пользовательский интерфейс. Большинство обычных приложений состоит из одной и более активностей;
б) service описывает сервис, некая задача без пользовательского интерфейса, выполняемая в фоновом режиме определенное или бесконечное время, например, проигрывание музыки. Взаимодействие с сервисами, например, пауза происходит через определенные интерфейсы;
в) broadcastReceiver описывает реакцию на различные сообщения, как изменение временной зоны, разрядка аккумулятора, смена языка и т.п;
г) contentProvider открывает доступ к данным другим приложениям. Обычно объекты этого типа используются через объекты типа ContentResolver. При каждом запросе к такому компоненту Android делает все, чтобы компонент стал доступным (запуск приложения, владеющее этим компонентом, создание самого объекта этого типа).
За исключением поставщиков данных, компоненты запускаются с использованием объектов типа Intent, представляющих асинхронное сообщение. По необходимости в них можно сохранить результат работы компонента и вернуть родительскому компоненту. В Android есть множество предопределенных интентов.
В Android предусмотрен механизм передачи данных между компонентами, например, между активностями.
Для передачи сложных объектов, в них реализуется интерфейс Parcelable. Класс Parcel реализует контейнер для передаваемых данных. Он может содержать как простые типы данных, так и сложные объекты.
Далее контейнер добавляется в Intent сообщение под каким-либо именем (обычно с префиксом пакета). Получатель смотрит Intent, берет оттуда контейнер, вызовом метода getExtra получает отображение имя/объект.
Каждое Android-приложение имеет манифест файл AndroidManifest.xml, который просматривается андроидом перед запуском. В нем перечисляются доступные компоненты, точка входа в приложение, используемые интенты, права доступа и т.п.
Android имеет развитую систему управления ресурсами. Главная задача отделить данные от кода. Большинство ресурсы описываются в различных xml файлах. Например, можно определить строковые данные для различных языков, или изображения для разных разрешений. Формы пользовательского интерфейса активностей также можно определить в ресурсах.
Компоненты приложения имеют свой жизненный цикл начиная с инициализации их для ответа на намерение до их уничтожения. Поэтому, они могут быть активными или неактивными или, с случае деятельности, видимыми или невидимыми пользователю. Эта часть обсуждает деятельности, службы и широковещательные подписчики включая их состояния во время жизненного цикла, методы уведомляющие о смене состояния, и эффект влияния на состояния возможности, что их процессы может быть завершен и экземпляры классов удалены.
Деятельность имеет три состояния:
а) активность или выполнение, когда она на переднем плане на экране (на верху стека деятельностей текущей задачи). Это деятельность, являющаяся фокусом ввода пользователя;
б) пауза если она потеряла фокус ввода, но все еще видима пользователю. Это происходит, когда другая деятельность открыта поверх, но имеет полупрозрачный или не перекрывающий весь экран графический интерфейс пользователя, так что остается видимой часть графического интерфейса перекрытой деятельности. Приостановленная деятельность полностью жива (она поддерживает все состояния и рабочую информацию и остается связанной с менеджером окон), но может быть уничтожена системой при критической нехватке памяти;
в) остановлена если полностью перекрыта другой деятельностью. Она всё еще сохраняет состояние и рабочую информацию. Однако, больше не видима пользователю, таким образом ее окно скрыто, и она будет вероятнее всего уничтожена системой, когда память будет необходима в другом месте.
Если деятельность приостановлена или остановлена, система может удалить ее из памяти запросив ее завершение (вызывая ее метод finish()), или просто убив ее процесс. Когда нужно снова показать ее пользователю, она должна быть полностью перезапущена и восстановлена к ее предыдущему состоянию.
Приход деятельности из состояние в состояние, сообщает об изменении вызовами следующих защищенных методов:
- void onCreate(Bundle savedInstanceState);
- void onStart();
- void onRestart();
- void onResume();
- void onPause();
- void onStop();
- void onDestroy().
Все эти методы обработчики прерываний, которые можно перекрыть, чтобы сделать соответствующую работу, когда состояние изменяется. Все деятельности должны реализовать onCreate() для начальной инициализации, когда создается экземпляр класса. Многие так же должны реализовать onPause() чтобы передать изменения данных и подготовиться к прекращению взаимодействия с пользователем.
Реализация любого метода в жизненном цикле деятельности всегда должна сначала вызвать метод суперкласса. Например:
protected void onPause() {
super.onPause();
. . .
}
Все вместе эти семь методов определяют весь жизненный цикл деятельности. Есть три вложенных цикла, которые можно контролировать, реализовав их:
а) полное время жизни деятельности проходит между первым вызовом onCreate() к единственному финальному вызову onDestroy(). Деятельность делает всю свою начальную установку "глобального" состояния в методе onCreate(), и высвобождает все занятые ресурсы в методе onDestroy(). Например, если она уже работает в фоне для получения данных из сети, она может создать поток в onCreate() и уничтожить в onDestroy();
б) видимое время жизни деятельности проходит между вызовом onStart() до соответствующего вызова onStop(). В это время, пользователь может видеть экранную деятельность, хотя, возможно, она не находится на переднем плане и не взаимодействует с пользователем. Между этими двумя методами, Вы можете захватить ресурсы, которые необходимы, чтобы показать деятельности пользователю. Например, Вы можете зарегистрировать BroadcastReceiver в onStart() чтобы контролировать изменения, которые воздействуют на Ваш UI, и разрегистрируют его в onStop(), когда пользователь долго не видит, что Вы показывате. Методы onStart() и onStop() могут быть вызваны многократно, так как деятельность может многократно быть показана и скрыта от пользователя;
в) время жизни переднего плана деятельности проходит между вызовом onResume() до соответствующего вызова onPause(). В это время, деятельность на экране расположена впереди все других и взаимодействует с пользователем. Деятельность может часто переходить между продолженными и приостановленными состояниями, например, onPause() вызывается, когда устройство засыпает или, когда запускается новая деятельность, onResume() вызывается, когда появляется результат деятельности или приходит новое намерение. Поэтому, код в этих двух методах должен быть довольно легковесным.
На рисунке 4.1 показаны основные циклы и пути, которые деятельность может пройти между состояниями.
Рисунок 4.1 Основные стадии работы приложения под управлением ОС Android
Цветные овалы главные состояния, в которых может быть деятельность. Прямоугольники представляют методы возвратного вызова, которые можно реализовать, чтобы выполнить операции, когда деятельности переходят между состояниями.
На рисунке 4.2 приведена структура основного экрана разработанного приложения.
Рисунок 4.2 Структура основного экрана разработанного приложения
Основное окно программы поделено на три зоны:
- список доступных объектов;
- информационная зона;
- системная зона.
В списке доступных объектов отображаются все модули, которыми можно управлять при помощи данной программы. Данный список берется из базы данных. Он может быть дополнен пользователем при настройке работы программы. Также можно удалить ненужные объекты.
В информационной области сосредоточены такие элементы как:
- изображение управляемого объекта;
- наименование объекта;
- сведения о текущем состоянии объекта;
- кнопки управления.
События, связанные с кнопками берутся из базы данных из таблицы «Список состояний модулей». Как было отмечено ранее, в данной таблице прописываются команды для каждой кнопки, а также диапазон изменяемых значений.
При нажатии на одну из кнопок, команда, которая закреплена за кнопкой отправляется через модуль Bluetooth на демонстрационную часть макета.
В нижней части экрана расположены кнопки управления модулем Bluetooth. При помощи данных кнопок можно подключить или отключить связь с данным модулем.
Одной из важных задач разработанной программы является передача команд управления через Bluetooth модуль связи. Рассмотрим функции для работы с данным модулем.
Для передачи данных с использованием Bluetooth нужно:
а) включить адаптер Bluetooth;
б) найти доступные Bluetooth-устройства;
в) подключиться к одному из устройств;
г) произвести, собственно, обмен данными.
В файл манифеста Android-приложения, использующего Bluetooth, добавляем строки:
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
В пакете android.bluetooth определены следующие классы:
а) BluetoothAdapter представляет интерфейс обнаружения и установки Bluetooth-соединений.
б) BluetoothClass описывает общие характеристики Bluetooth-устройства.
в) BluetoothDevice представляет удаленное Bluetooth-устройство.
г) BluetoothSocket сокет или точка соединения для данных, которыми наша система обменивается с другим Bluetooth-устройством.
д) BluetoothServerSocket сокет для прослушивания входящих Bluetooth-соединений.
Для начала работы необходимо получить адаптер по умолчанию:
BluetoothAdapter myBluetooth = BluetoothAdapter.getDefaultAdapter();
Активировать Bluetooth-адаптер можно с помощью следующего кода:
// Если Bluetooth-выключен
if(!myBluetooth.isEnabled()) {
// Создаем действие ACTION_REQUEST_ENABLE запрашивает включение
// адаптера
Intent eIntent = new Intent (BluetoothAdapter. ACTION_REQUEST_ENABLE);
// Выполняем действие
startActivity(eIntent);
}
Для обнаружения соседних устройств используется следующий код:
private final BroadcastReceiver myReceiver = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
// Когда найдено устройство
if (BluetoothDevice.ACTION_FOUND.equals(action)) {
// Получаем объект BluetoothDevice из Intent
BluetoothDevice device = intent.getParcelableExtra(
BluetoothDevice.EXTRA_DEVICE);
// Выводим сообщение в журнал (его можно будет просмотреть
// в Eclipse при запуске приложения).
Log.v("BlueTooth Discovery: ",device.getName() + "\n"
+ device.getAddress());
}
}
};
IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND);
registerReceiver(myReceiver, filter);
myBluetooth.startDiscovery();
Для обмена сообщениями между модулем управления и демонстрационным модулем необходимо создать приложение-сервер, которое будет ожидать входящих запросов, так и приложение-клиент, которое будет устанавливать запрос с сервером. Ниже приведен код, ожидающий соединения от программы-клиента.
// Класс AcceptBluetoothThread принимает входящие запросы
private class AcceptBluetoothThread extends Thread {
private final BluetoothServerSocket myServerSocket;
public AcceptThread () {
// Используем временный объект, который позже
// будет присвоен члену myServerSocket, поскольку
// myServerSocket финальный член класса и потом уже
// не может быть изменен
BluetoothServerSocket tmp = null;
try {
// MY_UUID идентификатор, также используемый клиентом
tmp = mAdapter.listenUsingRfcommWithServiceRecord(NAME,MY_UUID);
} catch (IOException e) { }
// Присваиваем tmp члену класса myServerSocket
myServerSocket = tmp;
}
public void run() {
BluetoothSocket socket = null;
// Прослушиваем соединения
while (true) {
try { // Принимаем соединение
socket = myServerSocket.accept();
} catch (IOException e) {
break;
}
// Если соединение было принято
if (socket != null) {
// Производим обработку соединения в отдельном потоке
DoSomethingWith(socket);
// После обработки соединения закрываем сокет
myServerSocket.close();
break;
}
}
}
/** Действие в случае отмены соединения */
public void cancel() {
try { // Закрываем сокет
myServerSocket.close();
} catch (IOException e) { }
}
}
Теперь осталось написать приложение-клиент, устанавливающее соединение с Bluetooth-сокетом. Пример класса, который используется для установки соединения, приведен ниже.
private class ConnectThread extends Thread {
private final BluetoothSocket mySocket;
private final BluetoothDevice myDevice;
public ConnectThread(BluetoothDevice device) {
// Используем временный объект, который позже
// будет присвоен члену mySocket, поскольку
// mySocket финальный член класса и потом уже
// не может быть изменен
BluetoothSocket tmp = null;
myDevice = device;
// Получаем BluetoothSocket для соединения с BluetoothDevice
try {
// MY_UUID идентификатор, такой же использует сервер
tmp = device.createRfcommSocketToServiceRecord(MY_UUID);
} catch (IOException e) { }
mySocket = tmp;
}
public void run() {
// Отключаем обнаружение устройств, поскольку оно замедляет
// соединение
mAdapter.cancelDiscovery();
try {
// Соединяемся с устройством через сокет
mySocket.connect();
} catch (IOException connectException) {
// Невозможно подключиться, закрываем сокет
try {
mySocket.close();
} catch (IOException closeException) { }
return;
}
// Соединение установлено, производим его обработку в
// отдельном потоке
DoSomethingWith(mySocket);
}
// Отмена соединения, закрываем сокет
public void cancel() {
try {
mySocket.close();
} catch (IOException e) { }
}
}
В соответствии с законом Украины «Об охране труда» ни одно производство, предприятие, цех, рабочий участок не могут быть введены в эксплуатацию, если на них не будут обеспечены здоровые и безопасные условия труда.
В лаборатории с ПК, установлено следующее оборудование:
- вычислительная техника (ЭВМ типа IBM мощностью 300 Вт);
- мониторы (цветные, LCD 17'').
- Принтер (Canon LBP2700)
Функциональная схема оборудования, использованного при работе, изображена на рисунке 5.1.
Рисунок 5.1 Функциональная схема взаимодействия оборудования
Данное оборудование предназначено для работы операторов ЭВМ по созданию систем автоматизированного управления производством, различного программного обеспечения, проектно-конструкторских работ и получения конечных результатов работ в виде документов: листинги программ, схемы, чертежи и др.
Помещение лаборатории с ПК, в котором выполнялась работа, имеет размеры 5x4.6x3 м. Таким образом площадь помещения составляет 23 м2, а
его объем 69 м2 м3. В помещении работает 2 человек. Соответственно, на каждого работающего отводится 11,5 м2 площади, что соответствует требованиям ДСАНПіН 3.3.2-007-98 при норме 6 м2, и 34,5 м3 объема помещения, что соответствует требованиям ДСАНПіН 3.3.2-007-98 при норме 20 м3 на 1 работающего.
Организация рабочего места в помещении лаборатории с ПК удовлетворяет нормам охраны труда (ДСАНПіН 3.3.2-007-98).
Сеть электропитания трехфазная 4-проводная с глухозаземленной нейтралью, напряжение 380/220 В переменного тока частотой 50 Гц.
Люди, работающие в помещении, совместно с оборудованием, образуют систему «Ч-М-С». Разделим элементы «человек» и «машина» на следующие составляющие:
- Ч1 человек, управляющий "машиной", рассматривается с точки зрения физической нагрузки и трудового процесса;
- Ч2 человек, с точки зрения непосредственного влияния на окружающую среду;
- Ч3 человек, с точки зрения психофизиологического состояния;
- М1 основная технологическая функция создание различного программного обеспечения;
- М2 функция аварийной защиты безопасное отключение, изоляция токопроводящих элементов;
- М3 влияние на производственную среду и человека повышение температуры производственной среды, шум.
Функционально-структурная схема системы «Ч-М-С» представлена на рисунке 5.2.
Рисунок 5.2 Функционально-структурная схема системы «ЧМС»
В таблицу 5.1 заносим связи между элементами системы и их комплексное влияние.
Таблица 5.1 Направление с содержание связей в системе Ч-М-С
Номер связи |
Направление связи |
Содержание связи |
1 |
Ч2 С |
Влияние человека на среду (тепловыделение, потребление кислорода, что вызывает изменение микроклиматических условий) |
2 |
С Ч1 |
Влияние окружающей среды на качество работы разработчика, например, снижение внимания из-за несоответствия параметров окружающей среды нормативным значениям |
3 |
С Ч3 |
Влияние среды на психофизиологическое состояние человека (недостаточная освещённости, шум, повышеное содержание в воздухе вредных веществ приводит к быстрой утомляемости и раздраженности.) |
4 |
М1 Ч1 |
Информация о взаимодействии программиста и персонального компьютера. |
5 |
Ч1 М1 |
Влияние человека на управление техникой и ее настройкой (включение/выключение, настройка и обслуживание ПК, монитора и принтера) |
Продолжение таблицы 5.1 |
||
6 |
С М1 |
Влияние среды на работу машины (повышенная температура и влага могут привести к выходу из строя компьютера, создавая аварийную ситуацию) |
7 |
М3 С |
Влияние машины на среду (повышение температуры воздуха в помещении, шум от кулеров) |
8 |
М1 ПТ |
Влияние машины на предмет труда(Работа над документацией) |
9 |
ПТ Ч3 |
Влияние предмета труда на психофизиологическое состояние человека, например, умственное напряжение при выявлении ошибок в программном коде. |
|
Ч1- Ч3 |
Влияние работы человека на его психофизиологическое состояние, т.е. точность работы, и как следствие, напряжение анализаторов. Чем интенсивнее труд, тем больше устает человек |
|
Ч3 Ч1 |
Влияние состояния организма человека на качество его работы, например, умственное перенапряжение, перенапряжение зрительных и слуховых анализаторов. |
12 |
Ч3 Ч2 |
Влияние психофизиологического состояния человека на степень интенсивности обмена веществ в организме (потовыделения увеличивается влажность воздуха, а учащенное дыхание приводит к поглощению большего количества кислорода) |
13 |
М1 М2 |
Информация, необходимая для выработки аварийных управляющих воздействий (показатель температуры процессора, если выше нормы отключение ПК) |
14 |
М2 М1 |
Аварийное управляющее воздействие машины на выполнение основной технологической функции элемента машины (выключение ПК при перегреве) |
15 |
М2 Ч3 |
Психологическое влияние (в случае непредвиденого оотключения питания и не возможности востановить утерянные данные) |
А Б |
Вляние внешней системы на ЧМС Вляние ЧМС на внешнюю систему |
Безопасность труда в системе «Ч-М-С» определяет вредные связи, которые являются причиной существования вредных факторов в помещении
На рабочем месте имеют место быть физические и психофизиологические ОВПФ.
Согласно ГОСТ 12.0.003-74 при работе на участке проектирования персонал подвержен воздействию физических факторов, таких как: повышенный уровень шума на рабочем месте (влияет на психофизиологическое состояние человека), повышенное значение напряжения в электрической цепи, замыкание которой может произойти через тело человека, недостаточная освещенность рабочей зоны (что приводит к перенапряжению зрительных анализаторов), повышенная температура поверхности оборудования (что приводит к повышению температуры в производственном помещении). Биологические и химические вредные и опасные производственные факторы отсутствуют. К психофизиологические факторам относятся: умственное перенапряжение, эмоциональные перегрузки, монотонность труда, перенапряжение зрительных анализаторов.
Оценка факторов производственной среды и трудового процесса сведена в таблице 5.2.
Таблица 5.2 Оценка факторов производственной санитарии и трудового процесса
Факторы производственной среды и трудового процесса |
Значение фактора (ПДК, ПДУ) |
3 класс -опасные и вредные условия, характер труда |
Продолжительность действия фактора, в % за смену |
|||
Норма |
Факт |
1ст |
2ст |
3ст |
||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
1.Вредные химические вещества |
||||||
1-й класс опасности |
||||||
2-й класс опасности (свинец) |
||||||
3-й класс опасности |
||||||
2.Шум (дБ) (А) |
50 |
50 |
93 |
|||
3.Ультразвук |
||||||
4. Неионизирующее излучение |
||||||
- промышленной частоты |
||||||
- радиочастотного диапазона |
||||||
5. Рентгеновское излучение |
до 100 |
12 |
93 |
|||
|
||||||
6. Микроклимат |
||||||
- температура воздуха |
23-250С |
23,40С |
93 |
|||
- скорость движения воздуха |
не > 0,1 м/с |
<0,1 м/с |
93 |
|||
- относительная влажность |
60-40 |
62,3 |
93 |
|||
7. Освещение |
||||||
- естественное, % |
не < 1.2 |
0,43 |
93 |
|||
- искусственное, лк |
200-500 |
340-350 |
93 |
|||
8 Напряженность труда а) внимание: - продолжительность сосредоточения (в % от продолжительности системы) |
25-50 |
>75 |
+ |
75% |
||
б) напряженность анализаторов: - зрение (категория работ) |
точное 0,5 |
Высокой точности 0,3 |
+ |
93% |
||
- слух (разборчивость %) |
90-70 |
70 |
93% |
|||
в) эмоциональное и интеллектуальное напряжение |
Работа по уст. графику |
Работа по уст. графику |
93% |
|||
г) монотонность труда: - кол-во элементов повторяющихся операций |
9-6 |
8 |
93% |
|||
- время наблюдения за ходом производственного процесса без активных действий (в % от продолжительности смены) |
81-95 |
82 |
82% |
|||
9.Тяжесть труда |
||||||
(количество за смену) |
до 40000 |
20000 |
92 |
|||
рабочая поза (пребывание в наклонном положении на протяжении смены) |
свободная |
свободная |
93 |
|||
наклон туловища (раз за смену) |
51-100 |
Свободное |
93 |
|||
Перемещения в пространстве (км за смену) |
до 8 км |
Свободное |
93 |
|||
10.Сменность |
2х смен. |
1 смен. |
||||
Общее количество факторов |
1 |
1 |
При обработке звуковых или видеосигналов при проектировании систем от проектировщика требуется восприятия сигналов с последующим сравнением фактических значений параметров с их номинальными
значениями, заключительная оценка фактических значений параметров (3 кл.ІІ ст.) Предложить эффективную организацию рабочего места
По степени опасности поражения электрическим током по НПАОП 40.1-1.21-98 данное помещение относится к классу помещений без повышенной опасности, так как температура воздуха в лаборатории с ПК составляет 22-25˚С, влажность 40-60%, также исключена возможность одновременного прикосновения человека к корпусам электрооборудования и заземленным металлическим конструкциям зданий и сооружений, имеющих связь с землей.
Электроснабжение отдела осуществляется от 3х фазной сети с глухозаземленной нейтралью, ток переменный, напряжение 380/220 В в соответствии с требованиями НПАОП 40.1-1.32-01, в котором говориться о правилах устройства электоустановок, а также электрооборудование специальных установок.
Предусмотрены следующие меры электробезопасности:
- конструктивные меры электробезопасности;
- схемно-конструктивные меры электробезопасности;
- эксплуатационные меры электробезопасности.
Конструктивные меры электробезопасности обеспечивают такое конструктивное решение, которое предотвращает возможность прикосновения человека к токопроводящим частям приборов и оборудования.
Для устранения возможности поражения электрическим током при прикосновении работника к токопроводящим металлическим частям, все рубильники устанавливаются в закрытых корпусах, соединительные кабели и шины электропитания подведены к задней панели аппаратуры и недоступны человеку. Применяется блочный монтаж.
В соответствии с требованиями НПАОП 40.1-1.32-01 для электроустановок переменного тока, напряжением до 1000В и глухозаземленной нейтралью применяется зануление. В помещении лаборатории с ПК использована система зануления TN-S.
Комплекс необходимых мер по технике безопасности определяется исходя из вида электроустановки и ее номинального напряжения, условий среды, типа помещения и доступности электрооборудования.
В помещении лаборатории, не чаще одного раза в год, выполняется контроль изоляции. Это необходимо для предотвращения замыканий на землю и возникновения аварийных режимов работы электроустановок. Прежде всего, от сети отключаются все потребители, включая ИБП, удлинители и тройники. Затем на щитке отключаются «автоматы», соответствующие исследуемым группам и с помощью мегаомметра провода измеряются попарно: фаза-фаза, фаза-ноль, ноль-земля. В случае выявления слишком низкого сопротивления необходимо провести дополнительные работы: установить участок цепи, на котором изоляция нарушена и незамедлительно устранить дефект.
С работниками производится вводный, первичный, повторный, целевой, а при необходимости и внеплановый инструктаж. Содержание всех инструктажей соответствует требованиям НПАОП 0.00-4.12-05.
Работы в данной лаборатории проводятся сидя и не требуют систематического физического напряжения. Согласно ДСН 3.3.6-042-99, работа относится к категории легкой Iа (энергозатраты до 120 ккал/ч). Рабочие места характеризуются следующими микроклиматическими условиями:
а) относительная влажность воздуха 40 - 60 %;
б) температура:
1) в холодный период: оптимальная 22-24 С, допустимая верхняя 25 С, нижняя 21 С;
2) в теплый период: оптимальная 23-25 С, допустимая верхняя 28С, нижняя 22 С.
в) скорость движения воздуха:
1) оптимальная 0,1 м/с;
2) допустимая 0,1м/с.
Поддержание на данном уровне параметров, определяющих микроклимат, осуществляется при помощи кондиционирования в теплое время года и с использованием отопления в холодное.
Помещение с ЭВМ имеет естественное и искусственное освещение в соответствии со ДБН В.25-28-2006 «Естественное и искусственное освещение». Естественный свет проникает через боковые светопроемы, сориентированные, как правило, на север или северо-восток, и обеспечивать коэффициент естественной освещенности (КЕО) не ниже 1,5%.
Для обеспечения нормированных значений освещения в помещениях с ВДТ ЭВМ общего и персонального пользования очищают оконное стекло и светильники не реже чем 2 раза в год и своевременно проводят замену перегоревших ламп.
Согласно ДСН3.3.6.037-99 шумовое загрязнения в отделе составляет 50дБ, что что не превышает норму.
Так как доминирующим вредным фактором является при обработке звуковых или видеосигналов при проектировании систем от проектировщика требуется восприятия сигналов с последующим сравнением фактических значений параметров с их номинальными значениями, заключительная оценка фактических значений параметров (3 кл. ІІ ст.) Необходимо предложить эффективную организацию рабочего места.
Рабочее место представляет собой закрепленную, за отдельным рабочим или группой рабочих, часть производственной площади, оснащенную необходимыми технологическим, вспомогательным, подъемно-транспортным оборудованием, технологической и организационной оснасткой, предназначенными для выполнения определенной части производственного процесса.
Организация рабочего места представляет собой материальную основу, обеспечивающую эффективное использование оборудования и рабочей силы. Главной ее целью является обеспечение высококачественного и эффективного выполнения работы в установленные сроки на основе полного использования оборудования, рабочего времени, применения рациональных приемов и методов труда, создания комфортных условий труда, обеспечивающих длительное сохранение работоспособности работников.
Организация и конструкция рабочего места обеспечивает соответствие всех элементов рабочего места и их расположения эргономичным требованиям ГОСТ 12.2.032-78 (рабочее место при выполнении работ сидя. Общие эргономические требования) и ДСан ПиН 3.3.2-007-98 (гигиенические требования к организации работы с визуальными дисплейными терминалами ЭВМ). При организации рабочих мест с ПЭВМ рабочие места располагаются на расстоянии 1 м от стены (монитор на расстоянии не менее чем 1 м от стены) и не меньше 1 м до окон. Расстояние между боковыми поверхностями мониторов 1,2 м. Расстояние между рядами не менее 1 м. При необходимости высокой концентрации рабочих мест можно делать перегородки.
Рекомендуемые размеры рабочего стола для компьютера: высота 725 мм, ширина от 600 до 1400 мм, глубина от 800 до 1000 мм. Стол оборудован подставкой для ног, углубление для ног должно быть не менее 400 мм.
Быстрое и точное считывание информации обеспечивается при расположении плоскости экрана ниже уровня глаз пользователя, предпочтительно перпендикулярно к нормальной линии взгляда (нормальная линия взгляда 15 градусов вниз от горизонтали).
Клавиатура располагаться на поверхности стола на расстоянии 100-300 мм от края, обращенного к пользователю.
Для удобства считывания информации с документов применяются подвижные подставки (пюпитры), размеры которых по длине и ширине соответствуют размерам устанавливаемых на них документов. Пюпитр размещается в одной плоскости и на одной высоте с экраном.
Для обеспечения физиологически рациональной рабочей позы, создания условий для ее изменения в течение рабочего дня применяются подъемно-поворотные рабочие стулья с сиденьем и спинкой, регулируемыми по высоте и углам наклона, а также расстоянию спинки от переднего края сидения.
Рабочее сиденье является подъемно-поворотным, регулируемым по высоте, по углу наклона спинки, по углу наклона подлокотников. На рабочем месте должен быть пюпитр для бумаг (подставка). Сиденье имеет ширину и глубину не менее 400 мм, высота поверхности сидения регулируется в пределах 400-500 мм, а угол наклона поверхности от 15° вперед до 5° назад, высота спинки 300 ± 20 мм, ширина спинки не менее 380 мм, поверхность сидения плоская, передний край закругленный. Важную роль в работе играет правильный внутренний режим труда и отдыха. Работник для профилактики нарушений и поддержания высокой работоспособности соблюдает регламентированные перерывы для отдыха. Рекомендуем на каждые 45 минут работы делать перерыв 15 минут. Продолжительность работы за смену составляет восемь часов. Таким образом в лаборатории выполняются требования по организации рабочего места. Также важную роль играет правильное освещение рабочей зоны, так как работа конструктора характеризуется напряжением зрительных анализаторов. Согласно ДБН В.2.5-28-06 (естественное и искусственное освещение) работа конструктора относится к классу работ высокой точности (III разряд зрительных работ), относительная продолжительность зрительной работы при направлении зрения на рабочую поверхность составляет более 70%). Освещенность на рабочей поверхности от системы общего освещения составляет 300 лк. Общая освещенность помещения при комбинированном освещении составят 750 лк.
В регионе наиболее вероятными чрезвычайными ситуациями (ЧС), являются чрезвычайные ситуации техногенного характера это транспортные аварии (катастрофы), пожары, неспровоцированные взрывы, аварии с выбросом опасных химических веществ, внезапное разрушение строений и зданий. Для лаборатории с ПК наиболее вероятной ЧС является пожар.
Пожары в помещениях с ЭВМ представляют особую опасность, т.к. сопряжены с большими материальными потерями.
Категория помещения по пожарной взрывоопасности согласно ДБН В.1.1.7-2002 имеет ІI степень огнестойкости, а по пожаровзрывоопасности относится к категории В - пожароопасное.
Согласно НПАОП 40.1-1.01-97 данное помещение относится к зоне класса П-IIа, так как это производственное помещение, имеется мебель из дерева и ДВП.
Возможные причины возникновения пожара в помещении работы операторов ЭВМ:
- несоблюдение правил эксплуатации электронно-вычислительной техники;
- несоблюдение правил пожарной безопасности;
- перегрев токоведущих частей оборудования в следствии образования высокого переходного сопротивления в местах соединений;
- неисправность общего или местного освещения рабочих мест.
Согласно с требованиями противопожарной безопасности в помещении устанавливается 2 углекислотных огнетушителя ВВК-1.4 (из расчета один огнетушитель на 3 ПК), которые применяются при тушении небольших очагов и могут быть использованы для тушения электроустановок, находящихся под напряжением. В соответствии с ГОСТ 12.4.026-76 эти средства окрашены в ярко-красный цвет и находятся в легкодоступном месте, при выходе из помещения.
Помещение лаборатории оборудовано системой автоматической пожарной сигнализации с применением тепловых датчиков типа ПОСТ-1 2 штуки, (из расчета 2 датчика на каждые 20 м2 площади), настроенных на температуру срабатывания 70°С.
Организационные меры пожарной профилактики:
- обучение персонала правилам пожарной безопасности;
- издание необходимой инструкции и плакатов плана эвакуации
персонала в случае пожара;
- изготовление и применение средств наглядной агитации по обеспечению пожарной безопасности.
План эвакуации показан на рисунке 5.4:
- путь эвакуации
Рисунок 5.4 Схема эвакуации при пожаре
Противодействие пожарам осуществляется в процессе обеспечения пожарной безопасности. Для этого устанавливаются требования пожарной безопасности и противопожарные режимы, осуществляются меры пожарной безопасности.
В случае возникновения пожара необходимо организовать меры по эвакуации людей из здания, имеющимися для этого всеми силами и средствами. Проверить исправность и включение в работу всех автоматических систем противопожарной защиты.
В случае необходимости отключить энергоснабжение за исключением противопожарных систем защиты.
Программный продукт представляет собой панель управления «интеллектуальным зданием». Датчики располагаются в определенных местах учебного макета, которые связаны единой сетью и передают сигналы через интерфейс Bluetooth. Программный продукт реализован на языке программирования Java. Назначением данного программного продукта является обеспечение контролировать климат, управлять освещением, устанавливать параметры безопасности. В учебный макет монтируются датчики, передающие информацию на главный модуль, который изменяет «настройки» здания в зависимости от внешних условий.
Разрабатываемый программный продукт предназначен для использования на любых предприятиях, где необходимо автоматизировать управление и настройку «интеллектуального здания». Программа служит для автоматизации управления и контроля различных предприятий, и зданий. Благодаря высокой скорости обработки информации, точности контроля, гибкости и простоте использования, можно предположить, что программный продукт будет пользоваться спросом.
Расчет емкости рынка основывается на проведении анализа, позволяющего выявить потенциальных потребителей, оценить их количество и возможный объем продаж разрабатываемого ПП для каждого из них.
Ориентировочная емкость рынка может быть представлена в виде табличных данных, наглядно отображающих количество покупателей и предполагаемое количество копий (табл. 6.1).
Область иcпользования |
Потребители |
Всего копий |
1. Заводы-переработчики |
100 |
100 |
2. Заводы-производители |
200 |
200 |
Итого |
300 |
300 |
Таблица 6.1 Расчет ориентированной емкости рынка нового ПП
Анализируя таблицу 6.1 можно сделать вывод, что ориентированный объем продаж составит 300 копий, из которых основной объем копий (200) будет продан заводам-производителям, а оставшиеся 100 заводам-переработчикам.
Для расчета одноразовых затрат на разработку ПП необходимо оценить трудоемкость и заработную плату исполнителей-разработчиков нового программного обеспечения.
Для определения суммарной заработной платы разработчиков необходимо рассчитать среднедневную заработную плату (Зсд) каждого из них по формуле
(6.1)
где Змес месячная заработная плата исполнителя, грн.;
n количество рабочих дней в месяце (n = 26 дней).
В команде разработки работают 2 человека: программист и аналитик. Месячные заработные платы соответственно составляют 5000 и 4000 грн.
Среднедневная заработная плата программиста составит:
грн.
Среднедневная заработная плата аналитика составит:
грн.
В таблице 6.2 представлен расчет трудоемкости разработки ПП и заработной платы исполнителей.
Таблица 6.2 Расчет трудоемкости разработки ПП и заработной платы исполнителей
Вид работы |
Исполнитель |
Трудозатраты чел-день |
Среднедневная заработная плата, грн./чел.-день |
Сумма заработной платы, грн |
|
Должность |
Кол-во |
||||
1 |
2 |
3 |
4 |
5 |
6 |
1. Разработка технического задания |
Аналитик |
1 |
5 |
153,85 |
769,25 |
2. Подбор и изучение литературных источников |
Аналитик |
1 |
3 |
153,85 |
461,54 |
Программист |
1 |
3 |
192,31 |
576,93 |
|
3. Теоретическое обоснование выбора методического инструмента |
Программист |
1 |
6 |
192,31 |
1153,8 |
4. Формулировка задачи |
Аналитик |
1 |
2 |
153,85 |
307,7 |
5. Алгоритмизация процесса решения задачи |
Программист |
1 |
7 |
192,31 |
1346,17 |
Аналитик |
1 |
10 |
153,85 |
1538,5 |
|
Продолжение таблицы 6.2 |
|||||
1 |
2 |
3 |
4 |
5 |
6 |
6. Разработка программы |
Программист |
1 |
8 |
192,31 |
1538,48 |
7. Расчет тестового примера |
Аналитик |
1 |
3 |
153,85 |
461,55 |
8. Подготовка инструкции для пользователя |
Аналитик |
1 |
3 |
153,85 |
461,55 |
9. Техническое оформление методических материалов |
Программист |
1 |
2 |
192,31 |
384,62 |
Всего |
9000 |
Для расчета трудозатрат на разработку ПП (Т) необходимо использовать формулу
T = tртз + tпл + tтов + tфз + tап + tрп + tртп+ tрип+ tтомм, (6.2)
где tртз разработка технического задания;
tпл подбор литературных источников;
tтов теоретическое обоснование выбора;
tфз формализация задачи;
tап алгоритмизация процесса решения задачи;
tрп разработка программы;
tртп расчет тестового примера;
tрип подготовка инструкции пользователя;
tтомм техническое оформление методических материалов.
Трудозатраты на разработку ПП составляют
T = 2 + 4 + 3 + 1 + 4 + 8 + 2 + 1 + 1 = 26 (чел.-дней).
Материальные затраты это затраты на приобретение малоценных и быстроизнашивающихся предметов, которые включают стоимость лазерных дисков, картриджей, канцелярских изделий, бумаги для печати и т.д. Материальные затраты определены эмпирическим путем.
Расчет одноразовых затрат на разработку ПП приведен в таблице 6.3.
Таблица 6.3 Расчет одноразовых затрат на разработку ПП
№ з/п |
Статья затрат |
Значение, грн |
1 |
2 |
3 |
1 |
Заработная плата |
9000 |
2 |
Единый социальный взнос (38% от З/П) |
1752,74 |
3 |
Материальные затраты |
150 |
4 |
Амортизация основных фондов (стоимость машинного времени) |
151,76 |
5 |
Другие затраты, в том числе: |
|
5.1 |
общехозяйственные затраты |
213 |
5.2 |
стоимость услуг связи |
110,5 |
6 |
Затраты на маркетинговые нужды (15% от прогнозированного объема продаж) |
|
7 |
Итого |
11378 |
8 |
Затраты на разработку единицы ПП |
75,9 |
В одноразовые затраты на разработку ПП входит стоимость машинного времени, которая представляет собой произведение стоимости одного часа работы ПЭВМ на суммарное время работы на ПЭВМ. Стоимость машинного времени (Смв) рассчитывается по формуле
(6.3)
где tмв стоимость одного часа работы на ПЭВМ, грн;
Омв суммарное время работы на ПЭВМ, ч;
n количество ПЭВМ.
Стоимость машинного времени составляет
(грн).
Отчисления в соответствующие социальные фонды производятся согласно законодательству Украины.
Стоимость оплаты услуг связи Ссв, которые предоставляются интернет провайдерами и операторами телефонной связи определяется по формуле
(6.4)
где Исв стоимость одного дня использования Интернет;
Тсв стоимость одного дня использования телефонной связи;
Дсв необходисое количество дней связи.
Стоимость оплаты услуг связи Ссв, которые предоставляются интернет провайдерами и операторами телефонной связи составляет
грн.
Расчет одноразовых затрат на разработку единицы ПП (В) определяется по формуле
(6.5)
где Врасч суммарные одноразовые затраты на разработку ПП;
Мр емкость территориального рынка.
Одноразовые затраты на разработку единицы ПП составляет
Также необходимо рассчитать затраты на тиражирование и отпускную цену одной копии программного продукта (табл. 6.4).
Таблица 6.4 Расчет затрат на тиражирование и отпускной цены одной копии ПП
№ з/п |
Статья затрат |
Значение, грн. |
1 |
2 |
3 |
1 |
Размер заработной платы с начислениями |
9000 |
2 |
Материальные затраты на тиражирование одной копии ПП |
2,00 |
3 |
Аренда оснащения (стоимость машинного времени на тиражирование ПП) |
303,52 |
4 |
Затраты на продвижение единицы ПП |
48,6 |
5 |
Затраты на тиражирование одной копии ПП (п.1 + … + п.4) |
4966,58 |
6 |
Затраты на разработку единицы ПП (п.8 табл. 6.3) |
75,9 |
7 |
Себестоимость одной копии ПП (п.5 + п.6) |
5013,18 |
8 |
Запланированная прибыль (25% от п.7) |
1253,3 |
9 |
Размер ПДВ (20% от (п.7 + п.8) в соответствии с действующим законодательством Украины) |
1253,3 |
10 |
Отпускная цена одной копии ПП (п.7 + п.8 + п.9) |
7519,78 |
Для успешной реализации программного продукта на рынке необходимы некоторые мероприятия по его продвижению, такие как:
- программа скидок;
- прямая реклама;
- другие затраты.
Затраты на продвижение программного продукта отображены в таблице 6.5.
Таблица 6.5 Затраты на продвижение программного продукта
Рекламное мероприятие |
Стоимость, грн. |
1. Программа скидок |
519,78 |
2. Прямая реклама |
500 |
3. Другие |
|
Всего |
1019,78 |
Затраты на продвижение единицы ПП |
509,89 |
Затраты на продвижение единицы ПП (Впр) рассчитывается по формуле
(6.6)
где Вп суммарные затраты на продвижение ПП;
Мр объем территориального рынка ПП.
грн.
Так как на рынке существует программный продукт который имеет аналогичные функциональные возможности и схожие характеристики, целесообразно рассчитать конкурентоспособность разрабатываемого ПП.
Показатель уровня конкурентоспособности нового ПП (КСП) рассчитывается по формуле
(5.7)
где Iт приведенный параметрический показатель по техническим параметрам;
Iе приведенный параметрический показатель экономическим параметрам.
Конкурентоспособность программного продукта определяется не его «абсолютной ценностью» для пользователя, а сравнительной пользой его характеристик (технических и экономических параметров) с соответствующими характеристиками ПП конкурента.
В таблице 6.6 приведены основные сравнительные характеристики ПП и расчет конкурентоспособности.
Таблица 6.6 Расчет конкурентоспособности ПП
Параметр |
Индекс улучше ния парамет ра |
Значение параметра |
Ранг параметра |
Единич ный параметрический индекс |
Приведен ный параметрический показатель |
|
Продук ция нового ПП |
Продук ция конкурента |
|||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
Технические параметры |
||||||
Объем дискового пространства, Мб. |
0,4 |
20 |
50 |
0,03 |
2,5 |
0,012 |
Сложность интерфейса |
0,55 |
5 |
9 |
0,1 |
1,8 |
0,05 |
Исполняемые функции, кол-во. |
2,86 |
20 |
7 |
0,3 |
0,35 |
0,105 |
Объем используемых дынных, Мб. |
0,8 |
34 |
42 |
0,15 |
1,23 |
0,12 |
Простота запуска |
1 |
3 |
3 |
0,05 |
1 |
0,05 |
Мультимедий ное обеспечение |
1,25 |
4 |
5 |
0,05 |
0,8 |
0,06 |
Сопровождающая документация |
2 |
1 |
2 |
0,17 |
0,5 |
0,34 |
Способы обучения, кол-во |
2 |
4 |
2 |
0,06 |
0,5 |
0,12 |
Справочная система, кол-во |
3 |
6 |
2 |
0,03 |
0,33 |
0,099 |
Срок службы, лет |
1,4 |
5 |
7 |
0,06 |
0,71 |
0,08 |
Всего |
1,0 |
1,036 |
||||
Экономические параметры |
||||||
Цена программного продукта, грн. |
0,85 |
172,24 |
201,33 |
0,8 |
1,68 |
0,48 |
Ценовые скидки, % |
1,2 |
12 |
10 |
0,2 |
0,83 |
0,24 |
Всего |
1,0 |
0,72 |
Коэффициент конкурентоспособности равняется
Проанализировав полученные данные можно сделать вывод, что разрабатываемый программный продукт является конкурентоспособным.
При разработке программного продукта также необходимо провести анализ риска и рассчитать несколько показателей. При анализе риска введения на рынок программного продукта целесообразно рассчитать показатель, который позволяет определить насколько разработчик может снизить объем продаж, не потерпев при этом убытков. Он определяется как отношение разницы между ожидаемым объемом продаж и точкой безубыточности к ожидаемому объему продаж
(6.8)
где Пр показатель риска разработчика ПП;
Мр ожидаемый объем продаж (емкость рынка);
Ц расчетная цена ПП;
Тбз точка безубыточности (в денежных единицах).
Точка безубыточности (Тбз) это такой объем продаж, при котором валовая выручка (доход) от реализации покрывает общие постоянные затраты, и определяется по формуле
(6.9)
где Впост постоянные затраты на разработку и реализацию ПП;
Ц расчетная цена ПП;
Взм переменные затраты на единицу ПП.
.
Точка безубыточности в денежном эквиваленте можно выразить как произведение количества копий продукции на расчетную цену единицы ПП. 1127967
Согласно проведенному анализу риска можно сделать вывод что разрабатываемый программный продукт имеет высокие шансы на успешную продажу.
В данном дипломном проекте целью ставилось разработать компьютерно-интегрированный стенд предназначен для проведения исследований связанных с изучением принципов автоматизации интеллектуальных зданий, использования компьютеризованных технологий для управления умным домом.
Был выполнен общий анализ системы и ее характеристики. Разработана структура базы данных. Подробно рассмотрен алгоритм работы программы, а также предъявлены необходимые требования к программе.
Главной целью ставилось создать программу, в которой отображается план любого помещения или окружающей территории. Так как программное обеспечение полной функциональности, можно нажатием на необходимую иконку изменить режимы работы климатических установок, открыть или закрыть жалюзи, включить освещение или отключить охранную систему.
Данная программа имеет свою некоммерческую локальную базу данных SQLite и может хранить в себе достаточно большой объем информации.
При выполнении работы использованы знания синтаксиса Java, основы ООП. Были задействованы среды автоматизации разработки Eclipse и SQLite.
Программа способна работать с интеллектуальными системами «Умный Дом» имеет базу данных, проста в управлении и не требует никаких коммерческих связей.
Также, были определены условия охраны труда и проведено экономическое обоснование разрабатываемого программного обеспечения для автоматизации управления интеллектуальным зданием.
1. Методичні вказівки з дипломного проектування для студентів усіх форм навчання спеціальностей 7.05020201 «Автоматизоване управління технологічними процесами», 7.05020202 «Компютерно-інтегровані технологічні процеси та виробництва» / Упоряд.: С. П. Новоселов, Б. О. Шостак, І. В. Жарікова. Харків: ХНУРЕ, 2012. 60 с.
2. Java. [Электронный ресурс] / Режим доступа: www/URL: http://ru.wikipedia.org/wiki/Java - 24.05.2013г. - Загл. с экрана.
3. Фатрелл Р. Управление программными проектами. Достижение оптимального качества при минимуме затрат [Текст] / Р. Фатрелл, Д. Шафер, Шафер Л. М.: Вилямс, 2003. 1136 с.6. Агальцов П.В. Базы данных. [Текст] - М.:Мир,2002. 376с.
4. Кузнецов С.Д. СУБД и файловые системы. [Текст] М.: Майор,2001. 176с.
5. Википедия свободная энциклопедия [Электронный ресурс] / Режим доступа:http://ru.wikipedia.org
6. Интернет университет информационных технологий [Электронный ресурс] / Режим доступа: http://intitut.ru
7. Форум программистов [Электронный ресурс] / Режим доступа: http://cyberforum.ru
8. Msdn - [Электронный ресурс] / Режим доступа: http://msdn.microsoft.com
9. Дзюндзюк Б. В. Охрана труда. Сборник задач [Текст] /Б. В. Дзюндзюк, В. Г. Іванов. - Х.: НВП центр ХНУРЕ, 2006. - 242 с.
10. Закон Украины «Об охране труда». [Электронный ресурс] / Режим доступа: www/URL: http://zakon1.rada.gov.ua/laws/show/2694-12 - 24.05.2013г. - Загл. с экрана.
Демонстрационные материалы
Позначення |
Найменування |
Додат. відомості |
|||||
Текстові документи |
|||||||
1. ГЮІК.466240.003 ПЗ |
Пояснювальна записка |
83 арк., ф. А4 |
|||||
Графічні документи |
|||||||
2. |
Демонстраційний матеріал у |
16 арк., ф.А4 |
|||||
вигляді презентації |
|||||||
ГЮІК.466240.003 ВД |
|||||||
Змін. |
Арк. |
Номер докум. |
Підп. |
Дата |
|||
Розробив |
Лактіонов Я.В |
КТ 1. Розробка комп'ютерно-інтегрованого стенду «Автоматизація житлових приміщень». ПТ 1. Розробка модуля керування |
ЛІТ. |
Аркуш |
Аркушів |
||
Перевірив |
О |
1 |
1 |
||||
Т. контроль |
|||||||
ХНУРЕ Кафедра ТАПР |
|||||||
Н. контроль |
|||||||
Затверд. |
Невлюдов І. Ш. |
||||||
EMBED Word.Document.8 \s
EMBED Word.Document.8 \s
Bluetooth преобразователь
Модуль управления
Bluetooth преобразователь
Блок управления макетом
Датчики
Исполнительные механизмы
Модуль приема сообщений
Модуль обработки пакетов данных
База данных
Блок принятия решений
Интерфейс пользователя
Признак начала сообщения
Метка сообщения
Адрес устройства
Тип
устройства
Передаваемые параметры
Контрольная сумма
Признак конца сообщения
Начало
Ожидание сообщения
Нет
Получено?
Да
Проверка длины сообщения
Длина отличается от заданной?
Да
Нет
Проверка принадлежности сообщения
Сообщение предназначено для нашего модуля?
Нет
3
Да
1
3
1
Получение адреса устройства
Проверка адреса устройства
Адрес найден в БД?
Нет
Да
Получение типа устройства
Проверка типа устройства
Тип найден в БД?
Да
Нет
2
3
2
Получение параметров и данных
Проверка параметров
Параметр соответствует формату?
Нет
Да
Получение контрольной суммы и конца сообщения
Проверка контрольной суммы и конца сообщения
Параметр прошла успешно?
Нет
Да
Запись в базу данных и отображение на экране
Конец
Интерфейс пользователя
База данных
Блок формирования пакетов данных
Модуль обработки пакетов данных
Модуль отправки сообщений
Наименование объекта
ВОРОТА
Ворота
Изображение объекта
Жалюзи
Текущее состояние объекта
открыты
Освещение в гостиной
Освещение в коридоре
Кнопки управления
Открыть
Закрыть
Подключить Bluetooth
Список доступных объектов
Кнопка подключения к Bluetooth