Перейти к содержанию
    

jeka

Свой
  • Постов

    467
  • Зарегистрирован

  • Посещение

Весь контент jeka


  1. STM32H7 SDMMC

    Мне кажется смысла мало заморачиваться с выравниванием. Проще dma переключить на байтовый режим и всё. ибо 25мб/s не та скорость чтоб память ощутимо тормозить начала.
  2. STM32H7 SDMMC

    Тоже сейчас ковыряюсь с h743 и sd, запускаю без конвертора напряжений на 3.3v Через hal пока нормально работает только поллинг. Как только включаю irq/idma, чтение тупит и по тайм-ауту вываливается. irq какие-то прилетают, отдаю в hal. но в дебаггере ловлю флаг overrun (вероятно из-за остановки дебагером). Но поллинг не устраивает, ибо нужна скорость. Задач много, своё писать и hal глубоко расковыривать не очень хочется. Если есть рабочая реализация под rtos (желательно без hal) может поделитесь наработками? Бюджет обговариается :) upd: вроде разобрался. оказывается DMA пишет только в регион памяти AXISRAM.
  3. Кстати интересное решение - изолированный операционник: http://www.ti.com/lit/ug/tidub91a/tidub91a.pdf Для высоковольных шунтов лекарство :)
  4. Про трассировку рекомендую почитать например https://epc-co.com/epc/Portals/0/epc/documents/papers/Optimizing PCB Layout with eGaN FETs.pdf Amaora человек явно с опытом. Все правильно пишет. Шунты (да и лишние дорожки) на больших токах греются, петли тока существенно больше (опять же индуктивность и нагрев выше). А это выбросы при переходных процессах.
  5. Именно, индуктивность меняется. Под действием тока насыщение меняется по довольно сложному закону (примерно модуль суммы потоков катушек и магнитов), но если построить модель мотора и просчитывать ошибку расчетных от фактическизх значений, можно очень точно определить положение ротора, хоть на нулевой скорости, хоть в реверсе, и главное при любом токе (в форсаже даже точнее будет). Собственно на трапеции мы стартуем потому что напряжение болтающейся фазы формируется отношением индуктивности 2х фаз (которое при увеличении тока увеличивается), и которое по мере раскрутки по фазе совпадает с ЭДС
  6. Если речь про HFI (т.е. частоты до 200-1000 Гц), то да. Но тогда мотор в пищалку превращается. Я с этим еще давно немного игрался. Не очень понравилось. Может что не правильно делал, но точность замера получалась невысокой, особенно при форсаже по току все уплывало и срывалось. Либо сильную модуляцию качать, но тогда звук очень сильный. Лучший вариант был стартовать на бездатчиковой трапеции, при этом опционально сделать мягкое переключение фаз чтоб не щёлкало.
  7. Пробовал так. Но... Чтоб получить хоть какую-то точность di/dt на обычных датчиках нужен либо довольно большой временной интервал между замерами di, иначе шума будет очень много или дорогие точные датчики ставить. Особенно плохо это будет работать на моторах с высокой индуктивностью. Вариант с трансформаторами что сейчас ощутимо лучше работает чем по датчикам тока. По инжекции частоты - она особо не нужна (кроме точек где обе фазы коммутируются очень близко по времени, там можно небольшую инжекцию добавить). У нас есть интервал когда все 3 фазы замкнуты, тогда на датчиках будет ЭДС мотора (с поправкой на резиситивные потери). И еще 2 комбинации подключения фаз, по которым можно определить di/dt за вычетом ЭДС. Еще проблемка, добавляющая хлопот - эти датчики ловят всё неподалеку где есть резкие транзиенты тока. Поэтому их нужно тщательно экранировать от импульсных преобразователей, особенно от петли тока на ФЕТах. Но это решаемо даже в более-менее копактном исполнении.
  8. Индуктивность можно замерять по разности показаний при прямом и обратном включении фазы. Заодно и примерную ЭДС можно из этих данных получить.
  9. Небольшой оффтоп. Вы случаем не сталкивались с вопросом мгновенного измерения индуктивности обмоток? хочется сделать хороший бездатчик, да и для точного регулирования тока штука полезная. Пробовал трансформатор на фазах, но проблема в том что у них время стабилизации напряжения на вторичке довольно большое. Желтый канал на осциллограмме выше это он. Выполнен либо как катушка в том же зазоре где и датчик холла, либо небольшая печатная воздушная катушка витков 5-6 одной стороной на дорожке фазы, результат примерно одинаковый. Не пойму физику процесса, что мешает быстрому установлению напряжения на вторичке после коммутации? Или после переключения di/dt так себя и ведет и зря я на трансформатор грешу?
  10. Дроссель было проще припаять. Можно с таким же успехом мотор воткнуть, результат не поменяется :) Отсекать dc можно, потому что я фокусник. Секрет фокуса что в одном цикле ШИМ можно оцифровать всё - и нулевой ток, и первую фазу и вторую.
  11. Там конденсатор отсекает DC а не фильтрует LPF. Вот фотка осциллограммы с тестов шунта. красный - выход фазы, синий - сигнал с шунта. На дросселе в момент включения ток с +xx до -xx менялся, через ноль по середине проходил.
  12. Время стабилизации на этой схеме получалось вполне комфортное - около 5% от периода ШИМ (20 кГц). Там же RF транзистор :) В основном мешались иголки от емкости фетов.
  13. оцифровывая в разные моменты времени, когда ключи в разной конфигурации открыты. Также и ноль определял, когда все нижние ключи открыты. На низких оборотах добавлял небольшую дельта-модуляцию разнесенную по времени на разных фазах
  14. Я имел в виду ПИД который d и q токи регулирует. Интегральная составляющая под нагрузку настраивается, а пропорциональная под текущую индуктивность d и q осей
  15. Мне кажется не самое удачное решение. Во-первых, громоздко, во-вторых переходные процессы будут мешать, еще усиление разных операционников немного отличаться будет, еще емкость фетов при переключении дает иголки, особенно если их загонять в быстрый режим где начинаются небольшие микропробои PN канала. Я делал гальваноразвязанную схему с оцифровкой шунта непосредственно на фазах и дальше по цифре оно слалось в главный процессор. Оно действительно хорошо работало, но... ощутимого выигрыша в сравнении с холлами не ощутил и в итоге отказался, единственный плюс - чуть выше линейность и точный ноль тока. Но на вращении мотора это не ощущается совсем.
  16. ШИМ 20 кГц. Ток 10А. Хотя на подобной схеме парни делали и на 300А. Задачи жестко выдерживать траекторию скорости-ускорения не было. Вообще, удержание динамики (скорости/ускорения) мотора - вопрос в первую очередь алгоритма регулирования, а не схемы. Схема позволяет получить ток с запозданием на 1 цикл шима, с небольшим перекосом из-за смещения точки оцифровки. И один замер на такт. По скорости, я закладывал шустрый алгоритм, с ПИД (с автонастройкой по индуктивности мотора) с предсказанием ошибки, позволяющий ошибку тока за где-то 3 такта скорректировать на 90%. Отработки транзиентов нагрузки не тестировал. Тестировал отработку транзиентов изменения тяги - дав задание резко поднять ток или опустить. За 0.5 мс где-то отрабатывал.
  17. Вот такой простейшей дешманской схемой, всего с одним шунтом и усилителем на транзисторе, я крутил FOC. И вполне норм работает.
  18. UPD: Да, если управлять только 6-step трапецией, то один общий шунт на минусе вполне подойдет.
  19. Делал недавно драйвер ШД на FOC. Как раз хотел сделать дешманвариант для ШД чтоб можно было крутить быстро не опасаясь срывов/потери шагов. Вывода такие: FOC вполне хорошо подходит для бездатчика на оборотах выше 10% от максимальных. Но в режиме ослабления поля на бездатчике были сложности, в итоге я от него отказался (частично потому что процессор заложил слабенький и ресурсов на эксперименты там почти нет). В результате сравнительно с обычными DTC драйверами по 200 руб, по скорости выигрыш минимальный (если настроить правильно профиль ускорения). Но отсутствие срывов если он набрал небольшую скорость, штука прикльная. И ноль можно ловить по пропуску шага. Если нужно чтоб прям летало, то надо в сторону сервы смотреть. Хоббийный моторчик с холлами/энкодером как дешманвариант.
  20. Чисто по опыту, в каждой схеме есть свои плюсы и минусы. а) шунт на фазе применим при низком питающем напряжении, нужно 2 шунта на 2х фазах. Защиту от КЗ на нем не сделаешь. Из плюсов - позволяет земерять ток в любой момент времени. б) датчик холла на фазе Для больших токов оптимальный вариант. Единственный недостаток - есть небольшой гистерезис. в) 3 шунта на минусе Позволяет сделать защиту от КЗ, из минусов - на низких оборотах фазный ток течет через 2 шунта, что греет шунты. г) 1 общий шунт на минусе от 3х фаз Позволяет сделать защиту от КЗ, из минусов - нужно делать дельта-модуляцию и несколько хитрить с ШИМом на высоких оборотах. Но на низких оборотах ток течет между ФЕТами напрямую, минуя шунт. Также точки измерения токов в разных фазах смещены по времени и при большой дельте тока в рамках одного ШИМ импульса будет давать некую ошибку тока. Его можно частично скомпенсировать математикой, но далеко не идеально. Варианты В и Г для частот выше 30-40 кГц подходят не очень хорошо, ибо нужно время для стабилизации показаний на шунте. Ну и требует АЦП с возможностью захвата в нужных временных точках. Чтоб посоветовать лучшую схему для конкретной задачи, надо знать напряжение, фазный ток, индуктивность мотора, обороты.
  21. драйвера есть в sot23. Но к сожалению недешевые (рублей 60) по цене - россыпью 40р примерно. преобразователь с обвесом рублей в 30 получается. выходные транзисторы в схеме выше парные. 2 входных вероятно можно на сдвоенный а-ля bc846/856 поменять без последствий. получается 4 корпуса транзисторов.
  22. громоздкость по сравнению со схемой выше. получается нет выигрыша ни по размеру, ни по цене. к плюсам можно было б отнести увеличение и стабилизация напряжения затворов, но в данном случае это не плюс - работать на полную мощность планируется от 3.5 до 4.2в, что оптимально для затворов с точки зрения энергозатрат (не вкачиваем лишнее напряжение = лишняя энергия на затворах, как при высоком напряжении, и феты достаточно хорошо открываются от 3.5в).
×
×
  • Создать...