Cymoniasty Napisano Sierpień 24, 2018 Udostępnij Napisano Sierpień 24, 2018 Cześć Mam mały problem z kodem ponieważ gdy steruje osobno silnikiem dc czy serwem przez potencjometry to wszystko działa, ale gdy spróbowałem połączyć te dwie rzeczy w jeden kod to silnik stoi w miejscu i trekocze z niską częstotliwością 50hz, a serwo ma podobnie tylko pierw ustawia się na 180" i trekocze z podobną częstotliwością. Na potencjometry nie reagują wcale. Jestem prawie pewny że winna jest tu biblioteka która wysyła sygnał PWM na częstotliwości 50 hz do serwa, ale nie mam pojęcia jak to obejść i nie znalazłem w internecie żadnej podpowiedzi więc liczę na was bardzo że wskażecie mi właściwą drogę i wyprowadzicie z błędu ❤️ Kod: #include <Servo.h> Servo Serwo; int silnik = 9; int Pozycja = 0; int lewo = 7; int prawo = 8; int obroty = 0; void setup() { Serwo.attach(6); pinMode(lewo, OUTPUT); pinMode(prawo, OUTPUT); digitalWrite(lewo, LOW); digitalWrite(prawo, HIGH); } void loop(){ obroty = (analogRead(A5),0,1023,0,255); analogWrite(silnik, obroty); Pozycja = map(analogRead(A4),0,1023,0,180); Serwo.write(Pozycja); } Cytuj Link do komentarza Share on other sites More sharing options...
ethanak Sierpień 24, 2018 Udostępnij Sierpień 24, 2018 (edytowany) Co ma Twoim zdaniem oznaczać linijka: obroty = (analogRead(A5),0,1023,0,255); Coś się nie skopiowało? Tak, oczywiście winna jest biblioteka którą wszyscy stosują bez problemu... I jeszcze front atmosferyczny w Pernambuco, i sytuacja polityczna w Gabonie. Tak przy okazji - map to makro a nie funkcja i nie należy wstawiać tu bezpośrednio wywołań analogRead. Edytowano Sierpień 24, 2018 przez ethanak 1 Cytuj Link do komentarza Share on other sites More sharing options...
grg0 Sierpień 24, 2018 Udostępnij Sierpień 24, 2018 Ale tutaj, może być "winna biblioteka". Na forum już chyba z pięć razy było, że równoczesne stosowanie servo.h i analogWrite ma swoje ograniczenia, opisane np. tutaj: Servo library 1 Cytuj Link do komentarza Share on other sites More sharing options...
Cymoniasty Sierpień 24, 2018 Autor tematu Udostępnij Sierpień 24, 2018 @ethanak No nie skopiowało się. Widzisz winna była biblioteka 🙂 2 godziny temu, ethanak napisał: Tak przy okazji - map to makro a nie funkcja i nie należy wstawiać tu bezpośrednio wywołań analogRead. Dobrze i dziękuje 😄 @grg0 Strzał w 10, dziękuje Ci bardzo 😄 Cytuj Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Produkcja i montaż PCB - wybierz sprawdzone PCBWay! • Darmowe płytki dla studentów i projektów non-profit • Tylko 5$ za 10 prototypów PCB w 24 godziny • Usługa projektowania PCB na zlecenie • Montaż PCB od 30$ + bezpłatna dostawa i szablony • Darmowe narzędzie do podglądu plików Gerber Zobacz również » Film z fabryki PCBWay
Pomocna odpowiedź
Dołącz do dyskusji, napisz odpowiedź!
Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!