CodeSys v2.3 Увеличиваем точность инкрементального энкодера в 2 раза — АСУ ТП: сообщество инженеров

CodeSys v2.3 Увеличиваем точность инкрементального энкодера в 2 раза

О чём видео

В ролике показано, как в CODESYS V2.3 на контроллере ОВЕН ПЛК110 увеличить точность инкрементального энкодера в два раза за счёт обработки переднего и заднего фронтов фазы A. Рассматривается создание проекта, настройка быстрых входов, использование триггеров и подсчёт импульсов в переменной.

Что разбирается
  1. 00:02 Введение и постановка задачи
  2. 00:43 Особенности инкрементальных энкодеров
  3. 01:01 Создание проекта для ПЛК110
  4. 01:18 Настройка быстрых входов и фильтрации
  5. 02:00 Анализ фаз A и B, логика подсчёта
  6. 03:21 Добавление триггеров переднего и заднего фронта
  7. 04:30 Программирование условий для счёта
  8. 06:14 Проверка работы в режиме эмуляции
  9. 06:32 Увеличение точности в два раза
  10. 08:20 Загрузка в контроллер и тестирование
Оборудование и ПО
  • CODESYS V2.3
  • ОВЕН ПЛК110
  • инкрементальный энкодер

Кому полезно: Инженерам АСУ ТП, программистам ПЛК, работающим с энкодерами и CODESYS.

Описание составлено автоматически по расшифровке речи в ролике.

Расшифровка видео

0:02 Здравствуйте, меня зовут Петренко Анатолий Владимирович. Давайте продолжим наш интернет проект, зачем пока контроллер электронику? Электротехнику сегодня полукоконтроллеру Овен инкрементальный энкодер. Это обычный энкодер кнопочного типа чаще всего применяют для. Регулировки громкости в автомагнитолах и попробуем увеличить его точность в 2 раза дальнейшем. Будем использовать промышленный инкодер российского производства 158 Ф. Я расскажу об особенностях работы с промышленными кодами сейчас для обучения и рассмотрения.

0:43 Особенности работы инкрементальных энкодеров подойдет простой кнопочного типа, давайте создадим новый проект. Для контроллера ПЛК 110 РЛ версия 2. Нажимаем окей. Будем писать на языке программирования ст. окей. Дальше перейдем в ресурсы, конфигурация полка. Здесь откроем конфигурацию полка и. И у нас есть быстрые входы, посмотрим параметры модуля и сделаем здесь минимальное время фильтрации для того, чтобы контроль он мог считать импульсы с максимальной частотой.

1:44 Здесь у нас будет фаза, а инкрементального энкодера, который мы используем 2 фазы фаза, а фаза б смещены относительно друг друга на 90 она. В прошлых видео мы рассматривали вот такую картинку, которую нашел интернете, и говорили о том, что предположим, верхняя фаза это у нас фаза. А нижняя фаза это фаза Б. Мы по переднему фронту, если у нас на фазе, а передний фронт, а на фазе Б. При этом есть сигнал, наличие на входе.

2:23 Напряжение в данном случае у меня напряжение 24 Вольта от внутреннего источника питания контроллера. То мы прибавляем единицу, если у нас по фронту, то есть есть. Передний фронт на фазе, а при этом на фазе б отсутствует напряжение, отсутствует сигнал. То мы убавляем единицу, теперь мы можем увеличить точность энкодера в. 2 раза здесь у нас после переднего фронта пойдет задний фронт, и мы видим, что если у нас прошел задний фронт по фазе. А а на вазе б при этом нет сигнала, то мы. Прибавляем единицу, если по фазе, а идет за дефронт, при этом на фазе б есть сигнал. Мы отнимаем единицу, ну давайте перейдем в написание программы, перейдем по.

3:21 Здесь вызовем. 2 Триггера нажимаем ф 2 стандартные функциональные блоки. Триггеры из стандартной библиотеки Р. Трик, это р 3 будет фазы, а? Будет по появлению сигнала на фазе, а 1 вход контроллера нажимаем энтер и в редакторе объявлений переменных здесь объявляем р Триггер. Вот у нас появился Иртригер, следующим шагом нам потребуется Иртригер. Нажимаем ф 2 на клавиатуре, убираем ф Триггер, это триггер. Также будет фазы, а забегаю немножечко вперед, расскажу, что можно будет. В 4 раза увеличить точность энкодера с помощью наблюдения, как за фазой, а так и за фазой б. Ну, об этом уже в следующем видео здесь у нас будет ф Триггер. То есть это триггер заднего фронта нажимаем ок?

4:30 И также здесь у нас фаза, а даже по даже пишем условия, если выбираем наш триггер по фазе А. По переднему фронту ставим точка и выбираем его выход. Условия должна совместить на фазе б, у нас есть сигнал, если нам. То Мы к перемены, предположим, объем перемены счет 1. Прибавляем единицу. Счет 1 будет тип рыл стандартные типы, может принимать как положительные, так и отрицательные значения окей и завершаем условия. Можем скопировать. Вывить здесь добавляем нот если нет сигнала на фазе б, то отнимаем единицу. Вот еще рассмотрим картинку по переднему фронту, есть сигнал на фазе. Б прибавляем единицу по переднему фронту на фазе, а нет на фазе Б. Нет сигнала передний фронт афазия, а на фазе б нет сигнала отнимаем единицу.

6:06 Мы можем попробовать посмотреть, как это работает. Переводим контроль в режим Стор. Не вращаем Никодер, вот у нас в 1 сторону отнимая значение в другую сторону, прибавляет значение. Следующим шагом попробуем увеличить точность пока в 2 раза, потом в следующем видео увеличим 4 раза. И так если условия ф 3, а вот можем скопировать. Выход. По выходу тригера. Смотрим вот здесь, у нас будет Нижний фронт, то здесь сначала появилось напряжение. Она поднимается по переднему фронту, и потом она пропадает по Нижнему фронту. Здесь у нас нет сигнала на фазе Б.

7:26 На фазе б то делаем следующее. Вот переменная счет 1 прибавляем единицу. И давайте скопируем этот код. Дальше посмотрим на рисунок и смотрим здесь у нас по переднему, по заднему фронту фазы б у нас. Есть единица, значит, здесь пишем. Убавляем нот, убираем нот и отнимаем единицу. Пробуем загрузить программу в контроллер. Так программы и Не пробуем вращать энкодер вот по ощущениям, когда вращаешь этот энкодер. У него есть какое то, скажем так, положение, то есть он переходит от точки до точки.

8:41 И вот сейчас попробуем ввести энкодер в 0. Но то наживное не вводится, вводится в ты, 1 потому что. Надо плавно теперь вращать, у него есть промежуточное значение. Вот, допустим, добавляем, чуть чуть повернули, и у нас уже энкодер добавляет по 2 импульса. Вот от точки до точки ее можно почувствовать руками, вот он как бы раз и перешел.

9:12 Можем переменную счет обнулить. И попробовать еще раз вот раз и на 2 импульса переход от точки до точки. Теперь он у нас выдает по 2 импульса. На этом наше небольшое видео завершим. В следующем видео мы еще будем учитывать фронты и фазы б, то есть будем учитывать передний и задний фронт фазы, а также передний и задний фронт фазы Б. На этом наше небольшое видео завершаем спасибо.

Расшифровка сделана автоматически (Yandex SpeechKit) и может содержать ошибки в терминах.

Принимаю заказы на автоматизацию технологических процессов. Разработка ПО для ПЛК, панелей операторов, SCADA. Доработка ПО. Возможно удалённо.

Оставьте комментарий

Войти

Зарегистрироваться

Сбросить пароль

Пожалуйста, введите ваше имя пользователя или эл. адрес, вы получите письмо со ссылкой для сброса пароля.

Прокрутить вверх