ШД и библиотека Stepper

DAD
Offline
Зарегистрирован: 23.06.2014

Спасибо, обожаю объяснения в стиле fallout2) В целом повторяет опыт изучения теории, но ждать, пока придут микрухи придется месяц. Я про мостовички. В промэлектронике они дороже в 4 раза в Свердловске, чем у китов. Поэтому огромное спасибо за теорию, как только перейду к железу, буду спрашивать еще.

DAD
Offline
Зарегистрирован: 23.06.2014

 Нашел в загашниках двух мостовые L9110S, завтра буду экспериментировать! Удивился, когда обнаружил, надо посмотреть в куче, чего еще заказывал))

art100
Offline
Зарегистрирован: 09.03.2014

DAD пишет:

 Нашел в загашниках двух мостовые L9110S, завтра буду экспериментировать! Удивился, когда обнаружил, надо посмотреть в куче, чего еще заказывал))

тоже смотрел но на него pdf найти не могу все какие-то мутные макетки

http://ledsee.com/index.php/dual-l9110s-motor-drive-module-detail/modal?format=pdf

может быть там внутри что-то такое???

а хочется чего-нибудь попривычнее L298

 

что-то как-то все мутно может потому что не стоит ничего

Can simultaneously drive two DC motors, or 4-wire 2-phase stepper motor

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

Если что-то выясните дайте знать

веры как-то во все это нет

http://www.ebay.com/itm/L9110S-H-bridge-Stepper-Motor-Dual-DC-motor-Driv...
onboard two the L9110S motor control chip
the module can simultaneously drive two DC motors or a 4-wire 2-phase stepper motor
the module input voltage :2.5-12V
the 800mA continuous current output capability per channel
1. Low static work current
2. Power supply voltage: DC2.5-12V
3. Each channel has 800mA continuous current output
4. Low saturation pressure drop
5. TTL/CMOS output level compatible, can be connected directly to the CPU
6. Output built-in clamping diode, apply to the perceptual load
7. Control and drive integrate in IC
8. Have pin high pressure protection function
9. Working temperature: 0-80 ℃
10.Size:29.2(mm)x23(mm)
51 test code:

#include<reg51.h> //???
sbit MOTOR_A_1 = P0 ^ 0;
sbit MOTOR_A_2 = P0 ^ 1;
sbit MOTOR_B_1 = P0 ^ 2;
sbit MOTOR_B_2 = P0 ^ 3;
void delay(unsigned long cnt){while(cnt--);}
void forward(void){
 MOTOR_A_1 = 1;
 MOTOR_A_2 = 0;
 MOTOR_B_1 = 1;
 MOTOR_B_2 = 0;
}
void backward(void){
 MOTOR_A_1 = 0;
 MOTOR_A_2 = 1;
 MOTOR_B_1 = 0;
 MOTOR_B_2 = 1;
}
void main(void){
 EX0 = 1;
 EX1 = 1;
 EA = 1;
 while(1){
  forward();
  delay(30000);
  backward();
  delay(30000);
 }
}
Package Included:
1 x H-bridge Stepper Motor Dual DC Motor Driver Controller Board 9110 For Arduino 

что это может шаговый мотор заставить шагать мало веры

2$ это не дорого

DAD
Offline
Зарегистрирован: 23.06.2014

Запустил драйвер L9110S, такой же, как на фотке, греется как кипятильник при общем токе 320мА, температура на корпусах около 80С. При подключении 12В, без нагрузки, т.е. без управления ШД, температура корпусов уже поднимается до 40С. Работать - работает. Запускал в режиме 4 такта с перекрытием фаз и без перекрытия. Если интересно, завтра могу выложить фотки. Драйвер не впечатлил, не замерил, кстати,  падение напряжения, завтра посмотрю, чтобы понятно стало на биполярниках или мосфетах собран. Увеличения мощности ШД сильно не заметил, но немного есть после переделки на биполярный режим. Для моей задачи не прокатило. 

4ishops
Offline
Зарегистрирован: 06.10.2012
maxvalin
Offline
Зарегистрирован: 22.02.2016

Здравствуйте форумчане пожалуйста ответmnt на такой вопрос: Как работать с пином Enable? Уперся и все тут..  Надобно чтоб он был задействован, я уже и так и так его крутил... нивкакую!! Использовал Stepper1.setEnablePin(8);  ругается сразу  

BTuz:3: error: 'Stepper1' does not name a type

 
 Stepper1.setEnablePin(8); // активация енейбл
 
 ^
 
exit status 1
'Stepper1' does not name a type
 вот хотелось бы от блютуз управлять вращением. Без инейбла рботает , но мне надо отключать движек во время простоя! 
[code]
#include <AccelStepper.h>
AccelStepper Stepper1(1,46,48); //название движка и 1=по умолчанию (для драйвера 4488). 54=STEP . 55=DIR
Stepper1.setEnablePin(8); // активация енейбл
//#define dirPin  48
//#define stepPin  46
#define STEPS 200
//int ENB = 8; // подключаем Enable


int val;
int LED = 13;

void setup()
{
  Serial2.begin(9600);
  pinMode(LED, OUTPUT);
 // pinMode(ENB, OUTPUT);
  digitalWrite(LED, HIGH);
  Stepper1.setSpeed(50000);
  Stepper1.setMaxSpeed(500000); 
  Stepper1.setAcceleration(8000); 

}
void loop()
{
  if (Serial2.available())
  {
    val = Serial2.read();
    // При символе "1" включаем светодиод
    if (val == '1')
    {
      digitalWrite(LED, HIGH);
      Stepper1.runToNewPosition(-2700); 
      
    }
    // При символе "0" выключаем светодиод
    if ( val == '2')
    {
      digitalWrite(LED, LOW);
      Stepper1.runToNewPosition(2700); 
    }
  }
}
[/code]