Opened 6 лет ago

Closed 6 лет ago

Last modified 6 лет ago

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

Неправильный шаг изменения частоты

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

Описание (последним изменил san)

Привод осуществлял снижение числа качаний с отображаемых на экране 2.3/мин, до заданных в настройках 2/мин

По ТЗ:

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

=(2.3-2.0)*10=3 Гц.
Т.е. согласно т.з, для достижения требуемого числа качаний привод должен был снизить частоту на 3 Гц. в следующий цикл.

Однако за время с 15:31 до 15:34 привод не уменьшил частоту на 3Гц, хотя было совершено несколько циклов.

r610
Конфиг: xchange\alx\SmartHDC\ticket116config.xml
Лог:xchange\alx\SmartHDC\ticket107messages.log
Динамограммы: xchange\alx\SmartHDC\

Вложения (1)

tune.log (74.5 KB ) - added by san 6 лет ago.

Download all attachments as: .zip

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

comment:1 by san, 6 лет ago

Краткое описание: Не правильный шаг изменения частотыНеправильный шаг изменения частоты

comment:2 by alx, 6 лет ago

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

Запись Настройка 'Максимальная частота двигателя 1' изменена говорит о том, что оператор привода ввел (через панель оператора или через веб-интерфейс или через шину modbus) новое значение настройки 'Максимальная частота двигателя 1' равное 35. К подбору числа качаний вообще и изменению частоты двигателя в частности эта запись не имеет никакого отношения.

comment:3 by san, 6 лет ago

Описание: изменено (отличие)
Решение: invalid
Состояние: closedreopened

Хм... это интересно. Я присутствовал при эксперименте, и не видел чтобы Артём через панель оператора изменял это значение и Артём это подтверждает, на мой взгляд маловероятно что кто-то поменял это значение в процессе эксперимента через веб морду. Мне кажется тут какаято ошибка, ты уверен что только действия оператора могут привести к появлению такой записи ?
Кроме того в приложенном файле конфига видно что диапазон частот 10..50 Гц. конфиг был скачан практически сразу после эксперимента, наверняка в логе можно найти запись о подключении флешки после 15:34 и скачивании конфига - так вот этот файл и приложен к тикету.

Давай так, пока выясняется откуда взялась эта надпись я переформулирую суть "претензии":
За время с 15:31 до 15:34 привод не уменьшил частоту на 3Гц, хотя по тз должен был

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

Replying to san:

ты уверен что только действия оператора могут привести к появлению такой записи ?

Хм... Сейчас уточню в коде... Проверил. 'Максимальная частота двигателя 1' - это именно настройка, которую устанавливает оператор. Я не нашел в коде мест, где бы она могла быть изменена без дейcтвий оператора.

Записи об изменении текущей выбранной частоты двигателей выглядят похоже, но название параметра будет 'freqDrive1' вместо 'Максимальная частота двигателя 1'.

comment:5 by alx, 6 лет ago

Я посмотрел лог более внимательно. Действительно, к нему есть вопросы. Во-первых, я заметил, что запись об изменении настройки 'Максимальная частота двигателя 1' каждый раз появляется в ту же секунду, что и срабатывание нижнего датчика положения при ходе вниз. Сложно представить, что эти изменения делал человек. В конфиг-файле значение этой настройки 50 Гц, что не соответствует последней записи в журнале. К сожалению, между завершением эксперимента и сохранением конфиг-файла на портативный носитель станция почему-то перезагрузилась. В то же время я еще раз пересмотрел код, и не обнаружил возможности для настройки 'Максимальная частота двигателя 1' измениться автоматически, без действий оператора...

comment:6 by san, 6 лет ago

А не может быть так, что запись в логе об изменении настройки 'Максимальная частота двигателя 1' появляется не по факту изменения настройки, а по какой-то другой причине?

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

Replying to san:

А не может быть так, что запись в логе об изменении настройки 'Максимальная частота двигателя 1' появляется не по факту изменения настройки, а по какой-то другой причине?

Нет, эту запись в журнал выводит оператор присваивания настройке нового значения.

comment:8 by san, 6 лет ago

эту запись в журнал выводит оператор присваивания

Т.е. только оператор присваивания и никто больше?

in reply to:  8 comment:9 by alx, 6 лет ago

Replying to san:

Т.е. только оператор присваивания и никто больше?

Да. Это и странно, так как в приложенном конфиг-файле сохранено вовсе не то значение, что в последнем выведенном сообщении...

Я сделал вывод в отдельный лог-файл из функции, корректирующей число качаний. Я думаю, он поможет выяснить, как и почему корректируются параметры производительности. Есть возможность повторить эксперимент с новой версией?

comment:10 by san, 6 лет ago

Возможность должна быть в начале следующей недели

comment:11 by alx, 6 лет ago

In 614/smartHDC:

Сделан вывод в специальный отладочный журнал из функции, выполняющей
подбор числа качаний. See #118.

comment:12 by san, 6 лет ago

Провёл новый эксперимент с r620, 7 ноября
Настройки:
Число качаний = 2.0
Диапазон частот 10 ... 50 Гц
(Конфиг скачать я забыл)

Лишних записей Настройка 'Максимальная частота двигателя 1' изменена в логе нет, есть запись только о том что Артем в ходе другого эксперимента менял макс. частоту 50->40 и обратно 40->50.

Начиная с 16-06 до 16-15 привод так и не дошел до заданного ч.к == 2.0, в 16-15 на экране динамограмм отображалось 2.1.
По т.з. шаг изменения частоты = (ч.к. - 2.0)*10
Однако при ч.к. в предыдущем цикле == 2.4 привод изменил частоту 50->47 (хотя должен был изменить на 4Гц)
при ч.к. 2.3: 47->45, затем 45->43, 43->41 (хотя должен был изменить на 3Гц)
при ч.к 2.2 привод изменял частоту на 1 Гц (хотя должен был изменить на 2Гц)
А при ч.к. 2.1 привод больше не изменял частоту (хотя должен был изменить на 1Гц).

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

in reply to:  12 comment:13 by alx, 6 лет ago

Replying to san:

Провёл новый эксперимент с r620, 7 ноября

Прикрепи, пожалуйста, к тикету файл /var/log/tune.log

comment:14 by san, 6 лет ago

К сожалению, контроллер почему-то не в сети, как получу доступ к нему - приложу.

by san, 6 лет ago

Вложение: tune.log added

comment:15 by san, 6 лет ago

Доступ восстановили, файл добавил.

in reply to:  12 comment:16 by alx, 6 лет ago

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

Replying to san:

Провёл новый эксперимент с r620, 7 ноября
лог: xchange\alx\SmartHDC\me07112018.log

Вот фрагмент лога эксперимента, проведенного 7 ноября (неинтересные строки пропустил):

Nov  7 16:06:42 smarthdcd[379]: config.cpp:174: Настройка 'Число качаний' изменена: 2.50 --> 2.00
Nov  7 16:07:04 smarthdcd[379]: controller.cpp:1373: НУ1: запуск двигателя (50.0 Гц)
Nov  7 16:07:27 smarthdcd[379]: config.cpp:174: Настройка 'freqDrive1' изменена: 50.00 --> 47.00
Nov  7 16:07:29 smarthdcd[379]: controller.cpp:1373: НУ1: запуск двигателя (47.0 Гц)

Из приведенного лога видно, что после изменения настройки числа качаний частота выбранного бвигателя НУ1 была уменьшена на 3 Гц (с 50 до 47).

comment:17 by san, 6 лет ago

частота НУ1 была уменьшена на 3 Гц (с 50 до 47).

Да, была, я это и указал в описании нового эксперимента(comment:12):

Однако при ч.к. в предыдущем цикле == 2.4 привод изменил частоту 50->47 (хотя должен был изменить на 4Гц)


Согласно ТЗ частота должна быть уменьшена на 4ГЦ.

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

(2.0-2.38)X10 = -3.8 Гц.

Nov 07 16:07:27 -------------------------------------------------------------
751	numSwing=2.38   ns=2.00 nsCorrection=-0.38      step=-3

И следующий шаг почему-то сделан 2ГЦ а не 3ГЦ, как предписывает ТЗ
(2.0-2.34)X10 = -3.4 Гц.

753	Nov 07 16:07:53 -------------------------------------------------------------
758	ПП: freqDrive1=47.00    freqDrive2=50.00
759	numSwing=2.34   ns=2.00 nsCorrection=-0.34      step=-2
760	action: уменьшаем freqDrive1 и freqDrive2 (асинхронно)

in reply to:  17 comment:18 by alx, 6 лет ago

Replying to san:

И следующий шаг почему-то сделан 2ГЦ а не 3ГЦ, как предписывает ТЗ
(2.0-2.34)X10 = -3.4 Гц.

Там была ошибка (не совсем честное округление), приводившая к неверному результату в случае отрицательного значения коррекции, поэтому было 2 Гц вместо 3 Гц. Она уже исправлена.

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

comment:19 by san, 6 лет ago

Ну так, в общем-то, в этом и была претензия: "Неправильный шаг изменения частоты", даже тикет так называется :)

Думаю стоит закрыть его как фиксед, в таком случае.

comment:20 by alx, 6 лет ago

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

Да, в кратком описании говорится о неправильном шаге. А вот в полном описании говорится об отсутствии уменьшения частоты, что я и пытался анализировать... :)

comment:21 by alx, 6 лет ago

Решение: сделано
Состояние: reopenedclosed

Исправлено в r632.

comment:22 by san, 6 лет ago

Привод не уменьшил частоту на 3Гц

не говорит о том что привод вообще не уменьшил частоту :)
В первый раз, просто лог эксперимента был странным, а в новом эксперименте comment:12 уже стало понятно, что шаги с ошибкой.

in reply to:  22 comment:23 by alx, 6 лет ago

Replying to san:

Привод не уменьшил частоту на 3Гц

не говорит о том что привод вообще не уменьшил частоту :)

Согласен. Формально все правильно. :) Но я (формально ошибочно) понял суть жалобы как отсутствие уменьшения частоты. К тому же в новом эксперименте частота уменьшилась как раз на 3 Гц (что, вот досада, именно в новом эксперименте было неправильно)... :)

Note: See TracTickets for help on using tickets.