Утилита ISaVueExp предназначена для переноса переменных из проектов ISaGRAF Workbench в SCADA пакет PcVue. При переносе переменных производится автоматическое преобразование типов. В программе реализованы следующие функции:
Программа позволяет значительно сократить время при разработке АСУ ТП, которая основана на технологии программирования контроллеров ISaGRAF и SCADA пакете PcVue.
Операционные системы для исполнительных систем ISaGRAF
Debian GNU/Linux - операционная система для встраиваемых компьютерных систем и промышленных программируемых контроллеров.
QNX4 - многозадачная многопользовательская операционная система жесткого реального времени (ОСРВ) с архитектурой на основе микроядра и поддержкой ряда стандартов семейства POSIX.
QNX6 - многозадачная, встраиваемая ОС жесткого реального времени с архитектурой на основе микроядра, разработанная канадской компанией QNX Sofwtare Systems Ltd. (www.qnx.com). QNX6 - это операционная система, которая выделяется своей надежностью, производительностью, компактностью, легко адаптируется к нестандартному оборудованию и встраиваемая в устройства с ограниченными ресурсами.
Модуль JIT-компиляции для ISaGRAF 5++ ACE Target
Модуль JIT-компиляции для целевой системы ISaGRAF 5++ ACE Target предназначен для ускоренного выполнения фрагментов TIC-кода, путем его преобразования в машинный код процессора (x86), что обеспечивает ускорение работы целевой системы в 3-4 раза. При разработке программы в среде Workbench пользователь должен отметить желаемые фрагменты кода, используя функции compile_begin – начало фрагмента compile_end – конец фрагмента. Количество таких фрагментов ограничено только свободной ОЗУ. При выполнении проекта в целевой системе отмеченные фрагменты компилирутся в машинный код процес-сора (x86) при первом выполнении кода, и при последующих циклах выполняется уже ма-шинный код. В случае некорректной компиляции какого-либо фрагмента функция compile_begin возвращает FALSE и этот фрагмент впоследствии выполняется обычными средствами ISaGRAF, т.е. без ускорения. Некорректная компиляция возможна в следующих случаях: а) в выделенном фрагменте встретилась TIC-инструкция, не поддерживаемая в настоящий момент в JIT-компиляторе, б) попытка использования вложенных фрагментов для компиляции, например, при вызове из фрагмента функционального блока в) слишком большой фрагмент для компиляции (код превышает 8 кБ). Этот инструмент, главным образом, предназначен для ускорения вычисления матема-тических выражений, работы с массивами, ускорения циклов FOR, WHILE. Полностью под-держивается работа с типами данных DINT, REAL, LREAL. Для этих типов данных поддер-живаются все встроенные функции (abs, sin, log , min, max, ...). Также поддерживаются основные операции для типа BOOL (логические AND, OR, NOT...). Поддерживаются блоки IF, CASE. Частично поддерживается тип STRING, для которого реализована конкатенация строк (+) и присваивание. Поддерживается вызов С-функций, встраиваемых пользователем в целе-вую систему, при условии использования аргументов вышеперечисленных типов. Поддер-живается преобразование перечисленных типов друг в друга (ANY_TO_) и в STRING (ANY_TO_STRING).
Дополнительные библиотеки функций в ISaGRAF 5++ ACE Target
В состав исполнительной системы входит библиотека функций быстрой обработки данных, позволяющих значительно ускорить обработку массивов вещественных чисел и матриц. Данные функции исполняются в целевой системе со скоростью исполняемого машинного кода и позволяют реализовывать в приложениях ISaGRAF высокопроизводительные алгоритмы обработки массивов данных, необходимые, например, при работе с аудио- и видеопотоками, импульсными формами, регистрируемыми АЦП:
1. Семейство функций Fast_array предназначено для быстрого выполнения математических операций с массивами вещественных чисел и включает в себя следующие функции:
При использовании данных функций операции с массивами вещественных чисел выполняются на порядок быстрее, чем при выполнении аналогичных операций в программе на языке ST.
МАТЕМАТИЧЕСКОЕ ОБЕСПЕЧЕНИЕ
2. Семейство функций Fast_matrix предназначено для быстрого выполнения математических операций с матрицами и предоставляет следующие возможности:
При использовании данных функций операции с матрицами выполняются по результатам тестов в 60 раз быстрее, чем при выполнении аналогичных операций в программе на языке ST. Все операции с массивами и матрицами производятся, используя специальные объекты-указатели, представляющие собой структуры определенного вида. Данные объекты-указатели предварительно создаются в словаре переменных Workbench и инициализируются с помощью специальных функций создания массивов и матриц соответственно. Функции создания (инициализации) для каждого желаемого массива или матрицы должны быть вызваны один раз в начале работы, это можно сделать в программе на языке ST, используя переменную типа BOOL в качестве флага, сбрасываемого после выполнения требуемых действий.
3. Функции измерения времени с высоким разрешением (микросекунда).
4. Функции обработки сигналов (FFT, цифровые фильтры) на базе fast_array
5. Функции работы с контейнерами С++ (vector, list, hash,bitset).
6. Функции для работы с COM-портами: открытия, закрытия COM-порта, чтения и записи данных из (в) него, установки сигналов DTR и RTS COM-порта и некоторые другие.
7. ПИД-регулятор
8. IODevKit: предоставляет разработчику драйверов возможность использования языка С++ и библиотеки ACE для создания эффективных драйверов устройств и встроенных функций.