Скачиваний:
28
Добавлен:
17.03.2016
Размер:
1.9 Mб
Скачать

15

Лекция 6

Программное обеспечение систем управления

Программное обеспечение (ПО) наряду с аппаратным обеспе­чением (процессором, памятью, внешними устройствами) является вторым важнейшим компонентом ЭВМ. Можно сказать, чтоосновные возможности ЭВМ, ее интеллект, отличающий ее от других электронных устройств, реализованы именно в ПО.

В настоящее время затраты на создание ПО в несколько раз превышают соответствующие затраты на аппаратную часть ЭВМ. При использовании в системах управления ЭВМ гибкость и эф­фективность системы и качество управления не в последнюю оче­редь зависят от программ, которые выполняет ЭВМ.

1. Математическое обеспечение эвм

Программы, используемые в системах управления, создаются на основе предварительного теоретического анализа системы управления, ее математического моделирования, во время кото­рого проверяются технические решения и определяются парамет­ры системы, обеспечивающие оптимальное управление данным объектом. Математический анализ позволяет синтезировать опти­мальный алгоритм управления, рассчитать реакцию системы на возможные отклонения в условиях функционирования объекта и на изменения в узлах системы управления.

ПО — это воплощение, реализация математического обеспе­чения. При проектировании системы управления немалая доля за­трат приходится на математический анализ системы вследствие сложности и невозможности интуитивно предсказать ее поведе­ние. Математический аппарат анализа систем управления отно­сится к наиболее сложным разделам современной математики.

Несмотря на широкое использование ЭВМ при проектировании, синтез системы остается во многом трудно формализуемым творчес­ким актом высококвалифицированного специалиста, не поддаю­щимся автоматизации (в отличие от программирования). Поэтому до сих пор часто употребляют термин «математическое обеспечение» вместо термина «программное обеспечение», особенно среди разра­ботчиков систем, в том числе систем управления, подчеркивая тем самым важность математической основы любой программы.

2. Алгоритмы

По результатам математической проработки задачи формиру­ется алгоритм программы — конечная последовательность одно­значных правил, исполнение которых позволяет с помошью ко­нечного числа шагов получить решение задачи из некоторого класса однотипных задач, однозначно определяемое исходными данны­ми. Подразумевается, что исходные данные могут изменяться в определенных пределах и процесс применения правил к исход­ным данным (путь решения задачи) определен вполне однознач­но; на каждом шаге процесса применения правил известно, что нужно считать результатом этого процесса. При создании алгоритма программы по результатам математи­ческого анализа задачи обычно проводят оптимизацию для учета дополнительных условий, важнейшими из которых являются сле­дующие:

технические характеристики ЭВМ (объем ОЗУ, магнитного диска, производительность процессора и т.д.);

имеющиеся в наличии инструменты программирования (транс­ляторы или интерпретаторы языков программирования, библио­теки стандартных подпрограмм, текстовые редакторы, отладчики, оболочки и т.д.);

степень универсальности программы и соответствующие тре­бования к надежности и модифицируемости программы и форме диалога с ней.

Эти правила противоречивы, и поиск разумного компромисса требует разносторонней квалификации специалиста (в крупных учреждениях, занимающихся созданием программ, предусмотрен целый штат алгоритмистов). Разработан свод правил, облегчающих построение эффективных алгоритмов. Например, алгоритм должен по возможности решать именно поставленную задачу, а не серию отдельных задач. Использование циклических, итераци­онных процедур позволяет сократить размер программы, сделать ее понятнее при программировании и надежнее при эксплуата­ции. Максимально используются готовые отлаженные и прове­ренные блоки и подпрограммы.

Именно при составлении алгоритма следует предусмотреть проверки на соответствие исходных данных и результатов раз­личным ограничениям. Например, при вычислениях делитель не должен быть близок к нулю, детерминант не должен быть мень­ше нуля; при программировании операции точения для станка-автомата программа должна проверить наличие и закрепленность заготовки, установить суппорт в исходное положение; при со­здании протокола обмена между управляющей ЭВМ и програм­мируемым контроллером следует разработать удобный и компак­тный набор условных кодов, подлежащих передаче по линии свя­зи, и т.д.

Понятие алгоритма было сформировано и широко применяет­ся в математике для описания последовательности действий при решении задач; оно было заимствовано специалистами в области программирования. Алгоритм есть пусть не точная, но понятная программисту форма постановки задачи, наглядно иллюстрирую­щая исходные данные программы, логику решения задачи и тре­буемые результаты. В алгоритме обычно опускаются несуществен­ные или очевидные детали, прорабатываемые на следующем эта­пе во время программирования по алгоритму.

Степень детализации алгоритма определяется уровнем квалифи­кации потребителя алгоритма. Например, требуется создать программу вычисления среднего арифметического по результатам за­меров. Возможны различные формы представления алгоритма рас­чета.

Это, например, могут быть формулы для вычисления среднего:

Однако эта форма предполагает обычно высокую квалифика­цию потребителя алгоритма и применяется в основном в специ­альной литературе.

Для повышения наглядности часто используют блок-схему алгоритма (рис. 3.60). При усложнении алгоритма блок-схемы те­ряют наглядность, поэтому их применяют главным образом для изображения укрупненного алгоритма, которое отражает его логику.

Рис. 3.60. Блок-схема алгоритма вычисления среднего значения

Алгоритм может быть представлен также в виде схемы дей­ствий, заданной в словесной форме, например, для той же зада­чи вычисления среднего он будет выглядеть следующим образом:

1. Ввод числа замеров N.

2. Подготовка цикла вычисления суммы результатов замеров: счетчик цикла i = 1;

начальное значение сумматора S=0.

3. Ввод по очереди значений замеров и вычисление их суммы:

4. Проверка правила завершения цикла: если iN , то идти к п. 3,

5. Вычисление среднего арифметического:

6. Вывод значения среднего арифметического.

Соседние файлы в папке КЛ_СУПО