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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Управление шаговым двигателем, шаговый двигатель, AVR, управление
Dr. Electronic
сообщение Nov 14 2005, 21:36
Сообщение #16





Группа: Новичок
Сообщений: 12
Регистрация: 5-10-05
Пользователь №: 9 271



Цитата(andrey_s @ Nov 14 2005, 13:32) *
Уж секрет так секрет. glare.gif
Не забудте в Вашей системе предусмотреть концевые датчики. Угол Вам нужен ИМХО, не относительный (от предидущей позиции) а абсолютный (от момента срабатывания) концевого датчика (как в принтере). Угол = кол-ву шагов на угол 1 шага (обычно 1.8 градуса, если повезет найти движки на 400 шагов - то 0.9). Софтина должна помнить сколько шагов для каждого из двух движков нужно сделать для настройки на конкретный спутник.

Удачи!

ЗЫ: Паять сами будете? Есть еще замечательные микрухи A3977 от Allegro - в принципе можно обойтись и без микроконтроллера.


Паять буду сам! Про замечательные микрухи типа А3977, L297+L298 тоже слышал, да и сам делал 3-х координатный станок на связке 297+298 и все это работает до сих пор, но я не об этом.
Моя задача сделать то же самое, но на микроконтроллере, который будет управлять мощными транзисторами. Угол ШД меня интересует мало, т.к. будет применена червячная пара с 360:1, т.е. чтобы колесо совершило один оборот необходимо 360 оборотв червяка. Градусы будут вычисляться програмно (на ПК). Концевые датчики - это само собой разумеещееся, без них ни как.

Цитата
Это можно сделать на одном контроллере, например mega48/88/168.
На таймере0 формируете тактовую последовательность управления первым ШД,
на таймере2 - вторым.
........______
____| .........|____ фаза А
.............______ вращение в одну сторону
_______|......... |____ фаза В

........______
____|......... |____ фаза А
...______ вращение в другую сторону
_|......... |____ фаза В


Это и так известно. Я не знаю как это реализовать программно на контроллере. В этом и есть загвоздка. Здесь http://forum.electronix.ru/index.php?showt...=0&gopid=63386& создана мной такая же тема. В ней один прислал исходники на С к статье Редико, но эта схема мне не гравится, т.к. она сложная и управляет одним ШД. А как ее переделать на работу с 2-мя ШД я не пойму.
Go to the top of the page
 
+Quote Post
Antony Ugolev
сообщение Nov 14 2005, 23:38
Сообщение #17


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 28-10-05
Из: Москва
Пользователь №: 10 240



Я реализовывал систему управления шаговыми двигателями на ATmega128.

Скажу вам, что когда число двигателей два и более, использовать только микроконтроллер для этого становится непросто.
Я использовал контроллер Toshiba TA8435H. На плате их было установлено три штуки сразу.
В контроллере есть всё, что надо: дробёжка шага, торможение, экономичный режим, выключение и проч.

Я реализовывал алгоритм плавного разгона/торможения с переменным ускорением на этом контроллере.
Работает классно.

Устройство само (внешний вид) вот. Это так, для устрашения. smile.gif

Будут вопросы, пишите. С удовольствием расскажу, что знаю.


--------------------
Remember about the Main...
Go to the top of the page
 
+Quote Post
rmo
сообщение Nov 15 2005, 05:45
Сообщение #18


Участник
*

Группа: Свой
Сообщений: 25
Регистрация: 25-05-05
Пользователь №: 5 364



Настраиваете Timer2 так, чтобы прерывания по переполнению или по совпадению
формировались с заданной частотой, например 500Гц.
А далее хотя бы так
#define fasa_A PORTB.0
#define fasa_B PORTB.1

interrupt [TIM2_COMPA] void timer2_comp_isr(void){
switch (PINB & 0x3){
case 0:fasa_A = 1;
break;
case 1:fasa_B = 1;
break;
case 2:fasa_A = 0;
break;
case 3:fasa_B = 0;
break;
}
}
Go to the top of the page
 
+Quote Post
mcu
сообщение Nov 15 2005, 15:01
Сообщение #19





Группа: Новичок
Сообщений: 10
Регистрация: 20-03-05
Пользователь №: 3 523



Цитата
Я бы с радостью изобрел свой девайс, да вот только больших навыков в разработке микроконтроллерных систем нет. Вот именно для этого я и создал тему на форуме.

Уважаемый, я же дал Вам ссылку именно на то что Вы ищите http://www.visual-devices.ru/
Смотрите в портфолио систему управления станком или роботехническим комплексом.
Если не хотите или не можете разработать самостоятельно, почему бы не купить всё уже готовое и отлаженное?
Go to the top of the page
 
+Quote Post
Dr. Electronic
сообщение Nov 15 2005, 21:29
Сообщение #20





Группа: Новичок
Сообщений: 12
Регистрация: 5-10-05
Пользователь №: 9 271



Цитата(mcu @ Nov 15 2005, 19:01) *
Уважаемый, я же дал Вам ссылку именно на то что Вы ищите http://www.visual-devices.ru/
Смотрите в портфолио систему управления станком или роботехническим комплексом.
Если не хотите или не можете разработать самостоятельно, почему бы не купить всё уже готовое и отлаженное?


Понимаете, купить - это много ума не надо. Да и денег у меня столько нет, чтобы так разоряться, т.к. я только студент. А я так понял, что вы или там работаете, или как-то с ними связаны.
Go to the top of the page
 
+Quote Post
mcu
сообщение Nov 16 2005, 11:39
Сообщение #21





Группа: Новичок
Сообщений: 10
Регистрация: 20-03-05
Пользователь №: 3 523



Цитата(Dr. Electronic @ Nov 16 2005, 00:29) *
Цитата(mcu @ Nov 15 2005, 19:01) *

Уважаемый, я же дал Вам ссылку именно на то что Вы ищите http://www.visual-devices.ru/
Смотрите в портфолио систему управления станком или роботехническим комплексом.
Если не хотите или не можете разработать самостоятельно, почему бы не купить всё уже готовое и отлаженное?


Понимаете, купить - это много ума не надо. Да и денег у меня столько нет, чтобы так разоряться, т.к. я только студент. А я так понял, что вы или там работаете, или как-то с ними связаны.


Ваше право воспользоваться или нет предложением. Кстати, я не получал от Вас запроса на стоимость системы, поэтому не понимаю почему Вы не можете её себе позволить. Цена на аналогичные модули контроллеров шаговых двигателей ~ 9000р (С.П.), моего модуля - 650р. Разницу видно невооружённым глазом.

PS. Я пытался быть Вам полезен, так как Вы сетовали на трудность самостоятельного повторения данной конструкции.

Удачи!

С уважением, владелец сайта www.visual-devices.ru, Алексей Тарасов
Go to the top of the page
 
+Quote Post
skopus
сообщение Nov 25 2005, 09:54
Сообщение #22


Участник
*

Группа: Свой
Сообщений: 65
Регистрация: 31-08-05
Из: Moscow
Пользователь №: 8 124



Я бы посоветовал использовать специльно заточенные под управление шаговиками комплекты микросхем. Например l297+l298. одна силовая, другая логическая. стоят рублей по 100. Надо буквально отправить команду типа "скорость, кол-во шагов, направление". Все остальное сделают они
Go to the top of the page
 
+Quote Post
mcu
сообщение Nov 25 2005, 17:58
Сообщение #23





Группа: Новичок
Сообщений: 10
Регистрация: 20-03-05
Пользователь №: 3 523



Мой модуль шагового двигателя как раз и построен на этой паре 297 и 298.
Go to the top of the page
 
+Quote Post
INT1
сообщение Nov 25 2005, 18:41
Сообщение #24


deleted
****

Группа: Свой
Сообщений: 555
Регистрация: 28-08-05
Пользователь №: 8 024



так он и у ST так-же построен, может кто подскажет драйвер на ток 7 - 10А на фазу для биполярного ?
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Dec 15 2005, 20:02
Сообщение #25


Гуру
******

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



Смотря какие шаговики. biggrin.gif У меня была тема приборный щиток. biggrin.gif
Короче на плате atmega8 в планаре шесть шаговых двигателей по трёхточечной схеме прямо на ноги megi и шесть каналов АЦП. Применено дробление на 6. Разгон-тормажение. Цифровой фильтр второго порядка. Раздельное управление (моя гордость) на основе ошибки по положению.
Особая сложность была с возвратом стрелок после пропадания питания.
Короче написание - дней 10. отладка с доводкой и изменением вводных 2 месяца. И что тут абсуждать?
Если бы все темы были такие-же простые...... biggrin.gif
Go to the top of the page
 
+Quote Post
8419868
сообщение Feb 10 2011, 19:05
Сообщение #26





Группа: Новичок
Сообщений: 1
Регистрация: 10-02-11
Пользователь №: 62 874



Цитата(Pat @ Oct 22 2005, 23:56) *
Уважаемый я кАнеЧно ту сории что влажу но:
Вам же выше дали ссылку
http://radiotech.by.ru/Shematic_PCB/Avtoma.../step_motor.htm
Там есть все что надо.
Есть и AVR и схема и прошивка демо версии и сама прошивка на асме тоже есть.
Самое главное что ее сваял Ридико Леонид Иванович.
Человек девайсы которого продаются наверное чуть ли не на каждом рынке нашего СНГ.
Он там так расписал про шаговый двигатель что не понять, как он работает и как им управлять, просто невозможно.
Вы попробуйте повторить его девас.



извините но эта ссылка на рабочая ((( можете дать активную ссылку? буду признателен
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Feb 10 2011, 19:28
Сообщение #27


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (8419868 @ Feb 10 2011, 21:05) *
извините но эта ссылка на рабочая ((( можете дать активную ссылку?
http://530.ru/electronics/projects.php?do=p077


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
aleksey_g
сообщение Feb 11 2011, 08:30
Сообщение #28


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

Группа: Свой
Сообщений: 151
Регистрация: 11-01-06
Из: Украина Ровно
Пользователь №: 13 066



Вдруг моя разработка Вам поможет.
Есть у меня друг авторемонтник. Уже очень давно мечтает научиться работать с микроконтроллерами. уже несколько раз брался изучать, но все никак не получалось.
Но вот вдруг он захотел сделать фрезерный станок. Под него попросил сделать STEP-DIR драйвер для управления тремя шаговиками, на одной микросхеме. Эта задача легко решается на (к примеру АТМЕГА8, которую он уже купил). Но написать попросил так, чтобы она была понятна ему. Так сказать в учебных целях. Пришлось в большей степени уделить внимание не на оптимальность функционирования, а именно на разжевывание каждого шага. Программа получилась слишком "раздутой" и чересчур медленной.
Не знаю, насколько успешно я справился с учебной стороной вопроса, но все три движка она успешно крутила.
Кстати, друг так и не удосужился "подсесть" на МК. Нашел себе оправдание, что времени не хватает.
Вкратце, что она делает...
На каждый двигатель есть два входа. DIR- указывет, в какую сторону двигателю крутиться. STEP- сигнал сделать один шаг.
Управляет она двигателем с 4 фазами. Если нету сигналов управления более заданного времени, выставляется сигнал для снижения питания (режим простоя).
Режим простоя реализован для каждого двигателя независимо. Как только приходит сигнал STEP, выключается режим простоя того двигателя, которому нужно шагать.
Поскольку входы STEP работают по прерываниям, а у меги8 внешних прерываний всего 2, то для третьего входа используется вход аналогового компаратора. Второй вход этого компаратора подключен ко внутренней опоре програмно. Прерывание от аналогового компататора используется в качестве третьего сигнала STEP.

Прошу сильно не ругать, если в "учебности" или "правильности" обнаружите недостатки. Ведь не очень просто писать так, чтобы было понятно тому, кто не пробовал МК никогда, и при этом получить эффективный и правильный код.
Прикрепленный файл  DD.rar ( 258.46 килобайт ) Кол-во скачиваний: 409

Забыл добавить. Это под ИАР.
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Feb 11 2011, 08:53
Сообщение #29


;
******

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



Цитата(aleksey_g @ Feb 11 2011, 12:30) *
Но написать попросил так, чтобы она была понятна ему. Так сказать в учебных целях.

Была аналогичная история - "понятный" релейный контроллер. Итог - человек меня замучал вопросами, почему он не может в аврстудии создать проект sm.gif Вылезло в другом месте.

Цитата
а у меги8 внешних прерываний всего 2, то для третьего входа используется вход аналогового компаратора.

Не поверите! У меги8 внешних прерываний немного больше:
- int0 int1 + компаратор - это понятно
- Т0 при предустановке таймера 0 в 255
- ICP
Итого- целых 5, а при ненужности таймера Т1- 6 прерываний.
Go to the top of the page
 
+Quote Post

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

 


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


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