Skocz do zawartości

Kurs Arduino - #8 - Sterowanie silnikami DC, pętla for


Pomocna odpowiedź

@Matresiek witam na forum 🙂 Nie rozumiem co dokładnie próbujesz zrobić. Czy możesz pokazać schemat po swoich zmianach lub zdjęcie Twojej wersji układu?

  • 1 miesiąc później...

Mam kilka pytań, dotyczących tematów, przedstawionych w tym odcinku kursu:

1. Jak oznacza się silniki na schematach ideowych?

2. Dlaczego zmienna licznikowa jest nazywana "i"?

3. Czy to płynne rozpędzanie silnika ma jakieś praktyczne zastosowanie?

@StefanekP

  1. zależy od rodzaju, prosty szczotkowy silnik DC wygląda jak woltomierz z M zamiast V, M od Motor,
  2. i od iterations, ale możesz używać inne nazwy, ja np gdy iteruję po tablicach które reprezentują 2 wymiarową strukurę używam iy i ix,
  3. tak, silniki lepiej rozpędzać stopniowo, żeby nie uzyskać skoku napięcia - jest to widoczne zwłaszcza w dużych silnikach. Są nawet specjalne układy do tzw. soft startu.
  • Pomogłeś! 1
  • 3 miesiące później...

Witam szanowne grono. Po dłuższej przerwie moje rozwiązanie zadania 8.1

void setup() {
  pinMode(6, OUTPUT); // Sygnal PWM 1 silnika
  pinMode(3, OUTPUT); //Sygnal PWM 2 silnika
  digitalWrite(6, HIGH); //Ustawiamy na stale stan wysoki na sterowaniu predkosciami
  digitalWrite(3, HIGH);

  pinMode(7, OUTPUT); //Sygnaly sterujace kirunkiem obotow  1 silnika
  pinMode(8, OUTPUT);
  pinMode(2, OUTPUT); //Sygnaly sterujace kirunkiem 2 silnika
  pinMode(4, OUTPUT);
}

void loop() {
  digitalWrite(7, LOW); //Silnik 1 i 2 obroty w lewo przez 2 sek
  digitalWrite(2, LOW);
  digitalWrite(8, HIGH);
  digitalWrite(4, HIGH);
  delay(2000);

  digitalWrite(7, HIGH); //Silniki 1 i 2 obroty w przeciwna strone przez 2 sek
  digitalWrite(2, LOW);
  digitalWrite(8, LOW);
  digitalWrite(4, HIGH);
  delay(2000);

  digitalWrite(7, LOW); //Zmiana kerunkow silnikow 1 i 2 w przeciwna strone przez 2 sek
  digitalWrite(2, HIGH);
  digitalWrite(8, HIGH);
  digitalWrite(4, LOW);
  delay(2000);

  digitalWrite(7, HIGH); //Silnik 1 i 2 obroty w prawo przez 2 sek
  digitalWrite(2, HIGH);
  digitalWrite(8, LOW);
  digitalWrite(4, LOW);
  delay(2000);
}

 

@Vova fajnie, tak trzymaj 🙂 w ramach zadnaia dodatkowego do zadania dodatkowego spójrz na ten temat, jest tam specjalnie przygotowany fragment o tym jak ulepszyć powtarzalny kod:

 

 

  • Lubię! 1
Dnia 21.10.2021 o 07:18, Gieneq napisał:

@Vova fajnie, tak trzymaj 🙂 w ramach zadnaia dodatkowego do zadania dodatkowego spójrz na ten temat, jest tam specjalnie przygotowany fragment o tym jak ulepszyć powtarzalny kod:

 

 

@Gieneq To pytanie było w nawiązaniu do twojego postu, chyba czegoś tu nie ogarniam🤔

Cześć. Mam problem z podłączeniem silników do mostka H. Otóż kiedy mam podłączone Arduino przez USB do komputera wszystko działa. Kiedy Arduino jest podłączone przez USB oraz dodatkowo ma wpiętą baterię 9V też wszystko działa (silniki kręcą się szybciej). Kiedy jednak odepnę USB zostawiając podpiętą baterię to program nie chce działać choć Arduino jest włączone (na płytce świeci się dioda on oraz miga dioda L).

Będę wdzięczna za odpowiedź co robię nie tak.

Poniżej przedstawiam schemat połączeń.

Pozdrawiam

18042465_UntitledSketch_bb.thumb.png.6819d9c87c957ad1cfb020e6531b964d.png

@emiemi8 zobacz czy bateria jest sprawna, czy nie jest mocno rozładowana, bo jeżeli jest różnica przy podłączeniu USB a Vin to coś jest nie tak. Domyślnie Vin wywłaszcza USB gdy poziom zasilania jest dostatecznie duży.

Inna sprawa to dioda przy złaczu koncentrycznym która trochęmarnuje napięcie, z tym mostkiem każdy volt jest cenny wiec lepiej daj baterię na Vin Arduino - to jest bardziej ryzykowne bo nie ma tam zabezpieczeń ale będzie mniej problemów z napięciem. 

  • 2 tygodnie później...

@Gieneq testowałam na kilku różnych bateriach i było to samo. Ostatecznie baterii nie podłączałam bezpośrednio do Arduino ale przez płytkę stykową a potem do pinu Vin. 

Jednak obecnie mam problem, że w momencie obciążenia silników cały program się zawiesza (kiedy silniki kręcą się swobodnie wszystko jest ok) - czy to przez zbyt małą wydajność prądową takiej baterii i czy w takim razie muszę zmienić ją na jakieś akumulatory?

1 godzinę temu, emiemi8 napisał:

czy to przez zbyt małą wydajność prądową takiej baterii i czy w takim razie muszę zmienić ją na jakieś akumulatory?

Najprawdopodobniej tak...lepiej uzyc akumulatorow li ion np. lub innych...z regoly rowniez lepiej zasilac ardu z osobnego zrodla zeby te silniki np. nie zaklucaly pracy ardu...

  • 5 miesiące później...

Cześć, podłączyłem układ z diodami bez silnika i akurat jedna dioda tylko miga. Jak zaminie jej bieguny to inna się pali. Czy mogłby ktos pokazac jak te diody mają być dobrze podłączone, bo zrobilem tak jak na zdjęciu i tylko jedna się pali. Z góry dziekuję 😃

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...