Реклама: AVR, STM, MSP или другой МК в качестве универсальной замены чипа на контроллере.

 

Хочешь стать куратором любимой темы?

* Комментарии к новостям

1. iBalance Bandit 60V32Ah (Электросамокаты) от Иракли (27.06.2019 в 11:54)2. Адреса, явки, пароли... Каждый пишет о себе, чтобы найти соседей и встречаться. (Самара) от russstand (27.06.2019 в 11:49)3. Li-ion Аккумуляторы характеристики, опыт эксплуатации. (Литий-ионные (Li-Ion) и литий-полимерные (Li-Pol) аккумуляторы) от Tymmmi (27.06.2019 в 11:47)4. Сварка 18650 - какие токи и длительности импульсов под 0.15 и 0.2 ленту? (Инструменты и технологии) от Beria (27.06.2019 в 11:46)5. SPeed Savage A10 48/26, A10 Dual 52/23, A11 dual 60/26, S11 dual 60/32 panasonic (Электросамокаты Speed Savage) от Bibylya (27.06.2019 в 11:45)6. Асинхронный двигатель ASPP (Электродвигатели и генераторы) от slav (27.06.2019 в 11:45)
7. Обсуждаем чупасосы (продувка мотора) без чупиной цензуры (Электровелосипеды) от Чайнег (27.06.2019 в 11:44)8. Kugoo M4 pro 16Aч (Электросамокаты Kugoo M и G серии и аналоги ) от torlandash (27.06.2019 в 11:44)9. А нужно ли гидроизолировать? (Электросамокаты Kugoo S серии и аналоги ) от vip69 (27.06.2019 в 11:41)10. (2018) Моноколесо Gotway MSuper X (Моноколёса GotWay) от aMADs (27.06.2019 в 11:37)11. Kugoo S2 FAQ (Электросамокаты Kugoo S серии и аналоги ) от vip69 (27.06.2019 в 11:36)12. Педальный тяж "Ракетка" (3 квт с торк сенсором и ядрён контроллером) (Электровелосипеды) от Stanislavchik (27.06.2019 в 11:36)
Не нравится реклама? Пройдите простую регистрацию на форуме и не будете видеть рекламу.

Прочитано 1335 раз

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

09 Июл 2018 в 19:30
Прочитано 1335 раз
Оффлайн

prostosergik

Markovići, Crna Gora Сообщений: 187
Привет братва.

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

Вопрос в следующем. Поскольку электроника там боле лимене (с)(тм) одинаковая, уровни сигналов тоже, может где-то уже существует прошивка для ATMega такая, чтобы просто подключить соответствующие ножки на нужные места, и оно выполняло бы базовую функциональность: контроль мотора, газ 1.1-4.8в, тормоза по низкому уровню, круиз, остальное не надо.

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

Ну или подскажите проект опенхардвер контроллера на базе AVR. Почему не STM? Да можно и STM в принципе =) Но c AVR опыта больше, там я могу подправить код под свои нужды.

Спасибо!
« Последнее редактирование: 14 Авг 2018 в 19:34 от prostosergik »

09 Июл 2018 в 19:45
Ответ #1
Оффлайн

fondrosel

Москва, измайлово\гольяново Сообщений: 1592
Подобные темы уже обсуждались на форуме. Все кто мог написать прошивку ушли в коммерцию и бесплатно ничего не раздают, а кто не может тот не может. Так что это хоть и не плохая но тупиковая идея, если только не начать писать самому
Сообщение понравилось: prostosergik

09 Июл 2018 в 23:09
Ответ #2
Оффлайн

acyd

Хлынов=Вятка=Киров Сообщений: 3933
В теме про модельный движок товарищ Pawel поделился контроллером на авр. Там и схема и прошивка, контроллер реально рабочий, сам собирал с нуля, по технологии лут.
Думаю можно прикрутить управляющие ноги к драйверам китайца.
Но учтите надежность такой надстройки :neg:+ там с рождения нет более-менее вменяемых защит,  круиза и тормоза вроде не было, зато есть выход на экран.

В качестве ознакомления с принципом работы микроконтроллеров имеет смысл, но времени и сил заберет, проще купить нормальный контроллер.
« Последнее редактирование: 09 Июл 2018 в 23:14 от acyd »

10 Июл 2018 в 10:08
Ответ #3
Оффлайн

495

улус Джучи ТёплыйСтан Сообщений: 52
В фирменной документации можно много чего найти .
ссылка
Меня интересовал бездатчиковый режим , в закладках осталась ссылка .
Если АЦП у всех контроллеров мало отличаются , то таймеры и компараторы сильно влияют на код , сужу по отличию PIC и MSP430 . АЦП часто работает вместо пары компаратор + ЦАП , но на порядок медленее .
 Сделать можно , если не копать недостатки существующей схемотехники , а то можно закопаться  . /:-)
« Последнее редактирование: 10 Июл 2018 в 11:06 от 495 »

12 Июл 2018 в 02:19
Ответ #4
Оффлайн

prostosergik

Markovići, Crna Gora Сообщений: 187
У меня на самом деле полу-академический интерес. Нашел пару проектов, нужно будет таки сесть, поправить прошивку и постараться завести =) Но на всякий случай заказал еще 4 шт MC33035. Если не МК, так хоть оно. Бездатчиковый режим не нужен, рекуперация не нужна, тормоз по низкому уровню реализуется очень просто без вмешательства МК, плавный старт не нужен, круиз тоже... ну такое, короче.

Окей, раз никто это еще не сделал, попробую сделать я себе. Если получится удачно - выложу свои наработки. 

12 Июл 2018 в 06:00
Ответ #5
Онлайн

TRO

Украина, г. Запорожье. Сообщений: 7380
В большинстве контроллеров которые сейчас есть применяются микроконтроллеры с встроенным трехфазным ШИМом аппаратно заточенным под управление моторами (имеющим деадтаймы и входы защиты по току). Дешевые AVR туда прямой заменой очень плохо лезут.

12 Июл 2018 в 06:31
Ответ #6
Оффлайн

JT

Украина, Каменское Сообщений: 272
Если я память неизменяет то clawham делал контролер и на коте вылаживал.
Сообщение не понравилось: sjaovay

12 Июл 2018 в 10:04
Ответ #7
Оффлайн

495

улус Джучи ТёплыйСтан Сообщений: 52
В большинстве контроллеров которые сейчас есть применяются микроконтроллеры с встроенным трехфазным ШИМом аппаратно заточенным под управление моторами (имеющим деадтаймы и входы защиты по току). 
Всё это заточено под вектор/синус для гладкого момента в сервоприводах , в транспорте достаточно сгладить фронты трапеции как функцию от скорости .
 Когда у вас нормально отлаженная петля обратной связи по току , то болшинство защит не нужны . Аналоговый тормоз становится тем же стабилзатором тока наоборот  , то есть код пишется за один день .
Дешевые AVR туда прямой заменой очень плохо лезут.
Дешёвые контроллеры не имеют достаточно таймеров для реализации всех функций одновременно . 
Ставить по дешёвому контроллеру на фазу никто не запрещает , только у 8 ног корпуса недостаточно ног для обработки датчиков . Безсенорный режим при этом в 8 ног упакуется .

12 Июл 2018 в 10:07
Ответ #8
Онлайн

on4ip

Россия, Раменское Сообщений: 2419
всегда все очень просто и за один день+) Но в сказках.

12 Июл 2018 в 10:13
Ответ #9
Оффлайн

495

улус Джучи ТёплыйСтан Сообщений: 52
всегда все очень просто и за один день+) Но в сказках.
Коммерсанты набежали . Конец теме . :sorry:

12 Июл 2018 в 12:57
Ответ #10
Оффлайн

mr.Dream

Ternopil, Ukraine Сообщений: 3042
За один день вполне можно оживить контроллер, включая написание прошивки. У меня на примитивизм, который просто вращал мотор, опираясь на показания датчиков, подмешивая ШИМ, ушло от силы 15 минут с перекуром. И больше времени я просто подбирал рабочую комбинацию, а верней не подбирал, а логически высчитывал последовательность :)

обработку холлов делал в прерываниях

в "сетапе" проинициализировал прерывания по изменению состояния пиов порта
  PCICR |= B00000001;
  PCMSK0 |= B00011100;

ну и сам обработчик прерывния
ISR(PCINT0_vect){
  if ((PINB & 1<<2) and (~PINB & 1<<3) and (~PINB & 1<<4)){  //100
    PORTD = PORTD & B00000011;
    PORTD = PORTD | B10001000; //ab
  }
  else if ((PINB & 1<<2) and (PINB & 1<<3) and (~PINB & 1<<4)){  //110
    PORTD = PORTD & B00000011;
    PORTD = PORTD | B00101000; //cb
  }
  else if ((~PINB & 1<<2) and (PINB & 1<<3) and (~PINB & 1<<4)){  //010
    PORTD = PORTD & B00000011;
    PORTD = PORTD | B00110000; //ca
  }
  else if ((~PINB & 1<<2) and (PINB & 1<<3) and (PINB & 1<<4)){  //011
    PORTD = PORTD & B00000011;
    PORTD = PORTD | B01010000; //ba
  }
  else if ((~PINB & 1<<2) and (~PINB & 1<<3) and (PINB & 1<<4)){  //001
    PORTD = PORTD & B00000011;
    PORTD = PORTD | B01000100; //bc
  }
  else if ((PINB & 1<<2) and (~PINB & 1<<3) and (PINB & 1<<4)){  //101
    PORTD = PORTD & B00000011;
    PORTD = PORTD | B10000100; //ac
  }
  else{
    PORTD = PORTD & B00000011; //111 or 000 err
  }
}

кто то был предложил более оптимальный вариант, но даю свой рабочий )) чисто для понимания без претензий на правильность)

12 Июл 2018 в 14:11
Ответ #11
Онлайн

TRO

Украина, г. Запорожье. Сообщений: 7380
, в топку условия, все решается логическими операциями над группой входных бит и выдачей результата в порт (опять же группой), оптимизация делается по старинке по картам карно.

08 Авг 2018 в 12:31
Ответ #12
Оффлайн

mishany

Россия, Москва Сообщений: 13
есть у меня простой с блочной коммутацией на STM32F103, спроектировал из примеров, немного доработал...
Два таких контроллера трудятся в детском велосипеде 3-х колесном с моторами от гироскутера

08 Авг 2018 в 13:03
Ответ #13
Оффлайн

kor

г. Ижевск Сообщений: 808

есть у меня простой с блочной коммутацией на STM32F103, спроектировал из примеров, немного доработал...
Два таких контроллера трудятся в детском велосипеде 3-х колесном с моторами от гироскутера
Можете сказать, у вас в программе сделано задание и контроль фазного тока? Фазный ток контролируется в каждом такте шим?

08 Авг 2018 в 13:25
Ответ #14
Оффлайн

mishany

Россия, Москва Сообщений: 13
я же написал простой :-D нет никакого контроля (пока)

08 Авг 2018 в 13:29
Ответ #15
Оффлайн

kor

г. Ижевск Сообщений: 808
я же написал простой :-D нет никакого контроля (пока)
Даже в простых обычно имеется хотя-бы один токовый шунт и контролируется ток, у вас этого совсем нет? Тогда при нажатии газа при застопоренном колесе у вас высок шанс сжечь транзисторы.

08 Авг 2018 в 13:39
Ответ #16
Оффлайн

pashist

Россия, Смоленск Сообщений: 44
рименяются микроконтроллеры с встроенным трехфазным ШИМом аппаратно заточенным под управление моторами (имеющим деадтаймы и входы защиты по току). Дешевые AVR туда прямой заменой очень плохо лез
328-я мега, стоит копейки, можно даже в распаяном виде на али взять. Имеет 6 pwm каналов, 20 МГц тактовая для дедтаймов.

08 Авг 2018 в 14:02
Ответ #17
Оффлайн

kor

г. Ижевск Сообщений: 808
я же написал простой :-D нет никакого контроля (пока)
Вот тут товарищ делал проект на STM32, вроде-бы исходники есть, есть как я понял отработка превышения тока (вход от компаратора тока, тоесть, как я понял, в каждом такте шим можно сбросить раньше времени, тем самым можно стабилизировать ток фазы, а для БЛДЦ мотора это , на мой взгляд, лучше чем синус генерить). Ток фазы можно задавать меняя опорное напряжение компаратора.
ссылка
  Может кто-то уже делал такой контроллер с этого проекта?

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

 

Контроллер на AVR под управлением BASIC

Автор Alex_SorokaРаздел Микроэлектроника

Ответов: 11
Просмотров: 13595
Последний ответ 23 Дек 2009 в 20:18
от Седуксевна
Программатор USB -> AVR

Автор iРаздел Микроэлектроника

Ответов: 0
Просмотров: 3042
Последний ответ 27 Окт 2011 в 20:53
от i
Среда разработки AVR в кармане! AVRDroid IDE, ArduinoDroid IDE

Автор enekРаздел Микроэлектроника

Ответов: 1
Просмотров: 6705
Последний ответ 20 Авг 2014 в 10:47
от enek