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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Аппаратный ШИМ на ATtiny2313, А также несколько вопросов относительно него
bfrogg
сообщение Mar 5 2011, 15:31
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 5-03-11
Пользователь №: 63 417



Здравствуйте. Нужно сделать аппаратный ШИМ на Attiny2313. Немного почитал разные источники и вроде сделал 8-битный Fast PWM. Проверьте все ли правильно. Если да, то как мне сделать ФНЧ для этого ШИМа.

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

Код
   #define F_CPU 8000000UL  // указываем частоту в герцах
  
   #include <avr/io.h>
   #include <util/delay.h>

int main(void) // начало основной программы
{
  
   TCCR1A = (1<<COM1B1) | (1<<WGM10);
   TCCR1B = (1<<WGM12) | (1<<CS10);
   OCR1B = 50;
   DDRB |= (1<<PB4);
  
}
Go to the top of the page
 
+Quote Post
kovigor
сообщение Mar 5 2011, 15:42
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(bfrogg @ Mar 5 2011, 19:31) *
Здравствуйте. Нужно сделать аппаратный ШИМ на Attiny2313. Немного почитал разные источники и вроде сделал 8-битный Fast PWM. Проверьте все ли правильно. Если да, то как мне сделать ФНЧ для этого ШИМа.

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


1. А кто ж его проверять-то будет, кроме вас ? Вы же не школьник, чтобы за вами задания домашние проверять. В железе работает ? Ну, тогда все в порядке ...
2. Читаем Трамперта, главу 4, там это подробно и обстоятельно расписано:

http://lord-n.narod.ru/walla.html

3. А что за моторчик ? Они ведь очень разные есть ...

Сообщение отредактировал kovigor - Mar 5 2011, 15:43
Go to the top of the page
 
+Quote Post
ut1wpr
сообщение Mar 5 2011, 15:42
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 98
Регистрация: 20-06-05
Пользователь №: 6 150



Цитата(bfrogg @ Mar 5 2011, 19:31) *
Здравствуйте. Нужно сделать аппаратный ШИМ на Attiny2313. Немного почитал разные источники и вроде сделал 8-битный Fast PWM. Проверьте все ли правильно. Если да, то как мне сделать ФНЧ для этого ШИМа.
Вообще задача состоит в том, чтобы управлять скоростью моторчиков у "робота".
Каких моторчиков? Их физика? STEP? BLDC? Иные?
Go to the top of the page
 
+Quote Post
bfrogg
сообщение Mar 5 2011, 16:03
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 5-03-11
Пользователь №: 63 417



1. Не хочется делать глупых ошибок в программной части, чтобы потом не думать не напаял ли я что нибудь криво. Пробовал симулировать в Протеусе, вроде работает, но ФНЧ никак не получается сделать - не хватает знаний. Вообще оправданно ли это, или инерция моторчика сама будет как интегратор?
2. Моторчики выдрал с игрушечных машинок, работали от двух пальчиковых батареек. Никаких опознавательных знаков нет. Наверное BLDC
3. В каком смысле физика моторчиков? Вообще какие параметры нужно указать?
4. ФНЧ идет по идее после драйвера двигателей L293D. Питание схемы робота 4.5 В. Моторчики крутятся слишком быстро, поэтому робот со своей задачей не справляется, вылетает с трека.
Go to the top of the page
 
+Quote Post
kovigor
сообщение Mar 5 2011, 16:10
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(bfrogg @ Mar 5 2011, 20:03) *
1. Не хочется делать глупых ошибок в программной части, чтобы потом не думать не напаял ли я что нибудь криво. Пробовал симулировать в Протеусе, вроде работает, но ФНЧ никак не получается сделать - не хватает знаний. Вообще оправданно ли это, или инерция моторчика сама будет как интегратор?
2. Моторчики выдрал с игрушечных машинок, работали от двух пальчиковых батареек. Никаких опознавательных знаков нет. Наверное BLDC
3. В каком смысле физика моторчиков? Вообще какие параметры нужно указать?
4. ФНЧ идет по идее после драйвера двигателей L293D. Питание схемы робота 4.5 В. Моторчики крутятся слишком быстро, поэтому робот со своей задачей не справляется, вылетает с трека.


1. А придется. Иначе вы не научитесь. Протеус в помойку. Спаяйте макетку и вперед.
2. Два вывода ? Почти наверняка это обычный коллекторный двигатель. Материалов о том, как им управлять ШИМом, в сети предостаточно. BLDC - едва ли у вас BLDC. BLDC, например, ставят в авиамодели, но никак не в копеечные машинки.
3. Вам, похоже, редуктор нужен, а не ШИМ. Хотя если мощности хватит, то почему бы и нет ?
Go to the top of the page
 
+Quote Post
Smoky
сообщение Mar 5 2011, 16:13
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 401
Регистрация: 7-05-10
Из: Оренбург
Пользователь №: 57 135



Цитата(bfrogg @ Mar 5 2011, 21:03) *
Моторчики крутятся слишком быстро, поэтому робот со своей задачей не справляется, вылетает с трека.


Ну дык и регулируйте обороты моторчика значением регистра OCR1B.


--------------------
Лень, оттвори дверь, сгоришь - а хоть и сгорю, но не оттворю.
Go to the top of the page
 
+Quote Post
314
сообщение Mar 5 2011, 19:14
Сообщение #7


Частый гость
**

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



Инерция движков сама по себе отличный ФНЧ.

Сообщение отредактировал 314 - Mar 5 2011, 19:18
Go to the top of the page
 
+Quote Post
bfrogg
сообщение Mar 5 2011, 19:25
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 5-03-11
Пользователь №: 63 417



Цитата(дымок @ Mar 5 2011, 19:13) *
Ну дык и регулируйте обороты моторчика значением регистра OCR1B.

Это я понимаю. Мне важно узнать, все ли будет работать.

Цитата(314 @ Mar 5 2011, 22:14) *
Инерция движков сама по себе отличный ФНЧ. Только схемку выходного каскада изобразите правильно, дабы выходной ключ ЭДСом самоиндукции якоря не выбивало.

Не понял насчет схемки выходного каскада. Что там можно неправильно изобразить?

И сразу вопрос относительно ФНЧ. Пусть в этом случае они не нужны. Сколько я не пытался смоделировать в протеусе этот фильтр, у меня все время все напряжение падало на резисторе. На лекциях давали, что для хорошего интегрирования, нужно чтобы постоянная времени цепи была много больше тау импульса. Время импульса 32 мс. Вообще какие номиналы резистора и конденсатора надо брать?

Цитата(kovigor @ Mar 5 2011, 19:10) *
3. Вам, похоже, редуктор нужен, а не ШИМ. Хотя если мощности хватит, то почему бы и нет ?

Редуктор есть кстати

Сообщение отредактировал bfrogg - Mar 5 2011, 19:22
Go to the top of the page
 
+Quote Post
314
сообщение Mar 5 2011, 19:38
Сообщение #9


Частый гость
**

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



Цитата
Не понял насчет схемки выходного каскада. Что там можно неправильно изобразить?

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

В Вашем случае RC-фильтр вообще не приемлем, если очень хочется, то ставьте LC фильтр, но можете попасть на колебания скорости в каких-то точках из-за резонансных эффектов, а может и нормально пройти. Реально лучше напрямую, без фильтров.
А если надумаете ставить RC-фильтр, то просто поставьте резистор последовательно с двигателем, даже без конденсатора, и подберите его номиналом требуемую скорость (почти шутка).

Сообщение отредактировал 314 - Mar 5 2011, 19:41
Go to the top of the page
 
+Quote Post
bfrogg
сообщение Mar 5 2011, 19:45
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 5-03-11
Пользователь №: 63 417



Цитата(314 @ Mar 5 2011, 22:38) *
В Вашем случае RC-фильтр вообще не приемлем, если очень хочется, то ставьте LC фильтр, но можете попасть на колебания скорости в каких-то точках из-за резонансных эффектов, а может и нормально пройти. Реально лучше напрямую, без фильтров.
А если надумаете ставить RC-фильтр, то просто поставьте резистор последовательно с двигателем, даже без конденсатора, и подберите его номиналом требуемую скорость (почти шутка).

Мне уже не хочется ставить сюда фильтры. Уже понял. Просто хочется узнать, что я делал неправильно и какие номиналы нужно брать.
Go to the top of the page
 
+Quote Post
314
сообщение Mar 5 2011, 20:47
Сообщение #11


Частый гость
**

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



Не зная что Вы конкретно делали, схемы, которую Вы собрали, и что конкретно у Вас не получилось невозможно сказать что Вы делали неправильно и какие номиналы неизвестно чего надо брать.
Go to the top of the page
 
+Quote Post
=GM=
сообщение Mar 5 2011, 21:34
Сообщение #12


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



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

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


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
bfrogg
сообщение Mar 6 2011, 07:37
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 5-03-11
Пользователь №: 63 417



Цитата(=GM= @ Mar 6 2011, 00:34) *
Настройки у вас правильные, возможно, в дальнейшем придётся подобрать частоту шим. И надо бы после настроек поставить какой-нибудь цикл, иначе непонятно, что делает программа.

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

Подбирать частоту ШИМ или его скважность?

Второе не понял
Go to the top of the page
 
+Quote Post
314
сообщение Mar 6 2011, 13:23
Сообщение #14


Частый гость
**

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



Второе зависит от того, какую Вы собрали схему, с реверсом или без, с тормозом или без и т.д. и т.п. Теперь каждый преставляет Вашу схему в силу своей фантазии, но фантазии разных людей обычно не совпадают...
Go to the top of the page
 
+Quote Post
=GM=
сообщение Mar 6 2011, 14:07
Сообщение #15


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(bfrogg @ Mar 6 2011, 07:37) *
Подбирать частоту ШИМ или его скважность?

Скажность у вас - это, грубо говоря, педаль газа, т.е. скорость движения вашего робота. МК должен более-менее плавно нажимать на эту "педаль". Частота шим у вас порядка 8000/256=31 кГц. Если всё нормально работает, не искрит, не шумит в эфире, не греется, нормальный кпд, то и делать ничего не надо.

Покажите схему вашего устройства от МК до двигла.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 11th July 2025 - 01:29
Рейтинг@Mail.ru


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