Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Сомнения: доверять или не доверять AVR управление H-bridge
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Страницы: 1, 2, 3
haker_fox
Здравствуйте!
Основная тема здесь. Там шло обсуждение простого H-bridge. Упор с моей стороны делался на то, чтобы не ставить внешнюю защиту в виде логики или той же IR2104, а поручить все управление (dead-time, реверс, шим, защиту от КЗ моста одновременным включением пары транзисторов по одну сторону моста) МК. Был выбран ATmega168. В общем начиная с 20 поста вопрос о конструктиве моста более менее решился, и мы пришли к выводу, что такая идея вполне жизнеспособна. Конечно нужно предпринять ряд защит - аппаратных защит, но не очень дорогих и которые сработают наверняка, причем выполнят только функцию защиты в экстренном случае - КЗ.
В общем на данный момент я хочу реализовать управление всеми 4 транзисторами моста - напрямую. Требования не высокие: ШИМ 900 - 4000 Гц, движок будет плавно разгоняться (всегда) -> пускового тока большого не будет, номинальный ток макс. 600 ма.
Чтобы повысить надежность устройства и свести к минимуму возможные сбои МК, хочу выполнить следующее:
1. По питанию всего моста поставить электролит 100 или 3000 мкф + керам. 0.1 мк + керам. 100н.
2. Обязательно включить BOD на 4.5 В.
3. Всю раздачу питания на МК, на мост и тд выполнять звездой. Т.е. из одной общ. точки. Цепи кварца и сброса выполнить согласно правилам из известной статьи на сахаре.
4. Корп. кварца заземлить. Не уверен, надо ли?
5. Установить бит CKOPT.
6. К схеме будут подключены датчики (оптические концевики и энкодеры) прводом длиной не более 5 м. Их хочу подключить через витую пару. На плате сигнальные провода будут заводиться через RC фильтр + возможно феррит. колечки.
7. Питание на схему будет подаваться через плавкий предохранитель. Пока не знаю, какой номинал выбрать.

Все эти требования были получены после изучения статьи на сахаре + изучение веток в этом форуме о сбоях, помехоустойчивости МК.

Вся схема: силовая и цифровая будут гальванически связаны. Силовая будет питаться от этого БП (S-320-27: 27В, 11А), а цифровая - от обычного компьютерного AT. Всего таких схемы управления двигателями нужно 3 + главный МК, который будет управлять этими движками и другими исполнительными механизмами. Но все это продолжение этой темы.
Собственно говоря хочу здесь спросить, т.к. это уже не касается напрямую электропривода, можно ли при таком подходе надеяться на устойчивую работу приводов?
У меня есть сомнения по поводу разделения МК и силовых ключей оптопарами: надо ли? + может быть нужно оставить защиту на буферах 74hc02 (схема в топике по первой ссылке) от КЗ моста?
По поводу dead-time я не беспокоюсь: реверс двигателя или его экстренное торможению буду делать только при выключенном ШИМе.
Прошу прощения, если выразил несколько сумбурно свои мысли.
Также надеюсь, что модераторы не сочтут это за кросспостинг: дело в том, что темы хоть и три по разным веткам и они решают один вопрос, но они все таки разные.
Всем заранее большое спасибо за ответы и хорошую критику!
P.S. все несколько омрачняет то, что печатки не будет, весь монтаж на макетке проводом МГТФ(
Rst7
Ну лично я не боюсь управлять импульсными источниками при помощи Tiny15/Tiny26. Управлять - в смысле шим генерить и обратную связь по току/напряжению изготавливать. Я думаю, что и тут проблем не будет.

Цитата
все несколько омрачняет то, что печатки не будет, весь монтаж на макетке проводом МГТФ(


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

Рассмотрите вопрос работы от внутреннего RC-генератора с синхронизацией частоты по внешнему сигналу (если даже и пропадет, то сердце у контроллера не станет).

Цитата
а цифровая - от обычного компьютерного AT


Я бы сделал нормальный источник. Свой. Потому что компьютерные питальники сейчас обычно суть мрачная китайчатина, на что-то надеяться - можно здорово пролететь.
Dog Pawlowa
Цитата(haker_fox @ Aug 8 2008, 07:16) *
Всем заранее большое спасибо за ответы и хорошую критику!

1) Определяющим будет правильность разводки земли и, соответственно, наличие токов помех в общих цепях. На этом фоне немного смешно читать про плавный разгон двигателя - все равно будет первый импульс тока через нераскрученный двигатель, да и торможение, наверное.
2) Я не стал бы делать такой проект без аппаратной защиты от сквозных токов.
3) Да и мотивация непонятна - драйверы перестали выпускать?
4) На частоте 4 кГц двигатель будет нудно звенеть.
haker_fox
Цитата(Rst7 @ Aug 8 2008, 14:18) *
Ну лично я не боюсь управлять импульсными источниками при помощи Tiny15/Tiny26. Управлять - в смысле шим генерить и обратную связь по току/напряжению изготавливать. Я думаю, что и тут проблем не будет.

А есть в Ваших цепях гальваническая развязка?
Цитата(Rst7 @ Aug 8 2008, 14:18) *
Это да, мрачновато. Сделайте хотя бы бутерброд из макетки и фольгированного текстолита, фольга которого будет земляным полигоном. Разрежете фольгу в нужном месте для разделения земель.

Спасибо за этот совет!!!
Цитата(Rst7 @ Aug 8 2008, 14:18) *
Рассмотрите вопрос работы от внутреннего RC-генератора с синхронизацией частоты по внешнему сигналу (если даже и пропадет, то сердце у контроллера не станет).

Простите, не совсем понял каким образом это можно сделать?
Цитата(Rst7 @ Aug 8 2008, 14:18) *
Я бы сделал нормальный источник. Свой. Потому что компьютерные питальники сейчас обычно суть мрачная китайчатина, на что-то надеяться - можно здорово пролететь.

К сожалению я не специалист в источниках питания( Максимум что я могу сделать: транс + выпрямитель + фильтр + 7805 = БП.
Блоки питания есть довольно таки старые: 10 летней давности - рабочие. Может быть тогда было получше с качевством?

Цитата(Dog Pawlowa @ Aug 8 2008, 14:19) *
1) Определяющим будет правильность разводки земли и, соответственно, наличие токов помех в общих цепях.

Согласен!
Цитата(Dog Pawlowa @ Aug 8 2008, 14:19) *
На этом фоне немного смешно читать про плавный разгон двигателя - все равно будет первый импульс тока

Но он будет небольшой! Или здесь есть подводные камни?
Конечно, если движок включится на полные обороты мгновенно в результате сбоя, то тут можно получить действительно солидную помеху.
Цитата(Dog Pawlowa @ Aug 8 2008, 14:19) *
2) Я не стал бы делать такой проект без аппаратной защиты от сквозных токов.

Т.е. dead-time?
Цитата(Dog Pawlowa @ Aug 8 2008, 14:19) *
3) Да и мотивация непонятна - драйверы перестали выпускать?

Нет. Детали закуплены. Бюджета почти больше нет. ВУЗ всетаки. a14.gif Денег на свободный полет нет. Моя вина, что не составил в свое время список с запасом.
Цитата(Dog Pawlowa @ Aug 8 2008, 14:19) *
4) На частоте 4 кГц двигатель будет нудно звенеть.

На 1000 Гц не звенит. Неужели при повышении частоты в 4 раза - будет? sad.gif
Rst7
Цитата(haker_fox @ Aug 8 2008, 08:50) *
А есть в Ваших цепях гальваническая развязка?


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

Цитата
Простите, не совсем понял каким образом это можно сделать?


Начнем с простого. Нужна ли Вам вообще стабильность задающего генератора? Если нет - то просто RC. Если да - то имеет смысл сделать отдельный кварцевый генератор (или взять кварцованную частоту с другой части прибора, если есть) и, поделив ее, использовать как синхронизацию процессоров, работающих от внутреннего RC (синхронизация программная, конечно). Вплоть до того, что можно организовать типа АПЧ внутреннего RC-генератора, например таким банальным способом:

Код
#pragma vector=TIMER2_OVF_vect
__interrupt void INT_PLL(void)
{
  unsigned int i=TCNT1;
  TCNT1=0;
  if (i<7813)
    OSCCAL++; //Увеличиваем тактовую частоту
  else
    OSCCAL--; //Уменьшаем тактовую частоту
  SECOND_PULSE=1;
}


Тут в процедуре прерывания 1 раз в секунду от таймера 2 (он едет от кварца 32768, можно использовать внешний источник точной частоты) проверяется, сколько насчитал за это время таймер 1 (тактируется от основного генератора, которым является внутренний RC-генератор) и подстраивается OSCCAL.

Если вдруг у Вас пропадет точная тактовая, то процессор будет продолжать работу и можно перейти в аварийный режим (например, зарядив Output Compare таймера 1 на аварийное значение и при приходе этого прерывания перейти в аварийный режим).

Кстати, такой подстройки вполне достаточно для работы UART.

Вообщем, я думаю, идея ясна, методов конкретной реализации может быть масса.
Kirill Trusov
странно, у меня если шим на 1 килогерц, то я и слышу писк в 1 килогерц, или не так?
Dog Pawlowa
Цитата(haker_fox @ Aug 8 2008, 08:50) *
Т.е. dead-time?

Да. Обеспечьте невозможность включения верхнего и нижнего полумоста аппаратно.
Считайте это моей личной просьбой smile.gif

Цитата(haker_fox @ Aug 8 2008, 08:50) *
Нет. Детали закуплены. Бюджета почти больше нет. ВУЗ всетаки. a14.gif Денег на свободный полет нет. Моя вина, что не составил в свое время список с запасом.

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

Цитата(haker_fox @ Aug 8 2008, 08:50) *
На 1000 Гц не звенит. Неужели при повышении частоты в 4 раза - будет? sad.gif

Те моторы, с которыми я работал, звучали противно. Но ток был за 3А. Может, Ваш мотор получше, да и нагрузка поменьше. Кстати, проверьте на полной нагрузке.
haker_fox
Цитата(Rst7 @ Aug 8 2008, 15:09) *
В цепях обратной связи часто бывает. В цепях управления - не делал, там обычно для верхних ключей самодельные драйверы на транзисторах. Нижние часто вообще от ножек проца катаются.

Ну я абсолютно также и подразумевал в своем случае! a14.gif
Цитата(Rst7 @ Aug 8 2008, 15:09) *
Начнем с простого. Нужна ли Вам вообще стабильность задающего генератора? Если нет - то просто RC. Если да - то имеет смысл сделать отдельный кварцевый генератор (или взять кварцованную частоту с другой части прибора, если есть) и, поделив ее, использовать как синхронизацию процессоров,

Стабильность нужна: UART, PID алгоритм. А зачем ее (частоту) делить? Сразу и подавать на тактирование МК. Или я ошибаюсь в чем-то?
Цитата(Rst7 @ Aug 8 2008, 15:09) *
Вообщем, я думаю, идея ясна, методов конкретной реализации может быть масса.

Да, идея вполне ясна и понятна! Спасибо!
Но мне больше нравится вариант со внешним генератором!
Кстати, немного не понимаю, а почему внешний генератор стабильнее встроенного?


Цитата(Dog Pawlowa @ Aug 8 2008, 15:11) *
Да. Обеспечьте невозможность включения верхнего и нижнего полумоста аппаратно.
Считайте это моей личной просьбой smile.gif

на данный момент в экспериментальной версии моста эта сделано. и работает. Оставлю! Честно говоря по этому поводу сам колебался. Ведь в случае чего попалю транзисторы + возможно МК.


Цитата(Dog Pawlowa @ Aug 8 2008, 15:11) *
Считайте это моей личной просьбой smile.gif

Я солидарен с Вами)))
Цитата(Dog Pawlowa @ Aug 8 2008, 15:11) *
Понимаю... но затраты времени больше получатся. В наше время ценится умение складывать готовые кирпичи, а не месить бетон.

И я это понимаю. Но не мне Вам объянять какой бюракротизм бывает в конторах) Про бетон: а лишний опыт не помешает)))
Цитата(Dog Pawlowa @ Aug 8 2008, 15:11) *
Те моторы, с которыми я работал, звучали противно. Но ток был за 3А. Может, Ваш мотор получше, да и нагрузка поменьше. Кстати, проверьте на полной нагрузке.

Проверял под нагрузкой - не пищал. Конечно мне медвед на ухо наступил, но наверно я бы услышал)))
Rst7
Цитата
А зачем ее (частоту) делить? Сразу и подавать на тактирование МК.


Вопрос в том, что если что-то случится с тактовым генератором, то процессор остановится. Или, того хуже, если влетит по тактовому входу помеха, то может быть что угодно (в параметрах камня, кстати, оговаривается минимальная длительность состояний на тактовом входе). По наблюдениям, внутренний RC намного более помехоустойчивей кварцевого. По банальной причине - ничего нет снаружи кристалла.

Цитата
почему внешний генератор стабильнее встроенного?


Я имею в виду внешний кварцевый (или кварц снаружи, а сам генератор внутри проца) и внутренний RC.
haker_fox
Цитата(Rst7 @ Aug 8 2008, 15:33) *
Вопрос в том, что если что-то случится с тактовым генератором, то процессор остановится. Или, того хуже, если влетит по тактовому входу помеха, то может быть что угодно (в параметрах камня, кстати, оговаривается минимальная длительность состояний на тактовом входе). По наблюдениям, внутренний RC намного более помехоустойчивей кварцевого. По банальной причине - ничего нет снаружи кристалла.
Я имею в виду внешний кварцевый (или кварц снаружи, а сам генератор внутри проца) и внутренний RC.

Теперь я Вас понял! Но я боюсь, хватит ли мне 8 МГц встроенного генератора? Дело в том, что сейчас все работает на 16МГц от кварца. Это в отладочной тестовой версии...
Но буду пробывать, оптимизировать, большее делать нечего.
Petka
Цитата(haker_fox @ Aug 8 2008, 08:16) *
...
1. По питанию всего моста поставить электролит 100 или 3000 мкф + керам. 0.1 мк + керам. 100н.
...

что в лоб, что по лбу 07.gif
haker_fox
Цитата(Petka @ Aug 8 2008, 16:41) *
что в лоб, что по лбу 07.gif

Пожалуйста, будьте добры, поясните свою мысль))
Sat360
Цитата(haker_fox @ Aug 8 2008, 10:43) *
Пожалуйста, будьте добры, поясните свою мысль))

Имеется в виду вопрос - чем 0,1 микрофарада отличается от 100 нанофарад, и зачем их ставить обе wink.gif
haker_fox
Цитата(Sat360 @ Aug 8 2008, 16:49) *
Имеется в виду вопрос - чем 0,1 микрофарада отличается от 100 нанофарад, и зачем их ставить обе wink.gif

Елки, палки... ошибься crying.gif Не о том подумал в тот момент, когда писал...
Flasher
1.аппаратная защита от включения верха и низа моста.
2. На цепь сброса 4700пик и 2,2кОм
3.внешний кварц с кондерами сделать отдельной цепью и расположить прямо на выводы мк.
4.Под мк земляной полигон и соединить с общим для мк.
5.Все датчики ведите через оптроны- питание можно не развязывать, но из-за малых проходных емкостей избежите тиристорного защелкивания.
6.На все питающие пары мк не жалеть керамики 0,1мкф
7.Все-таки лучше развязать мк и мост типа 6n137 или лучше h11l1
8.мк питать от трансформаторного бп.- на вход трансформатора цепочу снабера, на выход- супрессор .
9. На выход кренки не ставить больших емкостей.
10. Всё это, плюс описанное в первом пункте позволит создать очень надежное устройство
11.Неплохо было бы чтобы в сброшенном состоянии мк на входах моста было бы четкие зафиксированные состояния.
haker_fox
Цитата(Flasher @ Aug 8 2008, 17:01) *
1.аппаратная защита от включения верха и низа моста.
2. На цепь сброса 4700пик и 2,2кОм
3.внешний кварц с кондерами сделать отдельной цепью и расположить прямо на выводы мк.
4.Под мк земляной полигон и соединить с общим для мк.
5.Все датчики ведите через оптроны- питание можно не развязывать, но из-за малых проходных емкостей избежите тиристорного защелкивания.
6.На все питающие пары мк не жалеть керамики 0,1мкф
7.Все-таки лучше развязать мк и мост типа 6n137 или лучше h11l1
8.мк питать от трансформаторного бп.- на вход трансформатора цепочу снабера, на выход- супрессор .
9. На выход кренки не ставить больших емкостей.
10. Всё это, плюс описанное в первом пункте позволит создать очень надежное устройство

1. Уже принято!
2. Ок.
3. Тут вроде сошлись, что нужно внутрениий RC генератор использовать.
4. Ок.
5. А можно подробнее, что это такое - тиристорное защелкивание?
6. Согласен!
7. На этот случай брал четырехканальные CNY74-4H. Но чем это лучше, если не развязывать питание?
8. Если не секрет, почему?
9. Согласен!
10. Хотелось бы!!!
Flasher
внутренний генератор -излишняя штука. если нужно быстро работать- то зачем экономить.5.-Эффект моп структур, возникающий при превышении напряжения питания -всё нафик открывается и начинает греться как печка. лечиться только выключением питания. 7.Я имел ввиду не развязывать питание от входных датчиков, но пускать через оптопары. И все же лучше применить на выходе быстродействующие оптопары со шмидтом. 8.Проходная емкость плюс еще несколько плюсов.

там еще 11 пункт вспомнился
Пипец
Делал аналогичное устройство, только на PICе. Использовал драйвера IR21xx (как 2101, но поновее, счас не помню). Дёргал только верхний транзистор (нижний на полупериод постоянно открыт или закрыт). Между контроллером и драйвером логика защиты, на одной дешевой 4053 (для одного полного Н-моста), без дополнительного тактового сигнала (что видел у конкурентов). Схему не дам - сам придумай, мне моя нравится как know-how ;-) Закрывает транзисторы по сигналу с измерительного (защитного) шунта (+компаратор). И еще - контроллер ШИМ не успевал, и я использовал табличную дельта-сигма модуляцию (несколько дней екселем генерил вставку в программу), 256 тактов на период.
haker_fox
Цитата(Flasher @ Aug 8 2008, 17:32) *
внутренний генератор -излишняя штука. если нужно быстро работать- то зачем экономить.

Тем не менее внутренний генератор более устойчив к сбоям нежели внешний.
Цитата(Flasher @ Aug 8 2008, 17:32) *
5.-Эффект моп структур, возникающий при превышении напряжения питания -всё нафик открывается и начинает греться как печка. лечиться только выключением питания. 7.Я имел ввиду не развязывать питание от входных датчиков, но пускать через оптопары.

Т.е. питание не развязываем, а сигнальные линии - да, верно?
Цитата(Flasher @ Aug 8 2008, 17:32) *
И все же лучше применить на выходе быстродействующие оптопары со шмидтом.

Про тригер шмитта согласен!
Цитата(Flasher @ Aug 8 2008, 17:32) *
8.Проходная емкость плюс еще несколько плюсов.

Т.е. импульсному БП ход закрыт?
Цитата(Flasher @ Aug 8 2008, 17:32) *
там еще 11 пункт вспомнился

Какой?
Flasher
и все пабежали патентавать нау-хау.... smile.gif
haker_fox
Цитата(Пипец @ Aug 8 2008, 17:57) *
Между контроллером и драйвером логика защиты, на одной дешевой 4053 (для одного полного Н-моста)

а зачем логика защиты, если был применен драйвер?


Цитата(Пипец @ Aug 8 2008, 17:57) *
Схему не дам - сам придумай, мне моя нравится как know-how ;-)

Конечно! smile.gif
Цитата(Пипец @ Aug 8 2008, 17:57) *
Закрывает транзисторы по сигналу с измерительного (защитного) шунта (+компаратор).

Над подобным решением я тоже думаю. Выглядит заманчиво. Хотя мне бы хотелось измерять потребляемый ток АЦП и задавать аварийный предел программно.
Цитата(Пипец @ Aug 8 2008, 17:57) *
И еще - контроллер ШИМ не успевал, и я использовал табличную дельта-сигма модуляцию (несколько дней екселем генерил вставку в программу), 256 тактов на период.

Т.е. контроллер ШИМ был не аппаратным? Или можно подробнее, что значит - не успевал? smile.gif
Flasher
на предущей странице пункт 11. Импульсный БП можно, но тут нужно думатьsmile.gif, дабы потом не задаваться вопросами почему сбоит, перегружается и прошивка слетает.
А без шмидта бред управлять. 5.Питание на датчик через резисторы, а вот чтоб оно на ногу мк не попало- ставим оптопару. По поводу внутреннего RC- долго раскачивается, возможен нестабильный запуск. К тому же вы это будете на атомном реакторе ставить????
Rst7
Цитата
По поводу внутреннего RC- долго раскачивается


Вы шутите? Читаем даташит, 6+14 тактов - время старта без дополнительных задержек.

Цитата
возможен нестабильный запуск.


Да ну?
haker_fox
Цитата(Flasher @ Aug 8 2008, 18:38) *
на предущей странице пункт 11. Импульсный БП можно, но тут нужно думатьsmile.gif, дабы потом не задаваться вопросами почему сбоит, перегружается и прошивка слетает.

Интересно, может быть кто-то еще скажет по этому поводу...



Цитата(Flasher @ Aug 8 2008, 18:38) *
А без шмидта бред управлять.

Не подумал об этом... Теперь придется выкручиваться. Докупть отдельные микросхемы.
Цитата(Flasher @ Aug 8 2008, 18:38) *
.Питание на датчик через резисторы, а вот чтоб оно на ногу мк не попало- ставим оптопару.

Боюсь, что через резистры не выйдет: в датчиках стоит компаратор, на базе ОУ и ему питание нужно. На резисторах будет падение. Теперь про оптрон ясно. Но RC цепь в этом случае не спасет?
Пипец
Цитата(haker_fox @ Aug 8 2008, 13:36) *
а зачем логика защиты, если был применен драйвер?

Потому что вдувание тока в затвор и защита всего устройства (ограничение выходного тока) - разные функции.

Цитата(haker_fox @ Aug 8 2008, 13:36) *
Над подобным решением я тоже думаю. Выглядит заманчиво. Хотя мне бы хотелось измерять потребляемый ток АЦП и задавать аварийный предел программно.


И снова завязываться на за возможное зависание/сбой контроллера? Как рабочую функцию (с АЦП) использовать можно, как аварийную быстродействующую (работает на кажлом импульсе модуляции, в отличии от АЦПированной) - нет. КЗ ловились компаратором, который через логику обрезал хвост открывающему импульсу, но разрешал следующий (до перегрузки на нем). Ни на каком АЦП и процессоре такого быстродействия не получишь. Но, в принципе, можно получить на контроллере, имеющем настоящую программируемую асинхронную логику.

Цитата(haker_fox @ Aug 8 2008, 13:36) *
Т.е. контроллер ШИМ был не аппаратным? Или можно подробнее, что значит - не успевал? smile.gif

ШИМ (точнее, ДСМ) выдавал ПИК. На ожидание прерывания осталось всего 4 такта.
Flasher
Цитата(Rst7 @ Aug 8 2008, 12:48) *
Вы шутите? Читаем даташит, 6+14 тактов - время старта без дополнительных задержек.
Да ну?

Да хто ж спорит, что вы читать умеете? Нравится -используйте. Только на улице свои девайсы не ставьте....

Цитата(haker_fox @ Aug 8 2008, 13:00) *
Интересно, может быть кто-то еще скажет по этому поводу...



Боюсь, что через резистры не выйдет: в датчиках стоит компаратор, на базе ОУ и ему питание нужно. На резисторах будет падение. Теперь про оптрон ясно. Но RC цепь в этом случае не спасет?

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


Стоят. На улицах сотнями. Десятками тысяч стоят в помещениях, не всегда отапливаемых.
Flasher
Цитата(Rst7 @ Aug 8 2008, 13:36) *
Стоят. На улицах сотнями. Десятками тысяч стоят в помещениях, не всегда отапливаемых.

Повезло с типом мк.
Rst7
Цитата
Повезло с типом мк.


Неа, не повезло. Наружный RC у него действительно очень хреново работает.
Flasher
Цитата(Rst7 @ Aug 8 2008, 13:44) *
Неа, не повезло. Наружный RC у него действительно очень хреново работает.

У меня в 2 экземплярах внутренний хреновил при -10. Поэтому предпочитаю на серъезные вещи кварц ставить.
defunct
Цитата(Flasher @ Aug 8 2008, 13:52) *
У меня в 2 экземплярах внутренний хреновил при -10. Поэтому предпочитаю на серъезные вещи кварц ставить.

Насчет применений в БП в мостах и проч где имеем дело с мощными помехами, я солидарен с Rst7 - никаких кварцев!
насчет -10 разве это проблема? МК может сам себя нагревать, портом об землю вот вам уже -10 а +30. smile.gif

PS: если серьезно думаецо не RC хреновил, а что-то другое хреновило.
Paulina
еще советую дроссель на выходе
singlskv
Цитата(defunct @ Aug 8 2008, 15:11) *
Насчет применений в БП в мостах и проч где имеем дело с мощными помехами, я солидарен с Rst7 - никаких кварцев!
+1000
На "горячей" стороне никаких кварцев быть не должно...
Внутренний RC рулит, если нужно при этом связь с компомпом, тогда что-нить типа как предложил
Rst7 в посте N 5, только я бы коррекцию не делал в прерывании, неправильно это ИМХО...
haker_fox
Цитата(Пипец @ Aug 8 2008, 19:07) *
И снова завязываться на за возможное зависание/сбой контроллера? Как рабочую функцию (с АЦП) использовать можно, как аварийную быстродействующую (работает на кажлом импульсе модуляции, в отличии от АЦПированной) - нет. КЗ ловились компаратором, который через логику обрезал хвост открывающему импульсу, но разрешал следующий (до перегрузки на нем).

Тут несколько выше решили, что аппаратную защиту от одновременного открывания верхнего и нижнего полумоста нужно оставить. Т.о. КЗ исключается. Оно может возникнуть лишь при пробоях транзисторов. Конечно остается только надеяться, что в этот момент не зависнет МК. Но если он даже и завис, есть еще предохранитель. Да и сам БП, ссылку на который я приводил выше, имеет защиту от перегрузок. Но вообще над этим пунктом нужно конечно подумать.

Цитата(Flasher @ Aug 8 2008, 19:13) *
А че говорить- думать надо, книжки читать, статьи всякие, либо плюнуть на советы всех и самому нарисовать эквивалентную схему устройства для импульсных помех.... Вот тогда придется за голову хвататься...
Ну тогда LC фильтр и супрессоры.

Читаю, думаю... но и здесь консультируюсь.

Чтож, Вы
Цитата(defunct @ Aug 8 2008, 20:11) *
Насчет применений в БП в мостах и проч где имеем дело с мощными помехами, я солидарен с Rst7 - никаких кварцев!

и Вы

Цитата(singlskv @ Aug 9 2008, 04:45) *
+1000
На "горячей" стороне никаких кварцев быть не должно...

окончательно меня убедили! Никаких кварцев!
Цитата(singlskv @ Aug 9 2008, 04:45) *
Rst7 в посте N 5, только я бы коррекцию не делал в прерывании, неправильно это ИМХО...

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



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

И еще: Всем, абсолютно Всем спасибо за Ваши советы, рекомендации и здоровую критику!!! Я очень Вам благодарен!!!
_Pasha
Цитата(haker_fox @ Aug 9 2008, 07:28) *


1.Товарисч со странным именем ПИПЕЦ недоговорил - он явно использовал независимый верхний и нижний драйвера в одном корпусе - там deadtime и не пахнет.
2. Мне все-таки оч. интересно, зачем в хозяйстве этом, в данном конкретном случае гальваническая развязка lol.gif
3. Про внутренний RC с внешним синхрогенератором +1000.
4. Продолжение - в исходной теме smile.gif
Flasher
Цитата(haker_fox @ Aug 9 2008, 06:28) *
И еще вопрос: я верно понял, что если даже я полностью развяжу через оптроны всю силовую часть и внешние датчики от МК и его обвязки, это не спасет от помех, которые могут привести к сбою МК? Те же оптроны имеют емкость. Помеха может быть просто наведена на ножки МК и тд. Т.е. оптроны здесь не сыграют решающей роли? Млм все таки можно так поступить, тогда и кварц можно будет вернуть? Хотя сильно сомневаюсь.

верно.если к тебе в схему попадет энергия помехи, то она должна куда-то уйти. как правило, при кривой разводке она уходит через все что можно на поверхность уравнивания потенциала создавая падения напряжения на всех цепях, в том числе и через частотозадающие цепи. Именно поэтому горе- разработчеги стараются избавиться от кварца, даже не понимая по какой причине они это делают. Основная задача-таким образом спроектировать схему и пп, чтобы помеха извне не залезла внутрь критических узлов. А дальше- рисовать эквивалентные схемы, думать и слушать истеричек про ненадежность кварцев в эпицентре ядерного взрыва.
Пипец
Цитата(haker_fox @ Aug 9 2008, 07:28) *
Тут несколько выше решили, что аппаратную защиту от одновременного открывания верхнего и нижнего полумоста нужно оставить. Т.о. КЗ исключается. Оно может возникнуть лишь при пробоях транзисторов. Конечно остается только надеяться, что в этот момент не зависнет МК. Но если он даже и завис, есть еще предохранитель. Да и сам БП, ссылку на который я приводил выше, имеет защиту от перегрузок. Но вообще над этим пунктом нужно конечно подумать.
Читаю, думаю... но и здесь консультируюсь.

Дедтайм защищает не от КЗ, а от сквозного тока. Нет никакой гарантии, что в момент КЗ (в нагрузке, интереснее всего в ёмкостной) от броска тока (ЭМИ) процессор не зависнет. У меня была важна живучесть и надежность (приборы ушли на серьёзный борт).

Цитата(_Pasha @ Aug 9 2008, 11:11) *
1.Товарисч со странным именем ПИПЕЦ

Есть и более странные - _ПАША, например...
Цитата(_Pasha @ Aug 9 2008, 11:11) *
недоговорил - он явно использовал независимый верхний и нижний драйвера в одном корпусе - там deadtime и не пахнет.

Проверил (вчера не было под рукой архивов, а дело происходило лет пять назад) - я применил одновходовый драйвер с внутренним расщепителем. Тоже из серии IR21xx.
singlskv
Цитата(haker_fox @ Aug 9 2008, 07:28) *
Почему? Ведь прерывание как раз гарантируем нам, что синхронизация будет происходить в любом случае каждые n секунд, и не какой процесс не сможет помешать этому, если конечно не выключит прерываыния глобально.
ИМХО, не очень правильно подстраивать частоту во время передачи по UART,
а это иногда будет происходить, хотя наверное и будет работать.
Rst7
Цитата(Flasher @ Aug 9 2008, 10:34) *
Именно поэтому горе- разработчеги стараются избавиться от кварца, даже не понимая по какой причине они это делают.


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

Цитата(singlskv @ Aug 9 2008, 13:16) *
ИМХО, не очень правильно подстраивать частоту во время передачи по UART,
а это иногда будет происходить, хотя наверное и будет работать.


Обоснуйте? Я же меняю не UBRR, а немного подстраиваю частоту задающего RC-генератора. В даташитах (особенно последних) есть указание, что за один раз не следует менять частоту более чем на сколько-то процентов. 1 у.е. регистра OSCCAL - это меньше этого порога, посему никакого криминала нет. Кстати, не так давно появился апнот у атмела с аналогичным содержанием (я то пользуюсь данной фичей уже много лет). Можете найти там все ответы на интересующие Вас вопросы.
singlskv
Цитата(Rst7 @ Aug 9 2008, 15:06) *
Обоснуйте? Я же меняю не UBRR, а немного подстраиваю частоту задающего RC-генератора. В даташитах (особенно последних) есть указание, что за один раз не следует менять частоту более чем на сколько-то процентов. 1 у.е. регистра OSCCAL - это меньше этого порога, посему никакого криминала нет. Кстати, не так давно появился апнот у атмела с аналогичным содержанием (я то пользуюсь данной фичей уже много лет). Можете найти там все ответы на интересующие Вас вопросы.
Мне просто не очень нравится перестройка частоты мк во время приема по UART(+-2% в
худшем случае), конечно для маленьких скоростей UART это явно не критично,
HO, учитывая изначальную ошибку для больших скоростей на 8Мгц тактовой
и учитывая что ошибка на 2 стороне тоже может присутствовать,
ИМХО, перестройку тактовой нужно делать не в моменты передачи, и
возможно лучше путем мониторинга времянок на UART(тогда и низкоскоростной кварц вроде как и не
нужен).
Rst7
Цитата
конечно для маленьких скоростей UART это явно не критично,


Это не критично для любых скоростей - шаг настройки менее 1 процента. Вопрос не в абсолютном изменении частоты, а в относительном.

Цитата
ИМХО, перестройку тактовой нужно делать не в моменты передачи


Повторяю - не важно, в какой момент происходит подстройка частоты. Главное, чтобы за время между двумя перестройками частота не изменилась более чем на 2% - тогда все будет пучком. А т.к. частота зависит в основном от температуры (питание от любого вменяемого стабилизатора уже мало влияет), то (из-за медленного изменения температуры по сравнению с циклом подстройки) подстройка частоты всегда будет обеспечивать требуемый результат.

Цитата
и возможно лучше путем мониторинга времянок на UART(тогда и низкоскоростной кварц вроде как и ненужен).


Такой вариант тоже допустим - АПЧ по длительности битов в UART. Только сложнее.
singlskv
Цитата(Rst7 @ Aug 9 2008, 18:28) *
Это не критично для любых скоростей - шаг настройки менее 1 процента. Вопрос не в абсолютном изменении частоты, а в относительном.
В момент перестройки частоты скачком нас уже интересует абсолютное изменение,
грубо говоря, если скачок произошел на первом бите то и все последующие
будем ловить со сдвигом... а если было изначальное несоответствие частот +
%ошибки на 2 стороне...
Цитата
Повторяю - не важно, в какой момент происходит подстройка частоты. Главное, чтобы за время между двумя перестройками частота не изменилась более чем на 2% - тогда все будет пучком. А т.к. частота зависит в основном от температуры (питание от любого вменяемого стабилизатора уже мало влияет), то (из-за медленного изменения температуры по сравнению с циклом подстройки) подстройка частоты всегда будет обеспечивать требуемый результат.
Я согласен с тем что в нужный диапазон мы вписываемся, мне
просто не очень нравится метод...
Цитата
Такой вариант тоже допустим - АПЧ по длительности битов в UART. Только сложнее.

Сложнее, но ИМХО правильнее, а еще лучше для связи с "горячей" частью использовать
совсем не UART.
Rst7
Цитата
если скачок произошел на первом бите то и все последующие будем ловить со сдвигом... а если было изначальное несоответствие частот + %ошибки на 2 стороне...


Ну тут конечно допустимая ошибка на другой стороне должна быть не более обычной максимальной ошибки (это примерно 4% для 10 бит) минус неточность нашей подстройки (не более 1%) - т.е. грубо говоря 3%. Следовательно, даже 2 устройства с подстраиваемыми RC-генераторами будут работать при любых условиях.

Цитата
мнепросто не очень нравится метод...


Не нравится - не пользуйтесь. Главное - неправильные посылы в неокрепшие умы не закладывайте smile.gif

Цитата
Сложнее, но ИМХО правильнее,


Ингода сложность реализации может пересилить все прелести... А прелесть одна - минус одна линия связи (референсная частота). Все остальное - тоже самое или сложнее.
singlskv
Цитата(Rst7 @ Aug 9 2008, 23:24) *
Ну тут конечно допустимая ошибка на другой стороне должна быть не более обычной максимальной ошибки (это примерно 4% для 10 бит) минус неточность нашей подстройки (не более 1%) - т.е. грубо говоря 3%. Следовательно, даже 2 устройства с подстраиваемыми RC-генераторами будут работать при любых условиях.
По своему опыту, закладываться можно не более чем на 1,5% на одной стороне.
да и в конечном итоге, сделать так чтобы подстройка частоты в Вашем варианте была
не во время передачи, это всего лишь 1 лишний флаг и одна проверка...
Цитата
Не нравится - не пользуйтесь. Главное - неправильные посылы в неокрепшие умы не закладывайте smile.gif
Ингода сложность реализации может пересилить все прелести... А прелесть одна - минус одна линия связи (референсная частота). Все остальное - тоже самое или сложнее.

Ну вроде как я предлагаю неокрепшим умам просто дополнительные варианты...
Наверное я подстрекатель... smile.gif
Rst7
Цитата
По своему опыту, закладываться можно не более чем на 1,5% на одной стороне.


Нет проблем. Особенно, с учетом того, что можно подстоиться не на ровно 8МГц, а на частоту, хорошо делящююся для UARTа - например для 115200 - 7.3728 МГц или 9.216МГц. Или, что ближе, использовать 2X, и настроиться на частоту 8.2944МГц.

Я почему спорю (уже десяток постов мы тут не по теме организовали) - потому что утвержедние, что нельзя подстраиваться в момент передачи - оно, мягко говоря, ложно. Никаких проблем подстройка частоты в момент передачи за собой не повлечет. И при приеме - тоже.

Предлагаю данный флуд прекратить, или попросим модераторов вынести наше обсуждение в отдельный тред.
EmbedElektrik
кстати, недавно попадалась плата от упса, на ней 2 мк было, и у обоих были кварцы. И это при том что плата однослойка, так что с разводкой там особо не пошикуешь.
haker_fox
Цитата(_Pasha @ Aug 9 2008, 16:11) *
1.Товарисч со странным именем ПИПЕЦ недоговорил - он явно использовал независимый верхний и нижний драйвера в одном корпусе - там deadtime и не пахнет.

Понятно.
Цитата(_Pasha @ Aug 9 2008, 16:11) *
2. Мне все-таки оч. интересно, зачем в хозяйстве этом, в данном конкретном случае гальваническая развязка

Ну хотя бы на случай защитить входы МК при пробое силовых ключей.
Цитата(_Pasha @ Aug 9 2008, 16:11) *
3. Про внутренний RC с внешним синхрогенератором +1000.

Отлично! Столько "голосов" собрано за такой подход! a14.gif Значит быть сему!
Цитата(_Pasha @ Aug 9 2008, 16:11) *
4. Продолжение - в исходной теме smile.gif

Ага) Я прочитал. Даже кое-что предположил)))


Цитата(Flasher @ Aug 9 2008, 16:34) *
Именно поэтому горе- разработчеги стараются избавиться от кварца, даже не понимая по какой причине они это делают. Основная задача-таким образом спроектировать схему и пп, чтобы помеха извне не залезла внутрь критических узлов. А дальше- рисовать эквивалентные схемы, думать и слушать истеричек про ненадежность кварцев в эпицентре ядерного взрыва.

Все таки не стоит так выражаться в отношении людей, высказавшихся здесь! За что им большая благодарность! Это же люди, которые занимаются силовой техникой! К их мнению нужно прислушиваться! Зачем им говорить впустую?
slog
Использовать мега168 в мостовом инверторе не совсем правильно. Этот вариант конечно может существовать, и по нему многие уже ходили, и я в том числе. Но вобще-то это не правильный путь. Не создавайте себе проблем на ровном месте, для этого надо использовать специально заточенный проц. Если уж совсем нет сил изучить что-то кроме AVR можно пользоваться AT90PWM3. При правильной разводке с внешним кварцем проблем не должно быть. А вот правильная разводка моста, да еще без опторазвязки как тут предлагалось - это не очень простая задача, даже без печатной платы.
И еще я так понял планируется программно обрабатывать сигналы с оптических энкодеров? Если энкодеры используются в братной связи по положению и если хотите приключений - то флаг вам в руки.
Вообще-то тема управления двигателями достаточно консервативна. В ней есть стандартные решения на все случаи жизни. И изобретение своих велосипедов это в будущем просто бег по заранее разложенным самим собой граблям.
Удачи smile.gif
haker_fox
Цитата(EmbedElektrik @ Aug 11 2008, 05:55) *
кстати, недавно попадалась плата от упса, на ней 2 мк было, и у обоих были кварцы. И это при том что плата однослойка, так что с разводкой там особо не пошикуешь.

Хм... а эти МК точно заведовали силовой частью? может быть чем-то другим занимались, не критичным к сбою?

Цитата(slog @ Aug 11 2008, 14:59) *
Использовать мега168 в мостовом инверторе не совсем правильно. Этот вариант конечно может существовать, и по нему многие уже ходили, и я в том числе. Но вобще-то это не правильный путь. Не создавайте себе проблем на ровном месте, для этого надо использовать специально заточенный проц.

простите, а чем он будет лучше, чем ATmega168? Каналы PWM есть.
Цитата(slog @ Aug 11 2008, 14:59) *
Если уж совсем нет сил изучить что-то кроме AVR можно пользоваться AT90PWM3. При правильной разводке с внешним кварцем проблем не должно быть.

Силы изучить есть. Даже ARM немного попробывал. Но по причинам, описанным здесь, решил поставить AVR во главе каждого привода.
Если использовать AT90PWMX, что измениться? У него другой генератор, который не застопориться от внешний помехи? Как мне ясно из всего топика, дело не в правильной разводке.

Цитата(slog @ Aug 11 2008, 14:59) *
А вот правильная разводка моста, да еще без опторазвязки как тут предлагалось - это не очень простая задача, даже без печатной платы.

Да, это мне тоже ясно из анализа топиков подобных тем.
Цитата(slog @ Aug 11 2008, 14:59) *
И еще я так понял планируется программно обрабатывать сигналы с оптических энкодеров? Если энкодеры используются в братной связи по положению и если хотите приключений - то флаг вам в руки.

А какие приключения могут меня подстерегать? Предварительно собранная конструкция проходила испытания. Сбоев не было.
Цитата(slog @ Aug 11 2008, 14:59) *
Вообще-то тема управления двигателями достаточно консервативна. В ней есть стандартные решения на все случаи жизни. И изобретение своих велосипедов это в будущем просто бег по заранее разложенным самим собой граблям.
Удачи smile.gif

Так никто не изобретает велосипедов) Я читал Application Motes от Microchip, там есть интересные доки по приводы, так вот, там примерно такой же подход как и у меня. Я также анализировал один App Note от NXP по управлению коллекторником. Тоже особых отличий нет.
Если Вы имеете ввиду управление мостом без спец. драйвера, то в одном из постов уважаемый Rst7 говорил, что он тоже использует схему на транзисторах для управления верхними мостами.
В общем я бы хотел услышать несколько больше конкретики, нежели общих замечания, типа "если хотите проблем, используйте XXX, если не хотите - ZZZ" (без обид).
Также здесь уважаемый _Pasha предложил интересную мысль запараллелить мосты L298, т.о. мост на полевиках и самодельных драйверах может быть можно и исключить. Но основные вопросы по помехоустойчивости и надежности привода остаются.
Flasher
весёлый подход- создание принципиальной схемы путем всеобщего голосования. Демократия какая-то получается... Может тогда сделать ветку в виде опроса- ставить кварц или не ставить, номинал резистора 1к или 330 Ом ...
К тому же тут уже зарегистрировано 40 000 специалистов- страна просто ими завалена...
Господа, ну серъезнее надо быть- то что 20 человек кричат, еще не есть разумное решение, тем более что советы как из Г. сделать конфетку хитро выкрученными способами уже вызывают недоумения.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.