Формировщик массивов (число-массив)

Формировщик массивов (число-массив) — компонент. Предназначен для заполнения числового массива значениями.

Внешний вид компонента

Режим проектировщика Режим оператора
Формировщик массивов (число-массив) - Режим проектировщика Не имеет

Параметры:

Входные

  • Y n — новые числовые значения, которые требуется записать в массив.
  • Сброс — при подаче импульса на данный контакт происходит обнуление массива.
  • Размер — установка числа элементов в массиве.

Выходные

  • Y — сформированный числовой массив.

Настраиваемые свойства:

Общие свойства (окружение)

Частные свойства (в скобках значение, установленное по умолчанию):

  • ArrayAutoSize (true) — включение/выключение авторазмера массива:
    • true (автоматическое изменение размера включено) — при поступлении на вход элемента очередного числа, оно будет добавлено в конец массива, при это размер массива увеличится на 1. При этом значение свойства «ArraySize» значения не имеет, всегда сбрасывается в 0 и не сохраняется. При запуске проекта размер массива всегда равен 0.
    • false (автоматическое изменение размера выключено) — размер массива задан изначально свойством «ArraySize». При поступлении на вход элемента очередного числа, оно будет добавлено в конец массива, размер массива не изменится, а остальные элементы массива будут сдвинуты на 1 элемент к началу, первый элемент из массива будет исключён;
  • ArraySize (0) — установка размера массива.
  • TopLimit (1) — установка размера массива при использовании авторазмера.

Примечание: При задании свойства «ArrayAutoSize» TRUE компонент задаёт внутри себя массив определённого размера, заданного свойством «ArraySize». Каждое вновь пришедшее на вход компонента число добавляется в начало массива, а последнее в массиве число выбрасывается из массива.

Алгоритм работы компонента

Для компонента «формировщик массива число-массив» добавлено свойство «предел сверху». Свойство работает только в случае, когда выбрано свойство массива «авторазмер».

Значение свойства по умолчанию — максимально возможное число элементов.

При достижении количеством элементов этого числа, из массива удаляются старые значения, а сам массив сдвигается для заполнения новыми.

Примечание:

Вопрос. Программа не записывает данные в массив.

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

Программирование

При использовании компонента в сценарии и программируемом компоненте (скрипте) необходимо учитывать диапазоны значений подаваемых на входные ножки компонента, диапазоны значений свойств компонента, а также диапазоны значений параметров методов компонента.

Параметры:

Входные

  • Y n — новые числовые значения, которые требуется записать в массив.
  • Размер — установка числа элементов в массиве.

Настраиваемые свойства:

Общие свойства (окружение)

Частные свойства (в скобках значение, установленное по умолчанию):

  • VARIANT_BOOL ArrayAutoSize — Установка и чтение авторазмера массива:
  • true — включен авторазмер массива;
  • false — выключен авторазмер массива.
  • LONG ArraySize — установка и чтение размера массива (число).
  • LONG TopLimit — установка и чтение размера массива при использовании авторазмера (число).

Методы:

  • void ClearArray(void) — очищает массив (любое значение).
  • void AddValueToArr(FLOAT newVal) — добавляет в массив новые значения (любое значение).
  • void SetValueToIndex(LONG index, FLOAT value) — устанавливает значения по заданному индексу массива (любое значение).
  • FLOAT GetValueFromIndex(LONG index) — считывает значения по заданному индексу массива (любое число).
  • void SendArray(void) — отправляет массив (любое значение).

Пример

Проект в SCADA ZETView

Формировщик массивов (число-массив) - Пример

В этой схеме компонент Формировщик массивов (число-массив) предназначен для заполнения массива числами, которые поступают с Селектора №1. Кнопка без фиксации используется для обнуления массива. Таймер служит для подачи синхроимпульсов на График. Конвертер (числовой массив — строковый массив) нужен для преобразования типа данных в форму, совместимую с Таблицей данных (этот компонент позволяет отображать данные массива в форме таблицы). Данный компонент используется для создания различных проектов, в том числе таких как новые электронные технологии.

Результат работы проекта
Формировщик массивов (число-массив) - Результат работы проекта