Opened 6 лет ago

Closed 6 лет ago

#211 closed баг (fixed)

Не отключаются НУ и ЭК (не переходят в состояние "не выбрано") при необходимости снизить производительность

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

Описание

При следующих уставках:

НУ1-вкл, НУ2-авто, ЭК1-вкл, ЭК2-авто,
приоритет при НУ1 и НУ2 авто - НУ2
приоритет при ЭК1 и ЭК2 авто - ЭК2

наблюдается следующий баг:

  1. после начала работы или после сброса пп привод начинает работу с НУ1 и ЭК1 как и должно быть.
  2. при необходимости повышения производительности привод подключает ЭК2 (выбирает ЭК2 при действующей ЭК1), в соответствии с уставкой приоритета увеличения производительности.
  3. при необходимости снизить производительность ЭК2 не отключается (не переходит в состояние "не выбран"), оба клапана продолжают работать, хотя ожидалось отключение ЭК2 (переход в состояние "не выбран").
  4. аналогичная ситуация наблюдается с НУ2. При необходимости повышения производительности она будет контроллером включена (выбирает НУ2 при действующей НУ1), однако при снижении производительности привод ее не отключает (НУ2 не переходит в состояние "не выбрана").

Если при начальных уставках требованием повысить производительность добиться что все ЭК и НУ войдут в работу, то и ЭК2 и НУ2 уже более не выключатся из работы при снижении производительности (не вернутся в состояние "не выбраны") без сброса ПП.

Вложения (1)

-ABCD1234567.rar (82.5 KB ) - added by Art_M 6 лет ago.

Download all attachments as: .zip

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

by Art_M, 6 лет ago

Вложение: -ABCD1234567.rar added

comment:1 by alx, 6 лет ago

Артем, уточни, пожалуйста, время инцидента в лог-файле (когда по твоему мнению должен был быть включен в работу ЭК2, но этого не произошло). Аналогичное уточнение прошу по НУ2.

comment:2 by alx, 6 лет ago

Кажется я понял, в чем дело. В ТЗ при описании действий по повышению/понижению производительности привода оперируют понятиями "приоритетная НУ" и "приоритетный ЭК", но определение этих понятий в тексте ТЗ не дано. При реализации мер по снижению производительности указание ТЗ "включить только приоритетную НУ" я трактовал как необходимость отключить неприоритетную НУ, при этом приоритетность/неприоритетность НУ определяется по значению настройки "Приоритет при НУ1 и НУ2 авто".

В данном случае, согласно приложенному конфиг-файлу, настройка "Приоритет при НУ1 и НУ2 авто" имеет значение "НУ2", поэтому НУ2 трактовалась как приоритетная, а прочитированное выше требование ТЗ по снижению производительности трактовалось как "включить только НУ2". Но так как режим НУ1 установлен в значение "вкл", отключение НУ1 невозможно. В результате мера "включить только приоритетную НУ" просто не применялась.

Аналогичная ситуация с ЭК: настройка "Приоритет при ЭК1 и ЭК2 авто" имеет значение "ЭК2", при этом режим ЭК1 - "вкл". Включить ЭК2 без ЭК1 нельзя.

Предполагаю, что я неверно трактовал понятие "приоритетный ЭК" и "приоритетная НУ". Насколько я понял, настройка "Приоритет при НУ1 и НУ2 авто" определяет приоритетную НУ, как следует из названия, только если обе НУ в режиме "авто". Прошу разъяснить, по какому принципу определяется приоритет НУ в случае, если режим хотя бы одной НУ отличен от "авто". Аналогичное разъяснение прошу дать в отношении ЭК.

in reply to:  1 ; comment:3 by Art_M, 6 лет ago

Replying to alx:

Артем, уточни, пожалуйста, время инцидента в лог-файле (когда по твоему мнению должен был быть включен в работу ЭК2, но этого не произошло). Аналогичное уточнение прошу по НУ2.

Ребята, я же написал, что проблема не в том, что "не включен в работу", а в том что "не исключен из работы"...

Вот для примера из этого же лога:
Jun 13 17:30:51 smarthdcd[376]: controller.cpp:1565: НУ1: запуск двигателя (22.0 Гц)
Jun 13 17:30:51 smarthdcd[376]: controller.cpp:1565: НУ2: запуск двигателя (22.0 Гц)
Jun 13 17:30:52 smarthdcd[376]: controller.cpp:4308: нижний датчик положения неактивен
Jun 13 17:30:52 smarthdcd[376]: controller.cpp:3620: верхний датчик положения активен
Jun 13 17:30:52 smarthdcd[376]: controller.cpp:1602: НУ1: останов двигателя (нормальный)
Jun 13 17:30:52 smarthdcd[376]: controller.cpp:1602: НУ2: останов двигателя (нормальный)
Jun 13 17:30:52 smarthdcd[376]: controller.cpp:3753: верхний датчик положения неактивен
Jun 13 17:30:53 smarthdcd[376]: controller.cpp:4228: нижний датчик положения активен
Jun 13 17:30:53 smarthdcd[376]: Сброс счетчика АПВ
Jun 13 17:30:53 smarthdcd[376]: Сброс счетчика АПВ НУ1
Jun 13 17:30:53 smarthdcd[376]: Сброс счетчика АПВ НУ2
Jun 13 17:30:53 smarthdcd[376]: controller.cpp:1565: НУ1: запуск двигателя (22.0 Гц)
Jun 13 17:30:53 smarthdcd[376]: controller.cpp:1565: НУ2: запуск двигателя (22.0 Гц)
Jun 13 17:30:53 smarthdcd[376]: controller.cpp:4308: нижний датчик положения неактивен
Jun 13 17:30:54 smarthdcd[376]: controller.cpp:3620: верхний датчик положения активен
Jun 13 17:30:54 smarthdcd[376]: controller.cpp:1602: НУ1: останов двигателя (нормальный)
Jun 13 17:30:54 smarthdcd[376]: controller.cpp:1602: НУ2: останов двигателя (нормальный)
Jun 13 17:30:54 smarthdcd[376]: controller.cpp:3753: верхний датчик положения неактивен
Jun 13 17:30:55 smarthdcd[376]: controller.cpp:4228: нижний датчик положения активен
Jun 13 17:30:55 smarthdcd[376]: Сброс счетчика АПВ
Jun 13 17:30:55 smarthdcd[376]: Сброс счетчика АПВ НУ1
Jun 13 17:30:55 smarthdcd[376]: Сброс счетчика АПВ НУ2
Jun 13 17:30:55 smarthdcd[376]: controller.cpp:1565: НУ1: запуск двигателя (22.0 Гц)
Jun 13 17:30:55 smarthdcd[376]: controller.cpp:1565: НУ2: запуск двигателя (22.0 Гц)
Jun 13 17:30:56 smarthdcd[376]: controller.cpp:4308: нижний датчик положения неактивен
Jun 13 17:30:56 smarthdcd[376]: controller.cpp:3620: верхний датчик положения активен
Jun 13 17:30:56 smarthdcd[376]: controller.cpp:1602: НУ1: останов двигателя (нормальный)
Jun 13 17:30:56 smarthdcd[376]: controller.cpp:1602: НУ2: останов двигателя (нормальный)
Jun 13 17:30:57 smarthdcd[376]: controller.cpp:3753: верхний датчик положения неактивен
Jun 13 17:30:57 smarthdcd[376]: controller.cpp:4228: нижний датчик положения активен
Jun 13 17:30:57 smarthdcd[376]: Сброс счетчика АПВ
Jun 13 17:30:57 smarthdcd[376]: Сброс счетчика АПВ НУ1
Jun 13 17:30:57 smarthdcd[376]: Сброс счетчика АПВ НУ2
Jun 13 17:30:57 smarthdcd[376]: controller.cpp:1565: НУ1: запуск двигателя (22.0 Гц)
Jun 13 17:30:57 smarthdcd[376]: controller.cpp:1565: НУ2: запуск двигателя (22.0 Гц)
Jun 13 17:30:58 smarthdcd[376]: controller.cpp:4308: нижний датчик положения неактивен
Jun 13 17:30:58 smarthdcd[376]: controller.cpp:3620: верхний датчик положения активен
Jun 13 17:30:58 smarthdcd[376]: controller.cpp:1602: НУ1: останов двигателя (нормальный)
Jun 13 17:30:58 smarthdcd[376]: controller.cpp:1602: НУ2: останов двигателя (нормальный)
Jun 13 17:30:59 smarthdcd[376]: controller.cpp:3753: верхний датчик положения неактивен
Jun 13 17:30:59 smarthdcd[376]: controller.cpp:4228: нижний датчик положения активен
Jun 13 17:30:59 smarthdcd[376]: Сброс счетчика АПВ
Jun 13 17:30:59 smarthdcd[376]: Сброс счетчика АПВ НУ1
Jun 13 17:30:59 smarthdcd[376]: Сброс счетчика АПВ НУ2
Jun 13 17:30:59 smarthdcd[376]: controller.cpp:1565: НУ1: запуск двигателя (22.0 Гц)
Jun 13 17:30:59 smarthdcd[376]: controller.cpp:1565: НУ2: запуск двигателя (22.0 Гц)
Jun 13 17:31:00 smarthdcd[376]: controller.cpp:4308: нижний датчик положения неактивен
Jun 13 17:31:00 smarthdcd[376]: controller.cpp:3620: верхний датчик положения активен
Jun 13 17:31:00 smarthdcd[376]: controller.cpp:1602: НУ1: останов двигателя (нормальный)
Jun 13 17:31:00 smarthdcd[376]: controller.cpp:1602: НУ2: останов двигателя (нормальный)
Jun 13 17:31:01 smarthdcd[376]: controller.cpp:3753: верхний датчик положения неактивен
Jun 13 17:31:01 smarthdcd[376]: controller.cpp:4228: нижний датчик положения активен
Jun 13 17:31:01 smarthdcd[376]: Сброс счетчика АПВ
Jun 13 17:31:01 smarthdcd[376]: Сброс счетчика АПВ НУ1
Jun 13 17:31:01 smarthdcd[376]: Сброс счетчика АПВ НУ2
Jun 13 17:31:01 smarthdcd[376]: controller.cpp:1565: НУ1: запуск двигателя (22.0 Гц)
Jun 13 17:31:01 smarthdcd[376]: controller.cpp:1565: НУ2: запуск двигателя (22.0 Гц)
Jun 13 17:31:02 smarthdcd[376]: controller.cpp:4308: нижний датчик положения неактивен
Jun 13 17:31:05 smarthdcd[376]: controller.cpp:3620: верхний датчик положения активен
Jun 13 17:31:05 smarthdcd[376]: controller.cpp:1602: НУ1: останов двигателя (нормальный)
Jun 13 17:31:05 smarthdcd[376]: controller.cpp:1602: НУ2: останов двигателя (нормальный)
Jun 13 17:31:05 smarthdcd[376]: controller.cpp:3753: верхний датчик положения неактивен
Jun 13 17:31:06 smarthdcd[376]: controller.cpp:4228: нижний датчик положения активен
Jun 13 17:31:06 smarthdcd[376]: Сброс счетчика АПВ
Jun 13 17:31:06 smarthdcd[376]: Сброс счетчика АПВ НУ1
Jun 13 17:31:06 smarthdcd[376]: Сброс счетчика АПВ НУ2
Jun 13 17:31:06 smarthdcd[376]: controller.cpp:1565: НУ1: запуск двигателя (22.0 Гц)
Jun 13 17:31:06 smarthdcd[376]: controller.cpp:1565: НУ2: запуск двигателя (22.0 Гц)
Jun 13 17:31:06 smarthdcd[376]: controller.cpp:4308: нижний датчик положения неактивен
Jun 13 17:31:07 smarthdcd[376]: controller.cpp:3620: верхний датчик положения активен
Jun 13 17:31:07 smarthdcd[376]: controller.cpp:1602: НУ1: останов двигателя (нормальный)
Jun 13 17:31:07 smarthdcd[376]: controller.cpp:1602: НУ2: останов двигателя (нормальный)
Jun 13 17:31:07 smarthdcd[376]: controller.cpp:3753: верхний датчик положения неактивен
Jun 13 17:31:08 smarthdcd[376]: controller.cpp:4228: нижний датчик положения активен
Jun 13 17:31:08 smarthdcd[376]: Сброс счетчика АПВ
Jun 13 17:31:08 smarthdcd[376]: Сброс счетчика АПВ НУ1
Jun 13 17:31:08 smarthdcd[376]: Сброс счетчика АПВ НУ2
Jun 13 17:31:08 smarthdcd[376]: controller.cpp:1565: НУ1: запуск двигателя (22.0 Гц)
Jun 13 17:31:08 smarthdcd[376]: controller.cpp:1565: НУ2: запуск двигателя (22.0 Гц)
Jun 13 17:31:08 smarthdcd[376]: controller.cpp:4308: нижний датчик положения неактивен
Jun 13 17:31:09 smarthdcd[376]: controller.cpp:3620: верхний датчик положения активен
Jun 13 17:31:09 smarthdcd[376]: controller.cpp:1602: НУ1: останов двигателя (нормальный)
Jun 13 17:31:09 smarthdcd[376]: controller.cpp:1602: НУ2: останов двигателя (нормальный)
Jun 13 17:31:09 smarthdcd[376]: controller.cpp:3753: верхний датчик положения неактивен
Jun 13 17:31:10 smarthdcd[376]: controller.cpp:4228: нижний датчик положения активен
Jun 13 17:31:10 smarthdcd[376]: Сброс счетчика АПВ
Jun 13 17:31:10 smarthdcd[376]: Сброс счетчика АПВ НУ1
Jun 13 17:31:10 smarthdcd[376]: Сброс счетчика АПВ НУ2
Jun 13 17:31:10 smarthdcd[376]: controller.cpp:1565: НУ1: запуск двигателя (22.0 Гц)
Jun 13 17:31:10 smarthdcd[376]: controller.cpp:1565: НУ2: запуск двигателя (22.0 Гц)
Jun 13 17:31:11 smarthdcd[376]: controller.cpp:4308: нижний датчик положения неактивен
Jun 13 17:31:11 smarthdcd[376]: controller.cpp:3620: верхний датчик положения активен
Jun 13 17:31:11 smarthdcd[376]: controller.cpp:1602: НУ1: останов двигателя (нормальный)
Jun 13 17:31:11 smarthdcd[376]: controller.cpp:1602: НУ2: останов двигателя (нормальный)
Jun 13 17:31:12 smarthdcd[376]: controller.cpp:3753: верхний датчик положения неактивен
Jun 13 17:31:12 smarthdcd[376]: controller.cpp:4228: нижний датчик положения активен
Jun 13 17:31:12 smarthdcd[376]: Сброс счетчика АПВ
Jun 13 17:31:12 smarthdcd[376]: Сброс счетчика АПВ НУ1
Jun 13 17:31:12 smarthdcd[376]: Сброс счетчика АПВ НУ2
Jun 13 17:31:12 smarthdcd[376]: controller.cpp:1565: НУ1: запуск двигателя (22.0 Гц)
Jun 13 17:31:12 smarthdcd[376]: controller.cpp:1565: НУ2: запуск двигателя (22.0 Гц)
Jun 13 17:31:13 smarthdcd[376]: controller.cpp:4308: нижний датчик положения неактивен
Jun 13 17:31:14 smarthdcd[376]: controller.cpp:3620: верхний датчик положения активен
Jun 13 17:31:14 smarthdcd[376]: controller.cpp:1602: НУ1: останов двигателя (нормальный)
Jun 13 17:31:14 smarthdcd[376]: controller.cpp:1602: НУ2: останов двигателя (нормальный)
Jun 13 17:31:14 smarthdcd[376]: controller.cpp:3753: верхний датчик положения неактивен
Jun 13 17:31:15 smarthdcd[376]: controller.cpp:4228: нижний датчик положения активен
Jun 13 17:31:15 smarthdcd[376]: Сброс счетчика АПВ
Jun 13 17:31:15 smarthdcd[376]: Сброс счетчика АПВ НУ1
Jun 13 17:31:15 smarthdcd[376]: Сброс счетчика АПВ НУ2
Jun 13 17:31:15 smarthdcd[376]: controller.cpp:1565: НУ1: запуск двигателя (22.0 Гц)
Jun 13 17:31:15 smarthdcd[376]: controller.cpp:1565: НУ2: запуск двигателя (22.0 Гц)
Jun 13 17:31:16 smarthdcd[376]: controller.cpp:4308: нижний датчик положения неактивен
Jun 13 17:31:16 smarthdcd[376]: Настройка 'Приоритет при НУ1 и НУ2 авто' изменена: 'НУ2' --> 'НУ1'
Jun 13 17:31:16 smarthdcd[376]: controller.cpp:3620: верхний датчик положения активен
Jun 13 17:31:16 smarthdcd[376]: controller.cpp:1602: НУ1: останов двигателя (нормальный)
Jun 13 17:31:16 smarthdcd[376]: controller.cpp:1602: НУ2: останов двигателя (нормальный)
Jun 13 17:31:17 smarthdcd[376]: controller.cpp:3753: верхний датчик положения неактивен
Jun 13 17:31:18 smarthdcd[376]: controller.cpp:4228: нижний датчик положения активен
Jun 13 17:31:18 smarthdcd[376]: Настройка 'selectedDrive2' изменена: 'Выбран' --> 'Не выбран'
Jun 13 17:31:18 smarthdcd[376]: Настройка 'freqDrive1' изменена: 22.00 --> 50.00

При ЧК=6 было выполнено 11 ходов за полминуты, что должно было привести к необходимому снижению производительности, отключению одной из НУ, после того как мы уперлись в минимальную частоту 22Гц! Однако этого не происходило, пока я не поменял приоритет с НУ2, находящейся в "авто", на НУ1 находящейся в режиме "вкл".

Т.е. постановка приоритета на НУ или ЭК, находящийся в режиме "авт", уравнивает с режимом "вкл"... Ну и, видимо, контроллер не понимает, что отключить - тот что "вкл" но без приоритета, или тот что "авто" но с приоритетом?! И оставляет в работе оба!

Ожидалось, что останется только тот что "вкл", т.к. уставка приоритета должна действовать только когда оба устройства в "авт" режиме, в соответствии с ее наименованием "Прироритет при НУ1(ЭК1) и НУ2(ЭК2) авто".

in reply to:  3 comment:4 by alx, 6 лет ago

Replying to Art_M:

Ребята, я же написал, что проблема не в том, что "не включен в работу", а в том что "не исключен из работы"...

Прошу прощения, оговорился. :) Я хотел уточнения, когда по твоему мнению должен был быть выключен из работы ЭК2, но этого не произошло.

comment:5 by alx, 6 лет ago

В виду отсутствия уточнений буду считать, что причиной проблемы было предположение, изложенное в comment:2.

comment:6 by alx, 6 лет ago

Владелец: установлено в alx
Решение: fixed
Состояние: newclosed

In 769/smartHDC:

Исправлена ошибка: если один ЭК находился в режиме "вкл", а другой в редиме "авто",
при снижении производительности в рамках подбора числа качаний приоритет ЭК ошибочно
определялся настройкой "Приоритет при ЭК1 и ЭК2 авто". Closes #211.

Note: See TracTickets for help on using tickets.