СТЕНД ОТЛАДКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ЦИФРОВОГО УСТРОЙСТВА УПРАВЛЕНИЯ ЭНЕРГЕТИЧЕСКИМ ОБЪЕКТОМ

Полезная модель относится к области тестирования и отладки программного обеспечения устройств управления сложными энергетическими объектами, управляемыми в процессе работы по большому количеству параметров, например, авиационными газотурбинными двигателями.
Известно устройство для контроля и отладки программ, содержащее связанные между собой ЭВМ, группу регистров, узлы сравнения, триггеры, элементы И, ИЛИ, НЕ, счетчик, сумматор и элемент задержки.
Работа устройства начинается с установки на регистрах начального и конечного адресов команд прерывающей программы, а также код периода основного такта обработки информации в ЭВМ. Этот код определяет длительность каждого очередного шага выполнения отлаживаемых программ. Время очередного шага выполнения программ отсчитывается счетчиком. По окончании счета устройство вырабатывает сигнал, который поступает в систему прерывания ЭВМ.
Во время выполнения прерывающей программы реальное время счетчиком не отсчитывается и масштаб реального времени, определяемый периодом основного такта обработки информации в ЭВМ, не нарушается.
При работе ЭВМ на регистр адреса команды вводится адрес выполняемой команды, который через первый информационный вход устройства поступает на вторые входы первого и второго узлов сравнения. На выходе первого узла сравнения появляется импульс при совпадении начального адреса прерывающей программы с адресом, набранным на первом регистре, а на выходе второго узла сравнения при совпадении конечного адреса прерывающей программы с адресом, набранным на втором регистре. Включение каждой команды сопровождается управляющим сигналом. Этот сигнал приходит на управляющие входы узлов сравнения для опроса узлов сравнения. На выходе триггера появляется сигнал, равный по длительности времени выполнения прерывающей программы со всеми задержками, вызываемыми вмешательством программиста. Этот сигнал запрещает прохождение импульсов с генератора на счетный вход счетчика и, наоборот, разрешает работу счетчика при функционировании устройства в зоне рабочих отлаживаемых программ. На тумблерном регистре набирается обратный код периода тактирующих прерываний, который перезаписывается на счетчик в момент выработки последним сигнала переполнения. Сигнал переполнения поступает на третий управляющий выход устройства.
Программист, проводящий отладку программы, устанавливает на регистре управления режим контроля. При этом на выходах одного из регистров появляются одиночные потенциалы. Каждая команда обращения в ОЗУ сопровождается управляющим потенциалом, который поступает из процессора через управляющий вход устройства на вход элемента И, на первый вход которого поступает продолжительный потенциал первого выхода управляющего регистра. С выхода первого элемента положительный потенциал через второй элемент ИЛИ поступает на управляющий вход третьего узла сравнения и тем самым разрешает сравнение информации, набранной на третьем регистре, с содержимым регистра адреса ячейки. Содержимое регистра адреса ячейки ОЗУ через первую группу элементов И и элементов ИЛИ поступает на второй информационный вход третьего узла сравнения. При совпадении содержимого регистров адреса ячейки на выходе узла сравнения будет выработан разрешающий потенциал, который поступает на вход четвертого И, на второй вход которого поступает разрешающий потенциал с выхода первого элемента ИЛИ. Сигнал с выхода четвертого элемента И через седьмой элемент И и третий элемент ИЛИ поступает на второй управляющий выход устройства, который соединен с регистром устройства. При несовпадении содержимого регистров выводится информация о сбое программы.
(см. патент РФ №2050588, кл. G06F 11/28, 1995 г.)
В результате анализа известного устройства необходимо отметить, что его использование позволяет совмещать во времени процедуры обнаружения и локализации ошибки. При обнаружении ошибки момент ее проявления фиксируется. При этом промежуточная информация, имеющаяся в преобразователях ЭВМ на данном интервале выполнения отлаживаемых программ, также фиксируется и может быть измерена. Это позволяет уже при первом выполнении теста локализовать ошибку, либо выбрать правильную версию об источнике ошибки.
Однако известное устройство проводит тестирование программ без учета индивидуальных особенностей программного средства, в которое она будет введена, а также без учета индивидуальных особенностей энергетического объекта, в составе которого будет функционировать программное средство с программой, что снижает эффективность тестирования и приводит к необходимости окончательную отработку программы проводить непосредственно на энергетическом объекте, что приводит к необходимости осуществления серии наладочных (тестовых) пусков энергетического объекта.
Известна система для контроля программ, содержащая процессор, первый вход-выход которого соединен с входом-выходом системной шины компьютера и оперативное запоминающее устройство, вход-выход которого соединен со вторым входом-выходом процессора. Система также содержит блок памяти адресов размещения блоков данных, первый вход которого соединен с первым выходом процессора шиной загрузки адресов размещения блоков данных, блок сравнения адресов выборки команд с адресами размещения блоков данных, первый вход которого соединен с первым выходом блока памяти адресов размещения блоков данных, второй вход соединен со вторым выходом процессора шиной подачи адресов выборки команд, а выход соединен с первым выходом процессора шиной сигнализации о совпадении адресов. Система содержит также блок вычисления сигнатур блоков данных, вход которого соединен со вторым выходом блока памяти адресов размещения блоков данных, и блок сравнения сигнатур, первый вход которого соединен со вторым выходом блока сравнения адресов выборки команд с адресами размещения блоков данных шиной сигнализации о несовпадении адресов, второй вход соединен с выходом блока вычисления сигнатур блоков данных, третий вход соединен с третьим выходом процессора шиной подачи сигнатур программных блоков, а выход соединен со вторым выходом процессора шиной сигнализации о совпадении сигнатур.
В процессе работы системы при контроле программ во время загрузки блоков данных из сети или внешних носителей в оперативное запоминающее устройство, в блоке памяти запоминаются адреса размещения этих блоков данных. Кроме того, для каждого такого блока данных в блоке вычисления сигнатур вычисляется соответствующая ему сигнатура (контрольная сумма). Адреса размещения блоков данных с внешних носителей и сети, и соответствующие этим блокам вычисленные сигнатуры, сохраняются в блоке памяти адресов размещения блоков данных и блока вычисления сигнатур блоков данных, соответственно.
При выполнении программы адреса выборки команд процессором сравниваются в блоке сравнения адресов с запомненными в блоке памяти адресов с адресами размещения блоков данных из сети или внешних носителей. При совпадении адресов выполнение программы прерывается и процессор переходит к процедурам антивирусной защиты с ограничением доступа, при несовпадении адресов производится сравнение сигнатур программных блоков, исполняемых процессором, с вычисленными и запомненными в блоке сигнатурами блоков данных. Если сигнатуры не совпадают, то выполнение программ продолжается, а при совпадении сигнатур ход выполнения программ прерывается и процессор переходит к процедурам антивирусной защиты с ограничением доступа.
(см. патент РФ на полезную модель №107621, кл. G06N 7/00, 2011 г.) - наиболее близкий аналог.
В результате анализа известной системы необходимо отметить, что она, как и приведенная выше, обеспечивает диагностирование программ без учета индивидуальных особенностей объекта, которым она управляет, что увеличивает время тестирования и уменьшает его достоверность.
Техническим результатом настоящей полезной модели является разработка стенда отладки программного обеспечения цифрового устройства управления энергетическим объектом, обеспечивающего высокую достоверность диагностирования программ, а также сокращение количества времени и ресурсов энергетического объекта на отладку программы его устройства управления.
Указанный технический результат обеспечивается тем, что в стенде отладки программного обеспечения цифрового устройства управления энергетическим объектом, включающем программный блок, предназначенный для ввода тестируемой программы цифрового устройства управления, блоки сопряжения, блок сравнения, а также блок управления, блок эталонных параметров энергетического объекта и устройство регистрации и визуализации, новым является то, что стенд оснащен программным модулем, предназначенным для введения программы, характеризующей математическую модель энергетического объекта и его систем, программный блок и программный модуль связаны с блоком управления, программный блок, связан через блоки сопряжения с программным модулем, причем выход программного модуля связан с первым входом блока сравнения, второй вход которого связан с блоком эталонных параметров энергетического объекта, а выход - с блоком архивирования и устройством регистрации и визуализации, при этом, программный блок, предназначенный для ввода тестируемой программы, смонтирован с возможностью его замены цифровым устройством управления энергетическим объектом.
Сущность полезной модели поясняется графическими материалами, на которых представлена схема стенда отладки программного обеспечения цифрового устройства управления энергетическим объектом.
Стенд отладки программного обеспечения цифрового устройства управления энергетическим объектом включает программный модуль, в программный блок 1 которого заложена программа, отражающая математическую модель энергетического объекта (например, авиационного газотурбинного двигателя), а в программный блок 2 - программа, отражающая математическую модель его систем.
Стенд также включает блок управления 3.
Программный модуль посредством блоков сопряжения 4 и 5 связан с программным блоком 6, предназначенным для ввода тестируемой программы (пусть это будет управляющая программа цифрового устройства управления газотурбинным двигателем - электронного регулятора).
Выход программного модуля связан с первым входом блока сравнения 7, со вторым входом которого связан выход блока 8 эталонных параметров энергетического объекта. В блок 8 заложены параметры объекта, в данном случае - газотурбинного двигателя, полученные при его приемосдаточных испытаниях. Выход блока сравнения связан с блоком 9 архивирования и с устройством регистрации и визуализации 10, которое наиболее удобно совмещать с блоком управления 3. Блок управления связан с программным модулем и программным блоком 6.
Заявленный стенд скомплектован из стандартных блоков и модулей.
Так, в качестве программного модуля может быть использована стандартная электронно-вычислительная машина, в программный блок который закладывается программа, отражающая математическую модель двигателя и его систем, который комплектуется цифровым электронным регулятором, управляющая программа которого и подлежит тестированию.
Блоки сопряжения 4 и 5 являются стандартными.
В качестве программного блока 6 может быть использован стандартный процессор.
В качестве блока 7 может быть использован отдельный программный модуль в среде компьютера.
В качестве блока 8 может быть использован отдельный программный модуль в среде компьютера.
В качестве блока 9 может быть использован стандартный блок с соответствующей подпрограммой.
В качестве устройства регистрации и визуализации может быть использован монитор компьютера.
Заявленный стенд работает следующим образом.
Работу стенда рассмотрим на примере отладки программы цифрового электронного регулятора газотурбинного двигателя.
Для отладки программы ее заводят в программный блок 6, в программные блоки 1 и 2 программного модуля заводят программы математической модели газотурбинного двигателя и его систем (подачи топлива, воздуха, охлаждения и пр), в составе которых будет работать цифровой электронный регулятор.
Необходимо отметить, что использование математических моделей двигателей при управлении их работой и проведении их диагностирования довольно давно известно из уровня техники, см., например, патенты РФ №87467, 2406990.
С блока управления 3 запускают программные блоки 1, 2, 3. Управляющие программные команды с блока 6 отрабатывает программный модуль. Результаты отработки программы с блоков 1 и 2 передаются на блок сравнения 7, где они сравниваются с параметрами, заложенными в блок 8 и результаты сравнения передаются в архив 9 и в устройство регистрации и визуализации 10 для оперативного управления хода отладки программы. По результатам тестирования в случае необходимости проводят коррекцию программы.
Далее на место программного блока 6 устанавливают штатный цифровой электронный регулятор, в программный блок которого заложена прошедшая тестирование и, в случае необходимости, откорректированная по его результатам программа, монтируют, в случае необходимости, иные блоки сопряжения 4 и 5, которые осуществляют связь электронного регулятора с программными блоками 1 и 2, и, аналогично описанному выше, осуществляют повторное тестирование программы, заложенной в программный блок штатного цифрового электронного регулятора.
После проведения повторного тестирования в случае необходимости осуществляют коррекцию программы по результатам тестирования, после чего цифровой электронный регулятор устанавливают на штатный газотурбинный двигатель и проводят окончательное диагностирование программы уже на энергетическом объекте.
Выполнение заявленного стенда позволяет обеспечить весьма достоверное диагностирование программы за счет проведения ее тестирования в три этапа: по математической модели энергетического объекта и его систем на первом этапе, с учетом конструктивных особенностей цифрового электронного регулятора на втором, и с учетом индивидуальных характеристик реального энергетического объекта - на третьем. Достоинством конструкции данного стенда является также сокращение времени и затраты ресурсов энергетического объекта на отладку программы его устройства управления.