Управление эл.моторами M-MT Toyota
Модератор: alflash
Управление эл.моторами M-MT Toyota
Уважаемые форумчане, Уважаемый alflash
Судя по данных их TechDoc http://toyota-corolla.ru/rm04f1ru/repai ... e00cx.html эл.двигатели выбора и переключения передач управляются в импульсном режиме:
амплитуда 12-14В, длительность импульса 50мкс, скважность 50%.
Пытаюсь имитировать такой режим сторонним контроллером и драйвером для коллекторных эл. двигателей.
В результате при длительности импульса 50мкс эл. двигатели не испевают стартовать.
Увеличение длительности приводит к тому, что эл. двигатели проскакивают нужное положение (центральное, сооответствующее положению передач 3-4).
Возможно я плохо разглядел режимы на фотке... и там не 50мкс.
Возможно есть какая-то информация по данному вопросу, например скриншоты с оциллографов и т.д.
Буду рад любой помощи.
Судя по данных их TechDoc http://toyota-corolla.ru/rm04f1ru/repai ... e00cx.html эл.двигатели выбора и переключения передач управляются в импульсном режиме:
амплитуда 12-14В, длительность импульса 50мкс, скважность 50%.
Пытаюсь имитировать такой режим сторонним контроллером и драйвером для коллекторных эл. двигателей.
В результате при длительности импульса 50мкс эл. двигатели не испевают стартовать.
Увеличение длительности приводит к тому, что эл. двигатели проскакивают нужное положение (центральное, сооответствующее положению передач 3-4).
Возможно я плохо разглядел режимы на фотке... и там не 50мкс.
Возможно есть какая-то информация по данному вопросу, например скриншоты с оциллографов и т.д.
Буду рад любой помощи.
Re: Multimode на Королле
Привет!
Действительно, там рекомедуют подключить, например, 2-канальный осциллограф (на пределах 5 В/дел., 50 мкс/дел.) между контактам
MSF- и GND,
MSF+ и GND.
Или выполнить два измерения, если используется 1-канальный.
Вопросы. Может ли имитатор "отдать" в нагрузку c десяток ампер и с достаточно крутыми фронтами импульсов управления?
Увы, у меня нет таких осциллограм, но я готов обсудить сделанные Вами. Как те, что "в реале", так и те, что получены при управлении мотором от иммитатора и заодно попробуйте на порядок уменьшить частоту управляющих импульсов.
Не исключено, что у сигналов управления эл. мотороми выбора и переключения более сложная "структура". Например на одном конце типа "стробирующие" импульсы, а на другом - "управляющие".
Примечание. Реальная осциллограмма не обязательно соответствует изображению на рисунке.
Неоднократно обсуждалось, что "графики" из этого раздела RM только иллюстрация к описанию способа подключения измерительных приборов и НЕ являются отображением фактических осциллограмм конкретных сигналов.
Об этом упоминается, например, в viewtopic.php?t=342
Действительно, там рекомедуют подключить, например, 2-канальный осциллограф (на пределах 5 В/дел., 50 мкс/дел.) между контактам
MSF- и GND,
MSF+ и GND.
Или выполнить два измерения, если используется 1-канальный.
Вопросы. Может ли имитатор "отдать" в нагрузку c десяток ампер и с достаточно крутыми фронтами импульсов управления?
Увы, у меня нет таких осциллограм, но я готов обсудить сделанные Вами. Как те, что "в реале", так и те, что получены при управлении мотором от иммитатора и заодно попробуйте на порядок уменьшить частоту управляющих импульсов.
Не исключено, что у сигналов управления эл. мотороми выбора и переключения более сложная "структура". Например на одном конце типа "стробирующие" импульсы, а на другом - "управляющие".
Примечание. Реальная осциллограмма не обязательно соответствует изображению на рисунке.
Неоднократно обсуждалось, что "графики" из этого раздела RM только иллюстрация к описанию способа подключения измерительных приборов и НЕ являются отображением фактических осциллограмм конкретных сигналов.
Об этом упоминается, например, в viewtopic.php?t=342
Re: Multimode на Королле
По моим замерам потребляемый ток доходит до 15А.
Мой драйвер http://www.pololu.com/catalog/product/1112 позволяет в номинале постоянно отдавать 13А, в пиковом режиме 30А.
В качестве источника питания использую автомобильную АКБ, не новую, но живую.
Осциллограмму с фронтами попытаюсь снять.
Вот скрины:
, ,
Но у меня тут реализован другой алгоритм.
Сначала задается максимальная скорость, к моменту приближения к нужному положению скоросто подает до нуля.
Примечание. Как выяснилось позже, это скрины значений скважности импульсов напряжения на выходе драйвера во время процесса управления эл.мотором привода переключения передач.
Мой драйвер http://www.pololu.com/catalog/product/1112 позволяет в номинале постоянно отдавать 13А, в пиковом режиме 30А.
В качестве источника питания использую автомобильную АКБ, не новую, но живую.
Осциллограмму с фронтами попытаюсь снять.
Вот скрины:
, ,
Но у меня тут реализован другой алгоритм.
Сначала задается максимальная скорость, к моменту приближения к нужному положению скоросто подает до нуля.
Примечание. Как выяснилось позже, это скрины значений скважности импульсов напряжения на выходе драйвера во время процесса управления эл.мотором привода переключения передач.
Re: Multimode на Королле
<-
("Точки" подключения осциллографа и просто пример возможной осциллограммы напряжения управления).
Можно ли несколько периодов сигнала управления, т.е. осциллограмм напряжения, а не графика изменения скважности напряжения, подаваемого на двигатель (с указанием цены деления по напряжению) ? Почему такая сложная кривая "задания" скважности?
Осциллограммы сигналов управления эл.мотором "штатным" способом (от TCM) на реальном авто?
("Точки" подключения осциллографа и просто пример возможной осциллограммы напряжения управления).
Можно ли несколько периодов сигнала управления, т.е. осциллограмм напряжения, а не графика изменения скважности напряжения, подаваемого на двигатель (с указанием цены деления по напряжению) ? Почему такая сложная кривая "задания" скважности?
Осциллограммы сигналов управления эл.мотором "штатным" способом (от TCM) на реальном авто?
Re: Управление эл.моторами M-MT Toyota
Скорость вращения эл. моторов - задается драйвером.
Привод выбора передач
Осциллограф подключался с выхода драйвера на вход эл. двигателя
С реального авто снять сигнал не могу
Привод выбора передач
Осциллограф подключался с выхода драйвера на вход эл. двигателя
С реального авто снять сигнал не могу
Re: Управление эл.моторами M-MT Toyota
а) период повторения этих импульсов управления?kadushkin писал(а):1. Скорость вращения эл. моторов - задается драйвером...
...
д) Для полноты картины стоит подключить один из каналов осциллографа, или провести им отдельную проверку тока эл. мотора при управлении тем драйвером, формирующим то напряжение управления эл.мотором.
е) Назначение драйвера - регулированиие скорости вращения или все же, управление положением вала мотора эл. привода, и как следствие, положением селектора выбора передач?
ж) Цель этих ваших "изысканий"?
з) Драйвер управляет приводом только по одному проводу, а второй постоянно на "минусе"?kadushkin писал(а):4. Осциллограф подключался с выхода драйвера на вход эл. двигателя...
Примечание. Насколько я понимаю. главные задачи управления этими приводами - максимально быстрая и макимально точная установка в нужное положение соответствующих механизмов выбора передач, что обеспечивается изменением скважности и полярности управляющих импульсов.
Re: Управление эл.моторами M-MT Toyota
а) это весь импульс, его достаточно чтобы придти из полодения 1-2 в положение 3-4. В замен него конечно нужна гармоника как на рисунке.
б) верно
в) верно
г) используется только родной датчик
д) осциллограмму тока не сделаю, а с драйвера при изменении скорости сниму данные по току (в среднем 12-15А)
е) Назначение драйвера - регулированиие скорости вращения и как следствие, управление положением вала мотора эл. привода?
ж) цель применить данный актуатор на авто с механикой и "своими" мозгами
з) драйвер меняет полярность, умеет переключением фаз тормозить двигатель
спасибо за активное участие.
Вот замеры тока при изменении скорости и времени:
Speed=127; Milliamps=600; Time_msec=0
Speed=127; Milliamps=14850; Time_msec=7
Speed=119; Milliamps=11850; Time_msec=13
Speed=108; Milliamps=11700; Time_msec=20
Speed=97; Milliamps=12150; Time_msec=26
Speed=85; Milliamps=11250; Time_msec=32
Speed=71; Milliamps=10200; Time_msec=39
Speed=53; Milliamps=9750; Time_msec=46
Speed=32; Milliamps=6300; Time_msec=54
Скорость задается драйвером в пределах 0...127.
Мой алгоритм такой:
При старте задаем максимальную скорость (127) - отсюда первый фронт (а).
В процессе приближения к нужному положению (по датчику) скорость снижаем до 0.
Далее тормозим - отсюда второй фронт (b).
Проблема в том, что иногда конечное положение проскакиваю, особенно если актуатор осью вверх повернуть ( т.е. действует сила тяжести на ползун):
Вынужден включать реверс и отскакивать назад.
Обратился к разработчикам драйвера:
Они ответили:
б) верно
в) верно
г) используется только родной датчик
д) осциллограмму тока не сделаю, а с драйвера при изменении скорости сниму данные по току (в среднем 12-15А)
е) Назначение драйвера - регулированиие скорости вращения и как следствие, управление положением вала мотора эл. привода?
ж) цель применить данный актуатор на авто с механикой и "своими" мозгами
з) драйвер меняет полярность, умеет переключением фаз тормозить двигатель
спасибо за активное участие.
Вот замеры тока при изменении скорости и времени:
Speed=127; Milliamps=600; Time_msec=0
Speed=127; Milliamps=14850; Time_msec=7
Speed=119; Milliamps=11850; Time_msec=13
Speed=108; Milliamps=11700; Time_msec=20
Speed=97; Milliamps=12150; Time_msec=26
Speed=85; Milliamps=11250; Time_msec=32
Speed=71; Milliamps=10200; Time_msec=39
Speed=53; Milliamps=9750; Time_msec=46
Speed=32; Milliamps=6300; Time_msec=54
Скорость задается драйвером в пределах 0...127.
Мой алгоритм такой:
При старте задаем максимальную скорость (127) - отсюда первый фронт (а).
В процессе приближения к нужному положению (по датчику) скорость снижаем до 0.
Далее тормозим - отсюда второй фронт (b).
Проблема в том, что иногда конечное положение проскакиваю, особенно если актуатор осью вверх повернуть ( т.е. действует сила тяжести на ползун):
Вынужден включать реверс и отскакивать назад.
Обратился к разработчикам драйвера:
Они ответили:
Сейчас я использую максимальную частоту 20 кГц. Имеет ли смысл, в том что ответил разработчик? я не совсем понял, если я получу более высокий ток это конечно хорошо, но уменьшив скорость я потеряю момент...Чтобы получить высокий ток на выходе: лучше всего было бы установить частоту ШИМ до 9,8 кГц и использовать 50% рабочего цикла (путем установки скорости равной половине максимальной). Это даст около 51 микросекунд длительности импульса.
Re: Управление эл.моторами M-MT Toyota
Ок, хотя оно по большей части только "задавание вопросов"kadushkin писал(а):... спасибо за активное участие.
Начну с мелких.
I. Вы написали "Далее тормозим - отсюда второй фронт (b)". Задний фронт импульса управляющего напряжения (Uдв.) - момент прекращения управления и после него вал вращается (в том числе) и по энерции, чему противодействует например, трение. Но при этом сам процесс тороможения неуправляем.
Почему бы для улучшения управляемости, после Uдв. не подать на эл.мотор импульс напряжения тороможения (Uторм.) противоположной полярности? Не после каждого отдельного импульса, а после окончания процесса в заданной точке положения переключателя передач (что программно совершенно не сложно).
II. Алгоритм использования "показаний" датчика положения привода передач? Например, снижение скорости вращения по мере приближения к "заданной точке" и/или прекрашение подачи напряжения при достижении нужного положения и/или что другое?
...
IV. В интерфейсе пользователя ПО драйвера есть возможность визуализации заданных значений параметров сигнала управления эл.двигателем (например, в виде 2D и/или 3D "карт")? Или предыдущие ваши скрины это оно и есть?
Примечание. Считаю, что на данном этапе экспериментов обязательно необходимо использование [size=85](приличного)[/size] осциллографа. Это позволит сравнить реальную картинку происходящего с тем, что формируются в "мозгах" драйвера ...
Re: Управление эл.моторами M-MT Toyota
1. Да можно обратной полярностью тормозить - попробую
2. Подробный алгоритм такой:
Определяем текущее положение датчика (скажем 200) и требуемое (400), разница 200 ед.
Поле допуска на положение (неисправность) +-10ед.
На этот интервал 200...0, пересчитываем скорость в интервале 127...0 (есть функция map для этого)
Стартуем с макс. скоростью 127 и плавно в соответствии с пересчетом уменьшаем скорость.
При достижении верхней границы (с учетом поля допуска) 200-10=190 применяем торможение (попробую реверс включить, как ты советовал в п.1)
3. Да вроде позволяет
4. Начал использование
2. Подробный алгоритм такой:
Определяем текущее положение датчика (скажем 200) и требуемое (400), разница 200 ед.
Поле допуска на положение (неисправность) +-10ед.
На этот интервал 200...0, пересчитываем скорость в интервале 127...0 (есть функция map для этого)
Стартуем с макс. скоростью 127 и плавно в соответствии с пересчетом уменьшаем скорость.
При достижении верхней границы (с учетом поля допуска) 200-10=190 применяем торможение (попробую реверс включить, как ты советовал в п.1)
3. Да вроде позволяет
4. Начал использование
Re: Управление эл.моторами M-MT Toyota
Вопрос-предложение.kadushkin писал(а):1. Да можно обратной полярностью тормозить - попробую
2. Подробный алгоритм такой:
Определяем текущее положение датчика (скажем 200) и требуемое (400), разница 200 ед.
Поле допуска на положение (неисправность) +-10ед.
На этот интервал 200...0, пересчитываем скорость в интервале 127...0 (есть функция map для этого)
Стартуем с макс. скоростью 127 и плавно в соответствии с пересчетом уменьшаем скорость.
При достижении верхней границы (с учетом поля допуска) 200-10=190 применяем торможение (попробую реверс включить, как ты советовал в п.1)...
Почему бы не использовать такой алгоритм управления эл. мотором привода переключения передач*:
а) всегда подаем на эл.мотор импульсы макимальноного напряжения (12-13 вольт), что позволит "работать на повышенных скоростях") и минимизировать "активные" потери на выходных ключах драйвера,
б) скоростью вращения (если это действительно необходимо) управляем изменением скважности этих импульсов,
в) при достижении некоторой предварительной зоны (перед заданным положением), сначала уменьшаем длительность импульсов тем самым подготавливая эл. двигатель к предстоящему торомжению), а при достижении заданной точки (м.б. с некоторым упреждением) включаем режим торможения.
Возможное перерегулирование устраняем по результатам экспериментальных проверок.
?
Re: Управление эл.моторами M-MT Toyota
Ну как таковой импульс наверное один, судя по графику
Но если судить по этой распечатке:
1 Speed=127; Milliamps=600; Time_msec=0
2 Speed=127; Milliamps=14850; Time_msec=7
3 Speed=119; Milliamps=11850; Time_msec=13
4 Speed=108; Milliamps=11700; Time_msec=20
5 Speed=97; Milliamps=12150; Time_msec=26
6 Speed=85; Milliamps=11250; Time_msec=32
7 Speed=71; Milliamps=10200; Time_msec=39
8 Speed=53; Milliamps=9750; Time_msec=46
9 Speed=32; Milliamps=6300; Time_msec=54
то 9-10 циклов, их наверное можно условно назвать импульсами.
А вот сколько импульсов у Короллы с родными мозгами не знаю, собственно я бы и хотел имитировать так как на тойоте.
Но если судить по этой распечатке:
1 Speed=127; Milliamps=600; Time_msec=0
2 Speed=127; Milliamps=14850; Time_msec=7
3 Speed=119; Milliamps=11850; Time_msec=13
4 Speed=108; Milliamps=11700; Time_msec=20
5 Speed=97; Milliamps=12150; Time_msec=26
6 Speed=85; Milliamps=11250; Time_msec=32
7 Speed=71; Milliamps=10200; Time_msec=39
8 Speed=53; Milliamps=9750; Time_msec=46
9 Speed=32; Milliamps=6300; Time_msec=54
то 9-10 циклов, их наверное можно условно назвать импульсами.
А вот сколько импульсов у Короллы с родными мозгами не знаю, собственно я бы и хотел имитировать так как на тойоте.
Re: Управление эл.моторами M-MT Toyota
Почему "условно"? Есть все признаки "импульсности" сигнала управления: периодичность, фиксированная длительность и частота повторения. Другое дело, что пакет таких импульсов может состоять из разного их количества.
На графике показана форма только одного (каждого) из них и в таблице "распечатка" параметров с таймингом в миллисекундах. Но ведь перемещение штока переключателя осушествляется не за время действия одного импульса, а после некоторой их перидической последоватальности.
Т.к. Вы писали, что "...использую максимальную частоту 20 кГц", то период повторения этих импульсов управления (в "пачке") - 50 микросекунд. И следовательно в таблице расчетные значения параметров общего процесса управления?
Но тогда получается, что за 50 миллисекунд на двигатель будет подано, считай, тысяча импульсов с периодом повторения 50 микросекунд и длительностью (судя по графику) примерно 30 микросекунд.
Это так?
Почему бы не сделать осциллограмму тока, подключив осциллограф к резистору 0.1 -0.2 ома, установленному последовательно или к токовому датчику*? Это позволяло бы отслеживать реальный ток двигателя.
* http://alflash.com.ua/Scope/9884.jpg и/или http://alflash.com.ua/Scope/9847s.jpg
На графике показана форма только одного (каждого) из них и в таблице "распечатка" параметров с таймингом в миллисекундах. Но ведь перемещение штока переключателя осушествляется не за время действия одного импульса, а после некоторой их перидической последоватальности.
Т.к. Вы писали, что "...использую максимальную частоту 20 кГц", то период повторения этих импульсов управления (в "пачке") - 50 микросекунд. И следовательно в таблице расчетные значения параметров общего процесса управления?
Но тогда получается, что за 50 миллисекунд на двигатель будет подано, считай, тысяча импульсов с периодом повторения 50 микросекунд и длительностью (судя по графику) примерно 30 микросекунд.
Это так?
Почему бы не сделать осциллограмму тока, подключив осциллограф к резистору 0.1 -0.2 ома, установленному последовательно или к токовому датчику*? Это позволяло бы отслеживать реальный ток двигателя.
* http://alflash.com.ua/Scope/9884.jpg и/или http://alflash.com.ua/Scope/9847s.jpg
Re: Управление эл.моторами M-MT Toyota
Я наверное что-то не понял.
Видимо то, что я называл "Скорость" или "регулировка скорости" это и есть скважность (из описания драйвера):
Кстати переключил драйвер в режим 9,8кГц.
При скважности 50% двигатель страгивается, но дальше мощи не хватает. Изменив скважность 80% (20) - хватает, 100% (0) - вообще пролетает.
Кстати осциллографа нормального и нет, до 5кГц только.
Вот замерил сигнал скважностью 70% при 9.8кГц
Видимо то, что я называл "Скорость" или "регулировка скорости" это и есть скважность (из описания драйвера):
И как раз наверное 0...127 (255) это и есть задание скважностиРегулировка скорости достигается с 7-битные или 8-битный широтно-импульсной модуляцией (ШИМ) в одном из нескольких выбираемых частотах. 7-битные управления позволяет для частот ШИМ 19,7 кГц, 2,5 кГц и 310 Гц, 8-бит управления позволяет для частот ШИМ 9,8 кГц, 1,2 кГц и 150 Гц.Максимально достижимого частоте 19,7 кГц ультразвуковой, что может привести к тихой управления двигателем. Более низкие частоты могут производить громче шум двигателя, но они могут помочь уменьшить потери мощности в связи с переключением.
Источник: http://www.pololu.com/docs/0J29/5.fЭлектронная регулировка скорости достигается изменением части цикла, что двигатель выходы вождения. Полная скорость возникает тогда, когда мощности двигателя за рулем 100% времени (один мощностью двигателя проходит на прежнем уровне VIN, а другой на прежнем уровне земли). В 7-битном режиме, диапазон скорости двигателя от остановки (высокий импеданс выхода, или «берег») до полной скорости, что и параметр скорости в диапазоне от 0 до 127. В 8-битном режиме, диапазон скорости двигателя от остановки (высокий импеданс выхода, или «берег») до полной скорости, что и диапазоны параметров скорости от 0 - 255.
Кстати переключил драйвер в режим 9,8кГц.
При скважности 50% двигатель страгивается, но дальше мощи не хватает. Изменив скважность 80% (20) - хватает, 100% (0) - вообще пролетает.
Кстати осциллографа нормального и нет, до 5кГц только.
Вот замерил сигнал скважностью 70% при 9.8кГц
Re: Управление эл.моторами M-MT Toyota
Как я понимаю, это временной отрезок, в течении которого на двигатель подавалось напряжение. Его длительность определена фактов достижения результата (например, по ОС датчика переключения)?kadushkin писал(а):Вот замерил сигнал скважностью 70% при 9.8кГц ...
А он же, но при х10 и при х1 ?
Можно ли чем просмотреть запись? Есть ли просмотрищик файлов этого типа (расширения)?
Это скрин внешнего осциллографа или "встроенного" ПО драйвера?
Re: Управление эл.моторами M-MT Toyota
Вот он:
,
Наверное такой корявый из-за моего осциллографа. Его собрал на коленке из контроллера arduino и через сом-порт вывожу на комп.
Скважность не менял по мере приближения к нужному положению.
Из-за сигнала такой скважности тоже пролет.
Нужно все таки скважность менять при приближении.
Все же понятно, как у тойоты реализовано....
,
Наверное такой корявый из-за моего осциллографа. Его собрал на коленке из контроллера arduino и через сом-порт вывожу на комп.
Скважность не менял по мере приближения к нужному положению.
Из-за сигнала такой скважности тоже пролет.
Нужно все таки скважность менять при приближении.
Все же понятно, как у тойоты реализовано....
Re: Управление эл.моторами M-MT Toyota
А как насчет тороможения? Оно использовалось в данном случае?
Да, АЧХ - "маловато будет", но для проверки тока (при х100 и частично при х10) - сойдет
ЧЕм вызвано отсутствие ШИМ в конце времени управления двигателем?
Да, АЧХ - "маловато будет", но для проверки тока (при х100 и частично при х10) - сойдет
ЧЕм вызвано отсутствие ШИМ в конце времени управления двигателем?
Re: Управление эл.моторами M-MT Toyota
Да при приближении к нужной отметке применил торможение реверсом и обычный тормоз (в конце графика):
Re: Управление эл.моторами M-MT Toyota
Насчет обратной полярности не скажу, возможно ее осциллограф не зарегистировал.
Вот оптимальный пока алгоритм, но пролеты изредка бывают:
В цикле:
тормозим:
т.е.
20-40% пути идем со скважностью 100% (255)
40-70% идем с изменяемой скважностью линейно зависящей от дистанции
остаток идем со скважностью менее 1% (10)
Вот оптимальный пока алгоритм, но пролеты изредка бывают:
В цикле:
Код: Выделить всё
[size=85]Select_Gear_Speed=map(dystance,0,full_dystance,0,127);
if (dystance>0.8*full_dystance) {Pololuqik.setM1Speed(255*znak_speed);}
if ((dystance>0.4*full_dystance) && (dystance<0.7*full_dystance) ) {Pololuqik.setM1Speed(Select_Gear_Speed);}
if (dystance<0.3*full_dystance) {Pololuqik.setM1Speed(10*znak_speed);}[/size]
Код: Выделить всё
[size=85]Pololuqik.setM1Speed(255*znak_speed*(-1));
delayMicroseconds(50);
Pololuqik.setM1Brake(255); //останов[/size]
20-40% пути идем со скважностью 100% (255)
40-70% идем с изменяемой скважностью линейно зависящей от дистанции
остаток идем со скважностью менее 1% (10)