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

zx9000
Offline
Зарегистрирован: 01.09.2016

Мне необходимо создать программу следующего содержания

При запуске два шаговых двигателя должны медленно вращаться до концевого датчика далее отъехать на центр тоесть на определённое количество шагов и далее двигаться вперёд и на назад на определённое колличество шагов. Если произошол сбой и двигатель доедит до концевого датчика он должен снова обнулиться и начать работу заново.

Вопрос как мне написать такую программу ( я очень начинающий а времени мало . электронику я собрал а вот програмировать не умею )))

vvadim
Offline
Зарегистрирован: 23.05.2012

да собственно вариантов три

1. учиться

2. в разделе Ищу исполнителя за денежку

3. ждать когда кто то от нечего делать вам код нацарапает

выбор за вами

zx9000
Offline
Зарегистрирован: 01.09.2016

Я попробовал учиться . Сложно когда этим ни когда не занимался но интересно. Но тем не менее нужен наставник что бы хоть немного объяснил человеческим языком )))

vvadim
Offline
Зарегистрирован: 23.05.2012

читайте книжки по ардуино

смотрите примеры на ютубе

задавайте толковые вопросы на форуме

прекратите веровать что вы какому нибудь специалисту интересны))))

zx9000
Offline
Зарегистрирован: 01.09.2016

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

qwone
qwone аватар
Offline
Зарегистрирован: 03.07.2016

Да легко. Лови скетч http://3dtoday.ru/blogs/akdzg/custom-firmware-marlin-and-pour-it-into-a-3d-printer/

 Убери лишнее и будет работать как надо.

zx9000
Offline
Зарегистрирован: 01.09.2016

Спасибо )))

nevkon
Offline
Зарегистрирован: 20.01.2015

Про электронику сказано очень мало. Что как соединяете?

Вы хотите сделать свою прошивку для принтера/фрезера?

zx9000
Offline
Зарегистрирован: 01.09.2016

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

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

nevkon
Offline
Зарегистрирован: 20.01.2015

Хорошо, алгоритм вы расписали. Хотя вы и по какой-то причине не хотите писать допустим у вас контроллер степ-дир.

Делаем следующее: поднимаем дир, начинаем подавать сигналы степ с нужной периодичностью. В промежутках между подачей сигнала степ проверяем замыкание концевика. Как замкнулся останавливаем выполнение. Что и зачем дальше выполнять я так и не понял, но скорее всего инвертируем дир и шагаем сколько сказано, снова инвертируем дир и снова шагаем сверяясь с концевиком.

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

zx9000
Offline
Зарегистрирован: 01.09.2016

Плата управления Ардуино леонардо. Шаговые драйверы на микросхеме L298N.Первый драйвер подключен к выводам 2,3,4,5 Второй к 8,9,10,11. Концевик первого двигателя подключен к выводу 6, второй к выводу 7.

При запуске сначала должно пройти обнуление положения системы двигатели начинают медленно поворачиваться в одну сторону что бы доехать до концевика . Концевик срабатывает и дальше двигатель начинает ездить туда сюда на определённое расстояние которое я могу менять подстраивая под свои нужды но не задевая концевик. Если что то случилось и концевик задело снова включается программа обнуления