Logic

Материал из TDG Electronics
Перейти к навигации Перейти к поиску

Система логики: описание функций

Типы данных

Система оперирует двумя типами данных:

  • Логический (bool) — принимает значения 0 (ложь) или 1 (истина).
  • Вещественный (float) — числа с плавающей запятой (включая целые).

Работа с осями/таблицами

Добавление осей

Оси задаются списками значений (минимум 2, максимум 32 точек). Пример:

AXIS.1 = 4.95|4.906|4.831|4.708|4.520|4.25|3.893|3.456|2.967|2.461|2.005|1.598|1.240|0.967|0.762|0.348;
AXIS.2 = -40| -30| -20| -10| 0| 10| 20| 30| 40| 50| 60| 70| 80| 90| 100| 130;
AXIS.1 = 4.95|4.906|4.831|4.708|4.520|4.25|3.893|3.456|2.967|2.461|2.005|1.598|1.240|0.967|0.762|0.348; AXIS.2 = -40| -30| -20| -10| 0| 10| 20| 30| 40| 50| 60| 70| 80| 90| 100| 130;


Преобразование данных

Функция CONVERT использует оси для преобразования значений. Пример:

CONVERT.1 = INPUT:ADC.1|AXIS_X:1|AXIS_Y:2; // Преобразование напряжения в температуру
  • INPUT — входной сигнал.
  • AXIS_X, AXIS_Y — номера осей (должны иметь одинаковое количество точек).

Логические функции

Сравнение

COMPARE.1 = CONVERT.1>100|0; // Сравнение с округлением до 0 знаков

Доступные операторы: >, <, =.

Логические операции

  • И: AND.1 = TIM.1|COMPARE.1; (до 10 входов).
  • ИЛИ: OR.1 = TIM.1|COMPARE.1; (до 10 входов).
  • Инверсия: NOT.1 = AND.1;.

Таймер

Настройка таймера:

TIM.1 = HI:1000|LO:500|ENABLE:DI.1; // Импульсы 1000 мс (1) и 500 мс (0)
  • ENABLE — сигнал активации.
  • HI — время в состоянии 1 (мс).
  • LO — время в состоянии 0 (мс).

Особые режимы:

  • HI:R или LO:R — перезапуск при изменении входа.
  • HI:0/LO:1000 — одиночный импульс при активации.

Счетчик

Пример настройки:

COUNTER.1 = UP:DI.1|DOWN_F:DI.2|RESET_F:DI.3|DEF:0|MIN:0|MAX:2|TYPE:OVER;
  • UP, DOWN — входы для счета (активны по фронту).
  • RESET — сброс к значению DEF.
  • TYPE:
 ** LIMIT — остановка на границах.
 ** OVER — переполнение (MAX → MIN).
  • REMEMBER:1 — сохранение значения в памяти (если поддерживается).

Пики (PEAK)

Запись экстремальных значений:

PEAK.1 = INPUT:DASH_SPEED|REMEMBER:0|RESET:DI.1|RESET_VALUE:0|TYPE:MAX;
  • TYPE: MAX (максимум) или MIN (минимум).
  • RESET — сброс к RESET_VALUE.

Проверка бита

CHECK_BIT.1 = INPUT:CAN1_CHANNEL.1|BIT:0;
  • BIT — номер бита (0–31).

Примечания

  • Символ | разделяет параметры.
  • Для функций, зависящих от аппаратной реализации (например, REMEMBER), проверьте документацию устройства.