PDA

Просмотр полной версии : Вопрос о счетчиках импульсов и режимах эмуляции



sanatolich
30.07.2020, 12:20
Доброго всем читающим дня. Хочу быть краток, но не получится. Создаем новый проект. В конфигурации плк устанавливаем минимальное время цикла равным 10мс. Берем функцию Blink, timelow ставим T#100ms, timehigh такое же 100ms. Подключаем выход out на вход CU счетчика CTU. Ограничиваем время счета с последующим сбросом через таймер TOF величиной T#1s. Записываем отсчитанные импульсы с выхода CV в переменную. Сколько импульсов посчитает счетчик в режиме эмуляции? Правильно -5. На деле имеем 5. Все хорошо. Увеличиваем время отсчета до 5s. Сколько должно получиться? Правильно - 25. На деле имеем 21! 10s - 41! 50s - 201! 60s - 241! Что за ересь?! Если бы была какая то набегающая ошибка, то расхождение реального количества с расчетным менялось бы скорее в арифметической прогрессии, а не в геометрической. Меняем период цикла на 2 секунды (Tlow=1s и Thigh=1s). Время отсчета ставим 5m (300s). Количество импульсов получилось 146. Должно было получиться 150. Нет, я не буквоед, но есть же задачи, где нужна точность подсчета 1/10000 к примеру... Зачем тогда плк, если любой рабочий будет считать, проходящие по конвееру, предметы с не худшей точностью?
Вы скажете мне, нужно использовать "быстрые" входы в режиме прямого управления, писать подпрограмму, вызываемую по прерыванию цикла основной, и так далее. А я на это отвечу, что:
1. Зачем мне дорогой 110 плк, если частота срабатывания фотодатчика в пределах 5-7 Гц?
2. С быстрыми входами в режиме прямого управления нет возможности проверить работоспособность программы в режиме эмуляции. То есть я сначала должен купить "железо", а потом программировать? А если я ошибусь в выборе, например по конфигурации входов/выходов?

Прошу пояснить мне, почему такая большая неточность при работе со счетчиками в цикле основной программы. Программку для поиграться прилагаю. Может я не прав, и в "железном" исполнении все будет считать точно?

A.Simonov
30.07.2020, 17:02
Доброго всем читающим дня. Хочу быть краток, но не получится. Создаем новый проект. В конфигурации плк устанавливаем минимальное время цикла равным 10мс. Берем функцию Blink, timelow ставим T#100ms, timehigh такое же 100ms. Подключаем выход out на вход CU счетчика CTU. Ограничиваем время счета с последующим сбросом через таймер TOF величиной T#1s. Записываем отсчитанные импульсы с выхода CV в переменную. Сколько импульсов посчитает счетчик в режиме эмуляции? Правильно -5. На деле имеем 5. Все хорошо. Увеличиваем время отсчета до 5s. Сколько должно получиться? Правильно - 25. На деле имеем 21! 10s - 41! 50s - 201! 60s - 241! Что за ересь?! Если бы была какая то набегающая ошибка, то расхождение реального количества с расчетным менялось бы скорее в арифметической прогрессии, а не в геометрической. Меняем период цикла на 2 секунды (Tlow=1s и Thigh=1s). Время отсчета ставим 5m (300s). Количество импульсов получилось 146. Должно было получиться 150. Нет, я не буквоед, но есть же задачи, где нужна точность подсчета 1/10000 к примеру... Зачем тогда плк, если любой рабочий будет считать, проходящие по конвееру, предметы с не худшей точностью?
Вы скажете мне, нужно использовать "быстрые" входы в режиме прямого управления, писать подпрограмму, вызываемую по прерыванию цикла основной, и так далее. А я на это отвечу, что:
1. Зачем мне дорогой 110 плк, если частота срабатывания фотодатчика в пределах 5-7 Гц?
2. С быстрыми входами в режиме прямого управления нет возможности проверить работоспособность программы в режиме эмуляции. То есть я сначала должен купить "железо", а потом программировать? А если я ошибусь в выборе, например по конфигурации входов/выходов?

Прошу пояснить мне, почему такая большая неточность при работе со счетчиками в цикле основной программы. Программку для поиграться прилагаю. Может я не прав, и в "железном" исполнении все будет считать точно?

1) Попробуйте на реальном ПЛК а не в режиме Эмуляции. (Ваш проект на реальном ПЛК у меня насчитал 50 импульсовза 10 секунд, что похоже на правду)
2) У ПЛК110 [М02] быстрые входы в режиме счетчика считают импульсы с частотой до 100 кГц (при скважности 2)