реклама на сайте
подробности

 
 
> FPGA based BLDC motor control
Jenya7
сообщение Apr 24 2018, 06:10
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Может кто то встречал реализацию управление мотором на FPGA?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Vasily_
сообщение Apr 24 2018, 07:34
Сообщение #2


Знающий
****

Группа: Модераторы
Сообщений: 925
Регистрация: 25-01-09
Из: Рига
Пользователь №: 43 909



Цитата
нет никаких проблем реализовать все в VHDL

В этом нет никаких сомнений, только зачем?
Вы прикинули сколько нужно обвязки, ацп, компараторы, усилители, драйверы, и тд..
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Apr 24 2018, 07:40
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(Vasily_ @ Apr 24 2018, 12:34) *
В этом нет никаких сомнений, только зачем?
Вы прикинули сколько нужно обвязки, ацп, компараторы, усилители, драйверы, и тд..


Не так уж много обвязки добавляется. Датчики тока и силовая часть остаются без изменений. Что нужно добавить - ADC. Сегодня есть вполне компактные ADC типа ADS7886.

Преимуществ куча. Во первых можно красиво развести плату и присвоить функциональность каждому пину как мне хочется. Счетчики на энкодер - да хоть 64-бит, я не привязан к STM-овскуму таймеру в 16-бит. Ну и так далее.
И что самое главное - исчезает парадигма прерываний.

Сообщение отредактировал Jenya7 - Apr 24 2018, 07:49
Go to the top of the page
 
+Quote Post
_pv
сообщение Apr 24 2018, 11:30
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



Цитата(Jenya7 @ Apr 24 2018, 13:40) *
Преимуществ куча. Во первых можно красиво развести плату и присвоить функциональность каждому пину как мне хочется. Счетчики на энкодер - да хоть 64-бит, я не привязан к STM-овскуму таймеру в 16-бит. Ну и так далее.
И что самое главное - исчезает парадигма прерываний.

что-то перечисленные "радости" какие-то неубедительные, не нравится распиновка МК, ну возьмите lpc какой-нибудь с SWM где любая периферия мапится вообще на любую ногу, а переполнение даже 16ти разрядного счётчика энкодера явление не такое частое чтобы его дополнительная обработка на хоть что-то заметно повлияла.
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Apr 24 2018, 11:35
Сообщение #5


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(_pv @ Apr 24 2018, 16:30) *
что-то перечисленные "радости" какие-то неубедительные, не нравится распиновка МК, ну возьмите lpc какой-нибудь с SWM где любая периферия мапится вообще на любую ногу, а переполнение даже 16ти разрядного счётчика энкодера явление не такое частое чтобы его дополнительная обработка на хоть что-то заметно повлияла.

не знал что в lpc любая периферия мапится на любую ногу.
если большой пробег мотора и 8 ppr - 16-битный счетчик переполниться. это с чем я столкнулся. может быть не так часто надо обрабатывать переполнение, но зачем все эти прерывания если можно без них.

Сообщение отредактировал Jenya7 - Apr 24 2018, 11:43
Go to the top of the page
 
+Quote Post
_pv
сообщение Apr 24 2018, 12:49
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



Цитата(Jenya7 @ Apr 24 2018, 17:35) *
если большой пробег мотора и 8 ppr - 16-битный счетчик переполниться. это с чем я столкнулся.
может быть не так часто надо обрабатывать переполнение

даже 10000rpm * 8 даст переполнение через минуту.
заведите отдельную переменную pos, хоть на 128 разрядов и складывайте туда ваш переполняющийся счётчик, чуть почаще чем раз в минуту
pos += (int16_t)(enc_cnt - enc_cnt_prev)

Цитата(Jenya7 @ Apr 24 2018, 17:35) *
но зачем все эти прерывания если можно без них.

но с описанием каких-нибудь более хитрых алгоритмов управления двигателем на VHDL?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 12:31
Рейтинг@Mail.ru


Страница сгенерированна за 0.01448 секунд с 7
ELECTRONIX ©2004-2016