• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
silnik krokowy 28BYJ48
#1
Witam

Podpiąłem sinik krokowy do Motor Control Shield.
Możecie zobaczyć kod programu bo jakoś nie chce kręcić, silnik delikatnie syczy i tyle.

Kod:
int motor1_dir1 = 12;
int motor1_dir2 = 13;
int motor1_pwm  = 11;

int motor2_dir1 = 8;
int motor2_dir2 = 7;
int motor2_pwm  = 10;
//motor 1
int motor3_dir1 = 5;
int motor3_dir2 = 4;
int motor3_pwm  = 9;

int motor4_dir1 = 3;
int motor4_dir2 = 2;
int motor4_pwm  = 6;


void setup()
{
//ustawienie wyjść
 pinMode(motor1_dir1, OUTPUT);
 pinMode(motor1_dir2, OUTPUT);
 pinMode(motor1_pwm, OUTPUT);

 pinMode(motor2_dir1, OUTPUT);
 pinMode(motor2_dir2, OUTPUT);
 pinMode(motor2_pwm, OUTPUT);

 pinMode(motor3_dir1, OUTPUT);
 pinMode(motor3_dir2, OUTPUT);
 pinMode(motor3_pwm, OUTPUT);

 pinMode(motor4_dir1, OUTPUT);
 pinMode(motor4_dir2, OUTPUT);
 pinMode(motor4_pwm, OUTPUT);

//ustawienia stanu logicznego na wyjściu digitalWrite(Pin, Stan). Stan jest stanem logicznym, który może być HIGH bądź LOW (wysoki bądź niski).
 digitalWrite(motor1_dir1, 0);
 digitalWrite(motor1_dir2, 1);
 digitalWrite(motor1_pwm, 1);

 digitalWrite(motor2_dir1, 0);
 digitalWrite(motor2_dir2, 1);
 digitalWrite(motor2_pwm, 1);

 digitalWrite(motor3_dir1, 0);
 digitalWrite(motor3_dir2, 1);
digitalWrite(motor3_pwm, 1);

 digitalWrite(motor4_dir1, 0);
 digitalWrite(motor4_dir2, 1);
 digitalWrite(motor4_pwm, 1);

}
void loop()
{
//0  PWM = 0% dioda nie świeci
//64 PWM = 25%
//128 PWM = 50%
//192 PWM = 75%
//255 PWM = 100%

 analogWrite(motor1_pwm, 128); //128
 
 analogWrite(motor2_pwm, 128);

 analogWrite(motor3_pwm, 128);

 analogWrite(motor4_pwm, 128);
 delay(500);
}
 
Odpowiedź
#2
Witam,
Czy na pewno podłączenie jest dobre? A , może mówi pan p o innym silniku?


Załączone pliki Miniatury
   
 
Odpowiedź
#3
@robo1973 sterowanie PWM jest do silników DC, może poszukaj sobie przykładów do tego shielda dla silnika krokowego. Masz ich tam podpiętych 4? Wystarczy w google wbić "Motor Control Shield stepper" i zacząć np. od analizy tego:
https://www.rs-online.com/designspark/ar...or-control. A może i po polsku coś znajdziesz.
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
#4
Dziękuję kol kaczakat za pomoc Sprawdzę program z linka co podałeś.
Ten program z mojego pierwszego posta producent podaje jako przykład Więc powinien śmigać ?
 
Odpowiedź
#5
Staraj się pisać po polsku, to może więcej osób będzie Ci chciało przeczytać, zrozumieć, pomóc. Ruch silnika krokowego odbywa się dzięki sekwencji odpowiednio dobranych przepływów prądu przez cewki silnika. Ten program może działać ze zwykłym silnikiem DC, nie będzie działać z krokowym. Do obsługi silnika krokowego polecam też bibliotekę Arduino accelstepper.
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
#6
Mam Motor Control Shield

MOTOR 1 M1A/M1B PWM=D6, IN1=D2, IN2=D3

MOTOR 2 M2A/M2B PWM=D9 IN1=D4, IN2=D5

Zdefiniowałem tak i działa :

// inicjalizacja obiektu do kontroli silnika
Stepper myStepper(stepsPerRevolution,2,3,4,5);
Temat do zamknięcia. Problem rozwiązany. Pozdrawiam i dziękuję
 
Odpowiedź
#7
Następnym razem jak ktoś ładnie poprosi to wystarczy współpracować.
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości