1

Тема: Управление двигателем заслонки

Добрый день, стоит задача организовать управление двигателем постоянного тока дполнительной дроссельной заслонки.
Из CAN считываем - скорость авто, обороты двигателя, нажатие педали сцепления и наполнение (наддув).
У заслонки 2 датчика Холла, которые определяют положение заслонки (питание 5В, на выходе значения от 0,4 до 4,8В, при движении зачлонки на выходе одного датчика напряжение растет, а на выходе другого падает).
Получается нужно 2 АЦП принимающие сигнал до 5В.
Для точного позиционирования нужно управление двигателем по ШИМ с разрешением 500 мкс, с возможностью изменения полярности. Электрические параметры двигателя 0-14В, 0-11А.
Также хотелось бы организовать отслеживание ошибок заслонки - например заклинивание вала, отклонение в скорости достижения заданного положения.

Я рассмотрел контроллеры 7, 7 duo, 5.3MD1 и 5MD2. 7 и 7 duo не позволяют питать мотор с таким током. У 7 нет АЦП, а у 7 duo он 1. 5.3MD1 имеет 1 АЦП, но смущает время работы под нагрузкой в 10А. 5MD2 имеет 1 АЦП и вроде как лучше справляется с нагрузкой в 10 А. 5MD2 имеет 2 входа для работы с датчиками оборотов, можно ли их приспособить для работы с датчиками Холла положения заслонки?

Пока в голову пришла такая идея - использовать 7 duo для чтения CAN и организации логики PID. То есть читаем CAN, считываем сигнал с 1 датчика Холла заслонки и выдаем сигналы для управления. 5MD2 считывает данные со второго даички Холла и передает цифровое значение на 7 duo, от 7 duo принимает сигналы управления и обеспечивает силовое питание мотора через ШИМ. Возможно, производительности 5MD2 хватит для моей задачи и 7 duo мне не нужен?

Подскажите как лучше реализовать мою задачу на базе ваших решений.

2

Re: Управление двигателем заслонки

Возможно решение удастся построить на базе  CANNY 5 Nano + силовые ключи (по сути модифицированный вариант MD2) если хватит быстродействия, так как у него достаточное кол-во ВЧ ШИМ и АЦП.

Каков требуемый период дискретизации PID?
Каково необходимое разрешение АЦП?

3

Re: Управление двигателем заслонки

Частота пид должна быть порядка 1кгц, ацп достаточно 10 бит. Д составляющая не нужна, достаточно ПИ регулятора. И составляющую нужно обязательно ограничивать.
Если реализовать совсем по простому, без аварийных режимов и суб каналов и без проверок то быстродействия может быть хватит.
И надо обязательно проводить калибровку конечных положений. Так же есть нюансы с домашним положением, но если скорость движения заслонки ограничить то должно работать без особых артефактов.

4

Re: Управление двигателем заслонки

Константин, CANNY пишет:

Возможно решение удастся построить на базе  CANNY 5 Nano + силовые ключи (по сути модифицированный вариант MD2) если хватит быстродействия, так как у него достаточное кол-во ВЧ ШИМ и АЦП.

Каков требуемый период дискретизации PID?
Каково необходимое разрешение АЦП?

Думаю, что 100 Гц будет достаточно, разрешения АЦП достаточно 8-10 бит.

Сколько стоит Canny 5 MD2? Просто там силовые ключи нормальные. Единственная проблема - это 1 АЦП.
Какой чип стоит в 5 nano? Хватит ли его для чтения CAN пакетов и расчета pid функции?

5

Re: Управление двигателем заслонки

qwerty095 пишет:

Частота пид должна быть порядка 1кгц, ацп достаточно 10 бит. Д составляющая не нужна, достаточно ПИ регулятора. И составляющую нужно обязательно ограничивать.
Если реализовать совсем по простому, без аварийных режимов и суб каналов и без проверок то быстродействия может быть хватит.
И надо обязательно проводить калибровку конечных положений. Так же есть нюансы с домашним положением, но если скорость движения заслонки ограничить то должно работать без особых артефактов.

Думаю, что действительно можно обойтись пропорциональной и интегральной функциями, что существенно снизит вычислительную нагрузку. Что касается аварийных режимов, то все же хотелось бы иметь простейшую проверку, для выявления заклинивания заслонки, например.

Сама заслонка нормально открыта. Это байпас по сути, а не дроссель, то есть на холостых он полностью открыт и прикрывается только при увеличении оборотов. Сначала думал инвертировать на этом байпасе положение основного дросселя, но, думается, это будет сложнее в настройке. Но по смыслу этот байпас следует инверсно за основным дросселем имея дополнительные ограничения. Все это нужно для отстройки наддува по передачам и организации карты наддува, фактически - это бустконтроллер по передачам.

6

Re: Управление двигателем заслонки

Что за автомобиль?
Управление байпасом куда более сложная процедура нежеле то что вы описываете.
Тут надо строить уже полноценный буст контроллер где будет задаваться целевое давление 3д поверхностью от дроссель/обороты, целевое положение байпаса кривой от целевого давления и два ПИ регулятора, один из которых контроллирует заданное положение дросселя.

7

Re: Управление двигателем заслонки

qwerty095 пишет:

Что за автомобиль?
Управление байпасом куда более сложная процедура нежеле то что вы описываете.
Тут надо строить уже полноценный буст контроллер где будет задаваться целевое давление 3д поверхностью от дроссель/обороты, целевое положение байпаса кривой от целевого давления и два ПИ регулятора, один из которых контроллирует заданное положение дросселя.

Mazda MX5 с компрессором TVS R900. Так и планируется сделать бустконтроллер по факту. По CAN читаем обороты и скорость, а также наполнение и нажатие сцепления, через АЦП узнаем положение заслонки байпаса, по оборотам и скорости считаем текущую передачу, а нажатие сцепления нужно чтоб корректно рассчитываеть передачу. Передачи нужны для ограничения буста по передачам. То есть байпас должен работать так - на холостых он открыт и воздух идет в обход компрессора, нажимаем газ и байпас прикрывается, избыток растет, как достигает ограничения, то байпас приоткрывается  и стравливает давления до целевого, бросаешь газ - байпас открывается и стравливает давление.

8

Re: Управление двигателем заслонки

Обычно идут куда более простым путем.
Байпас с пневмоприводом.
Схема такая: дроссельная заслонка -> компрессор -> впускной коллектор = профит.
Вход выход компрессора соеденен байпасом с пневмоприводом (ваккуумный актуатор).
Если хотят больше профита то между компрессором и коллектором жидкостный интеркулер ставят.
Все регулирование осуществляется дросселем перед компрессором.
Гибкого управления бустом конечно же нет, только перманентно шкивами.

С такой задачей как поставили вы нужен специализированный контроллер позволяющий его настраивать онлайн.
Здесь не место для рекламы, по этому без конкретики.

9

Re: Управление двигателем заслонки

qwerty095 пишет:

Обычно идут куда более простым путем.
Байпас с пневмоприводом.
Схема такая: дроссельная заслонка -> компрессор -> впускной коллектор = профит.
Вход выход компрессора соеденен байпасом с пневмоприводом (ваккуумный актуатор).
Если хотят больше профита то между компрессором и коллектором жидкостный интеркулер ставят.
Все регулирование осуществляется дросселем перед компрессором.
Гибкого управления бустом конечно же нет, только перманентно шкивами.

С такой задачей как поставили вы нужен специализированный контроллер позволяющий его настраивать онлайн.
Здесь не место для рекламы, по этому без конкретики.

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

Но пришла мысль организовать бустконтроллер с управляемой байпасной заслонкой, вот изучаю варианты реализации. По идее pid функция должна иметь целевым значением избыток, заданный для соответствующей передачи, но несколько не ясно как увязать в одном контроллере обратную связь по избытку и по положению заслонки.

10

Re: Управление двигателем заслонки

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

11

Re: Управление двигателем заслонки

AlexT пишет:

Думаю, что 100 Гц будет достаточно, разрешения АЦП достаточно 8-10 бит.
...
Какой чип стоит в 5 nano? Хватит ли его для чтения CAN пакетов и расчета pid функции?

Canny 5 MD2 построен на базе Canny 5 nano. Его быстродействие существенно уступает более новым моделям контроллеров, но в частоту 100 Гц можно попробовать вписаться. К слову Canny 5.3 MD1 в несколько раз более быстрый при той же компонентной базе силовой части.

12

Re: Управление двигателем заслонки

100 герц на заслонку мало. Время цикла пид должно быть 1, макс 2мсек. И чем меньше заслонка тем меньше инерционных масс и тем быстрее должен реагировать алгоритм.
Для пид буста время цикла 10..20мсек нормально.

13

Re: Управление двигателем заслонки

qwerty095 пишет:

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

Я пока не очень понимаю как должна выглядеть пид функция где целевое значение избыток зависящий от передачи, но кроме обратной связи по датчику давления у нас есть датчики положения заслонки. Обратная полярность для мотора выходит не нужна так как заслонка подпружинена и для возврата в исходное положение достаточно выключить мотор. Во всей этой системе у нас нет четкого соответствия избытка к положению заслонки, ведь на разных оборотах будет разная производительность компрессора и для удержания целевого давления нужно будет разное положение заслонки.
Думаю, заметно, что я не сталкивался с PID дросселей, поэтому вопросы у меня дурацикие. Но есть желание разобраться и оценить сложность задачи, чтоб выбрать адекватную реализацию

14

Re: Управление двигателем заслонки

Константин, CANNY пишет:
AlexT пишет:

Думаю, что 100 Гц будет достаточно, разрешения АЦП достаточно 8-10 бит.
...
Какой чип стоит в 5 nano? Хватит ли его для чтения CAN пакетов и расчета pid функции?

Canny 5 MD2 построен на базе Canny 5 nano. Его быстродействие существенно уступает более новым моделям контроллеров, но в частоту 100 Гц можно попробовать вписаться. К слову Canny 5.3 MD1 в несколько раз более быстрый при той же компонентной базе силовой части.

Но CANNY 5.3 MD1 греется под нагрузкой. Это не станет проблемой? Напомню электрические параметры мотора - 0-14 В до 11А

15

Re: Управление двигателем заслонки

qwerty095 пишет:

100 герц на заслонку мало. Время цикла пид должно быть 1, макс 2мсек. И чем меньше заслонка тем меньше инерционных масс и тем быстрее должен реагировать алгоритм.
Для пид буста время цикла 10..20мсек нормально.

Диаметр заслонки 60 мм

16

Re: Управление двигателем заслонки

60мм крайне избыточно. О каком либо регулировании сложно будет даже говорить, уж тем более о качественном. 30..35мм надо, ну край 40.

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

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

Для регулирования сначала строится 3д поверхность где оси это целевое давление/обороты а значения в ней это целевое положение байпаса.
Далее включаем пид регулятор давления который уже будет корректировать целевое положение байпаса, а нужно это для компенсации изменяющихся условий как погодных так и температур моторного отсека от которых меняется плотность воздуха, зазоры и насосные потери.

Определитель передач и множитель для целевого давления наименее сложная задача.

Вероятно придется использовать несколько канни разделив задачи и объеденив их в сеть по кану.

17

Re: Управление двигателем заслонки

AlexT пишет:

Но CANNY 5.3 MD1 греется под нагрузкой. Это не станет проблемой? Напомню электрические параметры мотора - 0-14 В до 11А

MD2 тоже будет греться. Необходимо организовать отвод тепла. В простейшем случае можно использовать теплопроводящую прокладку, вырез в корпусе контроллера и креплениек металлической части кузова или к другому рассеивателю тепла.

Оценить эффективность отвода тепла можно будет по встроенному в контроллер датчику температуры.

Вложений в сообщении

IMG_20200304_1814343.jpg, 85.49 кб, 424 x 362
IMG_20200304_1814343.jpg 85.49 кб, скачивался 243 раз, последний раз 2020-03-04 

18

Re: Управление двигателем заслонки

Вижу vnh2sp30, в целом неплохой драйвер, подходит.

19

Re: Управление двигателем заслонки

qwerty095 пишет:

60мм крайне избыточно. О каком либо регулировании сложно будет даже говорить, уж тем более о качественном. 30..35мм надо, ну край 40.

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

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

Для регулирования сначала строится 3д поверхность где оси это целевое давление/обороты а значения в ней это целевое положение байпаса.
Далее включаем пид регулятор давления который уже будет корректировать целевое положение байпаса, а нужно это для компенсации изменяющихся условий как погодных так и температур моторного отсека от которых меняется плотность воздуха, зазоры и насосные потери.

Определитель передач и множитель для целевого давления наименее сложная задача.

Вероятно придется использовать несколько канни разделив задачи и объеденив их в сеть по кану.

А можно чуть подробнее? Зачем строить в данном решении 3Д модель? Этот нагнетатель типа рутс, то есть его наддув зависит от оборотов вала компрессора, на впускном ресивере стоит датчик давления, который также измеряет температуру. Сама заслонка байпасная шла с компрессором, который штатно ставился на Nissan Pathfinder с двигателем q25DER, как я понимаю, там он играл роль основного дросселя, который нормально открыт. Установлен он там штатно, как байпас, то есть подключен к ресиверу в обход компрессора. Это я к тому, что Nissan контроллировал наддув заслонкой в 60 мм. В моем случае будет основной дроссель и байпасная заслонка. Пружина там мощная, то есть возврат заслонки происходит оч быстро. Этот компрессор способен выдать 1,5 бара избытка, то есть я планируею установить такое соотношение шкивов, что 1,5 бара будет примерно на 7500 об/мин колена. Поэтому мне нужен буст по передачам, так как на первой мне не нужно более 0,5.

Что если на холостом ходу держать байпас открытым, а при росте оборотов выше 1000 закрывать его полностью и отслеживать давление, как только оно будет приближаться к целевому, например 0,5 целевое, как приближаемся к 0,45, то включается ПИД и и пытается перемещениями заслонки удержать давление близко к целевому. Сверх точность здесь не нужна, если будут колебания давления в 0,1 бара, то это безразлично.

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

20

Re: Управление двигателем заслонки

Скачек давления в 0.1 бар очень хорошо чувствуется между прочим.
Вы не понимаете.
Компрессор этот объемного типа, roots. Тоесть за один оборот он прокачивает определенный объем воздуха 0.9 литра за оборот, насос. При чем весь наддув при закрытом байпасе будет доступен чуть ли не с холостого хода, да есть некоторые насосные потери из за зазоров, на малых оборотах будет качать чуть меньше, например 90% прокачать, 10 потерять.
Наддув практически не зависит от оборотов, зависит только от передаточного отношения и соотношений объемов прокачиваемых компрессором и двигателем.
Посчитаем... Мотор объемом 2 литра, за один оборот при условии что наполнение допустим 85% в режиме полного дросселя на каких то там оборотах прокачивает через себя 2/2×0.85=0.85 литра. При передаточном отношении 1 к 2 компрессор будет качать 0.9×2=1.8 литра что будет в 1.8/0.85=2.11 раза больше, то есть наддув составит примерно 1.1 бар.
Как будет вести себя наддув из примера выше на полном дросселе... Двс в данном случае условный конь в вакууме аля 4 цилинтра 4 такта 2 литра. Среднестатистический довольно хороший условный мотор. В реле будет не сильно далеко.
Примерно так:
Обороты/буст.
1000/0.9
2000/1.15
3000/1.1
4000/1.05
5000/1.0
6000/0.9
7000/0.85
Почему так? На 1000 есть потери в компрессоре и прилично выдувает в выпуск на перекрытии клапанов.
На 2000 вероятно самая эффективная зона так как потери уже незначительны, объем прокачиваемого воздуха не высок, нагрев соответственно тоже, в перекрытии уже выдувает много меньше из за более быстрых процессов.
Сразу 6000, нагрев воздуха убивает табун коней, плюс газодинамические процессы из за так себе конструкции среднестатистического двс в ваккууме, снижается наполнение, подпор в выхлопе растет и тем не менее наддув падает ибо температура.
Подробнее уже не буду, и так стена текста и лекции читать не хочется.

Не 3д модель, а 3д поверхность, таблица.

На счет штатной реализации я посмотрю, там более чем наверняка 60 мм дроссель не как байпас.

По всем остальным вопросам вдумчиво прочтите, подумайте, там глядишь прояснится.

Касательно прикручиванию компрессора туда где его быть не должно, нужно подготовить топливную систему, систему управления и сам мотор. Чем и как настраивать топливоподачу будете? 1.5 бара наддува достаточно горячего воздуха стандартный мотор точно не переживет.

21

Re: Управление двигателем заслонки

AlexT пишет:

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

Очень сильно сомневаюсь что успеет сбросить внезапно появившееся давление достаточно быстро чтоб не буксовать шкивами и не вытягивать ремень, даже если электронно управлять это все равно десятки миллисекунд на обработку, в лучшем случае в 70..100 мсек уложиться бы вместе с реакцией.

22

Re: Управление двигателем заслонки

qwerty095 пишет:

Скачек давления в 0.1 бар очень хорошо чувствуется между прочим.
Вы не понимаете.
Компрессор этот объемного типа, roots. Тоесть за один оборот он прокачивает определенный объем воздуха 0.9 литра за оборот, насос. При чем весь наддув при закрытом байпасе будет доступен чуть ли не с холостого хода, да есть некоторые насосные потери из за зазоров, на малых оборотах будет качать чуть меньше, например 90% прокачать, 10 потерять.
Наддув практически не зависит от оборотов, зависит только от передаточного отношения и соотношений объемов прокачиваемых компрессором и двигателем.
Посчитаем... Мотор объемом 2 литра, за один оборот при условии что наполнение допустим 85% в режиме полного дросселя на каких то там оборотах прокачивает через себя 2/2×0.85=0.85 литра. При передаточном отношении 1 к 2 компрессор будет качать 0.9×2=1.8 литра что будет в 1.8/0.85=2.11 раза больше, то есть наддув составит примерно 1.1 бар.
Как будет вести себя наддув из примера выше на полном дросселе... Двс в данном случае условный конь в вакууме аля 4 цилинтра 4 такта 2 литра. Среднестатистический довольно хороший условный мотор. В реле будет не сильно далеко.
Примерно так:
Обороты/буст.
1000/0.9
2000/1.15
3000/1.1
4000/1.05
5000/1.0
6000/0.9
7000/0.85
Почему так? На 1000 есть потери в компрессоре и прилично выдувает в выпуск на перекрытии клапанов.
На 2000 вероятно самая эффективная зона так как потери уже незначительны, объем прокачиваемого воздуха не высок, нагрев соответственно тоже, в перекрытии уже выдувает много меньше из за более быстрых процессов.
Сразу 6000, нагрев воздуха убивает табун коней, плюс газодинамические процессы из за так себе конструкции среднестатистического двс в ваккууме, снижается наполнение, подпор в выхлопе растет и тем не менее наддув падает ибо температура.
Подробнее уже не буду, и так стена текста и лекции читать не хочется.

Не 3д модель, а 3д поверхность, таблица.

На счет штатной реализации я посмотрю, там более чем наверняка 60 мм дроссель не как байпас.

По всем остальным вопросам вдумчиво прочтите, подумайте, там глядишь прояснится.

Касательно прикручиванию компрессора туда где его быть не должно, нужно подготовить топливную систему, систему управления и сам мотор. Чем и как настраивать топливоподачу будете? 1.5 бара наддува достаточно горячего воздуха стандартный мотор точно не переживет.

Спасибо за подробный ответ. Передаточное отношение планируется 1 к 2,5. Для брьбы с нагревом на высоких оборотах предусмотрен жидкостный интеркуллер на 4 стержнях Laminova, мощный насос на 1300 литров, достаточно крупный радиатор. Топливный насос 265 литров/ч, форсунки 630. Мотор подготовлен, толстые гильзы, так как на Duratekах крайне нестабильное качество заводских гильз, да и тонкие они. Кованные шатуны, кованные поршни с пониженной СЖ, масляный насос повышенной производительности, более производительная помпа ОЖ, увеличенный радиатор ОЖ. Топливом будет рулить штатный мозг, топливные карты будут скорректированы.

23

Re: Управление двигателем заслонки

Из опыта.
Кованые поршни зло. Иное поведение при нагреве, расширяются много больше, нужно делать большой монтажный зазор, от 7 и более соток, обычно 10..12. Метод изготовления не предусматривает размещения термокомпенсационных вставок, сплав содержит обычно много больше меди. Из за прилично большего зазора мотор как правило прилично таки гремит на холодную, а потом немного позже из за износа зазор становится еще больше и гремит уже и на прогретом. Пара трения с чугунной гильзой уже не та, на нагруженной стороне часто присутствуют задиры.
Ломаются детонацией они абсолютно так же как и литые, только вот стоят в разы дороже.

Посмотрел как сделано на q25der, дроссель на компрессоре именно байпас. Размер только не указан ни где.
60мм в каком месте? Именно сама заслонка 60?

24

Re: Управление двигателем заслонки

qwerty095 пишет:

Из опыта.
Кованые поршни зло. Иное поведение при нагреве, расширяются много больше, нужно делать большой монтажный зазор, от 7 и более соток, обычно 10..12. Метод изготовления не предусматривает размещения термокомпенсационных вставок, сплав содержит обычно много больше меди. Из за прилично большего зазора мотор как правило прилично таки гремит на холодную, а потом немного позже из за износа зазор становится еще больше и гремит уже и на прогретом. Пара трения с чугунной гильзой уже не та, на нагруженной стороне часто присутствуют задиры.
Ломаются детонацией они абсолютно так же как и литые, только вот стоят в разы дороже.

Посмотрел как сделано на q25der, дроссель на компрессоре именно байпас. Размер только не указан ни где.
60мм в каком месте? Именно сама заслонка 60?

Зазор будет 6 соток, так как сплав 4032 плюс покрыты керамикой для перестраховки. Заслонка именно 60.

25

Re: Управление двигателем заслонки

Есть возможность сделать фото заслонки?

6 соток.. не нагружайте мотор сразу, обкатайте его нормально хотяб 500км иначе может приклинить.