#118 closed баг (сделано)
Неправильный шаг изменения частоты
Сообщил: | san | Владелец: | alx |
---|---|---|---|
Приоритет: | средний | Этап разработки: | 1-я очередь |
Ключевые слова: | Копия: |
Описание (последним изменил )
Привод осуществлял снижение числа качаний с отображаемых на экране 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)
История изменений (24)
comment:1 by , 6 лет ago
Краткое описание: | Не правильный шаг изменения частоты → Неправильный шаг изменения частоты |
---|
следующий: 4 comment:3 by , 6 лет ago
Описание: | изменено (отличие) |
---|---|
Решение: | invalid |
Состояние: | closed → reopened |
Хм... это интересно. Я присутствовал при эксперименте, и не видел чтобы Артём через панель оператора изменял это значение и Артём это подтверждает, на мой взгляд маловероятно что кто-то поменял это значение в процессе эксперимента через веб морду. Мне кажется тут какаято ошибка, ты уверен что только действия оператора могут привести к появлению такой записи ?
Кроме того в приложенном файле конфига видно что диапазон частот 10..50 Гц. конфиг был скачан практически сразу после эксперимента, наверняка в логе можно найти запись о подключении флешки после 15:34 и скачивании конфига - так вот этот файл и приложен к тикету.
Давай так, пока выясняется откуда взялась эта надпись я переформулирую суть "претензии":
За время с 15:31 до 15:34 привод не уменьшил частоту на 3Гц, хотя по тз должен был
comment:4 by , 6 лет ago
Replying to san:
ты уверен что только действия оператора могут привести к появлению такой записи ?
Хм... Сейчас уточню в коде... Проверил. 'Максимальная частота двигателя 1' - это именно настройка, которую устанавливает оператор. Я не нашел в коде мест, где бы она могла быть изменена без дейcтвий оператора.
Записи об изменении текущей выбранной частоты двигателей выглядят похоже, но название параметра будет 'freqDrive1' вместо 'Максимальная частота двигателя 1'.
comment:5 by , 6 лет ago
Я посмотрел лог более внимательно. Действительно, к нему есть вопросы. Во-первых, я заметил, что запись об изменении настройки 'Максимальная частота двигателя 1' каждый раз появляется в ту же секунду, что и срабатывание нижнего датчика положения при ходе вниз. Сложно представить, что эти изменения делал человек. В конфиг-файле значение этой настройки 50 Гц, что не соответствует последней записи в журнале. К сожалению, между завершением эксперимента и сохранением конфиг-файла на портативный носитель станция почему-то перезагрузилась. В то же время я еще раз пересмотрел код, и не обнаружил возможности для настройки 'Максимальная частота двигателя 1' измениться автоматически, без действий оператора...
следующий: 7 comment:6 by , 6 лет ago
А не может быть так, что запись в логе об изменении настройки 'Максимальная частота двигателя 1' появляется не по факту изменения настройки, а по какой-то другой причине?
comment:7 by , 6 лет ago
Replying to san:
А не может быть так, что запись в логе об изменении настройки 'Максимальная частота двигателя 1' появляется не по факту изменения настройки, а по какой-то другой причине?
Нет, эту запись в журнал выводит оператор присваивания настройке нового значения.
следующий: 9 comment:8 by , 6 лет ago
эту запись в журнал выводит оператор присваивания
Т.е. только оператор присваивания и никто больше?
comment:9 by , 6 лет ago
Replying to san:
Т.е. только оператор присваивания и никто больше?
Да. Это и странно, так как в приложенном конфиг-файле сохранено вовсе не то значение, что в последнем выведенном сообщении...
Я сделал вывод в отдельный лог-файл из функции, корректирующей число качаний. Я думаю, он поможет выяснить, как и почему корректируются параметры производительности. Есть возможность повторить эксперимент с новой версией?
следующие: 13 16 comment:12 by , 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
comment:13 by , 6 лет ago
comment:14 by , 6 лет ago
К сожалению, контроллер почему-то не в сети, как получу доступ к нему - приложу.
comment:16 by , 6 лет ago
Решение: | → invalid |
---|---|
Состояние: | reopened → closed |
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).
следующий: 18 comment:17 by , 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 (асинхронно)
comment:18 by , 6 лет ago
Replying to san:
И следующий шаг почему-то сделан 2ГЦ а не 3ГЦ, как предписывает ТЗ
(2.0-2.34)X10 = -3.4 Гц.
Там была ошибка (не совсем честное округление), приводившая к неверному результату в случае отрицательного значения коррекции, поэтому было 2 Гц вместо 3 Гц. Она уже исправлена.
comment:19 by , 6 лет ago
Ну так, в общем-то, в этом и была претензия: "Неправильный шаг изменения частоты", даже тикет так называется :)
Думаю стоит закрыть его как фиксед, в таком случае.
comment:20 by , 6 лет ago
Решение: | invalid |
---|---|
Состояние: | closed → reopened |
Да, в кратком описании говорится о неправильном шаге. А вот в полном описании говорится об отсутствии уменьшения частоты, что я и пытался анализировать... :)
следующий: 23 comment:22 by , 6 лет ago
Привод не уменьшил частоту на 3Гц
не говорит о том что привод вообще не уменьшил частоту :)
В первый раз, просто лог эксперимента был странным, а в новом эксперименте comment:12 уже стало понятно, что шаги с ошибкой.
comment:23 by , 6 лет ago
Replying to san:
Привод не уменьшил частоту на 3Гц
не говорит о том что привод вообще не уменьшил частоту :)
Согласен. Формально все правильно. :) Но я (формально ошибочно) понял суть жалобы как отсутствие уменьшения частоты. К тому же в новом эксперименте частота уменьшилась как раз на 3 Гц (что, вот досада, именно в новом эксперименте было неправильно)... :)
Запись
Настройка 'Максимальная частота двигателя 1' изменена
говорит о том, что оператор привода ввел (через панель оператора или через веб-интерфейс или через шину modbus) новое значение настройки 'Максимальная частота двигателя 1' равное 35. К подбору числа качаний вообще и изменению частоты двигателя в частности эта запись не имеет никакого отношения.