Перейти к содержанию
+7 (495) 991 35 10 info@encode.one
Скачать в PDF

Описание функционала программы ПЛК

Описание основного функционала

Используемое оборудование:

  • ПЛК
  • Датчик продукта
  • Энкодер, если имеется
  • Камера
  • Моноблок с ETLv2
  • Отбраковщик

В зависимости от того, используется ли энкодер, определяется режим работы программы ПЛК: расчёт расстояний, либо расчёт временных интервалов. Это определяется переменными isUsedTimer и isUsedEncoder в рецептурной карте.

Датчик регистрирует продукт и подаёт сигнал на вход X1 (A2) ПЛК.

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

Момент подачи сигнала на камеру рассчитывается на основе установленных значений переменных в рецептурной карте: delayForTriggerCam – при работе по таймеру, lengthToTriggerCam – при работе с энкодером.

В определённый момент ПЛК подаёт сигнал на камеру с выхода Y0 (B1) длительностью в мс, определённой в переменной durationTriggerCam в рецептурных картах.

После срабатывания камеры ПЛК ожидает код от неё по TCP соединению, а так же сообщение от ETLv2 по TCP соединению. Код от камеры необходим, чтобы определить, для какого продукта пришло сообщение от ETLv2. На основе сообщения ПЛК определяет статус продукта: браковать или нет.

Если было установлено, что продукт не нужно браковать, то отбраковщик включаться не будет.

Если было установлено, что продукт нужно браковать, то сигнал с выхода Y1 (B2) будет подаваться на отбраковщик. Момент подачи сигнала определяется на основе переменных delayForDecisionMaking – при работе по таймеру, и lengthToDecisionMaikng – при работе по энкодеру. Подаваться сигнал на отбраковщик будет длительностью, определённой в переменной durationForFillPusher в мс.

Описание дополнительного функционала

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

Пропуск заданного количества срабатываний датчика продукта

Данный функционал может пригодиться, если невозможно просчитать расстояние, либо время движения продукта в начале линии. Программа начнёт записывать временную метку или позицию продукта после пропуска заданного количества срабатываний датчика продукта. Это количество задаётся в переменной countOfMissedProductSensorTriggers.

Останов линии, авария, сигнал, что программа запущена

В программе заложен функционал, отвечающий за подачу сигнала, обозначающего аварию.

Для настройки условий аварии используются следующие переменные:

  • countToAlarm – количество отбракованной продукции подряд
  • maxTimeUpperSensor и maxLengthUpperSensor – максимальное время и расстояние соответственно, при которых датчик может подавать сигнал

Если значения этих переменных равны 0, то ПЛК не будет сообщать об аварии.

За сигнал об аварии отвечает выход Y2 (B3). Так же этот выход отвечает за сигнал о том, что ПЛК работает. То есть при старте задания, по умолчанию, этот выход подаёт сигнал. При возникновении аварии сигнал гаснет.

С помощью переменной stopLineMode изменяется режим подачи сигнала с выхода Y2 (B2). При значении false, сигнал с Y2 подаётся при старте задания до момента наступления аварии. При значении true, сигнал с Y2 подаётся только при возникновении аварии.

Сигнальная колонна

Программа имеет функционал по работе с сигнальной колонной. При этом у сигнальной колонны может быть:

  • красный – подаётся в момент отбраковки продукта
  • зелёный – подаётся в момент пропуска продукта
  • звук – подаётся в момент отбраковки продукта

Для каждого типа сигнала нужно настроить соответствующие переменные в рецептурных картах:

  • isUsedRedLight, timeOfRedLight – для красного, использовать или нет, время подачи сигнала
  • isUsedGreenLight, timeOfGreenLight – для зелёного, использовать или нет, время подачи сигнала
  • isUsedBeeper, timeOfBeeper – для звука, использовать или нет, время подачи сигнала

Сортировщик

ПЛК может управлять сортировщиком на 2 положения. За это отвечает сигнал с выхода Y7 (B8). Выход включён – одно положение сортировщика, выход выключен – другое положение сортировщика.

Работа с сортировщиком может выполняться в одном из двух режимов:

  • расчёт момента подачи сигнала на основе временного интервала, либо расстояния при работе с энкодером по аналогии с подачей сигнала на камеру и отбраковщик, временная метки или позиция записываются при сработке датчика продукта
  • используется датчик продукта непосредственно у сортировщика

Если сортировщик используется, для любого режима необходимо установить значение переменной isUsedSorter в true. И указать количество продуктов на каждую сторону сортировщика в переменной countOfProductsForEachLineAfterSorter.

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

  • delayForTriggerSorter, либо lengthToTriggerSorter – время движения продукта от датчика до сортировщика, либо расстояние от датчика для сортировщика, зависит от режима работы ПЛК

При использовании датчика продукта возле сортировщика необходимо установить значение переменной isUsedProductSensorForSorter в true, а так же значение delayForTriggerSorter, это необходимо для того, чтобы сортировщик успевал перейти из одного крайнего положения, в другое.