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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Помогите выбрать микроконтроллер, Для управления тремя двигателями постоянного тока
Aesthete Animus
сообщение Jun 22 2008, 11:17
Сообщение #16


Местный
***

Группа: Свой
Сообщений: 222
Регистрация: 9-06-07
Пользователь №: 28 317



Цитата(_Pasha @ Jun 22 2008, 14:57) *
*) по 4000 тактов




Go to the top of the page
 
+Quote Post
_Pasha
сообщение Jun 22 2008, 11:27
Сообщение #17


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Понятно, сморозил я, но решение для энкодеров лучше такое :
1. Запускаем поллинг на >=16кГц. Энкодеры на один порт.
2. Учитывая, что автор возможно-таки присядет на mega64, читать порт и через таблицу переходов на все 256 состояний (ну, отожрет оно памяти, дык не страшно) сделать в асме наилегчайшее прерывание, работа которого уж точно будет незаметна. Только таблицу и состояния сделать сторонней программой. Так уж можно и 4/8/16/...скока нада энкодеров обслужить и без альтеры.
Go to the top of the page
 
+Quote Post
Aesthete Animus
сообщение Jun 22 2008, 11:55
Сообщение #18


Местный
***

Группа: Свой
Сообщений: 222
Регистрация: 9-06-07
Пользователь №: 28 317



Цитата(_Pasha @ Jun 22 2008, 15:27) *
Понятно, сморозил я, но решение для энкодеров лучше такое :
1. Запускаем поллинг на >=16кГц. Энкодеры на один порт.
2. Учитывая, что автор возможно-таки присядет на mega64, читать порт и через таблицу переходов на все 256 состояний (ну, отожрет оно памяти, дык не страшно) сделать в асме наилегчайшее прерывание, работа которого уж точно будет незаметна. Только таблицу и состояния сделать сторонней программой. Так уж можно и 4/8/16/...скока нада энкодеров обслужить и без альтеры.


Честноя говоря, не понял, что Вы имеете ввиду? Какой полинг? Чтобы получить скорость двигателя, нам необходимо замерять интервал между импульсами (или частоту импульсов) - как Вы это предлагаете делать на меге?
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Jun 22 2008, 12:26
Сообщение #19


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(Aesthete Animus @ Jun 22 2008, 14:55) *
Чтобы получить скорость двигателя, нам необходимо замерять интервал между импульсами (или частоту импульсов) - как Вы это предлагаете делать на меге?


Подождем автора, пусть скажет, какой у него временнОй шаг по стабилизации.
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Jun 22 2008, 19:44
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Тем не менее по 4000 тактов. Какой смысл обрабатывать таким образом.
Необходимо чётко разделять ввод от вывода.
То есть я бы делал груповвой ввод всех энкодеров (полингом как отмечали) с табличным пересчётом и формированием таблицы направлений. Ориентировочно это бы заняло ~ 15% загрузки процессора. Ну пусть 30%. Ну и груповой совтовый ШИМ ещё процентов 10-15.

Причём при таком подходе очень мало загрузка будет зависить от количества каналов. О чём я и имел вам сказать.

Да и ещё. Управление шаговым двигателем с дроблением шага, на мой взгляд сложнее управления двигателем постояннного тока с энкодером.


Применение процессоров с аппаратной поддержкой управления двигателями, конечно приветствуется, но выбор элементной базы включает массу вопросов и соотношение стоимости/объёму выпуска имеет важное значение. Соответственно выбор за вами.
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Jun 22 2008, 20:36
Сообщение #21


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(SasaVitebsk @ Jun 22 2008, 22:44) *
Ну и груповой совтовый ШИМ ещё процентов 10-15.

Могут быть грабли. Частота высокая потребоваться , например.

Цитата
Да и ещё. Управление шаговым двигателем с дроблением шага, на мой взгляд сложнее управления двигателем постояннного тока с энкодером.

Не обязательно. Смотря как делать тот же синус, например.
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jun 22 2008, 23:55
Сообщение #22


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Цитата(ZLOI @ Jun 22 2008, 00:13) *
Помоему гораздо круче было бы посадить всё на несколько тинек2313(если подойдут переферией) их по RS485 опрашивать такой же тинькой и через мост FIFO<=>USB контактировать с компьютером. Помоему, по цене и надёжности уделает LPC.

Привет, ZLOI))) Давненько не общались)
По теме. Лежат у меня 4 шт ATmega8-8PU. После прочтения всего отвеченного начал склоняться на сторону создания контроллера ДПТ на одной меге. Причем контроллер может быть получится универсальным. Т.е. его можно будет "засобачить" и в другую разработку. По началу (месяца 3 так назад) так и планировалось. LPC подкупил тем, что не придется отлаживать межконтроллерный обмен по шине, придумывать протокол, вся система будет на одном кристалле, что упростит ее.. К слову для свзязи трех отдельных контроллеров ДПТ намеревался использовать I2C.
Цитата(ZLOI @ Jun 22 2008, 00:13) *
Хотя дешевить на разовых вещах, тем более в робототехнике не резон, помоему.

Дешивить конечно незачем, но и дорожить тоже)))
Тем более, как разработчик я должен заботиться и об экономической части. Т.е. не расходовать лишние деньги, при условии, что надежность, функциональность и запас на будущее будут обеспечены более дешевыми средствами.


Цитата(ZLOI @ Jun 22 2008, 13:28) *
Он пользуется ОС, наверное, она и тормозит всё.

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

Цитата(PhX @ Jun 22 2008, 15:56) *
Очень советую посмотреть в сторону TI 320F28xxx это специализированные контроллеры преднозначенные для управления электроприводами. Такой контроллер поднимет вашу задачу без особых проблемм.

К сожалению, освоение нового - это время, которого почти нет + деньги, которые тоже имеют свойство быть в малом количестве sad.gif Пока есть задача справиться с использованием той элементной базы, которая есть на месте... Но за совет - спасибо! Я обязательно посмотрю в сторону этих контроллеров. Хотя бы на будущее.

Цитата(_Pasha @ Jun 22 2008, 21:26) *
Подождем автора, пусть скажет, какой у него временнОй шаг по стабилизации.

Я не имею большого опыта в ПИ регуляторах, но экспериментальными методами удалось установить, что ПИ по скорости замечательно работает, если его запускать каждые 15 - 5 мс.

Цитата(SasaVitebsk @ Jun 23 2008, 04:44) *
Тем не менее по 4000 тактов. Какой смысл обрабатывать таким образом.
Необходимо чётко разделять ввод от вывода.
То есть я бы делал груповвой ввод всех энкодеров (полингом как отмечали) с табличным пересчётом и формированием таблицы направлений. Ориентировочно это бы заняло ~ 15% загрузки процессора. Ну пусть 30%. Ну и груповой совтовый ШИМ ещё процентов 10-15.

Причём при таком подходе очень мало загрузка будет зависить от количества каналов. О чём я и имел вам сказать.

Здесь я с Вами согласен, потому что понимаю о чем идет речь. Но видимо буду делать систему на отдельных МК, как написал в этом же посте, чуть выше.
Цитата(SasaVitebsk @ Jun 23 2008, 04:44) *
Да и ещё. Управление шаговым двигателем с дроблением шага, на мой взгляд сложнее управления двигателем постояннного тока с энкодером.

Можно чуть более подробнее? smile.gif Действительно интересно!
Цитата(SasaVitebsk @ Jun 23 2008, 04:44) *
Применение процессоров с аппаратной поддержкой управления двигателями, конечно приветствуется, но выбор элементной базы включает массу вопросов и соотношение стоимости/объёму выпуска имеет важное значение. Соответственно выбор за вами.

Вот именно! И как я выше написал - это время на освоение + деньги. Потом я все таки четко знаю, что на AVR эта задача решаема - следует из моего первого поста. И при этом энкодеры заведены на прерывания, программа написана на Си++. И все работает. Если действительно сделать законченный вариант контроллера ДПТ с возможностью подключения по шине к основному вычислителю + возможность подключения по RS-232, например к компу напрямую, для отладки, настройки, экспериметнов + какие либо навороты, то я думаю, получиться неплохой девайс!

Огромнейшее спасибо ВСЕМ ответившим! Для меня ценны все Ваши рекомендации, советы, замечания!


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Jun 23 2008, 16:40
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



В ветке AVR сейчас развернулась тема по опросу энкодера. Там обсуждаются многие варианты.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 24th August 2025 - 00:15
Рейтинг@Mail.ru


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