
- •5. Разработка программного обеспечения для аоэп
- •5.1. Структура программного комплекса
- •5.2. Модуль взаимодействия с устройством ввода - вывода
- •5.3. Разработка фундаментальных классов
- •5.3.1. Разработка программного модуля объекта «пи - регулятор».
- •5.3.2. Разработка программного модуля объекта «Генератор».
- •5.3.3. Разработка программного модуля «Идентификация»
- •5.3.4. Разработка программного модуля объекта «Заграждающий фильтр»
- •5.3.5. Разработка программного модуля объекта «Синхронный детектор»
- •5.4. Разработка интерфейса
- •5.5. Правила использования программного продукта
5. Разработка программного обеспечения для аоэп
Разработка алгоритмов управления в реальном времени требует принятие мер по синхронизации данных идущих от аппаратуры ввода - вывода и создание программных решений позволяющих производить максимально точные замеры параметров реального объекта. Это значит, что недопустимо считывание данных в приблизительные промежутки времени и нельзя производить остановку работы алгоритма при смене одного из его управляющих параметров.
Решить с программной точки зрения поставленные задачи позволит применение объектно - ориентированного подхода в реализации интерфейса ввода - вывода и завязка обращений к аппаратуре по таймеру, что обязывает к созданию модуля работы с аппаратурой на низком уровне.
Полный листинг программного комплекса приведен в приложении.
5.1. Структура программного комплекса
Полная структура программного комплекса представлена на рисунке 5.1.1. Программный комплекс состоит из следующих основных модулей:
Главный модуль - инициализация глобальных переменных, проверка возможности запуска программы в текущей конфигурации операционной системы, чтение конфигурации, отображение главного окна ввода - вывода, запуск системной очереди сообщений;
Системная очередь сообщений - регистрация управляющих функций клавиатуры, системного таймера, генерация сообщений математической модели управления, электронной модели управления;
Модуль чтения/записи конфигурации - формирование конфигурационной структуры, где собраны основные параметры комплекса,
Базовый модуль интерфейса - базовый объект для построения основных графических элементов управления и ввода - вывода, имеет виртуальные функции для ответа на сообщение и отображение дочернего объекта;
Окна ввода - вывода - являются наследниками от базового объекта п.5, в свою очередь добавляют свойства к базовому объекту каждый исходя из своих потребностей;
Управляющие графические элементы - являются наследниками от базового объекта п.5 и служат основными точками на которых пользователь должен заострять внимание во время работы с комплексом;
Интерфейс аппаратного ввода - вывода - служит основным инструментом для доступа к плате ЦАП и АЦП, производит инициализацию и остановку счета, является программой низкого уровня, написанной на языке Assembler x86, преобразует данные в удобно читаемый вид;
Модуль базы данных алгоритмов - база данных алгоритмов;
Базовый модуль алгоритмов - абстрактный базовый класс для построения алгоритмов управления, имеет прямое управление окном графического и текстового вывода, имеет виртуальные функции для инициализации дочернего объекта и формирования основного тела алгоритма, производит чтение из базы параметров и запускает очередь сообщений алгоритма;
Очередь сообщений алгоритма - является функцией базового модуля алгоритмов и реализует графический и текстовый интерфейс;
CD - объект, реализующий свойства синхронного детектора;
Рисунок 5.1.1
GEN - объект, реализующий свойства цифрового генератора;
Filters - объект, реализующий свойства заграждающего и избирательного фильтра;
REG - объект, реализующий свойства ПИ и ПИД - регулятора;