- •Введение
- •Современные системы управления участком регулировки электро-светооборудования
- •2 Разработка структурной схемы работы системы
- •3 Разработка функциональной схемы работы системы
- •4 Выбор и обоснование технических и аппаратных средств
- •4.1 Выбор и обоснование микроконтроллера
- •4.2 Выбор и обоснование технической части
- •5.1.1 Выбор языка программирования для приложения
- •5 Выбор программных средств асу
- •5.1 Выбор языка программирования
- •Выбор и обоснование языка программирования микроконтроллера
- •Выбор среды разработки ide
- •5.2.1 Выбор среды разработки ide прошивки для микроконтроллера
- •5.2.2 Выбор среды разработки приложения для пк
- •5.3 Выбор среды моделирования работы устройства
- •Разработка базы данных и алгоритма работы системы
- •6.1 Разработка бд асу
- •6.2 Разработка алгоритмов работы системы
- •6.2.1 Алгоритм функционирования асу
- •6.2.2 Алгоритм установки яркости освещения оператором
- •6.2.3 Алгоритм построения графика
- •7 Описание функционирования системы
- •8.2 Структура работ по созданию программного продукта
- •8.3 Расчёт сметы затрат и цены асу
- •8.4 Расчёт экономического эффекта от применения программного средства
- •Заключение
- •Список использованных источников
Разработка базы данных и алгоритма работы системы
6.1 Разработка бд асу
На выбранном языке программирования C# для начала необходимо установить работу базы данных, которая будет хранить исходную информацию, и в которую будут вноситься данные для получения результирующего документа. Путь к базе данных не должен быть длиннее 255 символов. При необходимости можно открыть диалог выбора каталога, нажав кнопку«…». Пароли администратора и оператора могут быть установлены только администратором. Настройка системы базы данных представлена на рисунке 6.1.
Рисунок 6.1 - Настройка системы базы данных
Таблица базы данных состоит из столбцов и строк. Столбцы имеют свойства – имя, тип данных.
Таблицы базы данных должны обладать следующими свойствами:
У таблицы есть имя (уникальное);
Нет двух одинаковых строк;
в) Столбцы имеют разные наименования (нет двух одинаковых столбцов);
г) Порядок строк в таблице произвольный (нет необходимости учитывать порядок строк, если не задана сортировка).
Добавление параметров соединения представлено на рисунке 6.2.
Рисунок 6.2 - Добавление параметров соединения
В табличной части диалога отображается информация о возможных соединениях с удаленными серверами.
Поле «Адрес» указывает адрес удаленного сервера. В это поле может вводиться каким сервера, так и его явный IP-адрес.
Поле «Порт» указывает номер порта сервера, на котором он ожидает входящие подключения.
В полях «Логин» и «Пароль» указывается имя пользователя и его пароль, при помощи которых будет осуществляться аутентификация клиента на сервере.
В поле «Ping» выводится информация среднем о времени доставки информации до сервера в миллисекундах. В случае, если указанный сервер недоступен выводится информация о его недоступности в виде последовательности символов«---». В поле «Описание» выводится вспомогательная информация об удаленном сервере. Вида таблицы настройки параметров соединений представлены на рисунке 6.3.
Рисунок 6.3 - Добавление параметров соединения
Разработанная схема БД представлена на рисунке 6.4.
Рисунок 6.4 – Схема БД
Спроектированная схема БД имеет 4 сущностей:
log – информация о вех логах работы системы;
type – информация о типе лога;
status – информация о статусе лога;
mode – информация о режиме работы системы.
6.2 Разработка алгоритмов работы системы
Любой алгоритм должен удовлетворять основным свойствам:
1 Конечность алгоритма означает, что за конечное число шагов должен быть получен результат. Поэтому иногда это свойство называют результативностью;
2 Дискретность означает, что алгоритм должен быть разбит на последовательность отдельно выполняемых шагов;
3 Понятность алгоритма означает, что алгоритм должен содержать только те команды, которые входят в СКИ;
4 Точность (определённость) алгоритма означает, что любая его команда должна определять однозначное действие исполнителя. Иными словами, алгоритм не должен быть рассчитан на принятие каких-либо самостоятельных решений исполнителем;
5 Массовость, алгоритм должен быть пригоден для решения не только одной конкретной задачи, а так же для реализации целого класса родственных задач;
6 Корректность свойство алгоритма, заключающееся в способности алгоритма давать правильные результаты при различных исходных данных;
7 Результативность отсутствие ошибок, алгоритм должен приводить к правильному результату для всех допустимых входных значениях.
Опыт алгоритмизации различного рода задач как вычислительного, так и не вычислительного характера позволяет сформулировать ряд правил (рекомендаций), выполнение которых облегчает и упрощает процесс составления алгоритма и его проверку. Эти правила применимы для любых алгоритмов, но наиболее полезны они при составлении достаточно сложных и объемных алгоритмов [4].
Главные из этих правил следующие:
а) При составлении алгоритма необходимо пользоваться способом последовательной (поэтапной) детализации;
б) Алгоритм должен строиться по модульному принципу;
в) Схема алгоритма должна составляться на базе ограниченного числа типовых структур.
Способ последовательной детализации предполагает получение алгоритма в виде многоэтапного процесса, в котором на каждом из этапов составляется алгоритм или отдельные его части с различной степенью детализации. Так, на первом этапе составляется укрупненный алгоритм с малой степенью детализации. На последующих этапах степень детализации увеличивается. Особенно это относится к отдельным частям алгоритма.
Правило формирования алгоритма по модульному принципу предполагает его построение в виде отдельных, относительно независимых частей (модулей). В состав модуля включаются части алгоритма, удовлетворяющие следующим требованиям: функциональной законченности, минимальной связности и представленной в форме схемы с одним входом и одним выходом.
Требование функциональной законченности означает, что в состав модуля должна включаться некоторая законченная в смысловом и функциональном отношении часть общего алгоритма. Выделение таких частей позволяет проводить их параллельную разработку и допускает относительно простой контроль правильности их составления. При обнаружении ошибок полной замене или коррекции может подлежать содержание только «неисправного» модуля, а не всего алгоритма.
Требование минимальной связности означает формирование модулей так, чтобы они использовали минимальное число общих переменных. Учет этого требования позволяет строить наглядные и легко «читаемые» алгоритмы, а также выполнять их проверку в автономном режиме.
Представление модуля схемы, имеющей один вход и один выход, так же как и требование минимальной связности, обеспечивает улучшение наглядности и «читаемости» алгоритма. В таких алгоритмах легко прослеживаются причинно-следственные связи отдельных частей.
Правило составления схем алгоритмов на базе ограниченного числа типовых структур, имеющих один вход и один выход, обусловлено стремлением обеспечить обозримость и проверяемость алгоритма. Сложные структуры алгоритмов или их частей могут быть изображены с помощью трех типовых структур обработки данных, имеющих один вход и один выход. При этом алгоритмы сложной структуры также будут иметь один вход и один выход.
К типовым структурам относятся:
1 Неразветвленная (линейная) структура обработки данных. Она характеризуется независимостью последовательности обработки данных от выполнения каких-либо условий;
2 Разветвленные нециклические структуры. Как и в структуре первого типа, степень детализации алгоритма может быть различной. Поэтому внутри символа «Процесс» могут находиться свои (внутренние) разветвления, которые можно на этом этапе детализации не учитывать;
3 Разветвленные циклические структуры. Структуры этого типа используются для многократного выполнения одних и тех же вычислений (действий) при изменяющихся данных. В число основных функций, выполняемых управляющими вычислительными машинами (комплексами) в различных промышленных системах управления, входят:
4 Сбор данных, их обработка и регистрация;
5 Определение параметров процесса или объекта (решение задач параметрической идентификации);
анализ текущего режима протекания процесса или изменения координат объекта с целью выдачи рекомендаций для управления им или формирования управления на исполнительные органы при реализации режима прямого цифрового управления;
6 Решение задач оптимального и адаптивного управления.
Особенностью реализации этих функций управляющими вычислительными машинами является требование их выполнения в реальном масштабе времени (в реальном времени). Это требование является одним из существенных ограничений, в условиях которого и должны выполняться перечисленные задачи.
Как известно, УВМ, как и любая ЭВМ общего назначения, является программно-управляемым устройством обработки данных. Определенность алгоритма предполагает такое составление предписания, которое не допускает различных толкований или искажения результата.
Массовость алгоритма определяет возможность использования любых исходных данных из некоторого определенного множества. Если предписание сформулировано только для конкретного случая с заданными исходными данными и не может быть использовано при других исходных данных, то такое предписание не является алгоритмом. Типичным примером не алгоритма может служить таблица умножения. В то же время правило умножения «столбиком» – алгоритм.
Результативность алгоритма – свойство так определять процесс преобразования исходных данных, чтобы он через конечное число шагов для любых допустимых исходных данных приводил к искомому результату. Если предписание, определяющее процесс преобразования информации, не будет обладать хотя бы одним из указанных выше свойств, то его нельзя считать алгоритмом.
Существует два метода разработки сложных алгоритмов:
Метод последовательной детализации задачи («сверху-вниз») состоит в том, что исходная сложная задача разбивается на подзадачи. Каждая из подзадач рассматривается и решается отдельно. Если какие-либо из подзадач сложны, они также разбиваются на подзадачи. Процесс продолжается до тех пор, пока подзадачи не сведутся к элементарным. Решения отдельных подзадач затем собираются в единый алгоритм решения исходной задачи. Метод широко используется, так как позволяет вести разработку общего алгоритма одновременно нескольким программистам, решающим локальные подзадачи. Это необходимое условие быстрой разработки программных продуктов.
Сборочный метод («снизу-вверх») заключается в создании множества программных модулей, реализующих решение типичных задач. При решении сложной задачи программист может использовать разработанные модули в качестве вспомогательных алгоритмов (процедур). Во многих системах программирования уже существуют подобные наборы модулей, что существенно упрощает и ускоряет создание сложного алгоритма.
Алгоритмы и процессы управления.
Управление – целенаправленное взаимодействие объектов, одни из которых являются управляющими, другие – управляемыми.
В простейшем случае таких объектов два.
С точки зрения информатики управляющие воздействия можно рассматривать как управляющую информацию. Информация может передаваться в форме команд. Последовательность команд по управлению объектом, приводящая к заранее поставленной цели, называется алгоритмом управления. Следовательно, объект управления можно назвать исполнителем управляющего алгоритма. В рассмотренном примере, управляющий объект работает «не глядя» на то, что происходит с управляющим объектом (управление без обратной связи). Такая схема управления называется незамкнутой. Другая схема управления может учитывать информацию о процессах, происходящих в объекте управления. В этом случае, алгоритм управления должен быть достаточно гибким, чтобы анализировать эту информацию и принимать решение о своих дальнейших действиях в зависимости от состояния объекта управления (управление с обратной связью). Такая схема управления называется замкнутой.
