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

Портировать контроллер BLDC с STM32 на Rockchip 3399?

Вот пусть изобретёт сферические колёса. :laughing:

такие ? https://www.youtube.com/watch?v=CjcyHicm3NA

 

по отзывам они %овно полное - ресурс ни к черту, а стоит это колесо как матиз немного бу

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

по отзывам они %овно полное - ресурс ни к черту, а стоит это колесо как матиз немного бу

Ну это - первая версия. Первые каменные колёса тоже поди стоили много трудодней :)

А вот если-б он действительно сферическое колесо изобрёл! Вот это был бы прорыв! B)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну это - первая версия. Первые каменные колёса тоже поди стоили много трудодней :)

Это продукт 2006 года, и он по прежнему нигде. В этом колесе по кругу стоят десятки колес. Они катятся под углом к своей оси вращения - при этом испытывают трение по касательной.

Там также десятки осей вращения и подшипников, которые при вращении поочередно принимают на себя полный вес нагрузки. Понимаете - тоненькая миниатюрная ось, и на нее падает масса грузовой телеги весом в несколько тонн. И нагрузка идет по касательной !

 

Вопщем такое колесо никогда не будет грузоподъемным, дешевым, надежным, и с нормальным кпд.

 

А вот если-б он действительно сферическое колесо изобрёл! Вот это был бы прорыв! B)

вас эта картинка чтоли так вдохновляет ?

http://www.chopper-bike.ru/view_bikezone.php?id=156

 

:bb-offtopic:

меня, если честно, больше возбуждают летательные средства... :disco:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А в RK3399 один Cortex-M0 занят подсистемой питания, другой на подхвате у периферийных драйверов.

Сомнительно что вы перепишете или хотябы проанализируете все драйвера на предмет зависимостей от этих Cortex-M0

Т.е. о них я бы забыл в этой задаче.

Кэш то свой имеют ядра, но шина AHB на всех одна. На GPIO и на таймеры, как выясняется, DMA в RK3399 не работает.

Нет, слишком много граблей.

ИМХО. Миссия невыполнима.

 

ОК, почти сдаюсь ;) Но качестве последней попытки попробую поменять вводную. Пусть в нашем эксклюзивном распоряжении на RK3399 два ядра A72 на 2 ГГц с выделенным кэшем 1МБ. Про шину (из даташита):

Bus Architecture

===

128bit/64-bit/32-bit multi-layer AXI/AHB/APB composite bus architecture

CCI500 embedded to support two clusters cache coherency

5 embedded AXI interconnect

PERI low performance interconnect with one 128-bits AXI master, seven 64-bits

AXI masters, one 32-bits AXI master, two 64-bits AXI slaves, five 32-bits AHB

masters and lots of 32-bits AHB/APB slaves

PERI high performance interconnect with one 128-bits AXI master, one 128-bits

AXI slave, four 32-bits AHB masters and lots of 32-bits AHB/APB slaves

DISPLAY interconnect with two 128-bits AXI masters, two 64-bits AXI masters,

one 32-bits AXI master and lots of 32-bits AHB/APB slaves

GPU interconnect with one 128-bits AXI master and 32-bits APB slave

VIDEO interconnect with two 128-bits AXI masters, two 64-bits AXI masters

and four 32-bits AHB slaves

Flexible different QoS solution to improve the utility of bus bandwidth

=======

 

Разрешается использовать внешние микрухи, при условии что они непрограммируемы и имеют российский или китайский аналог. Это не делает миссию выполнимой?

Полный мануал на RK3399: http://opensource.rock-chips.com/images/e/...t1-20170408.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если под "специализированными BLDC-микрухами" Вы имеете в виду МК с нужной периферией, то какая разница - писать прошивку для него или прошивку для ПЛИС?

 

В ПЛИС можно засунуть ещё много полезного, получив в итоге что-то гораздо более подходящее под задачу, чем RK3399 + МК. ПЛИС набирают популярность, они предлагаются уж в облачных сервисах и в комплекте с обычными процами. Опыт работы с ними точно пригодится. ПЛИС-решение можно развивать, а МК может через несколько лет устареть, пропасть, попасть под санкции, и на колу мочало начинай сначала.

 

Я бы рекомендовал посмотреть на i.MX RT1050. На них легко сделать 4-е полнофункциональных контроллера BLDC моторов.

 

Интересно было бы это "легко" разбить на основные составляющие. Допустим, есть отладочная плата от NXP, есть RK3399, есть мотор-колесо от гироскутера. Нужно, чтобы линуксовая софтина с RK3399 могла задать или считать параметры: скорость, момент, потребляемый ток. Какие этапы и ориентировочные трудозатраты предстоят?

 

Заслуга разработчика - это создание приложения BLDC Tool и видеологера с врезками телеметрии из BLDC Tool.

Но протокол не документирован, и жестко зашит в программе.

Протокол может работать только через один из интерфейсов: CAN, USB, UART и еще какой-то там левый модуль.

 

Сам BLDC Tool прошивает для своей работы некие левые бинарники вместо штатного фирмваре. Т.е. похоже автор кое-что скрывает.

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

 

Хотя ссылка в целом интересная.

Но проект явно не предназначен даже для интеграции с другой аппаратной платформой. Он заточен исключительно под BLDC Tool.

Автор постарался это сделать тщательно избегая комментирования своих сорсов. Ну это наверняка ему самому аукнется.

 

А по поводу этого что скажете: https://odriverobotics.com/#features ? Тоже опенсорс, на той же аппаратной базе, но относительно новая разработка.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопщем такое колесо никогда не будет грузоподъемным, дешевым, надежным, и с нормальным кпд.

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

Ещё каких-то 50 лет если бы Вы нарисовали гироскутер, Вам бы сказали, что он не может быть устойчивым и на нём невозможно удержаться обычному человеку. Сейчас же вас он не удивляет? :laughing:

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

 

вас эта картинка чтоли так вдохновляет ?

http://www.chopper-bike.ru/view_bikezone.php?id=156

Не эта. Эта хуже чем то, что Вы называете "%овно полное". Никакого полёта мысли нету.

Мыслите шире, менее зашорено :laughing:

Вот эта например меня вдохновляет: https://itc.ua/articles/poezda-na-magnitnoy...iy-izmenit-mir/

меня, если честно, больше возбуждают летательные средства... :disco:
Тогда думаю эта ссылка должна Вас возбудить. :)

 

В ПЛИС можно засунуть ещё много полезного, получив в итоге что-то гораздо более подходящее под задачу, чем RK3399 + МК. ПЛИС набирают популярность, они предлагаются уж в облачных сервисах и в комплекте с обычными процами.

Так засуньте туда ядро CPU + всю используемую периферию из того проекта VESC и все дела. И портировать ничего не придётся.

 

Опыт работы с ними точно пригодится. ПЛИС-решение можно развивать, а МК может через несколько лет устареть, пропасть, попасть под санкции, и на колу мочало начинай сначала.

Может устареть, а может не устареть. Как и ПЛИС - может устареть, а может не устареть. Устареет этот, появится другой. И с начала начинать ничего не надо - каждый кто занимается МК более-менее серьёзное время, за свою жизнь изучил и сменил и прошёл не одно семейство МК - это нормальный процесс, такова наша специальность. Здесь ничего нельзя изучить на всю жизнь, чтоб потом просто сесть сложить ручки и почить на лаврах.

Завтра Ваше решение на ПЛИС точно так же устареет.

 

Да и причём тут это всё? Вы же вроде хотели решить конкретную задачу? В данных конкретных условиях? Или всё-таки опять - изобретать сферического коня в вакууме?

а реальная задача решается реальными инструментами, наиболее оптимальными в данное время. Оптимальное решение Вам тут уже озвучили. И не раз.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А по поводу этого что скажете: https://odriverobotics.com/#features ? Тоже опенсорс, на той же аппаратной базе, но относительно новая разработка.

Не похоже на новую разработку.

Парень просто клонировал проект VESC и перенес с ChibiOS на FreeRTOS. Но это ему было не сложно потому как обе используют один и тот же HAL.

Поубирал все экспериментальные фичи и тюнингировал под два мотора.

Тулсов для тюнинга своих не создал. Код как всегда скверно документирован.

Но что-то на питоне с протоколом сварганил. Такой питон под линуксом наверно пойдет.

Может это и есть то что вам нужно.

 

Кста, там парень и на FPGA сделал. Но внутри то все равно стоит процессорное ядро NIOS и его надо программировать и отлаживать.

Так что в этой теме FPGA не дает никакой пользы, NIOS будет работать медленней нативного микроконтроллера.

Если вы конечно не знаете какого нибудь секретного алгоритма FOC пользующего всю мощь аппаратных фильтров.

Но чет с этим тут никто не светился на моей памяти.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так засуньте туда ядро CPU + всю используемую периферию из того проекта VESC и все дела. И портировать ничего не придётся.

 

Для прототипа подойдёт VESC, или другой готовый контроллер. На следующем этапе, конечно, такой вариант будет рассматриваться. Возможно, как основной.

 

Может устареть, а может не устареть. Как и ПЛИС - может устареть, а может не устареть. Устареет этот, появится другой. И с начала начинать ничего не надо - каждый кто занимается МК более-менее серьёзное время, за свою жизнь изучил и сменил и прошёл не одно семейство МК - это нормальный процесс, такова наша специальность.

 

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

 

Да и причём тут это всё? Вы же вроде хотели решить конкретную задачу? В данных конкретных условиях? Или всё-таки опять - изобретать сферического коня в вакууме?

 

Я нахожусь в пути от сферического коня в вакууме к конктретной задаче. Общение в этой ветке дало очень хороший толчок.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ОК, почти сдаюсь ;) Но качестве последней попытки попробую поменять вводную. Пусть в нашем эксклюзивном распоряжении на RK3399 два ядра A72 на 2 ГГц с выделенным кэшем 1МБ.

Вы так отчаянно пытаетесь сохранить RK3399 (полагаю, в связи с его способностями к видео и, возможно, беспроводными интерфейсами), что решение очевидно: нужно просто соединить VESC и RK3399. Каждый будет спокойно делать свое дело и будет вам щастье.

 

Так засуньте туда ядро CPU + всю используемую периферию из того проекта VESC и все дела. И портировать ничего не придётся.
:biggrin: какой вы однако злой)))

 

Вот эта например меня вдохновляет: https://itc.ua/articles/poezda-na-magnitnoy...iy-izmenit-mir/

Тогда думаю эта ссылка должна Вас возбудить. :)

:bb-offtopic:

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Для этого Вам надо на линухе развернуть подсистему реального времени по типу https://xenomai.org/ . А уже потом заниматься остальной обработкой. Просьба не надо только писать что это всё херня и тп - лучше сразу писать я так не смогу - ибо не умею, а на кодеров денег не хватит.

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

 

и сколько интересно будет стоить такая разработка, и такое серийное изделие ?)

 

скажем по другому: во сколько десятков раз это будет дороже исходного варианта ?)))

 

Ну явно не как опенсорс проект в свободном доступе из интернета. Он будет дороже - но гораздо правильнее и проработаннее, заточенный под задачу. Но это уже не нам решать, а топикстартеру. Он инвестор и ему мыслить куда и как свои деньги вкладывать. Я только дал один из путей развития проекта, более правильный с точки зрения производства законченного продукта.

Разработку прошивки плис с периферией можно сделать за 100-200 тысяч рублей ( Не в Москве, естественно не в Москве - там за еду не работают).

 

 

ТОПИКСТАРТЕРУ если Вам нужно только дёшевое на опенсорсное сделать и стартапнуть то можете не читать все что дальше.

 

RK3399 тут некоторые недооценивают. У него есть таймеры и другие фичи, характерные для контроллеров:

 

Мы его не недооцениваем. Попытаюсь донести ещё раз. У него много фич характерных для контроллеров - да. У него нет фич характерных для приложений УПРАВЛЕНИЯ ЭЛЕКТРО ДВИГАТЕЛЯМИ. У этого камня 4 канала ШИМ - и всё приплыли как Вы к нему 4 мотора то будете приделывать? Как Вам выше написали у него нет синхронных АЦП он не под это заточен.

 

Но тем не менее Вы на этом чипе можете обсчитать кучу моторов и фоновых задач. Для этого

 

1. Вам необходимо будет разработать периферию, работающую с моторами в реальном времени (ШИМ, токи, обратная связь, обработка приоритетных входов)

2. Вам необходимо накатить на Ваш линукс RTOS

3. Написать остальное

 

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

 

Именно по этому Вам и пишут что возьмите специализированные контроллеры от ТI и других производителей. TMS320F28377D позволит Вам одновременно управлять 4-я моторами, поддержка есть, примеры есть, алгоритмы есть, всё есть. Хотите по EMIF соедините его с каким нибудь контроллером. Вами всё равно уже принято решение с нуля делать.

 

Не хотите так возьмите SoC типа Zynq-7000. Благо их сейчас у Всех как собак нерезаных и корки для мотор контрола и платно и бесплатно дают. Будут у Вас ядра ARM9 ( хотя надо ли оно Вам) и периферию потребную сделаете. И будет у Вас всё на одном камешке.

 

 

PS. Я Вам может секрета и не открою - Вы совершаете одну поголовную ошибку стартаперов вышедших из SOFTWARE. И ошибка эта следующая - жизненный цикл проекта SOFTWARE вообще не то же самое что жизненный цикл проекта HARDWARE. Почитайте в чём разница и осмыслите ещё раз. Вас как программиста может уберечь от многих граблей.

 

Так что фильтруйте кучу потока сознания с форума и слушайте что Вам специалисты из предметной области говорят. После этого пишите ТЗ и проработайте его со специалистами -много сэкономите времени и нервов.

 

Немного полезного офтопа

 

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

Для примера из последних перлов. Заказчик говорит мне нужно с распберри связать по USB атмегу которая АЦП будет опрашивать и данные в распберри передавать. Ну ладно хозяин барин. Начинаем вникать - задача опросить 10 АЦП по SPI и передать в распберри со скоростью чуть ли не раз в секунду. Задаём вопрос - а накой USB то. Ответ - а я по другому не умею и по I2C не смогу с атмегой пообщаться. В результате проект упростили вдвое, кучу изначальных решений выкинули по причине их бредовости и избыточности, написали кусок кода на питоне для работы с мегой и все счастливы. Только Мы кучу времени лишнего убили.

 

 

 

Ну я и понаписал...

 

ГЫЫЫ... Сами пилим сейчас приложение где 2 мотроа VESC ом управляются. Не самое удобное решение для вписывания его в требования конструктива. И всё те же вопросы с заказчиком которые описал выше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

TMS320F28377D позволит Вам одновременно управлять 4-я моторами, поддержка есть, примеры есть, алгоритмы есть, всё есть.

 

ГЫЫЫ... Сами пилим сейчас приложение где 2 мотроа VESC ом управляются. Не самое удобное решение для вписывания его в требования конструктива. И всё те же вопросы с заказчиком которые описал выше.

Нет там никаких открытых алгоритмов.

Иначе не пришлось бы вам с VESC связываться. :biggrin:

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну не совсем открытых, но информации то много по построению регуляторов.

 

Я в основном AC моторы смотрю. Но вот бегло http://www.ti.com/lit/an/sprabq7a/sprabq7a.pdf

 

Или имеется в виду что должен быть кусок кода - который можно воткнуть не думая :biggrin:

 

Открою секрет почему у нас сейчас VESC - собралась команда стартаперов и сделали прототип на проводах. Моторы естественнго крутились от VESC. А мы сейчас всё это в более менее серийно промышленный вид переводим с сохранением наработок. То есть мы тут не инициаторы - это требование ТЗ. Требований переделать не было. Изначально всё как было, надо моторы крутить - чего делать будем? VESC возьмём чего париться, работает же.

 

Я не голословно писал про современный путь стартаперов :biggrin:

 

Вот ещё http://www.tij.co.jp/jp/lit/ug/tiduar7a/tiduar7a.pdf

 

И даже не копал глубоко то. Сейчас у производителей мода на motor control приложения

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И все поголовно суют туда ардуино, распберри и прочие конструкторы и опенсорс приложения.

...

ГЫЫЫ... Сами пилим сейчас приложение где 2 мотроа VESC ом управляются.

:biggrin::biggrin::biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...