Запуск шагового двигателя

Обсуждаем цифровые устройства...
Davydov
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт авг 16, 2012 21:34:24

Re: Запуск шагового двигателя

Сообщение Davydov »

Тов. Gisteresis, поясните пожалуйста, мне непонятно, почему транзисторы, по схеме VT1 и VT5 раскаляются до красна, а все остальные холодные?
Если бы это было так, это бы еще ничего. Если бы ничего, то так бы оно и было. Но так как это не так, так оно и не эдак. Такова логика вещей. (с)
Аватара пользователя
Gisteresis
Друг Кота
Сообщения: 4732
Зарегистрирован: Ср сен 18, 2013 10:08:26
Откуда: Санкт-Петербург

Re: Запуск шагового двигателя

Сообщение Gisteresis »

Схему дайте, как у вас сейчас соединено. К сожалению не телепат.
И программу покажите.
Davydov
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт авг 16, 2012 21:34:24

Re: Запуск шагового двигателя

Сообщение Davydov »

Gisteresis писал(а):Схему дайте, как у вас сейчас соединено. К сожалению не телепат.
И программу покажите.

Вот схема:
Изображение

И код:

Код: Выделить всё

#define F_CPU 4000000UL;

#include <mega8.h>
#include <delay.h>

//Выводы шагового двигателя
#define a1 PORTC.3
#define b1 PORTC.2
#define a2 PORTC.1
#define b2 PORTC.0

#define delay_impulse 2


void main(void)
{
//Инициализация портов

PORTC=0x00;
DDRC=0xFF;

//Основной цикл программы
    while(1)
      {
      PORTC.4 = 1;     
      //Pulse 1
            a1 = 1;
            a2 = 0;
            b1 = 0;
            b2 = 1;
      delay_ms(5);
           

      //Pulse 2
            a1 = 1;
            a2 = 0;
            b1 = 0;
            b2 = 0;
      delay_ms(5);   
     
     
      //Pulse 3
            a1 = 1;
            a2 = 1;
            b1 = 0;
            b2 = 0;
      delay_ms(5);     
           

      //Pulse 4     
            a1 = 0;
            a2 = 1;
            b1 = 0;
            b2 = 0;
      delay_ms(5);
     
      //Pulse 5 
            a1 = 0;
            a2 = 1;
            b1 = 1;
            b2 = 0;
      delay_ms(5);     
     
    PORTC.4 = 0;
     
      //Pulse 6
            a1 = 0;
            a2 = 0;
            b1 = 1;
            b2 = 0;
      delay_ms(5);     
       
      //Pulse 7
            a1 = 0;
            a2 = 0;
            b1 = 1;
            b2 = 1;
      delay_ms(5);     
       
      //Pulse 8
            a1 = 0;
            a2 = 0;
            b1 = 0;
            b2 = 1;
      delay_ms(5);                       
      }
}
Если бы это было так, это бы еще ничего. Если бы ничего, то так бы оно и было. Но так как это не так, так оно и не эдак. Такова логика вещей. (с)
Аватара пользователя
Gisteresis
Друг Кота
Сообщения: 4732
Зарегистрирован: Ср сен 18, 2013 10:08:26
Откуда: Санкт-Петербург

Re: Запуск шагового двигателя

Сообщение Gisteresis »

Проверьте монтаж, VT3 (VT4) случайно не на VT1 и VT5 работает?
Такое ощущение, что один из них не то открывает. Видимо открываются VT1 и VT5 получается КЗ.

Шаги оформите в виде массива, в таком виде их очень сложно читать.

Изображение

R6, R11 поставили? Их нужно пересчитать на ваш ток, 1А чтобы получалось в сумме с сопротивлением обмотки.
Последний раз редактировалось Gisteresis Пт июл 04, 2014 14:25:38, всего редактировалось 1 раз.
Davydov
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт авг 16, 2012 21:34:24

Re: Запуск шагового двигателя

Сообщение Davydov »

Gisteresis писал(а):Проверьте монтаж, VT3 (VT4) случайно не на VT1 и VT5 работает?
Такое ощущение, что один из них не то открывает. Видимо открываются VT1 и VT5 получается КЗ.

Gisteresis, нет, монтаж выполнен в соответствии со схемой. про массив - спасибо, переделаю)
Если бы это было так, это бы еще ничего. Если бы ничего, то так бы оно и было. Но так как это не так, так оно и не эдак. Такова логика вещей. (с)
Аватара пользователя
Gisteresis
Друг Кота
Сообщения: 4732
Зарегистрирован: Ср сен 18, 2013 10:08:26
Откуда: Санкт-Петербург

Re: Запуск шагового двигателя

Сообщение Gisteresis »

А эти транзисторы не пробиты?
Можно попробовать просто местами поменять их с другими.

Дело в том, что у такого моста нет защиты от ситуации когда получается прямое КЗ источника питания. Этот момент нужно особенно тщательно проверять.
Davydov
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт авг 16, 2012 21:34:24

Re: Запуск шагового двигателя

Сообщение Davydov »

Gisteresis, хорошего Вам понедельника!
Нет, транзисторы целы. Попробовал даже перепаять на другие, нагрев VT1-VT5 никуда не делся, можно делать кипяток для чая :(

Вот, более читабельная версия программы:
Спойлер

Код: Выделить всё

#define F_CPU 4000000UL;

#include <mega8.h>
#include <delay.h>

//Выводы шагового двигателя
#define a1 PORTC.3
#define b1 PORTC.2
#define a2 PORTC.1
#define b2 PORTC.0

int i;

//Инициализация массива
//                     { a1 | a2 | b1 | b2 }           
int seq[8][4] = {{  1,   0,   0,   1 },
                        {  1,   0,   0,   0 },
                        {  1,   1,   0,   0 },
                        {  0,   1,   0,   0 },
                        {  0,   1,   1,   0 },
                        {  0,   0,   1,   0 },
                        {  0,   0,   1,   1 },
                        {  0,   0,   0,   1}};

void main(void)
{
//Инициализация портов

PORTC=0x00;
DDRC=0xFF;

//Основной цикл программы
    while(1)
      {
      for (i=0; i<8; i++)
            {     
            a1 = seq[i][0];
            a2 = seq[i][1];
            b1 = seq[i][2];
            b2 = seq[i][3];
            delay_ms(3);
           
            }
      }
}


И ещё, сейчас мультиметром замерил ток, непосредственно на обмотках.
Ток потребляемый схемой от блока питания 4.5 Ампера, ток на верхней обмотке двигателя (коллекторы VT1-VT5 и VT2-VT6) 0.4 Ампера, а нижней обмотке (коллекторы VT8-VT11 и VT9-VT12) 0.15 Ампера.
Последний раз редактировалось Davydov Пн июл 07, 2014 12:15:14, всего редактировалось 1 раз.
Если бы это было так, это бы еще ничего. Если бы ничего, то так бы оно и было. Но так как это не так, так оно и не эдак. Такова логика вещей. (с)
Аватара пользователя
Gisteresis
Друг Кота
Сообщения: 4732
Зарегистрирован: Ср сен 18, 2013 10:08:26
Откуда: Санкт-Петербург

Re: Запуск шагового двигателя

Сообщение Gisteresis »

Катушки не перепутаны?

Повторю картинку:

Изображение

Изображение

У вас а1, а2...
а там а1, b1...
Но у меня вроде тоже как у вас А начало В конец обмотки. Соответственно у вас вроде как верно.
Потому что подавать + на обе стороны катушки бессмысленно.

Вот я уже даже выкладывал свою программу.
http://radiokot.ru/forum/viewtopic.php?f=57&t=101777

delay_ms(3);

3 маловато, поставьте пока 10 или 15 для отлидки.

ПС: Хотя на нагрев это все не должно влиять.
Davydov
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт авг 16, 2012 21:34:24

Re: Запуск шагового двигателя

Сообщение Davydov »

Gisteresis, отчёт о проделанной работе :solder:
Вместо VT1 поставил КТ818БМ, а VT5 заменил на КТ819Г. На движок поставил мощные резисторы, ток потребления схемой упал до 1А, двигатель чуть теплый, транзисторы перестали греться, но стал нагреваться VT3 до пробоя и сжигал резистор R3. Это из-за управления мощным КТ818БМ? Если да, то чем его более можным можно заменить?
Вместо КТ315 стоят C945.
Если бы это было так, это бы еще ничего. Если бы ничего, то так бы оно и было. Но так как это не так, так оно и не эдак. Такова логика вещей. (с)
Аватара пользователя
Gisteresis
Друг Кота
Сообщения: 4732
Зарегистрирован: Ср сен 18, 2013 10:08:26
Откуда: Санкт-Петербург

Re: Запуск шагового двигателя

Сообщение Gisteresis »

C945 - ток коллектора 0.15А.
У вас протекает в цепи сколько? 0.37А!

Такие мощные транзисторы конечно тут ни к чему, для полного открытия они требуют 15000/20=0.75А

Вывод: или более мощный транзистор для управления ключами или поднимать h21 ключей. Хорошо подойдут любые дарлингтоны.
816/817 вполне подходят. 3000/25=0.120А для полного открытия.

Davydov писал(а):ток потребления схемой упал до 1А, двигатель чуть теплый, транзисторы перестали греться

Вот это уже похоже на нормальную работу.
Davydov
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт авг 16, 2012 21:34:24

Re: Запуск шагового двигателя

Сообщение Davydov »

Gisteresis, Доброго Утра!
Ничего не понимаю, поставил вместо С945-х КТ817-е, так они начали адово греться(((
Если бы это было так, это бы еще ничего. Если бы ничего, то так бы оно и было. Но так как это не так, так оно и не эдак. Такова логика вещей. (с)
Аватара пользователя
Gisteresis
Друг Кота
Сообщения: 4732
Зарегистрирован: Ср сен 18, 2013 10:08:26
Откуда: Санкт-Петербург

Re: Запуск шагового двигателя

Сообщение Gisteresis »

Davydov и вам доброго!
С945 вполне подходил для управления комплементарным повторителем. Он маломощный, быстрый, коэффициент передачи низковат, но вполне подходил.
Вы поставили в базы КТ817, относительно мощный, который сам требует 125mА для полного открытия, в то время как МК может выдать только 30!
По схеме у вас с МК ограничивает ток резистор на 1к, значит ток течет 3.6мА. Естественно такой мощный транзистор как КТ817 только лишь немного приоткроется, конечно он будет адово греться. :)

Значит так, для комплиментарного повторителя мы берем мощные транзисторы, а управляем им относительно слабым, таким чтобы ток МК мог его полностью открывать, а в открытом состоянии тока баз должно хватать чтобы повторитель полностью переходил в другое состояние.

Мне не в лом помочь вам доделать драйвер. Но по моему вы не понимаете азов, вам нужно читать закон ома, и теорию по биполярам. :tea:
Davydov
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт авг 16, 2012 21:34:24

Re: Запуск шагового двигателя

Сообщение Davydov »

Gisteresis писал(а):По схеме у вас с МК ограничивает ток резистор на 1к, значит ток течет 3.6мА. Естественно такой мощный транзистор как КТ817 только лишь немного приоткроется, конечно он будет адово греться. :)

Мне не в лом помочь вам доделать драйвер. Но по моему вы не понимаете азов, вам нужно читать закон ома, и теорию по биполярам. :tea:

Gisteresis, скажите, нашел вот такую микросхему SMA7029M http://www.sanken-ele.co.jp/en/prod/semicon/pdf/sma7029me.pdf, но в даташите сказано, что драйвер униполярный, а можно ли его приспособить для работы с биполярным двигателем? И есть еще одна - SLA4051, но на неё даташита не найду.


Gisteresis писал(а):Мне не в лом помочь вам доделать драйвер. Но по моему вы не понимаете азов, вам нужно читать закон ома, и теорию по биполярам. :tea:
Пойду курить теорию :wink:
Если бы это было так, это бы еще ничего. Если бы ничего, то так бы оно и было. Но так как это не так, так оно и не эдак. Такова логика вещей. (с)
Аватара пользователя
Gisteresis
Друг Кота
Сообщения: 4732
Зарегистрирован: Ср сен 18, 2013 10:08:26
Откуда: Санкт-Петербург

Re: Запуск шагового двигателя

Сообщение Gisteresis »

Davydov писал(а):SMA7029M... а можно ли его приспособить для работы с биполярным двигателем?

Нет.

Davydov писал(а):есть еще одна - SLA4051, но на неё даташита не найду.

http://www.sanken-ele.co.jp/en/prod/semicon/pdf/sla4051e.pdf
http://www.dz863.com/datasheet-84005163-SLA4051_Built-in-Avalanche-Diodes-Between-Collector-And-Base/
Это какая то сборка транзисторная.

Проще добить вашу, у вас уже практически все готово.
Davydov
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт авг 16, 2012 21:34:24

Re: Запуск шагового двигателя

Сообщение Davydov »

Gisteresis писал(а):Проще добить вашу, у вас уже практически все готово.

Меня просто смущает нагрев(( Ладно, а если между базами КТ817 и контроллером поставить ULN2003?
Если бы это было так, это бы еще ничего. Если бы ничего, то так бы оно и было. Но так как это не так, так оно и не эдак. Такова логика вещей. (с)
Аватара пользователя
Gisteresis
Друг Кота
Сообщения: 4732
Зарегистрирован: Ср сен 18, 2013 10:08:26
Откуда: Санкт-Петербург

Re: Запуск шагового двигателя

Сообщение Gisteresis »

Нужно просто правильно все поставить и нагрева не будет.
Повторяю, ключи берите с запасом по току. 816/817 подходят. Они держат 3А, вам нужно 1А.
http://www.5v.ru/ds/trnz/kt816.htm
http://www.5v.ru/ds/trnz/kt817.htm
h21 = 25.

Значит, чтобы их полностью открыть нужно чтобы ток базы был не менее 3000/25=125мА, а то и запас можно набавить.

КТ315 к сожалению не подходит, он только до 100мА, но вот С945 идеально.
http://tranzistor.biz/tranzistor.php?tranzistor=52898
а вообще нет, на сайте неверно написано, открываю даташит там только 100мА :)
http://alltransistors.com/pdfview.php?doc=2pc945_3.pdf&dire=_philips
Нужно что то немного мощнее.

(на проводимости внимания не обращаю, PNP или NPN, думаю с этим вы справитесь)

В качестве примера допустим С945 имеет максимальный ток коллектора 200мА (Допустим! На самом деле это не так.)
h21 = 60. Ток с ноги МК = 30мА, значит транзистор пропустит 30*60=1800мА, что гораздо больше 125 необходимых и при этом он точно полностью откроется (что гарантирует отсутствие нагрева!)

Дарлингтоны имеют h21 обычно 500..1000, что вообще снимает этот головняк с расчетом, и КТ315 идеально подходят!
Можете сами сделать составные транзисторы.

Можно в место моста сборку ULN, там какая то из серии была на 1.5-2А что то такое. Можно с МК ей управлять, а с нее прямо на двигатель.
Davydov
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт авг 16, 2012 21:34:24

Re: Запуск шагового двигателя

Сообщение Davydov »

Ув. Gisteresis, нашел униполярный двигатель, который после некоторой механической доработке подойдет к посадочному месту биполяра, собрал для него драйвер, все закрутилось-завертелось, никакого нагрева, ну разве что двигатель нагревается в процессе работы, осталось теперь только проверить, что усилие, которое они приложит к механизму будет достаточным. Если нет, буду ковырять драйвер для биполяра.
Если бы это было так, это бы еще ничего. Если бы ничего, то так бы оно и было. Но так как это не так, так оно и не эдак. Такова логика вещей. (с)
Аватара пользователя
Gisteresis
Друг Кота
Сообщения: 4732
Зарегистрирован: Ср сен 18, 2013 10:08:26
Откуда: Санкт-Петербург

Re: Запуск шагового двигателя

Сообщение Gisteresis »

Davydov писал(а):никакого нагрева

Ну вот, поздравляю. Да, для униполярного силовая часть выглядит проще. Но у униполярного не полностью используются обмотки, а только лишь 50%. Следовательно его удельная габаритная мощность в 2 раза меньше чем у биполярного. Иными словами для достижения того же крутящего момента униполярный двигатель нужно взять в 2 раза больше!

Davydov писал(а):двигатель нагревается в процессе работы

Небольшой нагрев это нормально.
Davydov
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт авг 16, 2012 21:34:24

Re: Запуск шагового двигателя

Сообщение Davydov »

Gisteresis, доброго времени суток!
Нашел вот такой драйвер для биполярного двигателя: A2918SW.
Не могу понять, какой должна быть управляющая последовательность драйвером?
---
P.S. Кажется разобрался. Спасибо! :write:
Если бы это было так, это бы еще ничего. Если бы ничего, то так бы оно и было. Но так как это не так, так оно и не эдак. Такова логика вещей. (с)
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3780
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Запуск шагового двигателя

Сообщение Ser60 »

Я только что закончил проект с драйвером биполярного шагового мотора DRV8833. Очень рекомендую. Если нужен микрошаг и/или связь с МК всего по двум проводам, посмотрите на DRV8834. Я его тоже пробовал, работает замечательно. Правда, напряжение питания у обоих не следует превышать 11.5в.
Ответить

Вернуться в «Цифровая техника»