Электротранспорт

Пожалуйста, войдите или зарегистрируйтесь.

Расширенный поиск    

Новости:

Страницы: 123 ... 25>>Вниз

Автор Тема: Проект "MaxController"  (Прочитано 80988 раз)

0 Пользователей и 1 Гость просматривают эту тему.

jeka

  • Модератор
  • Местный
  • *****
  • Репутация:
    +74/-0
  • :
    3
    314
  • Сообщений: 757
  • Оффлайн Оффлайн
    • Награды
Проект "MaxController"
« : 23 Май 2010 в 23:54 »
Поиски нормального контроллера для вела к сожалению успехом не увенчались. Поэтому зрела идея собрать свой контроллер, и созрела.
Проект - хобби, в бизнес превращать не хочется. Поэтому делаем все для людей и собственного удовольствия.
Что я хочу от контроллера. В иделе:
1. Низкое потребление в режиме бездействия (<1ма). 60 ма от китайского контроллера (или двух на полном приводе) - сутки простоя и пол батареи нет.
2. Регулировка максимального тока.
3. Множество мелочей, такие как индикация заряда батарей, управление поворотниками и т.д.
4. Рекуперация с регулируемым ограничением по максимальному току и аналоговым управлением.
5. Диапазон допустимых напряжений: 20v - 100v.

Возможно нужные функции:
- реверс (если не той стороной поставили колесо)
- задний ход


Железо:
- Схема должна быть защищена от глюков микроконтроллера, т.е. одновременно 2 плеча мосфетов одновременно не могут быть открыты.
- Аварийное схемное закрытие мосфетов при большом токе.
- Схема и разводка печатной платы простая и интуитивно понятная, сжигание мосфетов не должно отправлять в гроб другие компоненты (максимум - драйверы мосфетов).
- При неправильном подключении контроллер не должен сгореть.
- Схемная часть с распространенными деталями, максимально простая и универсальная.
- Выход на 12v для питания доп. электрооборудования (лампочек, поворотников и т.д.) с макс. током 5A
- 5 свободных входов
- 4 управляемых выхода 12v, в т.ч. на стоп-сигнал по ручке тормоза.
- Съем сигналов с обмоток мотора для возможности крутить колесо без датчиков холла.
- Съем потребляемого/отдаваемого тока и напряжения батарей.
- Внешний дисплей (не оязателен) с кнопками для установки на руль. Соединяется он с контроллером по 3м проводам (плюс-минус-data). С его помощью можно менять любые настройки контроллера.
- Разумеется, jtag интерфейс для внутрисхемной перепрошивки.
Ручки газа-тормоза также можно подключать к дисплею (ликвидируем паутину из проводов).
- Возможно, будет полезен акселерометр.

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

Предварительно, цена всех компонентов для построения контроллера в чип-дипе (учитывая завышенные цены чипа) будет около 4000р (кроме корпуса, платы и внешнего дисплея).


Основные компоненты схемной части.

Ключи: IRFP4468PBF Nкан 100В/290А TO247AC. Корпус to220 не хочу: во-первых менее мощные выводы, во-вторых в корпусе TO247 проще изолировать винты от радиатора.
Драйвер: IR2110S. Нравится тем, что просто паять, минимум деталей.
Контроллер: MSP430F1222IPW

Схему как нарисую выложу для всеобщей критики.

Открытые вопросы:
Открыт вопрос с корпусом для контроллера.
Нужен энтузиаст, который может помочь с разводкой платы: нужно в altium designer или на худой конец в pcad создать/найти все компоненты из списка (список по запросу отошлю), развести плату по схеме (схема на мне).
Ваши предложения по нужным функциям контроллера и помощи.

LiFe A123 40AH/78v, max-e, крошка 3 витка.
На форуме бываю нерегулярно, поэтому лучше звонить чем писать в личку. Телефон adaptto: +7 495 215 2878.

nikvic

  • Старожил
  • *****
  • Репутация:
    +59/-3
  • :
    1
    52
  • Сообщений: 2933
  • Москва, ЮЗ.
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #1 : 24 Май 2010 в 00:04 »
Что я хочу от контроллера. В идеале:
Хорошо бы "настоящий синус" на выходе и возможность сдвигать его по фазе для достижения макс. КПД для разных режимов.

jeka

  • Модератор
  • Местный
  • *****
  • Репутация:
    +74/-0
  • :
    3
    314
  • Сообщений: 757
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #2 : 24 Май 2010 в 01:52 »
Насколько я понимаю, это ни что иное как вынос преобразователя с индуктивностей мотора на индуктивности контроллера. Т.е. 3 катушки индуктивности со сглаживающими фильтрами, устанавливаемые между мотором и контроллером.
Можете дать параметры катушек (материал, параметры намотки), расчет их КПД и частоту преобразования? И как делать сглаживающие фильтры, чтоб отсечь частоту преобразования от мотора с минимумом потерь? Какой будет выигрыш?

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

LiFe A123 40AH/78v, max-e, крошка 3 витка.
На форуме бываю нерегулярно, поэтому лучше звонить чем писать в личку. Телефон adaptto: +7 495 215 2878.

aL75

  • Администратор
  • Местный
  • *
  • Репутация:
    +65/-1
  • :
    0
    4
  • Сообщений: 521
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #3 : 24 Май 2010 в 03:11 »
Цитата
Насколько я понимаю, это ни что иное как вынос преобразователя с индуктивностей мотора на индуктивности контроллера. Т.е. 3 катушки индуктивности со сглаживающими фильтрами, устанавливаемые между мотором и контроллером.
Речь немного не том... Почитайте апноту от Атмела AVR447 http://www.atmel.com/dyn/resources/prod_documents/doc8010.pdf или аналогичную от Микрочипа .

jeka

  • Модератор
  • Местный
  • *****
  • Репутация:
    +74/-0
  • :
    3
    314
  • Сообщений: 757
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #4 : 24 Май 2010 в 05:11 »
Такое управление псевдо-синусом изначально и планировалось. Думал, что идет речь о подаче на мотор чистого синуса, а не pwm-модулированных сигналов.

Изменение: контроллер будет msp430f149. В f1222 одного канала таймера не хватает.

LiFe A123 40AH/78v, max-e, крошка 3 витка.
На форуме бываю нерегулярно, поэтому лучше звонить чем писать в личку. Телефон adaptto: +7 495 215 2878.

DarthGray

  • Наш человек
  • ***
  • Репутация:
    +36/-0
  • :
    1
    9
  • Сообщений: 396
  • Москва - Выхино
  • Сопротивление БЕСПОЛЕЗНО!!!
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #5 : 24 Май 2010 в 10:30 »
Цитата
Предварительно, цена всех компонентов для построения контроллера в чип-дипе (учитывая завышенные цены чипа) будет около 4000р
Предпочитаю иметь дело с Платаном
Тот же IR2110S в Чипе 160р., а в Платане 56р.
Почувствуйте разницу...

Различие между теорией и практикой на практике гораздо больше, чем в теории.

DarthGray

  • Наш человек
  • ***
  • Репутация:
    +36/-0
  • :
    1
    9
  • Сообщений: 396
  • Москва - Выхино
  • Сопротивление БЕСПОЛЕЗНО!!!
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #6 : 24 Май 2010 в 10:33 »
На самом деле у меня тоже была мысль замутить свой контроллер
Только я планировал делать на основе C8051F410
(Ну кто с чем привык работать...)

Различие между теорией и практикой на практике гораздо больше, чем в теории.

FAS_r7

  • ЭЧ, электротранспорт в крови
  • Старожил
  • *
  • Репутация:
    +292/-0
  • :
    3353
    566
  • Сообщений: 3955
  • Москва_Хамовники
  • Молния с эбонитовым ускорителем - круче только горы в которых еще на катал )))
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #7 : 24 Май 2010 в 11:43 »
Изменение: контроллер будет msp430f149.
А вот это вообще здорово.
у 149-й  как я помню три канала ШИМ у одного таймера, и ажъ 7 у второго.  Да и вообще, машинка суперовая!
У меня имеется "готовое решение" для модуля индикации на графическом дисплее - мой велокомп, на этом же 149м контроллере. Может кто-то кажет 149-й "жирно" для модуля индикации, но как есть. При желании можно и что-то полегче поставить, главное чтобы флэша для прорисовки шрифтов хватило. А так, его только немного упростить надо, убрав лишнее.  Ещё протокол для обмена с основной частью контроллера напрограммить.

jeka

  • Модератор
  • Местный
  • *****
  • Репутация:
    +74/-0
  • :
    3
    314
  • Сообщений: 757
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #8 : 24 Май 2010 в 15:07 »
MSP еще очень удобен тем, что дебаг через jtag у него отличный. Ничем не уступает дебагу для ПК.

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

Если видели подходящие корпуса с радиаторами, высказывайтесь.
Еще ведется розыск нормального индикатора с подсветкой. На штатный велокомповый плююсь - ни фига не видно.
Все еще ищется спец, готовый помочь с разводкой платы в altium designer.

LiFe A123 40AH/78v, max-e, крошка 3 витка.
На форуме бываю нерегулярно, поэтому лучше звонить чем писать в личку. Телефон adaptto: +7 495 215 2878.

FAS_r7

  • ЭЧ, электротранспорт в крови
  • Старожил
  • *
  • Репутация:
    +292/-0
  • :
    3353
    566
  • Сообщений: 3955
  • Москва_Хамовники
  • Молния с эбонитовым ускорителем - круче только горы в которых еще на катал )))
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #9 : 24 Май 2010 в 16:10 »
Если уж и упрощать модуль индикации, то в нём только дисплей и нужно оставить, он по и2ц шине грузится. :)  А, ещё кнопки и ручки газа-тормоза надо в эту шину например включить (т.е. что-то мини микроконтроллерное понадобится).
Только как-то не нравится мне идея всё впихать в один F149. Прорисовка содержимого экрана в оперативе и его отгрузка в дисплей занимает прилично ресурсов.  А тут ему же ещё и за всем остальным следить придётся, ШИМы менять, ещё чего-то.   Что думают коллеги по этому поводу?

PS  по поводу плат, я их разводил в paint'е    :D  (во маньяк скажут некоторые)
По поводу корпуса тоже пока не нашел более красивого решения, чем стандартный алюм кожух от китайского контроллера.

jeka

  • Модератор
  • Местный
  • *****
  • Репутация:
    +74/-0
  • :
    3
    314
  • Сообщений: 757
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #10 : 24 Май 2010 в 19:58 »
Ничего страшного. Мотор будет полностью обрабатываться по прерываниям, т.е. процессор по ресурсам будет процентов на 90 свободен. Главное - не запрещать прерывания на длительное время.
По платам - я тоже разводил в программе sprint-layout. Это аналог paint-a, только заточенный для рисования двухсторонних плат. Как поработал в pcad - обплевался. В altium designer гораздо лучше, больше возможностей и понятнее. Буквально за день разобрался как компоненты схему делать.

LiFe A123 40AH/78v, max-e, крошка 3 витка.
На форуме бываю нерегулярно, поэтому лучше звонить чем писать в личку. Телефон adaptto: +7 495 215 2878.

FAS_r7

  • ЭЧ, электротранспорт в крови
  • Старожил
  • *
  • Репутация:
    +292/-0
  • :
    3353
    566
  • Сообщений: 3955
  • Москва_Хамовники
  • Молния с эбонитовым ускорителем - круче только горы в которых еще на катал )))
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #11 : 24 Май 2010 в 22:46 »
Ничего страшного. Мотор будет полностью обрабатываться по прерываниям, т.е. процессор по ресурсам будет процентов на 90 свободен.
Ну вообще-то у меня весь софт кроме первичной инициализации вертится в прерываниях :be:
АЦП намерил - прерывание, SPI байт передал - прерывание, таймер часов тикнул - основное прерывание (кнопки, отрисовка содержимого ЖКИ, и пр.), геркон в колесе щелкнул - прерывание, и т.д. и т.п. 
главное не запутаться когда что может прерывать, выполнять и т.д.. Ну и стек не переполнять, блин его так. :bu:

И как я знаю, вроде такое построение ОС вполне нормально.   или я  слишком_религиозен \ отстал_от_жизни  ?


Кстати, наверное вы правы. Один F149 должен справиться. Ведь крутить МК не такая уж и сложная задача. Если мне память не изменяет, там с этим один таймер с тремя ШИМами почти без вмешательства софта справится (там вроде даже dead_time аппаратный есть).  Надо освежать знания по многочисленным фишкам его таймеров, навороченные они там  :af:

jeka

  • Модератор
  • Местный
  • *****
  • Репутация:
    +74/-0
  • :
    3
    314
  • Сообщений: 757
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #12 : 25 Май 2010 в 01:01 »
Схема мосфетового плеча:


Ищите косяки, критикуйте.

LiFe A123 40AH/78v, max-e, крошка 3 витка.
На форуме бываю нерегулярно, поэтому лучше звонить чем писать в личку. Телефон adaptto: +7 495 215 2878.

zap

  • Администратор
  • Старожил
  • *
  • Репутация:
    +506/-17
  • :
    141
    1340
  • Сообщений: 11416
  • Санкт-Петербург
  • Оффлайн Оффлайн
    • electrotransport.ru
    • Награды
Re: Проект "MaxController"
« Ответ #13 : 25 Май 2010 в 03:16 »
Я бы не стал пихать всё в один микроконтроллер.

Мне кажется, схему надо разделить на два модуля:

- Сопсно контроллер мотора - в бензобаке или рядом.
- Модуль индикации, фары и прочие некритичные свистелки-перделки, возможно велокомп - на руле.

Не хотелось бы при подвисании процедуры отрисовки дисплея сжечь мотор или ещё чего-нить в этом роде.

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

Я себе сейчас делаю модуль свистелок-перделок (проект назвал Electric Bike Alarm & Lights, сокращённо...), заднюю фару на такой вот хреновине. Задняя фара уже полностью работает, сделал простенький скриптовый язык, можно выводить навороченные многопоточные анимации, пишутся очень просто и легко. Сейчас делаю звонок, потом займусь передней фарой.

12 вольт чтобы не заморачиваться лучше взять готовый dc-dc контроллер, их дофига разных, лучше сделать сложно и геммор ненужный.

100 вольт на мой взгляд избыточны, но это пусть каждый себе ставит какие мосфеты хочет :) для батареи 48В лучше взять какой-нибудь IRFP3207 или IRFP3077, они дешевле и сопротивление канала меньше.

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

Далее с одной стороны хотелось бы ещё один мосфет между шунтом и нижним концом всех трёх фаз, чтобы был аварийный рубильник на случай пробития обоих плеч одной из фаз (как у меня - хорошо, дорожка сгорела, аккумулятор спасло). С другой стороны, даже при сопротивлении канала 3 миллиома при токе 40 ампер эта хрень будет жрать аж 5 ватт... жаба душит :)

Насчёт драйверов, я смотрел в сторону HIP4086, он сразу трёхфазный, с программируемым dead time. Правда выходной ток всего 0.5А на канал, не очень понятно насколько этого хватит для заполнения ёмкости затворов мосфетов.

По поводу аналогового управления рекуперацией - я себе это представляю так: ручка газа повёрнута на максимум (100%), в этот момент левой рукой чуть давлю на тормоз, включается режим рекуперации и ограничение тока в (100%-100%=0%) от максимума. Постепенно отпускаю правой рукой ручку газа, соответственно увеличиваю ток рекуперации. То есть тормоз работает в обратном направлении газу.

Аналоговое управление рекуперацией очень хорошая штука при спуске с гор итд, тогда можно мягко регулировать скорость спуска а лишнюю энергию сбрасывать в аккумулятор.
« Последнее редактирование: 25 Май 2010 в 03:35 от zap »

С уважением,
Андрей

lotos

  • Мастер
  • Начинающий
  • ******
  • Репутация:
    +15/-0
  • :
    0
    2
  • Сообщений: 51
  • deltacat.ru
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #14 : 25 Май 2010 в 06:31 »

Если видели подходящие корпуса с радиаторами, высказывайтесь.
Еще ведется розыск нормального индикатора с подсветкой. На штатный велокомповый плююсь - ни фига не видно.
Все еще ищется спец, готовый помочь с разводкой платы в altium designer.
У китайцев в качестве корпуса используется обычный разрезанный алюминиевый профиль, дешево и сердито, и людям нравится :)

deltacat.ru

zap

  • Администратор
  • Старожил
  • *
  • Репутация:
    +506/-17
  • :
    141
    1340
  • Сообщений: 11416
  • Санкт-Петербург
  • Оффлайн Оффлайн
    • electrotransport.ru
    • Награды
Re: Проект "MaxController"
« Ответ #15 : 25 Май 2010 в 09:58 »
У китайцев в качестве корпуса используется обычный разрезанный алюминиевый профиль, дешево и сердито, и людям нравится :)
Это не обычный профиль, это специальный профиль для изготовления корпусов :) Я такие в чипидипе видел кажись, по-моему от корейской фирмы Gainta.

С уважением,
Андрей

DarthGray

  • Наш человек
  • ***
  • Репутация:
    +36/-0
  • :
    1
    9
  • Сообщений: 396
  • Москва - Выхино
  • Сопротивление БЕСПОЛЕЗНО!!!
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #16 : 25 Май 2010 в 10:32 »
Может имеет смысл поставить IR2184?
У него dead time внутри, а то обвески многовато получается

Различие между теорией и практикой на практике гораздо больше, чем в теории.

i

  • Администратор
  • Старожил
  • *
  • Репутация:
    +265/-2
  • :
    58
    431
  • Сообщений: 3112
  • Иваново
  • Оффлайн Оффлайн
    • Награды
Re: Проект "MaxController"
« Ответ #17 : 25 Май 2010 в 10:32 »
Спаял вот такую штуку, но ещё не написал программу, так как не решил точно, что мне надо.
Нечто подобное требуемому, только не "Max..", я за разделение функций и упрощения модулей.

Страницы: 123 ... 25>>Вверх