Вход

Просмотр полной версии : ПЛК210 Обнуление показаний энкодеров



Игорь Владимирович
13.12.2021, 11:27
Добрый день!
ПЛК210 02, подключены 5ть энкодеров, но не разберусь как сбросить их в ноль, нужно обнулять позицию станка.
причём обнулять нужно конкретный энкодер по конкретной оси.

Мастеренко Иван
14.12.2021, 11:02
Добрый день!
Счетчики сбрасываются при загрузке проекта. Во вкладке конфигурация (LeftSide) в параметре "Сброс счетчиков входов и энкодеров" должно быть установлено TRUE.
Для сброса счетчиков в цикле программы нужно создать отдельную задачу с наивысшим приоритетом (например, 0) и меньшим циклом (например, 5 мс) и в теле программы обрабатывать импульсы с помощью локальных переменных.

Вадим Ижевск
24.05.2023, 01:07
Добрый день!
Счетчики сбрасываются при загрузке проекта. Во вкладке конфигурация (LeftSide) в параметре "Сброс счетчиков входов и энкодеров" должно быть установлено TRUE.
Для сброса счетчиков в цикле программы нужно создать отдельную задачу с наивысшим приоритетом (например, 0) и меньшим циклом (например, 5 мс) и в теле программы обрабатывать импульсы с помощью локальных переменных.

здравствуйте.
а можно простенький пример?

Евгений Кислов
24.05.2023, 06:28
здравствуйте.
а можно простенький пример?

Добрый день.
https://owen.ru/forum/showthread.php?t=28167&p=374785&viewfull=1#post374785

Вадим Ижевск
25.05.2023, 00:16
Добрый день.
https://owen.ru/forum/showthread.php?t=28167&p=374785&viewfull=1#post374785

СПАСИБО. большое

Вадим Ижевск
29.05.2023, 22:21
здравствуйте!
а как сделать сохранение не по кнопочке, а по сбою питания ? анализ заднего фронта таргет-переменной TargetVars.stPlc210.xPowerInput1 не помог.

Евгений Кислов
30.05.2023, 06:15
здравствуйте!
а как сделать сохранение не по кнопочке, а по сбою питания ? анализ заднего фронта таргет-переменной TargetVars.stPlc210.xPowerInput1 не помог.

Добрый день.
Что именно вы хотите сохранить?

Вадим Ижевск
30.05.2023, 20:13
Здравствуйте.
необходимо сохранять текущую координату тележки, вычисленную на основании показаний энкодера.

Евгений Кислов
31.05.2023, 06:13
Здравствуйте.
необходимо сохранять текущую координату тележки, вычисленную на основании показаний энкодера.

Вам нужно объявить соответствующую переменную в области VAR RETAIN, чтобы она стала энергонезависимой и сохраняла свое значение после перезагрузки контроллера.

Вадим Ижевск
31.05.2023, 17:57
Здравствуйте.
Текущая координата тележки изменяется в соответствии с изменением данных с энкодера, т.е. с частотой 10кГц в течение 10-16 часов (она же бегает непрерывно туда-сюда, пока работает оборудование). При каждом изменении переменная в RETAIN будет перезаписываться. Возникает вопрос каков ресурс памяти области RETAIN по перезаписи? И разумно ли это? В плк100 я по спаду питания записывал необходимые данные в файлик, а после включения плк считывал их из этого файлика. И все было было хорошо. А как это сделать в плк210? Есть такая возможность?

Евгений Кислов
31.05.2023, 19:05
Здравствуйте.
Текущая координата тележки изменяется в соответствии с изменением данных с энкодера, т.е. с частотой 10кГц в течение 10-16 часов (она же бегает непрерывно туда-сюда, пока работает оборудование). При каждом изменении переменная в RETAIN будет перезаписываться. Возникает вопрос каков ресурс памяти области RETAIN по перезаписи? И разумно ли это? В плк100 я по спаду питания записывал необходимые данные в файлик, а после включения плк считывал их из этого файлика. И все было было хорошо. А как это сделать в плк210? Есть такая возможность?

Добрый день.
В ПЛК210 энергонезависимые (RETAIN) переменные сохраняются в микросхеме MRAM.
Ее ресурс перезаписи крайне велик (порядка 10^16).
Перезапись происходит по изменению любой из RETAIN-переменных, но не чаще раза в секунду.
Так что в данном случае нет особого смысла усложнять ситуацию сохранением данных в файл.
Впрочем, конечно, вы можете поступить и так.

Вадим Ижевск
01.06.2023, 18:29
Здравствуйте.
Хорошо, давайте иначе сформулируем вопрос : каким образом можно проконтролировать момент пропадания питания ?
Это необходимо, например, для перевода выходов в безопасное состояние или экстренного останова приводов.

Сергей0308
01.06.2023, 19:19
Здравствуйте.
Хорошо, давайте иначе сформулируем вопрос : каким образом можно проконтролировать момент пропадания питания ?
Это необходимо, например, для перевода выходов в безопасное состояние или экстренного останова приводов.

У Вас имеется автономное питание?

Вадим Ижевск
01.06.2023, 22:38
У Вас имеется автономное питание?

автономного питания нет

Сергей0308
01.06.2023, 22:43
автономного питания нет

Тогда как без питания Вы собираетесь что-то делать?

Вадим Ижевск
02.06.2023, 10:44
Тогда как без питания Вы собираетесь что-то делать?

Использую несколько источников питания, один для плк и панельки, другой для питания датчиков, третий для питания реле и управления. Если пропадает питание плк, это не означает, что пропадают и остальные. У плк210 нет безопасного состояния выходов, значит остаются какое-то время в прежних состояниях, а контроля уже может и не быть. За это время можно подать команду отключения силовой приводов, например. Я так думаю...:)

Евгений Кислов
02.06.2023, 11:18
Использую несколько источников питания, один для плк и панельки, другой для питания датчиков, третий для питания реле и управления. Если пропадает питание плк, это не означает, что пропадают и остальные. У плк210 нет безопасного состояния выходов, значит остаются какое-то время в прежних состояниях, а контроля уже может и не быть. За это время можно подать команду отключения силовой приводов, например. Я так думаю...:)

За это время сделать ничего нельзя. В контроллере нет конденсаторов.
Пропажа питания приходит к мгновенному отключению.

Сергей0308
02.06.2023, 12:49
У многих БП есть сигнал(контакт) исправности(работы), в смысле если контакт разомкнулся, можно что-то и выключить!

Вадим Ижевск
03.06.2023, 10:28
За это время сделать ничего нельзя. В контроллере нет конденсаторов.
Пропажа питания приходит к мгновенному отключению.

Т.е. две таргет-переменные TargetVars.stPlc210.xPowerInput1 и TargetVars.stPlc210.xPowerInput2 введены просто "до кучи". И использовать их никак невозможно?

Евгений Кислов
03.06.2023, 22:20
Т.е. две таргет-переменные TargetVars.stPlc210.xPowerInput1 и TargetVars.stPlc210.xPowerInput2 введены просто "до кучи". И использовать их никак невозможно?

Их, конечно, можно использовать. Каждая переменная отражает состояние соответствующего порта питания (у ПЛК210 их два).
Соответственно, если вы резервируете питание, используя оба порта - то сможете в программе определить, что на одном из портов питание пропало.

Вадим Ижевск
31.10.2023, 03:53
Добрый день!
Счетчики сбрасываются при загрузке проекта. Во вкладке конфигурация (LeftSide) в параметре "Сброс счетчиков входов и энкодеров" должно быть установлено TRUE.
Для сброса счетчиков в цикле программы нужно создать отдельную задачу с наивысшим приоритетом (например, 0) и меньшим циклом (например, 5 мс) и в теле программы обрабатывать импульсы с помощью локальных переменных.

Добрый день.
А можно как-то установить во вкладке конфигурация (LeftSide) в параметре "Сброс счетчиков входов и энкодеров" должно быть установлено FALSE? Чтобы не сбрасывать энкодер при каждой загрузке во время отладки?

Евгений Кислов
31.10.2023, 06:13
Добрый день.
А можно как-то установить во вкладке конфигурация (LeftSide) в параметре "Сброс счетчиков входов и энкодеров" должно быть установлено FALSE? Чтобы не сбрасывать энкодер при каждой загрузке во время отладки?

Добрый день.
Да, можно - этот параметр доступен для редактирования.

Вадим Ижевск
01.11.2023, 11:53
Добрый день.
Да, можно - этот параметр доступен для редактирования.

добрый день.
установил параметр "Сброс счетчиков входов и энкодеров" в FALSE. После выключения питания показания энкодера сбрасываются. Независимо от режима работы плк "отладка" или "работа".
Когда впервые подключал энкодер к плк210 проблема была в том, чтобы сбросить его показания (он всегда сохранял значения). Теперь нужно чтобы плк сохранял значения энкодера , но это никак не получается.
Что посоветуете?

Евгений Кислов
01.11.2023, 12:03
добрый день.
установил параметр "Сброс счетчиков входов и энкодеров" в FALSE. После выключения питания показания энкодера сбрасываются. Независимо от режима работы плк "отладка" или "работа".
Когда впервые подключал энкодер к плк210 проблема была в том, чтобы сбросить его показания (он всегда сохранял значения). Теперь нужно чтобы плк сохранял значения энкодера , но это никак не получается.
Что посоветуете?

Значения каналов счетчиков энкодеров всегда обнуляются после перезагрузки. Упомянутый параметр на это не влияет.
В вашем случае требуется вычислять значение счетчика как сумму текущего значения канала и значения на момент выключения питания (его нужно сохранять с помощью RETAIN-переменной).

Вадим Ижевск
01.11.2023, 13:00
Значения каналов счетчиков энкодеров всегда обнуляются после перезагрузки. Упомянутый параметр на это не влияет.
В вашем случае требуется вычислять значение счетчика как сумму текущего значения канала и значения на момент выключения питания (его нужно сохранять с помощью RETAIN-переменной).

на видео https://owen.ru/media/video/owen_plk210_podkluchenie_enkoderov 3мин3сек говорится, что каналы энергонезависимые.

Евгений Кислов
01.11.2023, 13:02
на видео https://owen.ru/media/video/owen_plk210_podkluchenie_enkoderov 3мин3сек говорится, что каналы энергонезависимые.

К сожалению, там использована некорректная формулировка.
Имелось в виду - по умолчанию они не обнуляются при загрузке нового проекта.