- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Вычисление скорости вращения двигателя s7-1200
Модератор: Глоб.модераторы
-
- здесь недавно
- Сообщения: 5
- Зарегистрирован: 07 сен 2023, 04:47
- Имя: Антон Нуликов
- Страна: Россия
- город/регион: Новосибирск
Вычисление скорости вращения двигателя s7-1200
Здравствуйте!
Решаем задачу вычисления скорости двигателя, для этого подключили к нему два энкодера: Siemens 6FX2001-5 QN 25, и Аutonics E40H10-1000-3T-24.
Энкодер Siemens сам считает скорость и количество импульсов, но примерно 2 раза в сутки, в течении 2-3 секунд показывает, что скорость равна 0, хотя двигатель вращается и количество импульсов меняется.
И что самое странное, в это же самое время количество импульсов Аutonics, которое хранится в HSC1, тоже становится равным 0. А после того как Сименс начинает показывать правильную скорость, количество импульсов восстанавливается, причем без потерь т.е. всё время "зануления" ПЛК правильно считает импульсы и если бы мы не отслеживали скорость ежесекундно, то мы бы и не заметили провалов.
Сталкивался кто-нибудь с похожим? В чем может быть проблема?
Заранее спасибо за помощь.
Решаем задачу вычисления скорости двигателя, для этого подключили к нему два энкодера: 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
-
- здесь недавно
- Сообщения: 5
- Зарегистрирован: 07 сен 2023, 04:47
- Имя: Антон Нуликов
- Страна: Россия
- город/регион: Новосибирск
-
- эксперт
- Сообщения: 1341
- Зарегистрирован: 14 фев 2013, 23:42
- Имя: Евгений
- Страна: Россия
- город/регион: МО
- Благодарил (а): 6 раз
- Поблагодарили: 232 раза
Вычисление скорости вращения двигателя s7-1200
Это наводит на одну мысль - у нас как-то на одной из построенных котельных стали останавливаться горелки в одно и то же время, и после сами перезапускаются. Проштудировали все иастройки в инструкции - ничего не нашли. Обратились в техподдержку, где нам разъяснили, что это делается для проверки герметичности газовых клапанов, и отключить эту функцию невозможно.
Возможно, и в вашем случае что-то подобное. Для проверки каких-либо цепей безопасности.
Возможно, и в вашем случае что-то подобное. Для проверки каких-либо цепей безопасности.
-
- освоился
- Сообщения: 200
- Зарегистрирован: 18 сен 2021, 18:07
- Имя: Владимир
- Страна: Беларусь
- Благодарил (а): 12 раз
- Поблагодарили: 34 раза
Вычисление скорости вращения двигателя s7-1200
Я бы сначала определился - это программная или железная проблема. Пропадает счет импульсов уже после нормирования процесса, ну или другими словами после программной обработки значения с энкодеров ? Вы смотрели наличие импульсов непосредственно на входах ? Скорее всего там никакого прерывания нет, раз двигатель крутится , если так, смотрите дальше по программе.
-
- здесь недавно
- Сообщения: 5
- Зарегистрирован: 07 сен 2023, 04:47
- Имя: Антон Нуликов
- Страна: Россия
- город/регион: Новосибирск
Вычисление скорости вращения двигателя s7-1200
Да, входы моргают, сигнал идёт.
ПЛК считает импульсы инкрементального энкодера аутоникс встроенной функцией и перекладывает его в системный тэг, этот системный тэг обнуляется. Программой ПЛК мы на него не влияем.
С энкодером симменс ещё интереснее. Он сам считает скорость и нам высылает готовое значение и это значение обнуляется.
-
- здесь недавно
- Сообщения: 98
- Зарегистрирован: 21 мар 2023, 02:12
- Имя: Владимир
- Страна: РФ
- город/регион: Псков
- Благодарил (а): 2 раза
- Поблагодарили: 21 раз
-
- здесь недавно
- Сообщения: 5
- Зарегистрирован: 07 сен 2023, 04:47
- Имя: Антон Нуликов
- Страна: Россия
- город/регион: Новосибирск
Вычисление скорости вращения двигателя s7-1200
Имеете в виду область меркерной памяти, которую выделяет счётчик? Именно про неё я и говорю, что она обнуляется.
-
- освоился
- Сообщения: 200
- Зарегистрирован: 18 сен 2021, 18:07
- Имя: Владимир
- Страна: Беларусь
- Благодарил (а): 12 раз
- Поблагодарили: 34 раза
Вычисление скорости вращения двигателя s7-1200
Это как так не влияем ? Если обработка идет через функцию, то обнуляется до функции или после ? Если после, то надо разбираться, почему функция или перестает вызываться, или перестает выполняться.AD_Nulikov писал(а): ↑07 сен 2023, 11:05 ПЛК считает импульсы инкрементального энкодера аутоникс встроенной функцией и перекладывает его в системный тэг, этот системный тэг обнуляется. Программой ПЛК мы на него не влияем.
Опять - где это значение обнуляется - ? По входу программы или по выходу ?AD_Nulikov писал(а): ↑07 сен 2023, 11:05 С энкодером симменс ещё интереснее. Он сам считает скорость и нам высылает готовое значение и это значение обнуляется.
Маркеры - это маркеры, а %PIWxx - это как раз входные данныеAD_Nulikov писал(а): ↑07 сен 2023, 13:40 Joshua писал(а): ↑Сегодня, 12:32
А входы области процесса %PIWxx тоже обнуляются?
Имеете в виду область меркерной памяти, которую выделяет счётчик? Именно про неё я и говорю, что она обнуляется.
-
- не первый раз у нас
- Сообщения: 318
- Зарегистрирован: 14 фев 2014, 11:55
- Имя: Николай
- Страна: Россия
- Благодарил (а): 16 раз
- Поблагодарили: 72 раза
Вычисление скорости вращения двигателя s7-1200
AD_Nulikov,
скриншоты настройки обоих HSC из свойств ПЛК в проекте TIA Portal'а выкладывайте.
и чо там с фильтрацией DI? она на минимальных значениях?
скриншоты настройки обоих HSC из свойств ПЛК в проекте TIA Portal'а выкладывайте.
и чо там с фильтрацией DI? она на минимальных значениях?
-
- эксперт
- Сообщения: 3643
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 8 раз
- Поблагодарили: 286 раз
Вычисление скорости вращения двигателя s7-1200
Конечно же надо смотреть фильтр дискретных сигналов в PLC Property/DI
-
- здесь недавно
- Сообщения: 5
- Зарегистрирован: 07 сен 2023, 04:47
- Имя: Антон Нуликов
- Страна: Россия
- город/регион: Новосибирск
Вычисление скорости вращения двигателя s7-1200
Вот скриншоты настроек энкодеров.
Фильтрация минимальная 0.1 микросекунда.
Отправлено спустя 15 минут 37 секунд:
Инкрементальный энкодер аутоникс обрабатывается блоком из тэга по адресу %ID1000, в который записывает HSC, но обнуляется именно этот тэг до наших функций.
Фильтрация минимальная 0.1 микросекунда.
Отправлено спустя 15 минут 37 секунд:
Обработка идет без функции. Энкодер симменс обрабатывается как точка удалённого ввода вывода и высылает готовые значения по адресу %ID50 (скорость) и %ID46 (количество импульсов).
Инкрементальный энкодер аутоникс обрабатывается блоком из тэга по адресу %ID1000, в который записывает HSC, но обнуляется именно этот тэг до наших функций.
Обнуляется тэг по адресу %ID50, а %ID46 считает корректно.
К сожалению, я не знаю где посмотреть %PIWxx, не могли бы вы это уточнить?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- эксперт
- Сообщения: 3643
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 8 раз
- Поблагодарили: 286 раз
Вычисление скорости вращения двигателя s7-1200
Похоже у вас глюк внутренней передачи данных от HSC-счетчика к процессору. Не сталкивался.AD_Nulikov писал(а): ↑07 сен 2023, 06:50 А после того как Сименс начинает показывать правильную скорость, количество импульсов восстанавливается, причем без потерь т.е. всё время "зануления" ПЛК правильно считает импульсы и если бы мы не отслеживали скорость ежесекундно, то мы бы и не заметили провалов.
-
- здесь недавно
- Сообщения: 98
- Зарегистрирован: 21 мар 2023, 02:12
- Имя: Владимир
- Страна: РФ
- город/регион: Псков
- Благодарил (а): 2 раза
- Поблагодарили: 21 раз
Вычисление скорости вращения двигателя s7-1200
В вашем случае это %ID50. Если %Ix входы обновляются только перед новым циклом ПЛК, то при доступе через %PID40 значение берётся непосредственно из модуля прямо внутри цикла ПЛК, можно посмотреть через Watch/Force table.AD_Nulikov писал(а): ↑08 сен 2023, 07:29 К сожалению, я не знаю где посмотреть %PIWxx, не могли бы вы это уточнить?
Поскольку уже в %ID50 приходят нули, то видимо проблема в энкодере.
-
- авторитет
- Сообщения: 802
- Зарегистрирован: 12 авг 2008, 11:05
- Имя: Патрушев Олег Валерьевич
- Страна: Россия
- город/регион: г. Н.Новгород
- Благодарил (а): 110 раз
- Поблагодарили: 158 раз
Вычисление скорости вращения двигателя s7-1200
Ага, а второй энкодер одновременно глючит из солидарности.
Топикстартеру.
Я бы проверил последняя ли прошивка загружена в цпу и соответствие версий в портале и цпу. Может сименс чего исправлял втихушку.
А что это за время такое, когда это происходит (0 часов, 0 суток, 12 часов от последнего run...)? Может какое прерывание работает? да еще и с запретом других прерываний? В диагностике на это время ничего?
Может что-то на профинете происходит? сеть выделенная? свичи есть в сети? хотя тогда второй энкодер должен бы быть в норме.
-
- освоился
- Сообщения: 271
- Зарегистрирован: 25 ноя 2018, 17:55
- Имя: Роман
- Благодарил (а): 4 раза
- Поблагодарили: 42 раза
Вычисление скорости вращения двигателя s7-1200
По питанию что то "прилетает", наверняка ведь от одного источника запитаны. Может в это время вундервафля какая мощная включается/выключается или еще что.
Случается нередко нам
И труд и мудрость видеть там,
Где стоит только догадаться
За дело просто взяться.
И труд и мудрость видеть там,
Где стоит только догадаться
За дело просто взяться.
-
- эксперт
- Сообщения: 3643
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 8 раз
- Поблагодарили: 286 раз
Вычисление скорости вращения двигателя s7-1200
Вы наверное не все заметили, что значение счётчика в ID обнуляется, затем восстанавливается. Это внутренняя проблема, при этом HSC-счетчик работает исправно, и это отдельная микросхема вроде как.
-
- не первый раз у нас
- Сообщения: 318
- Зарегистрирован: 14 фев 2014, 11:55
- Имя: Николай
- Страна: Россия
- Благодарил (а): 16 раз
- Поблагодарили: 72 раза
Вычисление скорости вращения двигателя s7-1200
Танцевать с бубном смысла особо нет, надо проверять самым тупым методом: в контроллер заливать пустой проект, в котором оставлять только HSC, и в таком виде контролировать ID1000. Потому что очень это странная история, что ID1000 обнуляется, а потом сам по себе восстанавливается.