Управляем шаговым двигателем с помощью Arduino UNO и uln2003a
Шаговый двигатель
Я буду исходить из своей статьи на habrahabr(http://habrahabr.ru/sandbox/57095/)
Одним прекрасным днём, попался мне в руки как-то шаговый двигатель БМГ — 200 — 265 Ф,

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


Начал звонить обмотки,

получилось что первая пара: черный — желтый — синий (общий черный) и вторая пара: белый — красный — зеленый (общий белый), двигатель оказался униполярный.

ULN2003a

Дальше стало интереснее была у меня микруха ULN2003a (ман), и конечно было хорошо, что данная микруха была в Proteus-е, запустил я протеус и немного про симулировав и получил следующее.

ARDUINO UNO

После программирования AVR, я как-то купил ARDUINO UNO и честно говоря, мне понравилось, легко в программирования плюс несколько проводков и breadboard и итого: быстрая разработка, удобство и простота.
Загрузив Arduino, приступил сразу к программированию и вот что получилось.

Описание функции: unStepMotor(PIN-1,PIN-2,PIN-3,PIN-4, скорость в мс). Необходима выбрать пины для подключения, у меня это 8,7,4,2 и соответственно для реверса меняем порядок чередования 2,4,7,8. В цикле тоже все понятно, 60-это количество тактов для вращения, в частности зависит от количества шагов движка.