FLProg
Вход на сайт
Логин:
Пароль:
Мы в VK
Поиск
Статистика


Яндекс.Метрика
Пятница, 09.12.2016, 06:49
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

Поиск по сайту


Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: support, Сергей 
Форум » Основной » Спросить у знатоков » управление шаговыми движками
управление шаговыми движками
jonik22sm
Дата: Пятница, 20.11.2015, 11:36 | Сообщение # 1
Лейтенант
Группа: Проверенные
Сообщений: 63
Награды: 0
Репутация: 1
Статус: Offline
вот простой код из ардуино шаговый ту сюда работает отлично

  • #include <Stepper.h>

  • const int stepsPerRevolution = 200;  // change this to fit the number of steps per revolution
  • // for your motor

  • // initialize the stepper library on pins 8 through 11:
  • Stepper myStepper(stepsPerRevolution, 5, 6, 7, 8);

  • void setup() {
  •   // set the speed at 60 rpm:
  •   myStepper.setSpeed(60);
  •   // initialize the serial port:
  •   Serial.begin(9600);
  • }

  • void loop() {
  •   // step one revolution  in one direction:
  •   Serial.println("clockwise");
  •   myStepper.step(stepsPerRevolution);
  •   delay(500);

  •   // step one revolution in the other direction:
  •   Serial.println("counterclockwise");
  •   myStepper.step(-stepsPerRevolution);
  •   delay(500);
  • }


а вот код из Flprog и мотор не работает а дёргается

  • #include <Stepper.h>
  • Stepper  _StM1(48,5,7,6,8);
  • bool _gen1I = 0;
  • bool _gen1O = 0;
  • unsigned long _gen1P = 0UL;
  • void setup()
  • {
  • _StM1.setSpeed(200);
  • }
  • void loop()
  • {



  • if (1) {if (! _gen1I) { _gen1I = 1; _gen1O = 1; _gen1P =  millis(); } } else { _gen1I = 0 ;  _gen1O= 0;  } if (_gen1I ) { if (_gen1O) { if ( _isTimer( _gen1P , 60000 )) { _gen1P = millis(); _gen1O = 0; } } else  { if ( _isTimer( _gen1P , 60000 )) {  _gen1P = millis(); _gen1O = 1;  } } }
  • int  b1temp1_StM1;
  • if (_gen1O) { b1temp1_StM1 = 1;} else {b1temp1_StM1 = -1;}
  • if (1) {_StM1.step(b1temp1_StM1);}


  • }
  • bool _isTimer(unsigned long startTime, unsigned long period )
  •   {
  •   unsigned long currentTime;
  • currentTime = millis();
  • if (currentTime>= startTime) {return (currentTime>=(startTime + period));} else {return (currentTime >=(4294967295-startTime+period));}
  •   }


подскажите пожалуйста как мне написать в Flprog свой блок для управления или я неправильно выставляю параметры блока


Сообщение отредактировал jonik22sm - Пятница, 20.11.2015, 15:27
 
DerAlex Дата: Пятница, 20.11.2015, 12:39 | Сообщение # 2
Полковник
Группа: Проверенные
Сообщений: 332
Награды: 3
Репутация: 7
Статус: Offline
Скорее всего нарушено чередование обмоток.Ошибка в программе.Приведите для примера код FLProg в графическом виде.

аврора
 
jonik22sm Дата: Пятница, 20.11.2015, 13:29 | Сообщение # 3
Лейтенант
Группа: Проверенные
Сообщений: 63
Награды: 0
Репутация: 1
Статус: Offline
добавил фото

Сообщение отредактировал jonik22sm - Пятница, 20.11.2015, 13:29
 
DerAlex Дата: Пятница, 20.11.2015, 13:42 | Сообщение # 4
Полковник
Группа: Проверенные
Сообщений: 332
Награды: 3
Репутация: 7
Статус: Offline
Проверьте соединение на шаговом двигателе.Точно подключены обмотки к пин 5,6,7,8 . Если правильно попробуйте уменьшить максимальную скорость . В последнем варианте указано 200.
Может пока поставить в два раза меньшую.


аврора
 
jonik22sm Дата: Пятница, 20.11.2015, 14:05 | Сообщение # 5
Лейтенант
Группа: Проверенные
Сообщений: 63
Награды: 0
Репутация: 1
Статус: Offline
ничего не помогает
 
DerAlex Дата: Пятница, 20.11.2015, 18:53 | Сообщение # 6
Полковник
Группа: Проверенные
Сообщений: 332
Награды: 3
Репутация: 7
Статус: Offline
Для диагностики можно временно подключить светодиоды вместо шагового двигателя. Четыре светодиода на пин 5,6,7,8. И минимальную скорость чтобы наблюдать переключение светодиодов.

Добавлено (20.11.2015, 18:51)
---------------------------------------------
функция УСТАНОВИТЬ СКОРОСТЬ  подключена ? Если нет то нужно кликнуть на квадратик и поключить

Добавлено (20.11.2015, 18:53)
---------------------------------------------
Прочитайте внимательно описание блока еще раз и видео посмотрите


аврора
 
kossn93 Дата: Пятница, 20.11.2015, 19:07 | Сообщение # 7
Майор
Группа: Проверенные
Сообщений: 159
Награды: 6
Репутация: 2
Статус: Offline
скорее всего косяк с подключением я у себя проверил при правельном подключении работает флпрог, а ваш скетч не работает, дергается, методом научного тыка и ваш скетч заработал.
правильно подключайте полюса.


Сообщение отредактировал kossn93 - Пятница, 20.11.2015, 19:09
 
jonik22sm Дата: Пятница, 20.11.2015, 19:14 | Сообщение # 8
Лейтенант
Группа: Проверенные
Сообщений: 63
Награды: 0
Репутация: 1
Статус: Offline
выставил скорость но всё равно пришлось поменять in2 и in3 в блоке типа номер поставил 5, 7, 6, 8
 
DerAlex Дата: Пятница, 20.11.2015, 19:16 | Сообщение # 9
Полковник
Группа: Проверенные
Сообщений: 332
Награды: 3
Репутация: 7
Статус: Offline
теперь работает?

аврора
 
jonik22sm Дата: Пятница, 20.11.2015, 19:34 | Сообщение # 10
Лейтенант
Группа: Проверенные
Сообщений: 63
Награды: 0
Репутация: 1
Статус: Offline
да теперь работает но греется движок как сцуко
но вопрос почему на скетче меняется местами in2 и in3


Сообщение отредактировал jonik22sm - Пятница, 20.11.2015, 19:36
 
DerAlex Дата: Суббота, 21.11.2015, 05:09 | Сообщение # 11
Полковник
Группа: Проверенные
Сообщений: 332
Награды: 3
Репутация: 7
Статус: Offline
есть другой шаговый двигатель ? попробуйте на нем , если есть

аврора
 
виталик Дата: Суббота, 21.11.2015, 12:44 | Сообщение # 12
Рядовой
Группа: Проверенные
Сообщений: 23
Награды: 0
Репутация: 0
Статус: Offline
У вас включено направление вращения RS и подключен генератор который будет переключать по часовой против часовой .каждый свой период .

Виталик
 
Cruzator Дата: Понедельник, 23.11.2015, 10:11 | Сообщение # 13
Рядовой
Группа: Проверенные
Сообщений: 3
Награды: 0
Репутация: 0
Статус: Offline
В первом коде - const int stepsPerRevolution = 200; (200 шагов на оборот) у Вас - 48 шагов на оборот
 myStepper.setSpeed(60); - скорость 60 - у Вас 200!
Видимо по этому и греется
 
Форум » Основной » Спросить у знатоков » управление шаговыми движками
Страница 1 из 11
Поиск:

FLProg © 2016
Яндекс.Метрика