Навигация
· Главная
· Архив новостей
· Лаборатория
· Личные сообщения
· Личный кабинет
· О нас
· Пользователи
· Справочник
· Статьи
· Форум
· Школа
· Энциклопедия

Irbislab.ru :: Просмотр темы - Контроллер шагового двигателя
 FAQFAQ   ПоискПоиск   ГруппыГруппы   ПрофильПрофиль  Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Контроллер шагового двигателя

 
Начать новую тему   Ответить на тему    Список форумов Irbislab.ru -> Электромеханика, робототехника и аниматроника
Предыдущая тема :: Следующая тема  
Автор Сообщение
i8086
Кадет
Кадет


Зарегистрирован: Mar 30, 2009
Сообщения: 94
Откуда: не скажу

СообщениеДобавлено: Чт Июн 04, 2009 12:39:28    Заголовок сообщения: Контроллер шагового двигателя Ответить с цитатой

У меня есть желание сделать контроллер биполярного шагового двигателя на ATmega8. Двигатель Mitsumi M49SP-1 7.5°STEP. У него две обмотки. В качестве драйвера используется микросхема MTD2003 в типовом включении. Эта микросхема и сам двигатель достались мне с лазерника HP LaserJet 6L. Вот я и хочу написать программу для управления этим биполярным шаговым двигателем, мне нужно все просто, чтобы он только крутился в одну сторону и давал максимальный момент, никаких реверсов, полушаговых, микрошаговых режимов мне не нужно. Использую полношаговый двухфазный режим управления. Программу пишу на CodeVision AVR C Compiler. Использую простую перестановку 1 и 0 в обработчике таймера 0:
Код:

#include <mega8>

static flash unsigned char cursor[]={0b00001010, 0b00001100, 0b00010100, 0b00010010};
unsigned char cur_dig;

// Timer 0 overflow interrupt service routine
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
// Place your code here
PORTB=(cursor[cur_dig]);
cur_dig++; if (cur_dig>=4) cur_dig=0;
}

В протеусе такая прога работает, а вот на железе не хочет. Ротор двигается на полшага влево-вправо и все. При попытке вручную провернуть вал, он сопротивляется. В чем может быть проблема? Тактовая частота контроллера 1 МГц, Timer0 запрограммирован на 0,977 кГц.

Комплект L297 + L298 не предлагать, хочу сделать с подручных средств. Пересмотрел много чего в инете, так там или для униполярного двигателя схема и прошивка, или на PIC.
Заранее благодарен.



Stepper.rar
 Описание:

Скачать
 Имя файла:  Stepper.rar
 Размер файла:  12.98 KB
 Скачано:  1178 раз(а)

Вернуться к началу
Посмотреть профиль Отправить личное сообщение
ИРБИС
Администратор
Администратор


Зарегистрирован: Oct 02, 2007
Сообщения: 2114
Откуда: Cтрана скал и снегов...

СообщениеДобавлено: Чт Июн 04, 2009 14:04:25    Заголовок сообщения: Ответить с цитатой

1. Что используется в качестве источника питания для драйвера ШД? Возможно, не хватает мощности источника – проверьте напряжение. Если оно при включении значительно падает (более 10-20% от номинала) - скорее всего дело в нём, хотя и не исключены перегрузки из-за замыканий и т.д.
2. Проверить осциллографом прохождение импульсов на двигатель.
3. Возможно, неверно сфазированы обмотки - надо попробовать поменять местами выводы одной из них.

_________________
А ещё называют его “кар кечкен ильбирс”, что означает — “по грудь идущий в снегу”…
© Чингиз Айтматов "Когда падают горы (Вечная невеста)"
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
i8086
Кадет
Кадет


Зарегистрирован: Mar 30, 2009
Сообщения: 94
Откуда: не скажу

СообщениеДобавлено: Чт Июн 04, 2009 14:24:03    Заголовок сообщения: Ответить с цитатой

1. В качестве источника питания драйвера ШД используется мощный лабораторный БП. Напряжение держит стабильно 12В, для логики с этих же 12В получаю 5В с помощью КРЕН5В. Потребляемый ток в импульсах до 1А (ограничение тока КЗ драйвером ШД)
2. Спасибо, проверю осциллографом прохождение импульсов на двигатель.
3. Очень маловероятно, мне кажется от этого только направление вращения изменится.

А вообще-то, какая частота следования импульсов должна быть, какая скважность? Может есть смысл уменьшить длительность импульсов?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
i8086
Кадет
Кадет


Зарегистрирован: Mar 30, 2009
Сообщения: 94
Откуда: не скажу

СообщениеДобавлено: Чт Июн 04, 2009 15:48:42    Заголовок сообщения: Ответить с цитатой

Наконец то я добился кое-какого вращения ШД.
Есть, конечно, недостатки моей кривой программы: иногда не с первого раза трогается с места, другой ШД меньшей мощности почему-то отказывается работать с моим контроллером. Ну что ж поделаешь, не хватает у меня опыта для экспериментов с ШД. Следующие поделки будут на L297+298 или еще лучше L6208 (контроллер и драйвер в одном корпусе).

А вообще, не знаю с чем это связано, ранние модели струйных принтеров Epson делали на ШД. Последние модели делают исключительно на коллекторных (может ошибся, кажется коллекторные не должны применяться) двигателях постоянного тока, подал питание, он крутится. Определение положения с помощью оптопары и диска с метками, или лента с метками. Не пойму, это для удешевления конструкции за счет исключения ШД, или наоборот, повышение точности позиционирования за счет ленты с нанесенными метками.
Ну это все вокруг да около, а как мне сделать, чтоб ШД с первого раза крутился, а не буксувал на месте? Никто не занимался таким?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
ИРБИС
Администратор
Администратор


Зарегистрирован: Oct 02, 2007
Сообщения: 2114
Откуда: Cтрана скал и снегов...

СообщениеДобавлено: Чт Июн 04, 2009 16:31:07    Заголовок сообщения: Ответить с цитатой

i8086 писал(а):
А вообще-то, какая частота следования импульсов должна быть, какая скважность? Может есть смысл уменьшить длительность импульсов?
Вообще-то меандр, точнее, ширина импульса должна быть достаточной, со сдвигом и перекрытием на соседних фазах. Т.е. из-за инерционности любой электромеханики, длительность самого импульса должна быть такой, чтобы ротор успел повернуться. Для более плавного движения используется частичное перекрытие импульсов на соседних фазах: на 1-й он ещё не закончился, а на 2-й уже начался и т.д. Но не надо забывать, что в многофазных ШД у нас должно строго выдерживаться чередование фаз, т.е. импульс на 1-й, затем на 2-й и т.д. на n-ой фазе. И только потом он должен снова появиться на 1-й. Более точно это надо бы описание конкретного ШД найти – там то уж наверняка сказано, чем и как его кормить надо. Wink

Кстати, отсюда предположение про неправильную фазировку: 1-й импульс (на 1-й фазе) толкает вперёд, а 2-й, наоборот, назад. Wink

Насчёт частоты следования импульсов: зависит от самого ШД. Я бы рекомендовал начать с низких частот, порядка от одиночных импульсов до единиц Гц.

_________________
А ещё называют его “кар кечкен ильбирс”, что означает — “по грудь идущий в снегу”…
© Чингиз Айтматов "Когда падают горы (Вечная невеста)"
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
i8086
Кадет
Кадет


Зарегистрирован: Mar 30, 2009
Сообщения: 94
Откуда: не скажу

СообщениеДобавлено: Сб Июн 06, 2009 23:13:48    Заголовок сообщения: Ответить с цитатой

Спасибо вам. ШД у меня уже работает нормально. (По мере моих потребностей). Действительно проблема была в слишком высокой частоте следования импульсов. Ротор скорее всего не успевал провернуться на один шаг, как подавался следующий импульс. А другой такой моторчик тоже работает, там просто распиновка разъема чуть другая: у Epson 1-я, 2-я обмотки соответственно 1-3, 2-4, у HP - 1-2, 3-4.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Lesli
Кадет
Кадет


Зарегистрирован: Mar 25, 2008
Сообщения: 111
Откуда: Москва

СообщениеДобавлено: Вт Июн 09, 2009 23:21:33    Заголовок сообщения: Re: Контроллер шагового двигателя Ответить с цитатой

i8086 писал(а):
В протеусе такая прога работает, а вот на железе не хочет.
ШД ведь разгонять надо правильно.

В архив добавляйте пожалуйста проект компилятора и .cof
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
i8086
Кадет
Кадет


Зарегистрирован: Mar 30, 2009
Сообщения: 94
Откуда: не скажу

СообщениеДобавлено: Вт Июн 09, 2009 23:59:15    Заголовок сообщения: Ответить с цитатой

Цитата:
ШД ведь разгонять надо правильно.

Если вам не трудно, то напишите поподробнее как это делать, впервые об этом слышу. Знаю что надо определенную последовательность импульсов на обмотки и все. А половину дела уже драйвер делает, у него ШИМ на выходе есть и ограничение тока на уровне 0,7А[/quote]
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Lesli
Кадет
Кадет


Зарегистрирован: Mar 25, 2008
Сообщения: 111
Откуда: Москва

СообщениеДобавлено: Ср Июн 10, 2009 01:55:36    Заголовок сообщения: Ответить с цитатой

i8086 писал(а):
Цитата:
ШД ведь разгонять надо правильно.
Если вам не трудно, то напишите поподробнее как это делать, впервые об этом слышу.

Наверно у Ридико в статье это есть, и в апноуте AN155 silabs.com и в проекте микрошага наверно тоже есть

A Microstepping Bipolar Stepper Motor Driver for CNC Applications

http://www.circuitcellar.com/avr2006/winners/DE/AT2792.htm
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Irbislab.ru -> Электромеханика, робототехника и аниматроника Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы можете вкладывать файлы
Вы можете скачивать файлы


Powered by phpBB © 2001-2003 phpBB Group




Web-ring: электроника, электронные компоненты и приборы
rand prev next

ChipFind: поисковая система по поставщикам радиокомпонентов Rambler\'s Top100 Рейтинг@Mail.ru


Сайт оптимизирован для отображения в браузере Mozilla Firefox версии 2 и выше с разрешением 1024*768 точек и выше.

При неполадках с отображением кнопок, обновите проигрыватель Macromedia Flash.

PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.

Открытие страницы: 0.76 секунды
The Russian localization - project Rus-PhpNuke.com