|
|
  |
Сомнения: доверять или не доверять AVR управление H-bridge, Без внешней аппаратной защиты на логике или на спец. микросхеме |
|
|
|
Aug 13 2008, 07:36
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
To SasaVitebsk Цитата(_Pasha @ Aug 13 2008, 05:54)  +1 Под каждым предложением. Вопрос: на каком же последовательном интерфейсе лучше остановиться сейчас? Пока что, с учетом необходимой гальваноразвязки, катит UART Хм. Здесь мне следует чуть чуть пояснить. Каждый привод хочу обеспечить двумя последовательными шинами: I2C и UART. I2C будет предназначен для соединений внутри работающей системы. Т.е. по этому интерфейсу привода будут договариваться и принимать команды от главного (управляющего) МК. Интерфейс UART будет предназначен для подключения к компу с целью что-то настроить, отладить, проверить. Короче говоря будет выступать в роли своеобразного технологического канала для сервисного обслуживания. По крайней мере, такая реализация была задумана давно и существует до настоящего времени. Но пост уважаемого Павла (_Pasha) натолкнул меня на мысль: а может быть оставить только один UART? А уже программное обеспечение привода будет определять к чему он подключен и, в зависимости от этого, общение будет удобным для человека (вывод текстовых сообщений, командная строка и тп) или - удобным для другого МК (какой-либо протокол). На счет развязки: если МК привода развязать с силовыми ключами оптронами, то это даст: 1. Дополнительную защиту МК от сбоев. 2. Защиту от пробоя портов МК при выходе из строя силовой части. 3. Интерфейс можно будет использовать любой, т.к. на нем не при каких условиях не появится высокое напряжение, которое повредит комп или плату управляющего МК. Также следует сказать, что вся система управления, в которой будет находится три контроллера привода (который мы сейчас обсуждаем), плата главного МК, БП будет помещаться в одном корпусе от старого компа. корпус типа "пицца" (лежачий).
--------------------
Выбор.
|
|
|
|
|
Aug 13 2008, 10:52
|
Гуру
     
Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521

|
Цитата(haker_fox @ Aug 13 2008, 10:36)  To SasaVitebsk Хм. Здесь мне следует чуть чуть пояснить. Каждый привод хочу обеспечить двумя последовательными шинами: I2C и UART. I2C будет предназначен для соединений внутри работающей системы. Т.е. по этому интерфейсу привода будут договариваться и принимать команды от главного (управляющего) МК. Интерфейс UART будет предназначен для подключения к компу с целью что-то настроить, отладить, проверить. Короче говоря будет выступать в роли своеобразного технологического канала для сервисного обслуживания. Имеет право на жизнь. Реализация на RS485 мультимастера достаточно сложно, хотя и возможно. Я бы предпочёл одну шину с несколькими группами команд. А технологические комманды транслировал бы ч/з главный контроллер. Цитата По крайней мере, такая реализация была задумана давно и существует до настоящего времени. Но пост уважаемого Павла (_Pasha) натолкнул меня на мысль: а может быть оставить только один UART? А уже программное обеспечение привода будет определять к чему он подключен и, в зависимости от этого, общение будет удобным для человека (вывод текстовых сообщений, командная строка и тп) или - удобным для другого МК (какой-либо протокол). Есть и другой способ. Очень интересный. У сименса подсмотрел.  Цитата На счет развязки: если МК привода развязать с силовыми ключами оптронами, то это даст: 1. Дополнительную защиту МК от сбоев. 2. Защиту от пробоя портов МК при выходе из строя силовой части. 3. Интерфейс можно будет использовать любой, т.к. на нем не при каких условиях не появится высокое напряжение, которое повредит комп или плату управляющего МК.
Также следует сказать, что вся система управления, в которой будет находится три контроллера привода (который мы сейчас обсуждаем), плата главного МК, БП будет помещаться в одном корпусе от старого компа. корпус типа "пицца" (лежачий). Я бы не стал МК от ключей развязывать (чисто мой взгляд). Какая защита портов. Что там защищать? Разводку грамотную, питание развязанное. Максимально близко всё на одной плате. Максимально внимания уделил самой схеме приводов и разводке платы и конструкции. Там всё очень важно. А развязку бы сделал на интерфейс. Получился бы законченный блок управления двигуном с опторазвязанным интерфейсом. А может действительно развязать и просто RS485. При верном подходе и так и так работать будет устойчиво.
|
|
|
|
|
Aug 13 2008, 12:45
|

Участник

Группа: Свой
Сообщений: 67
Регистрация: 5-02-07
Пользователь №: 25 074

|
Вот эта штука крутит киловаттный движок (типа стенда). Однотактнник с обратным диодом, правда. Работает на индуктивность двигателя. Частота аппаратного ШИМ - 1,22кГц. Звон от движка - ещё тот. Нижняя плата - ШИМ+АЦП (те, что в нижнем правом углу) для датчиков тока и напряжения. Верхняя - логика управления. Между платами развязка на 6N137 (шина SPI). "Верхний ключ" - IRGPC50KD2 + IR4426 с развязкой на 6N137. Аппартной защиты нет. Контроллер ШИМ, правда, вырубается при потере связи с контроллером управления. БП вырабатывает +12В, -12В для ОУ +20В для драйвера ключа, два по 10В для контроллеров, и +13В для RS232-преобразователя уровней (тоже развязан на 6N137). Контроллеры работают от кварцев. "Аппарат" вёл себя стабильно, при работающем рядом частотнике без фильтров и токе через двигатель - 6А.
Эскизы прикрепленных изображений
|
|
|
|
|
Aug 13 2008, 15:08
|
Местный
  
Группа: Свой
Сообщений: 238
Регистрация: 11-08-05
Пользователь №: 7 557

|
По поводу кварцев. Ребята из Spectrum Digital и Luminary Micro не обламываются и ставят в своих китах на процы кварцы. Все вроде у них работает. Снимать ток с помощью шунта ИМХО заиметь большой гемор с разводкой аналоговой части платы. На макетке снять сигнал с шунта, усилить его, пустить на АЦП и получить нормальные значения почти нереально. Тем более вы сначала купите этот шунт. Кто подскажет где можно взять резистор скажем на 18мОм для шунта? Проще всего использовать датчики тока(на эффекте Холла) от Allegro или магниторезистивные от Bell. Заодно и развязку получите, т.к измерение тока "бесконтактное". Я бы очень рекомендовал использовать драйвер с "силовой" и "цифровой" землей. Типа IR21064. Тогда вообще забудите про помехи. Заводите на плату два питания, одно для логики, другое для двигателя, которое кроме как к драйверу никуда не подключается. Тогда плату можно разводить без особого гемора. Про Deadtime ничего не скажу, кроме того, что он нужен. Проще всего вместо авр ставить норм проц который сам будет генирить deadband. но такой вариант автору не подходить.
Сообщение отредактировал Dars - Aug 13 2008, 15:09
|
|
|
|
|
Aug 13 2008, 23:48
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
Цитата(SasaVitebsk @ Aug 13 2008, 19:52)  Имеет право на жизнь. Реализация на RS485 мультимастера достаточно сложно, хотя и возможно. Хорошо. Здесь наши мысли почти сходятся. Цитата(SasaVitebsk @ Aug 13 2008, 19:52)  Я бы не стал МК от ключей развязывать (чисто мой взгляд). Какая защита портов. Что там защищать? Был на моей памяти случай, когда были пробиты ключи на базе ULN2803, которыми МК управлял. Так вот почти весь порт был угроблен. Я просто боюсь повторения подобной ситуации в моем случае. Цитата(SasaVitebsk @ Aug 13 2008, 19:52)  Получился бы законченный блок управления двигуном с опторазвязанным интерфейсом. Звучит заманичиво, но пока терзают сомнения, написанные в предыдущей цитате. Цитата(Dars @ Aug 14 2008, 00:08)  По поводу кварцев. Ребята из Spectrum Digital и Luminary Micro не обламываются и ставят в своих китах на процы кварцы. Все вроде у них работает. Тут как раз подобная ситуация. Цитата(Dars @ Aug 14 2008, 00:08)  Снимать ток с помощью шунта ИМХО заиметь большой гемор с разводкой аналоговой части платы. На макетке снять сигнал с шунта, усилить его, пустить на АЦП и получить нормальные значения почти нереально. А пустить на компаратор, который будет сравнивать ток с заранее установленным значением и выдавать сигнал аварийного выключения при перегрузке? Цитата(Dars @ Aug 14 2008, 00:08)  Тем более вы сначала купите этот шунт. Я почему-то подумал, что возьму кусох нихрома... Цитата(Dars @ Aug 14 2008, 00:08)  Проще всего использовать датчики тока(на эффекте Холла) от Allegro или магниторезистивные от Bell. Заодно и развязку получите, т.к измерение тока "бесконтактное". Скорее всего это задел на будущее. Бюджет текущей разработки очень сильно ограничен. Цитата(VXDRV @ Aug 13 2008, 21:45)  Вот эта штука крутит киловаттный движок (типа стенда). Однотактнник с обратным диодом, правда. Работает на индуктивность двигателя. Частота аппаратного ШИМ - 1,22кГц. Звон от движка - ещё тот. Нижняя плата - ШИМ+АЦП (те, что в нижнем правом углу) для датчиков тока и напряжения. Верхняя - логика управления. Между платами развязка на 6N137 (шина SPI). "Верхний ключ" - IRGPC50KD2 + IR4426 с развязкой на 6N137. Аппартной защиты нет. Контроллер ШИМ, правда, вырубается при потере связи с контроллером управления. БП вырабатывает +12В, -12В для ОУ +20В для драйвера ключа, два по 10В для контроллеров, и +13В для RS232-преобразователя уровней (тоже развязан на 6N137). Контроллеры работают от кварцев. "Аппарат" вёл себя стабильно, при работающем рядом частотнике без фильтров и токе через двигатель - 6А. Впечатляет!!! Это вселяет в меня надежду и еще раз доказывает, что при аккуратном подходе почти все возможно!
--------------------
Выбор.
|
|
|
|
|
Aug 14 2008, 07:43
|
Местный
  
Группа: Свой
Сообщений: 238
Регистрация: 11-08-05
Пользователь №: 7 557

|
Цитата А пустить на компаратор, который будет сравнивать ток с заранее установленным значением и выдавать сигнал аварийного выключения при перегрузке? Ну если вам нужен Faul detection то именно так и делают. На спец процах(напр tms320) есть даже специальная ножка FAULT, к которой подключаете выход компаратора. В моей задаче мне нужно управление по току и задачу отключения двигателя в случае перегрузки по току, напряжению и т.д и я делаю программно. Цитата Скорее всего это задел на будущее. Бюджет текущей разработки очень сильно ограничен. Ну на будущее, предлагаю посмотреть на мое решение для управления бесколлекторым(можно и коллекторным) двигателем.Есть возможность крутить движком с датчиками холла(аналог/цифр),оптическим квадратурным энкодером, sensorless mode. Ток измеряется с помощью внешнего ацп.Динамическое торможение присутствует. Раздельная цифровая и силовая земля.
Сообщение отредактировал Dars - Aug 14 2008, 07:54
|
|
|
|
|
Aug 14 2008, 09:18
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
Цитата(Dars @ Aug 14 2008, 16:43)  Ну если вам нужен Faul detection то именно так и делают. На спец процах(напр tms320) есть даже специальная ножка FAULT, к которой подключаете выход компаратора. Хорошо, значит это решение работает. Цитата(Dars @ Aug 14 2008, 16:43)  В моей задаче мне нужно управление по току и задачу отключения двигателя в случае перегрузки по току, напряжению и т.д и я делаю программно. Если я не ошибаюсь, то в схеме, приведенной Вами, нет аппаратного отключения моста при перегрузки. Нет опасений, что сбойнет МК? С другой стороны МК у Вас ARM, значит автоматом перейдет на внутренний RC если будут проблемы со внешним кварцом. Верно? Цитата(Dars @ Aug 14 2008, 16:43)  Ну на будущее, предлагаю посмотреть на мое решение для управления бесколлекторым(можно и коллекторным) двигателем.Есть возможность крутить движком с датчиками холла(аналог/цифр),оптическим квадратурным энкодером, sensorless mode. Ток измеряется с помощью внешнего ацп.Динамическое торможение присутствует. Раздельная цифровая и силовая земля. Да, посмотрел  Спасибо! Кое-что интересное уже сейчас увидел)
--------------------
Выбор.
|
|
|
|
|
Aug 14 2008, 13:55
|
Гуру
     
Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521

|
Цитата(haker_fox @ Aug 14 2008, 12:18)  Хорошо, значит это решение работает. Как то делал более 20А с пусковым током ~100 или более. Так что 6A - детский лепет.  Особенно сказывается если напряжение высокое. Ток сам по себе - ерунда. Подсмотрите силовую часть в стандартном приводе и постарайтесь ничего не выбрасывать. Например дросель. Я бы прислушился к мнению Dars. Считаю высказанное им очень справедливым. Я проходил когда-то нихромовую проволоку с компаратором. В конечном итоге конечно всё заработало... Если пойдёте по этому пути, то имейте ввиду следующие моменты. 1) Необходимо учесть скорость нарастания тока и время реакции вашей системы. 2) Необходимо ввести постоянную времени регулирования. Она должна соответствовать частотным характеристикам ваших ключей. Конечно это всё зависит от конкретного схемного решения. PS: Разделение цифровой и силовой земли - тоже очень хороший тон. На всех этапах.
|
|
|
|
|
Aug 14 2008, 15:24
|
Местный
  
Группа: Свой
Сообщений: 238
Регистрация: 11-08-05
Пользователь №: 7 557

|
Цитата(haker_fox @ Aug 14 2008, 13:18)  Если я не ошибаюсь, то в схеме, приведенной Вами, нет аппаратного отключения моста при перегрузки. Нет опасений, что сбойнет МК? С другой стороны МК у Вас ARM, значит автоматом перейдет на внутренний RC если будут проблемы со внешним кварцом. Верно? Аппаратного нет. есть программное. аппартаное здесь можно сделать только путем добавления шунта, который я ставить не хочу. на датчике тока от аллегро сделать аппаратную защиту не получиться, т.к rise time = 5мкс. а у меня там еще стоит фильтр на 2kHz( то есть rise time еще больше) для того чтобы с ацп снимать среднее значение тока и по нему управлять двигателем. МК не сбойнет. на схеме цифровое и силовое питания раздельны, помех никто не генерит.
|
|
|
|
|
Aug 15 2008, 03:48
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
Цитата(SasaVitebsk @ Aug 14 2008, 22:55)  Как то делал более 20А с пусковым током ~100 или более. Так что 6A - детский лепет.  Особенно сказывается если напряжение высокое. Ток сам по себе - ерунда. Подсмотрите силовую часть в стандартном приводе и постарайтесь ничего не выбрасывать. Например дросель. Хорошо. Я постараюсь найти и посмотреть схемы фирменных приводов. Цитата(SasaVitebsk @ Aug 14 2008, 22:55)  Я бы прислушился к мнению Dars. Считаю высказанное им очень справедливым. Я проходил когда-то нихромовую проволоку с компаратором. В конечном итоге конечно всё заработало... Ну вот  А я такой подход видел в нескольких аппликейшен от Microchip. Посмотрю еще раз, может быть там и были оговорки, на которые я не обратил внимание по неопытности. Цитата(SasaVitebsk @ Aug 14 2008, 22:55)  Если пойдёте по этому пути, то имейте ввиду следующие моменты. 1) Необходимо учесть скорость нарастания тока и время реакции вашей системы. Как я понимаю от этого зависит насколько быстро сработает защита? Или этот парамет еще что-то характеризует? Т.е. ток может очень медленно расти до критического уровня, скажем X амер, тогда почти любая защита сработает, включая предохранитель. Если же ток возрастет до критического уровня за очень малый промежуток времени (стремящийся в идеале к нулю), то не всякая защита успеет сработать. Это ли имелось в виду? Цитата(SasaVitebsk @ Aug 14 2008, 22:55)  2) Необходимо ввести постоянную времени регулирования. Она должна соответствовать частотным характеристикам ваших ключей. Можно чуть чуть подробнее. Не совсем понял о чем идет речь? Цитата(SasaVitebsk @ Aug 14 2008, 22:55)  PS: Разделение цифровой и силовой земли - тоже очень хороший тон. На всех этапах. Ну пока я руководствуюсь правилами с сахары, где говорится о разделении "чистой" и "грязной" землях. Цитата(Dars @ Aug 15 2008, 00:24)  Аппаратного нет. есть программное. аппартаное здесь можно сделать только путем добавления шунта, который я ставить не хочу. на датчике тока от аллегро сделать аппаратную защиту не получиться, т.к rise time = 5мкс. а у меня там еще стоит фильтр на 2kHz( то есть rise time еще больше) для того чтобы с ацп снимать среднее значение тока и по нему управлять двигателем. МК не сбойнет. на схеме цифровое и силовое питания раздельны, помех никто не генерит. Т.е. в Вашем случае имеется в виду, что от аппаратной защиты также и будет толку по причине высокого Rise Time? Аппаратная защита должна работать быстрее?
--------------------
Выбор.
|
|
|
|
|
Aug 15 2008, 04:41
|
;
     
Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509

|
Люди! Не нада нихром! Индуктивность - ай ай ай! Лучше обратить внимание либо на китайческие 5W резисторы (минимальной индуктивностью, которая пока что позволяет нормально работать, обладают резюки только с номиналом 0,1 Ом), либо по-честному на smd : CSM-2512, CSM-3516- это шунты, но у них нормы отпуска забацанные - по 1000 штук. Правда, это в наших краях... И компромисс - корпус 2512. Резюк порядка 10 миллиом - обычно не проблема. Далее, надо обязательно при измерениях тока избегать запуска УВХ АЦП в моменты коммутации нижних транзисторов. Иначе выбросы напряжения, которые появляются при коммутации, искажают инфу о токе. Таким образом, если использовать frequency correct PWM, необходимо запускать АЦП в "верхушке треугольника", да еще и чтоб время выборки было покороче. Про FAULT и компаратор- О-О-О! Проблема настолько надоела тем, что требует компромиссов, если плата не может обеспечить низкий уровень коммутационных помех, что хочеццо заплакать.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|