Разработанная пользователем схема компилируется в программный модуль, код которого состоит из подпрограмм, реализующих алгоритмы библиотечных элементов, входящих в схему разрабатываемого модуля, и таблицу связей. Этот код может интерпретироваться на любой аппаратной платформе, в которой портирована исполняющая подсистема MnemoLogic. Исполняющая система предельно проста и, соответственно, предельно надежна. Алгоритм ее работы заключается в последовательной интерпретации элементов схемы и передаче по окончании такта значений выходов каждого элемента на связанные с ним по схеме входы других элементов. К настоящему моменту портированы платформы: встраиваемые ПК под Window-XP,-7,-10, ПЛК на основе микроконтрoллеров семейств ATMEGA и MicroChip.
Отладку схемы модуля можно производить как на самой целевой платформе, так и без нее, на автоматически создаваемой модели схемы модуля на платформе ПК.
Иерархическая структура MnemoLogic позволяет «сворачивать» разработанную пользователем схему модуля в библиотечный элемент с дальнейшим использованием этого элемента в схеме другого модуля, находящего иерархически на ступень выше. Таким образом, в рамках одной схемы можно реализовать сеть из множества подчиненных модулей, распределенных по различным ресурсам и на различных платформах.
Если в контроллере предусмотрено подключение средств графического отображения, то с помощью MnemoLogic можно создавать мнемосхемы, пульты,
тренды, тревожные панели, анимацию и прочие компоненты и свойства, характерные для SCADA-систем.
Для этой цели в библиотеку MnemoLogic введены элементы, которые кроме отображения в схеме, имеют еще и визуальное отображение на Мнемопульте, который открывается в другом окне. В составе таких элементов: тумблеры, переключатели, лампочки, табло, краны, задвижки, трубы, емкости и т.д., т.е содержит все компоненты, которые могут обеспечить оператору-диспетчеру визуальное представление о ходе технологического процесса, контролировать и управлять им.
Таким образом, основные этапы процесса проектирования системы автоматизации – программирование контроллеров и создание человеко-машинного интерфейса, могут быть сосредоточены в руках одного специалиста.
И этим специалистом может быть КИП-овец, который, как правило, гораздо ближе к технологии производства, чем профессиональный программист.
MnemoLogic это не система, не пакет, не программный комплекс, а просто приложение. Причем приложение достаточно «легкое» (всего 20-25Мб).
Тем не менее, MnemoLogic обеспечивает выполнение всех основных функций традиционных гигабайтных Scada-пакетов, программирование контроллеров и даже моделирование объекта и окружающей его среды.
MnemoLogic. Основные понятия
1. Элемент
В архитектуре MnemoLogic элемент – это минимальный(элементарный) алгоритмический узел, который выполняет некоторую функцию в алгоритме, выполняемого в программе контроллера. Элементы, которые входят в стандартную библиотеку MnemoLogic, по функциям максимально приближены к соответствующим электронным компонентам, которые использовались ранее и используются ныне при разработке электрических схем различных приборов и других изделий электронной техники. Сюда входят арифметические и логические элементы , триггеры, счетчики, регистры, дешифраторы, мультиплексоры и пр. Элементы имеют входные и выходные контакты. Значения входных контактов обрабатывается алгоритмом, заложенным в элемент, а результаты выводятся на выходные контакты. Оформление элементов также максимально приближено к тем правилам, которые приняты для компонентов на электрической схеме. Изображение элемента может иметь вертикальные разделители между входными/выходными контактами и функциональными метками, горизонтальные разделители между группами контактов. Косая черта на контакте означает срабатывание по переднему или заднему фронту. Кружочек на контактах логических элементов означает инверсию.
2. Схема
Элементы, соединенные цепями образуют схему. Напр, которая реализует функцию При каждой вставке элемента в схему ему присваивается порядковый номер (#N) исполнения. Если схема чисто комбинационная, то порядок исполнения не имеет значения. Но, если в схеме имеются элементы памяти, то в процессе проектирования необходимо установить правильный порядок. В отличие от обычной электрической схемы, MnemoLogic по одной цепи за один такт может передать с выходного контакта одного элемента на входной контакт другого не только бит данных, но и 8, 16 или 32 бита. При этом значение на контакте может интерпретироваться как один из типов данных: L – логическая переменная U – 8-разрядное целое S8 – 8-разрядное целое со знаком U16 – 16-разрядное целое S16 – 16-разрядное целое со знаком U32 – 32-разрядное целое S32 – 32-разрядное целое со знаком R32 – 32-разрядное с плавающей точках Тип данных на контактах элемента может быть либо фиксированным, либо задается при вставке элемента из библиотеки в схему. Напр., Элемент «Мультиплексор» может коммутировать входы с любым типом данных, адресный вход А имеет фиксированный тип U8:
7. Параметры Некоторые элементы могут иметь параметры. Напр. элемент «Счетчик»
имеет два параметра:
Таким образом, с помощью параметров можно выбирать варианты выполнения алгоритма элемента. Совокупность входных/выходных контактов с их типами данных и параметров составляют интерфейс элемента. 2. Константы Кроме элементов и связывающих их цепей, компонентом схемы могут быть константы:
В приведенном фрагменте схемы значение, полученное в результате работы сумматора сравнивается с константой 5 3. Коннекторы Коннекторы, хотя и в явном виде присутствуют в схеме, компонентами схемы не являются. Если схема отображается на одном листе, то они нужны только для удобства оформления схемы. Напр.:
Если между источником и приемником сигнала находится насыщенный фрагмент схемы, то можно не загромождать этот фрагмент явным изображением цепи путем введения на выходе источника и входе приемника коннекторов с одинаковым именем. В многолистовой схеме коннекторы обеспечивают отображение связей между источником и приемником сигнала, если те находятся на разных листах.
4. Мнемоэлементы
Мнемоэлементы предназначены для проектирования пультов, технологических мнемосхем и других Scada-компонентов на персональном компьютере. Однако, они также могут быть использованы для программирования контроллеров, в которых имеются органы управления и отображения. В состав библиотеки входят задатчики сигналов(тумблеры, кнопки, переключатели и пр.), индикаторы различных типов (лампочки, табло, стрелочные приборы и пр.), технологические мнемоэлементы(краны, задвижки, моторы и пр.). При проектировании мнемоэлементы, кроме стандартного отображения в схеме, имеют еще и мнемоническое отображение на мнемопульте в другом окне. При включении мнемоэлементов в схему, она становится мнемосхемой и к ней в другом окне добавляется мнемопульт. К примеру:
Следует отметить, что мнемоэлементы, в отличие от просто элементов могут не иметь входов, либо выходов. Так мнемоэлемент «Светодиод» на схеме имеет только вход, так результатом обработки входного сигнала является не выдача результата на выходной контакт, а изменение его отображения на Мнемопульте. Соответственно, мнемоэлемент «Тумблер» на схеме имеет только выход, т.к. входным воздействием для него является манипуляции оператора на мнемопульте. Ниже приведен пример мнемосхемы 4-позиционного переключателя с индикацией. На числовом табло (мнемоэлемент #3) индицируется одна из 4 констант, выбор которой производится оператором установкой мышью положения кругового задатчика (мнемоэлемент #1). Схемотехнически этот выбор реализован с помощью 4-входового мультиплексора (элемент #2) На схеме:
На мнемопульте значение на числовом табло будет изменяться при изменении(мышью) оператором положения переключателя:
Блоки элементов В MnemoLogic предусмотрен механизм преобразования(свертки) схемы виде блока элементов(БЭ) и сохранения его в библиотеке. Таким образом, этот БЭ может быть использован в качестве элемента в других схемах. Ниже приведена схема 2-входового сумматора с памятью и входами записи и сброса.
Для того, чтобы свернуть схему в БЭ нужно сформировать его интерфейс. В MnemoLogic для этой цели предусмотрены специальные компоненты схемы: входные и выходные порты:
Оформление интерфейса БЭ и навигация при сохранении его в библиотеке осуществляется с помощью встроенного в MnemoLogic редактора интерфейса.
В результате получаем свернутую в БЭ исходную схему в виде библиотечного элемента, который можно использовать в другой схеме:
При этом названия и типы данных входных/выходных портов преобразуются в названия и Аналогично производится свертка мнемосхем в блоки мнемоэлементов (БМЭ) Например, приведенная выше мнемосхема 4-позиционного переключателя подготавливается к свертке в БМЭ следующим образом:
И после свертки сохраняется в библиотеке как БМЭ в следующем виде: На схеме:
На мнемопульте:
Отображение этого БМЭ совпадает отображением мнемоэлемента «Переключатель», но с другой, конкретно «заточенной» под определенное применение логикой. Подобным образом пользователь может создавать свою библиотеку задатчиков, индикаторов, приборов, технологических мнемоэлементов и пр.
ООО “ЭЛЕКТРОНМАШ-СИСТЕМ”