Logo Logo ru
  • iRidi Pro
    Основные компоненты
    • Приложение i3 Pro
    • iRidi Pro Server
    • iRidi Studio
    • iRidium studio v. 1.3.8 (устаревшая версия)
    Java Script в iRidi
    • Руководство
    • Справочник
    • Примеры
    • JS драйвера
    другие
    • Личный Кабинет
    • iRidium Cloud
    • iRidium Transfer
    • Push-уведомления
    • Лучшая практика
    Лицензирование
    • Лицензирование и передача проекта
    • Оффлайн-лицензирование
    • Активация iRidi Pro Server
  • Продукты
    i3 lite
    • Приложение i3 lite
    • Регистрация и лицензирование
    • Сервер
    • Модули
    KNX Home Server
    • Приложение i3 KNX
    • KNX Home Server
    BUS77 HOME SERVER
    • Приложения Bus77 Home и Bus77 Lite
    • Bus77 Home Server
    Решения
    • BYOD - решение для гостиниц
    • Портал жителя - решение для МКД
    iRidi SCADA
    • iRidi SCADA
  • Bus77
    НАСТРОЙКА BUS77
    • Основы Bus77
    • Приложения Bus77 Home и Bus77 Lite
    • Работа с драйвером Bus77 в iRidi Studio
    • Настройка шины Bus77 в iRidi Studio
    ПРОТОКОЛ BUS77
    • Характеристики CAN (Bus77)
    • Описание протокола
    • Исходники на GitHub
    ОБОРУДОВАНИЕ BUS77
    • Каталог Bus77 Pro
    • Каталог Bus77 Lite
  • Поддерживаемое оборудование
    Драйверы
    • Список драйверов
    • ProAV драйвера
    • AV & Custom Systems
    • JS драйвера
    • Сторонние драйвера и фриланс
    Протоколы и интерфейсы
    • Голосовое управление
    • 1-Wire
    • BACnet IP
    • Bus77
    • KNX
    • KNX IP BAOS
    • Weinzierl kBerry
    • Microsoft Exchange
    • Modbus
    • MQTT
    • NFC
    • ODBC
    • Onvif
    • SIP
    • SNMP
    • Wake On Lan
    • Z-Wave
    • ZigBee
    Производители
    • AMX
    • AVCiT
    • Beckhoff ADS
    • Biamp Tesira
    • Bluesound
    • Casambi
    • BSS Harman
    • Clipsal
    • ControlArt 7Port
    • Crestron
    • DigiBird
    • Domintell
    • Duotecno
    • EIDE
    • EPSNET
    • Global Cache
    • HDL Buspro
    • Helvar
    • IEAST
    • INELS BUS
    • INELS Wireless
    • Intesis
    • Kleger
    • Kramer VIA
    • Kramer 3000
    • Larnitech
    • Legrand Netatmo
    • LG TV
    • Lutron
    • Lutron Homeworks QS
    • MyHome
    • Nest
    • Novastar
    • Panasоnic PTZ
    • Philips Dynalite
    • PJLink
    • Satel
    • SamsungTV
    • Sonos
    • Somfy
    • SpinetiX
    • Televic Conference
    • TIS
    • Tion
    • URRI
    • Velbus
    • Velocio
    • Vinteo
    • WyreStorm
    • WiiM
    • Xicato
    • Yamaha
    • ZONT
    • Z-Wave.me
    Протестированное оборудование
    • Панель HDL S57
    • Панель HDL S10
    • SIP-домофон
    • Akuvox
    • Arlight
    • Divus
    • QBic TD-1050 PRO
    • QBic TD-1060 Slim
    • QBic TD-1070
    • Sigur
    • Uni-Ubi
    • Velocio
  • Оборудование iRidi

    Серверы
    • HS Сервер
    • ProAV Control Processor Basic
    • ProAV Control Processor Advanced
    • Спецификация контроллеров UMC
    • Настройка контроллера UMC C2
    • Настройка контроллера UMC C3
    • Настройка контроллера HDL IntelliCenter 2 (UMC C4)
    Модули расширения
    • I-PX-RS1
    • I-PX-RS4
    • I-PX-IR3
    KNX
    • KNX Home Server
    • KNX IP Interface
    Панели управления
    • iRidium Panel 7
    • Touch Panel P3
    • Touch Panel P6
    • Touch Panel P8
    • Touch Panel P10
    • Tabletop Touch Panel 10
    • AV Remote Control
    ОБОРУДОВАНИЕ BUS77
    • Каталог Bus77 Pro
    • Каталог Bus77 Lite
    • Differences
Сайт iRidium mobile
Содержание
    Инструменты‌
    • Сведения о странице
    • Постоянная ссылка
    • Версия для печати
    • Спецстраницы
    • Связанные правки
    • Ссылки сюда
    Login / Create Account
    Материал из for iRidium developers
    Перейти к: навигация, поиск
    Эта страница является переводом страницы IRidium studio 2019 Schemes. Перевод выполнен на 100%.

  • iRidium studio 2019
  • Блок-схемы
  • Содержание

    • 1 Блок-схемы
    • 2 1. Template (шаблон схемы)
    • 3 2. Schemes (схемы)
    • 4 3. Рабочая область
      • 4.1 Создание блока, создание связей между блоками.
        • 4.1.1 Создание блока
        • 4.1.2 Создание связей между блоками
      • 4.2 Масштаб рабочей области
    • 5 4. Каталог логических блоков
      • 5.1 Math.Арифметические функции.
        • 5.1.1 Add (+). Сложение
        • 5.1.2 Sub(-). Вычитание
        • 5.1.3 Mul(*). Умножение
        • 5.1.4 Div(/). Деление
        • 5.1.5 Mod (%). Деление с остатком
        • 5.1.6 Abs. Абсолютное значение входа
      • 5.2 Bitwise operation. Битовые логические операции.
        • 5.2.1 And. Побитовое «И»
        • 5.2.2 Or. Побитовое «ИЛИ»
        • 5.2.3 Xor. Побитовое исключающее «ИЛИ»
        • 5.2.4 Not. Побитовое «НЕ»
      • 5.3 Bitwise operation. Битовые операции.
        • 5.3.1 LSHIFT. Битовый сдвиг влево
        • 5.3.2 RSHIFT. Битовый сдвиг вправо
      • 5.4 Input. Входящие данные.
        • 5.4.1 Value
        • 5.4.2 From Tag
      • 5.5 Output. Исходящие данные.
        • 5.5.1 To Log
        • 5.5.2 To Tag
        • 5.5.3 To Channel
      • 5.6 Conditions. Операторы сравнения.
        • 5.6.1 X>Y. Больше
        • 5.6.2 X>=Y. Больше или равно
        • 5.6.3 X<Y. Меньше
        • 5.6.4 X<=Y. Меньше или равно
        • 5.6.5 X == Y. Равно
        • 5.6.6 X != Y. Не равно
      • 5.7 Other. Другие.
        • 5.7.1 Duplicate
        • 5.7.2 Caption
        • 5.7.3 Timer
        • 5.7.4 Clamp
        • 5.7.5 Map
        • 5.7.6 To Bool
        • 5.7.7 To Int
        • 5.7.8 To Float
        • 5.7.9 Color to RGBA
        • 5.7.10 RGBA to сolor
        • 5.7.11 Delta
        • 5.7.12 Treshold switch
        • 5.7.13 Inc/Dec
      • 5.8 Триггеры
        • 5.8.1 RS - триггер
        • 5.8.2 D - триггер
        • 5.8.3 T - триггер
      • 5.9 Регуляторы
        • 5.9.1 P-регулятор
        • 5.9.2 PI-регулятор
        • 5.9.3 PD-регулятор
        • 5.9.4 PID-регулятор
      • 5.10 Statistics. Статистика
        • 5.10.1 Max
        • 5.10.2 Min
        • 5.10.3 Max Statistics
        • 5.10.4 Min Statistics
        • 5.10.5 Avg Statistics
    • 6 5. Список блоков Inputs/Outputs
    • 7 6. Панель отладки схемы
      • 7.1 Кнопки отладки схемы.
    • 8 7. Лог последнего запуска схемы. Исходный код сформированный на основе блочной логики
      • 8.1 Лог запуска схемы
      • 8.2 Исходные код сформированный на основе блочной логики
    • 9 8. Свойства схемы
    • 10 9. Свойства блока

    Блок-схемы

    Программирование логики работы iRidium server при помощи логических блоков
    Работает только на iRidium server

    Редактор схем предназначен для создания программ на языке FBD (функциональных диаграмм) для ПЛК. FBD - один из языков стандарта IEC 61131-3. Наша реализация совместима со стандартом не полностью(будет оптимизироваться), но базовые его требования реализованы.

    Схема - это набор элементов, значений их параметров и соединений (цепей) между элементами.

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

    Связь блоков - линия, соединяющая выход одного блока с входом другого. Передает значение между блоками и показывает последовательность выполнения схемы.


    Для реализации блочной логики в iRidium studio разработана панель SCHEMES, она позволяет настроить блочную логику для iRidium server.

    Назначение инструментов панели:

    Blocks main.png

    1. List schemes

    2. Instances

    3. Рабочая область, в которой вы можете разместить, настроить блоки и соединить их связями;

    4. Каталог логических блоков, доступных для использования в схеме;

    5. Список блоков Inputs/Outputs;

    6. Панель отладки схемы;

    7. Лог последнего запуска схемы. Исходный код сформированный на основе блочной логики;

    8. Свойства схемы;

    9. Свойства блока.


    1. Template (шаблон схемы)

    Template (шаблон схемы) - позволяет создать и многократно использовать схему. Схемы, созданные внутри одного шаблона, отличаются только входами и выходами. Редактирование шаблона (логической составляющей, количества входов и выходов) затрагивает каждую схему, созданную на базе этого шаблона. Изменение переменной, к которой обращается вход или выход схемы, затрагивает только эту схему, сохраняя входы и выходы других схем уникальными.

    Добавить схемы можно с помощью кнопки +.

    Щелкнув правой кнопкой по листу схемы будет доступно меню с пунктами:

    Rename - переименовать шаблон;
    Delete - удалить шаблон;
    Clone - клонирование шаблона.

    2. Schemes (схемы)

    Схемы - копии первичного шаблона, в которых доступны изменения пути каналов и фидебков(вкладка Inputs/Outputs). Одна и та же схема может быть использована, как стандартный сценарий логики разных команд и фидбеков.

    Изменение блоков отвечающих за логику приведет к изменению других блоков в шаблоне.

    Каждая схема содержит свой список блоков Inputs/Outputs(IO). IO - уникальные переменные, к которым обращается схема. Добавление схемы можно осуществить двумя способами:
    1. Add Blocks clone plus.png- нажав "+" произойдет копирование блоков, связей. Путь к каналу/тегу/токену не копируется.

    Block InstCopy.png

    2. CloneBlocks clone.png - полное копирование схемы. Путь к каналу/тегу/токену копируется.

    Block InstClone.png

    3. Рабочая область

    Рабочая область - представляет собой пространство, в рамках которого вы можете разместить логически блоки и соединить их связями. Каждый вход/выход блока может быть соединен только одной связью.

    Наилучшим использованием будет разделение крупной схемы на несколько отдельных схем, таким образом вам будет проще проверить её работоспособность. Эффективно разделить схему можно с помощью токенов, в которые вы будете записывать конечные значения после выполнения более простых схем.

    Создание блока, создание связей между блоками.

    Создание блока

    Блок в рабочее поле добавляется методом "Drag&Drop", достаточно перетащить нужный элемент в рабочую область и появится блок с соответствующим цветом и характеристиками.

    В качестве логических блоков могут выступать:

    • Стандартные логические блоки;
    • Команды и фидбеки;
    • Токены (системные, пользовательские).

    Создание связей между блоками

    Для работы схемы, блоки внутри соединяются связями. Нарисовать связь можно следующие образом:

    1. Установить курсор на необходимый вход/выход блока.

    2. Зажмите левую кнопку мыши на нужном входе/выходе и начните передвижение. Начальный вход/выход изменит свою индикацию и получит красный цвет. Доступные входы/выходы других блоков сменят свой цвет на зеленый

    Blocks Lines2.png
    Blocks Lines3.png

    3. Передвигайте курсор с зажатой левой кнопкой мыши до необходимого входа/выхода другого блока. Вслед за курсором будет вырисовываться линия связи.

    Blocks Lines.png

    4. Отпустите левую кнопку мыши на конечном входе/выходе и два блока соединятся связью.

    Blocks Lines4.png

    Масштаб рабочей области

    Масштаб, кнопки управления масштабом. Увеличивает, или уменьшает масштаб рабочей области.

    1. Поле с информацией о текущем масштабе(в процентах). Можно выбрать из числа предложенных вариантов, щелкнув ЛКМ по стрелочке вниз.


    2. Кнопки масштаба:

    • Zoom in - увеличивает текущий масштаб с шагом в 10%;
    • Zoom out - уменьшает текущий масштаб с шагом в 10%.
    Blocks workspace.png


    3. Координаты курсора по оси X и Y.

    Blocks zoom.png

    4. Каталог логических блоков

    • Math. Арифметические функции:
      • Add (+). Сложение;
      • Sub (-). Вычитание;
      • Mul (*). Умножение;
      • Div (/). Деление;
      • Mod (%). Остаток от деления;
      • Abs - абсолютное значение

    Bitwise logic operation. Битовые логические операции:

      • And. Побитовое логическое "И";
      • Or. Побитовое логическое "ИЛИ";
      • Xor. Побитовое логическое "Исключающее ИЛИ";
      • Not. Побитовое логическое "НЕ".

    Bitwise operation. Битовые операции:

      • LSHIFT - битовые сдвиг вправо;
      • RSHIFT - битовый сдвиг влево;
    • ByteToBits(soon);
    • BitsToByte(soon).
    • Input. Входящие данные:
      • Value. Константа: знаковое число с плавающей запятой (float 64-bit);
      • Get Tag. Взять значение из тега.
    • Output. Исходящие данные:
      • To Log. Записать значение в лог;
      • Set Value. Установить значение.
    • Conditions. Операторы сравнения:
      • X > Y. Больше;
      • X >= Y. Больше либо равно;
      • X < Y. Меньше;
      • X <= Y. Меньше либо равно;
      • X == Y. Равно;
      • X != Y. Не равно.
    • Other. Другие:
      • Dublicate.Разветвитель – дублирует входное значение на два выхода;
      • Caption. Комментарий;
      • Timer. Таймер;
      • Clamp;
      • Map;
      • To Bool;
      • To Int;
      • To Float;
      • Color to RGBA;
      • RGBA to Color;
      • Delta;
      • Treshold switch.
    • Триггеры:
      • RS - триггер;
      • D - триггер;
      • T - триггер(скоро).
    • Регуляторы:
      • P;
      • PI;
      • PD;
      • PID.
    • Statistics. Статистика:
      • Max;
      • Min;
      • Max Statistics;
      • Min Statistics;
      • Avg Statistics;
      • Inc/Dec.

    Math.Арифметические функции.

    • Add (+) - сложение.
    • Sub (-) - вычитание.
    • Mul (*) - умножение.
    • Div (/) - деление.
    • Mod (%) - остаток от деления.
    • Abs - абсолютное значение входа.

    Add (+). Сложение

    Add(+) Сложение - арифметическое действие, посредством которого из двух или нескольких чисел получают новое, содержащее столько единиц, сколько было во всех данных числах вместе. Имеет два входных канала и один канал выхода.

    Blocks add.png


    Sub(-). Вычитание

    Sub(-).Вычитание - арифметическое действие, посредством которого от одного числа отнимается другое число.Имеет два входных канала и один канал выхода.

    Blocks sub.png

    Mul(*). Умножение

    Mul(*).Умножение - арифметическое действие повторения данного числа слагаемым столько раз, сколько единиц находится в другом данном числе, множителе.Имеет два входных канала и один канал выхода.

    Blocks mul.png

    Div(/). Деление

    Div(/) Деление - арифметическое действие, по к-рому узнаётся, сколько раз одно число содержится в другом. Имеет два входных канала и один канал выхода. Умножение и деление поможет вам с переводом из различных систем исчисления.

    Blocks div.png

    Mod (%). Деление с остатком

    Mod (%) Деление с остатком - деление одного натурального числа на другое, при котором остаток не равен нулю. При делении целых чисел Имеет два входных канала и один канал выхода.

    Blocks mod.png

    Abs. Абсолютное значение входа

    Abs Блок выводит абсолютное значение входа. Используется для исключения отрицательного значения.

    Block Abs.png

    Вход:

    • In - входящее значение.


    Выход:

    • Out - абсолютное значение входа.

    Bitwise operation. Битовые логические операции.

    • And - Побитовое логическое "И".
    • Or - Побитовое "ИЛИ".
    • Xor - Побитовое логическое исключающее "ИЛИ".
    • Not - Побитовое логическое "НЕ".
    • RSHIFT - битовый сдвиг влево.
    • LSHIFT - битовый сдвиг вправо.

    And. Побитовое «И»

    And. Побитовое «И» — это бинарная операция, действие которой эквивалентно применению логического «И» к каждой паре битов, которые стоят на одинаковых позициях в двоичных представлениях значений входных сигналов. Другими словами, если оба соответствующих бита значений входных сигналов равны 1, результирующий двоичный разряд равен 1; если же хотя бы один бит из пары равен 0, результирующий двоичный разряд равен 0. Имеет два входа и один выход.

    Blocks BitAnd.png
    Вход 1
    Вход 2
    11001010
    11100010
    Выход 11000010

    Or. Побитовое «ИЛИ»

    Or. Побитовое «ИЛИ» — это бинарная операция, действие которой эквивалентно применению логического «ИЛИ» к каждой паре битов, которые стоят на одинаковых позициях в двоичных представлениях значений входных сигналов. Другими словами, если оба соответствующих бита значений входных сигналов равны 0, двоичный разряд результата равен 0; если же хотя бы один бит из пары равен 1, двоичный разряд результата равен 1. Имеет два входа и один выход.

    Blocks BitOr.png
    Вход 1
    Вход 2
    11001010
    11100010
    Выход 11101010

    Xor. Побитовое исключающее «ИЛИ»

    Xor. Побитовое исключающее« ИЛИ» — это бинарная операция, результат действия которой равен 1, если число складываемых единичных битов нечетно и равен 0, если чётно. Другими словами, если оба соответствующих бита значений входных сигналов равны между собой, двоичный разряд результата равен 0; в противном случае, двоичный разряд результата равен 1. Имеет два входа и один выход.

    Blocks BitXor.png
    Вход 1
    Вход 2
    11001010
    11100010
    Выход 00101000

    Not. Побитовое «НЕ»

    Not. Побитовое «НЕ» - Побитовое «НЕ» инвертирует состояние каждого бита исходной переменной. Имеет один вход и один выход.

    Blocks BitNot.png
    Вход 1 11001010
    Выход 00110101

    Bitwise operation. Битовые операции.

    • LSHIFT;
    • RSHIFT;
    • ByteToBits(скоро);
    • BitsToByte(скоро).

    LSHIFT. Битовый сдвиг влево

    LSHIFT. Битовый сдвиг влево - выполняет побитовый сдвиг вправо.

    Blocks LSHIFT.png

    Подробное описание смотреть ниже в RSHIFT. (Аналогичен RSHIFT, разница лишь в направлении сдвига).

    RSHIFT. Битовый сдвиг вправо

    RSHIFT. Битовый сдвиг вправо - выполняет побитовый сдвиг вправо.

    Blocks RSHIFT.png

    Входы:

    • Value - 32-битное без знаковое(это важно) - входное значение
    • Count - число бит, на которое необходимо осуществить сдвиг.


    Выходы:

    • Out - результат побитового сдвига.


    Свойства блока:

    • Cyclic - включается цикличность сдвига(False/True).


    Логика: Если сдвиг циклический(Ciclic = 1), то последние Count бит станут первыми. Пример: 15 (00000000 00000000 0000000 000011112) RHIFT 2 = 3221225475 (11000000 00000000 00000000 000000112).

    Если сдвиг нециклический(Ciclic = 0), то значение сдвинется вправо, а первые Count бит станут нулями. (Поведение аналогично оператору >> в языках Си, С++, C# и т.п.).


    Input. Входящие данные.

    • Value.
    • From Tag.

    Value

    Value - Константа: знаковое число с плавающей запятой (float 64-bit). Имеет один выход, который присоединяется к вычислительному блоку, или блоку выхода.

    Blocks value.png

    Имеет свойства:

    • Name - имя блока.
    • Type - тип блока(Value).
    • Value - числовое значение. Максимальное количество цифр до запятой 9, после запятой 2.

    From Tag

    From Tag - Элемент позволяющий брать значение из фидбеков, токенов для дальнейшей работы в схеме.

    Blocks fromTag.png

    Имеет свойства:

    • Name - имя блока.
    • Type - From Tag.
    • Value - Отображает адрес фидбека.

    Output. Исходящие данные.

    • To Log.
    • To Tag.
    • To Channel.

    To Log

    To Log - Записать значение в лог, отображается в окне последнего запуска схемы(№9).

    Blocks ToLog.png

    To Tag

    To Tag - Записать в тег драйвера, виртуальный канал, токен.

    Blocks ToTag.png

    To Channel

    To Channel - Записать в команду драйвера, виртуальный канал, токен.

    Blocks ToChannel.png

    Conditions. Операторы сравнения.

    Возвращают false/true, как результат сравнения.

    • X > Y. Больше.
    • X >= Y. Больше либо равно.
    • X < Y. Меньше.
    • X <= Y. Меньше либо равно.
    • X == Y. Равно.
    • X != Y. Не равно.

    X>Y. Больше

    X>Y. Больше - Оператор выдает на выходе True, если значение X больше Y. False в противном случае.

    Blocks X1.png

    X>=Y. Больше или равно

    X>=Y. Больше или равно - Оператор выдает на выходе True, если значение X больше, или равно Y. False в противном случае.

    Blocks X2.png

    X<Y. Меньше

    X<Y. Меньше - Оператор выдает на выходе True, если значение X меньше Y. False в противном случае.

    Blocks X3.png

    X<=Y. Меньше или равно

    X<=Y. Меньше или равно - Оператор выдает на выходе True, если значение X меньше, или равно Y.False в противном случае.

    Blocks X4.png

    X == Y. Равно

    X == Y. Равно - Оператор сравнивает значение X и Y, True в случае их равенства. False во всех остальных случаях.

    Blocks X5.png

    X != Y. Не равно

    X != Y. Не равно - Оператор сравнивает значение X и Y и выдает False в случае равенства. True во всех остальных случаях.

    Blocks X6.png

    Other. Другие.

    • Duplicate;
    • Caption;
    • Timer;
      • Clamp;
      • Map;
      • To Bool;
      • To Int;
      • To Float;
      • Color to RGBA;
      • RGBA to Color;
      • Delta;
      • Treshold switch;
      • Inc/Dec.

    Duplicate

    Duplicate – дублирует входящее значение. Имеет два выхода дублирующие входящее значение.

    Blocks Duplicate.png

    Caption

    Caption - выполняет функционал блока с сообщениями, можно разместить в пределах рабочего поля. Так же может служить для заметок внутри схемы.

    Blocks Caption.png

    Имеет свойства:

    • Name - имя блока.
    • Type - From Tag.
    • Value - Значение для отображения на блоке.

    Timer

    Timer - элемент передает значение входящего сигнала, до того момента пока на входе “Switch” не появится 0. Как только на входе появляется сигнал больше 0, блок начинает работу и передает значение "In 1" на выход, повторяя его с заданным интервалом.

    Blocks Timer.png

    Имеет свойства:

    • Name - имя блока.
    • Type - From Tag.
    • Value - Интервал через который повторно отсылается входящее значение(мс).

    Clamp

    Clamp - ограничивает значение value диапазоном min >= value <= max.

    Block Clamp.png

    Входы:

    • Min - минимальное значение диапазона;
    • Max - максимальное значение диапазона;
    • Value - входное значение.


    Выходы:

    • Out - выходное значение.


    Логика:

    • Если значение больше максимального, то возвращается максимальное.
    • Если значение меньше минимального, то возвращается минимальное.
    • Формула: Out = max(min(Value, Max), Min)

    Map

    Map - преобразует значение из одного диапазона в другой.

    Block Map.png

    Входы:

    • Val - входное значение.


    Выходы:

    • Out - выход.


    Свойства блока:

    • From min - минимальное значение исходного диапазона$
    • From max - максимальное значение исходного диапазона
    • To min - минимальное значение нового диапазона
    • To max - максимальное значение нового диапазона
    Block Map1.png


    Логика:Формула преобразования: Out = ([Val] - [From min]) * ([To max] -[To min]) / ([From max] -[From min]) +[To min];

    To Bool

    To Bool - Автоматическое преобразование к Bool.

    Block Bool.png

    Входы:

    • In - входное значение.


    Выходы:

    • Out - выход. Преобразование к Bool.

    To Int

    To Int - Автоматическое преобразование к Int.

    Block Int.png

    Входы:

    • In - входное значение.


    Выходы:

    • Out - выход. Преобразование к Int.

    To Float

    To Float - Автоматическое преобразование к Float.

    Block Float.png

    Входы:

    • In - входное значение.


    Выходы:

    • Out - выход. Преобразование к Float.

    Color to RGBA

    Color to RGBA - преобразование, обратное RGBA to Color, из формата 0xRRGGBBAA в отдельные значения Red, Green, Blue, Alpha.

    Block RtC.png

    Входы:

    • RgbaColor - 32-битное беззнаковое целое в формате 0xRRGGBBAA.

    В случае, если было передано 24 бита, то значение Alpha будет 0xFF, то есть получится 32-битное значение 0xRRGGBBFF


    Выходы: (значения от 0 до 255)

    • Red - красный канал;
    • Green - зеленый канал;
    • Blue - синий канал;
    • Alpha - альфа-канал.

    RGBA to сolor

    RGBA to Color - блок, выполняющий преобразование из компонентов цвета(Red, Green, Blue, Alpha) в 32-битное беззнаковое целое RgbaColor.

    Block CtR.png

    Входы: (значения на каждом входе варьируются от 0 до 255)

    • Red - красный канал;
    • Green - зеленый канал;
    • Blue - синий канал;
    • Alpha - альфа-канал.


    Выходы:

    • RgbaColor - 32-битное беззнаковое целое в формате 0xRRGGBBAA.

    Delta

    Delta - дельта входящего значения.

    Block Delta.png

    Входы:

    • In - входное значение.


    Выходы:

    • Value - выходное значение;
    • RisingEdge - флаг (0/1), 0 - значение не увеличилось, 1 - значение увеличилось;
    • FallingRange - флаг (0/1), 0 - значение не уменьшилось, 1 - значение уменьшилось.


    Свойства:

    • Delta - дельта.


    Логика: Входящее значение сравнивается с предыдущим, хранимым в памяти блока значением, если разность входящего и предыдущего значения по модулю превосходит Delta - значение передаётся на выход Value, если нет - на выход подаётся предыдущее сохранённое в памяти значение.

    Treshold switch

    Treshold switch - пороговый переключатель.

    Block Treshhold.png

    Входы:

    • In - входное значение;
    • Threshold - пороговое значение;
    • Range - диапазон.


    Выходы:

    • Out - выходное значение boolean (0/1).


    Логика: Если значение In отклоняется от значения Threshold по модулю не более чем на значение Range, то возвращает 1, иначе возвращает 0.

    Формула: Out = | In - Threshold | <= Range

    Inc/Dec

    Inc/Dec - увеличивает(если Step > 0), или уменьшает(если Step < 0) входное значение Value на значение шага Step.

    Block ID.png

    Входы:

    • Value - входное значение;
    • Control - флаг(0/1) - не увеличивать/увеличивать.


    Выходы:

    • Out - выходное значение.


    Свойства:

    • Step - шаг


    Логика:

    • Если Control = 0, возвращает на выход Out значение входа Value;
    • Если Control = 1, возвращает Value + Step.

    Триггеры

    • RS - триггер;
    • D - триггер;
    • T - триггер;


    Триггер – это устройство, имеющее два устойчивых состояния («0» или «1») и способное под действием входного сигнала скачком переходить из одного устойчивого состояния в другое. Триггер – это простейший автомат с памятью и способностью хранить 1 бит информации («0» или «1»).

    RS - триггер

    RS - триггер - Отличительной особенностью триггера как функционального устройства является свойство запоминания двоичной информации. Под памятью триггера подразумевают способность оставаться в одном из двух состояний и после прекращения действия переключающего сигнала. Приняв одно из состояний за «1», а другое за «0», можно считать, что триггер хранит (помнит) один разряд числа, записанного в двоичном коде.

    Block RStrigger.png

    Входы:

    • R - reset (сбросить);
    • S - set (установить).


    Выходы:

    • Q - прямой выход;
    • |Q - инверсный.


    Логика: Логическое устройство будет находиться в устойчивом положении в том случае, если на С=0. В этом случае импульсы, подающиеся на информационный D-вход, никак не влияют на прибор, и выходной импульс определяется записанным ранее значением, хранящимся в памяти. Если С=1, то выходной сигнал будет зависеть от того, какой сигнал был подан на информационный D-вход. Если D=1, то на выходе будет 1, если D=0, то на выходе будет 0.


    Таблица истинности.

    Block RStrigger1.png

    D - триггер

    D - триггер - получил название от английского слова «delay» - задержка, которая реализуется подачей сигналов на вход синхронизации. В RS-триггере было два входных сигнала, но для передачи двоичного кода достаточно одного входа с разными уровнями напряжения: высокий (1) и низкий (0). На два входа нельзя было подавать единицу одновременно, поэтому в D триггере эти входы объединены с помощью инвертора (рисунок 1 а), что исключает возможность возникновения запрещенного состояния.

    Block Dtrigger.png

    Входы:

    • D - вход (0/1)
    • C - вход синхронизации, флаг(0/1)


    Выходы:

    • Q - прямой выход;


    Логика: Логическое устройство будет находиться в устойчивом положении в том случае, если на С=0. В этом случае импульсы, подающиеся на информационный D-вход, никак не влияют на прибор, и выходной импульс определяется записанным ранее значением, хранящимся в памяти. Если С=1, то выходной сигнал будет зависеть от того, какой сигнал был подан на информационный D-вход. Если D=1, то на выходе будет 1, если D=0, то на выходе будет 0.


    Таблица истинности.

    Block Dtrigger1.png

    T - триггер

    Скоро появится. T - триггер - Реализует логику асинхронного T-триггера. Асинхронный Т-триггер не имеет входа разрешения счёта — Т и переключается по каждому тактовому импульсу на входе С.

    [[Файл:]]

    Входы:

    • In - boolean (0/1) вход.


    Выходы:

    • Out - boolean (0/1) выход.


    Логика:Хранит значение(0/1) в памяти и подаёт его на выход при In = 0. При In = 1, инвертирует значение в памяти и подаёт это значение на выход Out.


    Таблица истинности.

    Block Ttrigger1.png

    Регуляторы

      • P;
      • PI;
      • PD;
      • PID.

    P-регулятор

    P-регулятор - реализует логику P-контроллера.

    Block P-reg.png

    Входы:

    • ACT - значение регулируемой величины;
    • SET - значение уставки;
    • SUP - зона нечувствительности;
    • OFS - смещение;
    • MAN_IN - сигнал ручного ввода;
    • MAN - режим управления 1/0 (ручной/автоматический);
    • KP - коэффициент усиления П-составляющей;
    • LL - нижний предел управляющего сигнала;
    • LH - верхний предел управляющего сигнала.


    Выходы:

    • Y - величина управляющего воздействия;
    • DIFF - сигнал рассогласования;
    • LIM - флаг 1/0 «достигнут предел для Y».


    Логика: См. подробнее стр. 550.

    PI-регулятор

    PI-контроллер - реализует логику PI-контроллера.

    Block PIreg.png

    Входы:

    • ACT - значение регулируемой величины;
    • SET - значение уставки;
    • SUP - зона нечувствительности;
    • OFS - смещение;
    • MAN_IN - сигнал ручного ввода;
    • MAN - режим управления 1/0 (ручной/автоматический);
    • RST - сигнал обнуления И-составляющей 1/0;
    • KP - коэффициент усиления П-составляющей;
    • KI - коэффициент усиления И-составляющей;
    • LL - нижний предел управляющего сигнала;
    • LH - верхний предел управляющего сигнала;
    • dT - delta time - время между измерениями (необходима для интегрирования).


    Выходы:

    • Y - величина управляющего воздействия;
    • DIFF - сигнал рассогласования;
    • LIM - флаг 1/0 «достигнут предел для Y».


    Логика: См. подробнее стр. 550.

    PD-регулятор

    PD-регулятор - реализует логику PD-контроллера.

    Block PDreg.png

    Входы:

    • ACT - значение регулируемой величины;
    • SET - значение уставки;
    • SUP - зона нечувствительности;
    • OFS - смещение;
    • MAN_IN - сигнал ручного ввода;
    • MAN - режим управления 1/0 (ручной/автоматический);
    • KP - коэффициент усиления П-составляющей;
    • KD - коэффициент усиления Д-составляющей;
    • LL - нижний предел управляющего сигнала;
    • LH - верхний предел управляющего сигнала;
    • dT - delta time - время между измерениями (необходима для интегрирования).


    Выходы:

    • Y - величина управляющего воздействия;
    • DIFF - сигнал рассогласования;
    • LIM - флаг 1/0 «достигнут предел для Y».


    Логика: См. подробнее стр. 550.

    PID-регулятор

    PID-регулятор - реализует логику PID-контроллера.

    Block PIDreg.png

    Входы:

    • ACT - значение регулируемой величины;
    • SET - значение уставки;
    • SUP - зона нечувствительности;
    • OFS - смещение;
    • MAN_IN - сигнал ручного ввода;
    • MAN - режим управления 1/0 (ручной/автоматический);
    • RST - сигнал обнуления И-составляющей 1/0;
    • TN - постоянная времени интегрирования;
    • TV - постоянная времени дифференцирования;
    • KD - коэффициент усиления Д-составляющей;
    • LL - нижний предел управляющего сигнала;
    • LH - верхний предел управляющего сигнала;
    • dT - delta time - время между измерениями (необходима для интегрирования).


    Выходы:

    • Y - величина управляющего воздействия;
    • DIFF - сигнал рассогласования;
    • LIM - флаг 1/0 «достигнут предел для Y».


    Логика: См. подробнее стр. 550.

    Statistics. Статистика

    • Max;
    • Min;
    • Max Statistics;
    • Min Statistics;
    • Avg Statistics.

    Max

    Max - вычисление большего из двух

    Block Max.png

    Входы:

    • In1 - вход первого значения;
    • In2 - вход второго значения.


    Выходы:

    • Out - максимальное значение из двух входящих.

    Min

    Min - вычисление меньшего из двух.

    Block Min.png

    Входы:

    • In1 - вход первого значения;
    • In2 - вход второго значения.


    Выходы:

    • Out - минимальное значение из двух входящих.

    Max Statistics

    Max Statistics - ведёт статистику максимального значения.

    Block Maxstat.png

    Входы:

    • Value - текущее значение
    • Reset - флаг (0/1), где 1 - сброс максимального значения в значение со входа Value


    Выходы:

    • Max - максимальное значение из всех ранее переданных (при Reset = 0). Значение со входа Value (при Reset = 1).


    Логика: Работает схожим образом с блоком MinStatistics. У данного блока есть память, в которой хранится текущее максимальное значение. Если Reset = 1, то блок находится в режиме сброса, это значит что на выход будет передано значение со входа. Если Reset = 0, то блок находится в режиме сбора статистики, это значит, что на выход будет передано максимальное из двух значений: из памяти и со входа. Память блока работает так же как и у блока MinStatistics: она хранит значение, которое было передано на выход в прошлый раз. При первом использовании блока (когда в памяти ещё нет предыдущего значения), на выход будет передано значение со входа Value и оно же помещается в память блока.

    Min Statistics

    Min Statistics - ведёт статистику минимального значения.

    Block Minstat.png

    Входы:

    • Value - текущее значение
    • Reset - флаг (0/1), где 1 - сброс минимального значения в значение Value


    Выходы:

    • Min - минимальное значение из всех ранее переданных (при Reset = 0). Значение со входа Value (при Reset = 1).


    Логика: У данного блока есть память, в которой хранится текущее минимальное значение. Если Reset = 1, то блок находится в режиме сброса, это значит что на выход будет передано значение со входа. Если Reset = 0, то блок находится в режиме сбора статистики, это значит, что на выход будет передано минимальное из двух значений: из памяти и со входа. Память блока работает очень просто: она хранит значение, которое было передано на выход в прошлый раз. При первом использовании блока (когда в памяти ещё нет предыдущего значения), на выход будет передано значение со входа Value и оно же помещается в память блока.

    Avg Statistics

    Avg Statistics - ведёт статистику среднего значения.

    Block Avgstat.png

    Входы:

    • Value - текущее значение
    • Reset - флаг (0/1), где 1 - сброс среднего значения в значение Value


    Выходы:

    • Avg - Максимальное значение из всех ранее переданных (при Reset = 0). Значение со входа Value (при Reset = 1).


    Логика: Работает схожим образом с блоками MinStatistics и MaxStatistics. У данного блока есть память, в которой хранится текущее среднее значение. Если Reset = 1, то блок находится в режиме сброса, это значит что на выход будет передано значение со входа. Если Reset = 0, то блок находится в режиме сбора статистики, это значит, что на выход будет передано среднее из двух значений: из памяти и со входа Value. Память блока работает так же как и у блока MinStatistics и MaxStatistics: она хранит значение, которое было передано на выход в прошлый раз. При первом использовании блока (когда в памяти ещё нет предыдущего значения), на выход будет передано значение со входа Value и оно же помещается в память блока.

    5. Список блоков Inputs/Outputs

    Список содержит в себе блоки, которые используются для чтения и записи внутри каждой схемы. Вычислительные блоки в этом списке не отображаются. Каждому элементу можно изменить назначение, щелкнув два раза правкой кнопкой мыши, и выбрать необходимый канал, тег, токен. При наведении на элемент в списке появится всплывающая подсказка с полным наименованием тега\команды.

    Block ListBlocks.png

    6. Панель отладки схемы

    Кнопки отладки схемы.

    Кнопки предназначены только для отладки текущей схемы. Можно проверить работу схему не запуская проект.

    Launch - запуск схемы и проверка работоспособности. Наличие ошибок, или результаты логирования можно увидеть в поле лога.

    Clear log - удаляет записи из поля лога.

    Blocks debug.png

    7. Лог последнего запуска схемы. Исходный код сформированный на основе блочной логики

    Лог запуска схемы

    Отображает информацию с результатами работы вычислительных блоков, ошибки работы схемы. Чтобы информация вычислений отображалась в этом поле, присоедините блок "To Log" к выходу вычислительного блока.

    Blocks Log.png

    Исходные код сформированный на основе блочной логики

    Выбрав вкладку "Code", можно переместиться в область с отображением кода сформированного на базе выстроенной блочной схемы. Исходный код, сформированный на основе блочной логики. Носит информативный характер.

    Blocks code.png

    8. Свойства схемы

    • Name,
    • Active:
      • True,
      • False.
    • Run Mode:
      • On Tag Change,
      • By Interval.


    Name - Наименование схемы.

    Active - Состояние схемы. True - схема работает, происходит вычисление внутри схемы. False - схема неактивна, вычисления не производятся.

    Run Mode - Режим запуска схемы, имеет следующие параметры:

    On Tag Change - запуск схемы при изменении значений в теге(токене);

    By Interval - запуск схемы с заданным интервалом. Добавляет в свойства схемы параметр Interval(время указывается в милисекундах). Для запуска схемы разово при старте сервера, установите значение 0.

    Block SchemeProp.png

    9. Свойства блока

    Свойства блока отображают рабочие параметры блока. Имеет два обязательных параметра Name и Type. В зависимости от типа блока может иметь параметр Value.

    • Name.
    • Type.
    • Value.


    Name - Наименование блока.

    Type - тип блока, который выбран в схеме. Можно изменить тип вручную из выпадающего меню, тип блока изменится и это отобразится на схеме. Если ваш блок имел выход/вход связанный с другим блоком, и вы изменили его тип на противоположный, то связь с последующим блоком исчезнет.

    • Value - В зависимости от типа блока Value можно задавать в числовом значении, либо указывать путь к тегу, каналу, токену.
    Blocks BlockProp.png
    Источник — «https://dev.iridi.com/index.php?title=IRidium_studio_2019_Schemes/ru&oldid=88450»
    О нас
    Компания
    Команда
    История
    Философия
    Награды
    Партнерство
    Наши партнеры
    Партнерские программы
    Подать заявку на партнерство
    Продукты
    iRidium pro
    iRidium lite
    iRidium gate
    iRidium server
    Загрузки
    iRidium pro
    iRidium lite
    Другие версии
    Маркетинговые материалы
    Поддержка
    Онлайн курсы/Видео
    Рекомендуемое оборудование
    Другие версии
    iRidium pro
    Документация
    FAQ
    Форум
    iRidium lite
    Документация
    Форум
    Проекты
    Типовые проекты
    Умные здания
    Умные дома
    Специальные решения
    Найти дилера
    Новости
    Youtube
    Twitter
    VK
    Logo
    contact@iridi.com
    +7 (499) 322-73-29

    Политика конфиденциальности