Skocz do zawartości

wachu

Użytkownicy
  • Zawartość

    3
  • Rejestracja

  • Ostatnio

Informacje

  • Płeć
    Mężczyzna

Osiągnięcia użytkownika wachu

Aktywny debiutant

Aktywny debiutant (2/19)

  • To już rok!

Odznaki

0

Reputacja

  1. Hej, sprzedam zestaw elementów elekotronicznych, licytacja od 1zl: http://allegro.pl/show_item.php?item=7146148430
  2. Hej, właśnie ukończyłem wskaźnik światła: #include <Servo.h> Servo motorek; void setup() { Serial.begin(9600); motorek.attach(3); motorek.write(180); } void loop() { int fotorezystor= analogRead(A5); int pozycja=map(fotorezystor,300,1000, 90, 170); motorek.write(pozycja); delay(30); } Po dłuższej kalibracji i zabawy z servem pare pytań: 1) Zauważyłem, że jeśli do serwomechanizmu puścimy pozycje mniejszą niż 20 zaczyna wariować (kręci się w kółko). Zakres jest niby 0-180. Czy to poprostu wina tego konkretnego egzemplarza? 2) Jeśli arduino zasilę baterią 9V (no, 8.25V) serwo ledwo działa (tylko buczy niechętnie). Jeśli podłącze arduino do zasilacza i ustawię na nim 12v - układ działa, ale zdażają mi się (serwomechanizmowi) dziwne odchyły i zwiechy. Gdy ustawię napięcie na 16v wszystko działa elegancko (niby arduino uciąga do 20v). Czy to też zależy od konretnego serwa? [ Dodano: 25-12-2017, 10:10 ] Wersja ulepszona z kalibracja strzalki (0%-100%) potencjometrem oraz kalibracja światla #include <Servo.h> Servo motorek; int procent0=0; int procent100=0; int ciemno=0; int jasno=0; int sukces=0; void kalibracja() { Serial.println("Trwa kalibracja strzalki, ustaw strzalke na 0% i wcisnij guzik"); int potencjometr=0; sukces=0; while (sukces==0) { potencjometr=analogRead(A4); potencjometr=map(potencjometr,0,1023,30,180); motorek.write(potencjometr); delay(200); procent0=potencjometr; if (digitalRead(7)==LOW){sukces=1;} } Serial.print("Ustalono 0% na poziomie: "); Serial.println(procent0); delay(2000); Serial.println("Trwa kalibracja, ustaw strzalke na 100% i wcisnij guzik"); while (sukces==1) { potencjometr=analogRead(A4); potencjometr=map(potencjometr,0,1023,30,180); motorek.write(potencjometr); delay(200); procent100=potencjometr; if (digitalRead(7)==LOW){sukces=2;} } Serial.print("Ustalono 100% na poziomie: "); Serial.println(procent100); } void kalibracja_swiatla() { delay(1000); Serial.println("Trwa kalibracja swiatla, wylacz zupelnie swiatlo wcisnij guzik"); while (digitalRead(7)==HIGH){} ciemno=analogRead(A5); delay(1000); Serial.print("Bez swiatla:");Serial.println(ciemno); Serial.println("Trwa kalibracja swiatla, wlacz swiatlo wcisnij guzik"); while (digitalRead(7)==HIGH){} jasno=analogRead(A5); delay(1000); Serial.print("Ze swiatlem:");Serial.println(jasno); sukces=3; } void setup() { Serial.begin(9600); motorek.attach(3); motorek.write(180); pinMode(7, INPUT_PULLUP); kalibracja(); kalibracja_swiatla(); } void loop() { while (sukces!=3){} int fotorezystor= analogRead(A5); int pozycja=map(fotorezystor,jasno,ciemno, procent100, procent0); motorek.write(pozycja); delay(300); } Pytania jednak z poprzedniego postu zostają, ktoś jest w stanie pomóc?
  3. Hej, kurs bardzo fajny, zawsze bałem się coś lutować a jak się okazuje to sama przyjemność. PS. w jaki sposób jest odprowadzany GND na płytkach? Ścieżki do (-) są pod soldermaską?
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.