Сохранение алгоритма работы шагового двигателя после перезагрузки питания.

Ответить
vfv
Сержант
Сообщения: 283
Зарегистрирован: 22.03.2018{, 12:35}
Репутация: 0
Откуда: Самара
Имя: Валерий

Сохранение алгоритма работы шагового двигателя после перезагрузки питания.

#1

Сообщение vfv » 17.11.2020{, 20:11}

При нажатии кнопки Пуск-Стоп униполярный шаговый двигатель с редуктором перемещает каретку укладки туда - сюда на установленное

количество шагов без установленных концевых датчиков.Если ещё раз нажать на кнопку Пуск-Стоп,происходит остановка и т.д.
Всё работает хорошо. Однако при перезагрузке питания для Ардуино сбивается иногда направление движения, уходит в сторону от

первоначального места перемещения на количество установленных шагов и на новом месте начинает работать опять правильно.
Как после перезагрузки питания сохранить нужное направление которое было до перезагрузки, а значит и прежнее место перемещения. Я

так понимаю надо занести что то в память.Занёс в память уставку шагов, куда теперь это приткнуть никак не соображу(сбивается я

заметил когда каретка остановлена в правом положении 200,а потом перезагрузка, а если -200, то не сбивается).

Ардуино УНО.
FLProg-6.3.1
Униполярный шаговый.

Ingwar
Полковник
Сообщения: 1929
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 223
Откуда: Ленобласть
Имя: Игорь

Сохранение алгоритма работы шагового двигателя после перезагрузки питания.

#2

Сообщение Ingwar » 17.11.2020{, 20:39}

vfv писал(а):
17.11.2020{, 20:11}
Как после перезагрузки питания сохранить нужное направление которое было до перезагрузки
Если перезагрузка как следствие выключения/включения питания, то можно завести +5В питания на свободный цифровой пин, от него через диод на питание контроллера. На ноги питания контроллера повесить параллельно емкий конденсатор (обеспечивающий работу от 0,5 сек). В программе добавить блок записи в ЕЕПРОМ по условию 0 на цифровом пине. И тогда при отключении питания появляется 0 на выбранном пине и пока кондер еще обеспечивает (за счет накопленной энергии) работу контроллера, происходит запись необходимых переменных. А в начале программы считываете их.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

vfv
Сержант
Сообщения: 283
Зарегистрирован: 22.03.2018{, 12:35}
Репутация: 0
Откуда: Самара
Имя: Валерий

Сохранение алгоритма работы шагового двигателя после перезагрузки питания.

#3

Сообщение vfv » 17.11.2020{, 20:52}

Ingwar писал(а):
17.11.2020{, 20:39}
Если перезагрузка как следствие выключения/включения питания
Питание может быть выключено на долго - день,месяц,год.
Не могу понять как меня выручит конденсатор.

Аватара пользователя
RedSky
Лейтенант
Сообщения: 574
Зарегистрирован: 19.12.2016{, 20:07}
Репутация: 72
Откуда: Днепропетровск
Имя: Алексей

Сохранение алгоритма работы шагового двигателя после перезагрузки питания.

#4

Сообщение RedSky » 17.11.2020{, 21:57}

vfv писал(а):
17.11.2020{, 20:11}
Не могу понять как меня выручит конденсатор
Тут принцип такой: контроллер увидит отключение питания и запишит число в eeprom. А конденсатор нужен, чтобы контроллер проработал ещё хотя бы 50-100мс для записи.
Для восстановления работы нужно сделать при включении перенос из eeproma в обычную переменную.

Ingwar
Полковник
Сообщения: 1929
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 223
Откуда: Ленобласть
Имя: Игорь

Сохранение алгоритма работы шагового двигателя после перезагрузки питания.

#5

Сообщение Ingwar » 18.11.2020{, 00:28}

vfv писал(а):
17.11.2020{, 20:52}
Не могу понять как меня выручит конденсатор.
Кусок для реализации способа
к примеру с кондером.flp
(61.23 КБ) 33 скачивания
Отправлено спустя 3 минуты 26 секунд:
Еще перед выключением можете вручную (по нажатию какой либо кнопки) записывать ключевые состояния переменных.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Ответить

Вернуться в «Помогите, а то я "нимагу"»