Алгоритм !

STEPMOTOR

Мож кто поскажет ?

Имею следующий алгоритм

if pinA=1 and pinB=0 then step=0
if pinA=0 and pinB=1 then step=1
if pinA=1 and pinB=1 then step=2
if pinA=0 and pinB=0 then step=3
motor[step]

состояние пинов A и B может меняться реверсивно, т.е
в одну сторону
А|B
1|0
0|1
1|1
0|0

или
A|B
0|0
1|1
0|1
1|0

обратный отсчет может начаться на любом шаге.

требуется из этих черех состояний сделать 8-семь состояний т.е полушаг для шаговика !

STEPMOTOR
AZi:

А нафига? 😃

Я слепил контроллер для пенопласторезки что на сайте hobbycnc.hu , он мне нравится тем что шаги не пропускает из-за 74ls191 “реверсивного счетчика”, написал даже прошивку для полного шага ,а вот для полушага невыходит пока !

А другой ставить неохота ! Если у меня этот будет выдавать полушаг то мне этого вполне хватит !

razdvatri:

Не уверен, что правильно понял, но, мб пригодится
на рассыпухе
www.seattlerobotics.org/encoder/200009/hans.html
www.ece.utexas.edu/~valvano/…/halfstep.pdf

Спасибо !

razdvatri

Еще вспомнил про дядьку с турбоцнц с пикушками
www.dakeng.com/u2.html

само-собой, даже не глядел в сырцы, так что не знаю, че там и как…
Типа, дисклямер

STEPMOTOR
razdvatri:

Еще вспомнил про дядьку с турбоцнц с пикушками
www.dakeng.com/u2.html

само-собой, даже не глядел в сырцы, так что не знаю, че там и как…
Типа, дисклямер

это я знаю пробовал уже !

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

abalex

М.б. не совсем понял задачу, но все-таки: мерить в процессоре интервал между шагами, делать задержку на половину этого интервала, и делать полшага, и потом еще раз.