Opened 5 лет ago

Last modified 5 лет ago

#189 reopened улучшение

Определение начала и конца при записи динамограммы

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

Описание

Артём предлагает внести в ТЗ изменения:

Добавить уставку отвечающую за точки старта и стопа записи динамограммы при ходе вверх, например в настройках журнала рядом с уставкой "запись динамограммы в крайних точках" добавить "Запись динамограммы при ходе вверх" с возможностью выбрать "по обратной связи ЧРП" или "по дискретным выходам"

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

comment:1 by san, 5 лет ago

Я против лишней настройки, предлагаю использовать то что придумал Алексей - конец хода вверх ДГ определять как "время когда была отправлена команда стоп" + "время торможения" из настроек, если же торможение "свободным выбег", то в качестве времени торможения использовать константу(думаю что подобрать её не сложно).
Начало хода вверх ДГ договорились определять по моменту отправки команды "Пуск".

in reply to:  1 comment:2 by andrei, 5 лет ago

Replying to san:

Я против лишней настройки, предлагаю использовать то что придумал Алексей - конец хода вверх ДГ определять как "время когда была отправлена команда стоп" + "время торможения" из настроек, если же торможение "свободным выбег", то в качестве времени торможения использовать константу(думаю что подобрать её не сложно).

Или (начало открытия ЭК), что наступит раньше.

Начало хода вверх ДГ договорились определять по моменту отправки команды "Пуск".

+1

А нижний массив пишется в то время, когда открыт любой из ЭК.

comment:3 by san, 5 лет ago

Или (начало открытия ЭК), что наступит раньше.

А может не надо ?

А нижний массив пишется в то время, когда открыт любой из ЭК.

Там немного сложнее, приведу полный текст условия, которое сейчас используем:

Движением вверх считается время когда хотя бы один из двигателей крутится.
При настройке "Запись в динамограммы в паузах в крайних точках" в значении “вкл.” движением вниз считается время от момента остановки в верхней точке до момента следующего начала движения вверх. При настройке "Запись в динамограммы в паузах в крайних точках" в значении “выкл.” движением вниз считается время с момента открытия одного из ЭК до момента закрытия всех ЭК.

in reply to:  3 comment:4 by andrei, 5 лет ago

Replying to san:

Или (начало открытия ЭК), что наступит раньше.

А может не надо ?

Думаю что так будет правильно.

А нижний массив пишется в то время, когда открыт любой из ЭК.

Там немного сложнее, приведу полный текст условия, которое сейчас используем:

Движением вверх считается время когда хотя бы один из двигателей крутится.
При настройке "Запись в динамограммы в паузах в крайних точках" в значении “вкл.” движением вниз считается время от момента остановки в верхней точке до момента следующего начала движения вверх. При настройке "Запись в динамограммы в паузах в крайних точках" в значении “выкл.” движением вниз считается время с момента открытия одного из ЭК до момента закрытия всех ЭК.

Это не вызывает чувства противоречия.

comment:5 by san, 5 лет ago

Переформулировал.
Артем, жду твоего одобрения и значения константы.

Началом движения вверх считается момент подачи команды ПУСК на хотя бы один из двигателей.

Конец движения вверх ДГ определяется как "момент когда была отправлена команда СТОП" + (наибольшее из значений "Время торможения двигателя" тех НУ которые были включены), если же торможение "свободным выбегом", то в качестве "времени торможения" использовать константу(какую?). Если в течении движения вверх был открыт один из ЭК - считать движение вверх законченным.

При настройке "Запись в динамограммы в паузах в крайних точках" в значении “вкл.” движением вниз считается время от конца движения вверх до момента следующего начала движения вверх. При настройке "Запись в динамограммы в паузах в крайних точках" в значении “выкл.” движением вниз считается время с момента открытия одного из ЭК до момента закрытия всех ЭК.

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

Константу подобрать затрудняюсь:

  1. Останавливать силой мотор мы не можем без тормозного резистора, т.е. время торможения не должно устанавливаться меньше, чем если бы он останавливался при "свободном выбеге", иначе авария превышения напряжения при торможении.
  2. Соответственно при необходимости быстрой остановки пользуемся "свободным выбегом", т.к. этот способ самый быстрый без возникновения аварии по превышению напряжения при торможении (если вдруг нагрузка снизилась).
  3. Скорость остановки при "свободном выбеге" зависит от скорости вращения и нагрузки на валу (что соответствует нагрузке на штоке). Меньше нагрузка и больше скорость вращения - длительнее остановка мотора, и наоборот. Время остановки маховика зависит от начальной скорости его вращения и приложенной к нему нагрузки.

Replying to san:

в качестве времени торможения использовать константу(думаю что подобрать её не сложно).

Подобрать вместо переменной константу? Хм...
Саша, а ну-ка подбери константу времени остановки колеса велосипеда раскрученного до скорости от 300об/мин до 2400об/мин, если оно может крутиться в воздухе или полностью или частично в воде? ... Вот что сосчитаешь поделим на 1000 и подставим сюда %)... Как теперь думашь, сложно или нет?

Приходят в голову только такие варианты:

  1. Можно рассмотреть такой вариант, если есть сигнал от ЧРП в момент срабатывания верхнего датчика пользоваться этим сигналом до момента ЭК, что наступит ранее (как сейчас и есть) . А если в момент срабатывания нет сигнала, то тогда уставкой торможения, а если она в "свободном выбеге", то уже тогда настраиваемой или ненастраиваемой константой.
  2. Если вар.1 это сложно, то как вар.2 - плевать на обратную связь и сделать как Вы предлагаете по времени торможения, а при свободном выбеге по установленному значению, только сделать это значение настраиваемым.
  3. Ну и напоследок вар.3 давайте пока примем значение от балды 0,2сек. Только ежели чего "не попрет", то будем потом периодически привлекать Алексея для "тюнинга" этого значения или самого алгоритма в прошивке.

Что думаете?

comment:7 by san, 5 лет ago

Саша, а ну-ка подбери константу

Я имел в виду подбор опытным путём - поэксперементировать с остановкой при разной нагрузке и выбрать наиболее подходящее значение.

comment:8 by alx, 5 лет ago

Ребята, вот вы тут, как я вижу, обсуждаете какие-то миллисекунды (0.15 сек, 0.2 сек...) для расчета времени остановки двигателя, когда нет связи с ЧРП. Обращаю ваше внимание на то, что когда связь есть, период опроса скорости двигателя вряд ли будет сильно меньше 0.5 сек. Не думаю, что есть смысл обсуждать временные различия меньше 0.5 сек...

comment:9 by san, 5 лет ago

Не думаю, что есть смысл обсуждать временные различия меньше 0.5 сек.

Согласен

настраиваемым.

Артём, кому нужны эти настройки? только тебе для экспериментов? если так подбери значение и забъем его гвоздями в код, зачем усложнять настройку станции...

comment:10 by Art_M, 5 лет ago

Почему обсуждаем только 2-ой и 3-ий варианты, почему не обсуждаем 1-ый вариант?

Ладно, черт с ним, давайте не будем тратить время на плёвые вопросы, поставим каких-нибудь 0,4сек, а тонким тюнингом займемся потом...

comment:11 by san, 5 лет ago

1-ый вариант?

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

черт с ним,

Артём, делаем так?


Началом движения вверх считается момент подачи команды ПУСК на хотя бы один из двигателей.
Конец движения вверх ДГ определяется как "момент когда была отправлена команда СТОП" + (наибольшее из значений "Время торможения двигателя" тех НУ которые были включены), если же торможение "свободным выбегом", то в качестве "времени торможения" использовать константу 0.4 сек. Если в течении движения вверх был открыт один из ЭК - считать движение вверх законченным.
При настройке "Запись в динамограммы в паузах в крайних точках" в значении “вкл.” движением вниз считается время от конца движения вверх до момента следующего начала движения вверх. При настройке "Запись в динамограммы в паузах в крайних точках" в значении “выкл.” движением вниз считается время с момента открытия одного из ЭК до момента закрытия всех ЭК.


Алексей, Андрей, есть ещё вопросы или что-то непонятное в предложенных изменениях?

comment:12 by andrei, 5 лет ago

Все так, реализуем.

Небольшое уточнение для последней фразы - движением вниз считается время с момента открытия ЛЮБОГО из ЭК до момента закрытия всех ЭК. (ну чтобы не думать одного из скольки и какого именно)

comment:13 by Art_M, 5 лет ago

Делаем-делаем... Думать будем по результатам опытной эксплуатации по новым алгоритмам, т.е. после того как увидим динамограммы со скважины ...

comment:14 by san, 5 лет ago

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

Внёс текст в тз.

comment:15 by alx, 5 лет ago

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

comment:16 by san, 5 лет ago

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

Т.к. Алексей, не видел сути предложенного и а теперь опечален, предлагаю продолжить обсуждение, изменения из тз. убрал.

comment:17 by andrei, 5 лет ago

Этап разработки: 1-я очередь2-я очередь
Note: See TracTickets for help on using tickets.