запомнить начальные координаты шаговый двигатель

si4re1
Offline
Зарегистрирован: 30.06.2015

Нужно чтобы привключении (в не зависимости от текущего местоположения) шаговый двигатель возвращался в домашние координаты (условный ноль)

нужно сделать программным способом.

есть идеи?

Alexey_A
Offline
Зарегистрирован: 01.05.2015

si4re1 пишет:

Нужно чтобы привключении (в не зависимости от текущего местоположения) шаговый двигатель возвращался в домашние координаты (условный ноль)

нужно сделать программным способом.

есть идеи?

 

Без датчика условного нуля, или хотябы датчика другого точно определенного положения - такое не сделать.

uragan
Offline
Зарегистрирован: 23.02.2015

Если двигатель слабенький, то на упор с запасом по ходу.

Araris
Offline
Зарегистрирован: 09.11.2012

si4re1 пишет:

Нужно чтобы привключении (в не зависимости от текущего местоположения) шаговый двигатель возвращался в домашние координаты (условный ноль)

нужно сделать программным способом.

есть идеи?

Идея следующая: после каждого движения двигателя записывать некую его "координату" в EEPROM. У меня это работает в управлении поворотом жалюзи, первый вариант был с датчиком положения, затем я от датчика отказался, все функционирует нормально уж пару месяцев.

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

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Или добавлением внешних епромов с большим количеством циклов типа RAMTRON ( там вроде  миллионы циклов) 
или есть статик RAM 23LC.....

si4re1
Offline
Зарегистрирован: 30.06.2015

 

1 ставим мотор в положение (условный ноль)

2 Начинаем движение на маленький шаг. Запоминаем номер шага в переменной.

3 движемся шажками (счетчик увеличивается)

4 По прерыванию (мотор остановился) сохраняем значение счетчика шагов в eeprom. (то есть мы знаем точку остановки)

5 По включению сравниваем точку остановки из eeprom с условным нулем.

?

 

 

Araris
Offline
Зарегистрирован: 09.11.2012

si4re1 , опишите подробнее, что за конструкция с шаговым двигателем.

si4re1
Offline
Зарегистрирован: 30.06.2015
Araris
Offline
Зарегистрирован: 09.11.2012

Проще всего будет прицепить к большой шестерне флажок||магнит, на который будет реагировать оптический||магнитный||механический датчик, дающий начальное||среднее||конечное положение шестерни.

Например, такой оптический :

si4re1
Offline
Зарегистрирован: 30.06.2015

спасибо

 

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

si4re1 пишет:

5 По включению сравниваем точку остановки из eeprom с условным нулем.

У шаговиков, в отличие от сервы, есть такая неприятная  веСЧь:
Он ничего не знает о своём положении- где ему  включили  фазы
там он и зафиксируется в пределах +-полшага

И ещё при падении питания контроллера он встанет где встанет.
Плюс может иногда пропускать шаги  из-за нагрузки и  неправильного разгона-торможения