Opened 6 лет ago

Closed 6 лет ago

#107 closed баг (сделано)

Авария 22: не выполняется остановка привода по таймауту.

Сообщил: san Владелец: alx
Приоритет: средний Этап разработки: 1-я очередь
Ключевые слова: Копия:

Описание

В ТЗ в пункте "6.1 Работа системы охлаждения. Автоматический режим." сказано:

При температуре выше Т6, привод в соответствии с настройкой "Насос системы охлаждения" выполняет следующие действия:

  1. "Насос системы охлаждения" - "основной"

...
...
Если при этом температура поднимается более Т6 на 5°С или срабатывает верхний датчик или длительность режима охлаждения превышает настройку максимального времени работы основного насоса при охлаждении,

то привод остановить.

Артём установил "Насос системы охлаждения" - "основной"
"Максимальное время работы основного насоса при охлаждении" = 1мин.
Привод работал в авт режиме и температура превысила T6, сработала авария 22, привод осуществил спуск, после чего включил ЭД и ЭК как и требует ТЗ.

Но по истечению 1 минуты после возникновения аварии, пивод не был остановлен, как того требует ТЗ. ЭД и ЭК по прежнему оставались включены.

r602
Конфиг прилагается, а логи происшествия попробую найти сейчас...

Вложения (1)

smarthdcd (3.9 KB ) - added by san 6 лет ago.

Download all attachments as: .zip

История изменений (11)

by san, 6 лет ago

Вложение: smarthdcd added

in reply to:  description ; comment:1 by alx, 6 лет ago

Решение: invalid
Состояние: newclosed

Replying to san:

Артём установил ... "Максимальное время работы основного насоса при охлаждении" = 1мин.

В приложенном конфиг-файле параметр "Максимальное время работы основного насоса при охлаждении" установлен в значение 20 минут.

Но по истечению 1 минуты после возникновения аварии, пивод не был остановлен, как того требует ТЗ.

Судя по настройкам, и не должен был.

Конфиг прилагается, а логи происшествия попробую найти сейчас...

Не утруждайся. :)

comment:2 by san, 6 лет ago

Решение: invalid
Состояние: closedreopened

Действительно, видимо Артём изменил настройку перед тем как я скачал конфиг.
Т.к. на момент написания тикета я первым делал проверил эту настройку в Веб-интерфейсе и она была = 1мин, как и утверждал Артём.
В логе ведь изменение настроек фиксируется, всё-таки придётся найти в логах момент этого происшествия.

comment:3 by san, 6 лет ago

Я провёл новый эксперимент 29 октября 2018, время Пермское:

  1. Примерно в 16-35 привод был запущен в авт.режиме
  2. 16-36 произошла авария 22, привод начал спуск вниз согласно ТЗ
  3. Через 30 секунд(Максимальное время хода вниз) согласно ТЗ привод должен был включить ЭД и все разрешенные ЭК, однако включение ЭД не произошло.
  4. Спустя ещё одну минуту ("Максимальное время работы основного насоса при охлаждении"), согласно ТЗ, привод должен быть остановлен, однако ЭК остались открытыми.
  5. В 16-40 эксперимент завершили переведя станцию в режим стоп

r610
Логи и конфиг:
xchange\alx\SmartHDC\ticket107config.xml
xchange\alx\SmartHDC\ticket107messages.log

comment:4 by alx, 6 лет ago

Причина выяснена. Когда-то в ТЗ описанные действия выполнялись при возникновении события: температура масла превысила T6. То есть при переходе температуры через заданную границу однократно начинали спуск и запускали соответствующий таймер.

В какой-то момент времени в ТЗ изменили формулировку так, что выполнение действий стало требоваться не по факту события, а по выполнению условия "температура масла выше T6". В результате соответствующих изменений в коде каждый раз, когда приходит новое значение температуры, и оно выше T6, контроллер останавливает двигатели, включает клапаны и запускает таймер спуска. Таким образом, таймер спуска никогда не истекает, так как его все время перезапускают...

Очевидно, здесь надо добавить какую-то дополнительную проверку, чтобы не перезапускать таймер спуска повторно. Попробую что-то придумать на следующей неделе.

comment:5 by alx, 6 лет ago

Решение: fixed
Состояние: reopenedclosed

In 615/smartHDC:

Исправлена ошибка: если температура масла в автоматическим режиме станции
превышает температуру остановки работы, при каждом получении нового значения
температуры выполнялась остановка таймеров и их новый запуск в соответствии с
условием ТЗ. Из-за этого таймер никогда не дорабатывал до конца, и спуск
никогда не заканчивался. Добавлена проверка состояния чтобы запуск таймера
выполнялся только один раз. Closes #107.

comment:6 by alx, 6 лет ago

Если есть такая возможность, желательно провести повторную проверку работы системы охлаждения.

comment:7 by san, 6 лет ago

Решение: fixed
Состояние: closedreopened

Повторную проверку провёл 07 ноября:

Привод был запущен в авт.режиме

  • 15:54:19 произошла авария 22, привод начал спуск вниз согласно ТЗ
  • 15:58:19 Через 240 секунд(Максимальное время хода вниз * 2) согласно ТЗ привод включил ЭД1 на частоте 5ГЦ и все разрешенные ЭК
  • Спустя ещё одну минуту ("Максимальное время работы основного насоса при охлаждении"), согласно ТЗ, привод был остановлен, в таком состоянии по тз привод должен был остаться до снятия всех аварий предписывающих остановку привода, но сразу же после остановки привод начал спуск вниз и затем 16:03:20 снова включил ЭД1 а частоте 5ГЦ и все разрешенные ЭК.

Конфиг скачать я к сожалению забыл :(
но помню основные настройки:
"Максимальное время хода вниз" = 120 сек.
"Максимальное время работы основного насоса при охлаждении" = 1 мин.

Smarhdc r620
лог: xchange\alx\SmartHDC\me07112018.log

comment:8 by alx, 6 лет ago

Саша, объясни, пожалуйста, почему ты переоткрыл тикет. Насколько я понял из твоих-же комментариев, привод по таймауту стал останавливаться. Таким образом, баг, описанный в тикете, исправлен. Тикет переоткрыт по ошибке?

Если ты обнаружил какое-то еще нарушение в работе станции, создай новый тикет, и опиши там что и при каких условиях ты делал, что ожидал получить в результате и что получил вместо этого - см. как сделать хороший баг-рипорт. А сейчас я не могу понять, в чем проблема (и есть ли она вообще).

И, кстати, в ТЗ говорится: "Если одна из присутствующих аварий требует остановки привода, то привод не должен быть запущен в автоматическом режиме до снятия этой аварии или сброса аварий". В журнале я не вижу записей "запуск привода" в районе 15:59:19 (15:58:19 плюс одна минута). Следовательно, запуск привода в это время не производился. Ближайший (после возникновения аварии 22 в 15:54:19) запуск привода был произведен в 16:06:13 сразу после сброса аварий. Противоречия требованиям ТЗ я не вижу...

Version 0, edited 6 лет ago by alx (следующий)

in reply to:  1 comment:9 by san, 6 лет ago

Перенёс проблему, обнаруженную в последнем эксперименте в #125

comment:10 by san, 6 лет ago

Решение: сделано
Состояние: reopenedclosed
Note: See TracTickets for help on using tickets.