1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

Вычисление скорости вращения двигателя s7-1200

ПЛК SIMATIC (S7-200, S7-1200, S7-300, S7-400, S7-1500, ET200)

Модератор: Глоб.модераторы

Ответить

Автор темы
AD_Nulikov
здесь недавно
здесь недавно
Сообщения: 5
Зарегистрирован: 07 сен 2023, 04:47
Имя: Антон Нуликов
Страна: Россия
город/регион: Новосибирск

Вычисление скорости вращения двигателя s7-1200

Сообщение AD_Nulikov »

Здравствуйте!
Решаем задачу вычисления скорости двигателя, для этого подключили к нему два энкодера: Siemens 6FX2001-5 QN 25, и Аutonics E40H10-1000-3T-24.

Энкодер Siemens сам считает скорость и количество импульсов, но примерно 2 раза в сутки, в течении 2-3 секунд показывает, что скорость равна 0, хотя двигатель вращается и количество импульсов меняется.

И что самое странное, в это же самое время количество импульсов Аutonics, которое хранится в HSC1, тоже становится равным 0. А после того как Сименс начинает показывать правильную скорость, количество импульсов восстанавливается, причем без потерь т.е. всё время "зануления" ПЛК правильно считает импульсы и если бы мы не отслеживали скорость ежесекундно, то мы бы и не заметили провалов.

Сталкивался кто-нибудь с похожим? В чем может быть проблема?
Заранее спасибо за помощь.

Универсал
эксперт
эксперт
Сообщения: 1341
Зарегистрирован: 14 фев 2013, 23:42
Имя: Евгений
Страна: Россия
город/регион: МО
Благодарил (а): 6 раз
Поблагодарили: 232 раза

Вычисление скорости вращения двигателя s7-1200

Сообщение Универсал »

AD_Nulikov писал(а): 07 сен 2023, 06:50 примерно 2 раза в сутки, в течении 2-3 секунд показывает, что скорость равна 0
Это происходит в одно и то же время?

Автор темы
AD_Nulikov
здесь недавно
здесь недавно
Сообщения: 5
Зарегистрирован: 07 сен 2023, 04:47
Имя: Антон Нуликов
Страна: Россия
город/регион: Новосибирск

Вычисление скорости вращения двигателя s7-1200

Сообщение AD_Nulikov »

Универсал писал(а): 07 сен 2023, 09:41 Это происходит в одно и то же время?
Да, секунда в секунду.

Универсал
эксперт
эксперт
Сообщения: 1341
Зарегистрирован: 14 фев 2013, 23:42
Имя: Евгений
Страна: Россия
город/регион: МО
Благодарил (а): 6 раз
Поблагодарили: 232 раза

Вычисление скорости вращения двигателя s7-1200

Сообщение Универсал »

Это наводит на одну мысль - у нас как-то на одной из построенных котельных стали останавливаться горелки в одно и то же время, и после сами перезапускаются. Проштудировали все иастройки в инструкции - ничего не нашли. Обратились в техподдержку, где нам разъяснили, что это делается для проверки герметичности газовых клапанов, и отключить эту функцию невозможно.
Возможно, и в вашем случае что-то подобное. Для проверки каких-либо цепей безопасности.

zromz
освоился
освоился
Сообщения: 200
Зарегистрирован: 18 сен 2021, 18:07
Имя: Владимир
Страна: Беларусь
Благодарил (а): 12 раз
Поблагодарили: 34 раза

Вычисление скорости вращения двигателя s7-1200

Сообщение zromz »

Я бы сначала определился - это программная или железная проблема. Пропадает счет импульсов уже после нормирования процесса, ну или другими словами после программной обработки значения с энкодеров ? Вы смотрели наличие импульсов непосредственно на входах ? Скорее всего там никакого прерывания нет, раз двигатель крутится , если так, смотрите дальше по программе.

Автор темы
AD_Nulikov
здесь недавно
здесь недавно
Сообщения: 5
Зарегистрирован: 07 сен 2023, 04:47
Имя: Антон Нуликов
Страна: Россия
город/регион: Новосибирск

Вычисление скорости вращения двигателя s7-1200

Сообщение AD_Nulikov »

zromz писал(а): 07 сен 2023, 10:48 Вы смотрели наличие импульсов непосредственно на входах ?
Да, входы моргают, сигнал идёт.
zromz писал(а): 07 сен 2023, 10:48 Пропадает счет импульсов уже после нормирования процесса, ну или другими словами после программной обработки значения с энкодеров ?
ПЛК считает импульсы инкрементального энкодера аутоникс встроенной функцией и перекладывает его в системный тэг, этот системный тэг обнуляется. Программой ПЛК мы на него не влияем.

С энкодером симменс ещё интереснее. Он сам считает скорость и нам высылает готовое значение и это значение обнуляется.

Joshua
здесь недавно
здесь недавно
Сообщения: 98
Зарегистрирован: 21 мар 2023, 02:12
Имя: Владимир
Страна: РФ
город/регион: Псков
Благодарил (а): 2 раза
Поблагодарили: 21 раз

Вычисление скорости вращения двигателя s7-1200

Сообщение Joshua »

AD_Nulikov писал(а): 07 сен 2023, 11:05 Да, входы моргают, сигнал идёт.
А входы области процесса %PIWxx тоже обнуляются?

Автор темы
AD_Nulikov
здесь недавно
здесь недавно
Сообщения: 5
Зарегистрирован: 07 сен 2023, 04:47
Имя: Антон Нуликов
Страна: Россия
город/регион: Новосибирск

Вычисление скорости вращения двигателя s7-1200

Сообщение AD_Nulikov »

Joshua писал(а): 07 сен 2023, 12:32 А входы области процесса %PIWxx тоже обнуляются?
Имеете в виду область меркерной памяти, которую выделяет счётчик? Именно про неё я и говорю, что она обнуляется.

zromz
освоился
освоился
Сообщения: 200
Зарегистрирован: 18 сен 2021, 18:07
Имя: Владимир
Страна: Беларусь
Благодарил (а): 12 раз
Поблагодарили: 34 раза

Вычисление скорости вращения двигателя s7-1200

Сообщение zromz »

AD_Nulikov писал(а): 07 сен 2023, 11:05 ПЛК считает импульсы инкрементального энкодера аутоникс встроенной функцией и перекладывает его в системный тэг, этот системный тэг обнуляется. Программой ПЛК мы на него не влияем.
Это как так не влияем ? Если обработка идет через функцию, то обнуляется до функции или после ? Если после, то надо разбираться, почему функция или перестает вызываться, или перестает выполняться.
AD_Nulikov писал(а): 07 сен 2023, 11:05 С энкодером симменс ещё интереснее. Он сам считает скорость и нам высылает готовое значение и это значение обнуляется.
Опять - где это значение обнуляется - ? По входу программы или по выходу ?
AD_Nulikov писал(а): 07 сен 2023, 13:40 Joshua писал(а): ↑Сегодня, 12:32
А входы области процесса %PIWxx тоже обнуляются?
Имеете в виду область меркерной памяти, которую выделяет счётчик? Именно про неё я и говорю, что она обнуляется.
Маркеры - это маркеры, а %PIWxx - это как раз входные данные
Аватара пользователя

Nicolayy
не первый раз у нас
не первый раз у нас
Сообщения: 318
Зарегистрирован: 14 фев 2014, 11:55
Имя: Николай
Страна: Россия
Благодарил (а): 16 раз
Поблагодарили: 72 раза

Вычисление скорости вращения двигателя s7-1200

Сообщение Nicolayy »

AD_Nulikov,
скриншоты настройки обоих HSC из свойств ПЛК в проекте TIA Portal'а выкладывайте.
и чо там с фильтрацией DI? она на минимальных значениях?

Михайло
эксперт
эксперт
Сообщения: 3643
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
город/регион: г. Чехов, МО
Благодарил (а): 8 раз
Поблагодарили: 286 раз

Вычисление скорости вращения двигателя s7-1200

Сообщение Михайло »

Nicolayy писал(а): 07 сен 2023, 19:00 чо там с фильтрацией DI
Конечно же надо смотреть фильтр дискретных сигналов в PLC Property/DI

Автор темы
AD_Nulikov
здесь недавно
здесь недавно
Сообщения: 5
Зарегистрирован: 07 сен 2023, 04:47
Имя: Антон Нуликов
Страна: Россия
город/регион: Новосибирск

Вычисление скорости вращения двигателя s7-1200

Сообщение AD_Nulikov »

Вот скриншоты настроек энкодеров.
Фильтрация минимальная 0.1 микросекунда.

Отправлено спустя 15 минут 37 секунд:
zromz писал(а): 07 сен 2023, 15:15 Это как так не влияем ? Если обработка идет через функцию, то обнуляется до функции или после ? Если после, то надо разбираться, почему функция или перестает вызываться, или перестает выполняться.
Обработка идет без функции. Энкодер симменс обрабатывается как точка удалённого ввода вывода и высылает готовые значения по адресу %ID50 (скорость) и %ID46 (количество импульсов).
Инкрементальный энкодер аутоникс обрабатывается блоком из тэга по адресу %ID1000, в который записывает HSC, но обнуляется именно этот тэг до наших функций.
zromz писал(а): 07 сен 2023, 15:15 Опять - где это значение обнуляется - ? По входу программы или по выходу ?
Обнуляется тэг по адресу %ID50, а %ID46 считает корректно.
zromz писал(а): 07 сен 2023, 15:15 Маркеры - это маркеры, а %PIWxx - это как раз входные данные
К сожалению, я не знаю где посмотреть %PIWxx, не могли бы вы это уточнить?
У вас нет необходимых прав для просмотра вложений в этом сообщении.

Михайло
эксперт
эксперт
Сообщения: 3643
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
город/регион: г. Чехов, МО
Благодарил (а): 8 раз
Поблагодарили: 286 раз

Вычисление скорости вращения двигателя s7-1200

Сообщение Михайло »

AD_Nulikov писал(а): 07 сен 2023, 06:50 А после того как Сименс начинает показывать правильную скорость, количество импульсов восстанавливается, причем без потерь т.е. всё время "зануления" ПЛК правильно считает импульсы и если бы мы не отслеживали скорость ежесекундно, то мы бы и не заметили провалов.
Похоже у вас глюк внутренней передачи данных от HSC-счетчика к процессору. Не сталкивался.

Joshua
здесь недавно
здесь недавно
Сообщения: 98
Зарегистрирован: 21 мар 2023, 02:12
Имя: Владимир
Страна: РФ
город/регион: Псков
Благодарил (а): 2 раза
Поблагодарили: 21 раз

Вычисление скорости вращения двигателя s7-1200

Сообщение Joshua »

AD_Nulikov писал(а): 08 сен 2023, 07:29 К сожалению, я не знаю где посмотреть %PIWxx, не могли бы вы это уточнить?
В вашем случае это %ID50. Если %Ix входы обновляются только перед новым циклом ПЛК, то при доступе через %PID40 значение берётся непосредственно из модуля прямо внутри цикла ПЛК, можно посмотреть через Watch/Force table.
Поскольку уже в %ID50 приходят нули, то видимо проблема в энкодере.

POV
авторитет
авторитет
Сообщения: 802
Зарегистрирован: 12 авг 2008, 11:05
Имя: Патрушев Олег Валерьевич
Страна: Россия
город/регион: г. Н.Новгород
Благодарил (а): 110 раз
Поблагодарили: 158 раз

Вычисление скорости вращения двигателя s7-1200

Сообщение POV »

Joshua писал(а): 08 сен 2023, 12:57 то видимо проблема в энкодере
Ага, а второй энкодер одновременно глючит из солидарности.

Топикстартеру.
Я бы проверил последняя ли прошивка загружена в цпу и соответствие версий в портале и цпу. Может сименс чего исправлял втихушку.
А что это за время такое, когда это происходит (0 часов, 0 суток, 12 часов от последнего run...)? Может какое прерывание работает? да еще и с запретом других прерываний? В диагностике на это время ничего?
Может что-то на профинете происходит? сеть выделенная? свичи есть в сети? хотя тогда второй энкодер должен бы быть в норме.

Roman_33
освоился
освоился
Сообщения: 271
Зарегистрирован: 25 ноя 2018, 17:55
Имя: Роман
Благодарил (а): 4 раза
Поблагодарили: 42 раза

Вычисление скорости вращения двигателя s7-1200

Сообщение Roman_33 »

По питанию что то "прилетает", наверняка ведь от одного источника запитаны. Может в это время вундервафля какая мощная включается/выключается или еще что.
Случается нередко нам
И труд и мудрость видеть там,
Где стоит только догадаться
За дело просто взяться.

Михайло
эксперт
эксперт
Сообщения: 3643
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
город/регион: г. Чехов, МО
Благодарил (а): 8 раз
Поблагодарили: 286 раз

Вычисление скорости вращения двигателя s7-1200

Сообщение Михайло »

Вы наверное не все заметили, что значение счётчика в ID обнуляется, затем восстанавливается. Это внутренняя проблема, при этом HSC-счетчик работает исправно, и это отдельная микросхема вроде как.
Аватара пользователя

Nicolayy
не первый раз у нас
не первый раз у нас
Сообщения: 318
Зарегистрирован: 14 фев 2014, 11:55
Имя: Николай
Страна: Россия
Благодарил (а): 16 раз
Поблагодарили: 72 раза

Вычисление скорости вращения двигателя s7-1200

Сообщение Nicolayy »

Танцевать с бубном смысла особо нет, надо проверять самым тупым методом: в контроллер заливать пустой проект, в котором оставлять только HSC, и в таком виде контролировать ID1000. Потому что очень это странная история, что ID1000 обнуляется, а потом сам по себе восстанавливается.
Ответить

Вернуться в «Simatic TIA Portal»