Skocz do zawartości

Kurs Arduino - #5 - PWM, serwomechanizmy, biblioteki


Pomocna odpowiedź

@Kasesbian maksymalny prąd serwomechanizmu najprościej będzie po prostu zmierzyć. Pod jedną nazwą mogą występować produkty różnych producentów, które będą się różniły parametrami. Moment obrotowy serw powinien być podany po prostu w kg / cm (lub w podobnej jednostce).

8 godzin temu, Kasesbian napisał:
  • Mam stary zasilacz od telefonu, który generuje output 4.75 V/0.55A wg tabliczki, jednak pomiar multimetrem wykazuje niemal 6 V. Dlaczego?
  • Zasilenie SG90 za pomocą Arduino zadziałało, jednak za pomocą w. w. zasilacza nie. Dlaczego?

Czy ten zasilacz na pewno daje stałe napięcie? Jeśli jest to stary, niestabilizowany zasilacz to nie będzie się nadawał do takich zastosowań.

4 godziny temu, Treker napisał:

maksymalny prąd serwomechanizmu najprościej będzie po prostu zmierzyć. Pod jedną nazwą mogą występować produkty różnych producentów, które będą się różniły parametrami. Moment obrotowy serw powinien być podany po prostu w kg / cm (lub w podobnej jednostce).

Wiem, jednak chciałbym najpierw mieć jakieś inne źródło zasilania, żeby przypadkiem nie uszkodzić Arduino. 

4 godziny temu, Treker napisał:

Czy ten zasilacz na pewno daje stałe napięcie? Jeśli jest to stary, niestabilizowany zasilacz to nie będzie się nadawał do takich zastosowań.

Nie wiem jak to sprawdzić, czy jest stabilizowany czy nie. To są zwyczajne "ładowarki" do telefonów. Myślałem że uda mi się z nimi coś ogarnąć. Spróbowałem z inną i efekt jest podobny. Czyli jego brak. 

Dwa wyizolowane przewody wkładam do listew + i - na płytce stykowej i podłączam do tych listew serwo, a trzeci przewód do pinu I/O, nie używam PWM, tylko bibliotekę Servo.h. Na Arduino serwo śmiga...

@Treker Wszystko jasne. Pojęcie wspólnej masy było mi obce ;/ Teraz działa. Ale mam wątpliwość. Bo skoro i tak zasilacz jest podłączony do masy Arduino, to czy ten prąd, który pobiera serwo nie płynie też przez Arduino (czego chciałem uniknąć)? 

12 minut temu, Kasesbian napisał:

Bo skoro i tak zasilacz jest podłączony do masy Arduino, to czy ten prąd, który pobiera serwo nie płynie też przez Arduino (czego chciałem uniknąć)? 

Nie, przewody działają jak rury. Potraktuj Arduino i serwo jak dwie osobne rury, przez które płynie prąd - dla każdego niezależnie. Jedyne miejsce, przez które płynie cały prąd to przewód, do momentu rozgałęzienia. Po rozgałęzieniu część prądu płynie przez jedną gałąź, a część przez drugą.

9 godzin temu, Kasesbian napisał:

Nie wiem jak to sprawdzić, czy jest stabilizowany czy nie.

Nowe zwykle są stabilizowane. Bardzo rzadko można znaleźć coś, co jest cholernie niestabilne (pomijając tani chiński badziew na USB).

18 minut temu, H1M4W4R1 napisał:

Nie, przewody działają jak rury. Potraktuj Arduino i serwo jak dwie osobne rury, przez które płynie prąd - dla każdego niezależnie. Jedyne miejsce, przez które płynie cały prąd to przewód, do momentu rozgałęzienia. Po rozgałęzieniu część prądu płynie przez jedną gałąź, a część przez drugą.

Nie do końca rozumiem opis. Ja to sobie wyobrażałem tak, że płynie sobie prąd z zasilacza do serwa i z serwa do GND. Analogicznie z USB płynie sobie prąd do Arduino i też do GND. Tylko co się potem z tym prądem dzieje w tej masie?

19 minut temu, H1M4W4R1 napisał:

Nowe zwykle są stabilizowane. Bardzo rzadko można znaleźć coś, co jest cholernie niestabilne (pomijając tani chiński badziew na USB).

Dzięki za pomoc!

(edytowany)
10 minut temu, Kasesbian napisał:

Nie do końca rozumiem opis. Ja to sobie wyobrażałem tak, że płynie sobie prąd z zasilacza do serwa i z serwa do GND. Analogicznie z USB płynie sobie prąd do Arduino i też do GND. Tylko co się potem z tym prądem dzieje w tej masie?

Dobra, trochę źle to ująłem... Masa to osobny przewód, ale nic potem już nigdzie nie płynie (przez układ), tylko wraca sobie do zasilacza, a z zasilacza do sieci energetycznej, a potem do uziemienia sieci (najczęściej przy najbliższej stacji transformatorowej, lub przy budynku). Ogólnie masa to punkt odniesienia. To coś w stylu "poziomu morza" do określania wysokości gór. Możesz powiedzieć, że (w przybliżeniu) Rysy mają 2500m, a Mount Everest 6350m. Obie wartości będą prawidłowe. Ale jeżeli określisz punkt odniesienia to wtedy Rysy mają 2500m, a Mount Everest 8850m - wtedy tylko jedna odpowiedź jest prawidłowa. W przypadku prądu jest podobnie, tylko wtedy masa jest punktem odniesienia dla napięcia. Jeżeli nie będzie połączona to punkty odniesienia mogą być różne i w efekcie prąd popłynie inaczej niż powinien, co poskutkuje zniszczeniem układu. Ustalenie punktu odniesienia przekształca układ niedeterministyczny, którego zachowanie zależy od różnic potencjałów między niepołączonymi masami w układ deterministyczny - masy są połączone i mają jednakowy potencjał, co pozwala na określenie potencjału określonych podukładów względem siebie. Teraz sam próbuję zrozumieć co autor miał na myśli... xD

Aktualnie zostańmy przy tym, iż w 99% przypadków masy należy łączyć 😄 

Jedyny przypadek, gdy masy są rozłączne to izolacja galwaniczna (np. optotriak/optotranzystor).

Edytowano przez H1M4W4R1
  • Pomogłeś! 1
  • 4 tygodnie później...
Dnia 20.04.2023 o 09:45, Treker napisał:

@MMJ5XD jeśli pytasz o elementy, które są obok stabilizatora napięcia to są to kondensatory ceramiczne. Jeśli w tym ćwiczeniu je pominiesz to nic się nie stanie.

Zgadzam się z MMJ5XD, ten obrazek jest bardzo mało czytelny. Sam właśnie dopiero teraz uzyskałem odpowiedź na to samo pytanie. W tekście autor pisze, że "Oczywiście konieczne są również kondensatory filtrujące", co wcale nie było dla mnie oczywiste. A tym bardziej to, że mam użyć kondensatorów ceramicznych 100nF, które wyglądają zupełnie inaczej niż na obrazku.

  • Lubię! 1
  • 4 tygodnie później...
4 godziny temu, JediPadawan napisał:

Ktoś podpowie, co zrobić w 5.2?

U siebie użyłem ifów porównujących wypełnienie z zadaną wartością i pętli while. 😉 

  • Lubię! 2
  • 4 tygodnie później...
13 godzin temu, forgeofskill napisał:

po przejściu przez stabilizator wyjściowo mam niecałe 1.5V

To wygląda na rozładowaną baterię. Niestety nie masz zarejestrowanego żadnego zestawu, więc nie wiem czym dysponujesz. Najprościej w tym przypadku spróbować z inną baterią lub podłączyć zasilacz (jest częścią zestawu do drugiego poziomu kursu Arduino).

  • 1 miesiąc później...
(edytowany)

Witam, próbowałam napisać program do zadania 5.2, ale po podłączeniu dioda zapala się i pozostaje w takim stanie

 

 

int wypelnienie=0;
void setup() {
  pinMode(3,OUTPUT);

}

void loop() {
  analogWrite(3,wypelnienie);
  if(wypelnienie<255){
    wypelnienie=wypelnienie+5;
  }
  else{
    while(wypelnienie=!0){
      wypelnienie=wypelnienie-5;
      analogWrite(3,wypelnienie);
      delay(50);
    }
  }

 

Edytowano przez mp123

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...