Junoka
21.06.2020, 09:48
Добрый день!
Прошу помочь советом или идеей как можно реализовать программу регистрации данных с двух датчиков, когда на третьем датчике появляется сигнал. С ПЛК я только начинаю знакомство, поэтому прошу строго не судить.
В основном использую язык CFC, но и с другими тоже работал.
Недавно столкнулся с интересной задачей и пока что какого-либо элегантного решения найти не получилось. Предлагаю рассмотреть её на условном примере конвейера с бутылками.
В общем есть установка на которой датчик 1 отслеживает положение. Этот датчик выдает дискретный сигнал через постоянные промежутки времени (условно считает бутылки на конвейере).
Помимо него есть еще два датчика:
1) аналоговый для измерения температуры условной бутылки (датчик 2)
2) дискретный для отслеживания, что бутылка полная (датчик 3)
Задача состоит в следующем: нужно реализовать регистрацию данных по фронту сигнала датчика 1 на датчиках 2 и 3. При условии, что Датчик 2 покажет температуру выше уставки и Датчик 3 покажет что бутылка полная, конвейер продолжает работу. Если Датчик 2 покажет температуру ниже уставки или Датчик 3 покажет, что бутылка пустая, то конвейер останавливается для извлечения данной бутылки. Так как движение конвейера непрерывный процесс, то в промежутках между бутылками будут регистрироваться сигналы, которые будут останавливать конвейер. Поэтому я предположил, что нужно использовать датчик 1 для получения сигнала на проведение измерения на датчиках 2 и 3.
Я вижу два возможных варианта:
1) Сигналы с датчиков 2 и 3 должны записываться каждый в свой блок и обновляться при получении сигнала с датчика 1.
2) Сигналы с датчиков 2 и 3 непрерывно регистрируются и производится их проверка по сигналу с датчика 1.
Буду благодарен за любую помощь.
Прошу помочь советом или идеей как можно реализовать программу регистрации данных с двух датчиков, когда на третьем датчике появляется сигнал. С ПЛК я только начинаю знакомство, поэтому прошу строго не судить.
В основном использую язык CFC, но и с другими тоже работал.
Недавно столкнулся с интересной задачей и пока что какого-либо элегантного решения найти не получилось. Предлагаю рассмотреть её на условном примере конвейера с бутылками.
В общем есть установка на которой датчик 1 отслеживает положение. Этот датчик выдает дискретный сигнал через постоянные промежутки времени (условно считает бутылки на конвейере).
Помимо него есть еще два датчика:
1) аналоговый для измерения температуры условной бутылки (датчик 2)
2) дискретный для отслеживания, что бутылка полная (датчик 3)
Задача состоит в следующем: нужно реализовать регистрацию данных по фронту сигнала датчика 1 на датчиках 2 и 3. При условии, что Датчик 2 покажет температуру выше уставки и Датчик 3 покажет что бутылка полная, конвейер продолжает работу. Если Датчик 2 покажет температуру ниже уставки или Датчик 3 покажет, что бутылка пустая, то конвейер останавливается для извлечения данной бутылки. Так как движение конвейера непрерывный процесс, то в промежутках между бутылками будут регистрироваться сигналы, которые будут останавливать конвейер. Поэтому я предположил, что нужно использовать датчик 1 для получения сигнала на проведение измерения на датчиках 2 и 3.
Я вижу два возможных варианта:
1) Сигналы с датчиков 2 и 3 должны записываться каждый в свой блок и обновляться при получении сигнала с датчика 1.
2) Сигналы с датчиков 2 и 3 непрерывно регистрируются и производится их проверка по сигналу с датчика 1.
Буду благодарен за любую помощь.