roboforum.ru

Технический форум по робототехнике.
Текущее время: 03 май 2025, 22:41

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 13 мар 2016, 18:23 
Не в сети

Зарегистрирован: 13 авг 2014, 09:20
Сообщения: 124
прог. языки: Blitz3D, Processing
ФИО: Михаил
Все просто и в то же время оч сложно, потому что не работает... Прошиваю марлин в ардуишку, рампс и драйвер установлены шаговик подключен, и на команды репетиер хоста отвечает, все работает. Но зашиваю в ардуино "свой код" скачанный с сайта, который должен работать, но он не работает. Ресет и слип на драйвере запитаны, аппаратное питание есть, силовое питание есть, степ дир меняют свое напряжение, но мотор молчит, перепрошиваю ардуино подключаю репетиер хост...все работает... В чем проблема кто подскажет???

вот код

Код:
void update(int steps, int time, int pin_step, int pin_dir)
{
  if(steps>0) digitalWrite(pin_dir, HIGH);
  else
  {
    digitalWrite(pin_dir, LOW);
    steps=-steps;
  }
  //---
  for(int a=0; a<steps*2; a++)
  {
    delay(time);
    digitalWrite(pin_step, !digitalRead(pin_step));
  }
}

void setup() {               
  pinMode(46, OUTPUT);
  pinMode(48, OUTPUT);   
}

void loop() {
  update(100, 10, 46, 48);
  delay(1000);
  update(-100, 10, 46, 48);
  delay(1000);
}


вот сборка


Вложения:
IMG_20160313_174747[1].jpg
IMG_20160313_174747[1].jpg [ 878.15 КиБ | Просмотров: 2981 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 13 мар 2016, 20:26 
Не в сети
скрытый хозяин вселенной :)
Аватара пользователя

Зарегистрирован: 18 сен 2006, 12:26
Сообщения: 18018
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич
подключи светодиоды на степ/дир и убедись что твоя программа работает.

_________________
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 13 мар 2016, 22:13 
Не в сети

Зарегистрирован: 13 авг 2014, 09:20
Сообщения: 124
прог. языки: Blitz3D, Processing
ФИО: Михаил
Myp, а что в этом случае может не работать? код? может у тебя есть заведомо рабочий пробный скетч для пололу а4988?

Да, проверил, светодиод моргает, ну оно и понятно. Может для степа нужено какое то особое напряжение? или интервалы подачи или длительность подачи? Я пытался в марлине разобратся, ну там наворочено столько defin-ов что фиг поймешь откуда эта переменная где ее искать...

Добавлено спустя 1 час 33 минуты 1 секунду:
Никто такого никогда не делал? ну может кто то хоть поможет разобраться в "марлин"е? Где там конкретно искать хитрость в управлении шаговиками?

Добавлено спустя 5 минут 46 секунд:
Заметил особенность, при вращении шаговика от "репетир хоста" энейбл в ноль уходит, а когда жесткий рестарт делаешь возвращается к 4,7 вольтам. С моей же прошивкой энейбл всегда на 4,25 вольтах.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 14 мар 2016, 00:31 
Не в сети

Зарегистрирован: 14 мар 2016, 00:20
Сообщения: 7
вот программа заведомо рабочая, вам подставить только ваши пины
Код:

#include <AccelStepper.h>

#define STEP 9        // step
#define DIR 8         // dir направления вращения
#define EN 10         // enable вкл/выкл
#define delay_step 5  // Выдержка для регулировки скорости вращения

int analogPin0 = A0;  // пин переменного резистор
//int reg = x;          // Переменная которая будет содержать размер буфера

void setup()
{
  pinMode(STEP, OUTPUT);       // Настраиваем контакт на выход
  pinMode(DIR, OUTPUT);        // Настраиваем контакт на выход
  pinMode(EN, OUTPUT);         // Настраиваем контакт на выход
  pinMode(analogPin0, INPUT);  // Настраиваем контакт на вход
}

void loop()
{
  //int x = reg;
  int reg = (analogRead(analogPin0)); // переменая с переменного резистора 1023
 
  digitalWrite(EN, 0);
  cicle(1, reg);
  delay(5);
  cicle(0, reg);
  delay(5);
}

void cicle(boolean napr, int steps)
{
  digitalWrite(DIR, napr);
  for (int i=0; i < steps; i++)
  {
    digitalWrite(STEP, 1);
    delay(delay_step);
    digitalWrite(STEP, 0);
    delay(delay_step);
  }
}



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 14 мар 2016, 20:35 
Не в сети

Зарегистрирован: 13 авг 2014, 09:20
Сообщения: 124
прог. языки: Blitz3D, Processing
ФИО: Михаил
GaD, Огромное спасибо это должно работать!) вот только вопрос. У меня энейбл на пине А8 как точно узнать номер пина? В протеусе номера одни, пины другие...

Добавлено спустя 2 часа 4 минуты 49 секунд:
Оха, с пинами разобрался...


Последний раз редактировалось MIHAnik22 14 мар 2016, 20:49, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 14 мар 2016, 20:43 
Не в сети

Зарегистрирован: 14 мар 2016, 00:20
Сообщения: 7
Код:
#include <AccelStepper.h>

#define STEP 54        // step
#define DIR 55         // dir направления вращения
#define EN 38         // enable вкл/выкл
#define delay_step 5  // Выдержка для регулировки скорости вращения

void setup()
{
  pinMode(STEP, OUTPUT);       // Настраиваем контакт на выход
  pinMode(DIR, OUTPUT);        // Настраиваем контакт на выход
  pinMode(EN, OUTPUT);         // Настраиваем контакт на выход
 
}

void loop()
{
 
  digitalWrite(EN, 0);
  cicle(1, 1023);
  delay(5);
  cicle(0, 1023);
  delay(5);
}

void cicle(boolean napr, int steps)
{
  digitalWrite(DIR, napr);
  for (int i=0; i < steps; i++)
  {
    digitalWrite(STEP, 1);
    delay(delay_step);
    digitalWrite(STEP, 0);
    delay(delay_step);
  }
}


судя по фото у вас А4988 на оси Х, программу поправил, циклическая туда, обратно.
изучите распиновку RAMPS, у вы у меня её нету.

http://reprap.org/wiki/RAMPS_1.4/ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 14 мар 2016, 20:49 
Не в сети

Зарегистрирован: 13 авг 2014, 09:20
Сообщения: 124
прог. языки: Blitz3D, Processing
ФИО: Михаил
ХАХА, Замечательно, все работает!)Благодарности нет границ!) Ну тогда вопрос на засыпку. Если у меня максимальное время задержки 1 тактовая единица, то есть delay(1) то как мне увеличить скорость вращение шаговика? Сейчас в коде delay_step = 1 . Но скорость не высокая, полный оборот за 7 секунд, или для скорости надо микрошаги отключать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 14 мар 2016, 20:57 
Не в сети

Зарегистрирован: 14 мар 2016, 00:20
Сообщения: 7
убрать все джампера jp4


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 14 мар 2016, 21:13 
Не в сети

Зарегистрирован: 13 авг 2014, 09:20
Сообщения: 124
прог. языки: Blitz3D, Processing
ФИО: Михаил
GaD, хм только так? У меня на принтере тоже такая же связка, и репетиер хост умеет разгонять до серьезных скоростей, джампера стоят. Каретка по Z (на винтах) взлетает за секунды


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 15 мар 2016, 12:49 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
delay принимает значения в миллисекундах. Зачем оно вообще?

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 15 мар 2016, 15:27 
Не в сети
скрытый хозяин вселенной :)
Аватара пользователя

Зарегистрирован: 18 сен 2006, 12:26
Сообщения: 18018
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич
MIHAnik22 писал(а):
Если у меня максимальное время задержки 1 тактовая единица, то есть delay(1)

delay(1) это задержка в 1 миллисекунду, для начала неплохо бы перейти с миллисекунд на микросекунды
заменив на delayMicroseconds(100) мотор будет вращаться в 10 раз быстрее.

_________________
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 15 мар 2016, 16:03 
Не в сети

Зарегистрирован: 14 мар 2016, 00:20
Сообщения: 7
MIHAnik22 писал(а):
хм только так?

ну это как вы реализуете


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 15 мар 2016, 17:45 
Не в сети

Зарегистрирован: 13 авг 2014, 09:20
Сообщения: 124
прог. языки: Blitz3D, Processing
ФИО: Михаил
Myp, АААА вооот, вот то что нужно!)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 15 мар 2016, 18:52 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
Но это крайне "прямая" практика. Нормально - это настроить таймер, который будет дергать ногой независимо от того чем сейчас занимается основная программа.

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: a4988+RAMPS1.4+Arduino шаговик молчит
СообщениеДобавлено: 15 мар 2016, 19:11 
Не в сети

Зарегистрирован: 13 авг 2014, 09:20
Сообщения: 124
прог. языки: Blitz3D, Processing
ФИО: Михаил
RootAdmin, а разве библиотека AccelStepper.h этого не делает?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO