Вопрос про unl и шаговый двигатель
- Войдите на сайт для отправки комментариев
Здравсвуйте, совсем недавно стал изучать arduino и то что можно с ней сделать, и вот пришла дошла очередь до шагового мотора, почитав много информации я понял что для таких дел надо unl2003.
После покупки unl2003a стал с ним разбираться и вот тут мое понимание об этой схеме полностью пропало. Читая информацию я думал, unl2003a служит для того что подавать ток на определенную ногу, но в итоге ставя различные эксперементы я заметил, что она подает землю. Вот тут возникает первый вопрос как именно должна работать unl2003a и что именно должно выходить с 10-16 ноги земля или Ток с 9й? Если ток, то что именно я делаю неправильно или что немогу понять.
Дале задался вопросом с самим шаговым двигателем, у меня m35sp-8na с 4мя проводами, в гугле ненашел ниодной схемы подключения подобного двигателя, либо нашел то, что я не в силах пока понять. в качестве скетчка использовал данный код
//defining connections to L298N
int input1 = 4;
int input2 = 5;
int input3 = 6;
int input4 = 7;
void setup()
{
pinMode(input1,OUTPUT);
pinMode(input2,OUTPUT);
pinMode(input3,OUTPUT);
pinMode(input4,OUTPUT);
}
void loop()
{
//1st step
digitalWrite(input1,HIGH);
digitalWrite(input2,LOW);
digitalWrite(input3,LOW);
digitalWrite(input4,HIGH);
delay(10); //small delay between each step of 10ms
//2nd step
digitalWrite(input1,LOW);
digitalWrite(input2,HIGH);
digitalWrite(input3,LOW);
digitalWrite(input4,HIGH);
delay(10);
//3rd step
digitalWrite(input1,LOW);
digitalWrite(input2,HIGH);
digitalWrite(input3,HIGH);
digitalWrite(input4,LOW);
delay(10);
//4th step
digitalWrite(input1,HIGH);
digitalWrite(input2,LOW);
digitalWrite(input3,HIGH);
digitalWrite(input4,LOW);
delay(10);
}
При подключении ардуино на прямую к шаговому я заметил что он пытается крутиться, но так как ток небольшой силы, то у него ничего не выходит, а подключание через UNL2003а результата недало, так как написал выше unl дает на ноги землю, возможно ли подключить данный двигатель через unl2003a? И если да то каким образом?
https://fb.docs.com/ZXAB Вот тут на странице 14 вроде как описан мой случай, но я не доконца понял как именно надо подключиться
Дмитрий, unl2003 - это просто сборка из семи составных транзисторов. В её дадашите всё написано и как подключать, и какие у неё характеристики. Если Вы не знаете, как вообще подключается нагрузка через биполярный транзистор, погуглите - информации много.
Прямое подключение шаговика к ардуине - это круто! Ардуина уже в мусорном ведре? Или Вы пока ещё не заметили, что она умерла?
Она работает,Думаю это не самое страшное что с ней было пока учился пользоваться.
Про подключение читал, и думал что понимаю что там написано, вот пример схемки (Знаю что светодиоды лучше подключать через резисторы) https://gyazo.com/adb120389ed0d23cc9b280033e87d074 Тут я хотел бы чтоб загорелся желтый светодиод, так как нагрузку подаю на него, но в итоге загорается красный, так и должно быть? или мои мысли все же правильнее
Тут я хотел бы чтоб загорелся желтый светодиод, так как нагрузку подаю на него, но в итоге загорается красный, так и должно быть? или мои мысли все же правильнее
Жёлтый? А куда у него подключён анод (правая по рисунку нога?) Судя по Вашему рисунку - болтается в воздухе - не подключена ни к чему. И чего Вы от него ждёте?
Вообще, эта микросхема подключается проще пареной репы. Только, чтобы понять, что я пишу, точно уясните - источник питания нагрузки это не то, что источнник питания ардуины. В частном случае они могут быть одним и тем же ИП, но в общем случае ардуина питается от совего ИП, а нагрузка от своего, который может быть до 50 вольт. Так вот, минусы обоих источников питания должны быть соединены вместе - общая земля. Теперь поехали:
8 пин - на общую землю
9 пин - на + источника питания нагрузки
1-7 пины управляющие, соединяются с цифровыми пинами ардуины
16-10 пины (именно в обратном порядке) нагрузки, управляемые 1-7 пинами соответсвенно
Нагрузки до 7 штук включаются катодом к пину (10-16), а анодом к + источника питания нагрузки. Вот и всё, управляйте на здоровье.
Тут я хотел бы чтоб загорелся желтый светодиод, так как нагрузку подаю на него, но в итоге загорается красный, так и должно быть? или мои мысли все же правильнее
Жёлтый? А куда у него подключён анод (правая по рисунку нога?) Судя по Вашему рисунку - болтается в воздухе - не подключена ни к чему. И чего Вы от него ждёте?
Правый по рисунку подключен к земле, и так как светодиодот изображен вверх ногами то это катод. Подключал их специально один + второй - чтоб понять как она работает.
Как именно подключить схему я понял, но как говорил выше на ногах 10-16 я ждал + для подключания анода, а выходит что они дают минус для катода? (Если так то все подключено сейчас верно, и с первом проблемой я разобрался)
Тогда сразу вытекает второй вопрос, возможно ли шаговый мотор который я привел выше подключить к ULN схеме? Чаще в интернете встречал подключение шаговых моторов с 5ю проводами, http://radio-gl.narod.ru/constr/auto/upr_shd/02.gif И с ним все просто, если верить данной схеме.
Для 4х проводных я видел схемы которые привел в первом сообщении( там подключение с unl но я его не понял) или такие http://2.bp.blogspot.com/-RasuMBgsHZU/TxmOebs4FeI/AAAAAAAAB8s/G6tPCYRcfRw/s1600/Stepper+Motor_bb.png Но тут используются другие схемы.
На рисунке не нарисовано, что там минус.
unl - катодный драйвер для нагрузок в общим анодом. Так что подключайте соответственно
Вот данную схему я не могу разобрать как правильно подключать https://gyazo.com/4b0f1d1fa2766f0e3ca97a4ae2b3d18a Куда подключить 4 катода я понял, а вот аноды нет, так как они идут на одном проводе с катодом
Так он здесь биполярный шаговик. У него ...
Давайте так: рассуждайте таким образом: если на пине 16 0(относительно земли), а на пине 15 - напряжение питания, то на концах верхней обмотки имеем: на верхнем - напряжение питание, на нижнем - 0. Теперь поменяем и сделаем на 16 - напряжение питания, а на 15 - 0. Что на обмотке? На верхнемм конце - 0, а на нижнем - напряжение питания. Понимаете?
В помощь ардуинщику
Хотя, там аналогичная схема((((
Так он здесь биполярный шаговик. У него ...
Давайте так: рассуждайте таким образом: если на пине 16 0(относительно земли), а на пине 15 - напряжение питания, то на концах верхней обмотки имеем: на верхнем - напряжение питание, на нижнем - 0. Теперь поменяем и сделаем на 16 - напряжение питания, а на 15 - 0. Что на обмотке? На верхнемм конце - 0, а на нижнем - напряжение питания. Понимаете?
В теории да, но понять куда надо надо подвести + от питания не могу https://gyazo.com/2149e924e9452b9159a0cc80f1994b9a Вот схема, куда надо подвести + от питания, чтоб шаговый мотор стал крутиться?
Если ШД униполярный - 5 выводов, то uln можно подключить. Если 4 вывода - ШД биполярный, uln не подключишь, потому что на выводах нужно менять полярности.
Если ШД униполярный - 5 выводов, то uln можно подключить. Если 4 вывода - ШД биполярный, uln не подключишь, потому что на выводах нужно менять полярности.
Спасибо за ответ, Получается данная схема неверная? https://gyazo.com/4b0f1d1fa2766f0e3ca97a4ae2b3d18a
Если ШД униполярный - 5 выводов, то uln можно подключить. Если 4 вывода - ШД биполярный, uln не подключишь, потому что на выводах нужно менять полярности.
Да, нет, посмотрите внимательно на ту схему. Там всё нормально - полярности на обмотках двигателя меняются без того, чтобы менялись полярности на ногах контроллера.
Всё там нормально с той схемой.
В теории да, но понять куда надо надо подвести + от питания не могу https://gyazo.com/2149e924e9452b9159a0cc80f1994b9a Вот схема, куда надо подвести + от питания, чтоб шаговый мотор стал крутиться?
dmitryi_k,
Вы постоянно упираетесь в парадигму "Vcc - Ground". Здесь подключение не такое. Здесь просто создайтся разность потенциалов и она может быть в любую сторону.
Давайте, знаете как поступим. Начнём с более простого вещей. Посмотрим на два примера, а после второго примера, Вы вернётесь к мрему посту №7 и перечитаете его глядя на схему, которую Вы привели. Думаю, всё прояснится.
Первый пример. Самый обыкновенный светодиод можно подключить двумя спсобами:
1. Анодом к цифровому пину, и катодом к земле;
2. Анодом к Vcc, и катодом к цифровому пину;
В первом случае, чтобы он загорелся надо подать на пин HIGH. Образуется разность потенциалов между анодом и катодом и ток потечёт от пина к земле - светодиод загорится. Если подать на пин LOW - разности потенциалов между анодом и катодом не будет и ток не потечёт - светодиод не горит.
Во втором случае, чтобы он загорелся надо подать на пин LOW. Образуется разность потенциалов между анодом и катодом и ток потечёт от Vcc к пину - светодиод загорится. Если подать на пин HIGH - разности потенциалов между анодом и катодом не будет и ток не потечёт - светодиод не горит.
Это точно понятно?
Теперь второй пример. Возьмём простейшее биполярное устройство. У вас есть двухцветный двуногий светодиод? Это такой светодиод, на который можно подать напряжение в одной полярности - он светится одним цветом, а если подать в другой полярности - он светится другим цветом. Как подключить его к контроллеру? Никакой вывод нельзя цеплять ни к Vcc, ни Gnd. Оба вывода надо соединить с цифровыми пинами (допустим с пинами 2 и 3).
Если подать на 2 HIGH, а на 3 - LOW, ток потечёт от второго пина к третьему и светодиод загорится одним цветом, а если подать на 2 - LOW, а на 3-й - HIGH, ток потечет от третьего пина ко второму и светодиод загорится другим цветом. А если на пины 2 и 3 подать одинаковые значения (неважно HIGH или LOW) то на выводах диода будут одинаковые потенциалы, ток не потечёт и он светиться не будет!
Вот это точно понятно?
Вот теперь, посмотрите на Вашу схему и прочитайте мой пост №7 внимательно. Там используется в точности такая же техника. На обмотке создаётся разность потецналов в зависмости от состояния пинов 15 и 16 uln'ки. При одном их состояни ток в обмотке течёт сверху вниз (по рисунку), при другом снизу вверх, а если на пинах 15 и 16 одно и тоже (не важно что) разности потенциалов на концах обмотки нет и ток через неё не течёт.
В теории да, но понять куда надо надо подвести + от питания не могу https://gyazo.com/2149e924e9452b9159a0cc80f1994b9a Вот схема, куда надо подвести + от питания, чтоб шаговый мотор стал крутиться?
dmitryi_k,
Вы постоянно упираетесь в парадигму "Vcc - Ground". Здесь подключение не такое. Здесь просто создайтся разность потенциалов и она может быть в любую сторону.
Давайте, знаете как поступим. Начнём с более простого вещей. Посмотрим на два примера, а после второго примера, Вы вернётесь к мрему посту №7 и перечитаете его глядя на схему, которую Вы привели. Думаю, всё прояснится.
Первый пример. Самый обыкновенный светодиод можно подключить двумя спсобами:
1. Анодом к цифровому пину, и катодом к земле;
2. Анодом к Vcc, и катодом к цифровому пину;
В первом случае, чтобы он загорелся надо подать на пин HIGH. Образуется разность потенциалов между анодом и катодом и ток потечёт от пина к земле - светодиод загорится. Если подать на пин LOW - разности потенциалов между анодом и катодом не будет и ток не потечёт - светодиод не горит.
Во втором случае, чтобы он загорелся надо подать на пин LOW. Образуется разность потенциалов между анодом и катодом и ток потечёт от Vcc к пину - светодиод загорится. Если подать на пин HIGH - разности потенциалов между анодом и катодом не будет и ток не потечёт - светодиод не горит.
Это точно понятно?
Теперь второй пример. Возьмём простейшее биполярное устройство. У вас есть двухцветный двуногий светодиод? Это такой светодиод, на который можно подать напряжение в одной полярности - он светится одним цветом, а если подать в другой полярности - он светится другим цветом. Как подключить его к контроллеру? Никакой вывод нельзя цеплять ни к Vcc, ни Gnd. Оба вывода надо соединить с цифровыми пинами (допустим с пинами 2 и 3).
Если подать на 2 HIGH, а на 3 - LOW, ток потечёт от второго пина к третьему и светодиод загорится одним цветом, а если подать на 2 - LOW, а на 3-й - HIGH, ток потечет от третьего пина ко второму и светодиод загорится другим цветом. А если на пины 2 и 3 подать одинаковые значения (неважно HIGH или LOW) то на выводах диода будут одинаковые потенциалы, ток не потечёт и он светиться не будет!
Вот это точно понятно?
Вот теперь, посмотрите на Вашу схему и прочитайте мой пост №7 внимательно. Там используется в точности такая же техника. На обмотке создаётся разность потецналов в зависмости от состояния пинов 15 и 16 uln'ки. При одном их состояни ток в обмотке течёт сверху вниз (по рисунку), при другом снизу вверх, а если на пинах 15 и 16 одно и тоже (не важно что) разности потенциалов на концах обмотки нет и ток через неё не течёт.
Если поставить между 15 и 16 ногами ULN светодиод он просто так не загориться https://gyazo.com/d846c9a287014fca7523f8513fd2f293 Что собственно и логично.
Если подать туда ток на ( 15 нога ULN ) То когда мы подаем HIGH на первую ногу то создается разница потенциалов и светодиод зарается https://gyazo.com/ca5db433237018d6a96dc490adac4161 (если светодиод заменить на 2 провода шагового двигателя, то можно ощущать что он тоже начинает крутиться). Но нам надо чтоб ток шел не только от 15 к 16 но и на оборот, и мне на ум приходит только подать и на 16 ногу uln ток https://gyazo.com/9fa41964e450982baa12de7a9758e38b Но в данном случае светодиод гореть перестает, так же как и шаговый моток хоть как то реагировать, этот момент мне и не понятен, как правильно нужно подать ток
Подать ток невозможно.
Чтобы пошел ток, нужно подать разность потенциалов.
И объяснить это лучше, чем уже сделал ЕвгенийП, мне кажется, невозможно.
Не поленитесь прочитать его сообщение еще раз.
А если не поможет - то еще раз.
dmitryi_k, вы посмотрите схему организации ULN, ЕвгенийП все описал очень подробно, при подаче HIGH-LOW на входы вы получите ваши условные VCC, GND на одних выходах, после инверсии сигналов на входах аналогично произойдет и с выходами.
МК работают в бинарной логике и имеют два активных состояния 0-1, HIGH-LOW, true-false. Никаких иных для общения с внешним миром не предусмотрено.
Если вернуться к двуногому светодиоду, то это два светодиода включенные встречно-параллельно. При потенциалах на ногах HIGH-LOW, ток течет через один, при LOW-HIGH через другой. При HIGH-HIGH или LOW-LOW никуда не течет, т.к. течь нечему. Аналогично произойдет и с вашими обмотками.
Отрешитесь от аналоговой техники и представляйте себе просто: GND это не минус (-), а ноль (0). Положительное питание это не плюс (+), а единица (1) и все выходы МК находятся в каком то одном из этих состояний.
В преддоженой схеме, если я правильно понимаю, разность потенциалов получается за счет паразитных сопротивлений. Разве это есть хорошо?
Я очень пытаюсь понять смысл, но как то не могу(
Если взять в пример вот эту схему https://gyazo.com/d846c9a287014fca7523f8513fd2f293 И чередовать HIGH иLOW на 1 и 2 ноге ULN, то светодиод должен мигать?
Я очень пытаюсь понять смысл, но как то не могу(
Если взять в пример вот эту схему https://gyazo.com/d846c9a287014fca7523f8513fd2f293 И чередовать HIGH иLOW на 1 и 2 ноге ULN, то светодиод должен мигать?
Подозреваю, что нет. ULN это ключи, открывающие проход к "0". Соответственно, один из выводов должен быть подключен к условной "1". На схеме мотора это сделано через токоограничивающие резисторы.
Кстати не путайте обмотку и диод. Диод пропускает ток только в одном направлении, обмотка в любом.
Вот именно это я и хочу понять, как правильно подключить условное "1"
Для светодиода - катод к выходу ULN, анод через резистор к + питания.
Со светодиодом я разобрался, А вот с шаговым двигателем нет
Для двигателя, перечитайте еще раз посты 6 и 7, глядя на схему.
Скорее всего это понять пока не смогу, начну с униполярного мотора
Попробуем проще, возьмите схему с двигателем, что сами приводили и перерисуйте ее. Вместо ULN нарисуйте обычные выключатели, замыкающие на GND и посмотрите, как пойдут токи при разных положениях выключателей.