Простейшая программа для экспериментов с биполярным ШД

шаговики, многофазники, постоянного тока и т.д.
abomin
Читатель
Читатель
Сообщения: 1
Зарегистрирован: 17 май 2016, 10:21

Re: Простейшая программа для экспериментов с биполярным ШД

Сообщение abomin »

Здравствуйте! Спасибо автору за доходчивое изложение! Суну и я свой пятачок... Есть у меня в задумке переделать старые электромеханические часы ( с синхронным двигателем на 110 вольт) на шаговики. Так вот там надо будет точно подсчитать кол-во шагов двигателя на оборот минутной стрелки (связь оси шаговика с осью стрелки через шестерёнки). Для этого надо, чтобы на одно нажатие кнопки мотор делал один шаг. Вобще-то я с пиками ещё не работал, но по анализу исходной проги переделал основную часть. Теперь при одном нажатии любой из кнопок мотор делает один шаг в соотв. сторону, сколько бы кнопка ни была нажата. Если же при нажатой и удерживаемой кнопке нажать и держать вторую, мотор будет непрерывно шагать в ту сторону, какая кнопка была нажата первой.

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

;******************************************************************************************
;****** РАБОЧАЯ ЧАСТЬ *********************************************************************
;****** Сканирование кнопок ***************************************************************
wait
		btfsc		GPIO,3
		goto		nextchk		;кн. вперёд не нажата
wait1
		btfss		GPIO,5
		goto		goforward
		btfsc		GPIO,3
		goto		goforward
		goto		wait1
nextchk
		btfsc		GPIO,5
		goto		wait
wait2
		btfss		GPIO,3
		goto		gobackward
		btfss		GPIO,5
		goto		wait2
		call		Backward
		goto		wait
goforward
		call		Forward
		goto		wait
gobackward
		call		Backward
		goto		nextchk
;******************************************************************************************
Извиняюсь за отсутствие комментариев... Прилагаю файл прошивки.
Вложения
step_motor_293_one_step.zip
(2.06 КБ) 385 скачиваний
melgozan
Читатель
Читатель
Сообщения: 5
Зарегистрирован: 04 ноя 2016, 20:38

Re: Простейшая программа для экспериментов с биполярным ШД

Сообщение melgozan »

Здравствуйте. Нашел несколько LB1836, сравнил с LB1838, вроде никакой разницы. Спаял и не работает, только шаговик дергается от нажимания на кнопки.
Аватара пользователя
rhf-admin
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
Сообщения: 3060
Зарегистрирован: 25 авг 2009, 23:19
Откуда: Уфа
Контактная информация:

Re: Простейшая программа для экспериментов с биполярным ШД

Сообщение rhf-admin »

Небольшая разница всё же есть. Если сопоставить таблицы истинности, то можно увидеть, что:
Состояние FORWARD у обоих микрух совпадает (если сопоставить соответствующие выводы), а вот состояние REVERSE для LB1838 будет соответствовать состоянию BRAKE у LB1836.
Так что прогу для LB1836 нужно переписывать, иначе там, где нужно менять полярность, обе обмотки будут вместо этого закорачиваться на землю.
С уважением, администрация сайта.
melgozan
Читатель
Читатель
Сообщения: 5
Зарегистрирован: 04 ноя 2016, 20:38

Re: Простейшая программа для экспериментов с биполярным ШД

Сообщение melgozan »

А что нужно добавить изменить в прошивке для LB1836. Сам точно не сделаю, темный лес.
Аватара пользователя
rhf-admin
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
Сообщения: 3060
Зарегистрирован: 25 авг 2009, 23:19
Откуда: Уфа
Контактная информация:

Re: Простейшая программа для экспериментов с биполярным ШД

Сообщение rhf-admin »

Здесь нужны все 4 сигнала отдельно (т.е. IN1,IN2 придётся разделить). Далее нужно в таком же цикле из 4-х шагов ставить в единицу один из сигналов, в таком порядке: In1, In3, In2, In4.
Для этого в программе нужно вот в этом месте:

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

 movlw  b'00000001'
 movwf  Step1
 movlw  b'00000010'
 movwf  Step2
 movlw  b'00000101'
 movwf  Step3
 movlw  b'00000110'
 movwf  Step4
просто прописать эту последовательность...
С уважением, администрация сайта.
melgozan
Читатель
Читатель
Сообщения: 5
Зарегистрирован: 04 ноя 2016, 20:38

Re: Простейшая программа для экспериментов с биполярным ШД

Сообщение melgozan »

rhf-admin писал(а):Здесь нужны все 4 сигнала отдельно (т.е. IN1,IN2 придётся разделить).
В программе так

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

movlw  b'00101000' ; настройка выходов (GP3,GP5 - входы)

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

wait  btfss  GPIO,3

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

      movlw  b'00000010'
      movwf  Step1
      movlw  b'00000001'
      movwf  Step2
      movlw  b'00000100'
      movwf  Step3
      movlw  b'00000011'
      movwf  Step4
Схему нарисовал такую. Спаял на макетке и не работает. Нашел еще LB1848, LB1935 ( все из фототехники, объективов)
Вложения
STP.GIF
STP.GIF (10.41 КБ) 9475 просмотров
Аватара пользователя
rhf-admin
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
Сообщения: 3060
Зарегистрирован: 25 авг 2009, 23:19
Откуда: Уфа
Контактная информация:

Re: Простейшая программа для экспериментов с биполярным ШД

Сообщение rhf-admin »

Первые две правки - правильные, а в последней должно быть так:

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

      movlw  b'00000001'     ; IN1=1
      movwf  Step1
      movlw  b'00000100'     ; IN3=1
      movwf  Step2
      movlw  b'00000010'     ; IN2=1
      movwf  Step3
      movlw  b'00010000'     ; IN4=1
      movwf  Step4
С уважением, администрация сайта.
Аватара пользователя
Virtual2
Читатель
Читатель
Сообщения: 160
Зарегистрирован: 23 май 2016, 22:12

Re: Простейшая программа для экспериментов с биполярным ШД

Сообщение Virtual2 »

2melgozan не слушай ты админа :mrgreen:
даташит на этот 1836 какой-то мутный.
входов 4, выходов 2.
отсель всего 16 возможных комбинаций, перебери их все! и составь табличку состояний., вот и будет настоящий ман по данной микрухе. :patriot:

ADD:
вероятный полный цикл вперед:

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

IN1,IN2,IN3,IN4
H,L,L,L
H,L,H,L
L,L,H,L
L,H,H,L
L,H,L,L
L,H,L,H
L,L,L,H
H,L,L,H
---
PS
если админ начнет взрывать мосг с полушагами кинь в него тапок, заготовь заранее :ugeek:
Аватара пользователя
rhf-admin
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
Сообщения: 3060
Зарегистрирован: 25 авг 2009, 23:19
Откуда: Уфа
Контактная информация:

Re: Простейшая программа для экспериментов с биполярным ШД

Сообщение rhf-admin »

Virtual, дай ты человеку сначала полные шаги освоить.
Cам же знаешь, что это ты для полушагового режима написал, отсюда и троллинг про взрыв мозга...
С уважением, администрация сайта.
Аватара пользователя
Virtual2
Читатель
Читатель
Сообщения: 160
Зарегистрирован: 23 май 2016, 22:12

Re: Простейшая программа для экспериментов с биполярным ШД

Сообщение Virtual2 »

если уж делать то делать поуму СРАЗУ плаавненько так, как задумано, а не ездить на квадратных колесах 8-)
только для нормального браузера!
sms.svg
sms.svg (4.38 КБ) 4675 просмотров
так что вам решать прыгать по синим или еще и плаавненько так еще и через зеленое

для 4х шагового режима обычно применяют намного более простые драйверы.

PS я-б еще поигрался с режимом Brake (замыкание обмоток, в динамических системах обычно применяют как режим торможения через самоиндукцию) но это уж точно выходит за пределы данного урока простейшей вращающейся магнитной системы, и кст из школьного курса физики :ugeek:

PSPS
2melgozan обязательно повесь пару "керамики" от 1мкФ меж GND и ножками VS1 VS2 (туда улетает импульс самоиндукции при снятии напряжения с обмоток, когда не пользуют Brake)
Последний раз редактировалось Virtual2 07 ноя 2016, 21:58, всего редактировалось 1 раз.
Ответить